From 0bff252b30efbf9d01fd6b7bea190fc909c4febb Mon Sep 17 00:00:00 2001
From: aliluya1977 <150768790+aliluya1977@users.noreply.github.com>
Date: Mon, 17 Jun 2024 16:19:04 +0800
Subject: [PATCH] Add files via upload
---
JS/NT动漫.js | 37 +
JS/NyaFun.js | 13 +
JS/jsencrypt.js | 372 +++
JS/node-rsa.js | 5853 +++++++++++++++++++++++++++++++++++++++++++++++
JS/pako.min.js | 1341 +++++++++++
JS/uri.min.js | 1 +
JS/哔哩兔.js | 19 +
JS/哔哩视频.js | 116 +
JS/爱奇艺.js | 39 +
JS/爱弹幕.js | 59 +
10 files changed, 7850 insertions(+)
create mode 100644 JS/NT动漫.js
create mode 100644 JS/NyaFun.js
create mode 100644 JS/jsencrypt.js
create mode 100644 JS/node-rsa.js
create mode 100644 JS/pako.min.js
create mode 100644 JS/uri.min.js
create mode 100644 JS/哔哩兔.js
create mode 100644 JS/哔哩视频.js
create mode 100644 JS/爱奇艺.js
create mode 100644 JS/爱弹幕.js
diff --git a/JS/NT动漫.js b/JS/NT动漫.js
new file mode 100644
index 0000000..ef42b58
--- /dev/null
+++ b/JS/NT动漫.js
@@ -0,0 +1,37 @@
+// http://www.ntdm.tv
+var rule={
+ title:'NT动漫',
+ host:'http://www.ntdm8.com',
+ homeUrl:'/type/riben.html',
+ // url:'/show/fyclass--------fypage---.html',
+ url:'/show/fyclassfyfilter.html',
+ filterable:1,//是否启用分类筛选,
+ filter_url:'--{{fl.by}}-{{fl.class}}--{{fl.letter}}---fypage---{{fl.year}}',
+ filter:{
+ "riben":[{"key":"year","name":"年份:","value":[{"n":"全部","v":""},{"n":"2024","v":"2024"},{"n":"2023","v":"2023"},{"n":"2022","v":"2022"},{"n":"2021","v":"2021"},{"n":"2020","v":"2020"},{"n":"2019","v":"2019"},{"n":"2018","v":"2018"},{"n":"2017","v":"2017"},{"n":"2016","v":"2016"},{"n":"2015","v":"2015"},{"n":"2014","v":"2014"},{"n":"2013","v":"2013"},{"n":"2012","v":"2012"},{"n":"2011","v":"2011"},{"n":"2010","v":"2010"},{"n":"2009","v":"2009"},{"n":"2008","v":"2008"},{"n":"2007","v":"2007"},{"n":"2006","v":"2006"},{"n":"2005","v":"2005"},{"n":"2004","v":"2004"},{"n":"2003","v":"2003"},{"n":"2002","v":"2002"},{"n":"2001","v":"2001"},{"n":"2000以前","v":"2000以前"}]},{"key":"class","name":"类型:","value":[{"n":"全部","v":""},{"n":"搞笑","v":"搞笑"},{"n":"运动","v":"运动"},{"n":"励志","v":"励志"},{"n":"热血","v":"热血"},{"n":"战斗","v":"战斗"},{"n":"竞技","v":"竞技"},{"n":"校园","v":"校园"},{"n":"青春","v":"青春"},{"n":"爱情","v":"爱情"},{"n":"冒险","v":"冒险"},{"n":"后宫","v":"后宫"},{"n":"百合","v":"百合"},{"n":"治愈","v":"治愈"},{"n":"萝莉","v":"萝莉"},{"n":"魔法","v":"魔法"},{"n":"悬疑","v":"悬疑"},{"n":"推理","v":"推理"},{"n":"奇幻","v":"奇幻"},{"n":"科幻","v":"科幻"},{"n":"游戏","v":"游戏"},{"n":"神魔","v":"神魔"},{"n":"恐怖","v":"恐怖"},{"n":"血腥","v":"血腥"},{"n":"机战","v":"机战"},{"n":"战争","v":"战争"},{"n":"犯罪","v":"犯罪"},{"n":"历史","v":"历史"},{"n":"社会","v":"社会"},{"n":"职场","v":"职场"},{"n":"剧情","v":"剧情"},{"n":"伪娘","v":"伪娘"},{"n":"耽美","v":"耽美"},{"n":"童年","v":"童年"},{"n":"教育","v":"教育"},{"n":"亲子","v":"亲子"},{"n":"真人","v":"真人"},{"n":"歌舞","v":"歌舞"},{"n":"肉番","v":"肉番"},{"n":"美少女","v":"美少女"},{"n":"轻小说","v":"轻小说"},{"n":"吸血鬼","v":"吸血鬼"},{"n":"女性向","v":"女性向"},{"n":"泡面番","v":"泡面番"},{"n":"欢乐向","v":"欢乐向"}]},{"key":"letter","name":"字母:","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"},{"n":"0~9","v":"0~9"}]},{"key":"by","name":"排序:","value":[{"n":"更新时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
+ "zhongguo":[{"key":"year","name":"年份:","value":[{"n":"全部","v":""},{"n":"2024","v":"2024"},{"n":"2023","v":"2023"},{"n":"2022","v":"2022"},{"n":"2021","v":"2021"},{"n":"2020","v":"2020"},{"n":"2019","v":"2019"},{"n":"2018","v":"2018"},{"n":"2017","v":"2017"},{"n":"2016","v":"2016"},{"n":"2015","v":"2015"},{"n":"2014","v":"2014"},{"n":"2013","v":"2013"},{"n":"2012","v":"2012"},{"n":"2011","v":"2011"},{"n":"2010","v":"2010"},{"n":"2009","v":"2009"},{"n":"2008","v":"2008"},{"n":"2007","v":"2007"},{"n":"2006","v":"2006"},{"n":"2005","v":"2005"},{"n":"2004","v":"2004"},{"n":"2003","v":"2003"},{"n":"2002","v":"2002"},{"n":"2001","v":"2001"},{"n":"2000以前","v":"2000以前"}]},{"key":"class","name":"类型:","value":[{"n":"全部","v":""},{"n":"搞笑","v":"搞笑"},{"n":"运动","v":"运动"},{"n":"励志","v":"励志"},{"n":"热血","v":"热血"},{"n":"战斗","v":"战斗"},{"n":"竞技","v":"竞技"},{"n":"校园","v":"校园"},{"n":"青春","v":"青春"},{"n":"爱情","v":"爱情"},{"n":"冒险","v":"冒险"},{"n":"后宫","v":"后宫"},{"n":"百合","v":"百合"},{"n":"治愈","v":"治愈"},{"n":"萝莉","v":"萝莉"},{"n":"魔法","v":"魔法"},{"n":"悬疑","v":"悬疑"},{"n":"推理","v":"推理"},{"n":"奇幻","v":"奇幻"},{"n":"科幻","v":"科幻"},{"n":"游戏","v":"游戏"},{"n":"神魔","v":"神魔"},{"n":"恐怖","v":"恐怖"},{"n":"血腥","v":"血腥"},{"n":"机战","v":"机战"},{"n":"战争","v":"战争"},{"n":"犯罪","v":"犯罪"},{"n":"历史","v":"历史"},{"n":"社会","v":"社会"},{"n":"职场","v":"职场"},{"n":"剧情","v":"剧情"},{"n":"伪娘","v":"伪娘"},{"n":"耽美","v":"耽美"},{"n":"童年","v":"童年"},{"n":"教育","v":"教育"},{"n":"亲子","v":"亲子"},{"n":"真人","v":"真人"},{"n":"歌舞","v":"歌舞"},{"n":"肉番","v":"肉番"},{"n":"美少女","v":"美少女"},{"n":"轻小说","v":"轻小说"},{"n":"吸血鬼","v":"吸血鬼"},{"n":"女性向","v":"女性向"},{"n":"泡面番","v":"泡面番"},{"n":"欢乐向","v":"欢乐向"}]},{"key":"letter","name":"字母:","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"},{"n":"0~9","v":"0~9"}]},{"key":"by","name":"排序:","value":[{"n":"更新时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
+ "omei":[{"key":"year","name":"年份:","value":[{"n":"全部","v":""},{"n":"2024","v":"2024"},{"n":"2023","v":"2023"},{"n":"2022","v":"2022"},{"n":"2021","v":"2021"},{"n":"2020","v":"2020"},{"n":"2019","v":"2019"},{"n":"2018","v":"2018"},{"n":"2017","v":"2017"},{"n":"2016","v":"2016"},{"n":"2015","v":"2015"},{"n":"2014","v":"2014"},{"n":"2013","v":"2013"},{"n":"2012","v":"2012"},{"n":"2011","v":"2011"},{"n":"2010","v":"2010"},{"n":"2009","v":"2009"},{"n":"2008","v":"2008"},{"n":"2007","v":"2007"},{"n":"2006","v":"2006"},{"n":"2005","v":"2005"},{"n":"2004","v":"2004"},{"n":"2003","v":"2003"},{"n":"2002","v":"2002"},{"n":"2001","v":"2001"},{"n":"2000以前","v":"2000以前"}]},{"key":"class","name":"类型:","value":[{"n":"全部","v":""},{"n":"搞笑","v":"搞笑"},{"n":"运动","v":"运动"},{"n":"励志","v":"励志"},{"n":"热血","v":"热血"},{"n":"战斗","v":"战斗"},{"n":"竞技","v":"竞技"},{"n":"校园","v":"校园"},{"n":"青春","v":"青春"},{"n":"爱情","v":"爱情"},{"n":"冒险","v":"冒险"},{"n":"后宫","v":"后宫"},{"n":"百合","v":"百合"},{"n":"治愈","v":"治愈"},{"n":"萝莉","v":"萝莉"},{"n":"魔法","v":"魔法"},{"n":"悬疑","v":"悬疑"},{"n":"推理","v":"推理"},{"n":"奇幻","v":"奇幻"},{"n":"科幻","v":"科幻"},{"n":"游戏","v":"游戏"},{"n":"神魔","v":"神魔"},{"n":"恐怖","v":"恐怖"},{"n":"血腥","v":"血腥"},{"n":"机战","v":"机战"},{"n":"战争","v":"战争"},{"n":"犯罪","v":"犯罪"},{"n":"历史","v":"历史"},{"n":"社会","v":"社会"},{"n":"职场","v":"职场"},{"n":"剧情","v":"剧情"},{"n":"伪娘","v":"伪娘"},{"n":"耽美","v":"耽美"},{"n":"童年","v":"童年"},{"n":"教育","v":"教育"},{"n":"亲子","v":"亲子"},{"n":"真人","v":"真人"},{"n":"歌舞","v":"歌舞"},{"n":"肉番","v":"肉番"},{"n":"美少女","v":"美少女"},{"n":"轻小说","v":"轻小说"},{"n":"吸血鬼","v":"吸血鬼"},{"n":"女性向","v":"女性向"},{"n":"泡面番","v":"泡面番"},{"n":"欢乐向","v":"欢乐向"}]},{"key":"letter","name":"字母:","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"},{"n":"0~9","v":"0~9"}]},{"key":"by","name":"排序:","value":[{"n":"更新时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}]
+ },
+ searchUrl:'/search/**----------fypage---.html',
+ searchable:2,//是否启用全局搜索,
+ quickSearch:0,//是否启用快速搜索,
+ headers:{//网站的请求头,完整支持所有的,常带ua和cookies
+ 'User-Agent':'MOBILE_UA',
+ },
+ class_parse: '.search-tag li;a&&Text;a&&href;.*/(\\w+).html',
+ play_parse:true,
+ detailUrl:'',
+ lazy:"",
+ limit:6,
+ 推荐:'*',
+ 一级:'.blockcontent1&&.blockdif2;img&&alt;img&&src;.newname&&Text;a&&href',
+ 二级访问前:'',
+ 二级:{
+ "title":"h4&&Text;.detail_imform_value:eq(6)&&Text",
+ "img":".poster&&src",
+ "desc":".detail_imform_kv:eq(0)&&Text;.detail_imform_value:eq(5)&&Text;.detail_imform_value:eq(2)&&Text;.detail_imform_kv:eq(0)&&Text;.detail_imform_kv:eq(3)&&Text",
+ "content":".detail_imform_desc_pre&&Text",
+ "tabs":"#menu0&&li",
+ "lists":".movurl:eq(#id)&&li"},
+ 搜索:'*',
+}
\ No newline at end of file
diff --git a/JS/NyaFun.js b/JS/NyaFun.js
new file mode 100644
index 0000000..16b21a2
--- /dev/null
+++ b/JS/NyaFun.js
@@ -0,0 +1,13 @@
+muban.短视2.二级.img = '.detail-pic&&img&&data-src';
+var rule = {
+ title: 'NyaFun',
+ 模板:'短视2',
+ host: 'https://www.nyafun.net',
+ homeUrl:'/map.html',
+ url: '/index.php/api/vod#type=fyclass&page=fypage',
+ class_name:'番剧&剧场',
+ class_url:'2&1',
+ detailUrl:'/bangumi/fyid.html',
+ 推荐:'.border-box .public-list-box;a&&title;.lazy&&data-src;.public-list-prb&&Text;a&&href',
+ double: false, // 推荐内容是否双层定位
+}
\ No newline at end of file
diff --git a/JS/jsencrypt.js b/JS/jsencrypt.js
new file mode 100644
index 0000000..8dd6bfa
--- /dev/null
+++ b/JS/jsencrypt.js
@@ -0,0 +1,372 @@
+/*
+ * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
+ * This devtool is neither made for production nor for readable output files.
+ * It uses "eval()" calls to create a separate source file in the browser devtools.
+ * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
+ * or disable the default devtool with "devtool: false".
+ * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
+ */ (function webpackUniversalModuleDefinition(root, factory) {
+ if (typeof exports === 'object' && typeof module === 'object') {
+ // CommonJS
+ module.exports = exports = factory();
+ } else if (typeof define === 'function' && define.amd) {
+ // AMD
+ define([], factory);
+ } else {
+ // Global (browser)
+ globalThis.JSEncrypt = factory();
+ }
+})(this, () => {
+ return /******/ (() => { // webpackBootstrap
+ /******/
+ var __webpack_modules__ = ({
+
+ /***/
+ "./lib/JSEncrypt.js":
+ /*!**************************!*\
+ !*** ./lib/JSEncrypt.js ***!
+ \**************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* binding */ JSEncrypt)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./JSEncryptRSAKey */ \"./lib/JSEncryptRSAKey.js\");\n/* provided dependency */ var process = __webpack_require__(/*! process/browser */ \"./node_modules/process/browser.js\");\nvar _a;\n\n\nvar version = typeof process !== 'undefined'\n ? (_a = process.env) === null || _a === void 0 ? void 0 : \"3.3.2\"\n : undefined;\n/**\n *\n * @param {Object} [options = {}] - An object to customize JSEncrypt behaviour\n * possible parameters are:\n * - default_key_size {number} default: 1024 the key size in bit\n * - default_public_exponent {string} default: '010001' the hexadecimal representation of the public exponent\n * - log {boolean} default: false whether log warn/error or not\n * @constructor\n */\nvar JSEncrypt = /** @class */ (function () {\n function JSEncrypt(options) {\n if (options === void 0) { options = {}; }\n options = options || {};\n this.default_key_size = options.default_key_size\n ? parseInt(options.default_key_size, 10)\n : 1024;\n this.default_public_exponent = options.default_public_exponent || \"010001\"; // 65537 default openssl public exponent for rsa key type\n this.log = options.log || false;\n // The private and public key.\n this.key = null;\n }\n /**\n * Method to set the rsa key parameter (one method is enough to set both the public\n * and the private key, since the private key contains the public key paramenters)\n * Log a warning if logs are enabled\n * @param {Object|string} key the pem encoded string or an object (with or without header/footer)\n * @public\n */\n JSEncrypt.prototype.setKey = function (key) {\n if (this.log && this.key) {\n console.warn(\"A key was already set, overriding existing.\");\n }\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey(key);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPrivateKey = function (privkey) {\n // Create the key.\n this.setKey(privkey);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPublicKey = function (pubkey) {\n // Sets the public key.\n this.setKey(pubkey);\n };\n /**\n * Proxy method for RSAKey object's decrypt, decrypt the string using the private\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str base64 encoded crypted string to decrypt\n * @return {string} the decrypted string\n * @public\n */\n JSEncrypt.prototype.decrypt = function (str) {\n // Return the decrypted string.\n try {\n return this.getKey().decrypt((0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's encrypt, encrypt the string using the public\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str the string to encrypt\n * @return {string} the encrypted string encoded in base64\n * @public\n */\n JSEncrypt.prototype.encrypt = function (str) {\n // Return the encrypted string.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().encrypt(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's sign.\n * @param {string} str the string to sign\n * @param {function} digestMethod hash method\n * @param {string} digestName the name of the hash algorithm\n * @return {string} the signature encoded in base64\n * @public\n */\n JSEncrypt.prototype.sign = function (str, digestMethod, digestName) {\n // return the RSA signature of 'str' in 'hex' format.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().sign(str, digestMethod, digestName));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's verify.\n * @param {string} str the string to verify\n * @param {string} signature the signature encoded in base64 to compare the string to\n * @param {function} digestMethod hash method\n * @return {boolean} whether the data and signature match\n * @public\n */\n JSEncrypt.prototype.verify = function (str, signature, digestMethod) {\n // Return the decrypted 'digest' of the signature.\n try {\n return this.getKey().verify(str, (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(signature), digestMethod);\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Getter for the current JSEncryptRSAKey object. If it doesn't exists a new object\n * will be created and returned\n * @param {callback} [cb] the callback to be called if we want the key to be generated\n * in an async fashion\n * @returns {JSEncryptRSAKey} the JSEncryptRSAKey object\n * @public\n */\n JSEncrypt.prototype.getKey = function (cb) {\n // Only create new if it does not exist.\n if (!this.key) {\n // Get a new private key.\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey();\n if (cb && {}.toString.call(cb) === \"[object Function]\") {\n this.key.generateAsync(this.default_key_size, this.default_public_exponent, cb);\n return;\n }\n // Generate the key.\n this.key.generate(this.default_key_size, this.default_public_exponent);\n }\n return this.key;\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateKey();\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateBaseKeyB64();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicKey();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicBaseKeyB64();\n };\nvar b64map=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";var b64pad=\"=\";var base64DecodeChars=new Array(-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,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);function btoa(str){var out,i,len;var c1,c2,c3;len=str.length;i=0;out=\"\";while(i>2);out+=b64map.charAt((c1&3)<<4);out+=\"==\";break}c2=str.charCodeAt(i++);if(i==len){out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2);out+=\"=\";break}c3=str.charCodeAt(i++);out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2|(c3&192)>>6);out+=b64map.charAt(c3&63)}return out}function atob(str){var c1,c2,c3,c4;var i,len,out;len=str.length;i=0;out=\"\";while(i>4);do{c3=str.charCodeAt(i++)&255;if(c3==61)return out;c3=base64DecodeChars[c3]}while(i>2);do{c4=str.charCodeAt(i++)&255;if(c4==61)return out;c4=base64DecodeChars[c4]}while(i>6)+b64map.charAt(c&63)}if(i+1==h.length){c=parseInt(h.substring(i,i+1),16);ret+=b64map.charAt(c<<2)}else if(i+2==h.length){c=parseInt(h.substring(i,i+2),16);ret+=b64map.charAt(c>>2)+b64map.charAt((c&3)<<4)}while((ret.length&3)>0)ret+=b64pad;return ret}function hexToBytes(hex){for(var bytes=[],c=0;c>>4).toString(16));hex.push((bytes[i]&15).toString(16))}return hex.join(\"\")}function b64tohex(str){for(var i=0,bin=atob(str.replace(/[ \\r\\n]+$/,\"\")),hex=[];i>3};JSEncrypt.prototype.decryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)*2;try{var hexString=b64tohex(string);var decryptedString=\"\";var rexStr=\".{1,\"+maxLength+\"}\";var rex=new RegExp(rexStr,\"g\");var subStrArray=hexString.match(rex);if(subStrArray){subStrArray.forEach(function(entry){decryptedString+=k.decrypt(entry)});return decryptedString}}catch(ex){console.log(\"加密错误:\"+ex.message);return false}};JSEncrypt.prototype.encryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)-11;try{var subStr=\"\",encryptedString=\"\";var subStart=0,subEnd=0;var bitLen=0,tmpPoint=0;for(var i=0,len=string.length;imaxLength){subStr=string.substring(subStart,subEnd);encryptedString+=k.encrypt(subStr);subStart=subEnd;bitLen=bitLen-tmpPoint}else{subEnd=i;tmpPoint=bitLen}}subStr=string.substring(subStart,len);encryptedString+=k.encrypt(subStr);return hex2b64(encryptedString)}catch(ex){console.log(\"解密错误:\"+ex.message);return false}}; JSEncrypt.version = version;\n return JSEncrypt;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncrypt.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/JSEncryptRSAKey.js":
+ /*!********************************!*\
+ !*** ./lib/JSEncryptRSAKey.js ***!
+ \********************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncryptRSAKey\": () => (/* binding */ JSEncryptRSAKey)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/asn1js/hex */ \"./lib/lib/asn1js/hex.js\");\n/* harmony import */ var _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/asn1js/base64 */ \"./lib/lib/asn1js/base64.js\");\n/* harmony import */ var _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/asn1js/asn1 */ \"./lib/lib/asn1js/asn1.js\");\n/* harmony import */ var _lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/jsbn/rsa */ \"./lib/lib/jsbn/rsa.js\");\n/* harmony import */ var _lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/jsrsasign/asn1-1.0 */ \"./lib/lib/jsrsasign/asn1-1.0.js\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n\n\n\n\n\n/**\n * Create a new JSEncryptRSAKey that extends Tom Wu's RSA key object.\n * This object is just a decorator for parsing the key parameter\n * @param {string|Object} key - The key in string format, or an object containing\n * the parameters needed to build a RSAKey object.\n * @constructor\n */\nvar JSEncryptRSAKey = /** @class */ (function (_super) {\n __extends(JSEncryptRSAKey, _super);\n function JSEncryptRSAKey(key) {\n var _this = _super.call(this) || this;\n // Call the super constructor.\n // RSAKey.call(this);\n // If a key key was provided.\n if (key) {\n // If this is a string...\n if (typeof key === \"string\") {\n _this.parseKey(key);\n }\n else if (JSEncryptRSAKey.hasPrivateKeyProperty(key) ||\n JSEncryptRSAKey.hasPublicKeyProperty(key)) {\n // Set the values for the key.\n _this.parsePropertiesFrom(key);\n }\n }\n return _this;\n }\n /**\n * Method to parse a pem encoded string containing both a public or private key.\n * The method will translate the pem encoded string in a der encoded string and\n * will parse private key and public key parameters. This method accepts public key\n * in the rsaencryption pkcs #1 format (oid: 1.2.840.113549.1.1.1).\n *\n * @todo Check how many rsa formats use the same format of pkcs #1.\n *\n * The format is defined as:\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * it's possible to examine the structure of the keys obtained from openssl using\n * an asn.1 dumper as the one used here to parse the components: http://lapo.it/asn1js/\n * @argument {string} pem the pem encoded string, can include the BEGIN/END header/footer\n * @private\n */\n JSEncryptRSAKey.prototype.parseKey = function (pem) {\n try {\n var modulus = 0;\n var public_exponent = 0;\n var reHex = /^\\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\\s*)+$/;\n var der = reHex.test(pem) ? _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__.Hex.decode(pem) : _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__.Base64.unarmor(pem);\n var asn1 = _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__.ASN1.decode(der);\n // Fixes a bug with OpenSSL 1.0+ private keys\n if (asn1.sub.length === 3) {\n asn1 = asn1.sub[2].sub[0];\n }\n if (asn1.sub.length === 9) {\n // Parse the private key.\n modulus = asn1.sub[1].getHexStringValue(); // bigint\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[2].getHexStringValue(); // int\n this.e = parseInt(public_exponent, 16);\n var private_exponent = asn1.sub[3].getHexStringValue(); // bigint\n this.d = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(private_exponent, 16);\n var prime1 = asn1.sub[4].getHexStringValue(); // bigint\n this.p = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime1, 16);\n var prime2 = asn1.sub[5].getHexStringValue(); // bigint\n this.q = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime2, 16);\n var exponent1 = asn1.sub[6].getHexStringValue(); // bigint\n this.dmp1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent1, 16);\n var exponent2 = asn1.sub[7].getHexStringValue(); // bigint\n this.dmq1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent2, 16);\n var coefficient = asn1.sub[8].getHexStringValue(); // bigint\n this.coeff = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(coefficient, 16);\n }\n else if (asn1.sub.length === 2) {\n if (asn1.sub[0].sub) {\n // Parse ASN.1 SubjectPublicKeyInfo type as defined by X.509\n var bit_string = asn1.sub[1];\n var sequence = bit_string.sub[0];\n modulus = sequence.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = sequence.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n else {\n // Parse ASN.1 RSAPublicKey type as defined by PKCS #1\n modulus = asn1.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n }\n else {\n return false;\n }\n return true;\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa key.\n *\n * The translation follow the ASN.1 notation :\n * RSAPrivateKey ::= SEQUENCE {\n * version Version,\n * modulus INTEGER, -- n\n * publicExponent INTEGER, -- e\n * privateExponent INTEGER, -- d\n * prime1 INTEGER, -- p\n * prime2 INTEGER, -- q\n * exponent1 INTEGER, -- d mod (p1)\n * exponent2 INTEGER, -- d mod (q-1)\n * coefficient INTEGER, -- (inverse of q) mod p\n * }\n * @returns {string} DER Encoded String representing the rsa private key\n * @private\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKey = function () {\n var options = {\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: 0 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.d }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.p }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.q }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmp1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmq1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.coeff }),\n ],\n };\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence(options);\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPrivateBaseKey());\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa public key.\n * The representation follow the ASN.1 notation :\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * @returns {string} DER Encoded String representing the rsa public key\n * @private\n */\n JSEncryptRSAKey.prototype.getPublicBaseKey = function () {\n var first_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERObjectIdentifier({ oid: \"1.2.840.113549.1.1.1\" }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERNull(),\n ],\n });\n var second_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n ],\n });\n var bit_string = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERBitString({\n hex: \"00\" + second_sequence.getEncodedHex(),\n });\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [first_sequence, bit_string],\n });\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPublicBaseKey());\n };\n /**\n * wrap the string in block of width chars. The default value for rsa keys is 64\n * characters.\n * @param {string} str the pem encoded string without header and footer\n * @param {Number} [width=64] - the length the string has to be wrapped at\n * @returns {string}\n * @private\n */\n JSEncryptRSAKey.wordwrap = function (str, width) {\n width = width || 64;\n if (!str) {\n return str;\n }\n var regex = \"(.{1,\" + width + \"})( +|$\\n?)|(.{1,\" + width + \"})\";\n return str.match(RegExp(regex, \"g\")).join(\"\\n\");\n };\n /**\n * Retrieve the pem encoded private key\n * @returns {string} the pem encoded private key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateKey = function () {\n var key = \"-----BEGIN RSA PRIVATE KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPrivateBaseKeyB64()) + \"\\n\";\n key += \"-----END RSA PRIVATE KEY-----\";\n return key;\n };\n /**\n * Retrieve the pem encoded public key\n * @returns {string} the pem encoded public key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicKey = function () {\n var key = \"-----BEGIN PUBLIC KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPublicBaseKeyB64()) + \"\\n\";\n key += \"-----END PUBLIC KEY-----\";\n return key;\n };\n /**\n * Check if the object contains the necessary parameters to populate the rsa modulus\n * and public exponent parameters.\n * @param {Object} [obj={}] - An object that may contain the two public key\n * parameters\n * @returns {boolean} true if the object contains both the modulus and the public exponent\n * properties (n and e)\n * @todo check for types of n and e. N should be a parseable bigInt object, E should\n * be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPublicKeyProperty = function (obj) {\n obj = obj || {};\n return obj.hasOwnProperty(\"n\") && obj.hasOwnProperty(\"e\");\n };\n /**\n * Check if the object contains ALL the parameters of an RSA key.\n * @param {Object} [obj={}] - An object that may contain nine rsa key\n * parameters\n * @returns {boolean} true if the object contains all the parameters needed\n * @todo check for types of the parameters all the parameters but the public exponent\n * should be parseable bigint objects, the public exponent should be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPrivateKeyProperty = function (obj) {\n obj = obj || {};\n return (obj.hasOwnProperty(\"n\") &&\n obj.hasOwnProperty(\"e\") &&\n obj.hasOwnProperty(\"d\") &&\n obj.hasOwnProperty(\"p\") &&\n obj.hasOwnProperty(\"q\") &&\n obj.hasOwnProperty(\"dmp1\") &&\n obj.hasOwnProperty(\"dmq1\") &&\n obj.hasOwnProperty(\"coeff\"));\n };\n /**\n * Parse the properties of obj in the current rsa object. Obj should AT LEAST\n * include the modulus and public exponent (n, e) parameters.\n * @param {Object} obj - the object containing rsa parameters\n * @private\n */\n JSEncryptRSAKey.prototype.parsePropertiesFrom = function (obj) {\n this.n = obj.n;\n this.e = obj.e;\n if (obj.hasOwnProperty(\"d\")) {\n this.d = obj.d;\n this.p = obj.p;\n this.q = obj.q;\n this.dmp1 = obj.dmp1;\n this.dmq1 = obj.dmq1;\n this.coeff = obj.coeff;\n }\n };\n return JSEncryptRSAKey;\n}(_lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__.RSAKey));\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncryptRSAKey.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/index.js":
+ /*!**********************!*\
+ !*** ./lib/index.js ***!
+ \**********************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* reexport safe */ _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./JSEncrypt */ \"./lib/JSEncrypt.js\");\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/index.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/asn1js/asn1.js":
+ /*!********************************!*\
+ !*** ./lib/lib/asn1js/asn1.js ***!
+ \********************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"ASN1\": () => (/* binding */ ASN1),\n/* harmony export */ \"ASN1Tag\": () => (/* binding */ ASN1Tag),\n/* harmony export */ \"Stream\": () => (/* binding */ Stream)\n/* harmony export */ });\n/* harmony import */ var _int10__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./int10 */ \"./lib/lib/asn1js/int10.js\");\n// ASN.1 JavaScript decoder\n// Copyright (c) 2008-2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\n/*global oids */\n\nvar ellipsis = \"\\u2026\";\nvar reTimeS = /^(\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nvar reTimeL = /^(\\d\\d\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nfunction stringCut(str, len) {\n if (str.length > len) {\n str = str.substring(0, len) + ellipsis;\n }\n return str;\n}\nvar Stream = /** @class */ (function () {\n function Stream(enc, pos) {\n this.hexDigits = \"0123456789ABCDEF\";\n if (enc instanceof Stream) {\n this.enc = enc.enc;\n this.pos = enc.pos;\n }\n else {\n // enc should be an array or a binary string\n this.enc = enc;\n this.pos = pos;\n }\n }\n Stream.prototype.get = function (pos) {\n if (pos === undefined) {\n pos = this.pos++;\n }\n if (pos >= this.enc.length) {\n throw new Error(\"Requesting byte offset \".concat(pos, \" on a stream of length \").concat(this.enc.length));\n }\n return (\"string\" === typeof this.enc) ? this.enc.charCodeAt(pos) : this.enc[pos];\n };\n Stream.prototype.hexByte = function (b) {\n return this.hexDigits.charAt((b >> 4) & 0xF) + this.hexDigits.charAt(b & 0xF);\n };\n Stream.prototype.hexDump = function (start, end, raw) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n if (raw !== true) {\n switch (i & 0xF) {\n case 0x7:\n s += \" \";\n break;\n case 0xF:\n s += \"\\n\";\n break;\n default:\n s += \" \";\n }\n }\n }\n return s;\n };\n Stream.prototype.isASCII = function (start, end) {\n for (var i = start; i < end; ++i) {\n var c = this.get(i);\n if (c < 32 || c > 176) {\n return false;\n }\n }\n return true;\n };\n Stream.prototype.parseStringISO = function (start, end) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += String.fromCharCode(this.get(i));\n }\n return s;\n };\n Stream.prototype.parseStringUTF = function (start, end) {\n var s = \"\";\n for (var i = start; i < end;) {\n var c = this.get(i++);\n if (c < 128) {\n s += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n s += String.fromCharCode(((c & 0x1F) << 6) | (this.get(i++) & 0x3F));\n }\n else {\n s += String.fromCharCode(((c & 0x0F) << 12) | ((this.get(i++) & 0x3F) << 6) | (this.get(i++) & 0x3F));\n }\n }\n return s;\n };\n Stream.prototype.parseStringBMP = function (start, end) {\n var str = \"\";\n var hi;\n var lo;\n for (var i = start; i < end;) {\n hi = this.get(i++);\n lo = this.get(i++);\n str += String.fromCharCode((hi << 8) | lo);\n }\n return str;\n };\n Stream.prototype.parseTime = function (start, end, shortYear) {\n var s = this.parseStringISO(start, end);\n var m = (shortYear ? reTimeS : reTimeL).exec(s);\n if (!m) {\n return \"Unrecognized time: \" + s;\n }\n if (shortYear) {\n // to avoid querying the timer, use the fixed range [1970, 2069]\n // it will conform with ITU X.400 [-10, +40] sliding window until 2030\n m[1] = +m[1];\n m[1] += (+m[1] < 70) ? 2000 : 1900;\n }\n s = m[1] + \"-\" + m[2] + \"-\" + m[3] + \" \" + m[4];\n if (m[5]) {\n s += \":\" + m[5];\n if (m[6]) {\n s += \":\" + m[6];\n if (m[7]) {\n s += \".\" + m[7];\n }\n }\n }\n if (m[8]) {\n s += \" UTC\";\n if (m[8] != \"Z\") {\n s += m[8];\n if (m[9]) {\n s += \":\" + m[9];\n }\n }\n }\n return s;\n };\n Stream.prototype.parseInteger = function (start, end) {\n var v = this.get(start);\n var neg = (v > 127);\n var pad = neg ? 255 : 0;\n var len;\n var s = \"\";\n // skip unuseful bits (not allowed in DER)\n while (v == pad && ++start < end) {\n v = this.get(start);\n }\n len = end - start;\n if (len === 0) {\n return neg ? -1 : 0;\n }\n // show bit length of huge integers\n if (len > 4) {\n s = v;\n len <<= 3;\n while (((+s ^ pad) & 0x80) == 0) {\n s = +s << 1;\n --len;\n }\n s = \"(\" + len + \" bit)\\n\";\n }\n // decode the integer\n if (neg) {\n v = v - 256;\n }\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10(v);\n for (var i = start + 1; i < end; ++i) {\n n.mulAdd(256, this.get(i));\n }\n return s + n.toString();\n };\n Stream.prototype.parseBitString = function (start, end, maxLength) {\n var unusedBit = this.get(start);\n var lenBit = ((end - start - 1) << 3) - unusedBit;\n var intro = \"(\" + lenBit + \" bit)\\n\";\n var s = \"\";\n for (var i = start + 1; i < end; ++i) {\n var b = this.get(i);\n var skip = (i == end - 1) ? unusedBit : 0;\n for (var j = 7; j >= skip; --j) {\n s += (b >> j) & 1 ? \"1\" : \"0\";\n }\n if (s.length > maxLength) {\n return intro + stringCut(s, maxLength);\n }\n }\n return intro + s;\n };\n Stream.prototype.parseOctetString = function (start, end, maxLength) {\n if (this.isASCII(start, end)) {\n return stringCut(this.parseStringISO(start, end), maxLength);\n }\n var len = end - start;\n var s = \"(\" + len + \" byte)\\n\";\n maxLength /= 2; // we work in bytes\n if (len > maxLength) {\n end = start + maxLength;\n }\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n }\n if (len > maxLength) {\n s += ellipsis;\n }\n return s;\n };\n Stream.prototype.parseOID = function (start, end, maxLength) {\n var s = \"\";\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n var bits = 0;\n for (var i = start; i < end; ++i) {\n var v = this.get(i);\n n.mulAdd(128, v & 0x7F);\n bits += 7;\n if (!(v & 0x80)) { // finished\n if (s === \"\") {\n n = n.simplify();\n if (n instanceof _int10__WEBPACK_IMPORTED_MODULE_0__.Int10) {\n n.sub(80);\n s = \"2.\" + n.toString();\n }\n else {\n var m = n < 80 ? n < 40 ? 0 : 1 : 2;\n s = m + \".\" + (n - m * 40);\n }\n }\n else {\n s += \".\" + n.toString();\n }\n if (s.length > maxLength) {\n return stringCut(s, maxLength);\n }\n n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n bits = 0;\n }\n }\n if (bits > 0) {\n s += \".incomplete\";\n }\n return s;\n };\n return Stream;\n}());\n\nvar ASN1 = /** @class */ (function () {\n function ASN1(stream, header, length, tag, sub) {\n if (!(tag instanceof ASN1Tag)) {\n throw new Error(\"Invalid tag value.\");\n }\n this.stream = stream;\n this.header = header;\n this.length = length;\n this.tag = tag;\n this.sub = sub;\n }\n ASN1.prototype.typeName = function () {\n switch (this.tag.tagClass) {\n case 0: // universal\n switch (this.tag.tagNumber) {\n case 0x00:\n return \"EOC\";\n case 0x01:\n return \"BOOLEAN\";\n case 0x02:\n return \"INTEGER\";\n case 0x03:\n return \"BIT_STRING\";\n case 0x04:\n return \"OCTET_STRING\";\n case 0x05:\n return \"NULL\";\n case 0x06:\n return \"OBJECT_IDENTIFIER\";\n case 0x07:\n return \"ObjectDescriptor\";\n case 0x08:\n return \"EXTERNAL\";\n case 0x09:\n return \"REAL\";\n case 0x0A:\n return \"ENUMERATED\";\n case 0x0B:\n return \"EMBEDDED_PDV\";\n case 0x0C:\n return \"UTF8String\";\n case 0x10:\n return \"SEQUENCE\";\n case 0x11:\n return \"SET\";\n case 0x12:\n return \"NumericString\";\n case 0x13:\n return \"PrintableString\"; // ASCII subset\n case 0x14:\n return \"TeletexString\"; // aka T61String\n case 0x15:\n return \"VideotexString\";\n case 0x16:\n return \"IA5String\"; // ASCII\n case 0x17:\n return \"UTCTime\";\n case 0x18:\n return \"GeneralizedTime\";\n case 0x19:\n return \"GraphicString\";\n case 0x1A:\n return \"VisibleString\"; // ASCII subset\n case 0x1B:\n return \"GeneralString\";\n case 0x1C:\n return \"UniversalString\";\n case 0x1E:\n return \"BMPString\";\n }\n return \"Universal_\" + this.tag.tagNumber.toString();\n case 1:\n return \"Application_\" + this.tag.tagNumber.toString();\n case 2:\n return \"[\" + this.tag.tagNumber.toString() + \"]\"; // Context\n case 3:\n return \"Private_\" + this.tag.tagNumber.toString();\n }\n };\n ASN1.prototype.content = function (maxLength) {\n if (this.tag === undefined) {\n return null;\n }\n if (maxLength === undefined) {\n maxLength = Infinity;\n }\n var content = this.posContent();\n var len = Math.abs(this.length);\n if (!this.tag.isUniversal()) {\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n return this.stream.parseOctetString(content, content + len, maxLength);\n }\n switch (this.tag.tagNumber) {\n case 0x01: // BOOLEAN\n return (this.stream.get(content) === 0) ? \"false\" : \"true\";\n case 0x02: // INTEGER\n return this.stream.parseInteger(content, content + len);\n case 0x03: // BIT_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseBitString(content, content + len, maxLength);\n case 0x04: // OCTET_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseOctetString(content, content + len, maxLength);\n // case 0x05: // NULL\n case 0x06: // OBJECT_IDENTIFIER\n return this.stream.parseOID(content, content + len, maxLength);\n // case 0x07: // ObjectDescriptor\n // case 0x08: // EXTERNAL\n // case 0x09: // REAL\n // case 0x0A: // ENUMERATED\n // case 0x0B: // EMBEDDED_PDV\n case 0x10: // SEQUENCE\n case 0x11: // SET\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n else {\n return \"(no elem)\";\n }\n case 0x0C: // UTF8String\n return stringCut(this.stream.parseStringUTF(content, content + len), maxLength);\n case 0x12: // NumericString\n case 0x13: // PrintableString\n case 0x14: // TeletexString\n case 0x15: // VideotexString\n case 0x16: // IA5String\n // case 0x19: // GraphicString\n case 0x1A: // VisibleString\n // case 0x1B: // GeneralString\n // case 0x1C: // UniversalString\n return stringCut(this.stream.parseStringISO(content, content + len), maxLength);\n case 0x1E: // BMPString\n return stringCut(this.stream.parseStringBMP(content, content + len), maxLength);\n case 0x17: // UTCTime\n case 0x18: // GeneralizedTime\n return this.stream.parseTime(content, content + len, (this.tag.tagNumber == 0x17));\n }\n return null;\n };\n ASN1.prototype.toString = function () {\n return this.typeName() + \"@\" + this.stream.pos + \"[header:\" + this.header + \",length:\" + this.length + \",sub:\" + ((this.sub === null) ? \"null\" : this.sub.length) + \"]\";\n };\n ASN1.prototype.toPrettyString = function (indent) {\n if (indent === undefined) {\n indent = \"\";\n }\n var s = indent + this.typeName() + \" @\" + this.stream.pos;\n if (this.length >= 0) {\n s += \"+\";\n }\n s += this.length;\n if (this.tag.tagConstructed) {\n s += \" (constructed)\";\n }\n else if ((this.tag.isUniversal() && ((this.tag.tagNumber == 0x03) || (this.tag.tagNumber == 0x04))) && (this.sub !== null)) {\n s += \" (encapsulates)\";\n }\n s += \"\\n\";\n if (this.sub !== null) {\n indent += \" \";\n for (var i = 0, max = this.sub.length; i < max; ++i) {\n s += this.sub[i].toPrettyString(indent);\n }\n }\n return s;\n };\n ASN1.prototype.posStart = function () {\n return this.stream.pos;\n };\n ASN1.prototype.posContent = function () {\n return this.stream.pos + this.header;\n };\n ASN1.prototype.posEnd = function () {\n return this.stream.pos + this.header + Math.abs(this.length);\n };\n ASN1.prototype.toHexString = function () {\n return this.stream.hexDump(this.posStart(), this.posEnd(), true);\n };\n ASN1.decodeLength = function (stream) {\n var buf = stream.get();\n var len = buf & 0x7F;\n if (len == buf) {\n return len;\n }\n // no reason to use Int10, as it would be a huge buffer anyways\n if (len > 6) {\n throw new Error(\"Length over 48 bits not supported at position \" + (stream.pos - 1));\n }\n if (len === 0) {\n return null;\n } // undefined\n buf = 0;\n for (var i = 0; i < len; ++i) {\n buf = (buf * 256) + stream.get();\n }\n return buf;\n };\n /**\n * Retrieve the hexadecimal value (as a string) of the current ASN.1 element\n * @returns {string}\n * @public\n */\n ASN1.prototype.getHexStringValue = function () {\n var hexString = this.toHexString();\n var offset = this.header * 2;\n var length = this.length * 2;\n return hexString.substr(offset, length);\n };\n ASN1.decode = function (str) {\n var stream;\n if (!(str instanceof Stream)) {\n stream = new Stream(str, 0);\n }\n else {\n stream = str;\n }\n var streamStart = new Stream(stream);\n var tag = new ASN1Tag(stream);\n var len = ASN1.decodeLength(stream);\n var start = stream.pos;\n var header = start - streamStart.pos;\n var sub = null;\n var getSub = function () {\n var ret = [];\n if (len !== null) {\n // definite length\n var end = start + len;\n while (stream.pos < end) {\n ret[ret.length] = ASN1.decode(stream);\n }\n if (stream.pos != end) {\n throw new Error(\"Content size is not correct for container starting at offset \" + start);\n }\n }\n else {\n // undefined length\n try {\n for (;;) {\n var s = ASN1.decode(stream);\n if (s.tag.isEOC()) {\n break;\n }\n ret[ret.length] = s;\n }\n len = start - stream.pos; // undefined lengths are represented as negative values\n }\n catch (e) {\n throw new Error(\"Exception while decoding undefined length content: \" + e);\n }\n }\n return ret;\n };\n if (tag.tagConstructed) {\n // must have valid content\n sub = getSub();\n }\n else if (tag.isUniversal() && ((tag.tagNumber == 0x03) || (tag.tagNumber == 0x04))) {\n // sometimes BitString and OctetString are used to encapsulate ASN.1\n try {\n if (tag.tagNumber == 0x03) {\n if (stream.get() != 0) {\n throw new Error(\"BIT STRINGs with unused bits cannot encapsulate.\");\n }\n }\n sub = getSub();\n for (var i = 0; i < sub.length; ++i) {\n if (sub[i].tag.isEOC()) {\n throw new Error(\"EOC is not supposed to be actual content.\");\n }\n }\n }\n catch (e) {\n // but silently ignore when they don't\n sub = null;\n }\n }\n if (sub === null) {\n if (len === null) {\n throw new Error(\"We can't skip over an invalid tag with undefined length at offset \" + start);\n }\n stream.pos = start + Math.abs(len);\n }\n return new ASN1(streamStart, header, len, tag, sub);\n };\n return ASN1;\n}());\n\nvar ASN1Tag = /** @class */ (function () {\n function ASN1Tag(stream) {\n var buf = stream.get();\n this.tagClass = buf >> 6;\n this.tagConstructed = ((buf & 0x20) !== 0);\n this.tagNumber = buf & 0x1F;\n if (this.tagNumber == 0x1F) { // long tag\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n do {\n buf = stream.get();\n n.mulAdd(128, buf & 0x7F);\n } while (buf & 0x80);\n this.tagNumber = n.simplify();\n }\n }\n ASN1Tag.prototype.isUniversal = function () {\n return this.tagClass === 0x00;\n };\n ASN1Tag.prototype.isEOC = function () {\n return this.tagClass === 0x00 && this.tagNumber === 0x00;\n };\n return ASN1Tag;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/asn1.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/asn1js/base64.js":
+ /*!**********************************!*\
+ !*** ./lib/lib/asn1js/base64.js ***!
+ \**********************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Base64\": () => (/* binding */ Base64)\n/* harmony export */ });\n// Base64 JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Base64 = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var b64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n var ignore = \"= \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = Object.create(null);\n for (i = 0; i < 64; ++i) {\n decoder[b64.charAt(i)] = i;\n }\n decoder['-'] = 62; //+\n decoder['_'] = 63; //-\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 4) {\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n out[out.length] = bits & 0xFF;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 6;\n }\n }\n switch (char_count) {\n case 1:\n throw new Error(\"Base64 encoding incomplete: at least 2 bits missing\");\n case 2:\n out[out.length] = (bits >> 10);\n break;\n case 3:\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n break;\n }\n return out;\n },\n re: /-----BEGIN [^-]+-----([A-Za-z0-9+\\/=\\s]+)-----END [^-]+-----|begin-base64[^\\n]+\\n([A-Za-z0-9+\\/=\\s]+)====/,\n unarmor: function (a) {\n var m = Base64.re.exec(a);\n if (m) {\n if (m[1]) {\n a = m[1];\n }\n else if (m[2]) {\n a = m[2];\n }\n else {\n throw new Error(\"RegExp out of sync\");\n }\n }\n return Base64.decode(a);\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/base64.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/asn1js/hex.js":
+ /*!*******************************!*\
+ !*** ./lib/lib/asn1js/hex.js ***!
+ \*******************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Hex\": () => (/* binding */ Hex)\n/* harmony export */ });\n// Hex JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Hex = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var hex = \"0123456789ABCDEF\";\n var ignore = \" \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = {};\n for (i = 0; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n hex = hex.toLowerCase();\n for (i = 10; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 2) {\n out[out.length] = bits;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 4;\n }\n }\n if (char_count) {\n throw new Error(\"Hex encoding incomplete: 4 bits missing\");\n }\n return out;\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/hex.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/asn1js/int10.js":
+ /*!*********************************!*\
+ !*** ./lib/lib/asn1js/int10.js ***!
+ \*********************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Int10\": () => (/* binding */ Int10)\n/* harmony export */ });\n// Big integer base-10 printing library\n// Copyright (c) 2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar max = 10000000000000; // biggest integer that can still fit 2^53 when multiplied by 256\nvar Int10 = /** @class */ (function () {\n function Int10(value) {\n this.buf = [+value || 0];\n }\n Int10.prototype.mulAdd = function (m, c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] * m + c;\n if (t < max) {\n c = 0;\n }\n else {\n c = 0 | (t / max);\n t -= c * max;\n }\n b[i] = t;\n }\n if (c > 0) {\n b[i] = c;\n }\n };\n Int10.prototype.sub = function (c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] - c;\n if (t < 0) {\n t += max;\n c = 1;\n }\n else {\n c = 0;\n }\n b[i] = t;\n }\n while (b[b.length - 1] === 0) {\n b.pop();\n }\n };\n Int10.prototype.toString = function (base) {\n if ((base || 10) != 10) {\n throw new Error(\"only base 10 is supported\");\n }\n var b = this.buf;\n var s = b[b.length - 1].toString();\n for (var i = b.length - 2; i >= 0; --i) {\n s += (max + b[i]).toString().substring(1);\n }\n return s;\n };\n Int10.prototype.valueOf = function () {\n var b = this.buf;\n var v = 0;\n for (var i = b.length - 1; i >= 0; --i) {\n v = v * max + b[i];\n }\n return v;\n };\n Int10.prototype.simplify = function () {\n var b = this.buf;\n return (b.length == 1) ? b[0] : this;\n };\n return Int10;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/int10.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/jsbn/base64.js":
+ /*!********************************!*\
+ !*** ./lib/lib/jsbn/base64.js ***!
+ \********************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"b64toBA\": () => (/* binding */ b64toBA),\n/* harmony export */ \"b64tohex\": () => (/* binding */ b64tohex),\n/* harmony export */ \"hex2b64\": () => (/* binding */ hex2b64)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n\nvar b64map = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nvar b64pad = \"=\";\nfunction hex2b64(h) {\n var i;\n var c;\n var ret = \"\";\n for (i = 0; i + 3 <= h.length; i += 3) {\n c = parseInt(h.substring(i, i + 3), 16);\n ret += b64map.charAt(c >> 6) + b64map.charAt(c & 63);\n }\n if (i + 1 == h.length) {\n c = parseInt(h.substring(i, i + 1), 16);\n ret += b64map.charAt(c << 2);\n }\n else if (i + 2 == h.length) {\n c = parseInt(h.substring(i, i + 2), 16);\n ret += b64map.charAt(c >> 2) + b64map.charAt((c & 3) << 4);\n }\n while ((ret.length & 3) > 0) {\n ret += b64pad;\n }\n return ret;\n}\n// convert a base64 string to hex\nfunction b64tohex(s) {\n var ret = \"\";\n var i;\n var k = 0; // b64 state, 0-3\n var slop = 0;\n for (i = 0; i < s.length; ++i) {\n if (s.charAt(i) == b64pad) {\n break;\n }\n var v = b64map.indexOf(s.charAt(i));\n if (v < 0) {\n continue;\n }\n if (k == 0) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 1;\n }\n else if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n slop = v & 0xf;\n k = 2;\n }\n else if (k == 2) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop);\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 3;\n }\n else {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v & 0xf);\n k = 0;\n }\n }\n if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop << 2);\n }\n return ret;\n}\n// convert a base64 string to a byte/number array\nfunction b64toBA(s) {\n // piggyback on b64tohex for now, optimize later\n var h = b64tohex(s);\n var i;\n var a = [];\n for (i = 0; 2 * i < h.length; ++i) {\n a[i] = parseInt(h.substring(2 * i, 2 * i + 2), 16);\n }\n return a;\n}\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/base64.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/jsbn/jsbn.js":
+ /*!******************************!*\
+ !*** ./lib/lib/jsbn/jsbn.js ***!
+ \******************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"BigInteger\": () => (/* binding */ BigInteger),\n/* harmony export */ \"intAt\": () => (/* binding */ intAt),\n/* harmony export */ \"nbi\": () => (/* binding */ nbi),\n/* harmony export */ \"nbits\": () => (/* binding */ nbits),\n/* harmony export */ \"nbv\": () => (/* binding */ nbv),\n/* harmony export */ \"parseBigInt\": () => (/* binding */ parseBigInt)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n// Copyright (c) 2005 Tom Wu\n// All Rights Reserved.\n// See \"LICENSE\" for details.\n// Basic JavaScript BN library - subset useful for RSA encryption.\n\n// Bits per digit\nvar dbits;\n// JavaScript engine analysis\nvar canary = 0xdeadbeefcafe;\nvar j_lm = ((canary & 0xffffff) == 0xefcafe);\n//#region\nvar lowprimes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997];\nvar lplim = (1 << 26) / lowprimes[lowprimes.length - 1];\n//#endregion\n// (public) Constructor\nvar BigInteger = /** @class */ (function () {\n function BigInteger(a, b, c) {\n if (a != null) {\n if (\"number\" == typeof a) {\n this.fromNumber(a, b, c);\n }\n else if (b == null && \"string\" != typeof a) {\n this.fromString(a, 256);\n }\n else {\n this.fromString(a, b);\n }\n }\n }\n //#region PUBLIC\n // BigInteger.prototype.toString = bnToString;\n // (public) return string representation in given radix\n BigInteger.prototype.toString = function (b) {\n if (this.s < 0) {\n return \"-\" + this.negate().toString(b);\n }\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n return this.toRadix(b);\n }\n var km = (1 << k) - 1;\n var d;\n var m = false;\n var r = \"\";\n var i = this.t;\n var p = this.DB - (i * this.DB) % k;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) > 0) {\n m = true;\n r = (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n while (i >= 0) {\n if (p < k) {\n d = (this[i] & ((1 << p) - 1)) << (k - p);\n d |= this[--i] >> (p += this.DB - k);\n }\n else {\n d = (this[i] >> (p -= k)) & km;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if (d > 0) {\n m = true;\n }\n if (m) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n }\n }\n return m ? r : \"0\";\n };\n // BigInteger.prototype.negate = bnNegate;\n // (public) -this\n BigInteger.prototype.negate = function () {\n var r = nbi();\n BigInteger.ZERO.subTo(this, r);\n return r;\n };\n // BigInteger.prototype.abs = bnAbs;\n // (public) |this|\n BigInteger.prototype.abs = function () {\n return (this.s < 0) ? this.negate() : this;\n };\n // BigInteger.prototype.compareTo = bnCompareTo;\n // (public) return + if this > a, - if this < a, 0 if equal\n BigInteger.prototype.compareTo = function (a) {\n var r = this.s - a.s;\n if (r != 0) {\n return r;\n }\n var i = this.t;\n r = i - a.t;\n if (r != 0) {\n return (this.s < 0) ? -r : r;\n }\n while (--i >= 0) {\n if ((r = this[i] - a[i]) != 0) {\n return r;\n }\n }\n return 0;\n };\n // BigInteger.prototype.bitLength = bnBitLength;\n // (public) return the number of bits in \"this\"\n BigInteger.prototype.bitLength = function () {\n if (this.t <= 0) {\n return 0;\n }\n return this.DB * (this.t - 1) + nbits(this[this.t - 1] ^ (this.s & this.DM));\n };\n // BigInteger.prototype.mod = bnMod;\n // (public) this mod a\n BigInteger.prototype.mod = function (a) {\n var r = nbi();\n this.abs().divRemTo(a, null, r);\n if (this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n a.subTo(r, r);\n }\n return r;\n };\n // BigInteger.prototype.modPowInt = bnModPowInt;\n // (public) this^e % m, 0 <= e < 2^32\n BigInteger.prototype.modPowInt = function (e, m) {\n var z;\n if (e < 256 || m.isEven()) {\n z = new Classic(m);\n }\n else {\n z = new Montgomery(m);\n }\n return this.exp(e, z);\n };\n // BigInteger.prototype.clone = bnClone;\n // (public)\n BigInteger.prototype.clone = function () {\n var r = nbi();\n this.copyTo(r);\n return r;\n };\n // BigInteger.prototype.intValue = bnIntValue;\n // (public) return value as integer\n BigInteger.prototype.intValue = function () {\n if (this.s < 0) {\n if (this.t == 1) {\n return this[0] - this.DV;\n }\n else if (this.t == 0) {\n return -1;\n }\n }\n else if (this.t == 1) {\n return this[0];\n }\n else if (this.t == 0) {\n return 0;\n }\n // assumes 16 < DB < 32\n return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0];\n };\n // BigInteger.prototype.byteValue = bnByteValue;\n // (public) return value as byte\n BigInteger.prototype.byteValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 24) >> 24;\n };\n // BigInteger.prototype.shortValue = bnShortValue;\n // (public) return value as short (assumes DB>=16)\n BigInteger.prototype.shortValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 16) >> 16;\n };\n // BigInteger.prototype.signum = bnSigNum;\n // (public) 0 if this == 0, 1 if this > 0\n BigInteger.prototype.signum = function () {\n if (this.s < 0) {\n return -1;\n }\n else if (this.t <= 0 || (this.t == 1 && this[0] <= 0)) {\n return 0;\n }\n else {\n return 1;\n }\n };\n // BigInteger.prototype.toByteArray = bnToByteArray;\n // (public) convert to bigendian byte array\n BigInteger.prototype.toByteArray = function () {\n var i = this.t;\n var r = [];\n r[0] = this.s;\n var p = this.DB - (i * this.DB) % 8;\n var d;\n var k = 0;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) != (this.s & this.DM) >> p) {\n r[k++] = d | (this.s << (this.DB - p));\n }\n while (i >= 0) {\n if (p < 8) {\n d = (this[i] & ((1 << p) - 1)) << (8 - p);\n d |= this[--i] >> (p += this.DB - 8);\n }\n else {\n d = (this[i] >> (p -= 8)) & 0xff;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if ((d & 0x80) != 0) {\n d |= -256;\n }\n if (k == 0 && (this.s & 0x80) != (d & 0x80)) {\n ++k;\n }\n if (k > 0 || d != this.s) {\n r[k++] = d;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.equals = bnEquals;\n BigInteger.prototype.equals = function (a) {\n return (this.compareTo(a) == 0);\n };\n // BigInteger.prototype.min = bnMin;\n BigInteger.prototype.min = function (a) {\n return (this.compareTo(a) < 0) ? this : a;\n };\n // BigInteger.prototype.max = bnMax;\n BigInteger.prototype.max = function (a) {\n return (this.compareTo(a) > 0) ? this : a;\n };\n // BigInteger.prototype.and = bnAnd;\n BigInteger.prototype.and = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_and, r);\n return r;\n };\n // BigInteger.prototype.or = bnOr;\n BigInteger.prototype.or = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_or, r);\n return r;\n };\n // BigInteger.prototype.xor = bnXor;\n BigInteger.prototype.xor = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_xor, r);\n return r;\n };\n // BigInteger.prototype.andNot = bnAndNot;\n BigInteger.prototype.andNot = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_andnot, r);\n return r;\n };\n // BigInteger.prototype.not = bnNot;\n // (public) ~this\n BigInteger.prototype.not = function () {\n var r = nbi();\n for (var i = 0; i < this.t; ++i) {\n r[i] = this.DM & ~this[i];\n }\n r.t = this.t;\n r.s = ~this.s;\n return r;\n };\n // BigInteger.prototype.shiftLeft = bnShiftLeft;\n // (public) this << n\n BigInteger.prototype.shiftLeft = function (n) {\n var r = nbi();\n if (n < 0) {\n this.rShiftTo(-n, r);\n }\n else {\n this.lShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.shiftRight = bnShiftRight;\n // (public) this >> n\n BigInteger.prototype.shiftRight = function (n) {\n var r = nbi();\n if (n < 0) {\n this.lShiftTo(-n, r);\n }\n else {\n this.rShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;\n // (public) returns index of lowest 1-bit (or -1 if none)\n BigInteger.prototype.getLowestSetBit = function () {\n for (var i = 0; i < this.t; ++i) {\n if (this[i] != 0) {\n return i * this.DB + (0,_util__WEBPACK_IMPORTED_MODULE_0__.lbit)(this[i]);\n }\n }\n if (this.s < 0) {\n return this.t * this.DB;\n }\n return -1;\n };\n // BigInteger.prototype.bitCount = bnBitCount;\n // (public) return number of set bits\n BigInteger.prototype.bitCount = function () {\n var r = 0;\n var x = this.s & this.DM;\n for (var i = 0; i < this.t; ++i) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.cbit)(this[i] ^ x);\n }\n return r;\n };\n // BigInteger.prototype.testBit = bnTestBit;\n // (public) true iff nth bit is set\n BigInteger.prototype.testBit = function (n) {\n var j = Math.floor(n / this.DB);\n if (j >= this.t) {\n return (this.s != 0);\n }\n return ((this[j] & (1 << (n % this.DB))) != 0);\n };\n // BigInteger.prototype.setBit = bnSetBit;\n // (public) this | (1< 1) {\n var g2 = nbi();\n z.sqrTo(g[1], g2);\n while (n <= km) {\n g[n] = nbi();\n z.mulTo(g2, g[n - 2], g[n]);\n n += 2;\n }\n }\n var j = e.t - 1;\n var w;\n var is1 = true;\n var r2 = nbi();\n var t;\n i = nbits(e[j]) - 1;\n while (j >= 0) {\n if (i >= k1) {\n w = (e[j] >> (i - k1)) & km;\n }\n else {\n w = (e[j] & ((1 << (i + 1)) - 1)) << (k1 - i);\n if (j > 0) {\n w |= e[j - 1] >> (this.DB + i - k1);\n }\n }\n n = k;\n while ((w & 1) == 0) {\n w >>= 1;\n --n;\n }\n if ((i -= n) < 0) {\n i += this.DB;\n --j;\n }\n if (is1) { // ret == 1, don't bother squaring or multiplying it\n g[w].copyTo(r);\n is1 = false;\n }\n else {\n while (n > 1) {\n z.sqrTo(r, r2);\n z.sqrTo(r2, r);\n n -= 2;\n }\n if (n > 0) {\n z.sqrTo(r, r2);\n }\n else {\n t = r;\n r = r2;\n r2 = t;\n }\n z.mulTo(r2, g[w], r);\n }\n while (j >= 0 && (e[j] & (1 << i)) == 0) {\n z.sqrTo(r, r2);\n t = r;\n r = r2;\n r2 = t;\n if (--i < 0) {\n i = this.DB - 1;\n --j;\n }\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.modInverse = bnModInverse;\n // (public) 1/this % m (HAC 14.61)\n BigInteger.prototype.modInverse = function (m) {\n var ac = m.isEven();\n if ((this.isEven() && ac) || m.signum() == 0) {\n return BigInteger.ZERO;\n }\n var u = m.clone();\n var v = this.clone();\n var a = nbv(1);\n var b = nbv(0);\n var c = nbv(0);\n var d = nbv(1);\n while (u.signum() != 0) {\n while (u.isEven()) {\n u.rShiftTo(1, u);\n if (ac) {\n if (!a.isEven() || !b.isEven()) {\n a.addTo(this, a);\n b.subTo(m, b);\n }\n a.rShiftTo(1, a);\n }\n else if (!b.isEven()) {\n b.subTo(m, b);\n }\n b.rShiftTo(1, b);\n }\n while (v.isEven()) {\n v.rShiftTo(1, v);\n if (ac) {\n if (!c.isEven() || !d.isEven()) {\n c.addTo(this, c);\n d.subTo(m, d);\n }\n c.rShiftTo(1, c);\n }\n else if (!d.isEven()) {\n d.subTo(m, d);\n }\n d.rShiftTo(1, d);\n }\n if (u.compareTo(v) >= 0) {\n u.subTo(v, u);\n if (ac) {\n a.subTo(c, a);\n }\n b.subTo(d, b);\n }\n else {\n v.subTo(u, v);\n if (ac) {\n c.subTo(a, c);\n }\n d.subTo(b, d);\n }\n }\n if (v.compareTo(BigInteger.ONE) != 0) {\n return BigInteger.ZERO;\n }\n if (d.compareTo(m) >= 0) {\n return d.subtract(m);\n }\n if (d.signum() < 0) {\n d.addTo(m, d);\n }\n else {\n return d;\n }\n if (d.signum() < 0) {\n return d.add(m);\n }\n else {\n return d;\n }\n };\n // BigInteger.prototype.pow = bnPow;\n // (public) this^e\n BigInteger.prototype.pow = function (e) {\n return this.exp(e, new NullExp());\n };\n // BigInteger.prototype.gcd = bnGCD;\n // (public) gcd(this,a) (HAC 14.54)\n BigInteger.prototype.gcd = function (a) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n return x;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n while (x.signum() > 0) {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n }\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n return y;\n };\n // BigInteger.prototype.isProbablePrime = bnIsProbablePrime;\n // (public) test primality with certainty >= 1-.5^t\n BigInteger.prototype.isProbablePrime = function (t) {\n var i;\n var x = this.abs();\n if (x.t == 1 && x[0] <= lowprimes[lowprimes.length - 1]) {\n for (i = 0; i < lowprimes.length; ++i) {\n if (x[0] == lowprimes[i]) {\n return true;\n }\n }\n return false;\n }\n if (x.isEven()) {\n return false;\n }\n i = 1;\n while (i < lowprimes.length) {\n var m = lowprimes[i];\n var j = i + 1;\n while (j < lowprimes.length && m < lplim) {\n m *= lowprimes[j++];\n }\n m = x.modInt(m);\n while (i < j) {\n if (m % lowprimes[i++] == 0) {\n return false;\n }\n }\n }\n return x.millerRabin(t);\n };\n //#endregion PUBLIC\n //#region PROTECTED\n // BigInteger.prototype.copyTo = bnpCopyTo;\n // (protected) copy this to r\n BigInteger.prototype.copyTo = function (r) {\n for (var i = this.t - 1; i >= 0; --i) {\n r[i] = this[i];\n }\n r.t = this.t;\n r.s = this.s;\n };\n // BigInteger.prototype.fromInt = bnpFromInt;\n // (protected) set from integer value x, -DV <= x < DV\n BigInteger.prototype.fromInt = function (x) {\n this.t = 1;\n this.s = (x < 0) ? -1 : 0;\n if (x > 0) {\n this[0] = x;\n }\n else if (x < -1) {\n this[0] = x + this.DV;\n }\n else {\n this.t = 0;\n }\n };\n // BigInteger.prototype.fromString = bnpFromString;\n // (protected) set from string and radix\n BigInteger.prototype.fromString = function (s, b) {\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 256) {\n k = 8;\n /* byte array */\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n this.fromRadix(s, b);\n return;\n }\n this.t = 0;\n this.s = 0;\n var i = s.length;\n var mi = false;\n var sh = 0;\n while (--i >= 0) {\n var x = (k == 8) ? (+s[i]) & 0xff : intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\") {\n mi = true;\n }\n continue;\n }\n mi = false;\n if (sh == 0) {\n this[this.t++] = x;\n }\n else if (sh + k > this.DB) {\n this[this.t - 1] |= (x & ((1 << (this.DB - sh)) - 1)) << sh;\n this[this.t++] = (x >> (this.DB - sh));\n }\n else {\n this[this.t - 1] |= x << sh;\n }\n sh += k;\n if (sh >= this.DB) {\n sh -= this.DB;\n }\n }\n if (k == 8 && ((+s[0]) & 0x80) != 0) {\n this.s = -1;\n if (sh > 0) {\n this[this.t - 1] |= ((1 << (this.DB - sh)) - 1) << sh;\n }\n }\n this.clamp();\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.clamp = bnpClamp;\n // (protected) clamp off excess high words\n BigInteger.prototype.clamp = function () {\n var c = this.s & this.DM;\n while (this.t > 0 && this[this.t - 1] == c) {\n --this.t;\n }\n };\n // BigInteger.prototype.dlShiftTo = bnpDLShiftTo;\n // (protected) r = this << n*DB\n BigInteger.prototype.dlShiftTo = function (n, r) {\n var i;\n for (i = this.t - 1; i >= 0; --i) {\n r[i + n] = this[i];\n }\n for (i = n - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r.t = this.t + n;\n r.s = this.s;\n };\n // BigInteger.prototype.drShiftTo = bnpDRShiftTo;\n // (protected) r = this >> n*DB\n BigInteger.prototype.drShiftTo = function (n, r) {\n for (var i = n; i < this.t; ++i) {\n r[i - n] = this[i];\n }\n r.t = Math.max(this.t - n, 0);\n r.s = this.s;\n };\n // BigInteger.prototype.lShiftTo = bnpLShiftTo;\n // (protected) r = this << n\n BigInteger.prototype.lShiftTo = function (n, r) {\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << cbs) - 1;\n var ds = Math.floor(n / this.DB);\n var c = (this.s << bs) & this.DM;\n for (var i = this.t - 1; i >= 0; --i) {\n r[i + ds + 1] = (this[i] >> cbs) | c;\n c = (this[i] & bm) << bs;\n }\n for (var i = ds - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r[ds] = c;\n r.t = this.t + ds + 1;\n r.s = this.s;\n r.clamp();\n };\n // BigInteger.prototype.rShiftTo = bnpRShiftTo;\n // (protected) r = this >> n\n BigInteger.prototype.rShiftTo = function (n, r) {\n r.s = this.s;\n var ds = Math.floor(n / this.DB);\n if (ds >= this.t) {\n r.t = 0;\n return;\n }\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << bs) - 1;\n r[0] = this[ds] >> bs;\n for (var i = ds + 1; i < this.t; ++i) {\n r[i - ds - 1] |= (this[i] & bm) << cbs;\n r[i - ds] = this[i] >> bs;\n }\n if (bs > 0) {\n r[this.t - ds - 1] |= (this.s & bm) << cbs;\n }\n r.t = this.t - ds;\n r.clamp();\n };\n // BigInteger.prototype.subTo = bnpSubTo;\n // (protected) r = this - a\n BigInteger.prototype.subTo = function (a, r) {\n var i = 0;\n var c = 0;\n var m = Math.min(a.t, this.t);\n while (i < m) {\n c += this[i] - a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n if (a.t < this.t) {\n c -= a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c -= a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c -= a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c < -1) {\n r[i++] = this.DV + c;\n }\n else if (c > 0) {\n r[i++] = c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.multiplyTo = bnpMultiplyTo;\n // (protected) r = this * a, r != this,a (HAC 14.12)\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyTo = function (a, r) {\n var x = this.abs();\n var y = a.abs();\n var i = x.t;\n r.t = i + y.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < y.t; ++i) {\n r[i + x.t] = x.am(0, y[i], r, i, 0, x.t);\n }\n r.s = 0;\n r.clamp();\n if (this.s != a.s) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.squareTo = bnpSquareTo;\n // (protected) r = this^2, r != this (HAC 14.16)\n BigInteger.prototype.squareTo = function (r) {\n var x = this.abs();\n var i = r.t = 2 * x.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < x.t - 1; ++i) {\n var c = x.am(i, x[i], r, 2 * i, 0, 1);\n if ((r[i + x.t] += x.am(i + 1, 2 * x[i], r, 2 * i + 1, c, x.t - i - 1)) >= x.DV) {\n r[i + x.t] -= x.DV;\n r[i + x.t + 1] = 1;\n }\n }\n if (r.t > 0) {\n r[r.t - 1] += x.am(i, x[i], r, 2 * i, 0, 1);\n }\n r.s = 0;\n r.clamp();\n };\n // BigInteger.prototype.divRemTo = bnpDivRemTo;\n // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\n // r != q, this != m. q or r may be null.\n BigInteger.prototype.divRemTo = function (m, q, r) {\n var pm = m.abs();\n if (pm.t <= 0) {\n return;\n }\n var pt = this.abs();\n if (pt.t < pm.t) {\n if (q != null) {\n q.fromInt(0);\n }\n if (r != null) {\n this.copyTo(r);\n }\n return;\n }\n if (r == null) {\n r = nbi();\n }\n var y = nbi();\n var ts = this.s;\n var ms = m.s;\n var nsh = this.DB - nbits(pm[pm.t - 1]); // normalize modulus\n if (nsh > 0) {\n pm.lShiftTo(nsh, y);\n pt.lShiftTo(nsh, r);\n }\n else {\n pm.copyTo(y);\n pt.copyTo(r);\n }\n var ys = y.t;\n var y0 = y[ys - 1];\n if (y0 == 0) {\n return;\n }\n var yt = y0 * (1 << this.F1) + ((ys > 1) ? y[ys - 2] >> this.F2 : 0);\n var d1 = this.FV / yt;\n var d2 = (1 << this.F1) / yt;\n var e = 1 << this.F2;\n var i = r.t;\n var j = i - ys;\n var t = (q == null) ? nbi() : q;\n y.dlShiftTo(j, t);\n if (r.compareTo(t) >= 0) {\n r[r.t++] = 1;\n r.subTo(t, r);\n }\n BigInteger.ONE.dlShiftTo(ys, t);\n t.subTo(y, y); // \"negative\" y so we can replace sub with am later\n while (y.t < ys) {\n y[y.t++] = 0;\n }\n while (--j >= 0) {\n // Estimate quotient digit\n var qd = (r[--i] == y0) ? this.DM : Math.floor(r[i] * d1 + (r[i - 1] + e) * d2);\n if ((r[i] += y.am(0, qd, r, j, 0, ys)) < qd) { // Try it out\n y.dlShiftTo(j, t);\n r.subTo(t, r);\n while (r[i] < --qd) {\n r.subTo(t, r);\n }\n }\n }\n if (q != null) {\n r.drShiftTo(ys, q);\n if (ts != ms) {\n BigInteger.ZERO.subTo(q, q);\n }\n }\n r.t = ys;\n r.clamp();\n if (nsh > 0) {\n r.rShiftTo(nsh, r);\n } // Denormalize remainder\n if (ts < 0) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.invDigit = bnpInvDigit;\n // (protected) return \"-1/this % 2^DB\"; useful for Mont. reduction\n // justification:\n // xy == 1 (mod m)\n // xy = 1+km\n // xy(2-xy) = (1+km)(1-km)\n // x[y(2-xy)] = 1-k^2m^2\n // x[y(2-xy)] == 1 (mod m^2)\n // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\n // should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\n // JS multiply \"overflows\" differently from C/C++, so care is needed here.\n BigInteger.prototype.invDigit = function () {\n if (this.t < 1) {\n return 0;\n }\n var x = this[0];\n if ((x & 1) == 0) {\n return 0;\n }\n var y = x & 3; // y == 1/x mod 2^2\n y = (y * (2 - (x & 0xf) * y)) & 0xf; // y == 1/x mod 2^4\n y = (y * (2 - (x & 0xff) * y)) & 0xff; // y == 1/x mod 2^8\n y = (y * (2 - (((x & 0xffff) * y) & 0xffff))) & 0xffff; // y == 1/x mod 2^16\n // last step - calculate inverse mod DV directly;\n // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\n y = (y * (2 - x * y % this.DV)) % this.DV; // y == 1/x mod 2^dbits\n // we really want the negative inverse, and -DV < y < DV\n return (y > 0) ? this.DV - y : -y;\n };\n // BigInteger.prototype.isEven = bnpIsEven;\n // (protected) true iff this is even\n BigInteger.prototype.isEven = function () {\n return ((this.t > 0) ? (this[0] & 1) : this.s) == 0;\n };\n // BigInteger.prototype.exp = bnpExp;\n // (protected) this^e, e < 2^32, doing sqr and mul with \"r\" (HAC 14.79)\n BigInteger.prototype.exp = function (e, z) {\n if (e > 0xffffffff || e < 1) {\n return BigInteger.ONE;\n }\n var r = nbi();\n var r2 = nbi();\n var g = z.convert(this);\n var i = nbits(e) - 1;\n g.copyTo(r);\n while (--i >= 0) {\n z.sqrTo(r, r2);\n if ((e & (1 << i)) > 0) {\n z.mulTo(r2, g, r);\n }\n else {\n var t = r;\n r = r2;\n r2 = t;\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.chunkSize = bnpChunkSize;\n // (protected) return x s.t. r^x < DV\n BigInteger.prototype.chunkSize = function (r) {\n return Math.floor(Math.LN2 * this.DB / Math.log(r));\n };\n // BigInteger.prototype.toRadix = bnpToRadix;\n // (protected) convert to radix string\n BigInteger.prototype.toRadix = function (b) {\n if (b == null) {\n b = 10;\n }\n if (this.signum() == 0 || b < 2 || b > 36) {\n return \"0\";\n }\n var cs = this.chunkSize(b);\n var a = Math.pow(b, cs);\n var d = nbv(a);\n var y = nbi();\n var z = nbi();\n var r = \"\";\n this.divRemTo(d, y, z);\n while (y.signum() > 0) {\n r = (a + z.intValue()).toString(b).substr(1) + r;\n y.divRemTo(d, y, z);\n }\n return z.intValue().toString(b) + r;\n };\n // BigInteger.prototype.fromRadix = bnpFromRadix;\n // (protected) convert from radix string\n BigInteger.prototype.fromRadix = function (s, b) {\n this.fromInt(0);\n if (b == null) {\n b = 10;\n }\n var cs = this.chunkSize(b);\n var d = Math.pow(b, cs);\n var mi = false;\n var j = 0;\n var w = 0;\n for (var i = 0; i < s.length; ++i) {\n var x = intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\" && this.signum() == 0) {\n mi = true;\n }\n continue;\n }\n w = b * w + x;\n if (++j >= cs) {\n this.dMultiply(d);\n this.dAddOffset(w, 0);\n j = 0;\n w = 0;\n }\n }\n if (j > 0) {\n this.dMultiply(Math.pow(b, j));\n this.dAddOffset(w, 0);\n }\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.fromNumber = bnpFromNumber;\n // (protected) alternate constructor\n BigInteger.prototype.fromNumber = function (a, b, c) {\n if (\"number\" == typeof b) {\n // new BigInteger(int,int,RNG)\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n // force MSB set\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n } // force odd\n while (!this.isProbablePrime(b)) {\n this.dAddOffset(2, 0);\n if (this.bitLength() > a) {\n this.subTo(BigInteger.ONE.shiftLeft(a - 1), this);\n }\n }\n }\n }\n else {\n // new BigInteger(int,RNG)\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n // BigInteger.prototype.bitwiseTo = bnpBitwiseTo;\n // (protected) r = this op a (bitwise)\n BigInteger.prototype.bitwiseTo = function (a, op, r) {\n var i;\n var f;\n var m = Math.min(a.t, this.t);\n for (i = 0; i < m; ++i) {\n r[i] = op(this[i], a[i]);\n }\n if (a.t < this.t) {\n f = a.s & this.DM;\n for (i = m; i < this.t; ++i) {\n r[i] = op(this[i], f);\n }\n r.t = this.t;\n }\n else {\n f = this.s & this.DM;\n for (i = m; i < a.t; ++i) {\n r[i] = op(f, a[i]);\n }\n r.t = a.t;\n }\n r.s = op(this.s, a.s);\n r.clamp();\n };\n // BigInteger.prototype.changeBit = bnpChangeBit;\n // (protected) this op (1<>= this.DB;\n }\n if (a.t < this.t) {\n c += a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c += a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c > 0) {\n r[i++] = c;\n }\n else if (c < -1) {\n r[i++] = this.DV + c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.dMultiply = bnpDMultiply;\n // (protected) this *= n, this >= 0, 1 < n < DV\n BigInteger.prototype.dMultiply = function (n) {\n this[this.t] = this.am(0, n - 1, this, 0, 0, this.t);\n ++this.t;\n this.clamp();\n };\n // BigInteger.prototype.dAddOffset = bnpDAddOffset;\n // (protected) this += n << w words, this >= 0\n BigInteger.prototype.dAddOffset = function (n, w) {\n if (n == 0) {\n return;\n }\n while (this.t <= w) {\n this[this.t++] = 0;\n }\n this[w] += n;\n while (this[w] >= this.DV) {\n this[w] -= this.DV;\n if (++w >= this.t) {\n this[this.t++] = 0;\n }\n ++this[w];\n }\n };\n // BigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;\n // (protected) r = lower n words of \"this * a\", a.t <= n\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyLowerTo = function (a, n, r) {\n var i = Math.min(this.t + a.t, n);\n r.s = 0; // assumes a,this >= 0\n r.t = i;\n while (i > 0) {\n r[--i] = 0;\n }\n for (var j = r.t - this.t; i < j; ++i) {\n r[i + this.t] = this.am(0, a[i], r, i, 0, this.t);\n }\n for (var j = Math.min(a.t, n); i < j; ++i) {\n this.am(0, a[i], r, i, 0, n - i);\n }\n r.clamp();\n };\n // BigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;\n // (protected) r = \"this * a\" without lower n words, n > 0\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyUpperTo = function (a, n, r) {\n --n;\n var i = r.t = this.t + a.t - n;\n r.s = 0; // assumes a,this >= 0\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = Math.max(n - this.t, 0); i < a.t; ++i) {\n r[this.t + i - n] = this.am(n - i, a[i], r, 0, 0, this.t + i - n);\n }\n r.clamp();\n r.drShiftTo(1, r);\n };\n // BigInteger.prototype.modInt = bnpModInt;\n // (protected) this % n, n < 2^26\n BigInteger.prototype.modInt = function (n) {\n if (n <= 0) {\n return 0;\n }\n var d = this.DV % n;\n var r = (this.s < 0) ? n - 1 : 0;\n if (this.t > 0) {\n if (d == 0) {\n r = this[0] % n;\n }\n else {\n for (var i = this.t - 1; i >= 0; --i) {\n r = (d * r + this[i]) % n;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.millerRabin = bnpMillerRabin;\n // (protected) true if probably prime (HAC 4.24, Miller-Rabin)\n BigInteger.prototype.millerRabin = function (t) {\n var n1 = this.subtract(BigInteger.ONE);\n var k = n1.getLowestSetBit();\n if (k <= 0) {\n return false;\n }\n var r = n1.shiftRight(k);\n t = (t + 1) >> 1;\n if (t > lowprimes.length) {\n t = lowprimes.length;\n }\n var a = nbi();\n for (var i = 0; i < t; ++i) {\n // Pick bases at random, instead of starting at 2\n a.fromInt(lowprimes[Math.floor(Math.random() * lowprimes.length)]);\n var y = a.modPow(r, this);\n if (y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) {\n var j = 1;\n while (j++ < k && y.compareTo(n1) != 0) {\n y = y.modPowInt(2, this);\n if (y.compareTo(BigInteger.ONE) == 0) {\n return false;\n }\n }\n if (y.compareTo(n1) != 0) {\n return false;\n }\n }\n }\n return true;\n };\n // BigInteger.prototype.square = bnSquare;\n // (public) this^2\n BigInteger.prototype.square = function () {\n var r = nbi();\n this.squareTo(r);\n return r;\n };\n //#region ASYNC\n // Public API method\n BigInteger.prototype.gcda = function (a, callback) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n callback(x);\n return;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n // Workhorse of the algorithm, gets called 200 - 800 times per 512 bit keygen.\n var gcda1 = function () {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n if (!(x.signum() > 0)) {\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n setTimeout(function () { callback(y); }, 0); // escape\n }\n else {\n setTimeout(gcda1, 0);\n }\n };\n setTimeout(gcda1, 10);\n };\n // (protected) alternate constructor\n BigInteger.prototype.fromNumberAsync = function (a, b, c, callback) {\n if (\"number\" == typeof b) {\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n }\n var bnp_1 = this;\n var bnpfn1_1 = function () {\n bnp_1.dAddOffset(2, 0);\n if (bnp_1.bitLength() > a) {\n bnp_1.subTo(BigInteger.ONE.shiftLeft(a - 1), bnp_1);\n }\n if (bnp_1.isProbablePrime(b)) {\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(bnpfn1_1, 0);\n }\n };\n setTimeout(bnpfn1_1, 0);\n }\n }\n else {\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n return BigInteger;\n}());\n\n//#region REDUCERS\n//#region NullExp\nvar NullExp = /** @class */ (function () {\n function NullExp() {\n }\n // NullExp.prototype.convert = nNop;\n NullExp.prototype.convert = function (x) {\n return x;\n };\n // NullExp.prototype.revert = nNop;\n NullExp.prototype.revert = function (x) {\n return x;\n };\n // NullExp.prototype.mulTo = nMulTo;\n NullExp.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n };\n // NullExp.prototype.sqrTo = nSqrTo;\n NullExp.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n };\n return NullExp;\n}());\n// Modular reduction using \"classic\" algorithm\nvar Classic = /** @class */ (function () {\n function Classic(m) {\n this.m = m;\n }\n // Classic.prototype.convert = cConvert;\n Classic.prototype.convert = function (x) {\n if (x.s < 0 || x.compareTo(this.m) >= 0) {\n return x.mod(this.m);\n }\n else {\n return x;\n }\n };\n // Classic.prototype.revert = cRevert;\n Classic.prototype.revert = function (x) {\n return x;\n };\n // Classic.prototype.reduce = cReduce;\n Classic.prototype.reduce = function (x) {\n x.divRemTo(this.m, null, x);\n };\n // Classic.prototype.mulTo = cMulTo;\n Classic.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Classic.prototype.sqrTo = cSqrTo;\n Classic.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Classic;\n}());\n//#endregion\n//#region Montgomery\n// Montgomery reduction\nvar Montgomery = /** @class */ (function () {\n function Montgomery(m) {\n this.m = m;\n this.mp = m.invDigit();\n this.mpl = this.mp & 0x7fff;\n this.mph = this.mp >> 15;\n this.um = (1 << (m.DB - 15)) - 1;\n this.mt2 = 2 * m.t;\n }\n // Montgomery.prototype.convert = montConvert;\n // xR mod m\n Montgomery.prototype.convert = function (x) {\n var r = nbi();\n x.abs().dlShiftTo(this.m.t, r);\n r.divRemTo(this.m, null, r);\n if (x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n this.m.subTo(r, r);\n }\n return r;\n };\n // Montgomery.prototype.revert = montRevert;\n // x/R mod m\n Montgomery.prototype.revert = function (x) {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n };\n // Montgomery.prototype.reduce = montReduce;\n // x = x/R mod m (HAC 14.32)\n Montgomery.prototype.reduce = function (x) {\n while (x.t <= this.mt2) {\n // pad x so am has enough room later\n x[x.t++] = 0;\n }\n for (var i = 0; i < this.m.t; ++i) {\n // faster way of calculating u0 = x[i]*mp mod DV\n var j = x[i] & 0x7fff;\n var u0 = (j * this.mpl + (((j * this.mph + (x[i] >> 15) * this.mpl) & this.um) << 15)) & x.DM;\n // use am to combine the multiply-shift-add into one call\n j = i + this.m.t;\n x[j] += this.m.am(0, u0, x, i, 0, this.m.t);\n // propagate carry\n while (x[j] >= x.DV) {\n x[j] -= x.DV;\n x[++j]++;\n }\n }\n x.clamp();\n x.drShiftTo(this.m.t, x);\n if (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Montgomery.prototype.mulTo = montMulTo;\n // r = \"xy/R mod m\"; x,y != r\n Montgomery.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Montgomery.prototype.sqrTo = montSqrTo;\n // r = \"x^2/R mod m\"; x != r\n Montgomery.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Montgomery;\n}());\n//#endregion Montgomery\n//#region Barrett\n// Barrett modular reduction\nvar Barrett = /** @class */ (function () {\n function Barrett(m) {\n this.m = m;\n // setup Barrett\n this.r2 = nbi();\n this.q3 = nbi();\n BigInteger.ONE.dlShiftTo(2 * m.t, this.r2);\n this.mu = this.r2.divide(m);\n }\n // Barrett.prototype.convert = barrettConvert;\n Barrett.prototype.convert = function (x) {\n if (x.s < 0 || x.t > 2 * this.m.t) {\n return x.mod(this.m);\n }\n else if (x.compareTo(this.m) < 0) {\n return x;\n }\n else {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n }\n };\n // Barrett.prototype.revert = barrettRevert;\n Barrett.prototype.revert = function (x) {\n return x;\n };\n // Barrett.prototype.reduce = barrettReduce;\n // x = x mod m (HAC 14.42)\n Barrett.prototype.reduce = function (x) {\n x.drShiftTo(this.m.t - 1, this.r2);\n if (x.t > this.m.t + 1) {\n x.t = this.m.t + 1;\n x.clamp();\n }\n this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3);\n this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2);\n while (x.compareTo(this.r2) < 0) {\n x.dAddOffset(1, this.m.t + 1);\n }\n x.subTo(this.r2, x);\n while (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Barrett.prototype.mulTo = barrettMulTo;\n // r = x*y mod m; x,y != r\n Barrett.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Barrett.prototype.sqrTo = barrettSqrTo;\n // r = x^2 mod m; x != r\n Barrett.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Barrett;\n}());\n//#endregion\n//#endregion REDUCERS\n// return new, unset BigInteger\nfunction nbi() { return new BigInteger(null); }\nfunction parseBigInt(str, r) {\n return new BigInteger(str, r);\n}\n// am: Compute w_j += (x*this_i), propagate carries,\n// c is initial carry, returns final carry.\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\n// We need to select the fastest one that works in this environment.\nvar inBrowser = typeof navigator !== \"undefined\";\nif (inBrowser && j_lm && (navigator.appName == \"Microsoft Internet Explorer\")) {\n // am2 avoids a big mult-and-extract completely.\n // Max digit bits should be <= 30 because we do bitwise ops\n // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\n BigInteger.prototype.am = function am2(i, x, w, j, c, n) {\n var xl = x & 0x7fff;\n var xh = x >> 15;\n while (--n >= 0) {\n var l = this[i] & 0x7fff;\n var h = this[i++] >> 15;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x7fff) << 15) + w[j] + (c & 0x3fffffff);\n c = (l >>> 30) + (m >>> 15) + xh * h + (c >>> 30);\n w[j++] = l & 0x3fffffff;\n }\n return c;\n };\n dbits = 30;\n}\nelse if (inBrowser && j_lm && (navigator.appName != \"Netscape\")) {\n // am1: use a single mult and divide to get the high bits,\n // max digit bits should be 26 because\n // max internal value = 2*dvalue^2-2*dvalue (< 2^53)\n BigInteger.prototype.am = function am1(i, x, w, j, c, n) {\n while (--n >= 0) {\n var v = x * this[i++] + w[j] + c;\n c = Math.floor(v / 0x4000000);\n w[j++] = v & 0x3ffffff;\n }\n return c;\n };\n dbits = 26;\n}\nelse { // Mozilla/Netscape seems to prefer am3\n // Alternately, set max digit bits to 28 since some\n // browsers slow down when dealing with 32-bit numbers.\n BigInteger.prototype.am = function am3(i, x, w, j, c, n) {\n var xl = x & 0x3fff;\n var xh = x >> 14;\n while (--n >= 0) {\n var l = this[i] & 0x3fff;\n var h = this[i++] >> 14;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x3fff) << 14) + w[j] + c;\n c = (l >> 28) + (m >> 14) + xh * h;\n w[j++] = l & 0xfffffff;\n }\n return c;\n };\n dbits = 28;\n}\nBigInteger.prototype.DB = dbits;\nBigInteger.prototype.DM = ((1 << dbits) - 1);\nBigInteger.prototype.DV = (1 << dbits);\nvar BI_FP = 52;\nBigInteger.prototype.FV = Math.pow(2, BI_FP);\nBigInteger.prototype.F1 = BI_FP - dbits;\nBigInteger.prototype.F2 = 2 * dbits - BI_FP;\n// Digit conversions\nvar BI_RC = [];\nvar rr;\nvar vv;\nrr = \"0\".charCodeAt(0);\nfor (vv = 0; vv <= 9; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"a\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"A\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nfunction intAt(s, i) {\n var c = BI_RC[s.charCodeAt(i)];\n return (c == null) ? -1 : c;\n}\n// return bigint initialized to value\nfunction nbv(i) {\n var r = nbi();\n r.fromInt(i);\n return r;\n}\n// returns bit length of the integer x\nfunction nbits(x) {\n var r = 1;\n var t;\n if ((t = x >>> 16) != 0) {\n x = t;\n r += 16;\n }\n if ((t = x >> 8) != 0) {\n x = t;\n r += 8;\n }\n if ((t = x >> 4) != 0) {\n x = t;\n r += 4;\n }\n if ((t = x >> 2) != 0) {\n x = t;\n r += 2;\n }\n if ((t = x >> 1) != 0) {\n x = t;\n r += 1;\n }\n return r;\n}\n// \"constants\"\nBigInteger.ZERO = nbv(0);\nBigInteger.ONE = nbv(1);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/jsbn.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/jsbn/prng4.js":
+ /*!*******************************!*\
+ !*** ./lib/lib/jsbn/prng4.js ***!
+ \*******************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Arcfour\": () => (/* binding */ Arcfour),\n/* harmony export */ \"prng_newstate\": () => (/* binding */ prng_newstate),\n/* harmony export */ \"rng_psize\": () => (/* binding */ rng_psize)\n/* harmony export */ });\n// prng4.js - uses Arcfour as a PRNG\nvar Arcfour = /** @class */ (function () {\n function Arcfour() {\n this.i = 0;\n this.j = 0;\n this.S = [];\n }\n // Arcfour.prototype.init = ARC4init;\n // Initialize arcfour context from key, an array of ints, each from [0..255]\n Arcfour.prototype.init = function (key) {\n var i;\n var j;\n var t;\n for (i = 0; i < 256; ++i) {\n this.S[i] = i;\n }\n j = 0;\n for (i = 0; i < 256; ++i) {\n j = (j + this.S[i] + key[i % key.length]) & 255;\n t = this.S[i];\n this.S[i] = this.S[j];\n this.S[j] = t;\n }\n this.i = 0;\n this.j = 0;\n };\n // Arcfour.prototype.next = ARC4next;\n Arcfour.prototype.next = function () {\n var t;\n this.i = (this.i + 1) & 255;\n this.j = (this.j + this.S[this.i]) & 255;\n t = this.S[this.i];\n this.S[this.i] = this.S[this.j];\n this.S[this.j] = t;\n return this.S[(t + this.S[this.i]) & 255];\n };\n return Arcfour;\n}());\n\n// Plug in your RNG constructor here\nfunction prng_newstate() {\n return new Arcfour();\n}\n// Pool size must be a multiple of 4 and greater than 32.\n// An array of bytes the size of the pool will be passed to init()\nvar rng_psize = 256;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/prng4.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/jsbn/rng.js":
+ /*!*****************************!*\
+ !*** ./lib/lib/jsbn/rng.js ***!
+ \*****************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"SecureRandom\": () => (/* binding */ SecureRandom)\n/* harmony export */ });\n/* harmony import */ var _prng4__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./prng4 */ \"./lib/lib/jsbn/prng4.js\");\n// Random number generator - requires a PRNG backend, e.g. prng4.js\n\nvar rng_state;\nvar rng_pool = null;\nvar rng_pptr;\n// Initialize the pool with junk if needed.\nif (rng_pool == null) {\n rng_pool = [];\n rng_pptr = 0;\n var t = void 0;\n if (typeof window !== 'undefined' && window.crypto && window.crypto.getRandomValues) {\n // Extract entropy (2048 bits) from RNG if available\n var z = new Uint32Array(256);\n window.crypto.getRandomValues(z);\n for (t = 0; t < z.length; ++t) {\n rng_pool[rng_pptr++] = z[t] & 255;\n }\n }\n // Use mouse events for entropy, if we do not have enough entropy by the time\n // we need it, entropy will be generated by Math.random.\n var count = 0;\n var onMouseMoveListener_1 = function (ev) {\n count = count || 0;\n if (count >= 256 || rng_pptr >= _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n if (window.removeEventListener) {\n window.removeEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.detachEvent) {\n window.detachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n return;\n }\n try {\n var mouseCoordinates = ev.x + ev.y;\n rng_pool[rng_pptr++] = mouseCoordinates & 255;\n count += 1;\n }\n catch (e) {\n // Sometimes Firefox will deny permission to access event properties for some reason. Ignore.\n }\n };\n if (typeof window !== 'undefined') {\n if (window.addEventListener) {\n window.addEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.attachEvent) {\n window.attachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n }\n}\nfunction rng_get_byte() {\n if (rng_state == null) {\n rng_state = (0,_prng4__WEBPACK_IMPORTED_MODULE_0__.prng_newstate)();\n // At this point, we may not have collected enough entropy. If not, fall back to Math.random\n while (rng_pptr < _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n var random = Math.floor(65536 * Math.random());\n rng_pool[rng_pptr++] = random & 255;\n }\n rng_state.init(rng_pool);\n for (rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr) {\n rng_pool[rng_pptr] = 0;\n }\n rng_pptr = 0;\n }\n // TODO: allow reseeding after first request\n return rng_state.next();\n}\nvar SecureRandom = /** @class */ (function () {\n function SecureRandom() {\n }\n SecureRandom.prototype.nextBytes = function (ba) {\n for (var i = 0; i < ba.length; ++i) {\n ba[i] = rng_get_byte();\n }\n };\n return SecureRandom;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rng.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/jsbn/rsa.js":
+ /*!*****************************!*\
+ !*** ./lib/lib/jsbn/rsa.js ***!
+ \*****************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"RSAKey\": () => (/* binding */ RSAKey)\n/* harmony export */ });\n/* harmony import */ var _jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _rng__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./rng */ \"./lib/lib/jsbn/rng.js\");\n// Depends on jsbn.js and rng.js\n// Version 1.1: support utf-8 encoding in pkcs1pad2\n// convert a (hex) string to a bignum object\n\n\n// function linebrk(s,n) {\n// var ret = \"\";\n// var i = 0;\n// while(i + n < s.length) {\n// ret += s.substring(i,i+n) + \"\\n\";\n// i += n;\n// }\n// return ret + s.substring(i,s.length);\n// }\n// function byte2Hex(b) {\n// if(b < 0x10)\n// return \"0\" + b.toString(16);\n// else\n// return b.toString(16);\n// }\nfunction pkcs1pad1(s, n) {\n if (n < s.length + 22) {\n console.error(\"Message too long for RSA\");\n return null;\n }\n var len = n - s.length - 6;\n var filler = \"\";\n for (var f = 0; f < len; f += 2) {\n filler += \"ff\";\n }\n var m = \"0001\" + filler + \"00\" + s;\n return (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(m, 16);\n}\n// PKCS#1 (type 2, random) pad input string s to n bytes, and return a bigint\nfunction pkcs1pad2(s, n) {\n if (n < s.length + 11) { // TODO: fix for utf-8\n console.error(\"Message too long for RSA\");\n return null;\n }\n var ba = [];\n var i = s.length - 1;\n while (i >= 0 && n > 0) {\n var c = s.charCodeAt(i--);\n if (c < 128) { // encode using utf-8\n ba[--n] = c;\n }\n else if ((c > 127) && (c < 2048)) {\n ba[--n] = (c & 63) | 128;\n ba[--n] = (c >> 6) | 192;\n }\n else {\n ba[--n] = (c & 63) | 128;\n ba[--n] = ((c >> 6) & 63) | 128;\n ba[--n] = (c >> 12) | 224;\n }\n }\n ba[--n] = 0;\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var x = [];\n while (n > 2) { // random non-zero pad\n x[0] = 0;\n while (x[0] == 0) {\n rng.nextBytes(x);\n }\n ba[--n] = x[0];\n }\n ba[--n] = 2;\n ba[--n] = 0;\n return new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(ba);\n}\n// \"empty\" RSA key constructor\nvar RSAKey = /** @class */ (function () {\n function RSAKey() {\n this.n = null;\n this.e = 0;\n this.d = null;\n this.p = null;\n this.q = null;\n this.dmp1 = null;\n this.dmq1 = null;\n this.coeff = null;\n }\n //#region PROTECTED\n // protected\n // RSAKey.prototype.doPublic = RSADoPublic;\n // Perform raw public operation on \"x\": return x^e (mod n)\n RSAKey.prototype.doPublic = function (x) {\n return x.modPowInt(this.e, this.n);\n };\n // RSAKey.prototype.doPrivate = RSADoPrivate;\n // Perform raw private operation on \"x\": return x^d (mod n)\n RSAKey.prototype.doPrivate = function (x) {\n if (this.p == null || this.q == null) {\n return x.modPow(this.d, this.n);\n }\n // TODO: re-calculate any missing CRT params\n var xp = x.mod(this.p).modPow(this.dmp1, this.p);\n var xq = x.mod(this.q).modPow(this.dmq1, this.q);\n while (xp.compareTo(xq) < 0) {\n xp = xp.add(this.p);\n }\n return xp.subtract(xq).multiply(this.coeff).mod(this.p).multiply(this.q).add(xq);\n };\n //#endregion PROTECTED\n //#region PUBLIC\n // RSAKey.prototype.setPublic = RSASetPublic;\n // Set the public key fields N and e from hex strings\n RSAKey.prototype.setPublic = function (N, E) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n }\n else {\n console.error(\"Invalid RSA public key\");\n }\n };\n // RSAKey.prototype.encrypt = RSAEncrypt;\n // Return the PKCS#1 RSA encryption of \"text\" as an even-length hex string\n RSAKey.prototype.encrypt = function (text) {\n var maxLength = (this.n.bitLength() + 7) >> 3;\n var m = pkcs1pad2(text, maxLength);\n if (m == null) {\n return null;\n }\n var c = this.doPublic(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n var length = h.length;\n // fix zero before result\n for (var i = 0; i < maxLength * 2 - length; i++) {\n h = \"0\" + h;\n }\n return h;\n };\n // RSAKey.prototype.setPrivate = RSASetPrivate;\n // Set the private key fields N, e, and d from hex strings\n RSAKey.prototype.setPrivate = function (N, E, D) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.setPrivateEx = RSASetPrivateEx;\n // Set the private key fields N, e, d and CRT params from hex strings\n RSAKey.prototype.setPrivateEx = function (N, E, D, P, Q, DP, DQ, C) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n this.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(P, 16);\n this.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(Q, 16);\n this.dmp1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DP, 16);\n this.dmq1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DQ, 16);\n this.coeff = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(C, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.generate = RSAGenerate;\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generate = function (B, E) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n for (;;) {\n for (;;) {\n this.p = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(B - qs, 1, rng);\n if (this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.p.isProbablePrime(10)) {\n break;\n }\n }\n for (;;) {\n this.q = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(qs, 1, rng);\n if (this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.q.isProbablePrime(10)) {\n break;\n }\n }\n if (this.p.compareTo(this.q) <= 0) {\n var t = this.p;\n this.p = this.q;\n this.q = t;\n }\n var p1 = this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n this.n = this.p.multiply(this.q);\n this.d = ee.modInverse(phi);\n this.dmp1 = this.d.mod(p1);\n this.dmq1 = this.d.mod(q1);\n this.coeff = this.q.modInverse(this.p);\n break;\n }\n }\n };\n // RSAKey.prototype.decrypt = RSADecrypt;\n // Return the PKCS#1 RSA decryption of \"ctext\".\n // \"ctext\" is an even-length hex string and the output is a plain string.\n RSAKey.prototype.decrypt = function (ctext) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(ctext, 16);\n var m = this.doPrivate(c);\n if (m == null) {\n return null;\n }\n return pkcs1unpad2(m, (this.n.bitLength() + 7) >> 3);\n };\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generateAsync = function (B, E, callback) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n var rsa = this;\n // These functions have non-descript names because they were originally for(;;) loops.\n // I don't know about cryptography to give them better names than loop1-4.\n var loop1 = function () {\n var loop4 = function () {\n if (rsa.p.compareTo(rsa.q) <= 0) {\n var t = rsa.p;\n rsa.p = rsa.q;\n rsa.q = t;\n }\n var p1 = rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n rsa.n = rsa.p.multiply(rsa.q);\n rsa.d = ee.modInverse(phi);\n rsa.dmp1 = rsa.d.mod(p1);\n rsa.dmq1 = rsa.d.mod(q1);\n rsa.coeff = rsa.q.modInverse(rsa.p);\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(loop1, 0);\n }\n };\n var loop3 = function () {\n rsa.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.q.fromNumberAsync(qs, 1, rng, function () {\n rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.q.isProbablePrime(10)) {\n setTimeout(loop4, 0);\n }\n else {\n setTimeout(loop3, 0);\n }\n });\n });\n };\n var loop2 = function () {\n rsa.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.p.fromNumberAsync(B - qs, 1, rng, function () {\n rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.p.isProbablePrime(10)) {\n setTimeout(loop3, 0);\n }\n else {\n setTimeout(loop2, 0);\n }\n });\n });\n };\n setTimeout(loop2, 0);\n };\n setTimeout(loop1, 0);\n };\n RSAKey.prototype.sign = function (text, digestMethod, digestName) {\n var header = getDigestHeader(digestName);\n var digest = header + digestMethod(text).toString();\n var m = pkcs1pad1(digest, this.n.bitLength() / 4);\n if (m == null) {\n return null;\n }\n var c = this.doPrivate(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n if ((h.length & 1) == 0) {\n return h;\n }\n else {\n return \"0\" + h;\n }\n };\n RSAKey.prototype.verify = function (text, signature, digestMethod) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(signature, 16);\n var m = this.doPublic(c);\n if (m == null) {\n return null;\n }\n var unpadded = m.toString(16).replace(/^1f+00/, \"\");\n var digest = removeDigestHeader(unpadded);\n return digest == digestMethod(text).toString();\n };\n return RSAKey;\n}());\n\n// Undo PKCS#1 (type 2, random) padding and, if valid, return the plaintext\nfunction pkcs1unpad2(d, n) {\n var b = d.toByteArray();\n var i = 0;\n while (i < b.length && b[i] == 0) {\n ++i;\n }\n if (b.length - i != n - 1 || b[i] != 2) {\n return null;\n }\n ++i;\n while (b[i] != 0) {\n if (++i >= b.length) {\n return null;\n }\n }\n var ret = \"\";\n while (++i < b.length) {\n var c = b[i] & 255;\n if (c < 128) { // utf-8 decode\n ret += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n ret += String.fromCharCode(((c & 31) << 6) | (b[i + 1] & 63));\n ++i;\n }\n else {\n ret += String.fromCharCode(((c & 15) << 12) | ((b[i + 1] & 63) << 6) | (b[i + 2] & 63));\n i += 2;\n }\n }\n return ret;\n}\n// https://tools.ietf.org/html/rfc3447#page-43\nvar DIGEST_HEADERS = {\n md2: \"3020300c06082a864886f70d020205000410\",\n md5: \"3020300c06082a864886f70d020505000410\",\n sha1: \"3021300906052b0e03021a05000414\",\n sha224: \"302d300d06096086480165030402040500041c\",\n sha256: \"3031300d060960864801650304020105000420\",\n sha384: \"3041300d060960864801650304020205000430\",\n sha512: \"3051300d060960864801650304020305000440\",\n ripemd160: \"3021300906052b2403020105000414\"\n};\nfunction getDigestHeader(name) {\n return DIGEST_HEADERS[name] || \"\";\n}\nfunction removeDigestHeader(str) {\n for (var name_1 in DIGEST_HEADERS) {\n if (DIGEST_HEADERS.hasOwnProperty(name_1)) {\n var header = DIGEST_HEADERS[name_1];\n var len = header.length;\n if (str.substr(0, len) == header) {\n return str.substr(len);\n }\n }\n }\n return str;\n}\n// Return the PKCS#1 RSA encryption of \"text\" as a Base64-encoded string\n// function RSAEncryptB64(text) {\n// var h = this.encrypt(text);\n// if(h) return hex2b64(h); else return null;\n// }\n// public\n// RSAKey.prototype.encrypt_b64 = RSAEncryptB64;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rsa.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/jsbn/util.js":
+ /*!******************************!*\
+ !*** ./lib/lib/jsbn/util.js ***!
+ \******************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"cbit\": () => (/* binding */ cbit),\n/* harmony export */ \"int2char\": () => (/* binding */ int2char),\n/* harmony export */ \"lbit\": () => (/* binding */ lbit),\n/* harmony export */ \"op_and\": () => (/* binding */ op_and),\n/* harmony export */ \"op_andnot\": () => (/* binding */ op_andnot),\n/* harmony export */ \"op_or\": () => (/* binding */ op_or),\n/* harmony export */ \"op_xor\": () => (/* binding */ op_xor)\n/* harmony export */ });\nvar BI_RM = \"0123456789abcdefghijklmnopqrstuvwxyz\";\nfunction int2char(n) {\n return BI_RM.charAt(n);\n}\n//#region BIT_OPERATIONS\n// (public) this & a\nfunction op_and(x, y) {\n return x & y;\n}\n// (public) this | a\nfunction op_or(x, y) {\n return x | y;\n}\n// (public) this ^ a\nfunction op_xor(x, y) {\n return x ^ y;\n}\n// (public) this & ~a\nfunction op_andnot(x, y) {\n return x & ~y;\n}\n// return index of lowest 1-bit in x, x < 2^31\nfunction lbit(x) {\n if (x == 0) {\n return -1;\n }\n var r = 0;\n if ((x & 0xffff) == 0) {\n x >>= 16;\n r += 16;\n }\n if ((x & 0xff) == 0) {\n x >>= 8;\n r += 8;\n }\n if ((x & 0xf) == 0) {\n x >>= 4;\n r += 4;\n }\n if ((x & 3) == 0) {\n x >>= 2;\n r += 2;\n }\n if ((x & 1) == 0) {\n ++r;\n }\n return r;\n}\n// return number of 1 bits in x\nfunction cbit(x) {\n var r = 0;\n while (x != 0) {\n x &= x - 1;\n ++r;\n }\n return r;\n}\n//#endregion BIT_OPERATIONS\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/util.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/jsrsasign/asn1-1.0.js":
+ /*!***************************************!*\
+ !*** ./lib/lib/jsrsasign/asn1-1.0.js ***!
+ \***************************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"KJUR\": () => (/* binding */ KJUR)\n/* harmony export */ });\n/* harmony import */ var _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _yahoo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./yahoo */ \"./lib/lib/jsrsasign/yahoo.js\");\n/* asn1-1.0.13.js (c) 2013-2017 Kenji Urushima | kjur.github.com/jsrsasign/license\n */\n/*\n * asn1.js - ASN.1 DER encoder classes\n *\n * Copyright (c) 2013-2017 Kenji Urushima (kenji.urushima@gmail.com)\n *\n * This software is licensed under the terms of the MIT License.\n * https://kjur.github.io/jsrsasign/license\n *\n * The above copyright and license notice shall be\n * included in all copies or substantial portions of the Software.\n */\n\n\n/**\n * @fileOverview\n * @name asn1-1.0.js\n * @author Kenji Urushima kenji.urushima@gmail.com\n * @version asn1 1.0.13 (2017-Jun-02)\n * @since jsrsasign 2.1\n * @license MIT License\n */\n/**\n * kjur's class library name space\n * \n * This name space provides following name spaces:\n *
\n * - {@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder
\n * - {@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL
\n * - {@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature\n * class and utilities
\n *
\n *
\n * NOTE: Please ignore method summary and document of this namespace. This caused by a bug of jsdoc2.\n * @name KJUR\n * @namespace kjur's class library name space\n */\nvar KJUR = {};\n/**\n * kjur's ASN.1 class library name space\n * \n * This is ITU-T X.690 ASN.1 DER encoder class library and\n * class structure and methods is very similar to\n * org.bouncycastle.asn1 package of\n * well known BouncyCaslte Cryptography Library.\n *
PROVIDING ASN.1 PRIMITIVES
\n * Here are ASN.1 DER primitive classes.\n * \n * - 0x01 {@link KJUR.asn1.DERBoolean}
\n * - 0x02 {@link KJUR.asn1.DERInteger}
\n * - 0x03 {@link KJUR.asn1.DERBitString}
\n * - 0x04 {@link KJUR.asn1.DEROctetString}
\n * - 0x05 {@link KJUR.asn1.DERNull}
\n * - 0x06 {@link KJUR.asn1.DERObjectIdentifier}
\n * - 0x0a {@link KJUR.asn1.DEREnumerated}
\n * - 0x0c {@link KJUR.asn1.DERUTF8String}
\n * - 0x12 {@link KJUR.asn1.DERNumericString}
\n * - 0x13 {@link KJUR.asn1.DERPrintableString}
\n * - 0x14 {@link KJUR.asn1.DERTeletexString}
\n * - 0x16 {@link KJUR.asn1.DERIA5String}
\n * - 0x17 {@link KJUR.asn1.DERUTCTime}
\n * - 0x18 {@link KJUR.asn1.DERGeneralizedTime}
\n * - 0x30 {@link KJUR.asn1.DERSequence}
\n * - 0x31 {@link KJUR.asn1.DERSet}
\n *
\n * OTHER ASN.1 CLASSES
\n * \n * - {@link KJUR.asn1.ASN1Object}
\n * - {@link KJUR.asn1.DERAbstractString}
\n * - {@link KJUR.asn1.DERAbstractTime}
\n * - {@link KJUR.asn1.DERAbstractStructured}
\n * - {@link KJUR.asn1.DERTaggedObject}
\n *
\n * SUB NAME SPACES
\n * \n * - {@link KJUR.asn1.cades} - CAdES long term signature format
\n * - {@link KJUR.asn1.cms} - Cryptographic Message Syntax
\n * - {@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)
\n * - {@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format
\n * - {@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL
\n *
\n * \n * NOTE: Please ignore method summary and document of this namespace.\n * This caused by a bug of jsdoc2.\n * @name KJUR.asn1\n * @namespace\n */\nif (typeof KJUR.asn1 == \"undefined\" || !KJUR.asn1)\n KJUR.asn1 = {};\n/**\n * ASN1 utilities class\n * @name KJUR.asn1.ASN1Util\n * @class ASN1 utilities class\n * @since asn1 1.0.2\n */\nKJUR.asn1.ASN1Util = new function () {\n this.integerToByteHex = function (i) {\n var h = i.toString(16);\n if ((h.length % 2) == 1)\n h = '0' + h;\n return h;\n };\n this.bigIntToMinTwosComplementsHex = function (bigIntegerValue) {\n var h = bigIntegerValue.toString(16);\n if (h.substr(0, 1) != '-') {\n if (h.length % 2 == 1) {\n h = '0' + h;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n h = '00' + h;\n }\n }\n }\n else {\n var hPos = h.substr(1);\n var xorLen = hPos.length;\n if (xorLen % 2 == 1) {\n xorLen += 1;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n xorLen += 2;\n }\n }\n var hMask = '';\n for (var i = 0; i < xorLen; i++) {\n hMask += 'f';\n }\n var biMask = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(hMask, 16);\n var biNeg = biMask.xor(bigIntegerValue).add(_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n h = biNeg.toString(16).replace(/^-/, '');\n }\n return h;\n };\n /**\n * get PEM string from hexadecimal data and header string\n * @name getPEMStringFromHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} dataHex hexadecimal string of PEM body\n * @param {String} pemHeader PEM header string (ex. 'RSA PRIVATE KEY')\n * @return {String} PEM formatted string of input data\n * @description\n * This method converts a hexadecimal string to a PEM string with\n * a specified header. Its line break will be CRLF(\"\\r\\n\").\n * @example\n * var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex('616161', 'RSA PRIVATE KEY');\n * // value of pem will be:\n * -----BEGIN PRIVATE KEY-----\n * YWFh\n * -----END PRIVATE KEY-----\n */\n this.getPEMStringFromHex = function (dataHex, pemHeader) {\n return hextopem(dataHex, pemHeader);\n };\n /**\n * generate ASN1Object specifed by JSON parameters\n * @name newObject\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return {KJUR.asn1.ASN1Object} generated object\n * @since asn1 1.0.3\n * @description\n * generate any ASN1Object specified by JSON param\n * including ASN.1 primitive or structured.\n * Generally 'param' can be described as follows:\n * \n * {TYPE-OF-ASNOBJ: ASN1OBJ-PARAMETER}\n *
\n * 'TYPE-OF-ASN1OBJ' can be one of following symbols:\n * \n * - 'bool' - DERBoolean
\n * - 'int' - DERInteger
\n * - 'bitstr' - DERBitString
\n * - 'octstr' - DEROctetString
\n * - 'null' - DERNull
\n * - 'oid' - DERObjectIdentifier
\n * - 'enum' - DEREnumerated
\n * - 'utf8str' - DERUTF8String
\n * - 'numstr' - DERNumericString
\n * - 'prnstr' - DERPrintableString
\n * - 'telstr' - DERTeletexString
\n * - 'ia5str' - DERIA5String
\n * - 'utctime' - DERUTCTime
\n * - 'gentime' - DERGeneralizedTime
\n * - 'seq' - DERSequence
\n * - 'set' - DERSet
\n * - 'tag' - DERTaggedObject
\n *
\n * @example\n * newObject({'prnstr': 'aaa'});\n * newObject({'seq': [{'int': 3}, {'prnstr': 'aaa'}]})\n * // ASN.1 Tagged Object\n * newObject({'tag': {'tag': 'a1',\n * 'explicit': true,\n * 'obj': {'seq': [{'int': 3}, {'prnstr': 'aaa'}]}}});\n * // more simple representation of ASN.1 Tagged Object\n * newObject({'tag': ['a1',\n * true,\n * {'seq': [\n * {'int': 3},\n * {'prnstr': 'aaa'}]}\n * ]});\n */\n this.newObject = function (param) {\n var _KJUR = KJUR, _KJUR_asn1 = _KJUR.asn1, _DERBoolean = _KJUR_asn1.DERBoolean, _DERInteger = _KJUR_asn1.DERInteger, _DERBitString = _KJUR_asn1.DERBitString, _DEROctetString = _KJUR_asn1.DEROctetString, _DERNull = _KJUR_asn1.DERNull, _DERObjectIdentifier = _KJUR_asn1.DERObjectIdentifier, _DEREnumerated = _KJUR_asn1.DEREnumerated, _DERUTF8String = _KJUR_asn1.DERUTF8String, _DERNumericString = _KJUR_asn1.DERNumericString, _DERPrintableString = _KJUR_asn1.DERPrintableString, _DERTeletexString = _KJUR_asn1.DERTeletexString, _DERIA5String = _KJUR_asn1.DERIA5String, _DERUTCTime = _KJUR_asn1.DERUTCTime, _DERGeneralizedTime = _KJUR_asn1.DERGeneralizedTime, _DERSequence = _KJUR_asn1.DERSequence, _DERSet = _KJUR_asn1.DERSet, _DERTaggedObject = _KJUR_asn1.DERTaggedObject, _newObject = _KJUR_asn1.ASN1Util.newObject;\n var keys = Object.keys(param);\n if (keys.length != 1)\n throw \"key of param shall be only one.\";\n var key = keys[0];\n if (\":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:\".indexOf(\":\" + key + \":\") == -1)\n throw \"undefined key: \" + key;\n if (key == \"bool\")\n return new _DERBoolean(param[key]);\n if (key == \"int\")\n return new _DERInteger(param[key]);\n if (key == \"bitstr\")\n return new _DERBitString(param[key]);\n if (key == \"octstr\")\n return new _DEROctetString(param[key]);\n if (key == \"null\")\n return new _DERNull(param[key]);\n if (key == \"oid\")\n return new _DERObjectIdentifier(param[key]);\n if (key == \"enum\")\n return new _DEREnumerated(param[key]);\n if (key == \"utf8str\")\n return new _DERUTF8String(param[key]);\n if (key == \"numstr\")\n return new _DERNumericString(param[key]);\n if (key == \"prnstr\")\n return new _DERPrintableString(param[key]);\n if (key == \"telstr\")\n return new _DERTeletexString(param[key]);\n if (key == \"ia5str\")\n return new _DERIA5String(param[key]);\n if (key == \"utctime\")\n return new _DERUTCTime(param[key]);\n if (key == \"gentime\")\n return new _DERGeneralizedTime(param[key]);\n if (key == \"seq\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSequence({ 'array': a });\n }\n if (key == \"set\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSet({ 'array': a });\n }\n if (key == \"tag\") {\n var tagParam = param[key];\n if (Object.prototype.toString.call(tagParam) === '[object Array]' &&\n tagParam.length == 3) {\n var obj = _newObject(tagParam[2]);\n return new _DERTaggedObject({ tag: tagParam[0],\n explicit: tagParam[1],\n obj: obj });\n }\n else {\n var newParam = {};\n if (tagParam.explicit !== undefined)\n newParam.explicit = tagParam.explicit;\n if (tagParam.tag !== undefined)\n newParam.tag = tagParam.tag;\n if (tagParam.obj === undefined)\n throw \"obj shall be specified for 'tag'.\";\n newParam.obj = _newObject(tagParam.obj);\n return new _DERTaggedObject(newParam);\n }\n }\n };\n /**\n * get encoded hexadecimal string of ASN1Object specifed by JSON parameters\n * @name jsonToASN1HEX\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return hexadecimal string of ASN1Object\n * @since asn1 1.0.4\n * @description\n * As for ASN.1 object representation of JSON object,\n * please see {@link newObject}.\n * @example\n * jsonToASN1HEX({'prnstr': 'aaa'});\n */\n this.jsonToASN1HEX = function (param) {\n var asn1Obj = this.newObject(param);\n return asn1Obj.getEncodedHex();\n };\n};\n/**\n * get dot noted oid number string from hexadecimal value of OID\n * @name oidHexToInt\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} hex hexadecimal value of object identifier\n * @return {String} dot noted string of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from hexadecimal string representation of\n * ASN.1 value of object identifier to oid number string.\n * @example\n * KJUR.asn1.ASN1Util.oidHexToInt('550406') → \"2.5.4.6\"\n */\nKJUR.asn1.ASN1Util.oidHexToInt = function (hex) {\n var s = \"\";\n var i01 = parseInt(hex.substr(0, 2), 16);\n var i0 = Math.floor(i01 / 40);\n var i1 = i01 % 40;\n var s = i0 + \".\" + i1;\n var binbuf = \"\";\n for (var i = 2; i < hex.length; i += 2) {\n var value = parseInt(hex.substr(i, 2), 16);\n var bin = (\"00000000\" + value.toString(2)).slice(-8);\n binbuf = binbuf + bin.substr(1, 7);\n if (bin.substr(0, 1) == \"0\") {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(binbuf, 2);\n s = s + \".\" + bi.toString(10);\n binbuf = \"\";\n }\n }\n ;\n return s;\n};\n/**\n * get hexadecimal value of object identifier from dot noted oid value\n * @name oidIntToHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} oidString dot noted string of object identifier\n * @return {String} hexadecimal value of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from object identifier value string.\n * to hexadecimal string representation of it.\n * @example\n * KJUR.asn1.ASN1Util.oidIntToHex(\"2.5.4.6\") → \"550406\"\n */\nKJUR.asn1.ASN1Util.oidIntToHex = function (oidString) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n return h;\n};\n// ********************************************************************\n// Abstract ASN.1 Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * base class for ASN.1 DER encoder object\n * @name KJUR.asn1.ASN1Object\n * @class base class for ASN.1 DER encoder object\n * @property {Boolean} isModified flag whether internal data was changed\n * @property {String} hTLV hexadecimal string of ASN.1 TLV\n * @property {String} hT hexadecimal string of ASN.1 TLV tag(T)\n * @property {String} hL hexadecimal string of ASN.1 TLV length(L)\n * @property {String} hV hexadecimal string of ASN.1 TLV value(V)\n * @description\n */\nKJUR.asn1.ASN1Object = function () {\n var isModified = true;\n var hTLV = null;\n var hT = '00';\n var hL = '00';\n var hV = '';\n /**\n * get hexadecimal ASN.1 TLV length(L) bytes from TLV value(V)\n * @name getLengthHexFromValue\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV length(L)\n */\n this.getLengthHexFromValue = function () {\n if (typeof this.hV == \"undefined\" || this.hV == null) {\n throw \"this.hV is null or undefined.\";\n }\n if (this.hV.length % 2 == 1) {\n throw \"value hex must be even length: n=\" + hV.length + \",v=\" + this.hV;\n }\n var n = this.hV.length / 2;\n var hN = n.toString(16);\n if (hN.length % 2 == 1) {\n hN = \"0\" + hN;\n }\n if (n < 128) {\n return hN;\n }\n else {\n var hNlen = hN.length / 2;\n if (hNlen > 15) {\n throw \"ASN.1 length too long to represent by 8x: n = \" + n.toString(16);\n }\n var head = 128 + hNlen;\n return head.toString(16) + hN;\n }\n };\n /**\n * get hexadecimal string of ASN.1 TLV bytes\n * @name getEncodedHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV\n */\n this.getEncodedHex = function () {\n if (this.hTLV == null || this.isModified) {\n this.hV = this.getFreshValueHex();\n this.hL = this.getLengthHexFromValue();\n this.hTLV = this.hT + this.hL + this.hV;\n this.isModified = false;\n //alert(\"first time: \" + this.hTLV);\n }\n return this.hTLV;\n };\n /**\n * get hexadecimal string of ASN.1 TLV value(V) bytes\n * @name getValueHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV value(V) bytes\n */\n this.getValueHex = function () {\n this.getEncodedHex();\n return this.hV;\n };\n this.getFreshValueHex = function () {\n return '';\n };\n};\n// == BEGIN DERAbstractString ================================================\n/**\n * base class for ASN.1 DER string classes\n * @name KJUR.asn1.DERAbstractString\n * @class base class for ASN.1 DER string classes\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @property {String} s internal string of value\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n * \n * - str - specify initial ASN.1 value(V) by a string
\n * - hex - specify initial ASN.1 value(V) by a hexadecimal string
\n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERAbstractString = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var s = null;\n var hV = null;\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @return {String} string value of this string object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newS value by a string to set\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(this.s);\n };\n /**\n * set value by a hexadecimal string\n * @name setStringHex\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newHexString value by a hexadecimal string to set\n */\n this.setStringHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\") {\n this.setString(params);\n }\n else if (typeof params['str'] != \"undefined\") {\n this.setString(params['str']);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setStringHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractString, KJUR.asn1.ASN1Object);\n// == END DERAbstractString ================================================\n// == BEGIN DERAbstractTime ==================================================\n/**\n * base class for ASN.1 DER Generalized/UTCTime class\n * @name KJUR.asn1.DERAbstractTime\n * @class base class for ASN.1 DER Generalized/UTCTime class\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractTime = function (params) {\n KJUR.asn1.DERAbstractTime.superclass.constructor.call(this);\n var s = null;\n var date = null;\n // --- PRIVATE METHODS --------------------\n this.localDateToUTC = function (d) {\n utc = d.getTime() + (d.getTimezoneOffset() * 60000);\n var utcDate = new Date(utc);\n return utcDate;\n };\n /*\n * format date string by Data object\n * @name formatDate\n * @memberOf KJUR.asn1.AbstractTime;\n * @param {Date} dateObject\n * @param {string} type 'utc' or 'gen'\n * @param {boolean} withMillis flag for with millisections or not\n * @description\n * 'withMillis' flag is supported from asn1 1.0.6.\n */\n this.formatDate = function (dateObject, type, withMillis) {\n var pad = this.zeroPadding;\n var d = this.localDateToUTC(dateObject);\n var year = String(d.getFullYear());\n if (type == 'utc')\n year = year.substr(2, 2);\n var month = pad(String(d.getMonth() + 1), 2);\n var day = pad(String(d.getDate()), 2);\n var hour = pad(String(d.getHours()), 2);\n var min = pad(String(d.getMinutes()), 2);\n var sec = pad(String(d.getSeconds()), 2);\n var s = year + month + day + hour + min + sec;\n if (withMillis === true) {\n var millis = d.getMilliseconds();\n if (millis != 0) {\n var sMillis = pad(String(millis), 3);\n sMillis = sMillis.replace(/[0]+$/, \"\");\n s = s + \".\" + sMillis;\n }\n }\n return s + \"Z\";\n };\n this.zeroPadding = function (s, len) {\n if (s.length >= len)\n return s;\n return new Array(len - s.length + 1).join('0') + s;\n };\n // --- PUBLIC METHODS --------------------\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @return {String} string value of this time object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {String} newS value by a string to set such like \"130430235959Z\"\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(newS);\n };\n /**\n * set value by a Date object\n * @name setByDateValue\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {Integer} year year of date (ex. 2013)\n * @param {Integer} month month of date between 1 and 12 (ex. 12)\n * @param {Integer} day day of month\n * @param {Integer} hour hours of date\n * @param {Integer} min minutes of date\n * @param {Integer} sec seconds of date\n */\n this.setByDateValue = function (year, month, day, hour, min, sec) {\n var dateObject = new Date(Date.UTC(year, month - 1, day, hour, min, sec, 0));\n this.setByDate(dateObject);\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractTime, KJUR.asn1.ASN1Object);\n// == END DERAbstractTime ==================================================\n// == BEGIN DERAbstractStructured ============================================\n/**\n * base class for ASN.1 DER structured class\n * @name KJUR.asn1.DERAbstractStructured\n * @class base class for ASN.1 DER structured class\n * @property {Array} asn1Array internal array of ASN1Object\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractStructured = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var asn1Array = null;\n /**\n * set value by array of ASN1Object\n * @name setByASN1ObjectArray\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {array} asn1ObjectArray array of ASN1Object to set\n */\n this.setByASN1ObjectArray = function (asn1ObjectArray) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array = asn1ObjectArray;\n };\n /**\n * append an ASN1Object to internal array\n * @name appendASN1Object\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {ASN1Object} asn1Object to add\n */\n this.appendASN1Object = function (asn1Object) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array.push(asn1Object);\n };\n this.asn1Array = new Array();\n if (typeof params != \"undefined\") {\n if (typeof params['array'] != \"undefined\") {\n this.asn1Array = params['array'];\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractStructured, KJUR.asn1.ASN1Object);\n// ********************************************************************\n// ASN.1 Object Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * class for ASN.1 DER Boolean\n * @name KJUR.asn1.DERBoolean\n * @class class for ASN.1 DER Boolean\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERBoolean = function () {\n KJUR.asn1.DERBoolean.superclass.constructor.call(this);\n this.hT = \"01\";\n this.hTLV = \"0101ff\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBoolean, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Integer\n * @name KJUR.asn1.DERInteger\n * @class class for ASN.1 DER Integer\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n * \n * - int - specify initial ASN.1 value(V) by integer value
\n * - bigint - specify initial ASN.1 value(V) by BigInteger object
\n * - hex - specify initial ASN.1 value(V) by a hexadecimal string
\n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERInteger = function (params) {\n KJUR.asn1.DERInteger.superclass.constructor.call(this);\n this.hT = \"02\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DERInteger\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n * @example\n * new KJUR.asn1.DERInteger(123);\n * new KJUR.asn1.DERInteger({'int': 123});\n * new KJUR.asn1.DERInteger({'hex': '1fad'});\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['bigint'] != \"undefined\") {\n this.setByBigInteger(params['bigint']);\n }\n else if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERInteger, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER encoded BitString primitive\n * @name KJUR.asn1.DERBitString\n * @class class for ASN.1 DER encoded BitString primitive\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n * \n * - bin - specify binary string (ex. '10111')
\n * - array - specify array of boolean (ex. [true,false,true,true])
\n * - hex - specify hexadecimal string of ASN.1 value(V) including unused bits
\n * - obj - specify {@link KJUR.asn1.ASN1Util.newObject}\n * argument for \"BitString encapsulates\" structure.
\n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: 'obj' parameter have been supported since\n * asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).
\n * @example\n * // default constructor\n * o = new KJUR.asn1.DERBitString();\n * // initialize with binary string\n * o = new KJUR.asn1.DERBitString({bin: \"1011\"});\n * // initialize with boolean array\n * o = new KJUR.asn1.DERBitString({array: [true,false,true,true]});\n * // initialize with hexadecimal string (04 is unused bits)\n * o = new KJUR.asn1.DEROctetString({hex: \"04bac0\"});\n * // initialize with ASN1Util.newObject argument for encapsulated\n * o = new KJUR.asn1.DERBitString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // BIT STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DERBitString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = \"00\" + o.getEncodedHex();\n }\n KJUR.asn1.DERBitString.superclass.constructor.call(this);\n this.hT = \"03\";\n /**\n * set ASN.1 value(V) by a hexadecimal string including unused bits\n * @name setHexValueIncludingUnusedBits\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} newHexStringIncludingUnusedBits\n */\n this.setHexValueIncludingUnusedBits = function (newHexStringIncludingUnusedBits) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = newHexStringIncludingUnusedBits;\n };\n /**\n * set ASN.1 value(V) by unused bit and hexadecimal string of value\n * @name setUnusedBitsAndHexValue\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {Integer} unusedBits\n * @param {String} hValue\n */\n this.setUnusedBitsAndHexValue = function (unusedBits, hValue) {\n if (unusedBits < 0 || 7 < unusedBits) {\n throw \"unused bits shall be from 0 to 7: u = \" + unusedBits;\n }\n var hUnusedBits = \"0\" + unusedBits;\n this.hTLV = null;\n this.isModified = true;\n this.hV = hUnusedBits + hValue;\n };\n /**\n * set ASN.1 DER BitString by binary string
\n * @name setByBinaryString\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} binaryString binary value string (i.e. '10111')\n * @description\n * Its unused bits will be calculated automatically by length of\n * 'binaryValue'.
\n * NOTE: Trailing zeros '0' will be ignored.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray(\"01011\");\n */\n this.setByBinaryString = function (binaryString) {\n binaryString = binaryString.replace(/0+$/, '');\n var unusedBits = 8 - binaryString.length % 8;\n if (unusedBits == 8)\n unusedBits = 0;\n for (var i = 0; i <= unusedBits; i++) {\n binaryString += '0';\n }\n var h = '';\n for (var i = 0; i < binaryString.length - 1; i += 8) {\n var b = binaryString.substr(i, 8);\n var x = parseInt(b, 2).toString(16);\n if (x.length == 1)\n x = '0' + x;\n h += x;\n }\n this.hTLV = null;\n this.isModified = true;\n this.hV = '0' + unusedBits + h;\n };\n /**\n * set ASN.1 TLV value(V) by an array of boolean
\n * @name setByBooleanArray\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {array} booleanArray array of boolean (ex. [true, false, true])\n * @description\n * NOTE: Trailing falses will be ignored in the ASN.1 DER Object.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray([false, true, false, true, true]);\n */\n this.setByBooleanArray = function (booleanArray) {\n var s = '';\n for (var i = 0; i < booleanArray.length; i++) {\n if (booleanArray[i] == true) {\n s += '1';\n }\n else {\n s += '0';\n }\n }\n this.setByBinaryString(s);\n };\n /**\n * generate an array of falses with specified length
\n * @name newFalseArray\n * @memberOf KJUR.asn1.DERBitString\n * @function\n * @param {Integer} nLength length of array to generate\n * @return {array} array of boolean falses\n * @description\n * This static method may be useful to initialize boolean array.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.newFalseArray(3) → [false, false, false]\n */\n this.newFalseArray = function (nLength) {\n var a = new Array(nLength);\n for (var i = 0; i < nLength; i++) {\n a[i] = false;\n }\n return a;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\" && params.toLowerCase().match(/^[0-9a-f]+$/)) {\n this.setHexValueIncludingUnusedBits(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setHexValueIncludingUnusedBits(params['hex']);\n }\n else if (typeof params['bin'] != \"undefined\") {\n this.setByBinaryString(params['bin']);\n }\n else if (typeof params['array'] != \"undefined\") {\n this.setByBooleanArray(params['array']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBitString, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER OctetString
\n * @name KJUR.asn1.DEROctetString\n * @class class for ASN.1 DER OctetString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * This class provides ASN.1 OctetString simple type.
\n * Supported \"params\" attributes are:\n * \n * - str - to set a string as a value
\n * - hex - to set a hexadecimal string as a value
\n * - obj - to set a encapsulated ASN.1 value by JSON object\n * which is defined in {@link KJUR.asn1.ASN1Util.newObject}
\n *
\n * NOTE: A parameter 'obj' have been supported\n * for \"OCTET STRING, encapsulates\" structure.\n * since asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).\n * @see KJUR.asn1.DERAbstractString - superclass\n * @example\n * // default constructor\n * o = new KJUR.asn1.DEROctetString();\n * // initialize with string\n * o = new KJUR.asn1.DEROctetString({str: \"aaa\"});\n * // initialize with hexadecimal string\n * o = new KJUR.asn1.DEROctetString({hex: \"616161\"});\n * // initialize with ASN1Util.newObject argument\n * o = new KJUR.asn1.DEROctetString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // OCTET STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DEROctetString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = o.getEncodedHex();\n }\n KJUR.asn1.DEROctetString.superclass.constructor.call(this, params);\n this.hT = \"04\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEROctetString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER Null\n * @name KJUR.asn1.DERNull\n * @class class for ASN.1 DER Null\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERNull = function () {\n KJUR.asn1.DERNull.superclass.constructor.call(this);\n this.hT = \"05\";\n this.hTLV = \"0500\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNull, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER ObjectIdentifier\n * @name KJUR.asn1.DERObjectIdentifier\n * @class class for ASN.1 DER ObjectIdentifier\n * @param {Array} params associative array of parameters (ex. {'oid': '2.5.4.5'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n * \n * - oid - specify initial ASN.1 value(V) by a oid string (ex. 2.5.4.13)
\n * - hex - specify initial ASN.1 value(V) by a hexadecimal string
\n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERObjectIdentifier = function (params) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n KJUR.asn1.DERObjectIdentifier.superclass.constructor.call(this);\n this.hT = \"06\";\n /**\n * set value by a hexadecimal string\n * @name setValueHex\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} newHexString hexadecimal value of OID bytes\n */\n this.setValueHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n /**\n * set value by a OID string
\n * @name setValueOidString\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidString OID string (ex. 2.5.4.13)\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueOidString(\"2.5.4.13\");\n */\n this.setValueOidString = function (oidString) {\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = h;\n };\n /**\n * set value by a OID name\n * @name setValueName\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidName OID name (ex. 'serverAuth')\n * @since 1.0.1\n * @description\n * OID name shall be defined in 'KJUR.asn1.x509.OID.name2oidList'.\n * Otherwise raise error.\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueName(\"serverAuth\");\n */\n this.setValueName = function (oidName) {\n var oid = KJUR.asn1.x509.OID.name2oid(oidName);\n if (oid !== '') {\n this.setValueOidString(oid);\n }\n else {\n throw \"DERObjectIdentifier oidName undefined: \" + oidName;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (params !== undefined) {\n if (typeof params === \"string\") {\n if (params.match(/^[0-2].[0-9.]+$/)) {\n this.setValueOidString(params);\n }\n else {\n this.setValueName(params);\n }\n }\n else if (params.oid !== undefined) {\n this.setValueOidString(params.oid);\n }\n else if (params.hex !== undefined) {\n this.setValueHex(params.hex);\n }\n else if (params.name !== undefined) {\n this.setValueName(params.name);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERObjectIdentifier, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Enumerated\n * @name KJUR.asn1.DEREnumerated\n * @class class for ASN.1 DER Enumerated\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n * \n * - int - specify initial ASN.1 value(V) by integer value
\n * - hex - specify initial ASN.1 value(V) by a hexadecimal string
\n *
\n * NOTE: 'params' can be omitted.\n * @example\n * new KJUR.asn1.DEREnumerated(123);\n * new KJUR.asn1.DEREnumerated({int: 123});\n * new KJUR.asn1.DEREnumerated({hex: '1fad'});\n */\nKJUR.asn1.DEREnumerated = function (params) {\n KJUR.asn1.DEREnumerated.superclass.constructor.call(this);\n this.hT = \"0a\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEREnumerated, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTF8String\n * @name KJUR.asn1.DERUTF8String\n * @class class for ASN.1 DER UTF8String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERUTF8String = function (params) {\n KJUR.asn1.DERUTF8String.superclass.constructor.call(this, params);\n this.hT = \"0c\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTF8String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER NumericString\n * @name KJUR.asn1.DERNumericString\n * @class class for ASN.1 DER NumericString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERNumericString = function (params) {\n KJUR.asn1.DERNumericString.superclass.constructor.call(this, params);\n this.hT = \"12\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNumericString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER PrintableString\n * @name KJUR.asn1.DERPrintableString\n * @class class for ASN.1 DER PrintableString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERPrintableString = function (params) {\n KJUR.asn1.DERPrintableString.superclass.constructor.call(this, params);\n this.hT = \"13\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERPrintableString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER TeletexString\n * @name KJUR.asn1.DERTeletexString\n * @class class for ASN.1 DER TeletexString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERTeletexString = function (params) {\n KJUR.asn1.DERTeletexString.superclass.constructor.call(this, params);\n this.hT = \"14\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTeletexString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER IA5String\n * @name KJUR.asn1.DERIA5String\n * @class class for ASN.1 DER IA5String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERIA5String = function (params) {\n KJUR.asn1.DERIA5String.superclass.constructor.call(this, params);\n this.hT = \"16\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERIA5String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTCTime\n * @name KJUR.asn1.DERUTCTime\n * @class class for ASN.1 DER UTCTime\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n * \n * - str - specify initial ASN.1 value(V) by a string (ex.'130430235959Z')
\n * - hex - specify initial ASN.1 value(V) by a hexadecimal string
\n * - date - specify Date object.
\n *
\n * NOTE: 'params' can be omitted.\n * EXAMPLES
\n * @example\n * d1 = new KJUR.asn1.DERUTCTime();\n * d1.setString('130430125959Z');\n *\n * d2 = new KJUR.asn1.DERUTCTime({'str': '130430125959Z'});\n * d3 = new KJUR.asn1.DERUTCTime({'date': new Date(Date.UTC(2015, 0, 31, 0, 0, 0, 0))});\n * d4 = new KJUR.asn1.DERUTCTime('130430125959Z');\n */\nKJUR.asn1.DERUTCTime = function (params) {\n KJUR.asn1.DERUTCTime.superclass.constructor.call(this, params);\n this.hT = \"17\";\n /**\n * set value by a Date object
\n * @name setByDate\n * @memberOf KJUR.asn1.DERUTCTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * o = new KJUR.asn1.DERUTCTime();\n * o.setByDate(new Date(\"2016/12/31\"));\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (typeof this.date == \"undefined\" && typeof this.s == \"undefined\") {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{12}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTCTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER GeneralizedTime\n * @name KJUR.asn1.DERGeneralizedTime\n * @class class for ASN.1 DER GeneralizedTime\n * @param {Array} params associative array of parameters (ex. {'str': '20130430235959Z'})\n * @property {Boolean} withMillis flag to show milliseconds or not\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n * \n * - str - specify initial ASN.1 value(V) by a string (ex.'20130430235959Z')
\n * - hex - specify initial ASN.1 value(V) by a hexadecimal string
\n * - date - specify Date object.
\n * - millis - specify flag to show milliseconds (from 1.0.6)
\n *
\n * NOTE1: 'params' can be omitted.\n * NOTE2: 'withMillis' property is supported from asn1 1.0.6.\n */\nKJUR.asn1.DERGeneralizedTime = function (params) {\n KJUR.asn1.DERGeneralizedTime.superclass.constructor.call(this, params);\n this.hT = \"18\";\n this.withMillis = false;\n /**\n * set value by a Date object\n * @name setByDate\n * @memberOf KJUR.asn1.DERGeneralizedTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * When you specify UTC time, use 'Date.UTC' method like this:
\n * o1 = new DERUTCTime();\n * o1.setByDate(date);\n *\n * date = new Date(Date.UTC(2015, 0, 31, 23, 59, 59, 0)); #2015JAN31 23:59:59\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (this.date === undefined && this.s === undefined) {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{14}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n if (params.millis === true) {\n this.withMillis = true;\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERGeneralizedTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER Sequence\n * @name KJUR.asn1.DERSequence\n * @class class for ASN.1 DER Sequence\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n * \n * - array - specify array of ASN1Object to set elements of content
\n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERSequence = function (params) {\n KJUR.asn1.DERSequence.superclass.constructor.call(this, params);\n this.hT = \"30\";\n this.getFreshValueHex = function () {\n var h = '';\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n h += asn1Obj.getEncodedHex();\n }\n this.hV = h;\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSequence, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER Set\n * @name KJUR.asn1.DERSet\n * @class class for ASN.1 DER Set\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n * \n * - array - specify array of ASN1Object to set elements of content
\n * - sortflag - flag for sort (default: true). ASN.1 BER is not sorted in 'SET OF'.
\n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: sortflag is supported since 1.0.5.\n */\nKJUR.asn1.DERSet = function (params) {\n KJUR.asn1.DERSet.superclass.constructor.call(this, params);\n this.hT = \"31\";\n this.sortFlag = true; // item shall be sorted only in ASN.1 DER\n this.getFreshValueHex = function () {\n var a = new Array();\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n a.push(asn1Obj.getEncodedHex());\n }\n if (this.sortFlag == true)\n a.sort();\n this.hV = a.join('');\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params.sortflag != \"undefined\" &&\n params.sortflag == false)\n this.sortFlag = false;\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSet, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER TaggedObject\n * @name KJUR.asn1.DERTaggedObject\n * @class class for ASN.1 DER TaggedObject\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * Parameter 'tagNoNex' is ASN.1 tag(T) value for this object.\n * For example, if you find '[1]' tag in a ASN.1 dump,\n * 'tagNoHex' will be 'a1'.\n *
\n * As for optional argument 'params' for constructor, you can specify *ANY* of\n * following properties:\n * \n * - explicit - specify true if this is explicit tag otherwise false\n * (default is 'true').
\n * - tag - specify tag (default is 'a0' which means [0])
\n * - obj - specify ASN1Object which is tagged
\n *
\n * @example\n * d1 = new KJUR.asn1.DERUTF8String({'str':'a'});\n * d2 = new KJUR.asn1.DERTaggedObject({'obj': d1});\n * hex = d2.getEncodedHex();\n */\nKJUR.asn1.DERTaggedObject = function (params) {\n KJUR.asn1.DERTaggedObject.superclass.constructor.call(this);\n this.hT = \"a0\";\n this.hV = '';\n this.isExplicit = true;\n this.asn1Object = null;\n /**\n * set value by an ASN1Object\n * @name setString\n * @memberOf KJUR.asn1.DERTaggedObject#\n * @function\n * @param {Boolean} isExplicitFlag flag for explicit/implicit tag\n * @param {Integer} tagNoHex hexadecimal string of ASN.1 tag\n * @param {ASN1Object} asn1Object ASN.1 to encapsulate\n */\n this.setASN1Object = function (isExplicitFlag, tagNoHex, asn1Object) {\n this.hT = tagNoHex;\n this.isExplicit = isExplicitFlag;\n this.asn1Object = asn1Object;\n if (this.isExplicit) {\n this.hV = this.asn1Object.getEncodedHex();\n this.hTLV = null;\n this.isModified = true;\n }\n else {\n this.hV = null;\n this.hTLV = asn1Object.getEncodedHex();\n this.hTLV = this.hTLV.replace(/^../, tagNoHex);\n this.isModified = false;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['tag'] != \"undefined\") {\n this.hT = params['tag'];\n }\n if (typeof params['explicit'] != \"undefined\") {\n this.isExplicit = params['explicit'];\n }\n if (typeof params['obj'] != \"undefined\") {\n this.asn1Object = params['obj'];\n this.setASN1Object(this.isExplicit, this.hT, this.asn1Object);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTaggedObject, KJUR.asn1.ASN1Object);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/asn1-1.0.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./lib/lib/jsrsasign/yahoo.js":
+ /*!************************************!*\
+ !*** ./lib/lib/jsrsasign/yahoo.js ***!
+ \************************************/
+ /***/
+ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
+
+ "use strict";
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"YAHOO\": () => (/* binding */ YAHOO)\n/* harmony export */ });\n/*!\nCopyright (c) 2011, Yahoo! Inc. All rights reserved.\nCode licensed under the BSD License:\nhttp://developer.yahoo.com/yui/license.html\nversion: 2.9.0\n*/\nvar YAHOO = {};\nYAHOO.lang = {\n /**\n * Utility to set up the prototype, constructor and superclass properties to\n * support an inheritance strategy that can chain constructors and methods.\n * Static members will not be inherited.\n *\n * @method extend\n * @static\n * @param {Function} subc the object to modify\n * @param {Function} superc the object to inherit\n * @param {Object} overrides additional properties/methods to add to the\n * subclass prototype. These will override the\n * matching items obtained from the superclass\n * if present.\n */\n extend: function (subc, superc, overrides) {\n if (!superc || !subc) {\n throw new Error(\"YAHOO.lang.extend failed, please check that \" +\n \"all dependencies are included.\");\n }\n var F = function () { };\n F.prototype = superc.prototype;\n subc.prototype = new F();\n subc.prototype.constructor = subc;\n subc.superclass = superc.prototype;\n if (superc.prototype.constructor == Object.prototype.constructor) {\n superc.prototype.constructor = superc;\n }\n if (overrides) {\n var i;\n for (i in overrides) {\n subc.prototype[i] = overrides[i];\n }\n /*\n * IE will not enumerate native functions in a derived object even if the\n * function was overridden. This is a workaround for specific functions\n * we care about on the Object prototype.\n * @property _IEEnumFix\n * @param {Function} r the object to receive the augmentation\n * @param {Function} s the object that supplies the properties to augment\n * @static\n * @private\n */\n var _IEEnumFix = function () { }, ADD = [\"toString\", \"valueOf\"];\n try {\n if (/MSIE/.test(navigator.userAgent)) {\n _IEEnumFix = function (r, s) {\n for (i = 0; i < ADD.length; i = i + 1) {\n var fname = ADD[i], f = s[fname];\n if (typeof f === 'function' && f != Object.prototype[fname]) {\n r[fname] = f;\n }\n }\n };\n }\n }\n catch (ex) { }\n ;\n _IEEnumFix(subc.prototype, overrides);\n }\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/yahoo.js?");
+
+ /***/
+ }),
+
+ /***/
+ "./node_modules/process/browser.js":
+ /*!*****************************************!*\
+ !*** ./node_modules/process/browser.js ***!
+ \*****************************************/
+ /***/
+ ((module) => {
+
+ eval("// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n//# sourceURL=webpack://JSEncrypt/./node_modules/process/browser.js?");
+
+ /***/
+ })
+
+ /******/
+ });
+ /************************************************************************/
+ /******/
+ // The module cache
+ /******/
+ var __webpack_module_cache__ = {};
+ /******/
+ /******/
+ // The require function
+ /******/
+ function __webpack_require__(moduleId) {
+ /******/
+ // Check if module is in cache
+ /******/
+ var cachedModule = __webpack_module_cache__[moduleId];
+ /******/
+ if (cachedModule !== undefined) {
+ /******/
+ return cachedModule.exports;
+ /******/
+ }
+ /******/
+ // Create a new module (and put it into the cache)
+ /******/
+ var module = __webpack_module_cache__[moduleId] = {
+ /******/
+ // no module.id needed
+ /******/
+ // no module.loaded needed
+ /******/
+ exports: {}
+ /******/
+ };
+ /******/
+ /******/
+ // Execute the module function
+ /******/
+ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
+ /******/
+ /******/
+ // Return the exports of the module
+ /******/
+ return module.exports;
+ /******/
+ }
+ /******/
+ /************************************************************************/
+ /******/
+ /* webpack/runtime/define property getters */
+ /******/
+ (() => {
+ /******/
+ // define getter functions for harmony exports
+ /******/
+ __webpack_require__.d = (exports, definition) => {
+ /******/
+ for (var key in definition) {
+ /******/
+ if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
+ /******/
+ Object.defineProperty(exports, key, {
+ enumerable: true,
+ get: definition[key]
+ });
+ /******/
+ }
+ /******/
+ }
+ /******/
+ };
+ /******/
+ })();
+ /******/
+ /******/
+ /* webpack/runtime/hasOwnProperty shorthand */
+ /******/
+ (() => {
+ /******/
+ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
+ /******/
+ })();
+ /******/
+ /******/
+ /* webpack/runtime/make namespace object */
+ /******/
+ (() => {
+ /******/
+ // define __esModule on exports
+ /******/
+ __webpack_require__.r = (exports) => {
+ /******/
+ if (typeof Symbol !== 'undefined' && Symbol.toStringTag) {
+ /******/
+ Object.defineProperty(exports, Symbol.toStringTag, {
+ value: 'Module'
+ });
+ /******/
+ }
+ /******/
+ Object.defineProperty(exports, '__esModule', {
+ value: true
+ });
+ /******/
+ };
+ /******/
+ })();
+ /******/
+ /************************************************************************/
+ /******/
+ /******/
+ // startup
+ /******/
+ // Load entry module and return exports
+ /******/
+ // This entry module can't be inlined because the eval devtool is used.
+ /******/
+ var __webpack_exports__ = __webpack_require__("./lib/index.js");
+ /******/
+ __webpack_exports__ = __webpack_exports__["default"];
+ /******/
+ /******/
+ return __webpack_exports__;
+ /******/
+ })();
+});
\ No newline at end of file
diff --git a/JS/node-rsa.js b/JS/node-rsa.js
new file mode 100644
index 0000000..1781aa3
--- /dev/null
+++ b/JS/node-rsa.js
@@ -0,0 +1,5853 @@
+/*! For license information please see node-rsa.bundle.js.LICENSE.txt */ ! function(t, e) {
+ "object" == typeof exports && "object" == typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define([], e) : "object" == typeof exports ? exports.NODERSA = e() : t.NODERSA = e()
+}(globalThis, (() => (() => {
+ var t = {
+ 6395: t => {
+ t.exports = {
+ newInvalidAsn1Error: function(t) {
+ var e = new Error;
+ return e.name = "InvalidAsn1Error", e.message = t || "", e
+ }
+ }
+ },
+ 5670: (t, e, r) => {
+ var n = r(6395),
+ i = r(6299),
+ o = r(3319),
+ s = r(1431);
+ for (var a in t.exports = {
+ Reader: o,
+ Writer: s
+ }, i) i.hasOwnProperty(a) && (t.exports[a] = i[a]);
+ for (var f in n) n.hasOwnProperty(f) && (t.exports[f] = n[f])
+ },
+ 3319: (t, e, r) => {
+ var n = r(4529),
+ i = r(4774)
+ .Buffer,
+ o = r(6299),
+ s = r(6395)
+ .newInvalidAsn1Error;
+
+ function a(t) {
+ if (!t || !i.isBuffer(t)) throw new TypeError("data must be a node Buffer");
+ this._buf = t, this._size = t.length, this._len = 0, this._offset = 0
+ }
+ Object.defineProperty(a.prototype, "length", {
+ enumerable: !0,
+ get: function() {
+ return this._len
+ }
+ }), Object.defineProperty(a.prototype, "offset", {
+ enumerable: !0,
+ get: function() {
+ return this._offset
+ }
+ }), Object.defineProperty(a.prototype, "remain", {
+ get: function() {
+ return this._size - this._offset
+ }
+ }), Object.defineProperty(a.prototype, "buffer", {
+ get: function() {
+ return this._buf.slice(this._offset)
+ }
+ }), a.prototype.readByte = function(t) {
+ if (this._size - this._offset < 1) return null;
+ var e = 255 & this._buf[this._offset];
+ return t || (this._offset += 1), e
+ }, a.prototype.peek = function() {
+ return this.readByte(!0)
+ }, a.prototype.readLength = function(t) {
+ if (void 0 === t && (t = this._offset), t >= this._size) return null;
+ var e = 255 & this._buf[t++];
+ if (null === e) return null;
+ if (128 & ~e) this._len = e;
+ else {
+ if (0 == (e &= 127)) throw s("Indefinite length not supported");
+ if (e > 4) throw s("encoding too long");
+ if (this._size - t < e) return null;
+ this._len = 0;
+ for (var r = 0; r < e; r++) this._len = (this._len << 8) + (255 & this._buf[t++])
+ }
+ return t
+ }, a.prototype.readSequence = function(t) {
+ var e = this.peek();
+ if (null === e) return null;
+ if (void 0 !== t && t !== e) throw s("Expected 0x" + t.toString(16) + ": got 0x" + e.toString(16));
+ var r = this.readLength(this._offset + 1);
+ return null === r ? null : (this._offset = r, e)
+ }, a.prototype.readInt = function() {
+ return this._readTag(o.Integer)
+ }, a.prototype.readBoolean = function() {
+ return 0 !== this._readTag(o.Boolean)
+ }, a.prototype.readEnumeration = function() {
+ return this._readTag(o.Enumeration)
+ }, a.prototype.readString = function(t, e) {
+ t || (t = o.OctetString);
+ var r = this.peek();
+ if (null === r) return null;
+ if (r !== t) throw s("Expected 0x" + t.toString(16) + ": got 0x" + r.toString(16));
+ var n = this.readLength(this._offset + 1);
+ if (null === n) return null;
+ if (this.length > this._size - n) return null;
+ if (this._offset = n, 0 === this.length) return e ? i.alloc(0) : "";
+ var a = this._buf.slice(this._offset, this._offset + this.length);
+ return this._offset += this.length, e ? a : a.toString("utf8")
+ }, a.prototype.readOID = function(t) {
+ t || (t = o.OID);
+ var e = this.readString(t, !0);
+ if (null === e) return null;
+ for (var r = [], n = 0, i = 0; i < e.length; i++) {
+ var s = 255 & e[i];
+ n <<= 7, n += 127 & s, 128 & s || (r.push(n), n = 0)
+ }
+ return n = r.shift(), r.unshift(n % 40), r.unshift(n / 40 | 0), r.join(".")
+ }, a.prototype._readTag = function(t) {
+ n.ok(void 0 !== t);
+ var e = this.peek();
+ if (null === e) return null;
+ if (e !== t) throw s("Expected 0x" + t.toString(16) + ": got 0x" + e.toString(16));
+ var r = this.readLength(this._offset + 1);
+ if (null === r) return null;
+ if (this.length > 4) throw s("Integer too long: " + this.length);
+ if (this.length > this._size - r) return null;
+ this._offset = r;
+ for (var i = this._buf[this._offset], o = 0, a = 0; a < this.length; a++) o <<= 8, o |= 255 & this._buf[this._offset++];
+ return 128 & ~i || 4 === a || (o -= 1 << 8 * a), 0 | o
+ }, t.exports = a
+ },
+ 6299: t => {
+ t.exports = {
+ EOC: 0,
+ Boolean: 1,
+ Integer: 2,
+ BitString: 3,
+ OctetString: 4,
+ Null: 5,
+ OID: 6,
+ ObjectDescriptor: 7,
+ External: 8,
+ Real: 9,
+ Enumeration: 10,
+ PDV: 11,
+ Utf8String: 12,
+ RelativeOID: 13,
+ Sequence: 16,
+ Set: 17,
+ NumericString: 18,
+ PrintableString: 19,
+ T61String: 20,
+ VideotexString: 21,
+ IA5String: 22,
+ UTCTime: 23,
+ GeneralizedTime: 24,
+ GraphicString: 25,
+ VisibleString: 26,
+ GeneralString: 28,
+ UniversalString: 29,
+ CharacterString: 30,
+ BMPString: 31,
+ Constructor: 32,
+ Context: 128
+ }
+ },
+ 1431: (t, e, r) => {
+ var n = r(4529),
+ i = r(4774)
+ .Buffer,
+ o = r(6299),
+ s = r(6395)
+ .newInvalidAsn1Error,
+ a = {
+ size: 1024,
+ growthFactor: 8
+ };
+
+ function f(t) {
+ var e, r;
+ e = a, r = t || {}, n.ok(e), n.equal(typeof e, "object"), n.ok(r), n.equal(typeof r, "object"), Object.getOwnPropertyNames(e)
+ .forEach((function(t) {
+ if (!r[t]) {
+ var n = Object.getOwnPropertyDescriptor(e, t);
+ Object.defineProperty(r, t, n)
+ }
+ })), t = r, this._buf = i.alloc(t.size || 1024), this._size = this._buf.length, this._offset = 0, this._options = t, this._seq = []
+ }
+ Object.defineProperty(f.prototype, "buffer", {
+ get: function() {
+ if (this._seq.length) throw s(this._seq.length + " unended sequence(s)");
+ return this._buf.slice(0, this._offset)
+ }
+ }), f.prototype.writeByte = function(t) {
+ if ("number" != typeof t) throw new TypeError("argument must be a Number");
+ this._ensure(1), this._buf[this._offset++] = t
+ }, f.prototype.writeInt = function(t, e) {
+ if ("number" != typeof t) throw new TypeError("argument must be a Number");
+ "number" != typeof e && (e = o.Integer);
+ for (var r = 4;
+ (!(4286578688 & t) || -8388608 == (4286578688 & t)) && r > 1;) r--, t <<= 8;
+ if (r > 4) throw s("BER ints cannot be > 0xffffffff");
+ for (this._ensure(2 + r), this._buf[this._offset++] = e, this._buf[this._offset++] = r; r-- > 0;) this._buf[this._offset++] = (4278190080 & t) >>> 24, t <<= 8
+ }, f.prototype.writeNull = function() {
+ this.writeByte(o.Null), this.writeByte(0)
+ }, f.prototype.writeEnumeration = function(t, e) {
+ if ("number" != typeof t) throw new TypeError("argument must be a Number");
+ return "number" != typeof e && (e = o.Enumeration), this.writeInt(t, e)
+ }, f.prototype.writeBoolean = function(t, e) {
+ if ("boolean" != typeof t) throw new TypeError("argument must be a Boolean");
+ "number" != typeof e && (e = o.Boolean), this._ensure(3), this._buf[this._offset++] = e, this._buf[this._offset++] = 1, this._buf[this._offset++] = t ? 255 : 0
+ }, f.prototype.writeString = function(t, e) {
+ if ("string" != typeof t) throw new TypeError("argument must be a string (was: " + typeof t + ")");
+ "number" != typeof e && (e = o.OctetString);
+ var r = i.byteLength(t);
+ this.writeByte(e), this.writeLength(r), r && (this._ensure(r), this._buf.write(t, this._offset), this._offset += r)
+ }, f.prototype.writeBuffer = function(t, e) {
+ if ("number" != typeof e) throw new TypeError("tag must be a number");
+ if (!i.isBuffer(t)) throw new TypeError("argument must be a buffer");
+ this.writeByte(e), this.writeLength(t.length), this._ensure(t.length), t.copy(this._buf, this._offset, 0, t.length), this._offset += t.length
+ }, f.prototype.writeStringArray = function(t) {
+ if (!t instanceof Array) throw new TypeError("argument must be an Array[String]");
+ var e = this;
+ t.forEach((function(t) {
+ e.writeString(t)
+ }))
+ }, f.prototype.writeOID = function(t, e) {
+ if ("string" != typeof t) throw new TypeError("argument must be a string");
+ if ("number" != typeof e && (e = o.OID), !/^([0-9]+\.){3,}[0-9]+$/.test(t)) throw new Error("argument is not a valid OID string");
+ var r = t.split("."),
+ n = [];
+ n.push(40 * parseInt(r[0], 10) + parseInt(r[1], 10)), r.slice(2)
+ .forEach((function(t) {
+ ! function(t, e) {
+ e < 128 ? t.push(e) : e < 16384 ? (t.push(e >>> 7 | 128), t.push(127 & e)) : e < 2097152 ? (t.push(e >>> 14 | 128), t.push(e >>> 7 & 255 | 128), t.push(127 & e)) : e < 268435456 ? (t.push(e >>> 21 | 128), t.push(e >>> 14 & 255 | 128), t.push(e >>> 7 & 255 | 128), t.push(127 & e)) : (t.push(e >>> 28 & 255 | 128), t.push(e >>> 21 & 255 | 128), t.push(e >>> 14 & 255 | 128), t.push(e >>> 7 & 255 | 128), t.push(127 & e))
+ }(n, parseInt(t, 10))
+ }));
+ var i = this;
+ this._ensure(2 + n.length), this.writeByte(e), this.writeLength(n.length), n.forEach((function(t) {
+ i.writeByte(t)
+ }))
+ }, f.prototype.writeLength = function(t) {
+ if ("number" != typeof t) throw new TypeError("argument must be a Number");
+ if (this._ensure(4), t <= 127) this._buf[this._offset++] = t;
+ else if (t <= 255) this._buf[this._offset++] = 129, this._buf[this._offset++] = t;
+ else if (t <= 65535) this._buf[this._offset++] = 130, this._buf[this._offset++] = t >> 8, this._buf[this._offset++] = t;
+ else {
+ if (!(t <= 16777215)) throw s("Length too long (> 4 bytes)");
+ this._buf[this._offset++] = 131, this._buf[this._offset++] = t >> 16, this._buf[this._offset++] = t >> 8, this._buf[this._offset++] = t
+ }
+ }, f.prototype.startSequence = function(t) {
+ "number" != typeof t && (t = o.Sequence | o.Constructor), this.writeByte(t), this._seq.push(this._offset), this._ensure(3), this._offset += 3
+ }, f.prototype.endSequence = function() {
+ var t = this._seq.pop(),
+ e = t + 3,
+ r = this._offset - e;
+ if (r <= 127) this._shift(e, r, -2), this._buf[t] = r;
+ else if (r <= 255) this._shift(e, r, -1), this._buf[t] = 129, this._buf[t + 1] = r;
+ else if (r <= 65535) this._buf[t] = 130, this._buf[t + 1] = r >> 8, this._buf[t + 2] = r;
+ else {
+ if (!(r <= 16777215)) throw s("Sequence too long");
+ this._shift(e, r, 1), this._buf[t] = 131, this._buf[t + 1] = r >> 16, this._buf[t + 2] = r >> 8, this._buf[t + 3] = r
+ }
+ }, f.prototype._shift = function(t, e, r) {
+ n.ok(void 0 !== t), n.ok(void 0 !== e), n.ok(r), this._buf.copy(this._buf, t + r, t, t + e), this._offset += r
+ }, f.prototype._ensure = function(t) {
+ if (n.ok(t), this._size - this._offset < t) {
+ var e = this._size * this._options.growthFactor;
+ e - this._offset < t && (e += t);
+ var r = i.alloc(e);
+ this._buf.copy(r, 0, 0, this._offset), this._buf = r, this._size = e
+ }
+ }, t.exports = f
+ },
+ 3100: (t, e, r) => {
+ var n = r(5670);
+ t.exports = {
+ Ber: n,
+ BerReader: n.Reader,
+ BerWriter: n.Writer
+ }
+ },
+ 4529: (t, e, r) => {
+ "use strict";
+ var n = r(1514)();
+
+ function i(t, e) {
+ if (t === e) return 0;
+ for (var r = t.length, n = e.length, i = 0, o = Math.min(r, n); i < o; ++i) if (t[i] !== e[i]) {
+ r = t[i], n = e[i];
+ break
+ }
+ return r < n ? -1 : n < r ? 1 : 0
+ }
+ function o(t) {
+ return r.g.Buffer && "function" == typeof r.g.Buffer.isBuffer ? r.g.Buffer.isBuffer(t) : !(null == t || !t._isBuffer)
+ }
+ var s = r(4591),
+ a = Object.prototype.hasOwnProperty,
+ f = Array.prototype.slice,
+ u = "foo" === function() {}.name;
+
+ function c(t) {
+ return Object.prototype.toString.call(t)
+ }
+ function h(t) {
+ return !o(t) && "function" == typeof r.g.ArrayBuffer && ("function" == typeof ArrayBuffer.isView ? ArrayBuffer.isView(t) : !! t && (t instanceof DataView || !! (t.buffer && t.buffer instanceof ArrayBuffer)))
+ }
+ var p = t.exports = m,
+ l = /\s*function\s+([^\(\s]*)\s*/;
+
+ function y(t) {
+ if (s.isFunction(t)) {
+ if (u) return t.name;
+ var e = t.toString()
+ .match(l);
+ return e && e[1]
+ }
+ }
+ function g(t, e) {
+ return "string" == typeof t ? t.length < e ? t : t.slice(0, e) : t
+ }
+ function d(t) {
+ if (u || !s.isFunction(t)) return s.inspect(t);
+ var e = y(t);
+ return "[Function" + (e ? ": " + e : "") + "]"
+ }
+ function v(t, e, r, n, i) {
+ throw new p.AssertionError({
+ message: r,
+ actual: t,
+ expected: e,
+ operator: n,
+ stackStartFunction: i
+ })
+ }
+ function m(t, e) {
+ t || v(t, !0, e, "==", p.ok)
+ }
+ function S(t, e, r, n) {
+ if (t === e) return !0;
+ if (o(t) && o(e)) return 0 === i(t, e);
+ if (s.isDate(t) && s.isDate(e)) return t.getTime() === e.getTime();
+ if (s.isRegExp(t) && s.isRegExp(e)) return t.source === e.source && t.global === e.global && t.multiline === e.multiline && t.lastIndex === e.lastIndex && t.ignoreCase === e.ignoreCase;
+ if (null !== t && "object" == typeof t || null !== e && "object" == typeof e) {
+ if (h(t) && h(e) && c(t) === c(e) && !(t instanceof Float32Array || t instanceof Float64Array)) return 0 === i(new Uint8Array(t.buffer), new Uint8Array(e.buffer));
+ if (o(t) !== o(e)) return !1;
+ var a = (n = n || {
+ actual: [],
+ expected: []
+ })
+ .actual.indexOf(t);
+ return -1 !== a && a === n.expected.indexOf(e) || (n.actual.push(t), n.expected.push(e), function(t, e, r, n) {
+ if (null == t || null == e) return !1;
+ if (s.isPrimitive(t) || s.isPrimitive(e)) return t === e;
+ if (r && Object.getPrototypeOf(t) !== Object.getPrototypeOf(e)) return !1;
+ var i = _(t),
+ o = _(e);
+ if (i && !o || !i && o) return !1;
+ if (i) return S(t = f.call(t), e = f.call(e), r);
+ var a, u, c = w(t),
+ h = w(e);
+ if (c.length !== h.length) return !1;
+ for (c.sort(), h.sort(), u = c.length - 1; u >= 0; u--) if (c[u] !== h[u]) return !1;
+ for (u = c.length - 1; u >= 0; u--) if (!S(t[a = c[u]], e[a], r, n)) return !1;
+ return !0
+ }(t, e, r, n))
+ }
+ return r ? t === e : t == e
+ }
+ function _(t) {
+ return "[object Arguments]" == Object.prototype.toString.call(t)
+ }
+ function b(t, e) {
+ if (!t || !e) return !1;
+ if ("[object RegExp]" == Object.prototype.toString.call(e)) return e.test(t);
+ try {
+ if (t instanceof e) return !0
+ } catch (t) {}
+ return !Error.isPrototypeOf(e) && !0 === e.call({}, t)
+ }
+ function E(t, e, r, n) {
+ var i;
+ if ("function" != typeof e) throw new TypeError('"block" argument must be a function');
+ "string" == typeof r && (n = r, r = null), i = function(t) {
+ var e;
+ try {
+ t()
+ } catch (t) {
+ e = t
+ }
+ return e
+ }(e), n = (r && r.name ? " (" + r.name + ")." : ".") + (n ? " " + n : "."), t && !i && v(i, r, "Missing expected exception" + n);
+ var o = "string" == typeof n,
+ a = !t && i && !r;
+ if ((!t && s.isError(i) && o && b(i, r) || a) && v(i, r, "Got unwanted exception" + n), t && i && r && !b(i, r) || !t && i) throw i
+ }
+ p.AssertionError = function(t) {
+ this.name = "AssertionError", this.actual = t.actual, this.expected = t.expected, this.operator = t.operator, t.message ? (this.message = t.message, this.generatedMessage = !1) : (this.message = g(d(this.actual), 128) + " " + this.operator + " " + g(d(this.expected), 128), this.generatedMessage = !0);
+ var e = t.stackStartFunction || v;
+ if (Error.captureStackTrace) Error.captureStackTrace(this, e);
+ else {
+ var r = new Error;
+ if (r.stack) {
+ var n = r.stack,
+ i = y(e),
+ o = n.indexOf("\n" + i);
+ if (o >= 0) {
+ var s = n.indexOf("\n", o + 1);
+ n = n.substring(s + 1)
+ }
+ this.stack = n
+ }
+ }
+ }, s.inherits(p.AssertionError, Error), p.fail = v, p.ok = m, p.equal = function(t, e, r) {
+ t != e && v(t, e, r, "==", p.equal)
+ }, p.notEqual = function(t, e, r) {
+ t == e && v(t, e, r, "!=", p.notEqual)
+ }, p.deepEqual = function(t, e, r) {
+ S(t, e, !1) || v(t, e, r, "deepEqual", p.deepEqual)
+ }, p.deepStrictEqual = function(t, e, r) {
+ S(t, e, !0) || v(t, e, r, "deepStrictEqual", p.deepStrictEqual)
+ }, p.notDeepEqual = function(t, e, r) {
+ S(t, e, !1) && v(t, e, r, "notDeepEqual", p.notDeepEqual)
+ }, p.notDeepStrictEqual = function t(e, r, n) {
+ S(e, r, !0) && v(e, r, n, "notDeepStrictEqual", t)
+ }, p.strictEqual = function(t, e, r) {
+ t !== e && v(t, e, r, "===", p.strictEqual)
+ }, p.notStrictEqual = function(t, e, r) {
+ t === e && v(t, e, r, "!==", p.notStrictEqual)
+ }, p.throws = function(t, e, r) {
+ E(!0, t, e, r)
+ }, p.doesNotThrow = function(t, e, r) {
+ E(!1, t, e, r)
+ }, p.ifError = function(t) {
+ if (t) throw t
+ }, p.strict = n((function t(e, r) {
+ e || v(e, !0, r, "==", t)
+ }), p, {
+ equal: p.strictEqual,
+ deepEqual: p.deepStrictEqual,
+ notEqual: p.notStrictEqual,
+ notDeepEqual: p.notDeepStrictEqual
+ }), p.strict.strict = p.strict;
+ var w = Object.keys || function(t) {
+ var e = [];
+ for (var r in t) a.call(t, r) && e.push(r);
+ return e
+ }
+ },
+ 6100: t => {
+ "function" == typeof Object.create ? t.exports = function(t, e) {
+ t.super_ = e, t.prototype = Object.create(e.prototype, {
+ constructor: {
+ value: t,
+ enumerable: !1,
+ writable: !0,
+ configurable: !0
+ }
+ })
+ } : t.exports = function(t, e) {
+ t.super_ = e;
+ var r = function() {};
+ r.prototype = e.prototype, t.prototype = new r, t.prototype.constructor = t
+ }
+ },
+ 3845: t => {
+ t.exports = function(t) {
+ return t && "object" == typeof t && "function" == typeof t.copy && "function" == typeof t.fill && "function" == typeof t.readUInt8
+ }
+ },
+ 4591: (t, e, r) => {
+ var n = r(5606),
+ i = /%[sdj%]/g;
+ e.format = function(t) {
+ if (!v(t)) {
+ for (var e = [], r = 0; r < arguments.length; r++) e.push(a(arguments[r]));
+ return e.join(" ")
+ }
+ r = 1;
+ for (var n = arguments, o = n.length, s = String(t)
+ .replace(i, (function(t) {
+ if ("%%" === t) return "%";
+ if (r >= o) return t;
+ switch (t) {
+ case "%s":
+ return String(n[r++]);
+ case "%d":
+ return Number(n[r++]);
+ case "%j":
+ try {
+ return JSON.stringify(n[r++])
+ } catch (t) {
+ return "[Circular]"
+ }
+ default:
+ return t
+ }
+ })), f = n[r]; r < o; f = n[++r]) g(f) || !_(f) ? s += " " + f : s += " " + a(f);
+ return s
+ }, e.deprecate = function(t, i) {
+ if (m(r.g.process)) return function() {
+ return e.deprecate(t, i)
+ .apply(this, arguments)
+ };
+ if (!0 === n.noDeprecation) return t;
+ var o = !1;
+ return function() {
+ if (!o) {
+ if (n.throwDeprecation) throw new Error(i);
+ n.traceDeprecation ? console.trace(i) : console.error(i), o = !0
+ }
+ return t.apply(this, arguments)
+ }
+ };
+ var o, s = {};
+
+ function a(t, r) {
+ var n = {
+ seen: [],
+ stylize: u
+ };
+ return arguments.length >= 3 && (n.depth = arguments[2]), arguments.length >= 4 && (n.colors = arguments[3]), y(r) ? n.showHidden = r : r && e._extend(n, r), m(n.showHidden) && (n.showHidden = !1), m(n.depth) && (n.depth = 2), m(n.colors) && (n.colors = !1), m(n.customInspect) && (n.customInspect = !0), n.colors && (n.stylize = f), c(n, t, n.depth)
+ }
+ function f(t, e) {
+ var r = a.styles[e];
+ return r ? "[" + a.colors[r][0] + "m" + t + "[" + a.colors[r][1] + "m" : t
+ }
+ function u(t, e) {
+ return t
+ }
+ function c(t, r, n) {
+ if (t.customInspect && r && w(r.inspect) && r.inspect !== e.inspect && (!r.constructor || r.constructor.prototype !== r)) {
+ var i = r.inspect(n, t);
+ return v(i) || (i = c(t, i, n)), i
+ }
+ var o = function(t, e) {
+ if (m(e)) return t.stylize("undefined", "undefined");
+ if (v(e)) {
+ var r = "'" + JSON.stringify(e)
+ .replace(/^"|"$/g, "")
+ .replace(/'/g, "\\'")
+ .replace(/\\"/g, '"') + "'";
+ return t.stylize(r, "string")
+ }
+ return d(e) ? t.stylize("" + e, "number") : y(e) ? t.stylize("" + e, "boolean") : g(e) ? t.stylize("null", "null") : void 0
+ }(t, r);
+ if (o) return o;
+ var s = Object.keys(r),
+ a = function(t) {
+ var e = {};
+ return t.forEach((function(t, r) {
+ e[t] = !0
+ })), e
+ }(s);
+ if (t.showHidden && (s = Object.getOwnPropertyNames(r)), E(r) && (s.indexOf("message") >= 0 || s.indexOf("description") >= 0)) return h(r);
+ if (0 === s.length) {
+ if (w(r)) {
+ var f = r.name ? ": " + r.name : "";
+ return t.stylize("[Function" + f + "]", "special")
+ }
+ if (S(r)) return t.stylize(RegExp.prototype.toString.call(r), "regexp");
+ if (b(r)) return t.stylize(Date.prototype.toString.call(r), "date");
+ if (E(r)) return h(r)
+ }
+ var u, _ = "",
+ O = !1,
+ B = ["{", "}"];
+ return l(r) && (O = !0, B = ["[", "]"]), w(r) && (_ = " [Function" + (r.name ? ": " + r.name : "") + "]"), S(r) && (_ = " " + RegExp.prototype.toString.call(r)), b(r) && (_ = " " + Date.prototype.toUTCString.call(r)), E(r) && (_ = " " + h(r)), 0 !== s.length || O && 0 != r.length ? n < 0 ? S(r) ? t.stylize(RegExp.prototype.toString.call(r), "regexp") : t.stylize("[Object]", "special") : (t.seen.push(r), u = O ? function(t, e, r, n, i) {
+ for (var o = [], s = 0, a = e.length; s < a; ++s) x(e, String(s)) ? o.push(p(t, e, r, n, String(s), !0)) : o.push("");
+ return i.forEach((function(i) {
+ i.match(/^\d+$/) || o.push(p(t, e, r, n, i, !0))
+ })), o
+ }(t, r, n, a, s) : s.map((function(e) {
+ return p(t, r, n, a, e, O)
+ })), t.seen.pop(), function(t, e, r) {
+ return t.reduce((function(t, e) {
+ return e.indexOf("\n"), t + e.replace(/\u001b\[\d\d?m/g, "")
+ .length + 1
+ }), 0) > 60 ? r[0] + ("" === e ? "" : e + "\n ") + " " + t.join(",\n ") + " " + r[1] : r[0] + e + " " + t.join(", ") + " " + r[1]
+ }(u, _, B)) : B[0] + _ + B[1]
+ }
+ function h(t) {
+ return "[" + Error.prototype.toString.call(t) + "]"
+ }
+ function p(t, e, r, n, i, o) {
+ var s, a, f;
+ if ((f = Object.getOwnPropertyDescriptor(e, i) || {
+ value: e[i]
+ })
+ .get ? a = f.set ? t.stylize("[Getter/Setter]", "special") : t.stylize("[Getter]", "special") : f.set && (a = t.stylize("[Setter]", "special")), x(n, i) || (s = "[" + i + "]"), a || (t.seen.indexOf(f.value) < 0 ? (a = g(r) ? c(t, f.value, null) : c(t, f.value, r - 1))
+ .indexOf("\n") > -1 && (a = o ? a.split("\n")
+ .map((function(t) {
+ return " " + t
+ }))
+ .join("\n")
+ .substr(2) : "\n" + a.split("\n")
+ .map((function(t) {
+ return " " + t
+ }))
+ .join("\n")) : a = t.stylize("[Circular]", "special")), m(s)) {
+ if (o && i.match(/^\d+$/)) return a;
+ (s = JSON.stringify("" + i))
+ .match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/) ? (s = s.substr(1, s.length - 2), s = t.stylize(s, "name")) : (s = s.replace(/'/g, "\\'")
+ .replace(/\\"/g, '"')
+ .replace(/(^"|"$)/g, "'"), s = t.stylize(s, "string"))
+ }
+ return s + ": " + a
+ }
+ function l(t) {
+ return Array.isArray(t)
+ }
+ function y(t) {
+ return "boolean" == typeof t
+ }
+ function g(t) {
+ return null === t
+ }
+ function d(t) {
+ return "number" == typeof t
+ }
+ function v(t) {
+ return "string" == typeof t
+ }
+ function m(t) {
+ return void 0 === t
+ }
+ function S(t) {
+ return _(t) && "[object RegExp]" === O(t)
+ }
+ function _(t) {
+ return "object" == typeof t && null !== t
+ }
+ function b(t) {
+ return _(t) && "[object Date]" === O(t)
+ }
+ function E(t) {
+ return _(t) && ("[object Error]" === O(t) || t instanceof Error)
+ }
+ function w(t) {
+ return "function" == typeof t
+ }
+ function O(t) {
+ return Object.prototype.toString.call(t)
+ }
+ function B(t) {
+ return t < 10 ? "0" + t.toString(10) : t.toString(10)
+ }
+ e.debuglog = function(t) {
+ if (m(o) && (o = n.env.NODE_DEBUG || ""), t = t.toUpperCase(), !s[t]) if (new RegExp("\\b" + t + "\\b", "i")
+ .test(o)) {
+ var r = n.pid;
+ s[t] = function() {
+ var n = e.format.apply(e, arguments);
+ console.error("%s %d: %s", t, r, n)
+ }
+ } else s[t] = function() {};
+ return s[t]
+ }, e.inspect = a, a.colors = {
+ bold: [1, 22],
+ italic: [3, 23],
+ underline: [4, 24],
+ inverse: [7, 27],
+ white: [37, 39],
+ grey: [90, 39],
+ black: [30, 39],
+ blue: [34, 39],
+ cyan: [36, 39],
+ green: [32, 39],
+ magenta: [35, 39],
+ red: [31, 39],
+ yellow: [33, 39]
+ }, a.styles = {
+ special: "cyan",
+ number: "yellow",
+ boolean: "yellow",
+ undefined: "grey",
+ null: "bold",
+ string: "green",
+ date: "magenta",
+ regexp: "red"
+ }, e.isArray = l, e.isBoolean = y, e.isNull = g, e.isNullOrUndefined = function(t) {
+ return null == t
+ }, e.isNumber = d, e.isString = v, e.isSymbol = function(t) {
+ return "symbol" == typeof t
+ }, e.isUndefined = m, e.isRegExp = S, e.isObject = _, e.isDate = b, e.isError = E, e.isFunction = w, e.isPrimitive = function(t) {
+ return null === t || "boolean" == typeof t || "number" == typeof t || "string" == typeof t || "symbol" == typeof t || void 0 === t
+ }, e.isBuffer = r(3845);
+ var A = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
+
+ function x(t, e) {
+ return Object.prototype.hasOwnProperty.call(t, e)
+ }
+ e.log = function() {
+ var t, r;
+ console.log("%s - %s", (r = [B((t = new Date)
+ .getHours()), B(t.getMinutes()), B(t.getSeconds())].join(":"), [t.getDate(), A[t.getMonth()], r].join(" ")), e.format.apply(e, arguments))
+ }, e.inherits = r(6100), e._extend = function(t, e) {
+ if (!e || !_(e)) return t;
+ for (var r = Object.keys(e), n = r.length; n--;) t[r[n]] = e[r[n]];
+ return t
+ }
+ },
+ 7526: (t, e) => {
+ "use strict";
+ e.byteLength = function(t) {
+ var e = a(t),
+ r = e[0],
+ n = e[1];
+ return 3 * (r + n) / 4 - n
+ }, e.toByteArray = function(t) {
+ var e, r, o = a(t),
+ s = o[0],
+ f = o[1],
+ u = new i(function(t, e, r) {
+ return 3 * (e + r) / 4 - r
+ }(0, s, f)),
+ c = 0,
+ h = f > 0 ? s - 4 : s;
+ for (r = 0; r < h; r += 4) e = n[t.charCodeAt(r)] << 18 | n[t.charCodeAt(r + 1)] << 12 | n[t.charCodeAt(r + 2)] << 6 | n[t.charCodeAt(r + 3)], u[c++] = e >> 16 & 255, u[c++] = e >> 8 & 255, u[c++] = 255 & e;
+ return 2 === f && (e = n[t.charCodeAt(r)] << 2 | n[t.charCodeAt(r + 1)] >> 4, u[c++] = 255 & e), 1 === f && (e = n[t.charCodeAt(r)] << 10 | n[t.charCodeAt(r + 1)] << 4 | n[t.charCodeAt(r + 2)] >> 2, u[c++] = e >> 8 & 255, u[c++] = 255 & e), u
+ }, e.fromByteArray = function(t) {
+ for (var e, n = t.length, i = n % 3, o = [], s = 16383, a = 0, u = n - i; a < u; a += s) o.push(f(t, a, a + s > u ? u : a + s));
+ return 1 === i ? (e = t[n - 1], o.push(r[e >> 2] + r[e << 4 & 63] + "==")) : 2 === i && (e = (t[n - 2] << 8) + t[n - 1], o.push(r[e >> 10] + r[e >> 4 & 63] + r[e << 2 & 63] + "=")), o.join("")
+ };
+ for (var r = [], n = [], i = "undefined" != typeof Uint8Array ? Uint8Array : Array, o = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", s = 0; s < 64; ++s) r[s] = o[s], n[o.charCodeAt(s)] = s;
+
+ function a(t) {
+ var e = t.length;
+ if (e % 4 > 0) throw new Error("Invalid string. Length must be a multiple of 4");
+ var r = t.indexOf("=");
+ return -1 === r && (r = e), [r, r === e ? 0 : 4 - r % 4]
+ }
+ function f(t, e, n) {
+ for (var i, o, s = [], a = e; a < n; a += 3) i = (t[a] << 16 & 16711680) + (t[a + 1] << 8 & 65280) + (255 & t[a + 2]), s.push(r[(o = i) >> 18 & 63] + r[o >> 12 & 63] + r[o >> 6 & 63] + r[63 & o]);
+ return s.join("")
+ }
+ n["-".charCodeAt(0)] = 62, n["_".charCodeAt(0)] = 63
+ },
+ 8287: (t, e, r) => {
+ "use strict";
+ var n = r(7526),
+ i = r(251);
+ e.Buffer = a, e.SlowBuffer = function(t) {
+ return +t != t && (t = 0), a.alloc(+t)
+ }, e.INSPECT_MAX_BYTES = 50;
+ var o = 2147483647;
+
+ function s(t) {
+ if (t > o) throw new RangeError('The value "' + t + '" is invalid for option "size"');
+ var e = new Uint8Array(t);
+ return e.__proto__ = a.prototype, e
+ }
+ function a(t, e, r) {
+ if ("number" == typeof t) {
+ if ("string" == typeof e) throw new TypeError('The "string" argument must be of type string. Received type number');
+ return c(t)
+ }
+ return f(t, e, r)
+ }
+ function f(t, e, r) {
+ if ("string" == typeof t) return function(t, e) {
+ if ("string" == typeof e && "" !== e || (e = "utf8"), !a.isEncoding(e)) throw new TypeError("Unknown encoding: " + e);
+ var r = 0 | l(t, e),
+ n = s(r),
+ i = n.write(t, e);
+ return i !== r && (n = n.slice(0, i)), n
+ }(t, e);
+ if (ArrayBuffer.isView(t)) return h(t);
+ if (null == t) throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t);
+ if (H(t, ArrayBuffer) || t && H(t.buffer, ArrayBuffer)) return function(t, e, r) {
+ if (e < 0 || t.byteLength < e) throw new RangeError('"offset" is outside of buffer bounds');
+ if (t.byteLength < e + (r || 0)) throw new RangeError('"length" is outside of buffer bounds');
+ var n;
+ return (n = void 0 === e && void 0 === r ? new Uint8Array(t) : void 0 === r ? new Uint8Array(t, e) : new Uint8Array(t, e, r))
+ .__proto__ = a.prototype, n
+ }(t, e, r);
+ if ("number" == typeof t) throw new TypeError('The "value" argument must not be of type number. Received type number');
+ var n = t.valueOf && t.valueOf();
+ if (null != n && n !== t) return a.from(n, e, r);
+ var i = function(t) {
+ if (a.isBuffer(t)) {
+ var e = 0 | p(t.length),
+ r = s(e);
+ return 0 === r.length || t.copy(r, 0, 0, e), r
+ }
+ return void 0 !== t.length ? "number" != typeof t.length || F(t.length) ? s(0) : h(t) : "Buffer" === t.type && Array.isArray(t.data) ? h(t.data) : void 0
+ }(t);
+ if (i) return i;
+ if ("undefined" != typeof Symbol && null != Symbol.toPrimitive && "function" == typeof t[Symbol.toPrimitive]) return a.from(t[Symbol.toPrimitive]("string"), e, r);
+ throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t)
+ }
+ function u(t) {
+ if ("number" != typeof t) throw new TypeError('"size" argument must be of type number');
+ if (t < 0) throw new RangeError('The value "' + t + '" is invalid for option "size"')
+ }
+ function c(t) {
+ return u(t), s(t < 0 ? 0 : 0 | p(t))
+ }
+ function h(t) {
+ for (var e = t.length < 0 ? 0 : 0 | p(t.length), r = s(e), n = 0; n < e; n += 1) r[n] = 255 & t[n];
+ return r
+ }
+ function p(t) {
+ if (t >= o) throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + o.toString(16) + " bytes");
+ return 0 | t
+ }
+ function l(t, e) {
+ if (a.isBuffer(t)) return t.length;
+ if (ArrayBuffer.isView(t) || H(t, ArrayBuffer)) return t.byteLength;
+ if ("string" != typeof t) throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof t);
+ var r = t.length,
+ n = arguments.length > 2 && !0 === arguments[2];
+ if (!n && 0 === r) return 0;
+ for (var i = !1;;) switch (e) {
+ case "ascii":
+ case "latin1":
+ case "binary":
+ return r;
+ case "utf8":
+ case "utf-8":
+ return U(t)
+ .length;
+ case "ucs2":
+ case "ucs-2":
+ case "utf16le":
+ case "utf-16le":
+ return 2 * r;
+ case "hex":
+ return r >>> 1;
+ case "base64":
+ return M(t)
+ .length;
+ default:
+ if (i) return n ? -1 : U(t)
+ .length;
+ e = ("" + e)
+ .toLowerCase(), i = !0
+ }
+ }
+ function y(t, e, r) {
+ var n = !1;
+ if ((void 0 === e || e < 0) && (e = 0), e > this.length) return "";
+ if ((void 0 === r || r > this.length) && (r = this.length), r <= 0) return "";
+ if ((r >>>= 0) <= (e >>>= 0)) return "";
+ for (t || (t = "utf8");;) switch (t) {
+ case "hex":
+ return T(this, e, r);
+ case "utf8":
+ case "utf-8":
+ return B(this, e, r);
+ case "ascii":
+ return x(this, e, r);
+ case "latin1":
+ case "binary":
+ return P(this, e, r);
+ case "base64":
+ return O(this, e, r);
+ case "ucs2":
+ case "ucs-2":
+ case "utf16le":
+ case "utf-16le":
+ return I(this, e, r);
+ default:
+ if (n) throw new TypeError("Unknown encoding: " + t);
+ t = (t + "")
+ .toLowerCase(), n = !0
+ }
+ }
+ function g(t, e, r) {
+ var n = t[e];
+ t[e] = t[r], t[r] = n
+ }
+ function d(t, e, r, n, i) {
+ if (0 === t.length) return -1;
+ if ("string" == typeof r ? (n = r, r = 0) : r > 2147483647 ? r = 2147483647 : r < -2147483648 && (r = -2147483648), F(r = +r) && (r = i ? 0 : t.length - 1), r < 0 && (r = t.length + r), r >= t.length) {
+ if (i) return -1;
+ r = t.length - 1
+ } else if (r < 0) {
+ if (!i) return -1;
+ r = 0
+ }
+ if ("string" == typeof e && (e = a.from(e, n)), a.isBuffer(e)) return 0 === e.length ? -1 : v(t, e, r, n, i);
+ if ("number" == typeof e) return e &= 255, "function" == typeof Uint8Array.prototype.indexOf ? i ? Uint8Array.prototype.indexOf.call(t, e, r) : Uint8Array.prototype.lastIndexOf.call(t, e, r) : v(t, [e], r, n, i);
+ throw new TypeError("val must be string, number or Buffer")
+ }
+ function v(t, e, r, n, i) {
+ var o, s = 1,
+ a = t.length,
+ f = e.length;
+ if (void 0 !== n && ("ucs2" === (n = String(n)
+ .toLowerCase()) || "ucs-2" === n || "utf16le" === n || "utf-16le" === n)) {
+ if (t.length < 2 || e.length < 2) return -1;
+ s = 2, a /= 2, f /= 2, r /= 2
+ }
+ function u(t, e) {
+ return 1 === s ? t[e] : t.readUInt16BE(e * s)
+ }
+ if (i) {
+ var c = -1;
+ for (o = r; o < a; o++) if (u(t, o) === u(e, -1 === c ? 0 : o - c)) {
+ if (-1 === c && (c = o), o - c + 1 === f) return c * s
+ } else -1 !== c && (o -= o - c), c = -1
+ } else for (r + f > a && (r = a - f), o = r; o >= 0; o--) {
+ for (var h = !0, p = 0; p < f; p++) if (u(t, o + p) !== u(e, p)) {
+ h = !1;
+ break
+ }
+ if (h) return o
+ }
+ return -1
+ }
+ function m(t, e, r, n) {
+ r = Number(r) || 0;
+ var i = t.length - r;
+ n ? (n = Number(n)) > i && (n = i) : n = i;
+ var o = e.length;
+ n > o / 2 && (n = o / 2);
+ for (var s = 0; s < n; ++s) {
+ var a = parseInt(e.substr(2 * s, 2), 16);
+ if (F(a)) return s;
+ t[r + s] = a
+ }
+ return s
+ }
+ function S(t, e, r, n) {
+ return j(U(e, t.length - r), t, r, n)
+ }
+ function _(t, e, r, n) {
+ return j(function(t) {
+ for (var e = [], r = 0; r < t.length; ++r) e.push(255 & t.charCodeAt(r));
+ return e
+ }(e), t, r, n)
+ }
+ function b(t, e, r, n) {
+ return _(t, e, r, n)
+ }
+ function E(t, e, r, n) {
+ return j(M(e), t, r, n)
+ }
+ function w(t, e, r, n) {
+ return j(function(t, e) {
+ for (var r, n, i, o = [], s = 0; s < t.length && !((e -= 2) < 0); ++s) n = (r = t.charCodeAt(s)) >> 8, i = r % 256, o.push(i), o.push(n);
+ return o
+ }(e, t.length - r), t, r, n)
+ }
+ function O(t, e, r) {
+ return 0 === e && r === t.length ? n.fromByteArray(t) : n.fromByteArray(t.slice(e, r))
+ }
+ function B(t, e, r) {
+ r = Math.min(t.length, r);
+ for (var n = [], i = e; i < r;) {
+ var o, s, a, f, u = t[i],
+ c = null,
+ h = u > 239 ? 4 : u > 223 ? 3 : u > 191 ? 2 : 1;
+ if (i + h <= r) switch (h) {
+ case 1:
+ u < 128 && (c = u);
+ break;
+ case 2:
+ 128 == (192 & (o = t[i + 1])) && (f = (31 & u) << 6 | 63 & o) > 127 && (c = f);
+ break;
+ case 3:
+ o = t[i + 1], s = t[i + 2], 128 == (192 & o) && 128 == (192 & s) && (f = (15 & u) << 12 | (63 & o) << 6 | 63 & s) > 2047 && (f < 55296 || f > 57343) && (c = f);
+ break;
+ case 4:
+ o = t[i + 1], s = t[i + 2], a = t[i + 3], 128 == (192 & o) && 128 == (192 & s) && 128 == (192 & a) && (f = (15 & u) << 18 | (63 & o) << 12 | (63 & s) << 6 | 63 & a) > 65535 && f < 1114112 && (c = f)
+ }
+ null === c ? (c = 65533, h = 1) : c > 65535 && (c -= 65536, n.push(c >>> 10 & 1023 | 55296), c = 56320 | 1023 & c), n.push(c), i += h
+ }
+ return function(t) {
+ var e = t.length;
+ if (e <= A) return String.fromCharCode.apply(String, t);
+ for (var r = "", n = 0; n < e;) r += String.fromCharCode.apply(String, t.slice(n, n += A));
+ return r
+ }(n)
+ }
+ e.kMaxLength = o, a.TYPED_ARRAY_SUPPORT = function() {
+ try {
+ var t = new Uint8Array(1);
+ return t.__proto__ = {
+ __proto__: Uint8Array.prototype,
+ foo: function() {
+ return 42
+ }
+ }, 42 === t.foo()
+ } catch (t) {
+ return !1
+ }
+ }(), a.TYPED_ARRAY_SUPPORT || "undefined" == typeof console || "function" != typeof console.error || console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."), Object.defineProperty(a.prototype, "parent", {
+ enumerable: !0,
+ get: function() {
+ if (a.isBuffer(this)) return this.buffer
+ }
+ }), Object.defineProperty(a.prototype, "offset", {
+ enumerable: !0,
+ get: function() {
+ if (a.isBuffer(this)) return this.byteOffset
+ }
+ }), "undefined" != typeof Symbol && null != Symbol.species && a[Symbol.species] === a && Object.defineProperty(a, Symbol.species, {
+ value: null,
+ configurable: !0,
+ enumerable: !1,
+ writable: !1
+ }), a.poolSize = 8192, a.from = function(t, e, r) {
+ return f(t, e, r)
+ }, a.prototype.__proto__ = Uint8Array.prototype, a.__proto__ = Uint8Array, a.alloc = function(t, e, r) {
+ return function(t, e, r) {
+ return u(t), t <= 0 ? s(t) : void 0 !== e ? "string" == typeof r ? s(t)
+ .fill(e, r) : s(t)
+ .fill(e) : s(t)
+ }(t, e, r)
+ }, a.allocUnsafe = function(t) {
+ return c(t)
+ }, a.allocUnsafeSlow = function(t) {
+ return c(t)
+ }, a.isBuffer = function(t) {
+ return null != t && !0 === t._isBuffer && t !== a.prototype
+ }, a.compare = function(t, e) {
+ if (H(t, Uint8Array) && (t = a.from(t, t.offset, t.byteLength)), H(e, Uint8Array) && (e = a.from(e, e.offset, e.byteLength)), !a.isBuffer(t) || !a.isBuffer(e)) throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');
+ if (t === e) return 0;
+ for (var r = t.length, n = e.length, i = 0, o = Math.min(r, n); i < o; ++i) if (t[i] !== e[i]) {
+ r = t[i], n = e[i];
+ break
+ }
+ return r < n ? -1 : n < r ? 1 : 0
+ }, a.isEncoding = function(t) {
+ switch (String(t)
+ .toLowerCase()) {
+ case "hex":
+ case "utf8":
+ case "utf-8":
+ case "ascii":
+ case "latin1":
+ case "binary":
+ case "base64":
+ case "ucs2":
+ case "ucs-2":
+ case "utf16le":
+ case "utf-16le":
+ return !0;
+ default:
+ return !1
+ }
+ }, a.concat = function(t, e) {
+ if (!Array.isArray(t)) throw new TypeError('"list" argument must be an Array of Buffers');
+ if (0 === t.length) return a.alloc(0);
+ var r;
+ if (void 0 === e) for (e = 0, r = 0; r < t.length; ++r) e += t[r].length;
+ var n = a.allocUnsafe(e),
+ i = 0;
+ for (r = 0; r < t.length; ++r) {
+ var o = t[r];
+ if (H(o, Uint8Array) && (o = a.from(o)), !a.isBuffer(o)) throw new TypeError('"list" argument must be an Array of Buffers');
+ o.copy(n, i), i += o.length
+ }
+ return n
+ }, a.byteLength = l, a.prototype._isBuffer = !0, a.prototype.swap16 = function() {
+ var t = this.length;
+ if (t % 2 != 0) throw new RangeError("Buffer size must be a multiple of 16-bits");
+ for (var e = 0; e < t; e += 2) g(this, e, e + 1);
+ return this
+ }, a.prototype.swap32 = function() {
+ var t = this.length;
+ if (t % 4 != 0) throw new RangeError("Buffer size must be a multiple of 32-bits");
+ for (var e = 0; e < t; e += 4) g(this, e, e + 3), g(this, e + 1, e + 2);
+ return this
+ }, a.prototype.swap64 = function() {
+ var t = this.length;
+ if (t % 8 != 0) throw new RangeError("Buffer size must be a multiple of 64-bits");
+ for (var e = 0; e < t; e += 8) g(this, e, e + 7), g(this, e + 1, e + 6), g(this, e + 2, e + 5), g(this, e + 3, e + 4);
+ return this
+ }, a.prototype.toString = function() {
+ var t = this.length;
+ return 0 === t ? "" : 0 === arguments.length ? B(this, 0, t) : y.apply(this, arguments)
+ }, a.prototype.toLocaleString = a.prototype.toString, a.prototype.equals = function(t) {
+ if (!a.isBuffer(t)) throw new TypeError("Argument must be a Buffer");
+ return this === t || 0 === a.compare(this, t)
+ }, a.prototype.inspect = function() {
+ var t = "",
+ r = e.INSPECT_MAX_BYTES;
+ return t = this.toString("hex", 0, r)
+ .replace(/(.{2})/g, "$1 ")
+ .trim(), this.length > r && (t += " ... "), ""
+ }, a.prototype.compare = function(t, e, r, n, i) {
+ if (H(t, Uint8Array) && (t = a.from(t, t.offset, t.byteLength)), !a.isBuffer(t)) throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof t);
+ if (void 0 === e && (e = 0), void 0 === r && (r = t ? t.length : 0), void 0 === n && (n = 0), void 0 === i && (i = this.length), e < 0 || r > t.length || n < 0 || i > this.length) throw new RangeError("out of range index");
+ if (n >= i && e >= r) return 0;
+ if (n >= i) return -1;
+ if (e >= r) return 1;
+ if (this === t) return 0;
+ for (var o = (i >>>= 0) - (n >>>= 0), s = (r >>>= 0) - (e >>>= 0), f = Math.min(o, s), u = this.slice(n, i), c = t.slice(e, r), h = 0; h < f; ++h) if (u[h] !== c[h]) {
+ o = u[h], s = c[h];
+ break
+ }
+ return o < s ? -1 : s < o ? 1 : 0
+ }, a.prototype.includes = function(t, e, r) {
+ return -1 !== this.indexOf(t, e, r)
+ }, a.prototype.indexOf = function(t, e, r) {
+ return d(this, t, e, r, !0)
+ }, a.prototype.lastIndexOf = function(t, e, r) {
+ return d(this, t, e, r, !1)
+ }, a.prototype.write = function(t, e, r, n) {
+ if (void 0 === e) n = "utf8", r = this.length, e = 0;
+ else if (void 0 === r && "string" == typeof e) n = e, r = this.length, e = 0;
+ else {
+ if (!isFinite(e)) throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");
+ e >>>= 0, isFinite(r) ? (r >>>= 0, void 0 === n && (n = "utf8")) : (n = r, r = void 0)
+ }
+ var i = this.length - e;
+ if ((void 0 === r || r > i) && (r = i), t.length > 0 && (r < 0 || e < 0) || e > this.length) throw new RangeError("Attempt to write outside buffer bounds");
+ n || (n = "utf8");
+ for (var o = !1;;) switch (n) {
+ case "hex":
+ return m(this, t, e, r);
+ case "utf8":
+ case "utf-8":
+ return S(this, t, e, r);
+ case "ascii":
+ return _(this, t, e, r);
+ case "latin1":
+ case "binary":
+ return b(this, t, e, r);
+ case "base64":
+ return E(this, t, e, r);
+ case "ucs2":
+ case "ucs-2":
+ case "utf16le":
+ case "utf-16le":
+ return w(this, t, e, r);
+ default:
+ if (o) throw new TypeError("Unknown encoding: " + n);
+ n = ("" + n)
+ .toLowerCase(), o = !0
+ }
+ }, a.prototype.toJSON = function() {
+ return {
+ type: "Buffer",
+ data: Array.prototype.slice.call(this._arr || this, 0)
+ }
+ };
+ var A = 4096;
+
+ function x(t, e, r) {
+ var n = "";
+ r = Math.min(t.length, r);
+ for (var i = e; i < r; ++i) n += String.fromCharCode(127 & t[i]);
+ return n
+ }
+ function P(t, e, r) {
+ var n = "";
+ r = Math.min(t.length, r);
+ for (var i = e; i < r; ++i) n += String.fromCharCode(t[i]);
+ return n
+ }
+ function T(t, e, r) {
+ var n, i = t.length;
+ (!e || e < 0) && (e = 0), (!r || r < 0 || r > i) && (r = i);
+ for (var o = "", s = e; s < r; ++s) o += (n = t[s]) < 16 ? "0" + n.toString(16) : n.toString(16);
+ return o
+ }
+ function I(t, e, r) {
+ for (var n = t.slice(e, r), i = "", o = 0; o < n.length; o += 2) i += String.fromCharCode(n[o] + 256 * n[o + 1]);
+ return i
+ }
+ function k(t, e, r) {
+ if (t % 1 != 0 || t < 0) throw new RangeError("offset is not uint");
+ if (t + e > r) throw new RangeError("Trying to access beyond buffer length")
+ }
+ function D(t, e, r, n, i, o) {
+ if (!a.isBuffer(t)) throw new TypeError('"buffer" argument must be a Buffer instance');
+ if (e > i || e < o) throw new RangeError('"value" argument is out of bounds');
+ if (r + n > t.length) throw new RangeError("Index out of range")
+ }
+ function R(t, e, r, n, i, o) {
+ if (r + n > t.length) throw new RangeError("Index out of range");
+ if (r < 0) throw new RangeError("Index out of range")
+ }
+ function N(t, e, r, n, o) {
+ return e = +e, r >>>= 0, o || R(t, 0, r, 4), i.write(t, e, r, n, 23, 4), r + 4
+ }
+ function L(t, e, r, n, o) {
+ return e = +e, r >>>= 0, o || R(t, 0, r, 8), i.write(t, e, r, n, 52, 8), r + 8
+ }
+ a.prototype.slice = function(t, e) {
+ var r = this.length;
+ (t = ~~t) < 0 ? (t += r) < 0 && (t = 0) : t > r && (t = r), (e = void 0 === e ? r : ~~e) < 0 ? (e += r) < 0 && (e = 0) : e > r && (e = r), e < t && (e = t);
+ var n = this.subarray(t, e);
+ return n.__proto__ = a.prototype, n
+ }, a.prototype.readUIntLE = function(t, e, r) {
+ t >>>= 0, e >>>= 0, r || k(t, e, this.length);
+ for (var n = this[t], i = 1, o = 0; ++o < e && (i *= 256);) n += this[t + o] * i;
+ return n
+ }, a.prototype.readUIntBE = function(t, e, r) {
+ t >>>= 0, e >>>= 0, r || k(t, e, this.length);
+ for (var n = this[t + --e], i = 1; e > 0 && (i *= 256);) n += this[t + --e] * i;
+ return n
+ }, a.prototype.readUInt8 = function(t, e) {
+ return t >>>= 0, e || k(t, 1, this.length), this[t]
+ }, a.prototype.readUInt16LE = function(t, e) {
+ return t >>>= 0, e || k(t, 2, this.length), this[t] | this[t + 1] << 8
+ }, a.prototype.readUInt16BE = function(t, e) {
+ return t >>>= 0, e || k(t, 2, this.length), this[t] << 8 | this[t + 1]
+ }, a.prototype.readUInt32LE = function(t, e) {
+ return t >>>= 0, e || k(t, 4, this.length), (this[t] | this[t + 1] << 8 | this[t + 2] << 16) + 16777216 * this[t + 3]
+ }, a.prototype.readUInt32BE = function(t, e) {
+ return t >>>= 0, e || k(t, 4, this.length), 16777216 * this[t] + (this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3])
+ }, a.prototype.readIntLE = function(t, e, r) {
+ t >>>= 0, e >>>= 0, r || k(t, e, this.length);
+ for (var n = this[t], i = 1, o = 0; ++o < e && (i *= 256);) n += this[t + o] * i;
+ return n >= (i *= 128) && (n -= Math.pow(2, 8 * e)), n
+ }, a.prototype.readIntBE = function(t, e, r) {
+ t >>>= 0, e >>>= 0, r || k(t, e, this.length);
+ for (var n = e, i = 1, o = this[t + --n]; n > 0 && (i *= 256);) o += this[t + --n] * i;
+ return o >= (i *= 128) && (o -= Math.pow(2, 8 * e)), o
+ }, a.prototype.readInt8 = function(t, e) {
+ return t >>>= 0, e || k(t, 1, this.length), 128 & this[t] ? -1 * (255 - this[t] + 1) : this[t]
+ }, a.prototype.readInt16LE = function(t, e) {
+ t >>>= 0, e || k(t, 2, this.length);
+ var r = this[t] | this[t + 1] << 8;
+ return 32768 & r ? 4294901760 | r : r
+ }, a.prototype.readInt16BE = function(t, e) {
+ t >>>= 0, e || k(t, 2, this.length);
+ var r = this[t + 1] | this[t] << 8;
+ return 32768 & r ? 4294901760 | r : r
+ }, a.prototype.readInt32LE = function(t, e) {
+ return t >>>= 0, e || k(t, 4, this.length), this[t] | this[t + 1] << 8 | this[t + 2] << 16 | this[t + 3] << 24
+ }, a.prototype.readInt32BE = function(t, e) {
+ return t >>>= 0, e || k(t, 4, this.length), this[t] << 24 | this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3]
+ }, a.prototype.readFloatLE = function(t, e) {
+ return t >>>= 0, e || k(t, 4, this.length), i.read(this, t, !0, 23, 4)
+ }, a.prototype.readFloatBE = function(t, e) {
+ return t >>>= 0, e || k(t, 4, this.length), i.read(this, t, !1, 23, 4)
+ }, a.prototype.readDoubleLE = function(t, e) {
+ return t >>>= 0, e || k(t, 8, this.length), i.read(this, t, !0, 52, 8)
+ }, a.prototype.readDoubleBE = function(t, e) {
+ return t >>>= 0, e || k(t, 8, this.length), i.read(this, t, !1, 52, 8)
+ }, a.prototype.writeUIntLE = function(t, e, r, n) {
+ t = +t, e >>>= 0, r >>>= 0, n || D(this, t, e, r, Math.pow(2, 8 * r) - 1, 0);
+ var i = 1,
+ o = 0;
+ for (this[e] = 255 & t; ++o < r && (i *= 256);) this[e + o] = t / i & 255;
+ return e + r
+ }, a.prototype.writeUIntBE = function(t, e, r, n) {
+ t = +t, e >>>= 0, r >>>= 0, n || D(this, t, e, r, Math.pow(2, 8 * r) - 1, 0);
+ var i = r - 1,
+ o = 1;
+ for (this[e + i] = 255 & t; --i >= 0 && (o *= 256);) this[e + i] = t / o & 255;
+ return e + r
+ }, a.prototype.writeUInt8 = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 1, 255, 0), this[e] = 255 & t, e + 1
+ }, a.prototype.writeUInt16LE = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 2, 65535, 0), this[e] = 255 & t, this[e + 1] = t >>> 8, e + 2
+ }, a.prototype.writeUInt16BE = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 2, 65535, 0), this[e] = t >>> 8, this[e + 1] = 255 & t, e + 2
+ }, a.prototype.writeUInt32LE = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 4, 4294967295, 0), this[e + 3] = t >>> 24, this[e + 2] = t >>> 16, this[e + 1] = t >>> 8, this[e] = 255 & t, e + 4
+ }, a.prototype.writeUInt32BE = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 4, 4294967295, 0), this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = 255 & t, e + 4
+ }, a.prototype.writeIntLE = function(t, e, r, n) {
+ if (t = +t, e >>>= 0, !n) {
+ var i = Math.pow(2, 8 * r - 1);
+ D(this, t, e, r, i - 1, -i)
+ }
+ var o = 0,
+ s = 1,
+ a = 0;
+ for (this[e] = 255 & t; ++o < r && (s *= 256);) t < 0 && 0 === a && 0 !== this[e + o - 1] && (a = 1), this[e + o] = (t / s | 0) - a & 255;
+ return e + r
+ }, a.prototype.writeIntBE = function(t, e, r, n) {
+ if (t = +t, e >>>= 0, !n) {
+ var i = Math.pow(2, 8 * r - 1);
+ D(this, t, e, r, i - 1, -i)
+ }
+ var o = r - 1,
+ s = 1,
+ a = 0;
+ for (this[e + o] = 255 & t; --o >= 0 && (s *= 256);) t < 0 && 0 === a && 0 !== this[e + o + 1] && (a = 1), this[e + o] = (t / s | 0) - a & 255;
+ return e + r
+ }, a.prototype.writeInt8 = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 1, 127, -128), t < 0 && (t = 255 + t + 1), this[e] = 255 & t, e + 1
+ }, a.prototype.writeInt16LE = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 2, 32767, -32768), this[e] = 255 & t, this[e + 1] = t >>> 8, e + 2
+ }, a.prototype.writeInt16BE = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 2, 32767, -32768), this[e] = t >>> 8, this[e + 1] = 255 & t, e + 2
+ }, a.prototype.writeInt32LE = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 4, 2147483647, -2147483648), this[e] = 255 & t, this[e + 1] = t >>> 8, this[e + 2] = t >>> 16, this[e + 3] = t >>> 24, e + 4
+ }, a.prototype.writeInt32BE = function(t, e, r) {
+ return t = +t, e >>>= 0, r || D(this, t, e, 4, 2147483647, -2147483648), t < 0 && (t = 4294967295 + t + 1), this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = 255 & t, e + 4
+ }, a.prototype.writeFloatLE = function(t, e, r) {
+ return N(this, t, e, !0, r)
+ }, a.prototype.writeFloatBE = function(t, e, r) {
+ return N(this, t, e, !1, r)
+ }, a.prototype.writeDoubleLE = function(t, e, r) {
+ return L(this, t, e, !0, r)
+ }, a.prototype.writeDoubleBE = function(t, e, r) {
+ return L(this, t, e, !1, r)
+ }, a.prototype.copy = function(t, e, r, n) {
+ if (!a.isBuffer(t)) throw new TypeError("argument should be a Buffer");
+ if (r || (r = 0), n || 0 === n || (n = this.length), e >= t.length && (e = t.length), e || (e = 0), n > 0 && n < r && (n = r), n === r) return 0;
+ if (0 === t.length || 0 === this.length) return 0;
+ if (e < 0) throw new RangeError("targetStart out of bounds");
+ if (r < 0 || r >= this.length) throw new RangeError("Index out of range");
+ if (n < 0) throw new RangeError("sourceEnd out of bounds");
+ n > this.length && (n = this.length), t.length - e < n - r && (n = t.length - e + r);
+ var i = n - r;
+ if (this === t && "function" == typeof Uint8Array.prototype.copyWithin) this.copyWithin(e, r, n);
+ else if (this === t && r < e && e < n) for (var o = i - 1; o >= 0; --o) t[o + e] = this[o + r];
+ else Uint8Array.prototype.set.call(t, this.subarray(r, n), e);
+ return i
+ }, a.prototype.fill = function(t, e, r, n) {
+ if ("string" == typeof t) {
+ if ("string" == typeof e ? (n = e, e = 0, r = this.length) : "string" == typeof r && (n = r, r = this.length), void 0 !== n && "string" != typeof n) throw new TypeError("encoding must be a string");
+ if ("string" == typeof n && !a.isEncoding(n)) throw new TypeError("Unknown encoding: " + n);
+ if (1 === t.length) {
+ var i = t.charCodeAt(0);
+ ("utf8" === n && i < 128 || "latin1" === n) && (t = i)
+ }
+ } else "number" == typeof t && (t &= 255);
+ if (e < 0 || this.length < e || this.length < r) throw new RangeError("Out of range index");
+ if (r <= e) return this;
+ var o;
+ if (e >>>= 0, r = void 0 === r ? this.length : r >>> 0, t || (t = 0), "number" == typeof t) for (o = e; o < r; ++o) this[o] = t;
+ else {
+ var s = a.isBuffer(t) ? t : a.from(t, n),
+ f = s.length;
+ if (0 === f) throw new TypeError('The value "' + t + '" is invalid for argument "value"');
+ for (o = 0; o < r - e; ++o) this[o + e] = s[o % f]
+ }
+ return this
+ };
+ var C = /[^+/0-9A-Za-z-_]/g;
+
+ function U(t, e) {
+ var r;
+ e = e || 1 / 0;
+ for (var n = t.length, i = null, o = [], s = 0; s < n; ++s) {
+ if ((r = t.charCodeAt(s)) > 55295 && r < 57344) {
+ if (!i) {
+ if (r > 56319) {
+ (e -= 3) > -1 && o.push(239, 191, 189);
+ continue
+ }
+ if (s + 1 === n) {
+ (e -= 3) > -1 && o.push(239, 191, 189);
+ continue
+ }
+ i = r;
+ continue
+ }
+ if (r < 56320) {
+ (e -= 3) > -1 && o.push(239, 191, 189), i = r;
+ continue
+ }
+ r = 65536 + (i - 55296 << 10 | r - 56320)
+ } else i && (e -= 3) > -1 && o.push(239, 191, 189);
+ if (i = null, r < 128) {
+ if ((e -= 1) < 0) break;
+ o.push(r)
+ } else if (r < 2048) {
+ if ((e -= 2) < 0) break;
+ o.push(r >> 6 | 192, 63 & r | 128)
+ } else if (r < 65536) {
+ if ((e -= 3) < 0) break;
+ o.push(r >> 12 | 224, r >> 6 & 63 | 128, 63 & r | 128)
+ } else {
+ if (!(r < 1114112)) throw new Error("Invalid code point");
+ if ((e -= 4) < 0) break;
+ o.push(r >> 18 | 240, r >> 12 & 63 | 128, r >> 6 & 63 | 128, 63 & r | 128)
+ }
+ }
+ return o
+ }
+ function M(t) {
+ return n.toByteArray(function(t) {
+ if ((t = (t = t.split("=")[0])
+ .trim()
+ .replace(C, ""))
+ .length < 2) return "";
+ for (; t.length % 4 != 0;) t += "=";
+ return t
+ }(t))
+ }
+ function j(t, e, r, n) {
+ for (var i = 0; i < n && !(i + r >= e.length || i >= t.length); ++i) e[i + r] = t[i];
+ return i
+ }
+ function H(t, e) {
+ return t instanceof e || null != t && null != t.constructor && null != t.constructor.name && t.constructor.name === e.name
+ }
+ function F(t) {
+ return t != t
+ }
+ },
+ 8075: (t, e, r) => {
+ "use strict";
+ var n = r(453),
+ i = r(487),
+ o = i(n("String.prototype.indexOf"));
+ t.exports = function(t, e) {
+ var r = n(t, !! e);
+ return "function" == typeof r && o(t, ".prototype.") > -1 ? i(r) : r
+ }
+ },
+ 487: (t, e, r) => {
+ "use strict";
+ var n = r(6743),
+ i = r(453),
+ o = r(6897),
+ s = r(9675),
+ a = i("%Function.prototype.apply%"),
+ f = i("%Function.prototype.call%"),
+ u = i("%Reflect.apply%", !0) || n.call(f, a),
+ c = r(655),
+ h = i("%Math.max%");
+ t.exports = function(t) {
+ if ("function" != typeof t) throw new s("a function is required");
+ var e = u(n, f, arguments);
+ return o(e, 1 + h(0, t.length - (arguments.length - 1)), !0)
+ };
+ var p = function() {
+ return u(n, a, arguments)
+ };
+ c ? c(t.exports, "apply", {
+ value: p
+ }) : t.exports.apply = p
+ },
+ 955: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() {
+ var t = n,
+ e = t.lib.BlockCipher,
+ r = t.algo,
+ i = [],
+ o = [],
+ s = [],
+ a = [],
+ f = [],
+ u = [],
+ c = [],
+ h = [],
+ p = [],
+ l = [];
+ ! function() {
+ for (var t = [], e = 0; e < 256; e++) t[e] = e < 128 ? e << 1 : e << 1 ^ 283;
+ var r = 0,
+ n = 0;
+ for (e = 0; e < 256; e++) {
+ var y = n ^ n << 1 ^ n << 2 ^ n << 3 ^ n << 4;
+ y = y >>> 8 ^ 255 & y ^ 99, i[r] = y, o[y] = r;
+ var g = t[r],
+ d = t[g],
+ v = t[d],
+ m = 257 * t[y] ^ 16843008 * y;
+ s[r] = m << 24 | m >>> 8, a[r] = m << 16 | m >>> 16, f[r] = m << 8 | m >>> 24, u[r] = m, m = 16843009 * v ^ 65537 * d ^ 257 * g ^ 16843008 * r, c[y] = m << 24 | m >>> 8, h[y] = m << 16 | m >>> 16, p[y] = m << 8 | m >>> 24, l[y] = m, r ? (r = g ^ t[t[t[v ^ g]]], n ^= t[t[n]]) : r = n = 1
+ }
+ }();
+ var y = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54],
+ g = r.AES = e.extend({
+ _doReset: function() {
+ if (!this._nRounds || this._keyPriorReset !== this._key) {
+ for (var t = this._keyPriorReset = this._key, e = t.words, r = t.sigBytes / 4, n = 4 * ((this._nRounds = r + 6) + 1), o = this._keySchedule = [], s = 0; s < n; s++) if (s < r) o[s] = e[s];
+ else {
+ var a = o[s - 1];
+ s % r ? r > 6 && s % r == 4 && (a = i[a >>> 24] << 24 | i[a >>> 16 & 255] << 16 | i[a >>> 8 & 255] << 8 | i[255 & a]) : (a = i[(a = a << 8 | a >>> 24) >>> 24] << 24 | i[a >>> 16 & 255] << 16 | i[a >>> 8 & 255] << 8 | i[255 & a], a ^= y[s / r | 0] << 24), o[s] = o[s - r] ^ a
+ }
+ for (var f = this._invKeySchedule = [], u = 0; u < n; u++) s = n - u, a = u % 4 ? o[s] : o[s - 4], f[u] = u < 4 || s <= 4 ? a : c[i[a >>> 24]] ^ h[i[a >>> 16 & 255]] ^ p[i[a >>> 8 & 255]] ^ l[i[255 & a]]
+ }
+ },
+ encryptBlock: function(t, e) {
+ this._doCryptBlock(t, e, this._keySchedule, s, a, f, u, i)
+ },
+ decryptBlock: function(t, e) {
+ var r = t[e + 1];
+ t[e + 1] = t[e + 3], t[e + 3] = r, this._doCryptBlock(t, e, this._invKeySchedule, c, h, p, l, o), r = t[e + 1], t[e + 1] = t[e + 3], t[e + 3] = r
+ },
+ _doCryptBlock: function(t, e, r, n, i, o, s, a) {
+ for (var f = this._nRounds, u = t[e] ^ r[0], c = t[e + 1] ^ r[1], h = t[e + 2] ^ r[2], p = t[e + 3] ^ r[3], l = 4, y = 1; y < f; y++) {
+ var g = n[u >>> 24] ^ i[c >>> 16 & 255] ^ o[h >>> 8 & 255] ^ s[255 & p] ^ r[l++],
+ d = n[c >>> 24] ^ i[h >>> 16 & 255] ^ o[p >>> 8 & 255] ^ s[255 & u] ^ r[l++],
+ v = n[h >>> 24] ^ i[p >>> 16 & 255] ^ o[u >>> 8 & 255] ^ s[255 & c] ^ r[l++],
+ m = n[p >>> 24] ^ i[u >>> 16 & 255] ^ o[c >>> 8 & 255] ^ s[255 & h] ^ r[l++];
+ u = g, c = d, h = v, p = m
+ }
+ g = (a[u >>> 24] << 24 | a[c >>> 16 & 255] << 16 | a[h >>> 8 & 255] << 8 | a[255 & p]) ^ r[l++], d = (a[c >>> 24] << 24 | a[h >>> 16 & 255] << 16 | a[p >>> 8 & 255] << 8 | a[255 & u]) ^ r[l++], v = (a[h >>> 24] << 24 | a[p >>> 16 & 255] << 16 | a[u >>> 8 & 255] << 8 | a[255 & c]) ^ r[l++], m = (a[p >>> 24] << 24 | a[u >>> 16 & 255] << 16 | a[c >>> 8 & 255] << 8 | a[255 & h]) ^ r[l++], t[e] = g, t[e + 1] = d, t[e + 2] = v, t[e + 3] = m
+ },
+ keySize: 8
+ });
+ t.AES = e._createHelper(g)
+ }(), n.AES)
+ },
+ 7165: function(t, e, r) {
+ var n, i, o, s, a, f, u, c, h, p, l, y, g, d, v, m, S, _, b;
+ t.exports = (n = r(9021), r(9506), void(n.lib.Cipher || (i = n, o = i.lib, s = o.Base, a = o.WordArray, f = o.BufferedBlockAlgorithm, u = i.enc, u.Utf8, c = u.Base64, h = i.algo.EvpKDF, p = o.Cipher = f.extend({
+ cfg: s.extend(),
+ createEncryptor: function(t, e) {
+ return this.create(this._ENC_XFORM_MODE, t, e)
+ },
+ createDecryptor: function(t, e) {
+ return this.create(this._DEC_XFORM_MODE, t, e)
+ },
+ init: function(t, e, r) {
+ this.cfg = this.cfg.extend(r), this._xformMode = t, this._key = e, this.reset()
+ },
+ reset: function() {
+ f.reset.call(this), this._doReset()
+ },
+ process: function(t) {
+ return this._append(t), this._process()
+ },
+ finalize: function(t) {
+ return t && this._append(t), this._doFinalize()
+ },
+ keySize: 4,
+ ivSize: 4,
+ _ENC_XFORM_MODE: 1,
+ _DEC_XFORM_MODE: 2,
+ _createHelper: function() {
+ function t(t) {
+ return "string" == typeof t ? b : S
+ }
+ return function(e) {
+ return {
+ encrypt: function(r, n, i) {
+ return t(n)
+ .encrypt(e, r, n, i)
+ },
+ decrypt: function(r, n, i) {
+ return t(n)
+ .decrypt(e, r, n, i)
+ }
+ }
+ }
+ }()
+ }), o.StreamCipher = p.extend({
+ _doFinalize: function() {
+ return this._process(!0)
+ },
+ blockSize: 1
+ }), l = i.mode = {}, y = o.BlockCipherMode = s.extend({
+ createEncryptor: function(t, e) {
+ return this.Encryptor.create(t, e)
+ },
+ createDecryptor: function(t, e) {
+ return this.Decryptor.create(t, e)
+ },
+ init: function(t, e) {
+ this._cipher = t, this._iv = e
+ }
+ }), g = l.CBC = function() {
+ var t = y.extend();
+
+ function e(t, e, r) {
+ var n = this._iv;
+ if (n) {
+ var i = n;
+ this._iv = void 0
+ } else i = this._prevBlock;
+ for (var o = 0; o < r; o++) t[e + o] ^= i[o]
+ }
+ return t.Encryptor = t.extend({
+ processBlock: function(t, r) {
+ var n = this._cipher,
+ i = n.blockSize;
+ e.call(this, t, r, i), n.encryptBlock(t, r), this._prevBlock = t.slice(r, r + i)
+ }
+ }), t.Decryptor = t.extend({
+ processBlock: function(t, r) {
+ var n = this._cipher,
+ i = n.blockSize,
+ o = t.slice(r, r + i);
+ n.decryptBlock(t, r), e.call(this, t, r, i), this._prevBlock = o
+ }
+ }), t
+ }(), d = (i.pad = {})
+ .Pkcs7 = {
+ pad: function(t, e) {
+ for (var r = 4 * e, n = r - t.sigBytes % r, i = n << 24 | n << 16 | n << 8 | n, o = [], s = 0; s < n; s += 4) o.push(i);
+ var f = a.create(o, n);
+ t.concat(f)
+ },
+ unpad: function(t) {
+ var e = 255 & t.words[t.sigBytes - 1 >>> 2];
+ t.sigBytes -= e
+ }
+ }, o.BlockCipher = p.extend({
+ cfg: p.cfg.extend({
+ mode: g,
+ padding: d
+ }),
+ reset: function() {
+ p.reset.call(this);
+ var t = this.cfg,
+ e = t.iv,
+ r = t.mode;
+ if (this._xformMode == this._ENC_XFORM_MODE) var n = r.createEncryptor;
+ else n = r.createDecryptor, this._minBufferSize = 1;
+ this._mode && this._mode.__creator == n ? this._mode.init(this, e && e.words) : (this._mode = n.call(r, this, e && e.words), this._mode.__creator = n)
+ },
+ _doProcessBlock: function(t, e) {
+ this._mode.processBlock(t, e)
+ },
+ _doFinalize: function() {
+ var t = this.cfg.padding;
+ if (this._xformMode == this._ENC_XFORM_MODE) {
+ t.pad(this._data, this.blockSize);
+ var e = this._process(!0)
+ } else e = this._process(!0), t.unpad(e);
+ return e
+ },
+ blockSize: 4
+ }), v = o.CipherParams = s.extend({
+ init: function(t) {
+ this.mixIn(t)
+ },
+ toString: function(t) {
+ return (t || this.formatter)
+ .stringify(this)
+ }
+ }), m = (i.format = {})
+ .OpenSSL = {
+ stringify: function(t) {
+ var e = t.ciphertext,
+ r = t.salt;
+ if (r) var n = a.create([1398893684, 1701076831])
+ .concat(r)
+ .concat(e);
+ else n = e;
+ return n.toString(c)
+ },
+ parse: function(t) {
+ var e = c.parse(t),
+ r = e.words;
+ if (1398893684 == r[0] && 1701076831 == r[1]) {
+ var n = a.create(r.slice(2, 4));
+ r.splice(0, 4), e.sigBytes -= 16
+ }
+ return v.create({
+ ciphertext: e,
+ salt: n
+ })
+ }
+ }, S = o.SerializableCipher = s.extend({
+ cfg: s.extend({
+ format: m
+ }),
+ encrypt: function(t, e, r, n) {
+ n = this.cfg.extend(n);
+ var i = t.createEncryptor(r, n),
+ o = i.finalize(e),
+ s = i.cfg;
+ return v.create({
+ ciphertext: o,
+ key: r,
+ iv: s.iv,
+ algorithm: t,
+ mode: s.mode,
+ padding: s.padding,
+ blockSize: t.blockSize,
+ formatter: n.format
+ })
+ },
+ decrypt: function(t, e, r, n) {
+ return n = this.cfg.extend(n), e = this._parse(e, n.format), t.createDecryptor(r, n)
+ .finalize(e.ciphertext)
+ },
+ _parse: function(t, e) {
+ return "string" == typeof t ? e.parse(t, this) : t
+ }
+ }), _ = (i.kdf = {})
+ .OpenSSL = {
+ execute: function(t, e, r, n) {
+ n || (n = a.random(8));
+ var i = h.create({
+ keySize: e + r
+ })
+ .compute(t, n),
+ o = a.create(i.words.slice(e), 4 * r);
+ return i.sigBytes = 4 * e, v.create({
+ key: i,
+ iv: o,
+ salt: n
+ })
+ }
+ }, b = o.PasswordBasedCipher = S.extend({
+ cfg: S.cfg.extend({
+ kdf: _
+ }),
+ encrypt: function(t, e, r, n) {
+ var i = (n = this.cfg.extend(n))
+ .kdf.execute(r, t.keySize, t.ivSize);
+ n.iv = i.iv;
+ var o = S.encrypt.call(this, t, e, i.key, n);
+ return o.mixIn(i), o
+ },
+ decrypt: function(t, e, r, n) {
+ n = this.cfg.extend(n), e = this._parse(e, n.format);
+ var i = n.kdf.execute(r, t.keySize, t.ivSize, e.salt);
+ return n.iv = i.iv, S.decrypt.call(this, t, e, i.key, n)
+ }
+ }))))
+ },
+ 9021: function(t, e) {
+ var r;
+ t.exports = (r = r || function(t, e) {
+ var r = Object.create || function() {
+ function t() {}
+ return function(e) {
+ var r;
+ return t.prototype = e, r = new t, t.prototype = null, r
+ }
+ }(),
+ n = {}, i = n.lib = {}, o = i.Base = {
+ extend: function(t) {
+ var e = r(this);
+ return t && e.mixIn(t), e.hasOwnProperty("init") && this.init !== e.init || (e.init = function() {
+ e.$super.init.apply(this, arguments)
+ }), e.init.prototype = e, e.$super = this, e
+ },
+ create: function() {
+ var t = this.extend();
+ return t.init.apply(t, arguments), t
+ },
+ init: function() {},
+ mixIn: function(t) {
+ for (var e in t) t.hasOwnProperty(e) && (this[e] = t[e]);
+ t.hasOwnProperty("toString") && (this.toString = t.toString)
+ },
+ clone: function() {
+ return this.init.prototype.extend(this)
+ }
+ }, s = i.WordArray = o.extend({
+ init: function(t, e) {
+ t = this.words = t || [], this.sigBytes = null != e ? e : 4 * t.length
+ },
+ toString: function(t) {
+ return (t || f)
+ .stringify(this)
+ },
+ concat: function(t) {
+ var e = this.words,
+ r = t.words,
+ n = this.sigBytes,
+ i = t.sigBytes;
+ if (this.clamp(), n % 4) for (var o = 0; o < i; o++) {
+ var s = r[o >>> 2] >>> 24 - o % 4 * 8 & 255;
+ e[n + o >>> 2] |= s << 24 - (n + o) % 4 * 8
+ } else for (o = 0; o < i; o += 4) e[n + o >>> 2] = r[o >>> 2];
+ return this.sigBytes += i, this
+ },
+ clamp: function() {
+ var e = this.words,
+ r = this.sigBytes;
+ e[r >>> 2] &= 4294967295 << 32 - r % 4 * 8, e.length = t.ceil(r / 4)
+ },
+ clone: function() {
+ var t = o.clone.call(this);
+ return t.words = this.words.slice(0), t
+ },
+ random: function(e) {
+ for (var r, n = [], i = function(e) {
+ var r = 987654321,
+ n = 4294967295;
+ return function() {
+ var i = ((r = 36969 * (65535 & r) + (r >> 16) & n) << 16) + (e = 18e3 * (65535 & e) + (e >> 16) & n) & n;
+ return i /= 4294967296, (i += .5) * (t.random() > .5 ? 1 : -1)
+ }
+ }, o = 0; o < e; o += 4) {
+ var a = i(4294967296 * (r || t.random()));
+ r = 987654071 * a(), n.push(4294967296 * a() | 0)
+ }
+ return new s.init(n, e)
+ }
+ }),
+ a = n.enc = {}, f = a.Hex = {
+ stringify: function(t) {
+ for (var e = t.words, r = t.sigBytes, n = [], i = 0; i < r; i++) {
+ var o = e[i >>> 2] >>> 24 - i % 4 * 8 & 255;
+ n.push((o >>> 4)
+ .toString(16)), n.push((15 & o)
+ .toString(16))
+ }
+ return n.join("")
+ },
+ parse: function(t) {
+ for (var e = t.length, r = [], n = 0; n < e; n += 2) r[n >>> 3] |= parseInt(t.substr(n, 2), 16) << 24 - n % 8 * 4;
+ return new s.init(r, e / 2)
+ }
+ }, u = a.Latin1 = {
+ stringify: function(t) {
+ for (var e = t.words, r = t.sigBytes, n = [], i = 0; i < r; i++) {
+ var o = e[i >>> 2] >>> 24 - i % 4 * 8 & 255;
+ n.push(String.fromCharCode(o))
+ }
+ return n.join("")
+ },
+ parse: function(t) {
+ for (var e = t.length, r = [], n = 0; n < e; n++) r[n >>> 2] |= (255 & t.charCodeAt(n)) << 24 - n % 4 * 8;
+ return new s.init(r, e)
+ }
+ }, c = a.Utf8 = {
+ stringify: function(t) {
+ try {
+ return decodeURIComponent(escape(u.stringify(t)))
+ } catch (t) {
+ throw new Error("Malformed UTF-8 data")
+ }
+ },
+ parse: function(t) {
+ return u.parse(unescape(encodeURIComponent(t)))
+ }
+ }, h = i.BufferedBlockAlgorithm = o.extend({
+ reset: function() {
+ this._data = new s.init, this._nDataBytes = 0
+ },
+ _append: function(t) {
+ "string" == typeof t && (t = c.parse(t)), this._data.concat(t), this._nDataBytes += t.sigBytes
+ },
+ _process: function(e) {
+ var r = this._data,
+ n = r.words,
+ i = r.sigBytes,
+ o = this.blockSize,
+ a = i / (4 * o),
+ f = (a = e ? t.ceil(a) : t.max((0 | a) - this._minBufferSize, 0)) * o,
+ u = t.min(4 * f, i);
+ if (f) {
+ for (var c = 0; c < f; c += o) this._doProcessBlock(n, c);
+ var h = n.splice(0, f);
+ r.sigBytes -= u
+ }
+ return new s.init(h, u)
+ },
+ clone: function() {
+ var t = o.clone.call(this);
+ return t._data = this._data.clone(), t
+ },
+ _minBufferSize: 0
+ }),
+ p = (i.Hasher = h.extend({
+ cfg: o.extend(),
+ init: function(t) {
+ this.cfg = this.cfg.extend(t), this.reset()
+ },
+ reset: function() {
+ h.reset.call(this), this._doReset()
+ },
+ update: function(t) {
+ return this._append(t), this._process(), this
+ },
+ finalize: function(t) {
+ return t && this._append(t), this._doFinalize()
+ },
+ blockSize: 16,
+ _createHelper: function(t) {
+ return function(e, r) {
+ return new t.init(r)
+ .finalize(e)
+ }
+ },
+ _createHmacHelper: function(t) {
+ return function(e, r) {
+ return new p.HMAC.init(t, r)
+ .finalize(e)
+ }
+ }
+ }), n.algo = {});
+ return n
+ }(Math), r)
+ },
+ 754: function(t, e, r) {
+ var n, i, o;
+ t.exports = (n = r(9021), o = (i = n)
+ .lib.WordArray, i.enc.Base64 = {
+ stringify: function(t) {
+ var e = t.words,
+ r = t.sigBytes,
+ n = this._map;
+ t.clamp();
+ for (var i = [], o = 0; o < r; o += 3) for (var s = (e[o >>> 2] >>> 24 - o % 4 * 8 & 255) << 16 | (e[o + 1 >>> 2] >>> 24 - (o + 1) % 4 * 8 & 255) << 8 | e[o + 2 >>> 2] >>> 24 - (o + 2) % 4 * 8 & 255, a = 0; a < 4 && o + .75 * a < r; a++) i.push(n.charAt(s >>> 6 * (3 - a) & 63));
+ var f = n.charAt(64);
+ if (f) for (; i.length % 4;) i.push(f);
+ return i.join("")
+ },
+ parse: function(t) {
+ var e = t.length,
+ r = this._map,
+ n = this._reverseMap;
+ if (!n) {
+ n = this._reverseMap = [];
+ for (var i = 0; i < r.length; i++) n[r.charCodeAt(i)] = i
+ }
+ var s = r.charAt(64);
+ if (s) {
+ var a = t.indexOf(s); - 1 !== a && (e = a)
+ }
+ return function(t, e, r) {
+ for (var n = [], i = 0, s = 0; s < e; s++) if (s % 4) {
+ var a = r[t.charCodeAt(s - 1)] << s % 4 * 2,
+ f = r[t.charCodeAt(s)] >>> 6 - s % 4 * 2;
+ n[i >>> 2] |= (a | f) << 24 - i % 4 * 8, i++
+ }
+ return o.create(n, i)
+ }(t, e, n)
+ },
+ _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
+ }, n.enc.Base64)
+ },
+ 5503: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), function() {
+ var t = n,
+ e = t.lib.WordArray,
+ r = t.enc;
+
+ function i(t) {
+ return t << 8 & 4278255360 | t >>> 8 & 16711935
+ }
+ r.Utf16 = r.Utf16BE = {
+ stringify: function(t) {
+ for (var e = t.words, r = t.sigBytes, n = [], i = 0; i < r; i += 2) {
+ var o = e[i >>> 2] >>> 16 - i % 4 * 8 & 65535;
+ n.push(String.fromCharCode(o))
+ }
+ return n.join("")
+ },
+ parse: function(t) {
+ for (var r = t.length, n = [], i = 0; i < r; i++) n[i >>> 1] |= t.charCodeAt(i) << 16 - i % 2 * 16;
+ return e.create(n, 2 * r)
+ }
+ }, r.Utf16LE = {
+ stringify: function(t) {
+ for (var e = t.words, r = t.sigBytes, n = [], o = 0; o < r; o += 2) {
+ var s = i(e[o >>> 2] >>> 16 - o % 4 * 8 & 65535);
+ n.push(String.fromCharCode(s))
+ }
+ return n.join("")
+ },
+ parse: function(t) {
+ for (var r = t.length, n = [], o = 0; o < r; o++) n[o >>> 1] |= i(t.charCodeAt(o) << 16 - o % 2 * 16);
+ return e.create(n, 2 * r)
+ }
+ }
+ }(), n.enc.Utf16)
+ },
+ 9506: function(t, e, r) {
+ var n, i, o, s, a, f, u, c;
+ t.exports = (c = r(9021), r(5471), r(1025), o = (i = (n = c)
+ .lib)
+ .Base, s = i.WordArray, f = (a = n.algo)
+ .MD5, u = a.EvpKDF = o.extend({
+ cfg: o.extend({
+ keySize: 4,
+ hasher: f,
+ iterations: 1
+ }),
+ init: function(t) {
+ this.cfg = this.cfg.extend(t)
+ },
+ compute: function(t, e) {
+ for (var r = this.cfg, n = r.hasher.create(), i = s.create(), o = i.words, a = r.keySize, f = r.iterations; o.length < a;) {
+ u && n.update(u);
+ var u = n.update(t)
+ .finalize(e);
+ n.reset();
+ for (var c = 1; c < f; c++) u = n.finalize(u), n.reset();
+ i.concat(u)
+ }
+ return i.sigBytes = 4 * a, i
+ }
+ }), n.EvpKDF = function(t, e, r) {
+ return u.create(r)
+ .compute(t, e)
+ }, c.EvpKDF)
+ },
+ 25: function(t, e, r) {
+ var n, i, o, s;
+ t.exports = (s = r(9021), r(7165), i = (n = s)
+ .lib.CipherParams, o = n.enc.Hex, n.format.Hex = {
+ stringify: function(t) {
+ return t.ciphertext.toString(o)
+ },
+ parse: function(t) {
+ var e = o.parse(t);
+ return i.create({
+ ciphertext: e
+ })
+ }
+ }, s.format.Hex)
+ },
+ 1025: function(t, e, r) {
+ var n, i, o;
+ t.exports = (i = (n = r(9021))
+ .lib.Base, o = n.enc.Utf8, void(n.algo.HMAC = i.extend({
+ init: function(t, e) {
+ t = this._hasher = new t.init, "string" == typeof e && (e = o.parse(e));
+ var r = t.blockSize,
+ n = 4 * r;
+ e.sigBytes > n && (e = t.finalize(e)), e.clamp();
+ for (var i = this._oKey = e.clone(), s = this._iKey = e.clone(), a = i.words, f = s.words, u = 0; u < r; u++) a[u] ^= 1549556828, f[u] ^= 909522486;
+ i.sigBytes = s.sigBytes = n, this.reset()
+ },
+ reset: function() {
+ var t = this._hasher;
+ t.reset(), t.update(this._iKey)
+ },
+ update: function(t) {
+ return this._hasher.update(t), this
+ },
+ finalize: function(t) {
+ var e = this._hasher,
+ r = e.finalize(t);
+ return e.reset(), e.finalize(this._oKey.clone()
+ .concat(r))
+ }
+ })))
+ },
+ 1396: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(3240), r(6440), r(5503), r(754), r(4636), r(5471), r(3009), r(6308), r(1380), r(9557), r(5953), r(8056), r(1025), r(19), r(9506), r(7165), r(2169), r(6939), r(6372), r(3797), r(8454), r(2073), r(4905), r(482), r(2155), r(8124), r(25), r(955), r(7628), r(7193), r(6298), r(2696), n)
+ },
+ 6440: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), function() {
+ if ("function" == typeof ArrayBuffer) {
+ var t = n.lib.WordArray,
+ e = t.init,
+ r = t.init = function(t) {
+ if (t instanceof ArrayBuffer && (t = new Uint8Array(t)), (t instanceof Int8Array || "undefined" != typeof Uint8ClampedArray && t instanceof Uint8ClampedArray || t instanceof Int16Array || t instanceof Uint16Array || t instanceof Int32Array || t instanceof Uint32Array || t instanceof Float32Array || t instanceof Float64Array) && (t = new Uint8Array(t.buffer, t.byteOffset, t.byteLength)), t instanceof Uint8Array) {
+ for (var r = t.byteLength, n = [], i = 0; i < r; i++) n[i >>> 2] |= t[i] << 24 - i % 4 * 8;
+ e.call(this, n, r)
+ } else e.apply(this, arguments)
+ };
+ r.prototype = t
+ }
+ }(), n.lib.WordArray)
+ },
+ 4636: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), function(t) {
+ var e = n,
+ r = e.lib,
+ i = r.WordArray,
+ o = r.Hasher,
+ s = e.algo,
+ a = [];
+ ! function() {
+ for (var e = 0; e < 64; e++) a[e] = 4294967296 * t.abs(t.sin(e + 1)) | 0
+ }();
+ var f = s.MD5 = o.extend({
+ _doReset: function() {
+ this._hash = new i.init([1732584193, 4023233417, 2562383102, 271733878])
+ },
+ _doProcessBlock: function(t, e) {
+ for (var r = 0; r < 16; r++) {
+ var n = e + r,
+ i = t[n];
+ t[n] = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8)
+ }
+ var o = this._hash.words,
+ s = t[e + 0],
+ f = t[e + 1],
+ l = t[e + 2],
+ y = t[e + 3],
+ g = t[e + 4],
+ d = t[e + 5],
+ v = t[e + 6],
+ m = t[e + 7],
+ S = t[e + 8],
+ _ = t[e + 9],
+ b = t[e + 10],
+ E = t[e + 11],
+ w = t[e + 12],
+ O = t[e + 13],
+ B = t[e + 14],
+ A = t[e + 15],
+ x = o[0],
+ P = o[1],
+ T = o[2],
+ I = o[3];
+ x = u(x, P, T, I, s, 7, a[0]), I = u(I, x, P, T, f, 12, a[1]), T = u(T, I, x, P, l, 17, a[2]), P = u(P, T, I, x, y, 22, a[3]), x = u(x, P, T, I, g, 7, a[4]), I = u(I, x, P, T, d, 12, a[5]), T = u(T, I, x, P, v, 17, a[6]), P = u(P, T, I, x, m, 22, a[7]), x = u(x, P, T, I, S, 7, a[8]), I = u(I, x, P, T, _, 12, a[9]), T = u(T, I, x, P, b, 17, a[10]), P = u(P, T, I, x, E, 22, a[11]), x = u(x, P, T, I, w, 7, a[12]), I = u(I, x, P, T, O, 12, a[13]), T = u(T, I, x, P, B, 17, a[14]), x = c(x, P = u(P, T, I, x, A, 22, a[15]), T, I, f, 5, a[16]), I = c(I, x, P, T, v, 9, a[17]), T = c(T, I, x, P, E, 14, a[18]), P = c(P, T, I, x, s, 20, a[19]), x = c(x, P, T, I, d, 5, a[20]), I = c(I, x, P, T, b, 9, a[21]), T = c(T, I, x, P, A, 14, a[22]), P = c(P, T, I, x, g, 20, a[23]), x = c(x, P, T, I, _, 5, a[24]), I = c(I, x, P, T, B, 9, a[25]), T = c(T, I, x, P, y, 14, a[26]), P = c(P, T, I, x, S, 20, a[27]), x = c(x, P, T, I, O, 5, a[28]), I = c(I, x, P, T, l, 9, a[29]), T = c(T, I, x, P, m, 14, a[30]), x = h(x, P = c(P, T, I, x, w, 20, a[31]), T, I, d, 4, a[32]), I = h(I, x, P, T, S, 11, a[33]), T = h(T, I, x, P, E, 16, a[34]), P = h(P, T, I, x, B, 23, a[35]), x = h(x, P, T, I, f, 4, a[36]), I = h(I, x, P, T, g, 11, a[37]), T = h(T, I, x, P, m, 16, a[38]), P = h(P, T, I, x, b, 23, a[39]), x = h(x, P, T, I, O, 4, a[40]), I = h(I, x, P, T, s, 11, a[41]), T = h(T, I, x, P, y, 16, a[42]), P = h(P, T, I, x, v, 23, a[43]), x = h(x, P, T, I, _, 4, a[44]), I = h(I, x, P, T, w, 11, a[45]), T = h(T, I, x, P, A, 16, a[46]), x = p(x, P = h(P, T, I, x, l, 23, a[47]), T, I, s, 6, a[48]), I = p(I, x, P, T, m, 10, a[49]), T = p(T, I, x, P, B, 15, a[50]), P = p(P, T, I, x, d, 21, a[51]), x = p(x, P, T, I, w, 6, a[52]), I = p(I, x, P, T, y, 10, a[53]), T = p(T, I, x, P, b, 15, a[54]), P = p(P, T, I, x, f, 21, a[55]), x = p(x, P, T, I, S, 6, a[56]), I = p(I, x, P, T, A, 10, a[57]), T = p(T, I, x, P, v, 15, a[58]), P = p(P, T, I, x, O, 21, a[59]), x = p(x, P, T, I, g, 6, a[60]), I = p(I, x, P, T, E, 10, a[61]), T = p(T, I, x, P, l, 15, a[62]), P = p(P, T, I, x, _, 21, a[63]), o[0] = o[0] + x | 0, o[1] = o[1] + P | 0, o[2] = o[2] + T | 0, o[3] = o[3] + I | 0
+ },
+ _doFinalize: function() {
+ var e = this._data,
+ r = e.words,
+ n = 8 * this._nDataBytes,
+ i = 8 * e.sigBytes;
+ r[i >>> 5] |= 128 << 24 - i % 32;
+ var o = t.floor(n / 4294967296),
+ s = n;
+ r[15 + (i + 64 >>> 9 << 4)] = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), r[14 + (i + 64 >>> 9 << 4)] = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), e.sigBytes = 4 * (r.length + 1), this._process();
+ for (var a = this._hash, f = a.words, u = 0; u < 4; u++) {
+ var c = f[u];
+ f[u] = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8)
+ }
+ return a
+ },
+ clone: function() {
+ var t = o.clone.call(this);
+ return t._hash = this._hash.clone(), t
+ }
+ });
+
+ function u(t, e, r, n, i, o, s) {
+ var a = t + (e & r | ~e & n) + i + s;
+ return (a << o | a >>> 32 - o) + e
+ }
+ function c(t, e, r, n, i, o, s) {
+ var a = t + (e & n | r & ~n) + i + s;
+ return (a << o | a >>> 32 - o) + e
+ }
+ function h(t, e, r, n, i, o, s) {
+ var a = t + (e ^ r ^ n) + i + s;
+ return (a << o | a >>> 32 - o) + e
+ }
+ function p(t, e, r, n, i, o, s) {
+ var a = t + (r ^ (e | ~n)) + i + s;
+ return (a << o | a >>> 32 - o) + e
+ }
+ e.MD5 = o._createHelper(f), e.HmacMD5 = o._createHmacHelper(f)
+ }(Math), n.MD5)
+ },
+ 2169: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(7165), n.mode.CFB = function() {
+ var t = n.lib.BlockCipherMode.extend();
+
+ function e(t, e, r, n) {
+ var i = this._iv;
+ if (i) {
+ var o = i.slice(0);
+ this._iv = void 0
+ } else o = this._prevBlock;
+ n.encryptBlock(o, 0);
+ for (var s = 0; s < r; s++) t[e + s] ^= o[s]
+ }
+ return t.Encryptor = t.extend({
+ processBlock: function(t, r) {
+ var n = this._cipher,
+ i = n.blockSize;
+ e.call(this, t, r, i, n), this._prevBlock = t.slice(r, r + i)
+ }
+ }), t.Decryptor = t.extend({
+ processBlock: function(t, r) {
+ var n = this._cipher,
+ i = n.blockSize,
+ o = t.slice(r, r + i);
+ e.call(this, t, r, i, n), this._prevBlock = o
+ }
+ }), t
+ }(), n.mode.CFB)
+ },
+ 6372: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(7165), n.mode.CTRGladman = function() {
+ var t = n.lib.BlockCipherMode.extend();
+
+ function e(t) {
+ if (255 & ~ (t >> 24)) t += 1 << 24;
+ else {
+ var e = t >> 16 & 255,
+ r = t >> 8 & 255,
+ n = 255 & t;
+ 255 === e ? (e = 0, 255 === r ? (r = 0, 255 === n ? n = 0 : ++n) : ++r) : ++e, t = 0, t += e << 16, t += r << 8, t += n
+ }
+ return t
+ }
+ var r = t.Encryptor = t.extend({
+ processBlock: function(t, r) {
+ var n = this._cipher,
+ i = n.blockSize,
+ o = this._iv,
+ s = this._counter;
+ o && (s = this._counter = o.slice(0), this._iv = void 0),
+ function(t) {
+ 0 === (t[0] = e(t[0])) && (t[1] = e(t[1]))
+ }(s);
+ var a = s.slice(0);
+ n.encryptBlock(a, 0);
+ for (var f = 0; f < i; f++) t[r + f] ^= a[f]
+ }
+ });
+ return t.Decryptor = r, t
+ }(), n.mode.CTRGladman)
+ },
+ 6939: function(t, e, r) {
+ var n, i, o;
+ t.exports = (o = r(9021), r(7165), o.mode.CTR = (i = (n = o.lib.BlockCipherMode.extend())
+ .Encryptor = n.extend({
+ processBlock: function(t, e) {
+ var r = this._cipher,
+ n = r.blockSize,
+ i = this._iv,
+ o = this._counter;
+ i && (o = this._counter = i.slice(0), this._iv = void 0);
+ var s = o.slice(0);
+ r.encryptBlock(s, 0), o[n - 1] = o[n - 1] + 1 | 0;
+ for (var a = 0; a < n; a++) t[e + a] ^= s[a]
+ }
+ }), n.Decryptor = i, n), o.mode.CTR)
+ },
+ 8454: function(t, e, r) {
+ var n, i;
+ t.exports = (i = r(9021), r(7165), i.mode.ECB = ((n = i.lib.BlockCipherMode.extend())
+ .Encryptor = n.extend({
+ processBlock: function(t, e) {
+ this._cipher.encryptBlock(t, e)
+ }
+ }), n.Decryptor = n.extend({
+ processBlock: function(t, e) {
+ this._cipher.decryptBlock(t, e)
+ }
+ }), n), i.mode.ECB)
+ },
+ 3797: function(t, e, r) {
+ var n, i, o;
+ t.exports = (o = r(9021), r(7165), o.mode.OFB = (i = (n = o.lib.BlockCipherMode.extend())
+ .Encryptor = n.extend({
+ processBlock: function(t, e) {
+ var r = this._cipher,
+ n = r.blockSize,
+ i = this._iv,
+ o = this._keystream;
+ i && (o = this._keystream = i.slice(0), this._iv = void 0), r.encryptBlock(o, 0);
+ for (var s = 0; s < n; s++) t[e + s] ^= o[s]
+ }
+ }), n.Decryptor = i, n), o.mode.OFB)
+ },
+ 2073: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(7165), n.pad.AnsiX923 = {
+ pad: function(t, e) {
+ var r = t.sigBytes,
+ n = 4 * e,
+ i = n - r % n,
+ o = r + i - 1;
+ t.clamp(), t.words[o >>> 2] |= i << 24 - o % 4 * 8, t.sigBytes += i
+ },
+ unpad: function(t) {
+ var e = 255 & t.words[t.sigBytes - 1 >>> 2];
+ t.sigBytes -= e
+ }
+ }, n.pad.Ansix923)
+ },
+ 4905: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(7165), n.pad.Iso10126 = {
+ pad: function(t, e) {
+ var r = 4 * e,
+ i = r - t.sigBytes % r;
+ t.concat(n.lib.WordArray.random(i - 1))
+ .concat(n.lib.WordArray.create([i << 24], 1))
+ },
+ unpad: function(t) {
+ var e = 255 & t.words[t.sigBytes - 1 >>> 2];
+ t.sigBytes -= e
+ }
+ }, n.pad.Iso10126)
+ },
+ 482: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(7165), n.pad.Iso97971 = {
+ pad: function(t, e) {
+ t.concat(n.lib.WordArray.create([2147483648], 1)), n.pad.ZeroPadding.pad(t, e)
+ },
+ unpad: function(t) {
+ n.pad.ZeroPadding.unpad(t), t.sigBytes--
+ }
+ }, n.pad.Iso97971)
+ },
+ 8124: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(7165), n.pad.NoPadding = {
+ pad: function() {},
+ unpad: function() {}
+ }, n.pad.NoPadding)
+ },
+ 2155: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(7165), n.pad.ZeroPadding = {
+ pad: function(t, e) {
+ var r = 4 * e;
+ t.clamp(), t.sigBytes += r - (t.sigBytes % r || r)
+ },
+ unpad: function(t) {
+ for (var e = t.words, r = t.sigBytes - 1; !(e[r >>> 2] >>> 24 - r % 4 * 8 & 255);) r--;
+ t.sigBytes = r + 1
+ }
+ }, n.pad.ZeroPadding)
+ },
+ 19: function(t, e, r) {
+ var n, i, o, s, a, f, u, c, h;
+ t.exports = (h = r(9021), r(5471), r(1025), o = (i = (n = h)
+ .lib)
+ .Base, s = i.WordArray, f = (a = n.algo)
+ .SHA1, u = a.HMAC, c = a.PBKDF2 = o.extend({
+ cfg: o.extend({
+ keySize: 4,
+ hasher: f,
+ iterations: 1
+ }),
+ init: function(t) {
+ this.cfg = this.cfg.extend(t)
+ },
+ compute: function(t, e) {
+ for (var r = this.cfg, n = u.create(r.hasher, t), i = s.create(), o = s.create([1]), a = i.words, f = o.words, c = r.keySize, h = r.iterations; a.length < c;) {
+ var p = n.update(e)
+ .finalize(o);
+ n.reset();
+ for (var l = p.words, y = l.length, g = p, d = 1; d < h; d++) {
+ g = n.finalize(g), n.reset();
+ for (var v = g.words, m = 0; m < y; m++) l[m] ^= v[m]
+ }
+ i.concat(p), f[0]++
+ }
+ return i.sigBytes = 4 * c, i
+ }
+ }), n.PBKDF2 = function(t, e, r) {
+ return c.create(r)
+ .compute(t, e)
+ }, h.PBKDF2)
+ },
+ 2696: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() {
+ var t = n,
+ e = t.lib.StreamCipher,
+ r = t.algo,
+ i = [],
+ o = [],
+ s = [],
+ a = r.RabbitLegacy = e.extend({
+ _doReset: function() {
+ var t = this._key.words,
+ e = this.cfg.iv,
+ r = this._X = [t[0], t[3] << 16 | t[2] >>> 16, t[1], t[0] << 16 | t[3] >>> 16, t[2], t[1] << 16 | t[0] >>> 16, t[3], t[2] << 16 | t[1] >>> 16],
+ n = this._C = [t[2] << 16 | t[2] >>> 16, 4294901760 & t[0] | 65535 & t[1], t[3] << 16 | t[3] >>> 16, 4294901760 & t[1] | 65535 & t[2], t[0] << 16 | t[0] >>> 16, 4294901760 & t[2] | 65535 & t[3], t[1] << 16 | t[1] >>> 16, 4294901760 & t[3] | 65535 & t[0]];
+ this._b = 0;
+ for (var i = 0; i < 4; i++) f.call(this);
+ for (i = 0; i < 8; i++) n[i] ^= r[i + 4 & 7];
+ if (e) {
+ var o = e.words,
+ s = o[0],
+ a = o[1],
+ u = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8),
+ c = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8),
+ h = u >>> 16 | 4294901760 & c,
+ p = c << 16 | 65535 & u;
+ for (n[0] ^= u, n[1] ^= h, n[2] ^= c, n[3] ^= p, n[4] ^= u, n[5] ^= h, n[6] ^= c, n[7] ^= p, i = 0; i < 4; i++) f.call(this)
+ }
+ },
+ _doProcessBlock: function(t, e) {
+ var r = this._X;
+ f.call(this), i[0] = r[0] ^ r[5] >>> 16 ^ r[3] << 16, i[1] = r[2] ^ r[7] >>> 16 ^ r[5] << 16, i[2] = r[4] ^ r[1] >>> 16 ^ r[7] << 16, i[3] = r[6] ^ r[3] >>> 16 ^ r[1] << 16;
+ for (var n = 0; n < 4; n++) i[n] = 16711935 & (i[n] << 8 | i[n] >>> 24) | 4278255360 & (i[n] << 24 | i[n] >>> 8), t[e + n] ^= i[n]
+ },
+ blockSize: 4,
+ ivSize: 2
+ });
+
+ function f() {
+ for (var t = this._X, e = this._C, r = 0; r < 8; r++) o[r] = e[r];
+ for (e[0] = e[0] + 1295307597 + this._b | 0, e[1] = e[1] + 3545052371 + (e[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, e[2] = e[2] + 886263092 + (e[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, e[3] = e[3] + 1295307597 + (e[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, e[4] = e[4] + 3545052371 + (e[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, e[5] = e[5] + 886263092 + (e[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, e[6] = e[6] + 1295307597 + (e[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, e[7] = e[7] + 3545052371 + (e[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = e[7] >>> 0 < o[7] >>> 0 ? 1 : 0, r = 0; r < 8; r++) {
+ var n = t[r] + e[r],
+ i = 65535 & n,
+ a = n >>> 16,
+ f = ((i * i >>> 17) + i * a >>> 15) + a * a,
+ u = ((4294901760 & n) * n | 0) + ((65535 & n) * n | 0);
+ s[r] = f ^ u
+ }
+ t[0] = s[0] + (s[7] << 16 | s[7] >>> 16) + (s[6] << 16 | s[6] >>> 16) | 0, t[1] = s[1] + (s[0] << 8 | s[0] >>> 24) + s[7] | 0, t[2] = s[2] + (s[1] << 16 | s[1] >>> 16) + (s[0] << 16 | s[0] >>> 16) | 0, t[3] = s[3] + (s[2] << 8 | s[2] >>> 24) + s[1] | 0, t[4] = s[4] + (s[3] << 16 | s[3] >>> 16) + (s[2] << 16 | s[2] >>> 16) | 0, t[5] = s[5] + (s[4] << 8 | s[4] >>> 24) + s[3] | 0, t[6] = s[6] + (s[5] << 16 | s[5] >>> 16) + (s[4] << 16 | s[4] >>> 16) | 0, t[7] = s[7] + (s[6] << 8 | s[6] >>> 24) + s[5] | 0
+ }
+ t.RabbitLegacy = e._createHelper(a)
+ }(), n.RabbitLegacy)
+ },
+ 6298: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() {
+ var t = n,
+ e = t.lib.StreamCipher,
+ r = t.algo,
+ i = [],
+ o = [],
+ s = [],
+ a = r.Rabbit = e.extend({
+ _doReset: function() {
+ for (var t = this._key.words, e = this.cfg.iv, r = 0; r < 4; r++) t[r] = 16711935 & (t[r] << 8 | t[r] >>> 24) | 4278255360 & (t[r] << 24 | t[r] >>> 8);
+ var n = this._X = [t[0], t[3] << 16 | t[2] >>> 16, t[1], t[0] << 16 | t[3] >>> 16, t[2], t[1] << 16 | t[0] >>> 16, t[3], t[2] << 16 | t[1] >>> 16],
+ i = this._C = [t[2] << 16 | t[2] >>> 16, 4294901760 & t[0] | 65535 & t[1], t[3] << 16 | t[3] >>> 16, 4294901760 & t[1] | 65535 & t[2], t[0] << 16 | t[0] >>> 16, 4294901760 & t[2] | 65535 & t[3], t[1] << 16 | t[1] >>> 16, 4294901760 & t[3] | 65535 & t[0]];
+ for (this._b = 0, r = 0; r < 4; r++) f.call(this);
+ for (r = 0; r < 8; r++) i[r] ^= n[r + 4 & 7];
+ if (e) {
+ var o = e.words,
+ s = o[0],
+ a = o[1],
+ u = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8),
+ c = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8),
+ h = u >>> 16 | 4294901760 & c,
+ p = c << 16 | 65535 & u;
+ for (i[0] ^= u, i[1] ^= h, i[2] ^= c, i[3] ^= p, i[4] ^= u, i[5] ^= h, i[6] ^= c, i[7] ^= p, r = 0; r < 4; r++) f.call(this)
+ }
+ },
+ _doProcessBlock: function(t, e) {
+ var r = this._X;
+ f.call(this), i[0] = r[0] ^ r[5] >>> 16 ^ r[3] << 16, i[1] = r[2] ^ r[7] >>> 16 ^ r[5] << 16, i[2] = r[4] ^ r[1] >>> 16 ^ r[7] << 16, i[3] = r[6] ^ r[3] >>> 16 ^ r[1] << 16;
+ for (var n = 0; n < 4; n++) i[n] = 16711935 & (i[n] << 8 | i[n] >>> 24) | 4278255360 & (i[n] << 24 | i[n] >>> 8), t[e + n] ^= i[n]
+ },
+ blockSize: 4,
+ ivSize: 2
+ });
+
+ function f() {
+ for (var t = this._X, e = this._C, r = 0; r < 8; r++) o[r] = e[r];
+ for (e[0] = e[0] + 1295307597 + this._b | 0, e[1] = e[1] + 3545052371 + (e[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, e[2] = e[2] + 886263092 + (e[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, e[3] = e[3] + 1295307597 + (e[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, e[4] = e[4] + 3545052371 + (e[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, e[5] = e[5] + 886263092 + (e[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, e[6] = e[6] + 1295307597 + (e[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, e[7] = e[7] + 3545052371 + (e[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = e[7] >>> 0 < o[7] >>> 0 ? 1 : 0, r = 0; r < 8; r++) {
+ var n = t[r] + e[r],
+ i = 65535 & n,
+ a = n >>> 16,
+ f = ((i * i >>> 17) + i * a >>> 15) + a * a,
+ u = ((4294901760 & n) * n | 0) + ((65535 & n) * n | 0);
+ s[r] = f ^ u
+ }
+ t[0] = s[0] + (s[7] << 16 | s[7] >>> 16) + (s[6] << 16 | s[6] >>> 16) | 0, t[1] = s[1] + (s[0] << 8 | s[0] >>> 24) + s[7] | 0, t[2] = s[2] + (s[1] << 16 | s[1] >>> 16) + (s[0] << 16 | s[0] >>> 16) | 0, t[3] = s[3] + (s[2] << 8 | s[2] >>> 24) + s[1] | 0, t[4] = s[4] + (s[3] << 16 | s[3] >>> 16) + (s[2] << 16 | s[2] >>> 16) | 0, t[5] = s[5] + (s[4] << 8 | s[4] >>> 24) + s[3] | 0, t[6] = s[6] + (s[5] << 16 | s[5] >>> 16) + (s[4] << 16 | s[4] >>> 16) | 0, t[7] = s[7] + (s[6] << 8 | s[6] >>> 24) + s[5] | 0
+ }
+ t.Rabbit = e._createHelper(a)
+ }(), n.Rabbit)
+ },
+ 7193: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() {
+ var t = n,
+ e = t.lib.StreamCipher,
+ r = t.algo,
+ i = r.RC4 = e.extend({
+ _doReset: function() {
+ for (var t = this._key, e = t.words, r = t.sigBytes, n = this._S = [], i = 0; i < 256; i++) n[i] = i;
+ i = 0;
+ for (var o = 0; i < 256; i++) {
+ var s = i % r,
+ a = e[s >>> 2] >>> 24 - s % 4 * 8 & 255;
+ o = (o + n[i] + a) % 256;
+ var f = n[i];
+ n[i] = n[o], n[o] = f
+ }
+ this._i = this._j = 0
+ },
+ _doProcessBlock: function(t, e) {
+ t[e] ^= o.call(this)
+ },
+ keySize: 8,
+ ivSize: 0
+ });
+
+ function o() {
+ for (var t = this._S, e = this._i, r = this._j, n = 0, i = 0; i < 4; i++) {
+ r = (r + t[e = (e + 1) % 256]) % 256;
+ var o = t[e];
+ t[e] = t[r], t[r] = o, n |= t[(t[e] + t[r]) % 256] << 24 - 8 * i
+ }
+ return this._i = e, this._j = r, n
+ }
+ t.RC4 = e._createHelper(i);
+ var s = r.RC4Drop = i.extend({
+ cfg: i.cfg.extend({
+ drop: 192
+ }),
+ _doReset: function() {
+ i._doReset.call(this);
+ for (var t = this.cfg.drop; t > 0; t--) o.call(this)
+ }
+ });
+ t.RC4Drop = e._createHelper(s)
+ }(), n.RC4)
+ },
+ 8056: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), function(t) {
+ var e = n,
+ r = e.lib,
+ i = r.WordArray,
+ o = r.Hasher,
+ s = e.algo,
+ a = i.create([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]),
+ f = i.create([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]),
+ u = i.create([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]),
+ c = i.create([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]),
+ h = i.create([0, 1518500249, 1859775393, 2400959708, 2840853838]),
+ p = i.create([1352829926, 1548603684, 1836072691, 2053994217, 0]),
+ l = s.RIPEMD160 = o.extend({
+ _doReset: function() {
+ this._hash = i.create([1732584193, 4023233417, 2562383102, 271733878, 3285377520])
+ },
+ _doProcessBlock: function(t, e) {
+ for (var r = 0; r < 16; r++) {
+ var n = e + r,
+ i = t[n];
+ t[n] = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8)
+ }
+ var o, s, l, _, b, E, w, O, B, A, x, P = this._hash.words,
+ T = h.words,
+ I = p.words,
+ k = a.words,
+ D = f.words,
+ R = u.words,
+ N = c.words;
+ for (E = o = P[0], w = s = P[1], O = l = P[2], B = _ = P[3], A = b = P[4], r = 0; r < 80; r += 1) x = o + t[e + k[r]] | 0, x += r < 16 ? y(s, l, _) + T[0] : r < 32 ? g(s, l, _) + T[1] : r < 48 ? d(s, l, _) + T[2] : r < 64 ? v(s, l, _) + T[3] : m(s, l, _) + T[4], x = (x = S(x |= 0, R[r])) + b | 0, o = b, b = _, _ = S(l, 10), l = s, s = x, x = E + t[e + D[r]] | 0, x += r < 16 ? m(w, O, B) + I[0] : r < 32 ? v(w, O, B) + I[1] : r < 48 ? d(w, O, B) + I[2] : r < 64 ? g(w, O, B) + I[3] : y(w, O, B) + I[4], x = (x = S(x |= 0, N[r])) + A | 0, E = A, A = B, B = S(O, 10), O = w, w = x;
+ x = P[1] + l + B | 0, P[1] = P[2] + _ + A | 0, P[2] = P[3] + b + E | 0, P[3] = P[4] + o + w | 0, P[4] = P[0] + s + O | 0, P[0] = x
+ },
+ _doFinalize: function() {
+ var t = this._data,
+ e = t.words,
+ r = 8 * this._nDataBytes,
+ n = 8 * t.sigBytes;
+ e[n >>> 5] |= 128 << 24 - n % 32, e[14 + (n + 64 >>> 9 << 4)] = 16711935 & (r << 8 | r >>> 24) | 4278255360 & (r << 24 | r >>> 8), t.sigBytes = 4 * (e.length + 1), this._process();
+ for (var i = this._hash, o = i.words, s = 0; s < 5; s++) {
+ var a = o[s];
+ o[s] = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8)
+ }
+ return i
+ },
+ clone: function() {
+ var t = o.clone.call(this);
+ return t._hash = this._hash.clone(), t
+ }
+ });
+
+ function y(t, e, r) {
+ return t ^ e ^ r
+ }
+ function g(t, e, r) {
+ return t & e | ~t & r
+ }
+ function d(t, e, r) {
+ return (t | ~e) ^ r
+ }
+ function v(t, e, r) {
+ return t & r | e & ~r
+ }
+ function m(t, e, r) {
+ return t ^ (e | ~r)
+ }
+ function S(t, e) {
+ return t << e | t >>> 32 - e
+ }
+ e.RIPEMD160 = o._createHelper(l), e.HmacRIPEMD160 = o._createHmacHelper(l)
+ }(Math), n.RIPEMD160)
+ },
+ 5471: function(t, e, r) {
+ var n, i, o, s, a, f, u, c;
+ t.exports = (i = (n = c = r(9021))
+ .lib, o = i.WordArray, s = i.Hasher, a = n.algo, f = [], u = a.SHA1 = s.extend({
+ _doReset: function() {
+ this._hash = new o.init([1732584193, 4023233417, 2562383102, 271733878, 3285377520])
+ },
+ _doProcessBlock: function(t, e) {
+ for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], u = 0; u < 80; u++) {
+ if (u < 16) f[u] = 0 | t[e + u];
+ else {
+ var c = f[u - 3] ^ f[u - 8] ^ f[u - 14] ^ f[u - 16];
+ f[u] = c << 1 | c >>> 31
+ }
+ var h = (n << 5 | n >>> 27) + a + f[u];
+ h += u < 20 ? 1518500249 + (i & o | ~i & s) : u < 40 ? 1859775393 + (i ^ o ^ s) : u < 60 ? (i & o | i & s | o & s) - 1894007588 : (i ^ o ^ s) - 899497514, a = s, s = o, o = i << 30 | i >>> 2, i = n, n = h
+ }
+ r[0] = r[0] + n | 0, r[1] = r[1] + i | 0, r[2] = r[2] + o | 0, r[3] = r[3] + s | 0, r[4] = r[4] + a | 0
+ },
+ _doFinalize: function() {
+ var t = this._data,
+ e = t.words,
+ r = 8 * this._nDataBytes,
+ n = 8 * t.sigBytes;
+ return e[n >>> 5] |= 128 << 24 - n % 32, e[14 + (n + 64 >>> 9 << 4)] = Math.floor(r / 4294967296), e[15 + (n + 64 >>> 9 << 4)] = r, t.sigBytes = 4 * e.length, this._process(), this._hash
+ },
+ clone: function() {
+ var t = s.clone.call(this);
+ return t._hash = this._hash.clone(), t
+ }
+ }), n.SHA1 = s._createHelper(u), n.HmacSHA1 = s._createHmacHelper(u), c.SHA1)
+ },
+ 6308: function(t, e, r) {
+ var n, i, o, s, a, f;
+ t.exports = (f = r(9021), r(3009), i = (n = f)
+ .lib.WordArray, o = n.algo, s = o.SHA256, a = o.SHA224 = s.extend({
+ _doReset: function() {
+ this._hash = new i.init([3238371032, 914150663, 812702999, 4144912697, 4290775857, 1750603025, 1694076839, 3204075428])
+ },
+ _doFinalize: function() {
+ var t = s._doFinalize.call(this);
+ return t.sigBytes -= 4, t
+ }
+ }), n.SHA224 = s._createHelper(a), n.HmacSHA224 = s._createHmacHelper(a), f.SHA224)
+ },
+ 3009: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), function(t) {
+ var e = n,
+ r = e.lib,
+ i = r.WordArray,
+ o = r.Hasher,
+ s = e.algo,
+ a = [],
+ f = [];
+ ! function() {
+ function e(e) {
+ for (var r = t.sqrt(e), n = 2; n <= r; n++) if (!(e % n)) return !1;
+ return !0
+ }
+ function r(t) {
+ return 4294967296 * (t - (0 | t)) | 0
+ }
+ for (var n = 2, i = 0; i < 64;) e(n) && (i < 8 && (a[i] = r(t.pow(n, .5))), f[i] = r(t.pow(n, 1 / 3)), i++), n++
+ }();
+ var u = [],
+ c = s.SHA256 = o.extend({
+ _doReset: function() {
+ this._hash = new i.init(a.slice(0))
+ },
+ _doProcessBlock: function(t, e) {
+ for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], c = r[5], h = r[6], p = r[7], l = 0; l < 64; l++) {
+ if (l < 16) u[l] = 0 | t[e + l];
+ else {
+ var y = u[l - 15],
+ g = (y << 25 | y >>> 7) ^ (y << 14 | y >>> 18) ^ y >>> 3,
+ d = u[l - 2],
+ v = (d << 15 | d >>> 17) ^ (d << 13 | d >>> 19) ^ d >>> 10;
+ u[l] = g + u[l - 7] + v + u[l - 16]
+ }
+ var m = n & i ^ n & o ^ i & o,
+ S = (n << 30 | n >>> 2) ^ (n << 19 | n >>> 13) ^ (n << 10 | n >>> 22),
+ _ = p + ((a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25)) + (a & c ^ ~a & h) + f[l] + u[l];
+ p = h, h = c, c = a, a = s + _ | 0, s = o, o = i, i = n, n = _ + (S + m) | 0
+ }
+ r[0] = r[0] + n | 0, r[1] = r[1] + i | 0, r[2] = r[2] + o | 0, r[3] = r[3] + s | 0, r[4] = r[4] + a | 0, r[5] = r[5] + c | 0, r[6] = r[6] + h | 0, r[7] = r[7] + p | 0
+ },
+ _doFinalize: function() {
+ var e = this._data,
+ r = e.words,
+ n = 8 * this._nDataBytes,
+ i = 8 * e.sigBytes;
+ return r[i >>> 5] |= 128 << 24 - i % 32, r[14 + (i + 64 >>> 9 << 4)] = t.floor(n / 4294967296), r[15 + (i + 64 >>> 9 << 4)] = n, e.sigBytes = 4 * r.length, this._process(), this._hash
+ },
+ clone: function() {
+ var t = o.clone.call(this);
+ return t._hash = this._hash.clone(), t
+ }
+ });
+ e.SHA256 = o._createHelper(c), e.HmacSHA256 = o._createHmacHelper(c)
+ }(Math), n.SHA256)
+ },
+ 5953: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(3240), function(t) {
+ var e = n,
+ r = e.lib,
+ i = r.WordArray,
+ o = r.Hasher,
+ s = e.x64.Word,
+ a = e.algo,
+ f = [],
+ u = [],
+ c = [];
+ ! function() {
+ for (var t = 1, e = 0, r = 0; r < 24; r++) {
+ f[t + 5 * e] = (r + 1) * (r + 2) / 2 % 64;
+ var n = (2 * t + 3 * e) % 5;
+ t = e % 5, e = n
+ }
+ for (t = 0; t < 5; t++) for (e = 0; e < 5; e++) u[t + 5 * e] = e + (2 * t + 3 * e) % 5 * 5;
+ for (var i = 1, o = 0; o < 24; o++) {
+ for (var a = 0, h = 0, p = 0; p < 7; p++) {
+ if (1 & i) {
+ var l = (1 << p) - 1;
+ l < 32 ? h ^= 1 << l : a ^= 1 << l - 32
+ }
+ 128 & i ? i = i << 1 ^ 113 : i <<= 1
+ }
+ c[o] = s.create(a, h)
+ }
+ }();
+ var h = [];
+ ! function() {
+ for (var t = 0; t < 25; t++) h[t] = s.create()
+ }();
+ var p = a.SHA3 = o.extend({
+ cfg: o.cfg.extend({
+ outputLength: 512
+ }),
+ _doReset: function() {
+ for (var t = this._state = [], e = 0; e < 25; e++) t[e] = new s.init;
+ this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32
+ },
+ _doProcessBlock: function(t, e) {
+ for (var r = this._state, n = this.blockSize / 2, i = 0; i < n; i++) {
+ var o = t[e + 2 * i],
+ s = t[e + 2 * i + 1];
+ o = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), s = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), (P = r[i])
+ .high ^= s, P.low ^= o
+ }
+ for (var a = 0; a < 24; a++) {
+ for (var p = 0; p < 5; p++) {
+ for (var l = 0, y = 0, g = 0; g < 5; g++) l ^= (P = r[p + 5 * g])
+ .high, y ^= P.low;
+ var d = h[p];
+ d.high = l, d.low = y
+ }
+ for (p = 0; p < 5; p++) {
+ var v = h[(p + 4) % 5],
+ m = h[(p + 1) % 5],
+ S = m.high,
+ _ = m.low;
+ for (l = v.high ^ (S << 1 | _ >>> 31), y = v.low ^ (_ << 1 | S >>> 31), g = 0; g < 5; g++)(P = r[p + 5 * g])
+ .high ^= l, P.low ^= y
+ }
+ for (var b = 1; b < 25; b++) {
+ var E = (P = r[b])
+ .high,
+ w = P.low,
+ O = f[b];
+ O < 32 ? (l = E << O | w >>> 32 - O, y = w << O | E >>> 32 - O) : (l = w << O - 32 | E >>> 64 - O, y = E << O - 32 | w >>> 64 - O);
+ var B = h[u[b]];
+ B.high = l, B.low = y
+ }
+ var A = h[0],
+ x = r[0];
+ for (A.high = x.high, A.low = x.low, p = 0; p < 5; p++) for (g = 0; g < 5; g++) {
+ var P = r[b = p + 5 * g],
+ T = h[b],
+ I = h[(p + 1) % 5 + 5 * g],
+ k = h[(p + 2) % 5 + 5 * g];
+ P.high = T.high ^ ~I.high & k.high, P.low = T.low ^ ~I.low & k.low
+ }
+ P = r[0];
+ var D = c[a];
+ P.high ^= D.high, P.low ^= D.low
+ }
+ },
+ _doFinalize: function() {
+ var e = this._data,
+ r = e.words,
+ n = (this._nDataBytes, 8 * e.sigBytes),
+ o = 32 * this.blockSize;
+ r[n >>> 5] |= 1 << 24 - n % 32, r[(t.ceil((n + 1) / o) * o >>> 5) - 1] |= 128, e.sigBytes = 4 * r.length, this._process();
+ for (var s = this._state, a = this.cfg.outputLength / 8, f = a / 8, u = [], c = 0; c < f; c++) {
+ var h = s[c],
+ p = h.high,
+ l = h.low;
+ p = 16711935 & (p << 8 | p >>> 24) | 4278255360 & (p << 24 | p >>> 8), l = 16711935 & (l << 8 | l >>> 24) | 4278255360 & (l << 24 | l >>> 8), u.push(l), u.push(p)
+ }
+ return new i.init(u, a)
+ },
+ clone: function() {
+ for (var t = o.clone.call(this), e = t._state = this._state.slice(0), r = 0; r < 25; r++) e[r] = e[r].clone();
+ return t
+ }
+ });
+ e.SHA3 = o._createHelper(p), e.HmacSHA3 = o._createHmacHelper(p)
+ }(Math), n.SHA3)
+ },
+ 9557: function(t, e, r) {
+ var n, i, o, s, a, f, u, c;
+ t.exports = (c = r(9021), r(3240), r(1380), i = (n = c)
+ .x64, o = i.Word, s = i.WordArray, a = n.algo, f = a.SHA512, u = a.SHA384 = f.extend({
+ _doReset: function() {
+ this._hash = new s.init([new o.init(3418070365, 3238371032), new o.init(1654270250, 914150663), new o.init(2438529370, 812702999), new o.init(355462360, 4144912697), new o.init(1731405415, 4290775857), new o.init(2394180231, 1750603025), new o.init(3675008525, 1694076839), new o.init(1203062813, 3204075428)])
+ },
+ _doFinalize: function() {
+ var t = f._doFinalize.call(this);
+ return t.sigBytes -= 16, t
+ }
+ }), n.SHA384 = f._createHelper(u), n.HmacSHA384 = f._createHmacHelper(u), c.SHA384)
+ },
+ 1380: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(3240), function() {
+ var t = n,
+ e = t.lib.Hasher,
+ r = t.x64,
+ i = r.Word,
+ o = r.WordArray,
+ s = t.algo;
+
+ function a() {
+ return i.create.apply(i, arguments)
+ }
+ var f = [a(1116352408, 3609767458), a(1899447441, 602891725), a(3049323471, 3964484399), a(3921009573, 2173295548), a(961987163, 4081628472), a(1508970993, 3053834265), a(2453635748, 2937671579), a(2870763221, 3664609560), a(3624381080, 2734883394), a(310598401, 1164996542), a(607225278, 1323610764), a(1426881987, 3590304994), a(1925078388, 4068182383), a(2162078206, 991336113), a(2614888103, 633803317), a(3248222580, 3479774868), a(3835390401, 2666613458), a(4022224774, 944711139), a(264347078, 2341262773), a(604807628, 2007800933), a(770255983, 1495990901), a(1249150122, 1856431235), a(1555081692, 3175218132), a(1996064986, 2198950837), a(2554220882, 3999719339), a(2821834349, 766784016), a(2952996808, 2566594879), a(3210313671, 3203337956), a(3336571891, 1034457026), a(3584528711, 2466948901), a(113926993, 3758326383), a(338241895, 168717936), a(666307205, 1188179964), a(773529912, 1546045734), a(1294757372, 1522805485), a(1396182291, 2643833823), a(1695183700, 2343527390), a(1986661051, 1014477480), a(2177026350, 1206759142), a(2456956037, 344077627), a(2730485921, 1290863460), a(2820302411, 3158454273), a(3259730800, 3505952657), a(3345764771, 106217008), a(3516065817, 3606008344), a(3600352804, 1432725776), a(4094571909, 1467031594), a(275423344, 851169720), a(430227734, 3100823752), a(506948616, 1363258195), a(659060556, 3750685593), a(883997877, 3785050280), a(958139571, 3318307427), a(1322822218, 3812723403), a(1537002063, 2003034995), a(1747873779, 3602036899), a(1955562222, 1575990012), a(2024104815, 1125592928), a(2227730452, 2716904306), a(2361852424, 442776044), a(2428436474, 593698344), a(2756734187, 3733110249), a(3204031479, 2999351573), a(3329325298, 3815920427), a(3391569614, 3928383900), a(3515267271, 566280711), a(3940187606, 3454069534), a(4118630271, 4000239992), a(116418474, 1914138554), a(174292421, 2731055270), a(289380356, 3203993006), a(460393269, 320620315), a(685471733, 587496836), a(852142971, 1086792851), a(1017036298, 365543100), a(1126000580, 2618297676), a(1288033470, 3409855158), a(1501505948, 4234509866), a(1607167915, 987167468), a(1816402316, 1246189591)],
+ u = [];
+ ! function() {
+ for (var t = 0; t < 80; t++) u[t] = a()
+ }();
+ var c = s.SHA512 = e.extend({
+ _doReset: function() {
+ this._hash = new o.init([new i.init(1779033703, 4089235720), new i.init(3144134277, 2227873595), new i.init(1013904242, 4271175723), new i.init(2773480762, 1595750129), new i.init(1359893119, 2917565137), new i.init(2600822924, 725511199), new i.init(528734635, 4215389547), new i.init(1541459225, 327033209)])
+ },
+ _doProcessBlock: function(t, e) {
+ for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], c = r[5], h = r[6], p = r[7], l = n.high, y = n.low, g = i.high, d = i.low, v = o.high, m = o.low, S = s.high, _ = s.low, b = a.high, E = a.low, w = c.high, O = c.low, B = h.high, A = h.low, x = p.high, P = p.low, T = l, I = y, k = g, D = d, R = v, N = m, L = S, C = _, U = b, M = E, j = w, H = O, F = B, z = A, G = x, q = P, $ = 0; $ < 80; $++) {
+ var K = u[$];
+ if ($ < 16) var W = K.high = 0 | t[e + 2 * $],
+ V = K.low = 0 | t[e + 2 * $ + 1];
+ else {
+ var Y = u[$ - 15],
+ X = Y.high,
+ Z = Y.low,
+ J = (X >>> 1 | Z << 31) ^ (X >>> 8 | Z << 24) ^ X >>> 7,
+ Q = (Z >>> 1 | X << 31) ^ (Z >>> 8 | X << 24) ^ (Z >>> 7 | X << 25),
+ tt = u[$ - 2],
+ et = tt.high,
+ rt = tt.low,
+ nt = (et >>> 19 | rt << 13) ^ (et << 3 | rt >>> 29) ^ et >>> 6,
+ it = (rt >>> 19 | et << 13) ^ (rt << 3 | et >>> 29) ^ (rt >>> 6 | et << 26),
+ ot = u[$ - 7],
+ st = ot.high,
+ at = ot.low,
+ ft = u[$ - 16],
+ ut = ft.high,
+ ct = ft.low;
+ W = (W = (W = J + st + ((V = Q + at) >>> 0 < Q >>> 0 ? 1 : 0)) + nt + ((V += it) >>> 0 < it >>> 0 ? 1 : 0)) + ut + ((V += ct) >>> 0 < ct >>> 0 ? 1 : 0), K.high = W, K.low = V
+ }
+ var ht, pt = U & j ^ ~U & F,
+ lt = M & H ^ ~M & z,
+ yt = T & k ^ T & R ^ k & R,
+ gt = I & D ^ I & N ^ D & N,
+ dt = (T >>> 28 | I << 4) ^ (T << 30 | I >>> 2) ^ (T << 25 | I >>> 7),
+ vt = (I >>> 28 | T << 4) ^ (I << 30 | T >>> 2) ^ (I << 25 | T >>> 7),
+ mt = (U >>> 14 | M << 18) ^ (U >>> 18 | M << 14) ^ (U << 23 | M >>> 9),
+ St = (M >>> 14 | U << 18) ^ (M >>> 18 | U << 14) ^ (M << 23 | U >>> 9),
+ _t = f[$],
+ bt = _t.high,
+ Et = _t.low,
+ wt = G + mt + ((ht = q + St) >>> 0 < q >>> 0 ? 1 : 0),
+ Ot = vt + gt;
+ G = F, q = z, F = j, z = H, j = U, H = M, U = L + (wt = (wt = (wt = wt + pt + ((ht += lt) >>> 0 < lt >>> 0 ? 1 : 0)) + bt + ((ht += Et) >>> 0 < Et >>> 0 ? 1 : 0)) + W + ((ht += V) >>> 0 < V >>> 0 ? 1 : 0)) + ((M = C + ht | 0) >>> 0 < C >>> 0 ? 1 : 0) | 0, L = R, C = N, R = k, N = D, k = T, D = I, T = wt + (dt + yt + (Ot >>> 0 < vt >>> 0 ? 1 : 0)) + ((I = ht + Ot | 0) >>> 0 < ht >>> 0 ? 1 : 0) | 0
+ }
+ y = n.low = y + I, n.high = l + T + (y >>> 0 < I >>> 0 ? 1 : 0), d = i.low = d + D, i.high = g + k + (d >>> 0 < D >>> 0 ? 1 : 0), m = o.low = m + N, o.high = v + R + (m >>> 0 < N >>> 0 ? 1 : 0), _ = s.low = _ + C, s.high = S + L + (_ >>> 0 < C >>> 0 ? 1 : 0), E = a.low = E + M, a.high = b + U + (E >>> 0 < M >>> 0 ? 1 : 0), O = c.low = O + H, c.high = w + j + (O >>> 0 < H >>> 0 ? 1 : 0), A = h.low = A + z, h.high = B + F + (A >>> 0 < z >>> 0 ? 1 : 0), P = p.low = P + q, p.high = x + G + (P >>> 0 < q >>> 0 ? 1 : 0)
+ },
+ _doFinalize: function() {
+ var t = this._data,
+ e = t.words,
+ r = 8 * this._nDataBytes,
+ n = 8 * t.sigBytes;
+ return e[n >>> 5] |= 128 << 24 - n % 32, e[30 + (n + 128 >>> 10 << 5)] = Math.floor(r / 4294967296), e[31 + (n + 128 >>> 10 << 5)] = r, t.sigBytes = 4 * e.length, this._process(), this._hash.toX32()
+ },
+ clone: function() {
+ var t = e.clone.call(this);
+ return t._hash = this._hash.clone(), t
+ },
+ blockSize: 32
+ });
+ t.SHA512 = e._createHelper(c), t.HmacSHA512 = e._createHmacHelper(c)
+ }(), n.SHA512)
+ },
+ 7628: function(t, e, r) {
+ var n;
+ t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() {
+ var t = n,
+ e = t.lib,
+ r = e.WordArray,
+ i = e.BlockCipher,
+ o = t.algo,
+ s = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],
+ a = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],
+ f = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],
+ u = [{
+ 0: 8421888,
+ 268435456: 32768,
+ 536870912: 8421378,
+ 805306368: 2,
+ 1073741824: 512,
+ 1342177280: 8421890,
+ 1610612736: 8389122,
+ 1879048192: 8388608,
+ 2147483648: 514,
+ 2415919104: 8389120,
+ 2684354560: 33280,
+ 2952790016: 8421376,
+ 3221225472: 32770,
+ 3489660928: 8388610,
+ 3758096384: 0,
+ 4026531840: 33282,
+ 134217728: 0,
+ 402653184: 8421890,
+ 671088640: 33282,
+ 939524096: 32768,
+ 1207959552: 8421888,
+ 1476395008: 512,
+ 1744830464: 8421378,
+ 2013265920: 2,
+ 2281701376: 8389120,
+ 2550136832: 33280,
+ 2818572288: 8421376,
+ 3087007744: 8389122,
+ 3355443200: 8388610,
+ 3623878656: 32770,
+ 3892314112: 514,
+ 4160749568: 8388608,
+ 1: 32768,
+ 268435457: 2,
+ 536870913: 8421888,
+ 805306369: 8388608,
+ 1073741825: 8421378,
+ 1342177281: 33280,
+ 1610612737: 512,
+ 1879048193: 8389122,
+ 2147483649: 8421890,
+ 2415919105: 8421376,
+ 2684354561: 8388610,
+ 2952790017: 33282,
+ 3221225473: 514,
+ 3489660929: 8389120,
+ 3758096385: 32770,
+ 4026531841: 0,
+ 134217729: 8421890,
+ 402653185: 8421376,
+ 671088641: 8388608,
+ 939524097: 512,
+ 1207959553: 32768,
+ 1476395009: 8388610,
+ 1744830465: 2,
+ 2013265921: 33282,
+ 2281701377: 32770,
+ 2550136833: 8389122,
+ 2818572289: 514,
+ 3087007745: 8421888,
+ 3355443201: 8389120,
+ 3623878657: 0,
+ 3892314113: 33280,
+ 4160749569: 8421378
+ }, {
+ 0: 1074282512,
+ 16777216: 16384,
+ 33554432: 524288,
+ 50331648: 1074266128,
+ 67108864: 1073741840,
+ 83886080: 1074282496,
+ 100663296: 1073758208,
+ 117440512: 16,
+ 134217728: 540672,
+ 150994944: 1073758224,
+ 167772160: 1073741824,
+ 184549376: 540688,
+ 201326592: 524304,
+ 218103808: 0,
+ 234881024: 16400,
+ 251658240: 1074266112,
+ 8388608: 1073758208,
+ 25165824: 540688,
+ 41943040: 16,
+ 58720256: 1073758224,
+ 75497472: 1074282512,
+ 92274688: 1073741824,
+ 109051904: 524288,
+ 125829120: 1074266128,
+ 142606336: 524304,
+ 159383552: 0,
+ 176160768: 16384,
+ 192937984: 1074266112,
+ 209715200: 1073741840,
+ 226492416: 540672,
+ 243269632: 1074282496,
+ 260046848: 16400,
+ 268435456: 0,
+ 285212672: 1074266128,
+ 301989888: 1073758224,
+ 318767104: 1074282496,
+ 335544320: 1074266112,
+ 352321536: 16,
+ 369098752: 540688,
+ 385875968: 16384,
+ 402653184: 16400,
+ 419430400: 524288,
+ 436207616: 524304,
+ 452984832: 1073741840,
+ 469762048: 540672,
+ 486539264: 1073758208,
+ 503316480: 1073741824,
+ 520093696: 1074282512,
+ 276824064: 540688,
+ 293601280: 524288,
+ 310378496: 1074266112,
+ 327155712: 16384,
+ 343932928: 1073758208,
+ 360710144: 1074282512,
+ 377487360: 16,
+ 394264576: 1073741824,
+ 411041792: 1074282496,
+ 427819008: 1073741840,
+ 444596224: 1073758224,
+ 461373440: 524304,
+ 478150656: 0,
+ 494927872: 16400,
+ 511705088: 1074266128,
+ 528482304: 540672
+ }, {
+ 0: 260,
+ 1048576: 0,
+ 2097152: 67109120,
+ 3145728: 65796,
+ 4194304: 65540,
+ 5242880: 67108868,
+ 6291456: 67174660,
+ 7340032: 67174400,
+ 8388608: 67108864,
+ 9437184: 67174656,
+ 10485760: 65792,
+ 11534336: 67174404,
+ 12582912: 67109124,
+ 13631488: 65536,
+ 14680064: 4,
+ 15728640: 256,
+ 524288: 67174656,
+ 1572864: 67174404,
+ 2621440: 0,
+ 3670016: 67109120,
+ 4718592: 67108868,
+ 5767168: 65536,
+ 6815744: 65540,
+ 7864320: 260,
+ 8912896: 4,
+ 9961472: 256,
+ 11010048: 67174400,
+ 12058624: 65796,
+ 13107200: 65792,
+ 14155776: 67109124,
+ 15204352: 67174660,
+ 16252928: 67108864,
+ 16777216: 67174656,
+ 17825792: 65540,
+ 18874368: 65536,
+ 19922944: 67109120,
+ 20971520: 256,
+ 22020096: 67174660,
+ 23068672: 67108868,
+ 24117248: 0,
+ 25165824: 67109124,
+ 26214400: 67108864,
+ 27262976: 4,
+ 28311552: 65792,
+ 29360128: 67174400,
+ 30408704: 260,
+ 31457280: 65796,
+ 32505856: 67174404,
+ 17301504: 67108864,
+ 18350080: 260,
+ 19398656: 67174656,
+ 20447232: 0,
+ 21495808: 65540,
+ 22544384: 67109120,
+ 23592960: 256,
+ 24641536: 67174404,
+ 25690112: 65536,
+ 26738688: 67174660,
+ 27787264: 65796,
+ 28835840: 67108868,
+ 29884416: 67109124,
+ 30932992: 67174400,
+ 31981568: 4,
+ 33030144: 65792
+ }, {
+ 0: 2151682048,
+ 65536: 2147487808,
+ 131072: 4198464,
+ 196608: 2151677952,
+ 262144: 0,
+ 327680: 4198400,
+ 393216: 2147483712,
+ 458752: 4194368,
+ 524288: 2147483648,
+ 589824: 4194304,
+ 655360: 64,
+ 720896: 2147487744,
+ 786432: 2151678016,
+ 851968: 4160,
+ 917504: 4096,
+ 983040: 2151682112,
+ 32768: 2147487808,
+ 98304: 64,
+ 163840: 2151678016,
+ 229376: 2147487744,
+ 294912: 4198400,
+ 360448: 2151682112,
+ 425984: 0,
+ 491520: 2151677952,
+ 557056: 4096,
+ 622592: 2151682048,
+ 688128: 4194304,
+ 753664: 4160,
+ 819200: 2147483648,
+ 884736: 4194368,
+ 950272: 4198464,
+ 1015808: 2147483712,
+ 1048576: 4194368,
+ 1114112: 4198400,
+ 1179648: 2147483712,
+ 1245184: 0,
+ 1310720: 4160,
+ 1376256: 2151678016,
+ 1441792: 2151682048,
+ 1507328: 2147487808,
+ 1572864: 2151682112,
+ 1638400: 2147483648,
+ 1703936: 2151677952,
+ 1769472: 4198464,
+ 1835008: 2147487744,
+ 1900544: 4194304,
+ 1966080: 64,
+ 2031616: 4096,
+ 1081344: 2151677952,
+ 1146880: 2151682112,
+ 1212416: 0,
+ 1277952: 4198400,
+ 1343488: 4194368,
+ 1409024: 2147483648,
+ 1474560: 2147487808,
+ 1540096: 64,
+ 1605632: 2147483712,
+ 1671168: 4096,
+ 1736704: 2147487744,
+ 1802240: 2151678016,
+ 1867776: 4160,
+ 1933312: 2151682048,
+ 1998848: 4194304,
+ 2064384: 4198464
+ }, {
+ 0: 128,
+ 4096: 17039360,
+ 8192: 262144,
+ 12288: 536870912,
+ 16384: 537133184,
+ 20480: 16777344,
+ 24576: 553648256,
+ 28672: 262272,
+ 32768: 16777216,
+ 36864: 537133056,
+ 40960: 536871040,
+ 45056: 553910400,
+ 49152: 553910272,
+ 53248: 0,
+ 57344: 17039488,
+ 61440: 553648128,
+ 2048: 17039488,
+ 6144: 553648256,
+ 10240: 128,
+ 14336: 17039360,
+ 18432: 262144,
+ 22528: 537133184,
+ 26624: 553910272,
+ 30720: 536870912,
+ 34816: 537133056,
+ 38912: 0,
+ 43008: 553910400,
+ 47104: 16777344,
+ 51200: 536871040,
+ 55296: 553648128,
+ 59392: 16777216,
+ 63488: 262272,
+ 65536: 262144,
+ 69632: 128,
+ 73728: 536870912,
+ 77824: 553648256,
+ 81920: 16777344,
+ 86016: 553910272,
+ 90112: 537133184,
+ 94208: 16777216,
+ 98304: 553910400,
+ 102400: 553648128,
+ 106496: 17039360,
+ 110592: 537133056,
+ 114688: 262272,
+ 118784: 536871040,
+ 122880: 0,
+ 126976: 17039488,
+ 67584: 553648256,
+ 71680: 16777216,
+ 75776: 17039360,
+ 79872: 537133184,
+ 83968: 536870912,
+ 88064: 17039488,
+ 92160: 128,
+ 96256: 553910272,
+ 100352: 262272,
+ 104448: 553910400,
+ 108544: 0,
+ 112640: 553648128,
+ 116736: 16777344,
+ 120832: 262144,
+ 124928: 537133056,
+ 129024: 536871040
+ }, {
+ 0: 268435464,
+ 256: 8192,
+ 512: 270532608,
+ 768: 270540808,
+ 1024: 268443648,
+ 1280: 2097152,
+ 1536: 2097160,
+ 1792: 268435456,
+ 2048: 0,
+ 2304: 268443656,
+ 2560: 2105344,
+ 2816: 8,
+ 3072: 270532616,
+ 3328: 2105352,
+ 3584: 8200,
+ 3840: 270540800,
+ 128: 270532608,
+ 384: 270540808,
+ 640: 8,
+ 896: 2097152,
+ 1152: 2105352,
+ 1408: 268435464,
+ 1664: 268443648,
+ 1920: 8200,
+ 2176: 2097160,
+ 2432: 8192,
+ 2688: 268443656,
+ 2944: 270532616,
+ 3200: 0,
+ 3456: 270540800,
+ 3712: 2105344,
+ 3968: 268435456,
+ 4096: 268443648,
+ 4352: 270532616,
+ 4608: 270540808,
+ 4864: 8200,
+ 5120: 2097152,
+ 5376: 268435456,
+ 5632: 268435464,
+ 5888: 2105344,
+ 6144: 2105352,
+ 6400: 0,
+ 6656: 8,
+ 6912: 270532608,
+ 7168: 8192,
+ 7424: 268443656,
+ 7680: 270540800,
+ 7936: 2097160,
+ 4224: 8,
+ 4480: 2105344,
+ 4736: 2097152,
+ 4992: 268435464,
+ 5248: 268443648,
+ 5504: 8200,
+ 5760: 270540808,
+ 6016: 270532608,
+ 6272: 270540800,
+ 6528: 270532616,
+ 6784: 8192,
+ 7040: 2105352,
+ 7296: 2097160,
+ 7552: 0,
+ 7808: 268435456,
+ 8064: 268443656
+ }, {
+ 0: 1048576,
+ 16: 33555457,
+ 32: 1024,
+ 48: 1049601,
+ 64: 34604033,
+ 80: 0,
+ 96: 1,
+ 112: 34603009,
+ 128: 33555456,
+ 144: 1048577,
+ 160: 33554433,
+ 176: 34604032,
+ 192: 34603008,
+ 208: 1025,
+ 224: 1049600,
+ 240: 33554432,
+ 8: 34603009,
+ 24: 0,
+ 40: 33555457,
+ 56: 34604032,
+ 72: 1048576,
+ 88: 33554433,
+ 104: 33554432,
+ 120: 1025,
+ 136: 1049601,
+ 152: 33555456,
+ 168: 34603008,
+ 184: 1048577,
+ 200: 1024,
+ 216: 34604033,
+ 232: 1,
+ 248: 1049600,
+ 256: 33554432,
+ 272: 1048576,
+ 288: 33555457,
+ 304: 34603009,
+ 320: 1048577,
+ 336: 33555456,
+ 352: 34604032,
+ 368: 1049601,
+ 384: 1025,
+ 400: 34604033,
+ 416: 1049600,
+ 432: 1,
+ 448: 0,
+ 464: 34603008,
+ 480: 33554433,
+ 496: 1024,
+ 264: 1049600,
+ 280: 33555457,
+ 296: 34603009,
+ 312: 1,
+ 328: 33554432,
+ 344: 1048576,
+ 360: 1025,
+ 376: 34604032,
+ 392: 33554433,
+ 408: 34603008,
+ 424: 0,
+ 440: 34604033,
+ 456: 1049601,
+ 472: 1024,
+ 488: 33555456,
+ 504: 1048577
+ }, {
+ 0: 134219808,
+ 1: 131072,
+ 2: 134217728,
+ 3: 32,
+ 4: 131104,
+ 5: 134350880,
+ 6: 134350848,
+ 7: 2048,
+ 8: 134348800,
+ 9: 134219776,
+ 10: 133120,
+ 11: 134348832,
+ 12: 2080,
+ 13: 0,
+ 14: 134217760,
+ 15: 133152,
+ 2147483648: 2048,
+ 2147483649: 134350880,
+ 2147483650: 134219808,
+ 2147483651: 134217728,
+ 2147483652: 134348800,
+ 2147483653: 133120,
+ 2147483654: 133152,
+ 2147483655: 32,
+ 2147483656: 134217760,
+ 2147483657: 2080,
+ 2147483658: 131104,
+ 2147483659: 134350848,
+ 2147483660: 0,
+ 2147483661: 134348832,
+ 2147483662: 134219776,
+ 2147483663: 131072,
+ 16: 133152,
+ 17: 134350848,
+ 18: 32,
+ 19: 2048,
+ 20: 134219776,
+ 21: 134217760,
+ 22: 134348832,
+ 23: 131072,
+ 24: 0,
+ 25: 131104,
+ 26: 134348800,
+ 27: 134219808,
+ 28: 134350880,
+ 29: 133120,
+ 30: 2080,
+ 31: 134217728,
+ 2147483664: 131072,
+ 2147483665: 2048,
+ 2147483666: 134348832,
+ 2147483667: 133152,
+ 2147483668: 32,
+ 2147483669: 134348800,
+ 2147483670: 134217728,
+ 2147483671: 134219808,
+ 2147483672: 134350880,
+ 2147483673: 134217760,
+ 2147483674: 134219776,
+ 2147483675: 0,
+ 2147483676: 133120,
+ 2147483677: 2080,
+ 2147483678: 131104,
+ 2147483679: 134350848
+ }],
+ c = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],
+ h = o.DES = i.extend({
+ _doReset: function() {
+ for (var t = this._key.words, e = [], r = 0; r < 56; r++) {
+ var n = s[r] - 1;
+ e[r] = t[n >>> 5] >>> 31 - n % 32 & 1
+ }
+ for (var i = this._subKeys = [], o = 0; o < 16; o++) {
+ var u = i[o] = [],
+ c = f[o];
+ for (r = 0; r < 24; r++) u[r / 6 | 0] |= e[(a[r] - 1 + c) % 28] << 31 - r % 6, u[4 + (r / 6 | 0)] |= e[28 + (a[r + 24] - 1 + c) % 28] << 31 - r % 6;
+ for (u[0] = u[0] << 1 | u[0] >>> 31, r = 1; r < 7; r++) u[r] = u[r] >>> 4 * (r - 1) + 3;
+ u[7] = u[7] << 5 | u[7] >>> 27
+ }
+ var h = this._invSubKeys = [];
+ for (r = 0; r < 16; r++) h[r] = i[15 - r]
+ },
+ encryptBlock: function(t, e) {
+ this._doCryptBlock(t, e, this._subKeys)
+ },
+ decryptBlock: function(t, e) {
+ this._doCryptBlock(t, e, this._invSubKeys)
+ },
+ _doCryptBlock: function(t, e, r) {
+ this._lBlock = t[e], this._rBlock = t[e + 1], p.call(this, 4, 252645135), p.call(this, 16, 65535), l.call(this, 2, 858993459), l.call(this, 8, 16711935), p.call(this, 1, 1431655765);
+ for (var n = 0; n < 16; n++) {
+ for (var i = r[n], o = this._lBlock, s = this._rBlock, a = 0, f = 0; f < 8; f++) a |= u[f][((s ^ i[f]) & c[f]) >>> 0];
+ this._lBlock = s, this._rBlock = o ^ a
+ }
+ var h = this._lBlock;
+ this._lBlock = this._rBlock, this._rBlock = h, p.call(this, 1, 1431655765), l.call(this, 8, 16711935), l.call(this, 2, 858993459), p.call(this, 16, 65535), p.call(this, 4, 252645135), t[e] = this._lBlock, t[e + 1] = this._rBlock
+ },
+ keySize: 2,
+ ivSize: 2,
+ blockSize: 2
+ });
+
+ function p(t, e) {
+ var r = (this._lBlock >>> t ^ this._rBlock) & e;
+ this._rBlock ^= r, this._lBlock ^= r << t
+ }
+ function l(t, e) {
+ var r = (this._rBlock >>> t ^ this._lBlock) & e;
+ this._lBlock ^= r, this._rBlock ^= r << t
+ }
+ t.DES = i._createHelper(h);
+ var y = o.TripleDES = i.extend({
+ _doReset: function() {
+ var t = this._key.words;
+ this._des1 = h.createEncryptor(r.create(t.slice(0, 2))), this._des2 = h.createEncryptor(r.create(t.slice(2, 4))), this._des3 = h.createEncryptor(r.create(t.slice(4, 6)))
+ },
+ encryptBlock: function(t, e) {
+ this._des1.encryptBlock(t, e), this._des2.decryptBlock(t, e), this._des3.encryptBlock(t, e)
+ },
+ decryptBlock: function(t, e) {
+ this._des3.decryptBlock(t, e), this._des2.encryptBlock(t, e), this._des1.decryptBlock(t, e)
+ },
+ keySize: 6,
+ ivSize: 2,
+ blockSize: 2
+ });
+ t.TripleDES = i._createHelper(y)
+ }(), n.TripleDES)
+ },
+ 3240: function(t, e, r) {
+ var n, i, o, s, a, f;
+ t.exports = (n = r(9021), o = (i = n)
+ .lib, s = o.Base, a = o.WordArray, (f = i.x64 = {})
+ .Word = s.extend({
+ init: function(t, e) {
+ this.high = t, this.low = e
+ }
+ }), f.WordArray = s.extend({
+ init: function(t, e) {
+ t = this.words = t || [], this.sigBytes = null != e ? e : 8 * t.length
+ },
+ toX32: function() {
+ for (var t = this.words, e = t.length, r = [], n = 0; n < e; n++) {
+ var i = t[n];
+ r.push(i.high), r.push(i.low)
+ }
+ return a.create(r, this.sigBytes)
+ },
+ clone: function() {
+ for (var t = s.clone.call(this), e = t.words = this.words.slice(0), r = e.length, n = 0; n < r; n++) e[n] = e[n].clone();
+ return t
+ }
+ }), n)
+ },
+ 41: (t, e, r) => {
+ "use strict";
+ var n = r(655),
+ i = r(8068),
+ o = r(9675),
+ s = r(5795);
+ t.exports = function(t, e, r) {
+ if (!t || "object" != typeof t && "function" != typeof t) throw new o("`obj` must be an object or a function`");
+ if ("string" != typeof e && "symbol" != typeof e) throw new o("`property` must be a string or a symbol`");
+ if (arguments.length > 3 && "boolean" != typeof arguments[3] && null !== arguments[3]) throw new o("`nonEnumerable`, if provided, must be a boolean or null");
+ if (arguments.length > 4 && "boolean" != typeof arguments[4] && null !== arguments[4]) throw new o("`nonWritable`, if provided, must be a boolean or null");
+ if (arguments.length > 5 && "boolean" != typeof arguments[5] && null !== arguments[5]) throw new o("`nonConfigurable`, if provided, must be a boolean or null");
+ if (arguments.length > 6 && "boolean" != typeof arguments[6]) throw new o("`loose`, if provided, must be a boolean");
+ var a = arguments.length > 3 ? arguments[3] : null,
+ f = arguments.length > 4 ? arguments[4] : null,
+ u = arguments.length > 5 ? arguments[5] : null,
+ c = arguments.length > 6 && arguments[6],
+ h = !! s && s(t, e);
+ if (n) n(t, e, {
+ configurable: null === u && h ? h.configurable : !u,
+ enumerable: null === a && h ? h.enumerable : !a,
+ value: r,
+ writable: null === f && h ? h.writable : !f
+ });
+ else {
+ if (!c && (a || f || u)) throw new i("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");
+ t[e] = r
+ }
+ }
+ },
+ 655: (t, e, r) => {
+ "use strict";
+ var n = r(453)("%Object.defineProperty%", !0) || !1;
+ if (n) try {
+ n({}, "a", {
+ value: 1
+ })
+ } catch (t) {
+ n = !1
+ }
+ t.exports = n
+ },
+ 1237: t => {
+ "use strict";
+ t.exports = EvalError
+ },
+ 9383: t => {
+ "use strict";
+ t.exports = Error
+ },
+ 9290: t => {
+ "use strict";
+ t.exports = RangeError
+ },
+ 9538: t => {
+ "use strict";
+ t.exports = ReferenceError
+ },
+ 8068: t => {
+ "use strict";
+ t.exports = SyntaxError
+ },
+ 9675: t => {
+ "use strict";
+ t.exports = TypeError
+ },
+ 5345: t => {
+ "use strict";
+ t.exports = URIError
+ },
+ 9353: t => {
+ "use strict";
+ var e = Object.prototype.toString,
+ r = Math.max,
+ n = function(t, e) {
+ for (var r = [], n = 0; n < t.length; n += 1) r[n] = t[n];
+ for (var i = 0; i < e.length; i += 1) r[i + t.length] = e[i];
+ return r
+ };
+ t.exports = function(t) {
+ var i = this;
+ if ("function" != typeof i || "[object Function]" !== e.apply(i)) throw new TypeError("Function.prototype.bind called on incompatible " + i);
+ for (var o, s = function(t, e) {
+ for (var r = [], n = 1, i = 0; n < t.length; n += 1, i += 1) r[i] = t[n];
+ return r
+ }(arguments), a = r(0, i.length - s.length), f = [], u = 0; u < a; u++) f[u] = "$" + u;
+ if (o = Function("binder", "return function (" + function(t, e) {
+ for (var r = "", n = 0; n < t.length; n += 1) r += t[n], n + 1 < t.length && (r += ",");
+ return r
+ }(f) + "){ return binder.apply(this,arguments); }")((function() {
+ if (this instanceof o) {
+ var e = i.apply(this, n(s, arguments));
+ return Object(e) === e ? e : this
+ }
+ return i.apply(t, n(s, arguments))
+ })), i.prototype) {
+ var c = function() {};
+ c.prototype = i.prototype, o.prototype = new c, c.prototype = null
+ }
+ return o
+ }
+ },
+ 6743: (t, e, r) => {
+ "use strict";
+ var n = r(9353);
+ t.exports = Function.prototype.bind || n
+ },
+ 453: (t, e, r) => {
+ "use strict";
+ var n, i = r(9383),
+ o = r(1237),
+ s = r(9290),
+ a = r(9538),
+ f = r(8068),
+ u = r(9675),
+ c = r(5345),
+ h = Function,
+ p = function(t) {
+ try {
+ return h('"use strict"; return (' + t + ").constructor;")()
+ } catch (t) {}
+ }, l = Object.getOwnPropertyDescriptor;
+ if (l) try {
+ l({}, "")
+ } catch (t) {
+ l = null
+ }
+ var y = function() {
+ throw new u
+ }, g = l ? function() {
+ try {
+ return y
+ } catch (t) {
+ try {
+ return l(arguments, "callee")
+ .get
+ } catch (t) {
+ return y
+ }
+ }
+ }() : y,
+ d = r(4039)(),
+ v = r(24)(),
+ m = Object.getPrototypeOf || (v ? function(t) {
+ return t.__proto__
+ } : null),
+ S = {}, _ = "undefined" != typeof Uint8Array && m ? m(Uint8Array) : n,
+ b = {
+ __proto__: null,
+ "%AggregateError%": "undefined" == typeof AggregateError ? n : AggregateError,
+ "%Array%": Array,
+ "%ArrayBuffer%": "undefined" == typeof ArrayBuffer ? n : ArrayBuffer,
+ "%ArrayIteratorPrototype%": d && m ? m([][Symbol.iterator]()) : n,
+ "%AsyncFromSyncIteratorPrototype%": n,
+ "%AsyncFunction%": S,
+ "%AsyncGenerator%": S,
+ "%AsyncGeneratorFunction%": S,
+ "%AsyncIteratorPrototype%": S,
+ "%Atomics%": "undefined" == typeof Atomics ? n : Atomics,
+ "%BigInt%": "undefined" == typeof BigInt ? n : BigInt,
+ "%BigInt64Array%": "undefined" == typeof BigInt64Array ? n : BigInt64Array,
+ "%BigUint64Array%": "undefined" == typeof BigUint64Array ? n : BigUint64Array,
+ "%Boolean%": Boolean,
+ "%DataView%": "undefined" == typeof DataView ? n : DataView,
+ "%Date%": Date,
+ "%decodeURI%": decodeURI,
+ "%decodeURIComponent%": decodeURIComponent,
+ "%encodeURI%": encodeURI,
+ "%encodeURIComponent%": encodeURIComponent,
+ "%Error%": i,
+ "%eval%": eval,
+ "%EvalError%": o,
+ "%Float32Array%": "undefined" == typeof Float32Array ? n : Float32Array,
+ "%Float64Array%": "undefined" == typeof Float64Array ? n : Float64Array,
+ "%FinalizationRegistry%": "undefined" == typeof FinalizationRegistry ? n : FinalizationRegistry,
+ "%Function%": h,
+ "%GeneratorFunction%": S,
+ "%Int8Array%": "undefined" == typeof Int8Array ? n : Int8Array,
+ "%Int16Array%": "undefined" == typeof Int16Array ? n : Int16Array,
+ "%Int32Array%": "undefined" == typeof Int32Array ? n : Int32Array,
+ "%isFinite%": isFinite,
+ "%isNaN%": isNaN,
+ "%IteratorPrototype%": d && m ? m(m([][Symbol.iterator]())) : n,
+ "%JSON%": "object" == typeof JSON ? JSON : n,
+ "%Map%": "undefined" == typeof Map ? n : Map,
+ "%MapIteratorPrototype%": "undefined" != typeof Map && d && m ? m((new Map)[Symbol.iterator]()) : n,
+ "%Math%": Math,
+ "%Number%": Number,
+ "%Object%": Object,
+ "%parseFloat%": parseFloat,
+ "%parseInt%": parseInt,
+ "%Promise%": "undefined" == typeof Promise ? n : Promise,
+ "%Proxy%": "undefined" == typeof Proxy ? n : Proxy,
+ "%RangeError%": s,
+ "%ReferenceError%": a,
+ "%Reflect%": "undefined" == typeof Reflect ? n : Reflect,
+ "%RegExp%": RegExp,
+ "%Set%": "undefined" == typeof Set ? n : Set,
+ "%SetIteratorPrototype%": "undefined" != typeof Set && d && m ? m((new Set)[Symbol.iterator]()) : n,
+ "%SharedArrayBuffer%": "undefined" == typeof SharedArrayBuffer ? n : SharedArrayBuffer,
+ "%String%": String,
+ "%StringIteratorPrototype%": d && m ? m("" [Symbol.iterator]()) : n,
+ "%Symbol%": d ? Symbol : n,
+ "%SyntaxError%": f,
+ "%ThrowTypeError%": g,
+ "%TypedArray%": _,
+ "%TypeError%": u,
+ "%Uint8Array%": "undefined" == typeof Uint8Array ? n : Uint8Array,
+ "%Uint8ClampedArray%": "undefined" == typeof Uint8ClampedArray ? n : Uint8ClampedArray,
+ "%Uint16Array%": "undefined" == typeof Uint16Array ? n : Uint16Array,
+ "%Uint32Array%": "undefined" == typeof Uint32Array ? n : Uint32Array,
+ "%URIError%": c,
+ "%WeakMap%": "undefined" == typeof WeakMap ? n : WeakMap,
+ "%WeakRef%": "undefined" == typeof WeakRef ? n : WeakRef,
+ "%WeakSet%": "undefined" == typeof WeakSet ? n : WeakSet
+ };
+ if (m) try {
+ null.error
+ } catch (t) {
+ var E = m(m(t));
+ b["%Error.prototype%"] = E
+ }
+ var w = function t(e) {
+ var r;
+ if ("%AsyncFunction%" === e) r = p("async function () {}");
+ else if ("%GeneratorFunction%" === e) r = p("function* () {}");
+ else if ("%AsyncGeneratorFunction%" === e) r = p("async function* () {}");
+ else if ("%AsyncGenerator%" === e) {
+ var n = t("%AsyncGeneratorFunction%");
+ n && (r = n.prototype)
+ } else if ("%AsyncIteratorPrototype%" === e) {
+ var i = t("%AsyncGenerator%");
+ i && m && (r = m(i.prototype))
+ }
+ return b[e] = r, r
+ }, O = {
+ __proto__: null,
+ "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"],
+ "%ArrayPrototype%": ["Array", "prototype"],
+ "%ArrayProto_entries%": ["Array", "prototype", "entries"],
+ "%ArrayProto_forEach%": ["Array", "prototype", "forEach"],
+ "%ArrayProto_keys%": ["Array", "prototype", "keys"],
+ "%ArrayProto_values%": ["Array", "prototype", "values"],
+ "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"],
+ "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"],
+ "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"],
+ "%BooleanPrototype%": ["Boolean", "prototype"],
+ "%DataViewPrototype%": ["DataView", "prototype"],
+ "%DatePrototype%": ["Date", "prototype"],
+ "%ErrorPrototype%": ["Error", "prototype"],
+ "%EvalErrorPrototype%": ["EvalError", "prototype"],
+ "%Float32ArrayPrototype%": ["Float32Array", "prototype"],
+ "%Float64ArrayPrototype%": ["Float64Array", "prototype"],
+ "%FunctionPrototype%": ["Function", "prototype"],
+ "%Generator%": ["GeneratorFunction", "prototype"],
+ "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"],
+ "%Int8ArrayPrototype%": ["Int8Array", "prototype"],
+ "%Int16ArrayPrototype%": ["Int16Array", "prototype"],
+ "%Int32ArrayPrototype%": ["Int32Array", "prototype"],
+ "%JSONParse%": ["JSON", "parse"],
+ "%JSONStringify%": ["JSON", "stringify"],
+ "%MapPrototype%": ["Map", "prototype"],
+ "%NumberPrototype%": ["Number", "prototype"],
+ "%ObjectPrototype%": ["Object", "prototype"],
+ "%ObjProto_toString%": ["Object", "prototype", "toString"],
+ "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"],
+ "%PromisePrototype%": ["Promise", "prototype"],
+ "%PromiseProto_then%": ["Promise", "prototype", "then"],
+ "%Promise_all%": ["Promise", "all"],
+ "%Promise_reject%": ["Promise", "reject"],
+ "%Promise_resolve%": ["Promise", "resolve"],
+ "%RangeErrorPrototype%": ["RangeError", "prototype"],
+ "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"],
+ "%RegExpPrototype%": ["RegExp", "prototype"],
+ "%SetPrototype%": ["Set", "prototype"],
+ "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"],
+ "%StringPrototype%": ["String", "prototype"],
+ "%SymbolPrototype%": ["Symbol", "prototype"],
+ "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"],
+ "%TypedArrayPrototype%": ["TypedArray", "prototype"],
+ "%TypeErrorPrototype%": ["TypeError", "prototype"],
+ "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"],
+ "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"],
+ "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"],
+ "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"],
+ "%URIErrorPrototype%": ["URIError", "prototype"],
+ "%WeakMapPrototype%": ["WeakMap", "prototype"],
+ "%WeakSetPrototype%": ["WeakSet", "prototype"]
+ }, B = r(6743),
+ A = r(9957),
+ x = B.call(Function.call, Array.prototype.concat),
+ P = B.call(Function.apply, Array.prototype.splice),
+ T = B.call(Function.call, String.prototype.replace),
+ I = B.call(Function.call, String.prototype.slice),
+ k = B.call(Function.call, RegExp.prototype.exec),
+ D = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,
+ R = /\\(\\)?/g,
+ N = function(t, e) {
+ var r, n = t;
+ if (A(O, n) && (n = "%" + (r = O[n])[0] + "%"), A(b, n)) {
+ var i = b[n];
+ if (i === S && (i = w(n)), void 0 === i && !e) throw new u("intrinsic " + t + " exists, but is not available. Please file an issue!");
+ return {
+ alias: r,
+ name: n,
+ value: i
+ }
+ }
+ throw new f("intrinsic " + t + " does not exist!")
+ };
+ t.exports = function(t, e) {
+ if ("string" != typeof t || 0 === t.length) throw new u("intrinsic name must be a non-empty string");
+ if (arguments.length > 1 && "boolean" != typeof e) throw new u('"allowMissing" argument must be a boolean');
+ if (null === k(/^%?[^%]*%?$/, t)) throw new f("`%` may not be present anywhere but at the beginning and end of the intrinsic name");
+ var r = function(t) {
+ var e = I(t, 0, 1),
+ r = I(t, -1);
+ if ("%" === e && "%" !== r) throw new f("invalid intrinsic syntax, expected closing `%`");
+ if ("%" === r && "%" !== e) throw new f("invalid intrinsic syntax, expected opening `%`");
+ var n = [];
+ return T(t, D, (function(t, e, r, i) {
+ n[n.length] = r ? T(i, R, "$1") : e || t
+ })), n
+ }(t),
+ n = r.length > 0 ? r[0] : "",
+ i = N("%" + n + "%", e),
+ o = i.name,
+ s = i.value,
+ a = !1,
+ c = i.alias;
+ c && (n = c[0], P(r, x([0, 1], c)));
+ for (var h = 1, p = !0; h < r.length; h += 1) {
+ var y = r[h],
+ g = I(y, 0, 1),
+ d = I(y, -1);
+ if (('"' === g || "'" === g || "`" === g || '"' === d || "'" === d || "`" === d) && g !== d) throw new f("property names with quotes must have matching quotes");
+ if ("constructor" !== y && p || (a = !0), A(b, o = "%" + (n += "." + y) + "%")) s = b[o];
+ else if (null != s) {
+ if (!(y in s)) {
+ if (!e) throw new u("base intrinsic for " + t + " exists, but the property is not available.");
+ return
+ }
+ if (l && h + 1 >= r.length) {
+ var v = l(s, y);
+ s = (p = !! v) && "get" in v && !("originalValue" in v.get) ? v.get : s[y]
+ } else p = A(s, y), s = s[y];
+ p && !a && (b[o] = s)
+ }
+ }
+ return s
+ }
+ },
+ 5795: (t, e, r) => {
+ "use strict";
+ var n = r(453)("%Object.getOwnPropertyDescriptor%", !0);
+ if (n) try {
+ n([], "length")
+ } catch (t) {
+ n = null
+ }
+ t.exports = n
+ },
+ 592: (t, e, r) => {
+ "use strict";
+ var n = r(655),
+ i = function() {
+ return !!n
+ };
+ i.hasArrayLengthDefineBug = function() {
+ if (!n) return null;
+ try {
+ return 1 !== n([], "length", {
+ value: 1
+ })
+ .length
+ } catch (t) {
+ return !0
+ }
+ }, t.exports = i
+ },
+ 24: t => {
+ "use strict";
+ var e = {
+ __proto__: null,
+ foo: {}
+ }, r = Object;
+ t.exports = function() {
+ return {
+ __proto__: e
+ }.foo === e.foo && !(e instanceof r)
+ }
+ },
+ 4039: (t, e, r) => {
+ "use strict";
+ var n = "undefined" != typeof Symbol && Symbol,
+ i = r(1333);
+ t.exports = function() {
+ return "function" == typeof n && "function" == typeof Symbol && "symbol" == typeof n("foo") && "symbol" == typeof Symbol("bar") && i()
+ }
+ },
+ 1333: t => {
+ "use strict";
+ t.exports = function() {
+ if ("function" != typeof Symbol || "function" != typeof Object.getOwnPropertySymbols) return !1;
+ if ("symbol" == typeof Symbol.iterator) return !0;
+ var t = {}, e = Symbol("test"),
+ r = Object(e);
+ if ("string" == typeof e) return !1;
+ if ("[object Symbol]" !== Object.prototype.toString.call(e)) return !1;
+ if ("[object Symbol]" !== Object.prototype.toString.call(r)) return !1;
+ for (e in t[e] = 42, t) return !1;
+ if ("function" == typeof Object.keys && 0 !== Object.keys(t)
+ .length) return !1;
+ if ("function" == typeof Object.getOwnPropertyNames && 0 !== Object.getOwnPropertyNames(t)
+ .length) return !1;
+ var n = Object.getOwnPropertySymbols(t);
+ if (1 !== n.length || n[0] !== e) return !1;
+ if (!Object.prototype.propertyIsEnumerable.call(t, e)) return !1;
+ if ("function" == typeof Object.getOwnPropertyDescriptor) {
+ var i = Object.getOwnPropertyDescriptor(t, e);
+ if (42 !== i.value || !0 !== i.enumerable) return !1
+ }
+ return !0
+ }
+ },
+ 9957: (t, e, r) => {
+ "use strict";
+ var n = Function.prototype.call,
+ i = Object.prototype.hasOwnProperty,
+ o = r(6743);
+ t.exports = o.call(n, i)
+ },
+ 251: (t, e) => {
+ e.read = function(t, e, r, n, i) {
+ var o, s, a = 8 * i - n - 1,
+ f = (1 << a) - 1,
+ u = f >> 1,
+ c = -7,
+ h = r ? i - 1 : 0,
+ p = r ? -1 : 1,
+ l = t[e + h];
+ for (h += p, o = l & (1 << -c) - 1, l >>= -c, c += a; c > 0; o = 256 * o + t[e + h], h += p, c -= 8);
+ for (s = o & (1 << -c) - 1, o >>= -c, c += n; c > 0; s = 256 * s + t[e + h], h += p, c -= 8);
+ if (0 === o) o = 1 - u;
+ else {
+ if (o === f) return s ? NaN : 1 / 0 * (l ? -1 : 1);
+ s += Math.pow(2, n), o -= u
+ }
+ return (l ? -1 : 1) * s * Math.pow(2, o - n)
+ }, e.write = function(t, e, r, n, i, o) {
+ var s, a, f, u = 8 * o - i - 1,
+ c = (1 << u) - 1,
+ h = c >> 1,
+ p = 23 === i ? Math.pow(2, -24) - Math.pow(2, -77) : 0,
+ l = n ? 0 : o - 1,
+ y = n ? 1 : -1,
+ g = e < 0 || 0 === e && 1 / e < 0 ? 1 : 0;
+ for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (a = isNaN(e) ? 1 : 0, s = c) : (s = Math.floor(Math.log(e) / Math.LN2), e * (f = Math.pow(2, -s)) < 1 && (s--, f *= 2), (e += s + h >= 1 ? p / f : p * Math.pow(2, 1 - h)) * f >= 2 && (s++, f /= 2), s + h >= c ? (a = 0, s = c) : s + h >= 1 ? (a = (e * f - 1) * Math.pow(2, i), s += h) : (a = e * Math.pow(2, h - 1) * Math.pow(2, i), s = 0)); i >= 8; t[r + l] = 255 & a, l += y, a /= 256, i -= 8);
+ for (s = s << i | a, u += i; u > 0; t[r + l] = 255 & s, l += y, s /= 256, u -= 8);
+ t[r + l - y] |= 128 * g
+ }
+ },
+ 3229: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = r(7449),
+ o = r(5682),
+ s = (r(3200), r(3100)
+ .Ber, r(8226)
+ ._),
+ a = r(8226),
+ f = r(1768),
+ u = r(7460);
+ void 0 === i.RSA_NO_PADDING && (i.RSA_NO_PADDING = 3), t.exports = function() {
+ var t = {
+ node10: ["md4", "md5", "ripemd160", "sha1", "sha224", "sha256", "sha384", "sha512"],
+ node: ["md4", "md5", "ripemd160", "sha1", "sha224", "sha256", "sha384", "sha512"],
+ iojs: ["md4", "md5", "ripemd160", "sha1", "sha224", "sha256", "sha384", "sha512"],
+ browser: ["md5", "ripemd160", "sha1", "sha256", "sha512"]
+ }, e = "pkcs1_oaep",
+ r = "pkcs1",
+ i = {
+ private: "pkcs1-private-pem",
+ "private-der": "pkcs1-private-der",
+ public: "pkcs8-public-pem",
+ "public-der": "pkcs8-public-der"
+ };
+
+ function c(t, i, f) {
+ if (!(this instanceof c)) return new c(t, i, f);
+ s.isObject(i) && (f = i, i = void 0), this.$options = {
+ signingScheme: r,
+ signingSchemeOptions: {
+ hash: "sha256",
+ saltLength: null
+ },
+ encryptionScheme: e,
+ encryptionSchemeOptions: {
+ hash: "sha1",
+ label: null
+ },
+ environment: a.detectEnvironment(),
+ rsaUtils: this
+ }, this.keyPair = new o.Key, this.$cache = {}, n.isBuffer(t) || s.isString(t) ? this.importKey(t, i) : s.isObject(t) && this.generateKeyPair(t.b, t.e), this.setOptions(f)
+ }
+ return c.prototype.setOptions = function(n) {
+ if ((n = n || {})
+ .environment && (this.$options.environment = n.environment), n.signingScheme) {
+ if (s.isString(n.signingScheme)) {
+ var i = n.signingScheme.toLowerCase()
+ .split("-");
+ 1 == i.length ? t.node.indexOf(i[0]) > -1 ? (this.$options.signingSchemeOptions = {
+ hash: i[0]
+ }, this.$options.signingScheme = r) : (this.$options.signingScheme = i[0], this.$options.signingSchemeOptions = {
+ hash: null
+ }) : (this.$options.signingSchemeOptions = {
+ hash: i[1]
+ }, this.$options.signingScheme = i[0])
+ } else s.isObject(n.signingScheme) && (this.$options.signingScheme = n.signingScheme.scheme || r, this.$options.signingSchemeOptions = s.omit(n.signingScheme, "scheme"));
+ if (!f.isSignature(this.$options.signingScheme)) throw Error("Unsupported signing scheme");
+ if (this.$options.signingSchemeOptions.hash && -1 === t[this.$options.environment].indexOf(this.$options.signingSchemeOptions.hash)) throw Error("Unsupported hashing algorithm for " + this.$options.environment + " environment")
+ }
+ if (n.encryptionScheme) {
+ if (s.isString(n.encryptionScheme) ? (this.$options.encryptionScheme = n.encryptionScheme.toLowerCase(), this.$options.encryptionSchemeOptions = {}) : s.isObject(n.encryptionScheme) && (this.$options.encryptionScheme = n.encryptionScheme.scheme || e, this.$options.encryptionSchemeOptions = s.omit(n.encryptionScheme, "scheme")), !f.isEncryption(this.$options.encryptionScheme)) throw Error("Unsupported encryption scheme");
+ if (this.$options.encryptionSchemeOptions.hash && -1 === t[this.$options.environment].indexOf(this.$options.encryptionSchemeOptions.hash)) throw Error("Unsupported hashing algorithm for " + this.$options.environment + " environment")
+ }
+ this.keyPair.setOptions(this.$options)
+ }, c.prototype.generateKeyPair = function(t, e) {
+ if (e = e || 65537, (t = t || 2048) % 8 != 0) throw Error("Key size must be a multiple of 8.");
+ return this.keyPair.generate(t, e.toString(16)), this.$cache = {}, this
+ }, c.prototype.importKey = function(t, e) {
+ if (!t) throw Error("Empty key given");
+ if (e && (e = i[e] || e), !u.detectAndImport(this.keyPair, t, e) && void 0 === e) throw Error("Key format must be specified");
+ return this.$cache = {}, this
+ }, c.prototype.exportKey = function(t) {
+ return t = i[t = t || "private"] || t, this.$cache[t] || (this.$cache[t] = u.detectAndExport(this.keyPair, t)), this.$cache[t]
+ }, c.prototype.isPrivate = function() {
+ return this.keyPair.isPrivate()
+ }, c.prototype.isPublic = function(t) {
+ return this.keyPair.isPublic(t)
+ }, c.prototype.isEmpty = function(t) {
+ return !(this.keyPair.n || this.keyPair.e || this.keyPair.d)
+ }, c.prototype.encrypt = function(t, e, r) {
+ return this.$$encryptKey(!1, t, e, r)
+ }, c.prototype.decrypt = function(t, e) {
+ return this.$$decryptKey(!1, t, e)
+ }, c.prototype.encryptPrivate = function(t, e, r) {
+ return this.$$encryptKey(!0, t, e, r)
+ }, c.prototype.decryptPublic = function(t, e) {
+ return this.$$decryptKey(!0, t, e)
+ }, c.prototype.$$encryptKey = function(t, e, r, n) {
+ try {
+ var i = this.keyPair.encrypt(this.$getDataForEncrypt(e, n), t);
+ return "buffer" != r && r ? i.toString(r) : i
+ } catch (t) {
+ throw Error("Error during encryption. Original error: " + t)
+ }
+ }, c.prototype.$$decryptKey = function(t, e, r) {
+ try {
+ e = s.isString(e) ? n.from(e, "base64") : e;
+ var i = this.keyPair.decrypt(e, t);
+ if (null === i) throw Error("Key decrypt method returns null.");
+ return this.$getDecryptedData(i, r)
+ } catch (t) {
+ throw Error("Error during decryption (probably incorrect key). Original error: " + t)
+ }
+ }, c.prototype.sign = function(t, e, r) {
+ if (!this.isPrivate()) throw Error("This is not private key");
+ var n = this.keyPair.sign(this.$getDataForEncrypt(t, r));
+ return e && "buffer" != e && (n = n.toString(e)), n
+ }, c.prototype.verify = function(t, e, r, n) {
+ if (!this.isPublic()) throw Error("This is not public key");
+ return n = n && "buffer" != n ? n : null, this.keyPair.verify(this.$getDataForEncrypt(t, r), e, n)
+ }, c.prototype.getKeySize = function() {
+ return this.keyPair.keySize
+ }, c.prototype.getMaxMessageSize = function() {
+ return this.keyPair.maxMessageLength
+ }, c.prototype.$getDataForEncrypt = function(t, e) {
+ if (s.isString(t) || s.isNumber(t)) return n.from("" + t, e || "utf8");
+ if (n.isBuffer(t)) return t;
+ if (s.isObject(t)) return n.from(JSON.stringify(t));
+ throw Error("Unexpected data type")
+ }, c.prototype.$getDecryptedData = function(t, e) {
+ return "buffer" == (e = e || "buffer") ? t : "json" == e ? JSON.parse(t.toString()) : t.toString(e)
+ }, c
+ }()
+ },
+ 4538: (t, e, r) => {
+ var n = r(3200);
+ t.exports = {
+ getEngine: function(t, e) {
+ var i = r(7469);
+ return "node" === e.environment && "function" == typeof n.publicEncrypt && "function" == typeof n.privateDecrypt && (i = "function" == typeof n.privateEncrypt && "function" == typeof n.publicDecrypt ? r(2418) : r(1957)), i(t, e)
+ }
+ }
+ },
+ 2418: (t, e, r) => {
+ var n = r(3200),
+ i = r(7449),
+ o = r(1768);
+ t.exports = function(t, e) {
+ var r = o.pkcs1.makeScheme(t, e);
+ return {
+ encrypt: function(t, o) {
+ var s;
+ if (o) return s = i.RSA_PKCS1_PADDING, e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding), n.privateEncrypt({
+ key: e.rsaUtils.exportKey("private"),
+ padding: s
+ }, t);
+ s = i.RSA_PKCS1_OAEP_PADDING, "pkcs1" === e.encryptionScheme && (s = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding);
+ var a = t;
+ return s === i.RSA_NO_PADDING && (a = r.pkcs0pad(t)), n.publicEncrypt({
+ key: e.rsaUtils.exportKey("public"),
+ padding: s
+ }, a)
+ },
+ decrypt: function(t, o) {
+ var s;
+ if (o) return s = i.RSA_PKCS1_PADDING, e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding), n.publicDecrypt({
+ key: e.rsaUtils.exportKey("public"),
+ padding: s
+ }, t);
+ s = i.RSA_PKCS1_OAEP_PADDING, "pkcs1" === e.encryptionScheme && (s = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding);
+ var a = n.privateDecrypt({
+ key: e.rsaUtils.exportKey("private"),
+ padding: s
+ }, t);
+ return s === i.RSA_NO_PADDING ? r.pkcs0unpad(a) : a
+ }
+ }
+ }
+ },
+ 7469: (t, e, r) => {
+ var n = r(1973),
+ i = r(1768);
+ t.exports = function(t, e) {
+ var r = i.pkcs1.makeScheme(t, e);
+ return {
+ encrypt: function(e, i) {
+ var o, s;
+ return i ? (o = new n(r.encPad(e, {
+ type: 1
+ })), s = t.$doPrivate(o)) : (o = new n(t.encryptionScheme.encPad(e)), s = t.$doPublic(o)), s.toBuffer(t.encryptedDataLength)
+ },
+ decrypt: function(e, i) {
+ var o, s = new n(e);
+ return i ? (o = t.$doPublic(s), r.encUnPad(o.toBuffer(t.encryptedDataLength), {
+ type: 1
+ })) : (o = t.$doPrivate(s), t.encryptionScheme.encUnPad(o.toBuffer(t.encryptedDataLength)))
+ }
+ }
+ }
+ },
+ 1957: (t, e, r) => {
+ var n = r(3200),
+ i = r(7449),
+ o = r(1768);
+ t.exports = function(t, e) {
+ var s = r(7469)(t, e),
+ a = o.pkcs1.makeScheme(t, e);
+ return {
+ encrypt: function(t, r) {
+ if (r) return s.encrypt(t, r);
+ var o = i.RSA_PKCS1_OAEP_PADDING;
+ "pkcs1" === e.encryptionScheme && (o = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (o = e.encryptionSchemeOptions.padding);
+ var f = t;
+ return o === i.RSA_NO_PADDING && (f = a.pkcs0pad(t)), n.publicEncrypt({
+ key: e.rsaUtils.exportKey("public"),
+ padding: o
+ }, f)
+ },
+ decrypt: function(t, r) {
+ if (r) return s.decrypt(t, r);
+ var o = i.RSA_PKCS1_OAEP_PADDING;
+ "pkcs1" === e.encryptionScheme && (o = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (o = e.encryptionSchemeOptions.padding);
+ var f = n.privateDecrypt({
+ key: e.rsaUtils.exportKey("private"),
+ padding: o
+ }, t);
+ return o === i.RSA_NO_PADDING ? a.pkcs0unpad(f) : f
+ }
+ }
+ }
+ },
+ 3374: (t, e, r) => {
+ r(8226)
+ ._, r(8226), t.exports = {
+ privateExport: function(t, e) {
+ return {
+ n: t.n.toBuffer(),
+ e: t.e,
+ d: t.d.toBuffer(),
+ p: t.p.toBuffer(),
+ q: t.q.toBuffer(),
+ dmp1: t.dmp1.toBuffer(),
+ dmq1: t.dmq1.toBuffer(),
+ coeff: t.coeff.toBuffer()
+ }
+ },
+ privateImport: function(t, e, r) {
+ if (!(e.n && e.e && e.d && e.p && e.q && e.dmp1 && e.dmq1 && e.coeff)) throw Error("Invalid key data");
+ t.setPrivate(e.n, e.e, e.d, e.p, e.q, e.dmp1, e.dmq1, e.coeff)
+ },
+ publicExport: function(t, e) {
+ return {
+ n: t.n.toBuffer(),
+ e: t.e
+ }
+ },
+ publicImport: function(t, e, r) {
+ if (!e.n || !e.e) throw Error("Invalid key data");
+ t.setPublic(e.n, e.e)
+ },
+ autoImport: function(e, r) {
+ return !(!r.n || !r.e || (r.d && r.p && r.q && r.dmp1 && r.dmq1 && r.coeff ? (t.exports.privateImport(e, r), 0) : (t.exports.publicImport(e, r), 0)))
+ }
+ }
+ },
+ 7460: (t, e, r) => {
+ function n(t) {
+ t = t.split("-");
+ for (var e = "private", r = {
+ type: "default"
+ }, n = 1; n < t.length; n++) if (t[n]) switch (t[n]) {
+ case "public":
+ case "private":
+ e = t[n];
+ break;
+ case "pem":
+ case "der":
+ r.type = t[n]
+ }
+ return {
+ scheme: t[0],
+ keyType: e,
+ keyOpt: r
+ }
+ }
+ r(8226)
+ ._, t.exports = {
+ pkcs1: r(6566),
+ pkcs8: r(8573),
+ components: r(3374),
+ openssh: r(3194),
+ isPrivateExport: function(e) {
+ return t.exports[e] && "function" == typeof t.exports[e].privateExport
+ },
+ isPrivateImport: function(e) {
+ return t.exports[e] && "function" == typeof t.exports[e].privateImport
+ },
+ isPublicExport: function(e) {
+ return t.exports[e] && "function" == typeof t.exports[e].publicExport
+ },
+ isPublicImport: function(e) {
+ return t.exports[e] && "function" == typeof t.exports[e].publicImport
+ },
+ detectAndImport: function(e, r, i) {
+ if (void 0 === i) {
+ for (var o in t.exports) if ("function" == typeof t.exports[o].autoImport && t.exports[o].autoImport(e, r)) return !0
+ } else if (i) {
+ var s = n(i);
+ if (!t.exports[s.scheme]) throw Error("Unsupported key format");
+ "private" === s.keyType ? t.exports[s.scheme].privateImport(e, r, s.keyOpt) : t.exports[s.scheme].publicImport(e, r, s.keyOpt)
+ }
+ return !1
+ },
+ detectAndExport: function(e, r) {
+ if (r) {
+ var i = n(r);
+ if (t.exports[i.scheme]) {
+ if ("private" === i.keyType) {
+ if (!e.isPrivate()) throw Error("This is not private key");
+ return t.exports[i.scheme].privateExport(e, i.keyOpt)
+ }
+ if (!e.isPublic()) throw Error("This is not public key");
+ return t.exports[i.scheme].publicExport(e, i.keyOpt)
+ }
+ throw Error("Unsupported key format")
+ }
+ }
+ }
+ },
+ 3194: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = r(8226)
+ ._,
+ o = r(8226),
+ s = r(1973);
+ const a = "-----BEGIN OPENSSH PRIVATE KEY-----", f = "-----END OPENSSH PRIVATE KEY-----";
+
+ function u(t) {
+ const e = t.buf.readInt32BE(t.off);
+ t.off += 4;
+ const r = t.buf.slice(t.off, t.off + e);
+ return t.off += e, r
+ }
+ function c(t, e) {
+ t.buf.writeInt32BE(e.byteLength, t.off), t.off += 4, t.off += e.copy(t.buf, t.off)
+ }
+ t.exports = {
+ privateExport: function(t, e) {
+ const r = t.n.toBuffer();
+ let i = n.alloc(4);
+ for (i.writeUInt32BE(t.e, 0); 0 === i[0];) i = i.slice(1);
+ const s = t.d.toBuffer(), u = t.coeff.toBuffer(), h = t.p.toBuffer(), p = t.q.toBuffer();
+ let l;
+ l = void 0 !== t.sshcomment ? n.from(t.sshcomment) : n.from([]);
+ const y = 15 + i.byteLength + 4 + r.byteLength, g = 23 + r.byteLength + 4 + i.byteLength + 4 + s.byteLength + 4 + u.byteLength + 4 + h.byteLength + 4 + p.byteLength + 4 + l.byteLength;
+ let d = 43 + y + 4 + g;
+ d += 8 * Math.ceil(g / 8) - g;
+ const v = n.alloc(d), m = {
+ buf: v,
+ off: 0
+ };
+ v.write("openssh-key-v1", "utf8"), v.writeUInt8(0, 14), m.off += 15, c(m, n.from("none")), c(m, n.from("none")), c(m, n.from("")), m.off = m.buf.writeUInt32BE(1, m.off), m.off = m.buf.writeUInt32BE(y, m.off), c(m, n.from("ssh-rsa")), c(m, i), c(m, r), m.off = m.buf.writeUInt32BE(d - 47 - y, m.off), m.off += 8, c(m, n.from("ssh-rsa")), c(m, r), c(m, i), c(m, s), c(m, u), c(m, h), c(m, p), c(m, l);
+ let S = 1;
+ for (; m.off < d;) m.off = m.buf.writeUInt8(S++, m.off);
+ return "der" === e.type ? m.buf : a + "\n" + o.linebrk(v.toString("base64"), 70) + "\n" + f + "\n"
+ },
+ privateImport: function(t, e, r) {
+ var c;
+ if ("der" !== (r = r || {})
+ .type) {
+ if (n.isBuffer(e) && (e = e.toString("utf8")), !i.isString(e)) throw Error("Unsupported key format");
+ var h = o.trimSurroundingText(e, a, f)
+ .replace(/\s+|\n\r|\n|\r$/gm, "");
+ c = n.from(h, "base64")
+ } else {
+ if (!n.isBuffer(e)) throw Error("Unsupported key format");
+ c = e
+ }
+ const p = {
+ buf: c,
+ off: 0
+ };
+ if ("openssh-key-v1" !== c.slice(0, 14)
+ .toString("ascii")) throw "Invalid file format.";
+ if (p.off += 15, "none" !== u(p)
+ .toString("ascii")) throw Error("Unsupported key type");
+ if ("none" !== u(p)
+ .toString("ascii")) throw Error("Unsupported key type");
+ if ("" !== u(p)
+ .toString("ascii")) throw Error("Unsupported key type");
+ if (p.off += 4, p.off += 4, "ssh-rsa" !== u(p)
+ .toString("ascii")) throw Error("Unsupported key type");
+ if (u(p), u(p), p.off += 12, "ssh-rsa" !== u(p)
+ .toString("ascii")) throw Error("Unsupported key type");
+ const l = u(p), y = u(p), g = u(p), d = u(p), v = u(p), m = u(p), S = new s(g), _ = new s(m), b = new s(v), E = S.mod(b.subtract(s.ONE)), w = S.mod(_.subtract(s.ONE));
+ t.setPrivate(l, y, g, v, m, E.toBuffer(), w.toBuffer(), d), t.sshcomment = u(p)
+ .toString("ascii")
+ },
+ publicExport: function(t, e) {
+ let r = n.alloc(4);
+ for (r.writeUInt32BE(t.e, 0); 0 === r[0];) r = r.slice(1);
+ const i = t.n.toBuffer(), o = n.alloc(r.byteLength + 4 + i.byteLength + 4 + 7 + 4), s = {
+ buf: o,
+ off: 0
+ };
+ c(s, n.from("ssh-rsa")), c(s, r), c(s, i);
+ let a = t.sshcomment || "";
+ return "der" === e.type ? s.buf : "ssh-rsa " + o.toString("base64") + " " + a + "\n"
+ },
+ publicImport: function(t, e, r) {
+ var o;
+ if ("der" !== (r = r || {})
+ .type) {
+ if (n.isBuffer(e) && (e = e.toString("utf8")), !i.isString(e)) throw Error("Unsupported key format"); {
+ if ("ssh-rsa " !== e.substring(0, 8)) throw Error("Unsupported key format");
+ let r = e.indexOf(" ", 8); - 1 === r ? r = e.length : t.sshcomment = e.substring(r + 1)
+ .replace(/\s+|\n\r|\n|\r$/gm, "");
+ const i = e.substring(8, r)
+ .replace(/\s+|\n\r|\n|\r$/gm, "");
+ o = n.from(i, "base64")
+ }
+ } else {
+ if (!n.isBuffer(e)) throw Error("Unsupported key format");
+ o = e
+ }
+ const s = {
+ buf: o,
+ off: 0
+ }, a = u(s)
+ .toString("ascii");
+ if ("ssh-rsa" !== a) throw Error("Invalid key type: " + a);
+ const f = u(s), c = u(s);
+ t.setPublic(c, f)
+ },
+ autoImport: function(e, r) {
+ return /^[\S\s]*-----BEGIN OPENSSH PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END OPENSSH PRIVATE KEY-----[\S\s]*$/g.test(r) ? (t.exports.privateImport(e, r), !0) : !! /^[\S\s]*ssh-rsa \s*(?=(([A-Za-z0-9+/=]+\s*)+))\1[\S\s]*$/g.test(r) && (t.exports.publicImport(e, r), !0)
+ }
+ }
+ },
+ 6566: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = r(3100)
+ .Ber,
+ o = r(8226)
+ ._,
+ s = r(8226);
+ const a = "-----BEGIN RSA PRIVATE KEY-----", f = "-----END RSA PRIVATE KEY-----", u = "-----BEGIN RSA PUBLIC KEY-----", c = "-----END RSA PUBLIC KEY-----";
+ t.exports = {
+ privateExport: function(t, e) {
+ e = e || {};
+ var r = t.n.toBuffer(),
+ n = t.d.toBuffer(),
+ o = t.p.toBuffer(),
+ u = t.q.toBuffer(),
+ c = t.dmp1.toBuffer(),
+ h = t.dmq1.toBuffer(),
+ p = t.coeff.toBuffer(),
+ l = r.length + n.length + o.length + u.length + c.length + h.length + p.length + 512,
+ y = new i.Writer({
+ size: l
+ });
+ return y.startSequence(), y.writeInt(0), y.writeBuffer(r, 2), y.writeInt(t.e), y.writeBuffer(n, 2), y.writeBuffer(o, 2), y.writeBuffer(u, 2), y.writeBuffer(c, 2), y.writeBuffer(h, 2), y.writeBuffer(p, 2), y.endSequence(), "der" === e.type ? y.buffer : a + "\n" + s.linebrk(y.buffer.toString("base64"), 64) + "\n" + f
+ },
+ privateImport: function(t, e, r) {
+ var u;
+ if ("der" !== (r = r || {})
+ .type) {
+ if (n.isBuffer(e) && (e = e.toString("utf8")), !o.isString(e)) throw Error("Unsupported key format");
+ var c = s.trimSurroundingText(e, a, f)
+ .replace(/\s+|\n\r|\n|\r$/gm, "");
+ u = n.from(c, "base64")
+ } else {
+ if (!n.isBuffer(e)) throw Error("Unsupported key format");
+ u = e
+ }
+ var h = new i.Reader(u);
+ h.readSequence(), h.readString(2, !0), t.setPrivate(h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0))
+ },
+ publicExport: function(t, e) {
+ e = e || {};
+ var r = t.n.toBuffer(),
+ n = r.length + 512,
+ o = new i.Writer({
+ size: n
+ });
+ return o.startSequence(), o.writeBuffer(r, 2), o.writeInt(t.e), o.endSequence(), "der" === e.type ? o.buffer : u + "\n" + s.linebrk(o.buffer.toString("base64"), 64) + "\n" + c
+ },
+ publicImport: function(t, e, r) {
+ var a;
+ if ("der" !== (r = r || {})
+ .type) {
+ if (n.isBuffer(e) && (e = e.toString("utf8")), o.isString(e)) {
+ var f = s.trimSurroundingText(e, u, c)
+ .replace(/\s+|\n\r|\n|\r$/gm, "");
+ a = n.from(f, "base64")
+ }
+ } else {
+ if (!n.isBuffer(e)) throw Error("Unsupported key format");
+ a = e
+ }
+ var h = new i.Reader(a);
+ h.readSequence(), t.setPublic(h.readString(2, !0), h.readString(2, !0))
+ },
+ autoImport: function(e, r) {
+ return /^[\S\s]*-----BEGIN RSA PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PRIVATE KEY-----[\S\s]*$/g.test(r) ? (t.exports.privateImport(e, r), !0) : !! /^[\S\s]*-----BEGIN RSA PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PUBLIC KEY-----[\S\s]*$/g.test(r) && (t.exports.publicImport(e, r), !0)
+ }
+ }
+ },
+ 8573: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = r(3100)
+ .Ber,
+ o = r(8226)
+ ._,
+ s = "1.2.840.113549.1.1.1",
+ a = r(8226);
+ const f = "-----BEGIN PRIVATE KEY-----", u = "-----END PRIVATE KEY-----", c = "-----BEGIN PUBLIC KEY-----", h = "-----END PUBLIC KEY-----";
+ t.exports = {
+ privateExport: function(t, e) {
+ e = e || {};
+ var r = t.n.toBuffer(),
+ n = t.d.toBuffer(),
+ o = t.p.toBuffer(),
+ c = t.q.toBuffer(),
+ h = t.dmp1.toBuffer(),
+ p = t.dmq1.toBuffer(),
+ l = t.coeff.toBuffer(),
+ y = r.length + n.length + o.length + c.length + h.length + p.length + l.length + 512,
+ g = new i.Writer({
+ size: y
+ });
+ g.startSequence(), g.writeInt(0), g.writeBuffer(r, 2), g.writeInt(t.e), g.writeBuffer(n, 2), g.writeBuffer(o, 2), g.writeBuffer(c, 2), g.writeBuffer(h, 2), g.writeBuffer(p, 2), g.writeBuffer(l, 2), g.endSequence();
+ var d = new i.Writer({
+ size: y
+ });
+ return d.startSequence(), d.writeInt(0), d.startSequence(), d.writeOID(s), d.writeNull(), d.endSequence(), d.writeBuffer(g.buffer, 4), d.endSequence(), "der" === e.type ? d.buffer : f + "\n" + a.linebrk(d.buffer.toString("base64"), 64) + "\n" + u
+ },
+ privateImport: function(t, e, r) {
+ var c;
+ if ("der" !== (r = r || {})
+ .type) {
+ if (n.isBuffer(e) && (e = e.toString("utf8")), !o.isString(e)) throw Error("Unsupported key format");
+ var h = a.trimSurroundingText(e, f, u)
+ .replace("-----END PRIVATE KEY-----", "")
+ .replace(/\s+|\n\r|\n|\r$/gm, "");
+ c = n.from(h, "base64")
+ } else {
+ if (!n.isBuffer(e)) throw Error("Unsupported key format");
+ c = e
+ }
+ var p = new i.Reader(c);
+ if (p.readSequence(), p.readInt(0), new i.Reader(p.readString(48, !0))
+ .readOID(6, !0) !== s) throw Error("Invalid Public key format");
+ var l = new i.Reader(p.readString(4, !0));
+ l.readSequence(), l.readString(2, !0), t.setPrivate(l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0))
+ },
+ publicExport: function(t, e) {
+ e = e || {};
+ var r = t.n.toBuffer(),
+ n = r.length + 512,
+ o = new i.Writer({
+ size: n
+ });
+ o.writeByte(0), o.startSequence(), o.writeBuffer(r, 2), o.writeInt(t.e), o.endSequence();
+ var f = new i.Writer({
+ size: n
+ });
+ return f.startSequence(), f.startSequence(), f.writeOID(s), f.writeNull(), f.endSequence(), f.writeBuffer(o.buffer, 3), f.endSequence(), "der" === e.type ? f.buffer : c + "\n" + a.linebrk(f.buffer.toString("base64"), 64) + "\n" + h
+ },
+ publicImport: function(t, e, r) {
+ var f;
+ if ("der" !== (r = r || {})
+ .type) {
+ if (n.isBuffer(e) && (e = e.toString("utf8")), o.isString(e)) {
+ var u = a.trimSurroundingText(e, c, h)
+ .replace(/\s+|\n\r|\n|\r$/gm, "");
+ f = n.from(u, "base64")
+ }
+ } else {
+ if (!n.isBuffer(e)) throw Error("Unsupported key format");
+ f = e
+ }
+ var p = new i.Reader(f);
+ if (p.readSequence(), new i.Reader(p.readString(48, !0))
+ .readOID(6, !0) !== s) throw Error("Invalid Public key format");
+ var l = new i.Reader(p.readString(3, !0));
+ l.readByte(), l.readSequence(), t.setPublic(l.readString(2, !0), l.readString(2, !0))
+ },
+ autoImport: function(e, r) {
+ return /^[\S\s]*-----BEGIN PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PRIVATE KEY-----[\S\s]*$/g.test(r) ? (t.exports.privateImport(e, r), !0) : !! /^[\S\s]*-----BEGIN PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PUBLIC KEY-----[\S\s]*$/g.test(r) && (t.exports.publicImport(e, r), !0)
+ }
+ }
+ },
+ 1973: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = r(3200),
+ o = r(8226)
+ ._;
+
+ function s(t, e) {
+ null != t && ("number" == typeof t ? this.fromNumber(t, e) : n.isBuffer(t) ? this.fromBuffer(t) : null == e && "string" != typeof t ? this.fromByteArray(t) : this.fromString(t, e))
+ }
+ function a() {
+ return new s(null)
+ }
+ s.prototype.am = function(t, e, r, n, i, o) {
+ for (var s = 16383 & e, a = e >> 14; --o >= 0;) {
+ var f = 16383 & this[t],
+ u = this[t++] >> 14,
+ c = a * f + u * s;
+ i = ((f = s * f + ((16383 & c) << 14) + r[n] + i) >> 28) + (c >> 14) + a * u, r[n++] = 268435455 & f
+ }
+ return i
+ }, s.prototype.DB = 28, s.prototype.DM = 268435455, s.prototype.DV = 1 << 28, s.prototype.FV = Math.pow(2, 52), s.prototype.F1 = 24, s.prototype.F2 = 4;
+ var f, u, c = new Array;
+ for (f = "0".charCodeAt(0), u = 0; u <= 9; ++u) c[f++] = u;
+ for (f = "a".charCodeAt(0), u = 10; u < 36; ++u) c[f++] = u;
+ for (f = "A".charCodeAt(0), u = 10; u < 36; ++u) c[f++] = u;
+
+ function h(t) {
+ return "0123456789abcdefghijklmnopqrstuvwxyz".charAt(t)
+ }
+ function p(t, e) {
+ var r = c[t.charCodeAt(e)];
+ return null == r ? -1 : r
+ }
+ function l(t) {
+ var e = a();
+ return e.fromInt(t), e
+ }
+ function y(t) {
+ var e, r = 1;
+ return 0 != (e = t >>> 16) && (t = e, r += 16), 0 != (e = t >> 8) && (t = e, r += 8), 0 != (e = t >> 4) && (t = e, r += 4), 0 != (e = t >> 2) && (t = e, r += 2), 0 != (e = t >> 1) && (t = e, r += 1), r
+ }
+ function g(t) {
+ this.m = t
+ }
+ function d(t) {
+ this.m = t, this.mp = t.invDigit(), this.mpl = 32767 & this.mp, this.mph = this.mp >> 15, this.um = (1 << t.DB - 15) - 1, this.mt2 = 2 * t.t
+ }
+ function v(t, e) {
+ return t & e
+ }
+ function m(t, e) {
+ return t | e
+ }
+ function S(t, e) {
+ return t ^ e
+ }
+ function _(t, e) {
+ return t & ~e
+ }
+ function b(t) {
+ if (0 === t) return -1;
+ var e = 0;
+ return 65535 & t || (t >>= 16, e += 16), 255 & t || (t >>= 8, e += 8), 15 & t || (t >>= 4, e += 4), 3 & t || (t >>= 2, e += 2), 1 & t || ++e, e
+ }
+ function E(t) {
+ for (var e = 0; 0 != t;) t &= t - 1, ++e;
+ return e
+ }
+ function w() {}
+ function O(t) {
+ return t
+ }
+ function B(t) {
+ this.r2 = a(), this.q3 = a(), s.ONE.dlShiftTo(2 * t.t, this.r2), this.mu = this.r2.divide(t), this.m = t
+ }
+ g.prototype.convert = function(t) {
+ return t.s < 0 || t.compareTo(this.m) >= 0 ? t.mod(this.m) : t
+ }, g.prototype.revert = function(t) {
+ return t
+ }, g.prototype.reduce = function(t) {
+ t.divRemTo(this.m, null, t)
+ }, g.prototype.mulTo = function(t, e, r) {
+ t.multiplyTo(e, r), this.reduce(r)
+ }, g.prototype.sqrTo = function(t, e) {
+ t.squareTo(e), this.reduce(e)
+ }, d.prototype.convert = function(t) {
+ var e = a();
+ return t.abs()
+ .dlShiftTo(this.m.t, e), e.divRemTo(this.m, null, e), t.s < 0 && e.compareTo(s.ZERO) > 0 && this.m.subTo(e, e), e
+ }, d.prototype.revert = function(t) {
+ var e = a();
+ return t.copyTo(e), this.reduce(e), e
+ }, d.prototype.reduce = function(t) {
+ for (; t.t <= this.mt2;) t[t.t++] = 0;
+ for (var e = 0; e < this.m.t; ++e) {
+ var r = 32767 & t[e],
+ n = r * this.mpl + ((r * this.mph + (t[e] >> 15) * this.mpl & this.um) << 15) & t.DM;
+ for (t[r = e + this.m.t] += this.m.am(0, n, t, e, 0, this.m.t); t[r] >= t.DV;) t[r] -= t.DV, t[++r]++
+ }
+ t.clamp(), t.drShiftTo(this.m.t, t), t.compareTo(this.m) >= 0 && t.subTo(this.m, t)
+ }, d.prototype.mulTo = function(t, e, r) {
+ t.multiplyTo(e, r), this.reduce(r)
+ }, d.prototype.sqrTo = function(t, e) {
+ t.squareTo(e), this.reduce(e)
+ }, w.prototype.convert = O, w.prototype.revert = O, w.prototype.mulTo = function(t, e, r) {
+ t.multiplyTo(e, r)
+ }, w.prototype.sqrTo = function(t, e) {
+ t.squareTo(e)
+ }, B.prototype.convert = function(t) {
+ if (t.s < 0 || t.t > 2 * this.m.t) return t.mod(this.m);
+ if (t.compareTo(this.m) < 0) return t;
+ var e = a();
+ return t.copyTo(e), this.reduce(e), e
+ }, B.prototype.revert = function(t) {
+ return t
+ }, B.prototype.reduce = function(t) {
+ for (t.drShiftTo(this.m.t - 1, this.r2), t.t > this.m.t + 1 && (t.t = this.m.t + 1, t.clamp()), this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3), this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2); t.compareTo(this.r2) < 0;) t.dAddOffset(1, this.m.t + 1);
+ for (t.subTo(this.r2, t); t.compareTo(this.m) >= 0;) t.subTo(this.m, t)
+ }, B.prototype.mulTo = function(t, e, r) {
+ t.multiplyTo(e, r), this.reduce(r)
+ }, B.prototype.sqrTo = function(t, e) {
+ t.squareTo(e), this.reduce(e)
+ };
+ var A = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997],
+ x = (1 << 26) / A[A.length - 1];
+ s.prototype.copyTo = function(t) {
+ for (var e = this.t - 1; e >= 0; --e) t[e] = this[e];
+ t.t = this.t, t.s = this.s
+ }, s.prototype.fromInt = function(t) {
+ this.t = 1, this.s = t < 0 ? -1 : 0, t > 0 ? this[0] = t : t < -1 ? this[0] = t + DV : this.t = 0
+ }, s.prototype.fromString = function(t, e, r) {
+ var n;
+ switch (e) {
+ case 2:
+ n = 1;
+ break;
+ case 4:
+ n = 2;
+ break;
+ case 8:
+ n = 3;
+ break;
+ case 16:
+ n = 4;
+ break;
+ case 32:
+ n = 5;
+ break;
+ case 256:
+ n = 8;
+ break;
+ default:
+ return void this.fromRadix(t, e)
+ }
+ this.t = 0, this.s = 0;
+ for (var i = t.length, o = !1, a = 0; --i >= 0;) {
+ var f = 8 == n ? 255 & t[i] : p(t, i);
+ f < 0 ? "-" == t.charAt(i) && (o = !0) : (o = !1, 0 === a ? this[this.t++] = f : a + n > this.DB ? (this[this.t - 1] |= (f & (1 << this.DB - a) - 1) << a, this[this.t++] = f >> this.DB - a) : this[this.t - 1] |= f << a, (a += n) >= this.DB && (a -= this.DB))
+ }!r && 8 == n && 128 & t[0] && (this.s = -1, a > 0 && (this[this.t - 1] |= (1 << this.DB - a) - 1 << a)), this.clamp(), o && s.ZERO.subTo(this, this)
+ }, s.prototype.fromByteArray = function(t, e) {
+ this.fromString(t, 256, e)
+ }, s.prototype.fromBuffer = function(t) {
+ this.fromString(t, 256, !0)
+ }, s.prototype.clamp = function() {
+ for (var t = this.s & this.DM; this.t > 0 && this[this.t - 1] == t;)--this.t
+ }, s.prototype.dlShiftTo = function(t, e) {
+ var r;
+ for (r = this.t - 1; r >= 0; --r) e[r + t] = this[r];
+ for (r = t - 1; r >= 0; --r) e[r] = 0;
+ e.t = this.t + t, e.s = this.s
+ }, s.prototype.drShiftTo = function(t, e) {
+ for (var r = t; r < this.t; ++r) e[r - t] = this[r];
+ e.t = Math.max(this.t - t, 0), e.s = this.s
+ }, s.prototype.lShiftTo = function(t, e) {
+ var r, n = t % this.DB,
+ i = this.DB - n,
+ o = (1 << i) - 1,
+ s = Math.floor(t / this.DB),
+ a = this.s << n & this.DM;
+ for (r = this.t - 1; r >= 0; --r) e[r + s + 1] = this[r] >> i | a, a = (this[r] & o) << n;
+ for (r = s - 1; r >= 0; --r) e[r] = 0;
+ e[s] = a, e.t = this.t + s + 1, e.s = this.s, e.clamp()
+ }, s.prototype.rShiftTo = function(t, e) {
+ e.s = this.s;
+ var r = Math.floor(t / this.DB);
+ if (r >= this.t) e.t = 0;
+ else {
+ var n = t % this.DB,
+ i = this.DB - n,
+ o = (1 << n) - 1;
+ e[0] = this[r] >> n;
+ for (var s = r + 1; s < this.t; ++s) e[s - r - 1] |= (this[s] & o) << i, e[s - r] = this[s] >> n;
+ n > 0 && (e[this.t - r - 1] |= (this.s & o) << i), e.t = this.t - r, e.clamp()
+ }
+ }, s.prototype.subTo = function(t, e) {
+ for (var r = 0, n = 0, i = Math.min(t.t, this.t); r < i;) n += this[r] - t[r], e[r++] = n & this.DM, n >>= this.DB;
+ if (t.t < this.t) {
+ for (n -= t.s; r < this.t;) n += this[r], e[r++] = n & this.DM, n >>= this.DB;
+ n += this.s
+ } else {
+ for (n += this.s; r < t.t;) n -= t[r], e[r++] = n & this.DM, n >>= this.DB;
+ n -= t.s
+ }
+ e.s = n < 0 ? -1 : 0, n < -1 ? e[r++] = this.DV + n : n > 0 && (e[r++] = n), e.t = r, e.clamp()
+ }, s.prototype.multiplyTo = function(t, e) {
+ var r = this.abs(),
+ n = t.abs(),
+ i = r.t;
+ for (e.t = i + n.t; --i >= 0;) e[i] = 0;
+ for (i = 0; i < n.t; ++i) e[i + r.t] = r.am(0, n[i], e, i, 0, r.t);
+ e.s = 0, e.clamp(), this.s != t.s && s.ZERO.subTo(e, e)
+ }, s.prototype.squareTo = function(t) {
+ for (var e = this.abs(), r = t.t = 2 * e.t; --r >= 0;) t[r] = 0;
+ for (r = 0; r < e.t - 1; ++r) {
+ var n = e.am(r, e[r], t, 2 * r, 0, 1);
+ (t[r + e.t] += e.am(r + 1, 2 * e[r], t, 2 * r + 1, n, e.t - r - 1)) >= e.DV && (t[r + e.t] -= e.DV, t[r + e.t + 1] = 1)
+ }
+ t.t > 0 && (t[t.t - 1] += e.am(r, e[r], t, 2 * r, 0, 1)), t.s = 0, t.clamp()
+ }, s.prototype.divRemTo = function(t, e, r) {
+ var n = t.abs();
+ if (!(n.t <= 0)) {
+ var i = this.abs();
+ if (i.t < n.t) return null != e && e.fromInt(0), void(null != r && this.copyTo(r));
+ null == r && (r = a());
+ var o = a(),
+ f = this.s,
+ u = t.s,
+ c = this.DB - y(n[n.t - 1]);
+ c > 0 ? (n.lShiftTo(c, o), i.lShiftTo(c, r)) : (n.copyTo(o), i.copyTo(r));
+ var h = o.t,
+ p = o[h - 1];
+ if (0 !== p) {
+ var l = p * (1 << this.F1) + (h > 1 ? o[h - 2] >> this.F2 : 0),
+ g = this.FV / l,
+ d = (1 << this.F1) / l,
+ v = 1 << this.F2,
+ m = r.t,
+ S = m - h,
+ _ = null == e ? a() : e;
+ for (o.dlShiftTo(S, _), r.compareTo(_) >= 0 && (r[r.t++] = 1, r.subTo(_, r)), s.ONE.dlShiftTo(h, _), _.subTo(o, o); o.t < h;) o[o.t++] = 0;
+ for (; --S >= 0;) {
+ var b = r[--m] == p ? this.DM : Math.floor(r[m] * g + (r[m - 1] + v) * d);
+ if ((r[m] += o.am(0, b, r, S, 0, h)) < b) for (o.dlShiftTo(S, _), r.subTo(_, r); r[m] < --b;) r.subTo(_, r)
+ }
+ null != e && (r.drShiftTo(h, e), f != u && s.ZERO.subTo(e, e)), r.t = h, r.clamp(), c > 0 && r.rShiftTo(c, r), f < 0 && s.ZERO.subTo(r, r)
+ }
+ }
+ }, s.prototype.invDigit = function() {
+ if (this.t < 1) return 0;
+ var t = this[0];
+ if (!(1 & t)) return 0;
+ var e = 3 & t;
+ return (e = (e = (e = (e = e * (2 - (15 & t) * e) & 15) * (2 - (255 & t) * e) & 255) * (2 - ((65535 & t) * e & 65535)) & 65535) * (2 - t * e % this.DV) % this.DV) > 0 ? this.DV - e : -e
+ }, s.prototype.isEven = function() {
+ return 0 === (this.t > 0 ? 1 & this[0] : this.s)
+ }, s.prototype.exp = function(t, e) {
+ if (t > 4294967295 || t < 1) return s.ONE;
+ var r = a(),
+ n = a(),
+ i = e.convert(this),
+ o = y(t) - 1;
+ for (i.copyTo(r); --o >= 0;) if (e.sqrTo(r, n), (t & 1 << o) > 0) e.mulTo(n, i, r);
+ else {
+ var f = r;
+ r = n, n = f
+ }
+ return e.revert(r)
+ }, s.prototype.chunkSize = function(t) {
+ return Math.floor(Math.LN2 * this.DB / Math.log(t))
+ }, s.prototype.toRadix = function(t) {
+ if (null == t && (t = 10), 0 === this.signum() || t < 2 || t > 36) return "0";
+ var e = this.chunkSize(t),
+ r = Math.pow(t, e),
+ n = l(r),
+ i = a(),
+ o = a(),
+ s = "";
+ for (this.divRemTo(n, i, o); i.signum() > 0;) s = (r + o.intValue())
+ .toString(t)
+ .substr(1) + s, i.divRemTo(n, i, o);
+ return o.intValue()
+ .toString(t) + s
+ }, s.prototype.fromRadix = function(t, e) {
+ this.fromInt(0), null == e && (e = 10);
+ for (var r = this.chunkSize(e), n = Math.pow(e, r), i = !1, o = 0, a = 0, f = 0; f < t.length; ++f) {
+ var u = p(t, f);
+ u < 0 ? "-" == t.charAt(f) && 0 === this.signum() && (i = !0) : (a = e * a + u, ++o >= r && (this.dMultiply(n), this.dAddOffset(a, 0), o = 0, a = 0))
+ }
+ o > 0 && (this.dMultiply(Math.pow(e, o)), this.dAddOffset(a, 0)), i && s.ZERO.subTo(this, this)
+ }, s.prototype.fromNumber = function(t, e) {
+ if ("number" == typeof e) if (t < 2) this.fromInt(1);
+ else for (this.fromNumber(t), this.testBit(t - 1) || this.bitwiseTo(s.ONE.shiftLeft(t - 1), m, this), this.isEven() && this.dAddOffset(1, 0); !this.isProbablePrime(e);) this.dAddOffset(2, 0), this.bitLength() > t && this.subTo(s.ONE.shiftLeft(t - 1), this);
+ else {
+ var r = i.randomBytes(1 + (t >> 3)),
+ n = 7 & t;
+ n > 0 ? r[0] &= (1 << n) - 1 : r[0] = 0, this.fromByteArray(r)
+ }
+ }, s.prototype.bitwiseTo = function(t, e, r) {
+ var n, i, o = Math.min(t.t, this.t);
+ for (n = 0; n < o; ++n) r[n] = e(this[n], t[n]);
+ if (t.t < this.t) {
+ for (i = t.s & this.DM, n = o; n < this.t; ++n) r[n] = e(this[n], i);
+ r.t = this.t
+ } else {
+ for (i = this.s & this.DM, n = o; n < t.t; ++n) r[n] = e(i, t[n]);
+ r.t = t.t
+ }
+ r.s = e(this.s, t.s), r.clamp()
+ }, s.prototype.changeBit = function(t, e) {
+ var r = s.ONE.shiftLeft(t);
+ return this.bitwiseTo(r, e, r), r
+ }, s.prototype.addTo = function(t, e) {
+ for (var r = 0, n = 0, i = Math.min(t.t, this.t); r < i;) n += this[r] + t[r], e[r++] = n & this.DM, n >>= this.DB;
+ if (t.t < this.t) {
+ for (n += t.s; r < this.t;) n += this[r], e[r++] = n & this.DM, n >>= this.DB;
+ n += this.s
+ } else {
+ for (n += this.s; r < t.t;) n += t[r], e[r++] = n & this.DM, n >>= this.DB;
+ n += t.s
+ }
+ e.s = n < 0 ? -1 : 0, n > 0 ? e[r++] = n : n < -1 && (e[r++] = this.DV + n), e.t = r, e.clamp()
+ }, s.prototype.dMultiply = function(t) {
+ this[this.t] = this.am(0, t - 1, this, 0, 0, this.t), ++this.t, this.clamp()
+ }, s.prototype.dAddOffset = function(t, e) {
+ if (0 !== t) {
+ for (; this.t <= e;) this[this.t++] = 0;
+ for (this[e] += t; this[e] >= this.DV;) this[e] -= this.DV, ++e >= this.t && (this[this.t++] = 0), ++this[e]
+ }
+ }, s.prototype.multiplyLowerTo = function(t, e, r) {
+ var n, i = Math.min(this.t + t.t, e);
+ for (r.s = 0, r.t = i; i > 0;) r[--i] = 0;
+ for (n = r.t - this.t; i < n; ++i) r[i + this.t] = this.am(0, t[i], r, i, 0, this.t);
+ for (n = Math.min(t.t, e); i < n; ++i) this.am(0, t[i], r, i, 0, e - i);
+ r.clamp()
+ }, s.prototype.multiplyUpperTo = function(t, e, r) {
+ --e;
+ var n = r.t = this.t + t.t - e;
+ for (r.s = 0; --n >= 0;) r[n] = 0;
+ for (n = Math.max(e - this.t, 0); n < t.t; ++n) r[this.t + n - e] = this.am(e - n, t[n], r, 0, 0, this.t + n - e);
+ r.clamp(), r.drShiftTo(1, r)
+ }, s.prototype.modInt = function(t) {
+ if (t <= 0) return 0;
+ var e = this.DV % t,
+ r = this.s < 0 ? t - 1 : 0;
+ if (this.t > 0) if (0 === e) r = this[0] % t;
+ else for (var n = this.t - 1; n >= 0; --n) r = (e * r + this[n]) % t;
+ return r
+ }, s.prototype.millerRabin = function(t) {
+ var e = this.subtract(s.ONE),
+ r = e.getLowestSetBit();
+ if (r <= 0) return !1;
+ var n = e.shiftRight(r);
+ (t = t + 1 >> 1) > A.length && (t = A.length);
+ for (var i = a(), o = 0; o < t; ++o) {
+ i.fromInt(A[Math.floor(Math.random() * A.length)]);
+ var f = i.modPow(n, this);
+ if (0 != f.compareTo(s.ONE) && 0 != f.compareTo(e)) {
+ for (var u = 1; u++ < r && 0 != f.compareTo(e);) if (0 === (f = f.modPowInt(2, this))
+ .compareTo(s.ONE)) return !1;
+ if (0 != f.compareTo(e)) return !1
+ }
+ }
+ return !0
+ }, s.prototype.toString = function(t) {
+ if (this.s < 0) return "-" + this.negate()
+ .toString(t);
+ var e;
+ if (16 == t) e = 4;
+ else if (8 == t) e = 3;
+ else if (2 == t) e = 1;
+ else if (32 == t) e = 5;
+ else {
+ if (4 != t) return this.toRadix(t);
+ e = 2
+ }
+ var r, n = (1 << e) - 1,
+ i = !1,
+ o = "",
+ s = this.t,
+ a = this.DB - s * this.DB % e;
+ if (s-- > 0) for (a < this.DB && (r = this[s] >> a) > 0 && (i = !0, o = h(r)); s >= 0;) a < e ? (r = (this[s] & (1 << a) - 1) << e - a, r |= this[--s] >> (a += this.DB - e)) : (r = this[s] >> (a -= e) & n, a <= 0 && (a += this.DB, --s)), r > 0 && (i = !0), i && (o += h(r));
+ return i ? o : "0"
+ }, s.prototype.negate = function() {
+ var t = a();
+ return s.ZERO.subTo(this, t), t
+ }, s.prototype.abs = function() {
+ return this.s < 0 ? this.negate() : this
+ }, s.prototype.compareTo = function(t) {
+ var e = this.s - t.s;
+ if (0 != e) return e;
+ var r = this.t;
+ if (0 != (e = r - t.t)) return this.s < 0 ? -e : e;
+ for (; --r >= 0;) if (0 != (e = this[r] - t[r])) return e;
+ return 0
+ }, s.prototype.bitLength = function() {
+ return this.t <= 0 ? 0 : this.DB * (this.t - 1) + y(this[this.t - 1] ^ this.s & this.DM)
+ }, s.prototype.mod = function(t) {
+ var e = a();
+ return this.abs()
+ .divRemTo(t, null, e), this.s < 0 && e.compareTo(s.ZERO) > 0 && t.subTo(e, e), e
+ }, s.prototype.modPowInt = function(t, e) {
+ var r;
+ return r = t < 256 || e.isEven() ? new g(e) : new d(e), this.exp(t, r)
+ }, s.prototype.clone = function() {
+ var t = a();
+ return this.copyTo(t), t
+ }, s.prototype.intValue = function() {
+ if (this.s < 0) {
+ if (1 == this.t) return this[0] - this.DV;
+ if (0 === this.t) return -1
+ } else {
+ if (1 == this.t) return this[0];
+ if (0 === this.t) return 0
+ }
+ return (this[1] & (1 << 32 - this.DB) - 1) << this.DB | this[0]
+ }, s.prototype.byteValue = function() {
+ return 0 == this.t ? this.s : this[0] << 24 >> 24
+ }, s.prototype.shortValue = function() {
+ return 0 == this.t ? this.s : this[0] << 16 >> 16
+ }, s.prototype.signum = function() {
+ return this.s < 0 ? -1 : this.t <= 0 || 1 == this.t && this[0] <= 0 ? 0 : 1
+ }, s.prototype.toByteArray = function() {
+ var t = this.t,
+ e = new Array;
+ e[0] = this.s;
+ var r, n = this.DB - t * this.DB % 8,
+ i = 0;
+ if (t-- > 0) for (n < this.DB && (r = this[t] >> n) != (this.s & this.DM) >> n && (e[i++] = r | this.s << this.DB - n); t >= 0;) n < 8 ? (r = (this[t] & (1 << n) - 1) << 8 - n, r |= this[--t] >> (n += this.DB - 8)) : (r = this[t] >> (n -= 8) & 255, n <= 0 && (n += this.DB, --t)), 128 & r && (r |= -256), 0 === i && (128 & this.s) != (128 & r) && ++i, (i > 0 || r != this.s) && (e[i++] = r);
+ return e
+ }, s.prototype.toBuffer = function(t) {
+ var e = n.from(this.toByteArray());
+ if (!0 === t && 0 === e[0]) e = e.slice(1);
+ else if (o.isNumber(t)) {
+ if (e.length > t) {
+ for (var r = 0; r < e.length - t; r++) if (0 !== e[r]) return null;
+ return e.slice(e.length - t)
+ }
+ if (e.length < t) {
+ var i = n.alloc(t);
+ return i.fill(0, 0, t - e.length), e.copy(i, t - e.length), i
+ }
+ }
+ return e
+ }, s.prototype.equals = function(t) {
+ return 0 == this.compareTo(t)
+ }, s.prototype.min = function(t) {
+ return this.compareTo(t) < 0 ? this : t
+ }, s.prototype.max = function(t) {
+ return this.compareTo(t) > 0 ? this : t
+ }, s.prototype.and = function(t) {
+ var e = a();
+ return this.bitwiseTo(t, v, e), e
+ }, s.prototype.or = function(t) {
+ var e = a();
+ return this.bitwiseTo(t, m, e), e
+ }, s.prototype.xor = function(t) {
+ var e = a();
+ return this.bitwiseTo(t, S, e), e
+ }, s.prototype.andNot = function(t) {
+ var e = a();
+ return this.bitwiseTo(t, _, e), e
+ }, s.prototype.not = function() {
+ for (var t = a(), e = 0; e < this.t; ++e) t[e] = this.DM & ~this[e];
+ return t.t = this.t, t.s = ~this.s, t
+ }, s.prototype.shiftLeft = function(t) {
+ var e = a();
+ return t < 0 ? this.rShiftTo(-t, e) : this.lShiftTo(t, e), e
+ }, s.prototype.shiftRight = function(t) {
+ var e = a();
+ return t < 0 ? this.lShiftTo(-t, e) : this.rShiftTo(t, e), e
+ }, s.prototype.getLowestSetBit = function() {
+ for (var t = 0; t < this.t; ++t) if (0 != this[t]) return t * this.DB + b(this[t]);
+ return this.s < 0 ? this.t * this.DB : -1
+ }, s.prototype.bitCount = function() {
+ for (var t = 0, e = this.s & this.DM, r = 0; r < this.t; ++r) t += E(this[r] ^ e);
+ return t
+ }, s.prototype.testBit = function(t) {
+ var e = Math.floor(t / this.DB);
+ return e >= this.t ? 0 != this.s : !! (this[e] & 1 << t % this.DB)
+ }, s.prototype.setBit = function(t) {
+ return this.changeBit(t, m)
+ }, s.prototype.clearBit = function(t) {
+ return this.changeBit(t, _)
+ }, s.prototype.flipBit = function(t) {
+ return this.changeBit(t, S)
+ }, s.prototype.add = function(t) {
+ var e = a();
+ return this.addTo(t, e), e
+ }, s.prototype.subtract = function(t) {
+ var e = a();
+ return this.subTo(t, e), e
+ }, s.prototype.multiply = function(t) {
+ var e = a();
+ return this.multiplyTo(t, e), e
+ }, s.prototype.divide = function(t) {
+ var e = a();
+ return this.divRemTo(t, e, null), e
+ }, s.prototype.remainder = function(t) {
+ var e = a();
+ return this.divRemTo(t, null, e), e
+ }, s.prototype.divideAndRemainder = function(t) {
+ var e = a(),
+ r = a();
+ return this.divRemTo(t, e, r), new Array(e, r)
+ }, s.prototype.modPow = function(t, e) {
+ var r, n, i = t.bitLength(),
+ o = l(1);
+ if (i <= 0) return o;
+ r = i < 18 ? 1 : i < 48 ? 3 : i < 144 ? 4 : i < 768 ? 5 : 6, n = i < 8 ? new g(e) : e.isEven() ? new B(e) : new d(e);
+ var s = new Array,
+ f = 3,
+ u = r - 1,
+ c = (1 << r) - 1;
+ if (s[1] = n.convert(this), r > 1) {
+ var h = a();
+ for (n.sqrTo(s[1], h); f <= c;) s[f] = a(), n.mulTo(h, s[f - 2], s[f]), f += 2
+ }
+ var p, v, m = t.t - 1,
+ S = !0,
+ _ = a();
+ for (i = y(t[m]) - 1; m >= 0;) {
+ for (i >= u ? p = t[m] >> i - u & c : (p = (t[m] & (1 << i + 1) - 1) << u - i, m > 0 && (p |= t[m - 1] >> this.DB + i - u)), f = r; !(1 & p);) p >>= 1, --f;
+ if ((i -= f) < 0 && (i += this.DB, --m), S) s[p].copyTo(o), S = !1;
+ else {
+ for (; f > 1;) n.sqrTo(o, _), n.sqrTo(_, o), f -= 2;
+ f > 0 ? n.sqrTo(o, _) : (v = o, o = _, _ = v), n.mulTo(_, s[p], o)
+ }
+ for (; m >= 0 && !(t[m] & 1 << i);) n.sqrTo(o, _), v = o, o = _, _ = v, --i < 0 && (i = this.DB - 1, --m)
+ }
+ return n.revert(o)
+ }, s.prototype.modInverse = function(t) {
+ var e = t.isEven();
+ if (this.isEven() && e || 0 === t.signum()) return s.ZERO;
+ for (var r = t.clone(), n = this.clone(), i = l(1), o = l(0), a = l(0), f = l(1); 0 != r.signum();) {
+ for (; r.isEven();) r.rShiftTo(1, r), e ? (i.isEven() && o.isEven() || (i.addTo(this, i), o.subTo(t, o)), i.rShiftTo(1, i)) : o.isEven() || o.subTo(t, o), o.rShiftTo(1, o);
+ for (; n.isEven();) n.rShiftTo(1, n), e ? (a.isEven() && f.isEven() || (a.addTo(this, a), f.subTo(t, f)), a.rShiftTo(1, a)) : f.isEven() || f.subTo(t, f), f.rShiftTo(1, f);
+ r.compareTo(n) >= 0 ? (r.subTo(n, r), e && i.subTo(a, i), o.subTo(f, o)) : (n.subTo(r, n), e && a.subTo(i, a), f.subTo(o, f))
+ }
+ return 0 != n.compareTo(s.ONE) ? s.ZERO : f.compareTo(t) >= 0 ? f.subtract(t) : f.signum() < 0 ? (f.addTo(t, f), f.signum() < 0 ? f.add(t) : f) : f
+ }, s.prototype.pow = function(t) {
+ return this.exp(t, new w)
+ }, s.prototype.gcd = function(t) {
+ var e = this.s < 0 ? this.negate() : this.clone(),
+ r = t.s < 0 ? t.negate() : t.clone();
+ if (e.compareTo(r) < 0) {
+ var n = e;
+ e = r, r = n
+ }
+ var i = e.getLowestSetBit(),
+ o = r.getLowestSetBit();
+ if (o < 0) return e;
+ for (i < o && (o = i), o > 0 && (e.rShiftTo(o, e), r.rShiftTo(o, r)); e.signum() > 0;)(i = e.getLowestSetBit()) > 0 && e.rShiftTo(i, e), (i = r.getLowestSetBit()) > 0 && r.rShiftTo(i, r), e.compareTo(r) >= 0 ? (e.subTo(r, e), e.rShiftTo(1, e)) : (r.subTo(e, r), r.rShiftTo(1, r));
+ return o > 0 && r.lShiftTo(o, r), r
+ }, s.prototype.isProbablePrime = function(t) {
+ var e, r = this.abs();
+ if (1 == r.t && r[0] <= A[A.length - 1]) {
+ for (e = 0; e < A.length; ++e) if (r[0] == A[e]) return !0;
+ return !1
+ }
+ if (r.isEven()) return !1;
+ for (e = 1; e < A.length;) {
+ for (var n = A[e], i = e + 1; i < A.length && n < x;) n *= A[i++];
+ for (n = r.modInt(n); e < i;) if (n % A[e++] == 0) return !1
+ }
+ return r.millerRabin(t)
+ }, s.int2char = h, s.ZERO = l(0), s.ONE = l(1), s.prototype.square = function() {
+ var t = a();
+ return this.squareTo(t), t
+ }, t.exports = s
+ },
+ 5682: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = r(8226)
+ ._,
+ o = (r(3200), r(1973)),
+ s = r(8226),
+ a = r(1768),
+ f = r(4538);
+ e.BigInteger = o, t.exports.Key = function() {
+ function t() {
+ this.n = null, this.e = 0, this.d = null, this.p = null, this.q = null, this.dmp1 = null, this.dmq1 = null, this.coeff = null
+ }
+ return t.prototype.setOptions = function(t) {
+ var e = a[t.signingScheme],
+ r = a[t.encryptionScheme];
+ e === r ? this.signingScheme = this.encryptionScheme = r.makeScheme(this, t) : (this.encryptionScheme = r.makeScheme(this, t), this.signingScheme = e.makeScheme(this, t)), this.encryptEngine = f.getEngine(this, t)
+ }, t.prototype.generate = function(t, e) {
+ var r = t >> 1;
+ this.e = parseInt(e, 16);
+ for (var n = new o(e, 16);;) {
+ for (; this.p = new o(t - r, 1), 0 !== this.p.subtract(o.ONE)
+ .gcd(n)
+ .compareTo(o.ONE) || !this.p.isProbablePrime(10););
+ for (; this.q = new o(r, 1), 0 !== this.q.subtract(o.ONE)
+ .gcd(n)
+ .compareTo(o.ONE) || !this.q.isProbablePrime(10););
+ if (this.p.compareTo(this.q) <= 0) {
+ var i = this.p;
+ this.p = this.q, this.q = i
+ }
+ var s = this.p.subtract(o.ONE),
+ a = this.q.subtract(o.ONE),
+ f = s.multiply(a);
+ if (0 === f.gcd(n)
+ .compareTo(o.ONE)) {
+ if (this.n = this.p.multiply(this.q), this.n.bitLength() < t) continue;
+ this.d = n.modInverse(f), this.dmp1 = this.d.mod(s), this.dmq1 = this.d.mod(a), this.coeff = this.q.modInverse(this.p);
+ break
+ }
+ }
+ this.$$recalculateCache()
+ }, t.prototype.setPrivate = function(t, e, r, n, a, f, u, c) {
+ if (!(t && e && r && t.length > 0 && (i.isNumber(e) || e.length > 0) && r.length > 0)) throw Error("Invalid RSA private key");
+ this.n = new o(t), this.e = i.isNumber(e) ? e : s.get32IntFromBuffer(e, 0), this.d = new o(r), n && a && f && u && c && (this.p = new o(n), this.q = new o(a), this.dmp1 = new o(f), this.dmq1 = new o(u), this.coeff = new o(c)), this.$$recalculateCache()
+ }, t.prototype.setPublic = function(t, e) {
+ if (!(t && e && t.length > 0 && (i.isNumber(e) || e.length > 0))) throw Error("Invalid RSA public key");
+ this.n = new o(t), this.e = i.isNumber(e) ? e : s.get32IntFromBuffer(e, 0), this.$$recalculateCache()
+ }, t.prototype.$doPrivate = function(t) {
+ if (this.p || this.q) return t.modPow(this.d, this.n);
+ for (var e = t.mod(this.p)
+ .modPow(this.dmp1, this.p), r = t.mod(this.q)
+ .modPow(this.dmq1, this.q); e.compareTo(r) < 0;) e = e.add(this.p);
+ return e.subtract(r)
+ .multiply(this.coeff)
+ .mod(this.p)
+ .multiply(this.q)
+ .add(r)
+ }, t.prototype.$doPublic = function(t) {
+ return t.modPowInt(this.e, this.n)
+ }, t.prototype.encrypt = function(t, e) {
+ var r = [],
+ i = [],
+ o = t.length,
+ s = Math.ceil(o / this.maxMessageLength) || 1,
+ a = Math.ceil(o / s || 1);
+ if (1 == s) r.push(t);
+ else for (var f = 0; f < s; f++) r.push(t.slice(f * a, (f + 1) * a));
+ for (var u = 0; u < r.length; u++) i.push(this.encryptEngine.encrypt(r[u], e));
+ return n.concat(i)
+ }, t.prototype.decrypt = function(t, e) {
+ if (t.length % this.encryptedDataLength > 0) throw Error("Incorrect data or key");
+ for (var r = [], i = 0, o = 0, s = t.length / this.encryptedDataLength, a = 0; a < s; a++) o = (i = a * this.encryptedDataLength) + this.encryptedDataLength, r.push(this.encryptEngine.decrypt(t.slice(i, Math.min(o, t.length)), e));
+ return n.concat(r)
+ }, t.prototype.sign = function(t) {
+ return this.signingScheme.sign.apply(this.signingScheme, arguments)
+ }, t.prototype.verify = function(t, e, r) {
+ return this.signingScheme.verify.apply(this.signingScheme, arguments)
+ }, t.prototype.isPrivate = function() {
+ return !!(this.n && this.e && this.d)
+ }, t.prototype.isPublic = function(t) {
+ return this.n && this.e && !(t && this.d) || !1
+ }, Object.defineProperty(t.prototype, "keySize", {
+ get: function() {
+ return this.cache.keyBitLength
+ }
+ }), Object.defineProperty(t.prototype, "encryptedDataLength", {
+ get: function() {
+ return this.cache.keyByteLength
+ }
+ }), Object.defineProperty(t.prototype, "maxMessageLength", {
+ get: function() {
+ return this.encryptionScheme.maxMessageLength()
+ }
+ }), t.prototype.$$recalculateCache = function() {
+ this.cache = this.cache || {}, this.cache.keyBitLength = this.n.bitLength(), this.cache.keyByteLength = this.cache.keyBitLength + 6 >> 3
+ }, t
+ }()
+ },
+ 2487: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = (r(1973), r(3200));
+ t.exports = {
+ isEncryption: !0,
+ isSignature: !1
+ }, t.exports.digestLength = {
+ md4: 16,
+ md5: 16,
+ ripemd160: 20,
+ rmd160: 20,
+ sha1: 20,
+ sha224: 28,
+ sha256: 32,
+ sha384: 48,
+ sha512: 64
+ };
+ var o = "sha1";
+ t.exports.eme_oaep_mgf1 = function(e, r, s) {
+ s = s || o;
+ for (var a = t.exports.digestLength[s], f = Math.ceil(r / a), u = n.alloc(a * f), c = n.alloc(4), h = 0; h < f; ++h) {
+ var p = i.createHash(s);
+ p.update(e), c.writeUInt32BE(h, 0), p.update(c), p.digest()
+ .copy(u, h * a)
+ }
+ return u.slice(0, r)
+ }, t.exports.makeScheme = function(e, r) {
+ function s(t, e) {
+ this.key = t, this.options = e
+ }
+ return s.prototype.maxMessageLength = function() {
+ return this.key.encryptedDataLength - 2 * t.exports.digestLength[this.options.encryptionSchemeOptions.hash || o] - 2
+ }, s.prototype.encPad = function(e) {
+ var r = this.options.encryptionSchemeOptions.hash || o,
+ s = this.options.encryptionSchemeOptions.mgf || t.exports.eme_oaep_mgf1,
+ a = this.options.encryptionSchemeOptions.label || n.alloc(0),
+ f = this.key.encryptedDataLength,
+ u = t.exports.digestLength[r];
+ if (e.length > f - 2 * u - 2) throw new Error("Message is too long to encode into an encoded message with a length of " + f + " bytes, increaseemLen to fix this error (minimum value for given parameters and options: " + (f - 2 * u - 2) + ")");
+ var c = i.createHash(r);
+ c.update(a), c = c.digest();
+ var h = n.alloc(f - e.length - 2 * u - 1);
+ h.fill(0), h[h.length - 1] = 1;
+ for (var p = n.concat([c, h, e]), l = i.randomBytes(u), y = s(l, p.length, r), g = 0; g < p.length; g++) p[g] ^= y[g];
+ for (y = s(p, u, r), g = 0; g < l.length; g++) l[g] ^= y[g];
+ var d = n.alloc(1 + l.length + p.length);
+ return d[0] = 0, l.copy(d, 1), p.copy(d, 1 + l.length), d
+ }, s.prototype.encUnPad = function(e) {
+ var r = this.options.encryptionSchemeOptions.hash || o,
+ s = this.options.encryptionSchemeOptions.mgf || t.exports.eme_oaep_mgf1,
+ a = this.options.encryptionSchemeOptions.label || n.alloc(0),
+ f = t.exports.digestLength[r];
+ if (e.length < 2 * f + 2) throw new Error("Error decoding message, the supplied message is not long enough to be a valid OAEP encoded message");
+ for (var u = e.slice(1, f + 1), c = e.slice(1 + f), h = s(c, f, r), p = 0; p < u.length; p++) u[p] ^= h[p];
+ for (h = s(u, c.length, r), p = 0; p < c.length; p++) c[p] ^= h[p];
+ var l = i.createHash(r);
+ if (l.update(a), l = l.digest(), c.slice(0, f)
+ .toString("hex") != l.toString("hex")) throw new Error("Error decoding message, the lHash calculated from the label provided and the lHash in the encrypted data do not match.");
+ for (p = f; 0 === c[p++] && p < c.length;);
+ if (1 != c[p - 1]) throw new Error("Error decoding message, there is no padding message separator byte");
+ return c.slice(p)
+ }, new s(e, r)
+ }
+ },
+ 8290: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = r(1973),
+ o = r(3200),
+ s = r(7449),
+ a = {
+ md2: n.from("3020300c06082a864886f70d020205000410", "hex"),
+ md5: n.from("3020300c06082a864886f70d020505000410", "hex"),
+ sha1: n.from("3021300906052b0e03021a05000414", "hex"),
+ sha224: n.from("302d300d06096086480165030402040500041c", "hex"),
+ sha256: n.from("3031300d060960864801650304020105000420", "hex"),
+ sha384: n.from("3041300d060960864801650304020205000430", "hex"),
+ sha512: n.from("3051300d060960864801650304020305000440", "hex"),
+ ripemd160: n.from("3021300906052b2403020105000414", "hex"),
+ rmd160: n.from("3021300906052b2403020105000414", "hex")
+ }, f = {
+ ripemd160: "rmd160"
+ }, u = "sha256";
+ t.exports = {
+ isEncryption: !0,
+ isSignature: !0
+ }, t.exports.makeScheme = function(t, e) {
+ function r(t, e) {
+ this.key = t, this.options = e
+ }
+ return r.prototype.maxMessageLength = function() {
+ return this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING ? this.key.encryptedDataLength : this.key.encryptedDataLength - 11
+ }, r.prototype.encPad = function(t, e) {
+ var r;
+ if (e = e || {}, t.length > this.key.maxMessageLength) throw new Error("Message too long for RSA (n=" + this.key.encryptedDataLength + ", l=" + t.length + ")");
+ if (this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING) return (r = n.alloc(this.key.maxMessageLength - t.length))
+ .fill(0), n.concat([r, t]);
+ if (1 === e.type) return (r = n.alloc(this.key.encryptedDataLength - t.length - 1))
+ .fill(255, 0, r.length - 1), r[0] = 1, r[r.length - 1] = 0, n.concat([r, t]);
+ (r = n.alloc(this.key.encryptedDataLength - t.length))[0] = 0, r[1] = 2;
+ for (var i = o.randomBytes(r.length - 3), a = 0; a < i.length; a++) {
+ for (var f = i[a]; 0 === f;) f = o.randomBytes(1)[0];
+ r[a + 2] = f
+ }
+ return r[r.length - 1] = 0, n.concat([r, t])
+ }, r.prototype.encUnPad = function(t, e) {
+ e = e || {};
+ var r = 0;
+ if (this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING) return "function" == typeof t.lastIndexOf ? t.slice(t.lastIndexOf("\0") + 1, t.length) : t.slice(String.prototype.lastIndexOf.call(t, "\0") + 1, t.length);
+ if (t.length < 4) return null;
+ if (1 === e.type) {
+ if (0 !== t[0] || 1 !== t[1]) return null;
+ for (r = 3; 0 !== t[r];) if (255 != t[r] || ++r >= t.length) return null
+ } else {
+ if (0 !== t[0] || 2 !== t[1]) return null;
+ for (r = 3; 0 !== t[r];) if (++r >= t.length) return null
+ }
+ return t.slice(r + 1, t.length)
+ }, r.prototype.sign = function(t) {
+ var e = this.options.signingSchemeOptions.hash || u;
+ if ("browser" === this.options.environment) {
+ e = f[e] || e;
+ var r = o.createHash(e);
+ r.update(t);
+ var n = this.pkcs1pad(r.digest(), e);
+ return this.key.$doPrivate(new i(n))
+ .toBuffer(this.key.encryptedDataLength)
+ }
+ var s = o.createSign("RSA-" + e.toUpperCase());
+ return s.update(t), s.sign(this.options.rsaUtils.exportKey("private"))
+ }, r.prototype.verify = function(t, e, r) {
+ if (this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING) return !1;
+ var a = this.options.signingSchemeOptions.hash || u;
+ if ("browser" === this.options.environment) {
+ a = f[a] || a, r && (e = n.from(e, r));
+ var c = o.createHash(a);
+ c.update(t);
+ var h = this.pkcs1pad(c.digest(), a);
+ return this.key.$doPublic(new i(e))
+ .toBuffer()
+ .toString("hex") == h.toString("hex")
+ }
+ var p = o.createVerify("RSA-" + a.toUpperCase());
+ return p.update(t), p.verify(this.options.rsaUtils.exportKey("public"), e, r)
+ }, r.prototype.pkcs0pad = function(t) {
+ var e = n.alloc(this.key.maxMessageLength - t.length);
+ return e.fill(0), n.concat([e, t])
+ }, r.prototype.pkcs0unpad = function(t) {
+ return "function" == typeof t.lastIndexOf ? t.slice(t.lastIndexOf("\0") + 1, t.length) : t.slice(String.prototype.lastIndexOf.call(t, "\0") + 1, t.length)
+ }, r.prototype.pkcs1pad = function(t, e) {
+ var r = a[e];
+ if (!r) throw Error("Unsupported hash algorithm");
+ var i = n.concat([r, t]);
+ if (i.length + 10 > this.key.encryptedDataLength) throw Error("Key is too short for signing algorithm (" + e + ")");
+ var o = n.alloc(this.key.encryptedDataLength - i.length - 1);
+ return o.fill(255, 0, o.length - 1), o[0] = 1, o[o.length - 1] = 0, n.concat([o, i])
+ }, new r(t, e)
+ }
+ },
+ 4414: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = r(1973),
+ o = r(3200);
+ t.exports = {
+ isEncryption: !1,
+ isSignature: !0
+ };
+ var s = "sha1";
+ t.exports.makeScheme = function(t, e) {
+ var a = r(1768)
+ .pkcs1_oaep;
+
+ function f(t, e) {
+ this.key = t, this.options = e
+ }
+ return f.prototype.sign = function(t) {
+ var e = o.createHash(this.options.signingSchemeOptions.hash || s);
+ e.update(t);
+ var r = this.emsa_pss_encode(e.digest(), this.key.keySize - 1);
+ return this.key.$doPrivate(new i(r))
+ .toBuffer(this.key.encryptedDataLength)
+ }, f.prototype.verify = function(t, e, r) {
+ r && (e = n.from(e, r)), e = new i(e);
+ var a = Math.ceil((this.key.keySize - 1) / 8),
+ f = this.key.$doPublic(e)
+ .toBuffer(a),
+ u = o.createHash(this.options.signingSchemeOptions.hash || s);
+ return u.update(t), this.emsa_pss_verify(u.digest(), f, this.key.keySize - 1)
+ }, f.prototype.emsa_pss_encode = function(t, e) {
+ var r = this.options.signingSchemeOptions.hash || s,
+ i = this.options.signingSchemeOptions.mgf || a.eme_oaep_mgf1,
+ f = this.options.signingSchemeOptions.saltLength || 20,
+ u = a.digestLength[r],
+ c = Math.ceil(e / 8);
+ if (c < u + f + 2) throw new Error("Output length passed to emBits(" + e + ") is too small for the options specified(" + r + ", " + f + "). To fix this issue increase the value of emBits. (minimum size: " + (8 * u + 8 * f + 9) + ")");
+ var h = o.randomBytes(f),
+ p = n.alloc(8 + u + f);
+ p.fill(0, 0, 8), t.copy(p, 8), h.copy(p, 8 + t.length);
+ var l = o.createHash(r);
+ l.update(p), l = l.digest();
+ var y = n.alloc(c - h.length - u - 2);
+ y.fill(0);
+ var g = n.alloc(y.length + 1 + h.length);
+ y.copy(g), g[y.length] = 1, h.copy(g, y.length + 1);
+ for (var d = i(l, g.length, r), v = n.alloc(g.length), m = 0; m < d.length; m++) v[m] = g[m] ^ d[m];
+ var S = 8 * c - e,
+ _ = 255 ^ 255 >> 8 - S << 8 - S;
+ v[0] = v[0] & _;
+ var b = n.alloc(v.length + l.length + 1);
+ return v.copy(b, 0), l.copy(b, v.length), b[b.length - 1] = 188, b
+ }, f.prototype.emsa_pss_verify = function(t, e, r) {
+ var i = this.options.signingSchemeOptions.hash || s,
+ f = this.options.signingSchemeOptions.mgf || a.eme_oaep_mgf1,
+ u = this.options.signingSchemeOptions.saltLength || 20,
+ c = a.digestLength[i],
+ h = Math.ceil(r / 8);
+ if (h < c + u + 2 || 188 != e[e.length - 1]) return !1;
+ var p = n.alloc(h - c - 1);
+ e.copy(p, 0, 0, h - c - 1);
+ for (var l = 0, y = 0, g = 8 * h - r; y < g; y++) l |= 1 << 7 - y;
+ if (p[0] & l) return !1;
+ var d = e.slice(h - c - 1, h - 1),
+ v = f(d, p.length, i);
+ for (y = 0; y < p.length; y++) p[y] ^= v[y];
+ for (l = 255 ^ 255 >> 8 - (g = 8 * h - r) << 8 - g, p[0] = p[0] & l, y = 0; 0 === p[y] && y < p.length; y++);
+ if (1 != p[y]) return !1;
+ var m = p.slice(p.length - u),
+ S = n.alloc(8 + c + u);
+ S.fill(0, 0, 8), t.copy(S, 8), m.copy(S, 8 + t.length);
+ var _ = o.createHash(i);
+ return _.update(S), _ = _.digest(), d.toString("hex") === _.toString("hex")
+ }, new f(t, e)
+ }
+ },
+ 1768: (t, e, r) => {
+ t.exports = {
+ pkcs1: r(8290),
+ pkcs1_oaep: r(2487),
+ pss: r(4414),
+ isEncryption: function(e) {
+ return t.exports[e] && t.exports[e].isEncryption
+ },
+ isSignature: function(e) {
+ return t.exports[e] && t.exports[e].isSignature
+ }
+ }
+ },
+ 8226: (t, e, r) => {
+ var n = r(5606);
+ r(3200), t.exports.linebrk = function(t, e) {
+ for (var r = "", n = 0; n + e < t.length;) r += t.substring(n, n + e) + "\n", n += e;
+ return r + t.substring(n, t.length)
+ }, t.exports.detectEnvironment = function() {
+ return "browser";
+ "undefined" == typeof window || !window || n && "node" === n.title ? "node" : "browser"
+ }, t.exports.get32IntFromBuffer = function(t, e) {
+ var r;
+ if (e = e || 0, (r = t.length - e) > 0) {
+ if (r >= 4) return t.readUIntBE(e, r);
+ for (var n = 0, i = e + r, o = 0; i > e; i--, o += 2) n += t[i - 1] * Math.pow(16, o);
+ return n
+ }
+ return NaN
+ }, t.exports._ = {
+ isObject: function(t) {
+ var e = typeof t;
+ return !!t && ("object" == e || "function" == e)
+ },
+ isString: function(t) {
+ return "string" == typeof t || t instanceof String
+ },
+ isNumber: function(t) {
+ return "number" == typeof t || !isNaN(parseFloat(t)) && isFinite(t)
+ },
+ omit: function(t, e) {
+ var r = {};
+ for (var n in t) t.hasOwnProperty(n) && n !== e && (r[n] = t[n]);
+ return r
+ }
+ }, t.exports.trimSurroundingText = function(t, e, r) {
+ var n = 0,
+ i = t.length,
+ o = t.indexOf(e);
+ o >= 0 && (n = o + e.length);
+ var s = t.indexOf(r, o);
+ return s >= 0 && (i = s), t.substring(n, i)
+ }
+ },
+ 8875: (t, e, r) => {
+ "use strict";
+ var n;
+ if (!Object.keys) {
+ var i = Object.prototype.hasOwnProperty,
+ o = Object.prototype.toString,
+ s = r(1093),
+ a = Object.prototype.propertyIsEnumerable,
+ f = !a.call({
+ toString: null
+ }, "toString"),
+ u = a.call((function() {}), "prototype"),
+ c = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"],
+ h = function(t) {
+ var e = t.constructor;
+ return e && e.prototype === t
+ }, p = {
+ $applicationCache: !0,
+ $console: !0,
+ $external: !0,
+ $frame: !0,
+ $frameElement: !0,
+ $frames: !0,
+ $innerHeight: !0,
+ $innerWidth: !0,
+ $onmozfullscreenchange: !0,
+ $onmozfullscreenerror: !0,
+ $outerHeight: !0,
+ $outerWidth: !0,
+ $pageXOffset: !0,
+ $pageYOffset: !0,
+ $parent: !0,
+ $scrollLeft: !0,
+ $scrollTop: !0,
+ $scrollX: !0,
+ $scrollY: !0,
+ $self: !0,
+ $webkitIndexedDB: !0,
+ $webkitStorageInfo: !0,
+ $window: !0
+ }, l = function() {
+ if ("undefined" == typeof window) return !1;
+ for (var t in window) try {
+ if (!p["$" + t] && i.call(window, t) && null !== window[t] && "object" == typeof window[t]) try {
+ h(window[t])
+ } catch (t) {
+ return !0
+ }
+ } catch (t) {
+ return !0
+ }
+ return !1
+ }();
+ n = function(t) {
+ var e = null !== t && "object" == typeof t,
+ r = "[object Function]" === o.call(t),
+ n = s(t),
+ a = e && "[object String]" === o.call(t),
+ p = [];
+ if (!e && !r && !n) throw new TypeError("Object.keys called on a non-object");
+ var y = u && r;
+ if (a && t.length > 0 && !i.call(t, 0)) for (var g = 0; g < t.length; ++g) p.push(String(g));
+ if (n && t.length > 0) for (var d = 0; d < t.length; ++d) p.push(String(d));
+ else for (var v in t) y && "prototype" === v || !i.call(t, v) || p.push(String(v));
+ if (f) for (var m = function(t) {
+ if ("undefined" == typeof window || !l) return h(t);
+ try {
+ return h(t)
+ } catch (t) {
+ return !1
+ }
+ }(t), S = 0; S < c.length; ++S) m && "constructor" === c[S] || !i.call(t, c[S]) || p.push(c[S]);
+ return p
+ }
+ }
+ t.exports = n
+ },
+ 1189: (t, e, r) => {
+ "use strict";
+ var n = Array.prototype.slice,
+ i = r(1093),
+ o = Object.keys,
+ s = o ? function(t) {
+ return o(t)
+ } : r(8875),
+ a = Object.keys;
+ s.shim = function() {
+ if (Object.keys) {
+ var t = function() {
+ var t = Object.keys(arguments);
+ return t && t.length === arguments.length
+ }(1, 2);
+ t || (Object.keys = function(t) {
+ return i(t) ? a(n.call(t)) : a(t)
+ })
+ } else Object.keys = s;
+ return Object.keys || s
+ }, t.exports = s
+ },
+ 1093: t => {
+ "use strict";
+ var e = Object.prototype.toString;
+ t.exports = function(t) {
+ var r = e.call(t),
+ n = "[object Arguments]" === r;
+ return n || (n = "[object Array]" !== r && null !== t && "object" == typeof t && "number" == typeof t.length && t.length >= 0 && "[object Function]" === e.call(t.callee)), n
+ }
+ },
+ 8403: (t, e, r) => {
+ "use strict";
+ var n = r(1189),
+ i = r(1333)(),
+ o = r(8075),
+ s = Object,
+ a = o("Array.prototype.push"),
+ f = o("Object.prototype.propertyIsEnumerable"),
+ u = i ? Object.getOwnPropertySymbols : null;
+ t.exports = function(t, e) {
+ if (null == t) throw new TypeError("target must be an object");
+ var r = s(t);
+ if (1 === arguments.length) return r;
+ for (var o = 1; o < arguments.length; ++o) {
+ var c = s(arguments[o]),
+ h = n(c),
+ p = i && (Object.getOwnPropertySymbols || u);
+ if (p) for (var l = p(c), y = 0; y < l.length; ++y) {
+ var g = l[y];
+ f(c, g) && a(h, g)
+ }
+ for (var d = 0; d < h.length; ++d) {
+ var v = h[d];
+ if (f(c, v)) {
+ var m = c[v];
+ r[v] = m
+ }
+ }
+ }
+ return r
+ }
+ },
+ 1514: (t, e, r) => {
+ "use strict";
+ var n = r(8403);
+ t.exports = function() {
+ return Object.assign ? function() {
+ if (!Object.assign) return !1;
+ for (var t = "abcdefghijklmnopqrst", e = t.split(""), r = {}, n = 0; n < e.length; ++n) r[e[n]] = e[n];
+ var i = Object.assign({}, r),
+ o = "";
+ for (var s in i) o += s;
+ return t !== o
+ }() || function() {
+ if (!Object.assign || !Object.preventExtensions) return !1;
+ var t = Object.preventExtensions({
+ 1: 2
+ });
+ try {
+ Object.assign(t, "xy")
+ } catch (e) {
+ return "y" === t[1]
+ }
+ return !1
+ }() ? n : Object.assign : n
+ }
+ },
+ 5606: t => {
+ var e, r, n = t.exports = {};
+
+ function i() {
+ throw new Error("setTimeout has not been defined")
+ }
+ function o() {
+ throw new Error("clearTimeout has not been defined")
+ }
+ function s(t) {
+ if (e === setTimeout) return setTimeout(t, 0);
+ if ((e === i || !e) && setTimeout) return e = setTimeout, setTimeout(t, 0);
+ try {
+ return e(t, 0)
+ } catch (r) {
+ try {
+ return e.call(null, t, 0)
+ } catch (r) {
+ return e.call(this, t, 0)
+ }
+ }
+ }! function() {
+ try {
+ e = "function" == typeof setTimeout ? setTimeout : i
+ } catch (t) {
+ e = i
+ }
+ try {
+ r = "function" == typeof clearTimeout ? clearTimeout : o
+ } catch (t) {
+ r = o
+ }
+ }();
+ var a, f = [],
+ u = !1,
+ c = -1;
+
+ function h() {
+ u && a && (u = !1, a.length ? f = a.concat(f) : c = -1, f.length && p())
+ }
+ function p() {
+ if (!u) {
+ var t = s(h);
+ u = !0;
+ for (var e = f.length; e;) {
+ for (a = f, f = []; ++c < e;) a && a[c].run();
+ c = -1, e = f.length
+ }
+ a = null, u = !1,
+ function(t) {
+ if (r === clearTimeout) return clearTimeout(t);
+ if ((r === o || !r) && clearTimeout) return r = clearTimeout, clearTimeout(t);
+ try {
+ return r(t)
+ } catch (e) {
+ try {
+ return r.call(null, t)
+ } catch (e) {
+ return r.call(this, t)
+ }
+ }
+ }(t)
+ }
+ }
+ function l(t, e) {
+ this.fun = t, this.array = e
+ }
+ function y() {}
+ n.nextTick = function(t) {
+ var e = new Array(arguments.length - 1);
+ if (arguments.length > 1) for (var r = 1; r < arguments.length; r++) e[r - 1] = arguments[r];
+ f.push(new l(t, e)), 1 !== f.length || u || s(p)
+ }, l.prototype.run = function() {
+ this.fun.apply(null, this.array)
+ }, n.title = "browser", n.browser = !0, n.env = {}, n.argv = [], n.version = "", n.versions = {}, n.on = y, n.addListener = y, n.once = y, n.off = y, n.removeListener = y, n.removeAllListeners = y, n.emit = y, n.prependListener = y, n.prependOnceListener = y, n.listeners = function(t) {
+ return []
+ }, n.binding = function(t) {
+ throw new Error("process.binding is not supported")
+ }, n.cwd = function() {
+ return "/"
+ }, n.chdir = function(t) {
+ throw new Error("process.chdir is not supported")
+ }, n.umask = function() {
+ return 0
+ }
+ },
+ 4774: (t, e, r) => {
+ "use strict";
+ var n, i = r(5606),
+ o = r(8287),
+ s = o.Buffer,
+ a = {};
+ for (n in o) o.hasOwnProperty(n) && "SlowBuffer" !== n && "Buffer" !== n && (a[n] = o[n]);
+ var f = a.Buffer = {};
+ for (n in s) s.hasOwnProperty(n) && "allocUnsafe" !== n && "allocUnsafeSlow" !== n && (f[n] = s[n]);
+ if (a.Buffer.prototype = s.prototype, f.from && f.from !== Uint8Array.from || (f.from = function(t, e, r) {
+ if ("number" == typeof t) throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof t);
+ if (t && void 0 === t.length) throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t);
+ return s(t, e, r)
+ }), f.alloc || (f.alloc = function(t, e, r) {
+ if ("number" != typeof t) throw new TypeError('The "size" argument must be of type number. Received type ' + typeof t);
+ if (t < 0 || t >= 2 * (1 << 30)) throw new RangeError('The value "' + t + '" is invalid for option "size"');
+ var n = s(t);
+ return e && 0 !== e.length ? "string" == typeof r ? n.fill(e, r) : n.fill(e) : n.fill(0), n
+ }), !a.kStringMaxLength) try {
+ a.kStringMaxLength = i.binding("buffer")
+ .kStringMaxLength
+ } catch (t) {}
+ a.constants || (a.constants = {
+ MAX_LENGTH: a.kMaxLength
+ }, a.kStringMaxLength && (a.constants.MAX_STRING_LENGTH = a.kStringMaxLength)), t.exports = a
+ },
+ 6897: (t, e, r) => {
+ "use strict";
+ var n = r(453),
+ i = r(41),
+ o = r(592)(),
+ s = r(5795),
+ a = r(9675),
+ f = n("%Math.floor%");
+ t.exports = function(t, e) {
+ if ("function" != typeof t) throw new a("`fn` is not a function");
+ if ("number" != typeof e || e < 0 || e > 4294967295 || f(e) !== e) throw new a("`length` must be a positive 32-bit integer");
+ var r = arguments.length > 2 && !! arguments[2],
+ n = !0,
+ u = !0;
+ if ("length" in t && s) {
+ var c = s(t, "length");
+ c && !c.configurable && (n = !1), c && !c.writable && (u = !1)
+ }
+ return (n || u || !r) && (o ? i(t, "length", e, !0, !0) : i(t, "length", e)), t
+ }
+ },
+ 3200: (t, e, r) => {
+ var n = r(8287)
+ .Buffer,
+ i = r(1396),
+ o = {
+ randomBytes: function(t) {
+ for (var e = [], r = 0; r < t; r++) e.push(Math.floor(256 * Math.random()));
+ return n.from(e)
+ },
+ createHash(t) {
+ let e = n.from([]);
+ return {
+ update: function(t) {
+ return e = n.concat([e, t]), this
+ },
+ digest: function() {
+ let r = i[t.toUpperCase()](i.lib.WordArray.create(new Uint8Array(e)))
+ .toString();
+ return n.from(r, "hex")
+ }
+ }
+ }
+ };
+ t.exports = o
+ },
+ 7033: (t, e, r) => {
+ var n = r(8287)
+ .Buffer;
+ const i = r(3229);
+ let o = {
+ outputEncoding: "",
+ PublicFormat: "pkcs1-public",
+ PrivateFormat: "pkcs1-private",
+ options: {
+ environment: "browser",
+ encryptionScheme: "pkcs1"
+ }
+ };
+ t.exports = {
+ NodeRSA: i,
+ encryptRSAWithPublicKey: function(t, e, r = {}) {
+ return r = Object.assign({}, o, r), new i(e, r.PublicFormat, r.options)
+ .encrypt(t, r.outEncoding || "base64")
+ },
+ encryptRSAWithPrivateKey: function(t, e, r = {}) {
+ return r = Object.assign({}, o, r), new i(e, r.PrivateFormat, r.options)
+ .encryptPrivate(t, r.outputEncoding || "base64")
+ },
+ decryptRSAWithPublicKey: function(t, e, r = {}) {
+ return r = Object.assign({}, o, r), new i(e, r.PublicEncoding, r.options)
+ .decryptPublic(t, r.outEncoding || "utf8")
+ },
+ decryptRSAWithPrivateKey: function(t, e, r = {}) {
+ return r = Object.assign({}, o, r), new i(e, r.PrivateEncoding, r.options)
+ .decrypt(t, r.outEncoding || "utf8")
+ },
+ sign: function(t, e, r = {}) {
+ return r = Object.assign({}, o, r), new i(e, r.PrivateEncoding, r.options)
+ .sign(t, r.outEncoding || "base64")
+ },
+ verify: function(t, e, r, s = {}) {
+ return "string" == typeof e && e.match(/^([0-9a-fA-F]{2})*$/) ? e = n.from(e, "hex") : "string" == typeof e && (e = n.from(e, "base64")), s = Object.assign({}, o, s), new i(r, s.PublicEncoding, s.options)
+ .verify(t, e)
+ }
+ }
+ },
+ 7449: t => {
+ "use strict";
+ t.exports = JSON.parse('{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":512,"O_EXCL":2048,"O_NOCTTY":131072,"O_TRUNC":1024,"O_APPEND":8,"O_DIRECTORY":1048576,"O_NOFOLLOW":256,"O_SYNC":128,"O_SYMLINK":2097152,"O_NONBLOCK":4,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"E2BIG":7,"EACCES":13,"EADDRINUSE":48,"EADDRNOTAVAIL":49,"EAFNOSUPPORT":47,"EAGAIN":35,"EALREADY":37,"EBADF":9,"EBADMSG":94,"EBUSY":16,"ECANCELED":89,"ECHILD":10,"ECONNABORTED":53,"ECONNREFUSED":61,"ECONNRESET":54,"EDEADLK":11,"EDESTADDRREQ":39,"EDOM":33,"EDQUOT":69,"EEXIST":17,"EFAULT":14,"EFBIG":27,"EHOSTUNREACH":65,"EIDRM":90,"EILSEQ":92,"EINPROGRESS":36,"EINTR":4,"EINVAL":22,"EIO":5,"EISCONN":56,"EISDIR":21,"ELOOP":62,"EMFILE":24,"EMLINK":31,"EMSGSIZE":40,"EMULTIHOP":95,"ENAMETOOLONG":63,"ENETDOWN":50,"ENETRESET":52,"ENETUNREACH":51,"ENFILE":23,"ENOBUFS":55,"ENODATA":96,"ENODEV":19,"ENOENT":2,"ENOEXEC":8,"ENOLCK":77,"ENOLINK":97,"ENOMEM":12,"ENOMSG":91,"ENOPROTOOPT":42,"ENOSPC":28,"ENOSR":98,"ENOSTR":99,"ENOSYS":78,"ENOTCONN":57,"ENOTDIR":20,"ENOTEMPTY":66,"ENOTSOCK":38,"ENOTSUP":45,"ENOTTY":25,"ENXIO":6,"EOPNOTSUPP":102,"EOVERFLOW":84,"EPERM":1,"EPIPE":32,"EPROTO":100,"EPROTONOSUPPORT":43,"EPROTOTYPE":41,"ERANGE":34,"EROFS":30,"ESPIPE":29,"ESRCH":3,"ESTALE":70,"ETIME":101,"ETIMEDOUT":60,"ETXTBSY":26,"EWOULDBLOCK":35,"EXDEV":18,"SIGHUP":1,"SIGINT":2,"SIGQUIT":3,"SIGILL":4,"SIGTRAP":5,"SIGABRT":6,"SIGIOT":6,"SIGBUS":10,"SIGFPE":8,"SIGKILL":9,"SIGUSR1":30,"SIGSEGV":11,"SIGUSR2":31,"SIGPIPE":13,"SIGALRM":14,"SIGTERM":15,"SIGCHLD":20,"SIGCONT":19,"SIGSTOP":17,"SIGTSTP":18,"SIGTTIN":21,"SIGTTOU":22,"SIGURG":16,"SIGXCPU":24,"SIGXFSZ":25,"SIGVTALRM":26,"SIGPROF":27,"SIGWINCH":28,"SIGIO":23,"SIGSYS":12,"SSL_OP_ALL":2147486719,"SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION":262144,"SSL_OP_CIPHER_SERVER_PREFERENCE":4194304,"SSL_OP_CISCO_ANYCONNECT":32768,"SSL_OP_COOKIE_EXCHANGE":8192,"SSL_OP_CRYPTOPRO_TLSEXT_BUG":2147483648,"SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS":2048,"SSL_OP_EPHEMERAL_RSA":0,"SSL_OP_LEGACY_SERVER_CONNECT":4,"SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER":32,"SSL_OP_MICROSOFT_SESS_ID_BUG":1,"SSL_OP_MSIE_SSLV2_RSA_PADDING":0,"SSL_OP_NETSCAPE_CA_DN_BUG":536870912,"SSL_OP_NETSCAPE_CHALLENGE_BUG":2,"SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG":1073741824,"SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG":8,"SSL_OP_NO_COMPRESSION":131072,"SSL_OP_NO_QUERY_MTU":4096,"SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION":65536,"SSL_OP_NO_SSLv2":16777216,"SSL_OP_NO_SSLv3":33554432,"SSL_OP_NO_TICKET":16384,"SSL_OP_NO_TLSv1":67108864,"SSL_OP_NO_TLSv1_1":268435456,"SSL_OP_NO_TLSv1_2":134217728,"SSL_OP_PKCS1_CHECK_1":0,"SSL_OP_PKCS1_CHECK_2":0,"SSL_OP_SINGLE_DH_USE":1048576,"SSL_OP_SINGLE_ECDH_USE":524288,"SSL_OP_SSLEAY_080_CLIENT_DH_BUG":128,"SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG":0,"SSL_OP_TLS_BLOCK_PADDING_BUG":512,"SSL_OP_TLS_D5_BUG":256,"SSL_OP_TLS_ROLLBACK_BUG":8388608,"ENGINE_METHOD_DSA":2,"ENGINE_METHOD_DH":4,"ENGINE_METHOD_RAND":8,"ENGINE_METHOD_ECDH":16,"ENGINE_METHOD_ECDSA":32,"ENGINE_METHOD_CIPHERS":64,"ENGINE_METHOD_DIGESTS":128,"ENGINE_METHOD_STORE":256,"ENGINE_METHOD_PKEY_METHS":512,"ENGINE_METHOD_PKEY_ASN1_METHS":1024,"ENGINE_METHOD_ALL":65535,"ENGINE_METHOD_NONE":0,"DH_CHECK_P_NOT_SAFE_PRIME":2,"DH_CHECK_P_NOT_PRIME":1,"DH_UNABLE_TO_CHECK_GENERATOR":4,"DH_NOT_SUITABLE_GENERATOR":8,"NPN_ENABLED":1,"RSA_PKCS1_PADDING":1,"RSA_SSLV23_PADDING":2,"RSA_NO_PADDING":3,"RSA_PKCS1_OAEP_PADDING":4,"RSA_X931_PADDING":5,"RSA_PKCS1_PSS_PADDING":6,"POINT_CONVERSION_COMPRESSED":2,"POINT_CONVERSION_UNCOMPRESSED":4,"POINT_CONVERSION_HYBRID":6,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"UV_UDP_REUSEADDR":4}')
+ }
+ }, e = {};
+
+ function r(n) {
+ var i = e[n];
+ if (void 0 !== i) return i.exports;
+ var o = e[n] = {
+ exports: {}
+ };
+ return t[n].call(o.exports, o, o.exports, r), o.exports
+ }
+ return r.g = function() {
+ if ("object" == typeof globalThis) return globalThis;
+ try {
+ return this || new Function("return this")()
+ } catch (t) {
+ if ("object" == typeof window) return window
+ }
+ }(), r(7033)
+})()));
\ No newline at end of file
diff --git a/JS/pako.min.js b/JS/pako.min.js
new file mode 100644
index 0000000..5d16170
--- /dev/null
+++ b/JS/pako.min.js
@@ -0,0 +1,1341 @@
+/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */ ! function(t, e) {
+ "object" == typeof exports && "undefined" != typeof module ? e(exports) : "function" == typeof define && define.amd ? define(["exports"], e) : e((t = "undefined" != typeof globalThis ? globalThis : t || self)
+ .pako = {})
+}(this, (function(t) {
+ "use strict";
+
+ function e(t) {
+ let e = t.length;
+ for (; --e >= 0;) t[e] = 0
+ }
+ const a = 256, i = 286, n = 30, s = 15, r = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0]), o = new Uint8Array([0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13]), l = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7]), h = new Uint8Array([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]), d = new Array(576);
+ e(d);
+ const _ = new Array(60);
+ e(_);
+ const f = new Array(512);
+ e(f);
+ const c = new Array(256);
+ e(c);
+ const u = new Array(29);
+ e(u);
+ const w = new Array(n);
+
+ function m(t, e, a, i, n) {
+ this.static_tree = t, this.extra_bits = e, this.extra_base = a, this.elems = i, this.max_length = n, this.has_stree = t && t.length
+ }
+ let b, g, p;
+
+ function k(t, e) {
+ this.dyn_tree = t, this.max_code = 0, this.stat_desc = e
+ }
+ e(w);
+ const v = t => t < 256 ? f[t] : f[256 + (t >>> 7)], y = (t, e) => {
+ t.pending_buf[t.pending++] = 255 & e, t.pending_buf[t.pending++] = e >>> 8 & 255
+ }, x = (t, e, a) => {
+ t.bi_valid > 16 - a ? (t.bi_buf |= e << t.bi_valid & 65535, y(t, t.bi_buf), t.bi_buf = e >> 16 - t.bi_valid, t.bi_valid += a - 16) : (t.bi_buf |= e << t.bi_valid & 65535, t.bi_valid += a)
+ }, z = (t, e, a) => {
+ x(t, a[2 * e], a[2 * e + 1])
+ }, A = (t, e) => {
+ let a = 0;
+ do {
+ a |= 1 & t, t >>>= 1, a <<= 1
+ } while (--e > 0);
+ return a >>> 1
+ }, E = (t, e, a) => {
+ const i = new Array(16);
+ let n, r, o = 0;
+ for (n = 1; n <= s; n++) o = o + a[n - 1] << 1, i[n] = o;
+ for (r = 0; r <= e; r++) {
+ let e = t[2 * r + 1];
+ 0 !== e && (t[2 * r] = A(i[e]++, e))
+ }
+ }, R = t => {
+ let e;
+ for (e = 0; e < i; e++) t.dyn_ltree[2 * e] = 0;
+ for (e = 0; e < n; e++) t.dyn_dtree[2 * e] = 0;
+ for (e = 0; e < 19; e++) t.bl_tree[2 * e] = 0;
+ t.dyn_ltree[512] = 1, t.opt_len = t.static_len = 0, t.sym_next = t.matches = 0
+ }, Z = t => {
+ t.bi_valid > 8 ? y(t, t.bi_buf) : t.bi_valid > 0 && (t.pending_buf[t.pending++] = t.bi_buf), t.bi_buf = 0, t.bi_valid = 0
+ }, U = (t, e, a, i) => {
+ const n = 2 * e, s = 2 * a;
+ return t[n] < t[s] || t[n] === t[s] && i[e] <= i[a]
+ }, S = (t, e, a) => {
+ const i = t.heap[a];
+ let n = a << 1;
+ for (; n <= t.heap_len && (n < t.heap_len && U(e, t.heap[n + 1], t.heap[n], t.depth) && n++, !U(e, i, t.heap[n], t.depth));) t.heap[a] = t.heap[n], a = n, n <<= 1;
+ t.heap[a] = i
+ }, D = (t, e, i) => {
+ let n, s, l, h, d = 0;
+ if (0 !== t.sym_next) do {
+ n = 255 & t.pending_buf[t.sym_buf + d++], n += (255 & t.pending_buf[t.sym_buf + d++]) << 8, s = t.pending_buf[t.sym_buf + d++], 0 === n ? z(t, s, e) : (l = c[s], z(t, l + a + 1, e), h = r[l], 0 !== h && (s -= u[l], x(t, s, h)), n--, l = v(n), z(t, l, i), h = o[l], 0 !== h && (n -= w[l], x(t, n, h)))
+ } while (d < t.sym_next);
+ z(t, 256, e)
+ }, T = (t, e) => {
+ const a = e.dyn_tree, i = e.stat_desc.static_tree, n = e.stat_desc.has_stree, r = e.stat_desc.elems;
+ let o, l, h, d = -1;
+ for (t.heap_len = 0, t.heap_max = 573, o = 0; o < r; o++) 0 !== a[2 * o] ? (t.heap[++t.heap_len] = d = o, t.depth[o] = 0) : a[2 * o + 1] = 0;
+ for (; t.heap_len < 2;) h = t.heap[++t.heap_len] = d < 2 ? ++d : 0, a[2 * h] = 1, t.depth[h] = 0, t.opt_len--, n && (t.static_len -= i[2 * h + 1]);
+ for (e.max_code = d, o = t.heap_len >> 1; o >= 1; o--) S(t, a, o);
+ h = r;
+ do {
+ o = t.heap[1], t.heap[1] = t.heap[t.heap_len--], S(t, a, 1), l = t.heap[1], t.heap[--t.heap_max] = o, t.heap[--t.heap_max] = l, a[2 * h] = a[2 * o] + a[2 * l], t.depth[h] = (t.depth[o] >= t.depth[l] ? t.depth[o] : t.depth[l]) + 1, a[2 * o + 1] = a[2 * l + 1] = h, t.heap[1] = h++, S(t, a, 1)
+ } while (t.heap_len >= 2);
+ t.heap[--t.heap_max] = t.heap[1], ((t, e) => {
+ const a = e.dyn_tree, i = e.max_code, n = e.stat_desc.static_tree, r = e.stat_desc.has_stree, o = e.stat_desc.extra_bits, l = e.stat_desc.extra_base, h = e.stat_desc.max_length;
+ let d, _, f, c, u, w, m = 0;
+ for (c = 0; c <= s; c++) t.bl_count[c] = 0;
+ for (a[2 * t.heap[t.heap_max] + 1] = 0, d = t.heap_max + 1; d < 573; d++) _ = t.heap[d], c = a[2 * a[2 * _ + 1] + 1] + 1, c > h && (c = h, m++), a[2 * _ + 1] = c, _ > i || (t.bl_count[c]++, u = 0, _ >= l && (u = o[_ - l]), w = a[2 * _], t.opt_len += w * (c + u), r && (t.static_len += w * (n[2 * _ + 1] + u)));
+ if (0 !== m) {
+ do {
+ for (c = h - 1; 0 === t.bl_count[c];) c--;
+ t.bl_count[c]--, t.bl_count[c + 1] += 2, t.bl_count[h]--, m -= 2
+ } while (m > 0);
+ for (c = h; 0 !== c; c--) for (_ = t.bl_count[c]; 0 !== _;) f = t.heap[--d], f > i || (a[2 * f + 1] !== c && (t.opt_len += (c - a[2 * f + 1]) * a[2 * f], a[2 * f + 1] = c), _--)
+ }
+ })(t, e), E(a, d, t.bl_count)
+ }, O = (t, e, a) => {
+ let i, n, s = -1, r = e[1], o = 0, l = 7, h = 4;
+ for (0 === r && (l = 138, h = 3), e[2 * (a + 1) + 1] = 65535, i = 0; i <= a; i++) n = r, r = e[2 * (i + 1) + 1], ++o < l && n === r || (o < h ? t.bl_tree[2 * n] += o : 0 !== n ? (n !== s && t.bl_tree[2 * n]++, t.bl_tree[32]++) : o <= 10 ? t.bl_tree[34]++ : t.bl_tree[36]++, o = 0, s = n, 0 === r ? (l = 138, h = 3) : n === r ? (l = 6, h = 3) : (l = 7, h = 4))
+ }, I = (t, e, a) => {
+ let i, n, s = -1, r = e[1], o = 0, l = 7, h = 4;
+ for (0 === r && (l = 138, h = 3), i = 0; i <= a; i++) if (n = r, r = e[2 * (i + 1) + 1], !(++o < l && n === r)) {
+ if (o < h) do {
+ z(t, n, t.bl_tree)
+ } while (0 != --o);
+ else 0 !== n ? (n !== s && (z(t, n, t.bl_tree), o--), z(t, 16, t.bl_tree), x(t, o - 3, 2)) : o <= 10 ? (z(t, 17, t.bl_tree), x(t, o - 3, 3)) : (z(t, 18, t.bl_tree), x(t, o - 11, 7));
+ o = 0, s = n, 0 === r ? (l = 138, h = 3) : n === r ? (l = 6, h = 3) : (l = 7, h = 4)
+ }
+ };
+ let F = !1;
+ const L = (t, e, a, i) => {
+ x(t, 0 + (i ? 1 : 0), 3), Z(t), y(t, a), y(t, ~a), a && t.pending_buf.set(t.window.subarray(e, e + a), t.pending), t.pending += a
+ };
+ var N = (t, e, i, n) => {
+ let s, r, o = 0;
+ t.level > 0 ? (2 === t.strm.data_type && (t.strm.data_type = (t => {
+ let e, i = 4093624447;
+ for (e = 0; e <= 31; e++, i >>>= 1) if (1 & i && 0 !== t.dyn_ltree[2 * e]) return 0;
+ if (0 !== t.dyn_ltree[18] || 0 !== t.dyn_ltree[20] || 0 !== t.dyn_ltree[26]) return 1;
+ for (e = 32; e < a; e++) if (0 !== t.dyn_ltree[2 * e]) return 1;
+ return 0
+ })(t)), T(t, t.l_desc), T(t, t.d_desc), o = (t => {
+ let e;
+ for (O(t, t.dyn_ltree, t.l_desc.max_code), O(t, t.dyn_dtree, t.d_desc.max_code), T(t, t.bl_desc), e = 18; e >= 3 && 0 === t.bl_tree[2 * h[e] + 1]; e--);
+ return t.opt_len += 3 * (e + 1) + 5 + 5 + 4, e
+ })(t), s = t.opt_len + 3 + 7 >>> 3, r = t.static_len + 3 + 7 >>> 3, r <= s && (s = r)) : s = r = i + 5, i + 4 <= s && -1 !== e ? L(t, e, i, n) : 4 === t.strategy || r === s ? (x(t, 2 + (n ? 1 : 0), 3), D(t, d, _)) : (x(t, 4 + (n ? 1 : 0), 3), ((t, e, a, i) => {
+ let n;
+ for (x(t, e - 257, 5), x(t, a - 1, 5), x(t, i - 4, 4), n = 0; n < i; n++) x(t, t.bl_tree[2 * h[n] + 1], 3);
+ I(t, t.dyn_ltree, e - 1), I(t, t.dyn_dtree, a - 1)
+ })(t, t.l_desc.max_code + 1, t.d_desc.max_code + 1, o + 1), D(t, t.dyn_ltree, t.dyn_dtree)), R(t), n && Z(t)
+ }, B = {
+ _tr_init: t => {
+ F || ((() => {
+ let t, e, a, h, k;
+ const v = new Array(16);
+ for (a = 0, h = 0; h < 28; h++) for (u[h] = a, t = 0; t < 1 << r[h]; t++) c[a++] = h;
+ for (c[a - 1] = h, k = 0, h = 0; h < 16; h++) for (w[h] = k, t = 0; t < 1 << o[h]; t++) f[k++] = h;
+ for (k >>= 7; h < n; h++) for (w[h] = k << 7, t = 0; t < 1 << o[h] - 7; t++) f[256 + k++] = h;
+ for (e = 0; e <= s; e++) v[e] = 0;
+ for (t = 0; t <= 143;) d[2 * t + 1] = 8, t++, v[8]++;
+ for (; t <= 255;) d[2 * t + 1] = 9, t++, v[9]++;
+ for (; t <= 279;) d[2 * t + 1] = 7, t++, v[7]++;
+ for (; t <= 287;) d[2 * t + 1] = 8, t++, v[8]++;
+ for (E(d, 287, v), t = 0; t < n; t++) _[2 * t + 1] = 5, _[2 * t] = A(t, 5);
+ b = new m(d, r, 257, i, s), g = new m(_, o, 0, n, s), p = new m(new Array(0), l, 0, 19, 7)
+ })(), F = !0), t.l_desc = new k(t.dyn_ltree, b), t.d_desc = new k(t.dyn_dtree, g), t.bl_desc = new k(t.bl_tree, p), t.bi_buf = 0, t.bi_valid = 0, R(t)
+ },
+ _tr_stored_block: L,
+ _tr_flush_block: N,
+ _tr_tally: (t, e, i) => (t.pending_buf[t.sym_buf + t.sym_next++] = e, t.pending_buf[t.sym_buf + t.sym_next++] = e >> 8, t.pending_buf[t.sym_buf + t.sym_next++] = i, 0 === e ? t.dyn_ltree[2 * i]++ : (t.matches++, e--, t.dyn_ltree[2 * (c[i] + a + 1)]++, t.dyn_dtree[2 * v(e)]++), t.sym_next === t.sym_end),
+ _tr_align: t => {
+ x(t, 2, 3), z(t, 256, d), (t => {
+ 16 === t.bi_valid ? (y(t, t.bi_buf), t.bi_buf = 0, t.bi_valid = 0) : t.bi_valid >= 8 && (t.pending_buf[t.pending++] = 255 & t.bi_buf, t.bi_buf >>= 8, t.bi_valid -= 8)
+ })(t)
+ }
+ };
+ var C = (t, e, a, i) => {
+ let n = 65535 & t | 0, s = t >>> 16 & 65535 | 0, r = 0;
+ for (; 0 !== a;) {
+ r = a > 2e3 ? 2e3 : a, a -= r;
+ do {
+ n = n + e[i++] | 0, s = s + n | 0
+ } while (--r);
+ n %= 65521, s %= 65521
+ }
+ return n | s << 16 | 0
+ };
+ const M = new Uint32Array((() => {
+ let t, e = [];
+ for (var a = 0; a < 256; a++) {
+ t = a;
+ for (var i = 0; i < 8; i++) t = 1 & t ? 3988292384 ^ t >>> 1 : t >>> 1;
+ e[a] = t
+ }
+ return e
+ })());
+ var H = (t, e, a, i) => {
+ const n = M, s = i + a;
+ t ^= -1;
+ for (let a = i; a < s; a++) t = t >>> 8 ^ n[255 & (t ^ e[a])];
+ return -1 ^ t
+ }, j = {
+ 2: "need dictionary",
+ 1: "stream end",
+ 0: "",
+ "-1": "file error",
+ "-2": "stream error",
+ "-3": "data error",
+ "-4": "insufficient memory",
+ "-5": "buffer error",
+ "-6": "incompatible version"
+ }, K = {
+ Z_NO_FLUSH: 0,
+ Z_PARTIAL_FLUSH: 1,
+ Z_SYNC_FLUSH: 2,
+ Z_FULL_FLUSH: 3,
+ Z_FINISH: 4,
+ Z_BLOCK: 5,
+ Z_TREES: 6,
+ Z_OK: 0,
+ Z_STREAM_END: 1,
+ Z_NEED_DICT: 2,
+ Z_ERRNO: -1,
+ Z_STREAM_ERROR: -2,
+ Z_DATA_ERROR: -3,
+ Z_MEM_ERROR: -4,
+ Z_BUF_ERROR: -5,
+ Z_NO_COMPRESSION: 0,
+ Z_BEST_SPEED: 1,
+ Z_BEST_COMPRESSION: 9,
+ Z_DEFAULT_COMPRESSION: -1,
+ Z_FILTERED: 1,
+ Z_HUFFMAN_ONLY: 2,
+ Z_RLE: 3,
+ Z_FIXED: 4,
+ Z_DEFAULT_STRATEGY: 0,
+ Z_BINARY: 0,
+ Z_TEXT: 1,
+ Z_UNKNOWN: 2,
+ Z_DEFLATED: 8
+ };
+ const {
+ _tr_init: P,
+ _tr_stored_block: Y,
+ _tr_flush_block: G,
+ _tr_tally: X,
+ _tr_align: W
+ } = B, {
+ Z_NO_FLUSH: q,
+ Z_PARTIAL_FLUSH: J,
+ Z_FULL_FLUSH: Q,
+ Z_FINISH: V,
+ Z_BLOCK: $,
+ Z_OK: tt,
+ Z_STREAM_END: et,
+ Z_STREAM_ERROR: at,
+ Z_DATA_ERROR: it,
+ Z_BUF_ERROR: nt,
+ Z_DEFAULT_COMPRESSION: st,
+ Z_FILTERED: rt,
+ Z_HUFFMAN_ONLY: ot,
+ Z_RLE: lt,
+ Z_FIXED: ht,
+ Z_DEFAULT_STRATEGY: dt,
+ Z_UNKNOWN: _t,
+ Z_DEFLATED: ft
+ } = K, ct = 258, ut = 262, wt = 42, mt = 113, bt = 666, gt = (t, e) => (t.msg = j[e], e), pt = t => 2 * t - (t > 4 ? 9 : 0), kt = t => {
+ let e = t.length;
+ for (; --e >= 0;) t[e] = 0
+ }, vt = t => {
+ let e, a, i, n = t.w_size;
+ e = t.hash_size, i = e;
+ do {
+ a = t.head[--i], t.head[i] = a >= n ? a - n : 0
+ } while (--e);
+ e = n, i = e;
+ do {
+ a = t.prev[--i], t.prev[i] = a >= n ? a - n : 0
+ } while (--e)
+ };
+ let yt = (t, e, a) => (e << t.hash_shift ^ a) & t.hash_mask;
+ const xt = t => {
+ const e = t.state;
+ let a = e.pending;
+ a > t.avail_out && (a = t.avail_out), 0 !== a && (t.output.set(e.pending_buf.subarray(e.pending_out, e.pending_out + a), t.next_out), t.next_out += a, e.pending_out += a, t.total_out += a, t.avail_out -= a, e.pending -= a, 0 === e.pending && (e.pending_out = 0))
+ }, zt = (t, e) => {
+ G(t, t.block_start >= 0 ? t.block_start : -1, t.strstart - t.block_start, e), t.block_start = t.strstart, xt(t.strm)
+ }, At = (t, e) => {
+ t.pending_buf[t.pending++] = e
+ }, Et = (t, e) => {
+ t.pending_buf[t.pending++] = e >>> 8 & 255, t.pending_buf[t.pending++] = 255 & e
+ }, Rt = (t, e, a, i) => {
+ let n = t.avail_in;
+ return n > i && (n = i), 0 === n ? 0 : (t.avail_in -= n, e.set(t.input.subarray(t.next_in, t.next_in + n), a), 1 === t.state.wrap ? t.adler = C(t.adler, e, n, a) : 2 === t.state.wrap && (t.adler = H(t.adler, e, n, a)), t.next_in += n, t.total_in += n, n)
+ }, Zt = (t, e) => {
+ let a, i, n = t.max_chain_length, s = t.strstart, r = t.prev_length, o = t.nice_match;
+ const l = t.strstart > t.w_size - ut ? t.strstart - (t.w_size - ut) : 0, h = t.window, d = t.w_mask, _ = t.prev, f = t.strstart + ct;
+ let c = h[s + r - 1], u = h[s + r];
+ t.prev_length >= t.good_match && (n >>= 2), o > t.lookahead && (o = t.lookahead);
+ do {
+ if (a = e, h[a + r] === u && h[a + r - 1] === c && h[a] === h[s] && h[++a] === h[s + 1]) {
+ s += 2, a++;
+ do {} while (h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && s < f);
+ if (i = ct - (f - s), s = f - ct, i > r) {
+ if (t.match_start = e, r = i, i >= o) break;
+ c = h[s + r - 1], u = h[s + r]
+ }
+ }
+ } while ((e = _[e & d]) > l && 0 != --n);
+ return r <= t.lookahead ? r : t.lookahead
+ }, Ut = t => {
+ const e = t.w_size;
+ let a, i, n;
+ do {
+ if (i = t.window_size - t.lookahead - t.strstart, t.strstart >= e + (e - ut) && (t.window.set(t.window.subarray(e, e + e - i), 0), t.match_start -= e, t.strstart -= e, t.block_start -= e, t.insert > t.strstart && (t.insert = t.strstart), vt(t), i += e), 0 === t.strm.avail_in) break;
+ if (a = Rt(t.strm, t.window, t.strstart + t.lookahead, i), t.lookahead += a, t.lookahead + t.insert >= 3) for (n = t.strstart - t.insert, t.ins_h = t.window[n], t.ins_h = yt(t, t.ins_h, t.window[n + 1]); t.insert && (t.ins_h = yt(t, t.ins_h, t.window[n + 3 - 1]), t.prev[n & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = n, n++, t.insert--, !(t.lookahead + t.insert < 3)););
+ } while (t.lookahead < ut && 0 !== t.strm.avail_in)
+ }, St = (t, e) => {
+ let a, i, n, s = t.pending_buf_size - 5 > t.w_size ? t.w_size : t.pending_buf_size - 5, r = 0, o = t.strm.avail_in;
+ do {
+ if (a = 65535, n = t.bi_valid + 42 >> 3, t.strm.avail_out < n) break;
+ if (n = t.strm.avail_out - n, i = t.strstart - t.block_start, a > i + t.strm.avail_in && (a = i + t.strm.avail_in), a > n && (a = n), a < s && (0 === a && e !== V || e === q || a !== i + t.strm.avail_in)) break;
+ r = e === V && a === i + t.strm.avail_in ? 1 : 0, Y(t, 0, 0, r), t.pending_buf[t.pending - 4] = a, t.pending_buf[t.pending - 3] = a >> 8, t.pending_buf[t.pending - 2] = ~a, t.pending_buf[t.pending - 1] = ~a >> 8, xt(t.strm), i && (i > a && (i = a), t.strm.output.set(t.window.subarray(t.block_start, t.block_start + i), t.strm.next_out), t.strm.next_out += i, t.strm.avail_out -= i, t.strm.total_out += i, t.block_start += i, a -= i), a && (Rt(t.strm, t.strm.output, t.strm.next_out, a), t.strm.next_out += a, t.strm.avail_out -= a, t.strm.total_out += a)
+ } while (0 === r);
+ return o -= t.strm.avail_in, o && (o >= t.w_size ? (t.matches = 2, t.window.set(t.strm.input.subarray(t.strm.next_in - t.w_size, t.strm.next_in), 0), t.strstart = t.w_size, t.insert = t.strstart) : (t.window_size - t.strstart <= o && (t.strstart -= t.w_size, t.window.set(t.window.subarray(t.w_size, t.w_size + t.strstart), 0), t.matches < 2 && t.matches++, t.insert > t.strstart && (t.insert = t.strstart)), t.window.set(t.strm.input.subarray(t.strm.next_in - o, t.strm.next_in), t.strstart), t.strstart += o, t.insert += o > t.w_size - t.insert ? t.w_size - t.insert : o), t.block_start = t.strstart), t.high_water < t.strstart && (t.high_water = t.strstart), r ? 4 : e !== q && e !== V && 0 === t.strm.avail_in && t.strstart === t.block_start ? 2 : (n = t.window_size - t.strstart, t.strm.avail_in > n && t.block_start >= t.w_size && (t.block_start -= t.w_size, t.strstart -= t.w_size, t.window.set(t.window.subarray(t.w_size, t.w_size + t.strstart), 0), t.matches < 2 && t.matches++, n += t.w_size, t.insert > t.strstart && (t.insert = t.strstart)), n > t.strm.avail_in && (n = t.strm.avail_in), n && (Rt(t.strm, t.window, t.strstart, n), t.strstart += n, t.insert += n > t.w_size - t.insert ? t.w_size - t.insert : n), t.high_water < t.strstart && (t.high_water = t.strstart), n = t.bi_valid + 42 >> 3, n = t.pending_buf_size - n > 65535 ? 65535 : t.pending_buf_size - n, s = n > t.w_size ? t.w_size : n, i = t.strstart - t.block_start, (i >= s || (i || e === V) && e !== q && 0 === t.strm.avail_in && i <= n) && (a = i > n ? n : i, r = e === V && 0 === t.strm.avail_in && a === i ? 1 : 0, Y(t, t.block_start, a, r), t.block_start += a, xt(t.strm)), r ? 3 : 1)
+ }, Dt = (t, e) => {
+ let a, i;
+ for (;;) {
+ if (t.lookahead < ut) {
+ if (Ut(t), t.lookahead < ut && e === q) return 1;
+ if (0 === t.lookahead) break
+ }
+ if (a = 0, t.lookahead >= 3 && (t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), 0 !== a && t.strstart - a <= t.w_size - ut && (t.match_length = Zt(t, a)), t.match_length >= 3) if (i = X(t, t.strstart - t.match_start, t.match_length - 3), t.lookahead -= t.match_length, t.match_length <= t.max_lazy_match && t.lookahead >= 3) {
+ t.match_length--;
+ do {
+ t.strstart++, t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart
+ } while (0 != --t.match_length);
+ t.strstart++
+ } else t.strstart += t.match_length, t.match_length = 0, t.ins_h = t.window[t.strstart], t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 1]);
+ else i = X(t, 0, t.window[t.strstart]), t.lookahead--, t.strstart++;
+ if (i && (zt(t, !1), 0 === t.strm.avail_out)) return 1
+ }
+ return t.insert = t.strstart < 2 ? t.strstart : 2, e === V ? (zt(t, !0), 0 === t.strm.avail_out ? 3 : 4) : t.sym_next && (zt(t, !1), 0 === t.strm.avail_out) ? 1 : 2
+ }, Tt = (t, e) => {
+ let a, i, n;
+ for (;;) {
+ if (t.lookahead < ut) {
+ if (Ut(t), t.lookahead < ut && e === q) return 1;
+ if (0 === t.lookahead) break
+ }
+ if (a = 0, t.lookahead >= 3 && (t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), t.prev_length = t.match_length, t.prev_match = t.match_start, t.match_length = 2, 0 !== a && t.prev_length < t.max_lazy_match && t.strstart - a <= t.w_size - ut && (t.match_length = Zt(t, a), t.match_length <= 5 && (t.strategy === rt || 3 === t.match_length && t.strstart - t.match_start > 4096) && (t.match_length = 2)), t.prev_length >= 3 && t.match_length <= t.prev_length) {
+ n = t.strstart + t.lookahead - 3, i = X(t, t.strstart - 1 - t.prev_match, t.prev_length - 3), t.lookahead -= t.prev_length - 1, t.prev_length -= 2;
+ do {++t.strstart <= n && (t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart)
+ } while (0 != --t.prev_length);
+ if (t.match_available = 0, t.match_length = 2, t.strstart++, i && (zt(t, !1), 0 === t.strm.avail_out)) return 1
+ } else if (t.match_available) {
+ if (i = X(t, 0, t.window[t.strstart - 1]), i && zt(t, !1), t.strstart++, t.lookahead--, 0 === t.strm.avail_out) return 1
+ } else t.match_available = 1, t.strstart++, t.lookahead--
+ }
+ return t.match_available && (i = X(t, 0, t.window[t.strstart - 1]), t.match_available = 0), t.insert = t.strstart < 2 ? t.strstart : 2, e === V ? (zt(t, !0), 0 === t.strm.avail_out ? 3 : 4) : t.sym_next && (zt(t, !1), 0 === t.strm.avail_out) ? 1 : 2
+ };
+
+ function Ot(t, e, a, i, n) {
+ this.good_length = t, this.max_lazy = e, this.nice_length = a, this.max_chain = i, this.func = n
+ }
+ const It = [new Ot(0, 0, 0, 0, St), new Ot(4, 4, 8, 4, Dt), new Ot(4, 5, 16, 8, Dt), new Ot(4, 6, 32, 32, Dt), new Ot(4, 4, 16, 16, Tt), new Ot(8, 16, 32, 32, Tt), new Ot(8, 16, 128, 128, Tt), new Ot(8, 32, 128, 256, Tt), new Ot(32, 128, 258, 1024, Tt), new Ot(32, 258, 258, 4096, Tt)];
+
+ function Ft() {
+ this.strm = null, this.status = 0, this.pending_buf = null, this.pending_buf_size = 0, this.pending_out = 0, this.pending = 0, this.wrap = 0, this.gzhead = null, this.gzindex = 0, this.method = ft, this.last_flush = -1, this.w_size = 0, this.w_bits = 0, this.w_mask = 0, this.window = null, this.window_size = 0, this.prev = null, this.head = null, this.ins_h = 0, this.hash_size = 0, this.hash_bits = 0, this.hash_mask = 0, this.hash_shift = 0, this.block_start = 0, this.match_length = 0, this.prev_match = 0, this.match_available = 0, this.strstart = 0, this.match_start = 0, this.lookahead = 0, this.prev_length = 0, this.max_chain_length = 0, this.max_lazy_match = 0, this.level = 0, this.strategy = 0, this.good_match = 0, this.nice_match = 0, this.dyn_ltree = new Uint16Array(1146), this.dyn_dtree = new Uint16Array(122), this.bl_tree = new Uint16Array(78), kt(this.dyn_ltree), kt(this.dyn_dtree), kt(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new Uint16Array(16), this.heap = new Uint16Array(573), kt(this.heap), this.heap_len = 0, this.heap_max = 0, this.depth = new Uint16Array(573), kt(this.depth), this.sym_buf = 0, this.lit_bufsize = 0, this.sym_next = 0, this.sym_end = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0, this.insert = 0, this.bi_buf = 0, this.bi_valid = 0
+ }
+ const Lt = t => {
+ if (!t) return 1;
+ const e = t.state;
+ return !e || e.strm !== t || e.status !== wt && 57 !== e.status && 69 !== e.status && 73 !== e.status && 91 !== e.status && 103 !== e.status && e.status !== mt && e.status !== bt ? 1 : 0
+ }, Nt = t => {
+ if (Lt(t)) return gt(t, at);
+ t.total_in = t.total_out = 0, t.data_type = _t;
+ const e = t.state;
+ return e.pending = 0, e.pending_out = 0, e.wrap < 0 && (e.wrap = -e.wrap), e.status = 2 === e.wrap ? 57 : e.wrap ? wt : mt, t.adler = 2 === e.wrap ? 0 : 1, e.last_flush = -2, P(e), tt
+ }, Bt = t => {
+ const e = Nt(t);
+ var a;
+ return e === tt && ((a = t.state)
+ .window_size = 2 * a.w_size, kt(a.head), a.max_lazy_match = It[a.level].max_lazy, a.good_match = It[a.level].good_length, a.nice_match = It[a.level].nice_length, a.max_chain_length = It[a.level].max_chain, a.strstart = 0, a.block_start = 0, a.lookahead = 0, a.insert = 0, a.match_length = a.prev_length = 2, a.match_available = 0, a.ins_h = 0), e
+ }, Ct = (t, e, a, i, n, s) => {
+ if (!t) return at;
+ let r = 1;
+ if (e === st && (e = 6), i < 0 ? (r = 0, i = -i) : i > 15 && (r = 2, i -= 16), n < 1 || n > 9 || a !== ft || i < 8 || i > 15 || e < 0 || e > 9 || s < 0 || s > ht || 8 === i && 1 !== r) return gt(t, at);
+ 8 === i && (i = 9);
+ const o = new Ft;
+ return t.state = o, o.strm = t, o.status = wt, o.wrap = r, o.gzhead = null, o.w_bits = i, o.w_size = 1 << o.w_bits, o.w_mask = o.w_size - 1, o.hash_bits = n + 7, o.hash_size = 1 << o.hash_bits, o.hash_mask = o.hash_size - 1, o.hash_shift = ~~ ((o.hash_bits + 3 - 1) / 3), o.window = new Uint8Array(2 * o.w_size), o.head = new Uint16Array(o.hash_size), o.prev = new Uint16Array(o.w_size), o.lit_bufsize = 1 << n + 6, o.pending_buf_size = 4 * o.lit_bufsize, o.pending_buf = new Uint8Array(o.pending_buf_size), o.sym_buf = o.lit_bufsize, o.sym_end = 3 * (o.lit_bufsize - 1), o.level = e, o.strategy = s, o.method = a, Bt(t)
+ };
+ var Mt = {
+ deflateInit: (t, e) => Ct(t, e, ft, 15, 8, dt),
+ deflateInit2: Ct,
+ deflateReset: Bt,
+ deflateResetKeep: Nt,
+ deflateSetHeader: (t, e) => Lt(t) || 2 !== t.state.wrap ? at : (t.state.gzhead = e, tt),
+ deflate: (t, e) => {
+ if (Lt(t) || e > $ || e < 0) return t ? gt(t, at) : at;
+ const a = t.state;
+ if (!t.output || 0 !== t.avail_in && !t.input || a.status === bt && e !== V) return gt(t, 0 === t.avail_out ? nt : at);
+ const i = a.last_flush;
+ if (a.last_flush = e, 0 !== a.pending) {
+ if (xt(t), 0 === t.avail_out) return a.last_flush = -1, tt
+ } else if (0 === t.avail_in && pt(e) <= pt(i) && e !== V) return gt(t, nt);
+ if (a.status === bt && 0 !== t.avail_in) return gt(t, nt);
+ if (a.status === wt && 0 === a.wrap && (a.status = mt), a.status === wt) {
+ let e = ft + (a.w_bits - 8 << 4) << 8, i = -1;
+ if (i = a.strategy >= ot || a.level < 2 ? 0 : a.level < 6 ? 1 : 6 === a.level ? 2 : 3, e |= i << 6, 0 !== a.strstart && (e |= 32), e += 31 - e % 31, Et(a, e), 0 !== a.strstart && (Et(a, t.adler >>> 16), Et(a, 65535 & t.adler)), t.adler = 1, a.status = mt, xt(t), 0 !== a.pending) return a.last_flush = -1, tt
+ }
+ if (57 === a.status) if (t.adler = 0, At(a, 31), At(a, 139), At(a, 8), a.gzhead) At(a, (a.gzhead.text ? 1 : 0) + (a.gzhead.hcrc ? 2 : 0) + (a.gzhead.extra ? 4 : 0) + (a.gzhead.name ? 8 : 0) + (a.gzhead.comment ? 16 : 0)), At(a, 255 & a.gzhead.time), At(a, a.gzhead.time >> 8 & 255), At(a, a.gzhead.time >> 16 & 255), At(a, a.gzhead.time >> 24 & 255), At(a, 9 === a.level ? 2 : a.strategy >= ot || a.level < 2 ? 4 : 0), At(a, 255 & a.gzhead.os), a.gzhead.extra && a.gzhead.extra.length && (At(a, 255 & a.gzhead.extra.length), At(a, a.gzhead.extra.length >> 8 & 255)), a.gzhead.hcrc && (t.adler = H(t.adler, a.pending_buf, a.pending, 0)), a.gzindex = 0, a.status = 69;
+ else if (At(a, 0), At(a, 0), At(a, 0), At(a, 0), At(a, 0), At(a, 9 === a.level ? 2 : a.strategy >= ot || a.level < 2 ? 4 : 0), At(a, 3), a.status = mt, xt(t), 0 !== a.pending) return a.last_flush = -1, tt;
+ if (69 === a.status) {
+ if (a.gzhead.extra) {
+ let e = a.pending, i = (65535 & a.gzhead.extra.length) - a.gzindex;
+ for (; a.pending + i > a.pending_buf_size;) {
+ let n = a.pending_buf_size - a.pending;
+ if (a.pending_buf.set(a.gzhead.extra.subarray(a.gzindex, a.gzindex + n), a.pending), a.pending = a.pending_buf_size, a.gzhead.hcrc && a.pending > e && (t.adler = H(t.adler, a.pending_buf, a.pending - e, e)), a.gzindex += n, xt(t), 0 !== a.pending) return a.last_flush = -1, tt;
+ e = 0, i -= n
+ }
+ let n = new Uint8Array(a.gzhead.extra);
+ a.pending_buf.set(n.subarray(a.gzindex, a.gzindex + i), a.pending), a.pending += i, a.gzhead.hcrc && a.pending > e && (t.adler = H(t.adler, a.pending_buf, a.pending - e, e)), a.gzindex = 0
+ }
+ a.status = 73
+ }
+ if (73 === a.status) {
+ if (a.gzhead.name) {
+ let e, i = a.pending;
+ do {
+ if (a.pending === a.pending_buf_size) {
+ if (a.gzhead.hcrc && a.pending > i && (t.adler = H(t.adler, a.pending_buf, a.pending - i, i)), xt(t), 0 !== a.pending) return a.last_flush = -1, tt;
+ i = 0
+ }
+ e = a.gzindex < a.gzhead.name.length ? 255 & a.gzhead.name.charCodeAt(a.gzindex++) : 0, At(a, e)
+ } while (0 !== e);
+ a.gzhead.hcrc && a.pending > i && (t.adler = H(t.adler, a.pending_buf, a.pending - i, i)), a.gzindex = 0
+ }
+ a.status = 91
+ }
+ if (91 === a.status) {
+ if (a.gzhead.comment) {
+ let e, i = a.pending;
+ do {
+ if (a.pending === a.pending_buf_size) {
+ if (a.gzhead.hcrc && a.pending > i && (t.adler = H(t.adler, a.pending_buf, a.pending - i, i)), xt(t), 0 !== a.pending) return a.last_flush = -1, tt;
+ i = 0
+ }
+ e = a.gzindex < a.gzhead.comment.length ? 255 & a.gzhead.comment.charCodeAt(a.gzindex++) : 0, At(a, e)
+ } while (0 !== e);
+ a.gzhead.hcrc && a.pending > i && (t.adler = H(t.adler, a.pending_buf, a.pending - i, i))
+ }
+ a.status = 103
+ }
+ if (103 === a.status) {
+ if (a.gzhead.hcrc) {
+ if (a.pending + 2 > a.pending_buf_size && (xt(t), 0 !== a.pending)) return a.last_flush = -1, tt;
+ At(a, 255 & t.adler), At(a, t.adler >> 8 & 255), t.adler = 0
+ }
+ if (a.status = mt, xt(t), 0 !== a.pending) return a.last_flush = -1, tt
+ }
+ if (0 !== t.avail_in || 0 !== a.lookahead || e !== q && a.status !== bt) {
+ let i = 0 === a.level ? St(a, e) : a.strategy === ot ? ((t, e) => {
+ let a;
+ for (;;) {
+ if (0 === t.lookahead && (Ut(t), 0 === t.lookahead)) {
+ if (e === q) return 1;
+ break
+ }
+ if (t.match_length = 0, a = X(t, 0, t.window[t.strstart]), t.lookahead--, t.strstart++, a && (zt(t, !1), 0 === t.strm.avail_out)) return 1
+ }
+ return t.insert = 0, e === V ? (zt(t, !0), 0 === t.strm.avail_out ? 3 : 4) : t.sym_next && (zt(t, !1), 0 === t.strm.avail_out) ? 1 : 2
+ })(a, e) : a.strategy === lt ? ((t, e) => {
+ let a, i, n, s;
+ const r = t.window;
+ for (;;) {
+ if (t.lookahead <= ct) {
+ if (Ut(t), t.lookahead <= ct && e === q) return 1;
+ if (0 === t.lookahead) break
+ }
+ if (t.match_length = 0, t.lookahead >= 3 && t.strstart > 0 && (n = t.strstart - 1, i = r[n], i === r[++n] && i === r[++n] && i === r[++n])) {
+ s = t.strstart + ct;
+ do {} while (i === r[++n] && i === r[++n] && i === r[++n] && i === r[++n] && i === r[++n] && i === r[++n] && i === r[++n] && i === r[++n] && n < s);
+ t.match_length = ct - (s - n), t.match_length > t.lookahead && (t.match_length = t.lookahead)
+ }
+ if (t.match_length >= 3 ? (a = X(t, 1, t.match_length - 3), t.lookahead -= t.match_length, t.strstart += t.match_length, t.match_length = 0) : (a = X(t, 0, t.window[t.strstart]), t.lookahead--, t.strstart++), a && (zt(t, !1), 0 === t.strm.avail_out)) return 1
+ }
+ return t.insert = 0, e === V ? (zt(t, !0), 0 === t.strm.avail_out ? 3 : 4) : t.sym_next && (zt(t, !1), 0 === t.strm.avail_out) ? 1 : 2
+ })(a, e) : It[a.level].func(a, e);
+ if (3 !== i && 4 !== i || (a.status = bt), 1 === i || 3 === i) return 0 === t.avail_out && (a.last_flush = -1), tt;
+ if (2 === i && (e === J ? W(a) : e !== $ && (Y(a, 0, 0, !1), e === Q && (kt(a.head), 0 === a.lookahead && (a.strstart = 0, a.block_start = 0, a.insert = 0))), xt(t), 0 === t.avail_out)) return a.last_flush = -1, tt
+ }
+ return e !== V ? tt : a.wrap <= 0 ? et : (2 === a.wrap ? (At(a, 255 & t.adler), At(a, t.adler >> 8 & 255), At(a, t.adler >> 16 & 255), At(a, t.adler >> 24 & 255), At(a, 255 & t.total_in), At(a, t.total_in >> 8 & 255), At(a, t.total_in >> 16 & 255), At(a, t.total_in >> 24 & 255)) : (Et(a, t.adler >>> 16), Et(a, 65535 & t.adler)), xt(t), a.wrap > 0 && (a.wrap = -a.wrap), 0 !== a.pending ? tt : et)
+ },
+ deflateEnd: t => {
+ if (Lt(t)) return at;
+ const e = t.state.status;
+ return t.state = null, e === mt ? gt(t, it) : tt
+ },
+ deflateSetDictionary: (t, e) => {
+ let a = e.length;
+ if (Lt(t)) return at;
+ const i = t.state, n = i.wrap;
+ if (2 === n || 1 === n && i.status !== wt || i.lookahead) return at;
+ if (1 === n && (t.adler = C(t.adler, e, a, 0)), i.wrap = 0, a >= i.w_size) {
+ 0 === n && (kt(i.head), i.strstart = 0, i.block_start = 0, i.insert = 0);
+ let t = new Uint8Array(i.w_size);
+ t.set(e.subarray(a - i.w_size, a), 0), e = t, a = i.w_size
+ }
+ const s = t.avail_in, r = t.next_in, o = t.input;
+ for (t.avail_in = a, t.next_in = 0, t.input = e, Ut(i); i.lookahead >= 3;) {
+ let t = i.strstart, e = i.lookahead - 2;
+ do {
+ i.ins_h = yt(i, i.ins_h, i.window[t + 3 - 1]), i.prev[t & i.w_mask] = i.head[i.ins_h], i.head[i.ins_h] = t, t++
+ } while (--e);
+ i.strstart = t, i.lookahead = 2, Ut(i)
+ }
+ return i.strstart += i.lookahead, i.block_start = i.strstart, i.insert = i.lookahead, i.lookahead = 0, i.match_length = i.prev_length = 2, i.match_available = 0, t.next_in = r, t.input = o, t.avail_in = s, i.wrap = n, tt
+ },
+ deflateInfo: "pako deflate (from Nodeca project)"
+ };
+ const Ht = (t, e) => Object.prototype.hasOwnProperty.call(t, e);
+ var jt = function(t) {
+ const e = Array.prototype.slice.call(arguments, 1);
+ for (; e.length;) {
+ const a = e.shift();
+ if (a) {
+ if ("object" != typeof a) throw new TypeError(a + "must be non-object");
+ for (const e in a) Ht(a, e) && (t[e] = a[e])
+ }
+ }
+ return t
+ }, Kt = t => {
+ let e = 0;
+ for (let a = 0, i = t.length; a < i; a++) e += t[a].length;
+ const a = new Uint8Array(e);
+ for (let e = 0, i = 0, n = t.length; e < n; e++) {
+ let n = t[e];
+ a.set(n, i), i += n.length
+ }
+ return a
+ };
+ let Pt = !0;
+ try {
+ String.fromCharCode.apply(null, new Uint8Array(1))
+ } catch (t) {
+ Pt = !1
+ }
+ const Yt = new Uint8Array(256);
+ for (let t = 0; t < 256; t++) Yt[t] = t >= 252 ? 6 : t >= 248 ? 5 : t >= 240 ? 4 : t >= 224 ? 3 : t >= 192 ? 2 : 1;
+ Yt[254] = Yt[254] = 1;
+ var Gt = t => {
+ if ("function" == typeof TextEncoder && TextEncoder.prototype.encode) return (new TextEncoder)
+ .encode(t);
+ let e, a, i, n, s, r = t.length, o = 0;
+ for (n = 0; n < r; n++) a = t.charCodeAt(n), 55296 == (64512 & a) && n + 1 < r && (i = t.charCodeAt(n + 1), 56320 == (64512 & i) && (a = 65536 + (a - 55296 << 10) + (i - 56320), n++)), o += a < 128 ? 1 : a < 2048 ? 2 : a < 65536 ? 3 : 4;
+ for (e = new Uint8Array(o), s = 0, n = 0; s < o; n++) a = t.charCodeAt(n), 55296 == (64512 & a) && n + 1 < r && (i = t.charCodeAt(n + 1), 56320 == (64512 & i) && (a = 65536 + (a - 55296 << 10) + (i - 56320), n++)), a < 128 ? e[s++] = a : a < 2048 ? (e[s++] = 192 | a >>> 6, e[s++] = 128 | 63 & a) : a < 65536 ? (e[s++] = 224 | a >>> 12, e[s++] = 128 | a >>> 6 & 63, e[s++] = 128 | 63 & a) : (e[s++] = 240 | a >>> 18, e[s++] = 128 | a >>> 12 & 63, e[s++] = 128 | a >>> 6 & 63, e[s++] = 128 | 63 & a);
+ return e
+ }, Xt = (t, e) => {
+ const a = e || t.length;
+ if ("function" == typeof TextDecoder && TextDecoder.prototype.decode) return (new TextDecoder)
+ .decode(t.subarray(0, e));
+ let i, n;
+ const s = new Array(2 * a);
+ for (n = 0, i = 0; i < a;) {
+ let e = t[i++];
+ if (e < 128) {
+ s[n++] = e;
+ continue
+ }
+ let r = Yt[e];
+ if (r > 4) s[n++] = 65533, i += r - 1;
+ else {
+ for (e &= 2 === r ? 31 : 3 === r ? 15 : 7; r > 1 && i < a;) e = e << 6 | 63 & t[i++], r--;
+ r > 1 ? s[n++] = 65533 : e < 65536 ? s[n++] = e : (e -= 65536, s[n++] = 55296 | e >> 10 & 1023, s[n++] = 56320 | 1023 & e)
+ }
+ }
+ return ((t, e) => {
+ if (e < 65534 && t.subarray && Pt) return String.fromCharCode.apply(null, t.length === e ? t : t.subarray(0, e));
+ let a = "";
+ for (let i = 0; i < e; i++) a += String.fromCharCode(t[i]);
+ return a
+ })(s, n)
+ }, Wt = (t, e) => {
+ (e = e || t.length) > t.length && (e = t.length);
+ let a = e - 1;
+ for (; a >= 0 && 128 == (192 & t[a]);) a--;
+ return a < 0 || 0 === a ? e : a + Yt[t[a]] > e ? a : e
+ };
+ var qt = function() {
+ this.input = null, this.next_in = 0, this.avail_in = 0, this.total_in = 0, this.output = null, this.next_out = 0, this.avail_out = 0, this.total_out = 0, this.msg = "", this.state = null, this.data_type = 2, this.adler = 0
+ };
+ const Jt = Object.prototype.toString, {
+ Z_NO_FLUSH: Qt,
+ Z_SYNC_FLUSH: Vt,
+ Z_FULL_FLUSH: $t,
+ Z_FINISH: te,
+ Z_OK: ee,
+ Z_STREAM_END: ae,
+ Z_DEFAULT_COMPRESSION: ie,
+ Z_DEFAULT_STRATEGY: ne,
+ Z_DEFLATED: se
+ } = K;
+
+ function re(t) {
+ this.options = jt({
+ level: ie,
+ method: se,
+ chunkSize: 16384,
+ windowBits: 15,
+ memLevel: 8,
+ strategy: ne
+ }, t || {});
+ let e = this.options;
+ e.raw && e.windowBits > 0 ? e.windowBits = -e.windowBits : e.gzip && e.windowBits > 0 && e.windowBits < 16 && (e.windowBits += 16), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new qt, this.strm.avail_out = 0;
+ let a = Mt.deflateInit2(this.strm, e.level, e.method, e.windowBits, e.memLevel, e.strategy);
+ if (a !== ee) throw new Error(j[a]);
+ if (e.header && Mt.deflateSetHeader(this.strm, e.header), e.dictionary) {
+ let t;
+ if (t = "string" == typeof e.dictionary ? Gt(e.dictionary) : "[object ArrayBuffer]" === Jt.call(e.dictionary) ? new Uint8Array(e.dictionary) : e.dictionary, a = Mt.deflateSetDictionary(this.strm, t), a !== ee) throw new Error(j[a]);
+ this._dict_set = !0
+ }
+ }
+ function oe(t, e) {
+ const a = new re(e);
+ if (a.push(t, !0), a.err) throw a.msg || j[a.err];
+ return a.result
+ }
+ re.prototype.push = function(t, e) {
+ const a = this.strm, i = this.options.chunkSize;
+ let n, s;
+ if (this.ended) return !1;
+ for (s = e === ~~e ? e : !0 === e ? te : Qt, "string" == typeof t ? a.input = Gt(t) : "[object ArrayBuffer]" === Jt.call(t) ? a.input = new Uint8Array(t) : a.input = t, a.next_in = 0, a.avail_in = a.input.length;;) if (0 === a.avail_out && (a.output = new Uint8Array(i), a.next_out = 0, a.avail_out = i), (s === Vt || s === $t) && a.avail_out <= 6) this.onData(a.output.subarray(0, a.next_out)), a.avail_out = 0;
+ else {
+ if (n = Mt.deflate(a, s), n === ae) return a.next_out > 0 && this.onData(a.output.subarray(0, a.next_out)), n = Mt.deflateEnd(this.strm), this.onEnd(n), this.ended = !0, n === ee;
+ if (0 !== a.avail_out) {
+ if (s > 0 && a.next_out > 0) this.onData(a.output.subarray(0, a.next_out)), a.avail_out = 0;
+ else if (0 === a.avail_in) break
+ } else this.onData(a.output)
+ }
+ return !0
+ }, re.prototype.onData = function(t) {
+ this.chunks.push(t)
+ }, re.prototype.onEnd = function(t) {
+ t === ee && (this.result = Kt(this.chunks)), this.chunks = [], this.err = t, this.msg = this.strm.msg
+ };
+ var le = {
+ Deflate: re,
+ deflate: oe,
+ deflateRaw: function(t, e) {
+ return (e = e || {})
+ .raw = !0, oe(t, e)
+ },
+ gzip: function(t, e) {
+ return (e = e || {})
+ .gzip = !0, oe(t, e)
+ },
+ constants: K
+ };
+ const he = 16209;
+ var de = function(t, e) {
+ let a, i, n, s, r, o, l, h, d, _, f, c, u, w, m, b, g, p, k, v, y, x, z, A;
+ const E = t.state;
+ a = t.next_in, z = t.input, i = a + (t.avail_in - 5), n = t.next_out, A = t.output, s = n - (e - t.avail_out), r = n + (t.avail_out - 257), o = E.dmax, l = E.wsize, h = E.whave, d = E.wnext, _ = E.window, f = E.hold, c = E.bits, u = E.lencode, w = E.distcode, m = (1 << E.lenbits) - 1, b = (1 << E.distbits) - 1;
+ t: do {
+ c < 15 && (f += z[a++] << c, c += 8, f += z[a++] << c, c += 8), g = u[f & m];
+ e: for (;;) {
+ if (p = g >>> 24, f >>>= p, c -= p, p = g >>> 16 & 255, 0 === p) A[n++] = 65535 & g;
+ else {
+ if (!(16 & p)) {
+ if (0 == (64 & p)) {
+ g = u[(65535 & g) + (f & (1 << p) - 1)];
+ continue e
+ }
+ if (32 & p) {
+ E.mode = 16191;
+ break t
+ }
+ t.msg = "invalid literal/length code", E.mode = he;
+ break t
+ }
+ k = 65535 & g, p &= 15, p && (c < p && (f += z[a++] << c, c += 8), k += f & (1 << p) - 1, f >>>= p, c -= p), c < 15 && (f += z[a++] << c, c += 8, f += z[a++] << c, c += 8), g = w[f & b];
+ a: for (;;) {
+ if (p = g >>> 24, f >>>= p, c -= p, p = g >>> 16 & 255, !(16 & p)) {
+ if (0 == (64 & p)) {
+ g = w[(65535 & g) + (f & (1 << p) - 1)];
+ continue a
+ }
+ t.msg = "invalid distance code", E.mode = he;
+ break t
+ }
+ if (v = 65535 & g, p &= 15, c < p && (f += z[a++] << c, c += 8, c < p && (f += z[a++] << c, c += 8)), v += f & (1 << p) - 1, v > o) {
+ t.msg = "invalid distance too far back", E.mode = he;
+ break t
+ }
+ if (f >>>= p, c -= p, p = n - s, v > p) {
+ if (p = v - p, p > h && E.sane) {
+ t.msg = "invalid distance too far back", E.mode = he;
+ break t
+ }
+ if (y = 0, x = _, 0 === d) {
+ if (y += l - p, p < k) {
+ k -= p;
+ do {
+ A[n++] = _[y++]
+ } while (--p);
+ y = n - v, x = A
+ }
+ } else if (d < p) {
+ if (y += l + d - p, p -= d, p < k) {
+ k -= p;
+ do {
+ A[n++] = _[y++]
+ } while (--p);
+ if (y = 0, d < k) {
+ p = d, k -= p;
+ do {
+ A[n++] = _[y++]
+ } while (--p);
+ y = n - v, x = A
+ }
+ }
+ } else if (y += d - p, p < k) {
+ k -= p;
+ do {
+ A[n++] = _[y++]
+ } while (--p);
+ y = n - v, x = A
+ }
+ for (; k > 2;) A[n++] = x[y++], A[n++] = x[y++], A[n++] = x[y++], k -= 3;
+ k && (A[n++] = x[y++], k > 1 && (A[n++] = x[y++]))
+ } else {
+ y = n - v;
+ do {
+ A[n++] = A[y++], A[n++] = A[y++], A[n++] = A[y++], k -= 3
+ } while (k > 2);
+ k && (A[n++] = A[y++], k > 1 && (A[n++] = A[y++]))
+ }
+ break
+ }
+ }
+ break
+ }
+ } while (a < i && n < r);
+ k = c >> 3, a -= k, c -= k << 3, f &= (1 << c) - 1, t.next_in = a, t.next_out = n, t.avail_in = a < i ? i - a + 5 : 5 - (a - i), t.avail_out = n < r ? r - n + 257 : 257 - (n - r), E.hold = f, E.bits = c
+ };
+ const _e = 15, fe = new Uint16Array([3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0]), ce = new Uint8Array([16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78]), ue = new Uint16Array([1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0]), we = new Uint8Array([16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64]);
+ var me = (t, e, a, i, n, s, r, o) => {
+ const l = o.bits;
+ let h, d, _, f, c, u, w = 0, m = 0, b = 0, g = 0, p = 0, k = 0, v = 0, y = 0, x = 0, z = 0, A = null;
+ const E = new Uint16Array(16), R = new Uint16Array(16);
+ let Z, U, S, D = null;
+ for (w = 0; w <= _e; w++) E[w] = 0;
+ for (m = 0; m < i; m++) E[e[a + m]]++;
+ for (p = l, g = _e; g >= 1 && 0 === E[g]; g--);
+ if (p > g && (p = g), 0 === g) return n[s++] = 20971520, n[s++] = 20971520, o.bits = 1, 0;
+ for (b = 1; b < g && 0 === E[b]; b++);
+ for (p < b && (p = b), y = 1, w = 1; w <= _e; w++) if (y <<= 1, y -= E[w], y < 0) return -1;
+ if (y > 0 && (0 === t || 1 !== g)) return -1;
+ for (R[1] = 0, w = 1; w < _e; w++) R[w + 1] = R[w] + E[w];
+ for (m = 0; m < i; m++) 0 !== e[a + m] && (r[R[e[a + m]]++] = m);
+ if (0 === t ? (A = D = r, u = 20) : 1 === t ? (A = fe, D = ce, u = 257) : (A = ue, D = we, u = 0), z = 0, m = 0, w = b, c = s, k = p, v = 0, _ = -1, x = 1 << p, f = x - 1, 1 === t && x > 852 || 2 === t && x > 592) return 1;
+ for (;;) {
+ Z = w - v, r[m] + 1 < u ? (U = 0, S = r[m]) : r[m] >= u ? (U = D[r[m] - u], S = A[r[m] - u]) : (U = 96, S = 0), h = 1 << w - v, d = 1 << k, b = d;
+ do {
+ d -= h, n[c + (z >> v) + d] = Z << 24 | U << 16 | S | 0
+ } while (0 !== d);
+ for (h = 1 << w - 1; z & h;) h >>= 1;
+ if (0 !== h ? (z &= h - 1, z += h) : z = 0, m++, 0 == --E[w]) {
+ if (w === g) break;
+ w = e[a + r[m]]
+ }
+ if (w > p && (z & f) !== _) {
+ for (0 === v && (v = p), c += b, k = w - v, y = 1 << k; k + v < g && (y -= E[k + v], !(y <= 0));) k++, y <<= 1;
+ if (x += 1 << k, 1 === t && x > 852 || 2 === t && x > 592) return 1;
+ _ = z & f, n[_] = p << 24 | k << 16 | c - s | 0
+ }
+ }
+ return 0 !== z && (n[c + z] = w - v << 24 | 64 << 16 | 0), o.bits = p, 0
+ };
+ const {
+ Z_FINISH: be,
+ Z_BLOCK: ge,
+ Z_TREES: pe,
+ Z_OK: ke,
+ Z_STREAM_END: ve,
+ Z_NEED_DICT: ye,
+ Z_STREAM_ERROR: xe,
+ Z_DATA_ERROR: ze,
+ Z_MEM_ERROR: Ae,
+ Z_BUF_ERROR: Ee,
+ Z_DEFLATED: Re
+ } = K, Ze = 16180, Ue = 16190, Se = 16191, De = 16192, Te = 16194, Oe = 16199, Ie = 16200, Fe = 16206, Le = 16209, Ne = t => (t >>> 24 & 255) + (t >>> 8 & 65280) + ((65280 & t) << 8) + ((255 & t) << 24);
+
+ function Be() {
+ this.strm = null, this.mode = 0, this.last = !1, this.wrap = 0, this.havedict = !1, this.flags = 0, this.dmax = 0, this.check = 0, this.total = 0, this.head = null, this.wbits = 0, this.wsize = 0, this.whave = 0, this.wnext = 0, this.window = null, this.hold = 0, this.bits = 0, this.length = 0, this.offset = 0, this.extra = 0, this.lencode = null, this.distcode = null, this.lenbits = 0, this.distbits = 0, this.ncode = 0, this.nlen = 0, this.ndist = 0, this.have = 0, this.next = null, this.lens = new Uint16Array(320), this.work = new Uint16Array(288), this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0
+ }
+ const Ce = t => {
+ if (!t) return 1;
+ const e = t.state;
+ return !e || e.strm !== t || e.mode < Ze || e.mode > 16211 ? 1 : 0
+ }, Me = t => {
+ if (Ce(t)) return xe;
+ const e = t.state;
+ return t.total_in = t.total_out = e.total = 0, t.msg = "", e.wrap && (t.adler = 1 & e.wrap), e.mode = Ze, e.last = 0, e.havedict = 0, e.flags = -1, e.dmax = 32768, e.head = null, e.hold = 0, e.bits = 0, e.lencode = e.lendyn = new Int32Array(852), e.distcode = e.distdyn = new Int32Array(592), e.sane = 1, e.back = -1, ke
+ }, He = t => {
+ if (Ce(t)) return xe;
+ const e = t.state;
+ return e.wsize = 0, e.whave = 0, e.wnext = 0, Me(t)
+ }, je = (t, e) => {
+ let a;
+ if (Ce(t)) return xe;
+ const i = t.state;
+ return e < 0 ? (a = 0, e = -e) : (a = 5 + (e >> 4), e < 48 && (e &= 15)), e && (e < 8 || e > 15) ? xe : (null !== i.window && i.wbits !== e && (i.window = null), i.wrap = a, i.wbits = e, He(t))
+ }, Ke = (t, e) => {
+ if (!t) return xe;
+ const a = new Be;
+ t.state = a, a.strm = t, a.window = null, a.mode = Ze;
+ const i = je(t, e);
+ return i !== ke && (t.state = null), i
+ };
+ let Pe, Ye, Ge = !0;
+ const Xe = t => {
+ if (Ge) {
+ Pe = new Int32Array(512), Ye = new Int32Array(32);
+ let e = 0;
+ for (; e < 144;) t.lens[e++] = 8;
+ for (; e < 256;) t.lens[e++] = 9;
+ for (; e < 280;) t.lens[e++] = 7;
+ for (; e < 288;) t.lens[e++] = 8;
+ for (me(1, t.lens, 0, 288, Pe, 0, t.work, {
+ bits: 9
+ }), e = 0; e < 32;) t.lens[e++] = 5;
+ me(2, t.lens, 0, 32, Ye, 0, t.work, {
+ bits: 5
+ }), Ge = !1
+ }
+ t.lencode = Pe, t.lenbits = 9, t.distcode = Ye, t.distbits = 5
+ }, We = (t, e, a, i) => {
+ let n;
+ const s = t.state;
+ return null === s.window && (s.wsize = 1 << s.wbits, s.wnext = 0, s.whave = 0, s.window = new Uint8Array(s.wsize)), i >= s.wsize ? (s.window.set(e.subarray(a - s.wsize, a), 0), s.wnext = 0, s.whave = s.wsize) : (n = s.wsize - s.wnext, n > i && (n = i), s.window.set(e.subarray(a - i, a - i + n), s.wnext), (i -= n) ? (s.window.set(e.subarray(a - i, a), 0), s.wnext = i, s.whave = s.wsize) : (s.wnext += n, s.wnext === s.wsize && (s.wnext = 0), s.whave < s.wsize && (s.whave += n))), 0
+ };
+ var qe = {
+ inflateReset: He,
+ inflateReset2: je,
+ inflateResetKeep: Me,
+ inflateInit: t => Ke(t, 15),
+ inflateInit2: Ke,
+ inflate: (t, e) => {
+ let a, i, n, s, r, o, l, h, d, _, f, c, u, w, m, b, g, p, k, v, y, x, z = 0;
+ const A = new Uint8Array(4);
+ let E, R;
+ const Z = new Uint8Array([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]);
+ if (Ce(t) || !t.output || !t.input && 0 !== t.avail_in) return xe;
+ a = t.state, a.mode === Se && (a.mode = De), r = t.next_out, n = t.output, l = t.avail_out, s = t.next_in, i = t.input, o = t.avail_in, h = a.hold, d = a.bits, _ = o, f = l, x = ke;
+ t: for (;;) switch (a.mode) {
+ case Ze:
+ if (0 === a.wrap) {
+ a.mode = De;
+ break
+ }
+ for (; d < 16;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if (2 & a.wrap && 35615 === h) {
+ 0 === a.wbits && (a.wbits = 15), a.check = 0, A[0] = 255 & h, A[1] = h >>> 8 & 255, a.check = H(a.check, A, 2, 0), h = 0, d = 0, a.mode = 16181;
+ break
+ }
+ if (a.head && (a.head.done = !1), !(1 & a.wrap) || (((255 & h) << 8) + (h >> 8)) % 31) {
+ t.msg = "incorrect header check", a.mode = Le;
+ break
+ }
+ if ((15 & h) !== Re) {
+ t.msg = "unknown compression method", a.mode = Le;
+ break
+ }
+ if (h >>>= 4, d -= 4, y = 8 + (15 & h), 0 === a.wbits && (a.wbits = y), y > 15 || y > a.wbits) {
+ t.msg = "invalid window size", a.mode = Le;
+ break
+ }
+ a.dmax = 1 << a.wbits, a.flags = 0, t.adler = a.check = 1, a.mode = 512 & h ? 16189 : Se, h = 0, d = 0;
+ break;
+ case 16181:
+ for (; d < 16;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if (a.flags = h, (255 & a.flags) !== Re) {
+ t.msg = "unknown compression method", a.mode = Le;
+ break
+ }
+ if (57344 & a.flags) {
+ t.msg = "unknown header flags set", a.mode = Le;
+ break
+ }
+ a.head && (a.head.text = h >> 8 & 1), 512 & a.flags && 4 & a.wrap && (A[0] = 255 & h, A[1] = h >>> 8 & 255, a.check = H(a.check, A, 2, 0)), h = 0, d = 0, a.mode = 16182;
+ case 16182:
+ for (; d < 32;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ a.head && (a.head.time = h), 512 & a.flags && 4 & a.wrap && (A[0] = 255 & h, A[1] = h >>> 8 & 255, A[2] = h >>> 16 & 255, A[3] = h >>> 24 & 255, a.check = H(a.check, A, 4, 0)), h = 0, d = 0, a.mode = 16183;
+ case 16183:
+ for (; d < 16;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ a.head && (a.head.xflags = 255 & h, a.head.os = h >> 8), 512 & a.flags && 4 & a.wrap && (A[0] = 255 & h, A[1] = h >>> 8 & 255, a.check = H(a.check, A, 2, 0)), h = 0, d = 0, a.mode = 16184;
+ case 16184:
+ if (1024 & a.flags) {
+ for (; d < 16;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ a.length = h, a.head && (a.head.extra_len = h), 512 & a.flags && 4 & a.wrap && (A[0] = 255 & h, A[1] = h >>> 8 & 255, a.check = H(a.check, A, 2, 0)), h = 0, d = 0
+ } else a.head && (a.head.extra = null);
+ a.mode = 16185;
+ case 16185:
+ if (1024 & a.flags && (c = a.length, c > o && (c = o), c && (a.head && (y = a.head.extra_len - a.length, a.head.extra || (a.head.extra = new Uint8Array(a.head.extra_len)), a.head.extra.set(i.subarray(s, s + c), y)), 512 & a.flags && 4 & a.wrap && (a.check = H(a.check, i, c, s)), o -= c, s += c, a.length -= c), a.length)) break t;
+ a.length = 0, a.mode = 16186;
+ case 16186:
+ if (2048 & a.flags) {
+ if (0 === o) break t;
+ c = 0;
+ do {
+ y = i[s + c++], a.head && y && a.length < 65536 && (a.head.name += String.fromCharCode(y))
+ } while (y && c < o);
+ if (512 & a.flags && 4 & a.wrap && (a.check = H(a.check, i, c, s)), o -= c, s += c, y) break t
+ } else a.head && (a.head.name = null);
+ a.length = 0, a.mode = 16187;
+ case 16187:
+ if (4096 & a.flags) {
+ if (0 === o) break t;
+ c = 0;
+ do {
+ y = i[s + c++], a.head && y && a.length < 65536 && (a.head.comment += String.fromCharCode(y))
+ } while (y && c < o);
+ if (512 & a.flags && 4 & a.wrap && (a.check = H(a.check, i, c, s)), o -= c, s += c, y) break t
+ } else a.head && (a.head.comment = null);
+ a.mode = 16188;
+ case 16188:
+ if (512 & a.flags) {
+ for (; d < 16;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if (4 & a.wrap && h !== (65535 & a.check)) {
+ t.msg = "header crc mismatch", a.mode = Le;
+ break
+ }
+ h = 0, d = 0
+ }
+ a.head && (a.head.hcrc = a.flags >> 9 & 1, a.head.done = !0), t.adler = a.check = 0, a.mode = Se;
+ break;
+ case 16189:
+ for (; d < 32;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ t.adler = a.check = Ne(h), h = 0, d = 0, a.mode = Ue;
+ case Ue:
+ if (0 === a.havedict) return t.next_out = r, t.avail_out = l, t.next_in = s, t.avail_in = o, a.hold = h, a.bits = d, ye;
+ t.adler = a.check = 1, a.mode = Se;
+ case Se:
+ if (e === ge || e === pe) break t;
+ case De:
+ if (a.last) {
+ h >>>= 7 & d, d -= 7 & d, a.mode = Fe;
+ break
+ }
+ for (; d < 3;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ switch (a.last = 1 & h, h >>>= 1, d -= 1, 3 & h) {
+ case 0:
+ a.mode = 16193;
+ break;
+ case 1:
+ if (Xe(a), a.mode = Oe, e === pe) {
+ h >>>= 2, d -= 2;
+ break t
+ }
+ break;
+ case 2:
+ a.mode = 16196;
+ break;
+ case 3:
+ t.msg = "invalid block type", a.mode = Le
+ }
+ h >>>= 2, d -= 2;
+ break;
+ case 16193:
+ for (h >>>= 7 & d, d -= 7 & d; d < 32;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if ((65535 & h) != (h >>> 16 ^ 65535)) {
+ t.msg = "invalid stored block lengths", a.mode = Le;
+ break
+ }
+ if (a.length = 65535 & h, h = 0, d = 0, a.mode = Te, e === pe) break t;
+ case Te:
+ a.mode = 16195;
+ case 16195:
+ if (c = a.length, c) {
+ if (c > o && (c = o), c > l && (c = l), 0 === c) break t;
+ n.set(i.subarray(s, s + c), r), o -= c, s += c, l -= c, r += c, a.length -= c;
+ break
+ }
+ a.mode = Se;
+ break;
+ case 16196:
+ for (; d < 14;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if (a.nlen = 257 + (31 & h), h >>>= 5, d -= 5, a.ndist = 1 + (31 & h), h >>>= 5, d -= 5, a.ncode = 4 + (15 & h), h >>>= 4, d -= 4, a.nlen > 286 || a.ndist > 30) {
+ t.msg = "too many length or distance symbols", a.mode = Le;
+ break
+ }
+ a.have = 0, a.mode = 16197;
+ case 16197:
+ for (; a.have < a.ncode;) {
+ for (; d < 3;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ a.lens[Z[a.have++]] = 7 & h, h >>>= 3, d -= 3
+ }
+ for (; a.have < 19;) a.lens[Z[a.have++]] = 0;
+ if (a.lencode = a.lendyn, a.lenbits = 7, E = {
+ bits: a.lenbits
+ }, x = me(0, a.lens, 0, 19, a.lencode, 0, a.work, E), a.lenbits = E.bits, x) {
+ t.msg = "invalid code lengths set", a.mode = Le;
+ break
+ }
+ a.have = 0, a.mode = 16198;
+ case 16198:
+ for (; a.have < a.nlen + a.ndist;) {
+ for (; z = a.lencode[h & (1 << a.lenbits) - 1], m = z >>> 24, b = z >>> 16 & 255, g = 65535 & z, !(m <= d);) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if (g < 16) h >>>= m, d -= m, a.lens[a.have++] = g;
+ else {
+ if (16 === g) {
+ for (R = m + 2; d < R;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if (h >>>= m, d -= m, 0 === a.have) {
+ t.msg = "invalid bit length repeat", a.mode = Le;
+ break
+ }
+ y = a.lens[a.have - 1], c = 3 + (3 & h), h >>>= 2, d -= 2
+ } else if (17 === g) {
+ for (R = m + 3; d < R;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ h >>>= m, d -= m, y = 0, c = 3 + (7 & h), h >>>= 3, d -= 3
+ } else {
+ for (R = m + 7; d < R;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ h >>>= m, d -= m, y = 0, c = 11 + (127 & h), h >>>= 7, d -= 7
+ }
+ if (a.have + c > a.nlen + a.ndist) {
+ t.msg = "invalid bit length repeat", a.mode = Le;
+ break
+ }
+ for (; c--;) a.lens[a.have++] = y
+ }
+ }
+ if (a.mode === Le) break;
+ if (0 === a.lens[256]) {
+ t.msg = "invalid code -- missing end-of-block", a.mode = Le;
+ break
+ }
+ if (a.lenbits = 9, E = {
+ bits: a.lenbits
+ }, x = me(1, a.lens, 0, a.nlen, a.lencode, 0, a.work, E), a.lenbits = E.bits, x) {
+ t.msg = "invalid literal/lengths set", a.mode = Le;
+ break
+ }
+ if (a.distbits = 6, a.distcode = a.distdyn, E = {
+ bits: a.distbits
+ }, x = me(2, a.lens, a.nlen, a.ndist, a.distcode, 0, a.work, E), a.distbits = E.bits, x) {
+ t.msg = "invalid distances set", a.mode = Le;
+ break
+ }
+ if (a.mode = Oe, e === pe) break t;
+ case Oe:
+ a.mode = Ie;
+ case Ie:
+ if (o >= 6 && l >= 258) {
+ t.next_out = r, t.avail_out = l, t.next_in = s, t.avail_in = o, a.hold = h, a.bits = d, de(t, f), r = t.next_out, n = t.output, l = t.avail_out, s = t.next_in, i = t.input, o = t.avail_in, h = a.hold, d = a.bits, a.mode === Se && (a.back = -1);
+ break
+ }
+ for (a.back = 0; z = a.lencode[h & (1 << a.lenbits) - 1], m = z >>> 24, b = z >>> 16 & 255, g = 65535 & z, !(m <= d);) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if (b && 0 == (240 & b)) {
+ for (p = m, k = b, v = g; z = a.lencode[v + ((h & (1 << p + k) - 1) >> p)], m = z >>> 24, b = z >>> 16 & 255, g = 65535 & z, !(p + m <= d);) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ h >>>= p, d -= p, a.back += p
+ }
+ if (h >>>= m, d -= m, a.back += m, a.length = g, 0 === b) {
+ a.mode = 16205;
+ break
+ }
+ if (32 & b) {
+ a.back = -1, a.mode = Se;
+ break
+ }
+ if (64 & b) {
+ t.msg = "invalid literal/length code", a.mode = Le;
+ break
+ }
+ a.extra = 15 & b, a.mode = 16201;
+ case 16201:
+ if (a.extra) {
+ for (R = a.extra; d < R;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ a.length += h & (1 << a.extra) - 1, h >>>= a.extra, d -= a.extra, a.back += a.extra
+ }
+ a.was = a.length, a.mode = 16202;
+ case 16202:
+ for (; z = a.distcode[h & (1 << a.distbits) - 1], m = z >>> 24, b = z >>> 16 & 255, g = 65535 & z, !(m <= d);) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if (0 == (240 & b)) {
+ for (p = m, k = b, v = g; z = a.distcode[v + ((h & (1 << p + k) - 1) >> p)], m = z >>> 24, b = z >>> 16 & 255, g = 65535 & z, !(p + m <= d);) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ h >>>= p, d -= p, a.back += p
+ }
+ if (h >>>= m, d -= m, a.back += m, 64 & b) {
+ t.msg = "invalid distance code", a.mode = Le;
+ break
+ }
+ a.offset = g, a.extra = 15 & b, a.mode = 16203;
+ case 16203:
+ if (a.extra) {
+ for (R = a.extra; d < R;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ a.offset += h & (1 << a.extra) - 1, h >>>= a.extra, d -= a.extra, a.back += a.extra
+ }
+ if (a.offset > a.dmax) {
+ t.msg = "invalid distance too far back", a.mode = Le;
+ break
+ }
+ a.mode = 16204;
+ case 16204:
+ if (0 === l) break t;
+ if (c = f - l, a.offset > c) {
+ if (c = a.offset - c, c > a.whave && a.sane) {
+ t.msg = "invalid distance too far back", a.mode = Le;
+ break
+ }
+ c > a.wnext ? (c -= a.wnext, u = a.wsize - c) : u = a.wnext - c, c > a.length && (c = a.length), w = a.window
+ } else w = n, u = r - a.offset, c = a.length;
+ c > l && (c = l), l -= c, a.length -= c;
+ do {
+ n[r++] = w[u++]
+ } while (--c);
+ 0 === a.length && (a.mode = Ie);
+ break;
+ case 16205:
+ if (0 === l) break t;
+ n[r++] = a.length, l--, a.mode = Ie;
+ break;
+ case Fe:
+ if (a.wrap) {
+ for (; d < 32;) {
+ if (0 === o) break t;
+ o--, h |= i[s++] << d, d += 8
+ }
+ if (f -= l, t.total_out += f, a.total += f, 4 & a.wrap && f && (t.adler = a.check = a.flags ? H(a.check, n, f, r - f) : C(a.check, n, f, r - f)), f = l, 4 & a.wrap && (a.flags ? h : Ne(h)) !== a.check) {
+ t.msg = "incorrect data check", a.mode = Le;
+ break
+ }
+ h = 0, d = 0
+ }
+ a.mode = 16207;
+ case 16207:
+ if (a.wrap && a.flags) {
+ for (; d < 32;) {
+ if (0 === o) break t;
+ o--, h += i[s++] << d, d += 8
+ }
+ if (4 & a.wrap && h !== (4294967295 & a.total)) {
+ t.msg = "incorrect length check", a.mode = Le;
+ break
+ }
+ h = 0, d = 0
+ }
+ a.mode = 16208;
+ case 16208:
+ x = ve;
+ break t;
+ case Le:
+ x = ze;
+ break t;
+ case 16210:
+ return Ae;
+ default:
+ return xe
+ }
+ return t.next_out = r,
+ t.avail_out = l,
+ t.next_in = s,
+ t.avail_in = o,
+ a.hold = h,
+ a.bits = d,
+ (a.wsize || f !== t.avail_out && a.mode < Le && (a.mode < Fe || e !== be)) && We(t, t.output, t.next_out, f - t.avail_out),
+ _ -= t.avail_in,
+ f -= t.avail_out,
+ t.total_in += _,
+ t.total_out += f,
+ a.total += f,
+ 4 & a.wrap && f && (t.adler = a.check = a.flags ? H(a.check, n, f, t.next_out - f) : C(a.check, n, f, t.next_out - f)),
+ t.data_type = a.bits + (a.last ? 64 : 0) + (a.mode === Se ? 128 : 0) + (a.mode === Oe || a.mode === Te ? 256 : 0),
+ (0 === _ && 0 === f || e === be) && x === ke && (x = Ee),
+ x
+ },
+ inflateEnd: t => {
+ if (Ce(t)) return xe;
+ let e = t.state;
+ return e.window && (e.window = null), t.state = null, ke
+ },
+ inflateGetHeader: (t, e) => {
+ if (Ce(t)) return xe;
+ const a = t.state;
+ return 0 == (2 & a.wrap) ? xe : (a.head = e, e.done = !1, ke)
+ },
+ inflateSetDictionary: (t, e) => {
+ const a = e.length;
+ let i, n, s;
+ return Ce(t) ? xe : (i = t.state, 0 !== i.wrap && i.mode !== Ue ? xe : i.mode === Ue && (n = 1, n = C(n, e, a, 0), n !== i.check) ? ze : (s = We(t, e, a, a), s ? (i.mode = 16210, Ae) : (i.havedict = 1, ke)))
+ },
+ inflateInfo: "pako inflate (from Nodeca project)"
+ };
+ var Je = function() {
+ this.text = 0, this.time = 0, this.xflags = 0, this.os = 0, this.extra = null, this.extra_len = 0, this.name = "", this.comment = "", this.hcrc = 0, this.done = !1
+ };
+ const Qe = Object.prototype.toString, {
+ Z_NO_FLUSH: Ve,
+ Z_FINISH: $e,
+ Z_OK: ta,
+ Z_STREAM_END: ea,
+ Z_NEED_DICT: aa,
+ Z_STREAM_ERROR: ia,
+ Z_DATA_ERROR: na,
+ Z_MEM_ERROR: sa
+ } = K;
+
+ function ra(t) {
+ this.options = jt({
+ chunkSize: 65536,
+ windowBits: 15,
+ to: ""
+ }, t || {});
+ const e = this.options;
+ e.raw && e.windowBits >= 0 && e.windowBits < 16 && (e.windowBits = -e.windowBits, 0 === e.windowBits && (e.windowBits = -15)), !(e.windowBits >= 0 && e.windowBits < 16) || t && t.windowBits || (e.windowBits += 32), e.windowBits > 15 && e.windowBits < 48 && 0 == (15 & e.windowBits) && (e.windowBits |= 15), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new qt, this.strm.avail_out = 0;
+ let a = qe.inflateInit2(this.strm, e.windowBits);
+ if (a !== ta) throw new Error(j[a]);
+ if (this.header = new Je, qe.inflateGetHeader(this.strm, this.header), e.dictionary && ("string" == typeof e.dictionary ? e.dictionary = Gt(e.dictionary) : "[object ArrayBuffer]" === Qe.call(e.dictionary) && (e.dictionary = new Uint8Array(e.dictionary)), e.raw && (a = qe.inflateSetDictionary(this.strm, e.dictionary), a !== ta))) throw new Error(j[a])
+ }
+ function oa(t, e) {
+ const a = new ra(e);
+ if (a.push(t), a.err) throw a.msg || j[a.err];
+ return a.result
+ }
+ ra.prototype.push = function(t, e) {
+ const a = this.strm, i = this.options.chunkSize, n = this.options.dictionary;
+ let s, r, o;
+ if (this.ended) return !1;
+ for (r = e === ~~e ? e : !0 === e ? $e : Ve, "[object ArrayBuffer]" === Qe.call(t) ? a.input = new Uint8Array(t) : a.input = t, a.next_in = 0, a.avail_in = a.input.length;;) {
+ for (0 === a.avail_out && (a.output = new Uint8Array(i), a.next_out = 0, a.avail_out = i), s = qe.inflate(a, r), s === aa && n && (s = qe.inflateSetDictionary(a, n), s === ta ? s = qe.inflate(a, r) : s === na && (s = aa)); a.avail_in > 0 && s === ea && a.state.wrap > 0 && 0 !== t[a.next_in];) qe.inflateReset(a), s = qe.inflate(a, r);
+ switch (s) {
+ case ia:
+ case na:
+ case aa:
+ case sa:
+ return this.onEnd(s), this.ended = !0, !1
+ }
+ if (o = a.avail_out, a.next_out && (0 === a.avail_out || s === ea)) if ("string" === this.options.to) {
+ let t = Wt(a.output, a.next_out), e = a.next_out - t, n = Xt(a.output, t);
+ a.next_out = e, a.avail_out = i - e, e && a.output.set(a.output.subarray(t, t + e), 0), this.onData(n)
+ } else this.onData(a.output.length === a.next_out ? a.output : a.output.subarray(0, a.next_out));
+ if (s !== ta || 0 !== o) {
+ if (s === ea) return s = qe.inflateEnd(this.strm), this.onEnd(s), this.ended = !0, !0;
+ if (0 === a.avail_in) break
+ }
+ }
+ return !0
+ }, ra.prototype.onData = function(t) {
+ this.chunks.push(t)
+ }, ra.prototype.onEnd = function(t) {
+ t === ta && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = Kt(this.chunks)), this.chunks = [], this.err = t, this.msg = this.strm.msg
+ };
+ var la = {
+ Inflate: ra,
+ inflate: oa,
+ inflateRaw: function(t, e) {
+ return (e = e || {})
+ .raw = !0, oa(t, e)
+ },
+ ungzip: oa,
+ constants: K
+ };
+ const {
+ Deflate: ha,
+ deflate: da,
+ deflateRaw: _a,
+ gzip: fa
+ } = le, {
+ Inflate: ca,
+ inflate: ua,
+ inflateRaw: wa,
+ ungzip: ma
+ } = la;
+ var ba = ha,
+ ga = da,
+ pa = _a,
+ ka = fa,
+ va = ca,
+ ya = ua,
+ xa = wa,
+ za = ma,
+ Aa = K,
+ Ea = {
+ Deflate: ba,
+ deflate: ga,
+ deflateRaw: pa,
+ gzip: ka,
+ Inflate: va,
+ inflate: ya,
+ inflateRaw: xa,
+ ungzip: za,
+ constants: Aa
+ };
+ t.Deflate = ba, t.Inflate = va, t.constants = Aa, t.
+ default = Ea, t.deflate = ga, t.deflateRaw = pa, t.gzip = ka, t.inflate = ya, t.inflateRaw = xa, t.ungzip = za, Object.defineProperty(t, "__esModule", {
+ value: !0
+ })
+}));
\ No newline at end of file
diff --git a/JS/uri.min.js b/JS/uri.min.js
new file mode 100644
index 0000000..66082b0
--- /dev/null
+++ b/JS/uri.min.js
@@ -0,0 +1 @@
+(function(global){var re={starts_with_slashes:/^\/+/,ends_with_slashes:/\/+$/,pluses:/\+/g,query_separator:/[&;]/,uri_parser:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*)(?::([^:@]*))?)?@)?(\[[0-9a-fA-F:.]+\]|[^:\/?#]*)(?::(\d+|(?=:)))?(:)?)((((?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/};if(!Array.prototype.forEach){Array.prototype.forEach=function(callback,thisArg){var T,k;if(this==null){throw new TypeError(' this is null or not defined');}var O=Object(this);var len=O.length>>>0;if(typeof callback!=="function"){throw new TypeError(callback+' is not a function');}if(arguments.length>1){T=thisArg}k=0;while(k0){s+='&'}if(param[1]===null){s+=param[0]}else{s+=param[0];s+='=';if(typeof param[1]!=='undefined'){s+=encodeURIComponent(param[1])}}}return s.length>0?'?'+s:s};Uri.prototype.getQueryParamValue=function(key){var param,i,l;for(i=0,l=this.queryPairs.length;i0){this.queryPairs.push([key,val])}return this};Uri.prototype.hasQueryParam=function(key){var i,len=this.queryPairs.length;for(i=0;i=0){this.deleteQueryParam(key,decode(oldVal)).addQueryParam(key,newVal,index)}}else{for(i=0;i 设置中心 > 环境变量 > {"bili_cookie":"XXXXXXX","vmid":"XXXXXX"} > 保存
+ * Cookie设置方法2: 手动替换Cookie
+ * 底下代码 headers的
+ * "Cookie":"$bili_cookie"
+ * 手动替换为
+ * "Cookie":"将获取的Cookie黏贴在这"
+ * 客户端长期Cookie设置教程:
+ * 抓包哔哩手机端搜索access_key,取任意链接里的access_key和appkey在drpy环境变量中增加同名的环境变量即可
+ * 此时哔哩.js这个解析可用于此源的解析线路用
+ */
+
+var rule = {
+ title:'哔哩影视[官]',
+ host:'https://api.bilibili.com',
+ url:'/fyclass-fypage&vmid=$vmid',
+ detailUrl:'/pgc/view/web/season?season_id=fyid',
+ filter_url:'fl={{fl}}',
+ vmid获取教程:'登录后访问https://api.bilibili.com/x/web-interface/nav,搜索mid就是,cookie需要 bili_jct,DedeUserID,SESSDATA参数',
+ searchUrl:'/x/web-interface/search/type?keyword=**&page=fypage&search_type=',
+ searchable:1,
+ filterable:1,
+ quickSearch:0,
+ headers:{
+ 'User-Agent':'PC_UA',
+ "Referer": "https://www.bilibili.com",
+ "Cookie":"http://127.0.0.1:9978/file/TVBox/bilibili.txt"
+ },
+ tab_order:['bilibili','B站'],//线路顺序,按里面的顺序优先,没写的依次排后面
+ timeout:5000,
+ class_name:'番剧&国创&电影&电视剧&纪录片&综艺&全部&追番&追剧&时间表',
+ class_url:'1&4&2&5&3&7&全部&追番&追剧&时间表',
+ filter:{"全部":[{"key":"tid","name":"分类","value":[{"n":"番剧","v":"1"},{"n":"国创","v":"4"},{"n":"电影","v":"2"},{"n":"电视剧","v":"5"},{"n":"记录片","v":"3"},{"n":"综艺","v":"7"}]},{"key":"order","name":"排序","value":[{"n":"播放数量","v":"2"},{"n":"更新时间","v":"0"},{"n":"最高评分","v":"4"},{"n":"弹幕数量","v":"1"},{"n":"追看人数","v":"3"},{"n":"开播时间","v":"5"},{"n":"上映时间","v":"6"}]},{"key":"season_status","name":"付费","value":[{"n":"全部","v":"-1"},{"n":"免费","v":"1"},{"n":"付费","v":"2%2C6"},{"n":"大会员","v":"4%2C6"}]}],"时间表":[{"key":"tid","name":"分类","value":[{"n":"番剧","v":"1"},{"n":"国创","v":"4"}]}]},
+ play_parse:true,
+ // play_json:[{re:'*', json:{jx:1, parse:0,header:JSON.stringify({"user-agent":"PC_UA"})}}],
+ pagecount:{"1":1,"2":1,"3":1,"4":1,"5":1,"7":1,"时间表":1},
+ lazy:'',
+ limit:5,
+ 推荐:'',
+ 推荐:'js:let d=[];function get_result(url){let videos=[];let html=request(url);let jo=JSON.parse(html);if(jo["code"]===0){let vodList=jo.result?jo.result.list:jo.data.list;vodList.forEach(function(vod){let aid=(vod["season_id"]+"").trim();let title=vod["title"].trim();let img=vod["cover"].trim();let remark=vod.new_ep?vod["new_ep"]["index_show"]:vod["index_show"];videos.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})})}return videos}function get_rank(tid,pg){return get_result("https://api.bilibili.com/pgc/web/rank/list?season_type="+tid+"&pagesize=20&page="+pg+"&day=3")}function get_rank2(tid,pg){return get_result("https://api.bilibili.com/pgc/season/rank/web/list?season_type="+tid+"&pagesize=20&page="+pg+"&day=3")}function home_video(){let videos=get_rank(1).slice(0,5);[4,2,5,3,7].forEach(function(i){videos=videos.concat(get_rank2(i).slice(0,5))});return videos}VODS=home_video();',
+ 一级:'',
+ 一级:'js:let d=[];let vmid=input.split("vmid=")[1].split("&")[0];function get_result(url){let videos=[];let html=request(url);let jo=JSON.parse(html);if(jo["code"]===0){let vodList=jo.result?jo.result.list:jo.data.list;vodList.forEach(function(vod){let aid=(vod["season_id"]+"").trim();let title=vod["title"].trim();let img=vod["cover"].trim();let remark=vod.new_ep?vod["new_ep"]["index_show"]:vod["index_show"];videos.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})})}return videos}function get_rank(tid,pg){return get_result("https://api.bilibili.com/pgc/web/rank/list?season_type="+tid+"&pagesize=20&page="+pg+"&day=3")}function get_rank2(tid,pg){return get_result("https://api.bilibili.com/pgc/season/rank/web/list?season_type="+tid+"&pagesize=20&page="+pg+"&day=3")}function get_zhui(pg,mode){let url="https://api.bilibili.com/x/space/bangumi/follow/list?type="+mode+"&follow_status=0&pn="+pg+"&ps=10&vmid="+vmid;return get_result(url)}function get_all(tid,pg,order,season_status){let url="https://api.bilibili.com/pgc/season/index/result?order="+order+"&pagesize=20&type=1&season_type="+tid+"&page="+pg+"&season_status="+season_status;return get_result(url)}function get_timeline(tid,pg){let videos=[];let url="https://api.bilibili.com/pgc/web/timeline/v2?season_type="+tid+"&day_before=2&day_after=4";let html=request(url);let jo=JSON.parse(html);if(jo["code"]===0){let videos1=[];let vodList=jo.result.latest;vodList.forEach(function(vod){let aid=(vod["season_id"]+"").trim();let title=vod["title"].trim();let img=vod["cover"].trim();let remark=vod["pub_index"]+" "+vod["follows"].replace("系列","");videos1.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})});let videos2=[];for(let i=0;i<7;i++){let vodList=jo["result"]["timeline"][i]["episodes"];vodList.forEach(function(vod){if(vod["published"]+""==="0"){let aid=(vod["season_id"]+"").trim();let title=vod["title"].trim();let img=vod["cover"].trim();let date=vod["pub_ts"];let remark=date+" "+vod["pub_index"];videos2.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})}})}videos=videos2.concat(videos1)}return videos}function cate_filter(d,cookie){if(MY_CATE==="1"){return get_rank(MY_CATE,MY_PAGE)}else if(["2","3","4","5","7"].includes(MY_CATE)){return get_rank2(MY_CATE,MY_PAGE)}else if(MY_CATE==="全部"){let tid=MY_FL.tid||"1";let order=MY_FL.order||"2";let season_status=MY_FL.season_status||"-1";return get_all(tid,MY_PAGE,order,season_status)}else if(MY_CATE==="追番"){return get_zhui(MY_PAGE,1)}else if(MY_CATE==="追剧"){return get_zhui(MY_PAGE,2)}else if(MY_CATE==="时间表"){let tid=MY_FL.tid||"1";return get_timeline(tid,MY_PAGE)}else{return[]}}VODS=cate_filter();',
+ 二级:{
+ is_json:true,
+ title:".result.title;.result.share_sub_title",
+ img:".result.cover",
+ desc:".result.new_ep.desc;.result.publish.pub_time;.result.subtitle",
+ content:".result.evaluate",
+ tabs:"js:pdfa=jsp.pdfa;TABS=['B站']",
+ lists:".result.episodes",
+ list_text:'title',
+ list_url:'cid',
+ },
+ 二级:'',
+ 二级:'js:function zh(num){let p="";if(Number(num)>1e8){p=(num/1e8).toFixed(2)+"亿"}else if(Number(num)>1e4){p=(num/1e4).toFixed(2)+"万"}else{p=num}return p}let html=request(input);let jo=JSON.parse(html).result;let id=jo["season_id"];let title=jo["title"];let pic=jo["cover"];let areas=jo["areas"][0]["name"];let typeName=jo["share_sub_title"];let date=jo["publish"]["pub_time"].substr(0,4);let dec=jo["evaluate"];let remark=jo["new_ep"]["desc"];let stat=jo["stat"];let status="弹幕: "+zh(stat["danmakus"])+" 点赞: "+zh(stat["likes"])+" 投币: "+zh(stat["coins"])+" 追番追剧: "+zh(stat["favorites"]);let score=jo.hasOwnProperty("rating")?"评分: "+jo["rating"]["score"]+" "+jo["subtitle"]:"暂无评分"+" "+jo["subtitle"];let vod={vod_id:id,vod_name:title,vod_pic:pic,type_name:typeName,vod_year:date,vod_area:areas,vod_remarks:remark,vod_actor:status,vod_director:score,vod_content:dec};let ja=jo["episodes"];let playurls1=[];let playurls2=[];ja.forEach(function(tmpJo){let eid=tmpJo["id"];let cid=tmpJo["cid"];let link=tmpJo["link"];let part=tmpJo["title"].replace("#","-")+" "+tmpJo["long_title"];playurls1.push(part+"$"+eid+"_"+cid);playurls2.push(part+"$"+link)});let playUrl=playurls1.join("#")+"$$$"+playurls2.join("#");vod["vod_play_from"]="B站$$$bilibili";vod["vod_play_url"]=playUrl;VOD=vod;',
+ 搜索:'',
+ 搜索:'js:let url1=input+"media_bangumi";let url2=input+"media_ft";let html=request(url1);let msg=JSON.parse(html).message;if(msg!=="0"){VODS=[{vod_name:KEY+"➢"+msg,vod_id:"no_data",vod_remarks:"别点,缺少bili_cookie",vod_pic:"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/404.jpg"}]}else{let jo1=JSON.parse(html).data;html=request(url2);let jo2=JSON.parse(html).data;let videos=[];let vodList=[];if(jo1["numResults"]===0){vodList=jo2["result"]}else if(jo2["numResults"]===0){vodList=jo1["result"]}else{vodList=jo1["result"].concat(jo2["result"])}vodList.forEach(function(vod){let aid=(vod["season_id"]+"").trim();let title=KEY+"➢"+vod["title"].trim().replace(\'\',"").replace("","");let img=vod["cover"].trim();let remark=vod["index_show"];videos.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})});VODS=videos}',
+ lazy:'',
+ lazy:`js:
+ if (/^http/.test(input)) {
+ input = {
+ jx: 1,
+ url: input,
+ parse: 0,
+ header: JSON.stringify({
+ "user-agent": "Mozilla/5.0"
+ })
+ }
+ } else {
+ let ids = input.split("_");
+ let dan = 'https://api.bilibili.com/x/v1/dm/list.so?oid=' + ids[1];
+ let result = {};
+ let url = "https://api.bilibili.com/pgc/player/web/playurl?qn=116&ep_id=" + ids[0] + "&cid=" + ids[1];
+ let html = request(url);
+ let jRoot = JSON.parse(html);
+ if (jRoot["message"] !== "success") {
+ print("需要大会员权限才能观看");
+ input = ""
+ } else {
+ let jo = jRoot["result"];
+ let ja = jo["durl"];
+ let maxSize = -1;
+ let position = -1;
+ ja.forEach(function(tmpJo, i) {
+ if (maxSize < Number(tmpJo["size"])) {
+ maxSize = Number(tmpJo["size"]);
+ position = i
+ }
+ });
+ let url = "";
+ if (ja.length > 0) {
+ if (position === -1) {
+ position = 0
+ }
+ url = ja[position]["url"]
+ }
+ result["parse"] = 0;
+ result["playUrl"] = "";
+ result["url"] = url;
+ result["header"] = {
+ Referer: "https://www.bilibili.com",
+ "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36"
+ };
+ result["contentType"] = "video/x-flv";
+ result["danmaku"] = dan;
+ input = result
+ }
+ }
+ `,
+}
\ No newline at end of file
diff --git a/JS/爱奇艺.js b/JS/爱奇艺.js
new file mode 100644
index 0000000..163f005
--- /dev/null
+++ b/JS/爱奇艺.js
@@ -0,0 +1,39 @@
+var rule = {
+ title:'奇珍异兽[官]',
+ host:'https://www.iqiyi.com',
+ homeUrl:'',
+ // detailUrl:'https://pcw-api.iqiyi.com/albums/album/avlistinfo?aid=fyid&size=2000&page=1',
+ detailUrl:'https://pcw-api.iqiyi.com/video/video/videoinfowithuser/fyid?agent_type=1&authcookie=&subkey=fyid&subscribe=1',
+ searchUrl:'https://search.video.iqiyi.com/o?if=html5&key=**&pageNum=fypage&pos=1&pageSize=24&site=iqiyi',
+ searchable:2,
+ multi:1,
+ filterable:1,
+ filter:{'1': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '华语', 'v': 1}, {'n': '香港地区', 'v': 28997}, {'n': '美国', 'v': 2}, {'n': '欧洲', 'v': 3}, {'n': '韩国', 'v': 4}, {'n': '日本', 'v': 308}, {'n': '泰国', 'v': 1115}, {'n': '印度', 'v': 28999}, {'n': '其它', 'v': 5}]}, {'key': '18001', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '喜剧', 'v': 8}, {'n': '爱情', 'v': 6}, {'n': '动作', 'v': 11}, {'n': '枪战', 'v': 131}, {'n': '犯罪', 'v': 291}, {'n': '惊悚', 'v': 128}, {'n': '恐怖', 'v': 10}, {'n': '悬疑', 'v': 289}, {'n': '动画', 'v': 12}, {'n': '家庭', 'v': 27356}, {'n': '奇幻', 'v': 1284}, {'n': '魔幻', 'v': 129}, {'n': '科幻', 'v': 9}, {'n': '战争', 'v': 7}, {'n': '青春', 'v': 130}]}, {'key': '27396', 'name': '规格', 'value': [{'n': '全部', 'v': ''}, {'n': '巨制', 'v': 27397}, {'n': '院线', 'v': 27815}, {'n': '独播', 'v': 30149}, {'n': '网络电影', 'v': 27401}]}], '2': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '内地', 'v': 15}, {'n': '港剧', 'v': 16}, {'n': '韩剧', 'v': 17}, {'n': '美剧', 'v': 18}, {'n': '日剧', 'v': 309}, {'n': '泰剧', 'v': 1114}, {'n': '台湾地区', 'v': 1117}, {'n': '英剧', 'v': 28916}, {'n': '其它', 'v': 19}]}, {'key': '18003', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '自制', 'v': 11992}, {'n': '古装', 'v': 24}, {'n': '言情', 'v': 20}, {'n': '武侠', 'v': 23}, {'n': '偶像', 'v': 30}, {'n': '家庭', 'v': 1654}, {'n': '青春', 'v': 1653}, {'n': '都市', 'v': 24064}, {'n': '喜剧', 'v': 135}, {'n': '战争', 'v': 27916}, {'n': '军旅', 'v': 1655}, {'n': '谍战', 'v': 290}, {'n': '悬疑', 'v': 32}, {'n': '罪案', 'v': 149}, {'n': '穿越', 'v': 148}, {'n': '宫廷', 'v': 139}, {'n': '历史', 'v': 21}, {'n': '神话', 'v': 145}, {'n': '科幻', 'v': 34}, {'n': '年代', 'v': 27}, {'n': '农村', 'v': 29}, {'n': '商战', 'v': 140}, {'n': '剧情', 'v': 24063}, {'n': '奇幻', 'v': 27881}, {'n': '网剧', 'v': 24065}, {'n': '竖短片', 'v': 32839}]}], '3': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '国内', 'v': 20323}, {'n': '国外', 'v': 20324}]}, {'key': '18004', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '人文', 'v': 70}, {'n': '美食', 'v': 33908}, {'n': '医疗', 'v': 33924}, {'n': '自然', 'v': 33933}, {'n': '萌宠', 'v': 33945}, {'n': '财经', 'v': 33953}, {'n': '罪案', 'v': 33960}, {'n': '竞技', 'v': 33967}, {'n': '灾难', 'v': 33974}, {'n': '军事', 'v': 72}, {'n': '历史', 'v': 74}, {'n': '探险', 'v': 73}, {'n': '社会', 'v': 71}, {'n': '科技', 'v': 28119}, {'n': '旅游', 'v': 310}]}, {'key': '28467', 'name': '出品方', 'value': [{'n': '全部', 'v': ''}, {'n': 'BBC', 'v': 28468}, {'n': '美国历史频道', 'v': 28470}, {'n': '探索频道', 'v': 28471}, {'n': '央视记录', 'v': 28472}, {'n': '北京纪实频道', 'v': 28473}, {'n': '上海纪实频道', 'v': 28474}, {'n': '朗思文化', 'v': 28476}, {'n': 'CNEX', 'v': 28477}, {'n': '五星传奇', 'v': 28478}, {'n': 'IMG', 'v': 28479}, {'n': 'NHK', 'v': 28480}, {'n': '爱奇艺出品', 'v': 31283}, {'n': 'Netflix', 'v': 31286}]}, {'key': '29076', 'name': '片种', 'value': [{'n': '全部', 'v': ''}, {'n': '纪录电影', 'v': 29077}, {'n': '系列纪录片', 'v': 29078}, {'n': '网络纪录片', 'v': 29082}, {'n': '纪实栏目', 'v': 29083}]}, {'key': '31294', 'name': '时长', 'value': [{'n': '全部', 'v': ''}, {'n': '微纪录', 'v': 29079}, {'n': '长纪录', 'v': 29080}, {'n': '短纪录', 'v': 29081}]}], '4': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '中国大陆', 'v': 37}, {'n': '日本', 'v': 38}, {'n': '韩国', 'v': 1106}, {'n': '欧美', 'v': 30218}, {'n': '其它', 'v': 40}]}, {'key': '30219', 'name': '版本', 'value': [{'n': '全部', 'v': ''}, {'n': '动画', 'v': 30220}, {'n': '特摄', 'v': 30223}, {'n': '布袋戏', 'v': 30224}, {'n': '特别篇', 'v': 32782}, {'n': '动态漫画', 'v': 32783}, {'n': '动画电影', 'v': 32784}, {'n': '竖版视频', 'v': 32785}, {'n': '轻动画', 'v': 33482}, {'n': '短剧', 'v': 33483}]}, {'key': '30225', 'name': '风格', 'value': [{'n': '全部', 'v': ''}, {'n': '搞笑', 'v': 30230}, {'n': '热血', 'v': 30232}, {'n': '催泪', 'v': 30233}, {'n': '治愈', 'v': 30234}, {'n': '励志', 'v': 30237}, {'n': '机战', 'v': 30241}, {'n': '恋爱', 'v': 30243}, {'n': '科幻', 'v': 30245}, {'n': '奇幻', 'v': 30247}, {'n': '推理', 'v': 30248}, {'n': '校园', 'v': 30249}, {'n': '日常', 'v': 30252}, {'n': '历史', 'v': 30254}, {'n': '美食', 'v': 30255}, {'n': '职场', 'v': 30256}, {'n': '偶像', 'v': 30258}, {'n': '泡面', 'v': 30265}, {'n': '冒险', 'v': 30267}, {'n': '竞技', 'v': 30268}, {'n': '合家欢', 'v': 30270}, {'n': '武侠', 'v': 32792}, {'n': '玄幻', 'v': 32793}]}, {'key': '32795', 'name': '新类型', 'value': [{'n': '全部', 'v': ''}, {'n': '轻小说改编', 'v': 32796}, {'n': '漫画改编', 'v': 32797}, {'n': '游戏改编', 'v': 32798}, {'n': '原创', 'v': 32799}]}], '6': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '内地', 'v': 151}, {'n': '港台', 'v': 152}, {'n': '韩国', 'v': 33306}, {'n': '欧美', 'v': 154}, {'n': '其它', 'v': 1113}]}, {'key': '18014', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '播报', 'v': 155}, {'n': '访谈', 'v': 156}, {'n': '游戏', 'v': 158}, {'n': '晚会', 'v': 292}, {'n': '曲艺', 'v': 293}, {'n': '脱口秀', 'v': 2118}, {'n': '真人秀', 'v': 2224}, {'n': '竞技', 'v': 30278}, {'n': '爱奇艺出品', 'v': 30279}, {'n': '竞演', 'v': 33860}]}, {'key': '33162', 'name': '题材', 'value': [{'n': '全部', 'v': ''}, {'n': '音乐', 'v': 33163}, {'n': '舞蹈', 'v': 33172}, {'n': '文化', 'v': 33173}, {'n': '美食', 'v': 33182}, {'n': '伦理', 'v': 33184}, {'n': '相亲', 'v': 33193}, {'n': '纪实', 'v': 33195}, {'n': '生活', 'v': 33196}, {'n': '亲子', 'v': 33197}, {'n': '少儿', 'v': 33198}, {'n': '财经', 'v': 33199}, {'n': '健康', 'v': 33200}, {'n': '时尚', 'v': 33203}, {'n': '旅游', 'v': 33205}, {'n': '教育', 'v': 33206}, {'n': '其它', 'v': 33220}, {'n': '爱情', 'v': 33316}, {'n': '搞笑', 'v': 33317}, {'n': '益智', 'v': 33318}, {'n': '职场', 'v': 33319}, {'n': '语言', 'v': 33530}, {'n': '辩论', 'v': 33531}, {'n': '演讲', 'v': 33843}]}], '5': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '内地', 'v': 221}, {'n': '港台', 'v': 220}, {'n': '欧美', 'v': 219}, {'n': '日韩', 'v': 218}, {'n': '拉美', 'v': 217}, {'n': '亚洲地区', 'v': 216}, {'n': '非洲', 'v': 215}]}, {'key': '18009', 'name': '语种', 'value': [{'n': '全部', 'v': ''}, {'n': '普通话', 'v': 91}, {'n': '粤语', 'v': 92}, {'n': '闽南语', 'v': 93}, {'n': '英语', 'v': 94}, {'n': '日语', 'v': 95}, {'n': '韩语', 'v': 96}, {'n': '其它', 'v': 97}]}, {'key': '23554', 'name': '音乐类型', 'value': [{'n': '全部', 'v': ''}, {'n': '单曲MV', 'v': 23556}, {'n': '单曲现场', 'v': 23557}, {'n': '演唱会', 'v': 23558}, {'n': '新闻', 'v': 23559}, {'n': '访谈', 'v': 23560}, {'n': '音乐记录', 'v': 23561}, {'n': '音乐周边', 'v': 23562}, {'n': '音乐节目', 'v': 23563}, {'n': '影视原声', 'v': 23564}, {'n': '音乐短片', 'v': 23565}, {'n': '其他', 'v': 23566}]}], '16': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': '18061', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '喜剧', 'v': 1296}, {'n': '爱情', 'v': 1297}, {'n': '动作', 'v': 1298}, {'n': '奇幻', 'v': 1299}, {'n': '惊悚', 'v': 1300}, {'n': '悬疑', 'v': 1301}, {'n': '青春', 'v': 1302}]}]},
+ // url:'https://pcw-api.iqiyi.com/search/recommend/list?channel_id=fyclass&data_type=1&is_purchase=&mode=24&page_id=fypage&ret_num=48&three_category_id=',
+ url:'https://pcw-api.iqiyi.com/search/recommend/list?channel_id=fyclass&data_type=1&page_id=fypage&ret_num=48',
+ filter_url:'is_purchase={{fl.is_purchase}}&mode={{fl.mode}}&three_category_id={{fl.three_category_id}}&market_release_date_level={{fl.year}}',
+ // url:'https://pcw-api.iqiyi.com/search/video/videolists?channel_id=fyclass&pageNum=fypage&pageSize=24&data_type=1&site=iqiyi',
+ headers:{
+ 'User-Agent':'MOBILE_UA'
+ },
+ timeout:5000,
+ class_name:'电影&电视剧&纪录片&动漫&综艺&音乐&网络电影',
+ class_url:'1&2&3&4&6&5&16',
+ limit:20,
+ // play_parse:true,
+ // 手动调用解析请求json的url,此lazy不方便
+ // lazy:'js:input="https://cache.json.icu/home/api?type=ys&uid=292796&key=fnoryABDEFJNPQV269&url="+input.split("?")[0];log(input);let html=JSON.parse(request(input));log(html);input=html.url||input',
+ // 推荐:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float',
+ // 一级:'json:.data.list;.name;.imageUrl;.latestOrder;.albumId',
+ 推荐:'',
+ // 推荐:'js:let d=[];fetch_params.headers["user-agent"]=PC_UA;pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd;let html=fetch(HOST,fetch_params);let lists=pdfa(html,".qy-mod-li");lists.forEach(function(it){try{let title=pdfh(it,"p.sub&&title");let desc=pdfh(it,".qy-mod-label&&Text");let pic_url=pd(it,"img&&src");d.push({title:title,desc:desc,img:pic_url})}catch(e){}});res=setResult(d);',
+ 一级:'js:let d=[];if(MY_CATE==="16"){input=input.replace("channel_id=16","channel_id=1").split("three_category_id")[0];input+="three_category_id=27401"}else if(MY_CATE==="5"){input=input.replace("data_type=1","data_type=2")}let html=request(input);let json=JSON.parse(html);if(json.code==="A00003"){fetch_params.headers["user-agent"]=PC_UA;json=JSON.parse(fetch(input,fetch_params))}json.data.list.forEach(function(data){if(data.channelId===1){desc=data.hasOwnProperty("score")?data.score+"分\\t":""}else if(data.channelId===2||data.channelId===4){if(data.latestOrder===data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"集全"}else{if(data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"/"+data.videoCount+"集"}else{desc="更新至 "+data.latestOrder+"集"}}}else if(data.channelId===6){desc=data.period+"期"}else if(data.channelId===5){desc=data.focus}else{if(data.latestOrder){desc="更新至 第"+data.latestOrder+"期"}else if(data.period){desc=data.period}else{desc=data.focus}}url=MY_CATE+"$"+data.albumId;d.push({url:url,title:data.name,desc:desc,pic_url:data.imageUrl.replace(".jpg","_390_520.jpg?caplist=jpg,webp")})});setResult(d);',
+ // 一级:'js:let d=[];if(MY_CATE==="16"){input=input.replace("channel_id=16","channel_id=1").split("three_category_id")[0];input+="three_category_id=27401"}else if(MY_CATE==="5"){input=input.replace("data_type=1","data_type=2")}let html=fetch(input,fetch_params);let json=JSON.parse(html);if(json.code==="A00003"){fetch_params.headers["user-agent"]=PC_UA;json=JSON.parse(fetch(input,fetch_params))}json.data.list.forEach(function(data){if(data.channelId===1){desc=data.hasOwnProperty("score")?data.score+"分\\t":""}else if(data.channelId===2||data.channelId===4){if(data.latestOrder===data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"集全"}else{if(data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"/"+data.videoCount+"集"}else{desc="更新至 "+data.latestOrder+"集"}}}else if(data.channelId===6){desc=data.period+"期"}else if(data.channelId===5){desc=data.focus}else{if(data.latestOrder){desc="更新至 第"+data.latestOrder+"期"}else if(data.period){desc=data.period}else{desc=data.focus}}url=MY_CATE+"$"+data.albumId;d.push({url:url,title:data.name,desc:desc,pic_url:data.imageUrl.replace(".jpg","_390_520.jpg?caplist=jpg,webp")})});setResult(d);',
+ // 一级:'json:.data.list;.name;.imageUrl;.playUrl;.latestOrder',
+ // 二级:{is_json:1,"title":"data.title;data.moviecategory[0]+data.moviecategory[1]","img":"data.cdncover","desc":"data.area[0];data.director[0]","content":"data.description","tabs":"data.playlink_sites;data.playlinksdetail.#idv.quality","lists":"data.playlinksdetail.#idv.default_url"},
+ // 二级:{is_json:1,"title":"data.name+data.subtitle;data.latestOrder","img":"data.imageUrl","desc":"data.categories;data.areas","content":"data.description","tabs":"data.name","lists":"data.playlinksdetail.#idv.default_url"},
+ 二级:'',
+ 二级:'js:let d=[];let html=request(input);let json=JSON.parse(html).data;VOD={vod_id:"",vod_url:input,vod_name:"",type_name:"",vod_actor:"",vod_year:"",vod_director:"",vod_area:"",vod_content:"",vod_remarks:"",vod_pic:""};VOD.vod_name=json.name;try{if(json.latestOrder){VOD.vod_remarks="类型: "+(json.categories[0].name||"")+"\\t"+(json.categories[1].name||"")+"\\t"+(json.categories[2].name||"")+"\\t"+"评分:"+(json.score||"")+"\\n更新至:第"+json.latestOrder+"集(期)/共"+json.videoCount+"集(期)"}else{VOD.vod_remarks="类型: "+(json.categories[0].name||"")+"\\t"+(json.categories[1].name||"")+"\\t"+(json.categories[2].name||"")+"\\t"+"评分:"+(json.score||"")+json.period}}catch(e){VOD.vod_remarks=json.subtitle}VOD.vod_area=(json.focus||"")+"\\n资费:"+(json.payMark===1?"VIP":"免费")+"\\n地区:"+(json.areas||"");let vsize="579_772";try{vsize=json.imageSize[12]}catch(e){}VOD.vod_pic=json.imageUrl.replace(".jpg","_"+vsize+".jpg?caplist=jpg,webp");VOD.type_name=json.categories.map(function(it){return it.name}).join(",");if(json.people.main_charactor){let vod_actors=[];json.people.main_charactor.forEach(function(it){vod_actors.push(it.name)});VOD.vod_actor=vod_actors.join(",")}VOD.vod_content=json.description;let playlists=[];if(json.channelId===1||json.channelId===5){playlists=[{playUrl:json.playUrl,imageUrl:json.imageUrl,shortTitle:json.shortTitle,focus:json.focus,period:json.period}]}else{if(json.channelId===6){let qs=json.period.split("-")[0];let listUrl="https://pcw-api.iqiyi.com/album/source/svlistinfo?cid=6&sourceid="+json.albumId+"&timelist="+qs;let playData=JSON.parse(request(listUrl)).data[qs];playData.forEach(function(it){playlists.push({playUrl:it.playUrl,imageUrl:it.imageUrl,shortTitle:it.shortTitle,focus:it.focus,period:it.period})})}else{let listUrl="https://pcw-api.iqiyi.com/albums/album/avlistinfo?aid="+json.albumId+"&size=200&page=1";let data=JSON.parse(request(listUrl)).data;let total=data.total;playlists=data.epsodelist;if(total>200){for(let i=2;i200){for(let i=2;i