From ce5fbe15844c73fc3e4e1816d51e3f9c8c76280f Mon Sep 17 00:00:00 2001
From: Liu <18409283+ls125781003@users.noreply.github.com>
Date: Sun, 28 Sep 2025 17:00:08 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BA=BF=E8=B7=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
潇洒线路:v0928(15)
删除欧歌线路
---
dx(无github代理,使用需海外网络).json | 4 -
dx.json | 4 -
dx1.json | 4 -
dx2.json | 4 -
dx3.json | 4 -
dx4.json | 4 -
欧歌/api.json | 2019 --------
欧歌/api/drpy2.min.js | 3108 ------------
欧歌/api/jinja.js | 607 ---
欧歌/api/jsencrypt.js | 360 --
欧歌/api/json5.js | 1809 -------
欧歌/api/node-rsa.js | 5858 ----------------------
欧歌/api/pako.min.js | 1439 ------
欧歌/api/模板.js | 429 --
欧歌/jars/csp_woog.jar | Bin 262501 -> 0 bytes
欧歌/jars/养生堂.jar | Bin 430574 -> 0 bytes
欧歌/jars/柠檬.jar | Bin 385294 -> 0 bytes
欧歌/jars/豆瓣1.jar | Bin 210610 -> 0 bytes
欧歌/js/88看球.js | 61 -
欧歌/json/aliShare.json | 11 -
欧歌/json/lb.json | 1660 -------
欧歌/json/mogg.json | 1455 ------
欧歌/json/og.json | 1460 ------
欧歌/json/quarkShare.json | 11 -
欧歌/json/ucShare.json | 11 -
欧歌/json/wogg.json | 1460 ------
欧歌/json/xm.json | 1457 ------
欧歌/json/yyds.json | 1674 -------
欧歌/json/八号影视.json | 81 -
欧歌/json/养生堂.json | 17 -
欧歌/json/农民影视.json | 10 -
欧歌/json/厂长资源.json | 33 -
欧歌/json/韩剧看看.json | 47 -
欧歌/lives/tv.txt | 6683 --------------------------
欧歌/spider.jar | Bin 1667364 -> 0 bytes
潇洒/api.json | 123 +-
潇洒/spider.jar | Bin 1843476 -> 1843476 bytes
37 files changed, 16 insertions(+), 31891 deletions(-)
delete mode 100644 欧歌/api.json
delete mode 100644 欧歌/api/drpy2.min.js
delete mode 100644 欧歌/api/jinja.js
delete mode 100644 欧歌/api/jsencrypt.js
delete mode 100644 欧歌/api/json5.js
delete mode 100644 欧歌/api/node-rsa.js
delete mode 100644 欧歌/api/pako.min.js
delete mode 100644 欧歌/api/模板.js
delete mode 100644 欧歌/jars/csp_woog.jar
delete mode 100644 欧歌/jars/养生堂.jar
delete mode 100644 欧歌/jars/柠檬.jar
delete mode 100644 欧歌/jars/豆瓣1.jar
delete mode 100644 欧歌/js/88看球.js
delete mode 100644 欧歌/json/aliShare.json
delete mode 100644 欧歌/json/lb.json
delete mode 100644 欧歌/json/mogg.json
delete mode 100644 欧歌/json/og.json
delete mode 100644 欧歌/json/quarkShare.json
delete mode 100644 欧歌/json/ucShare.json
delete mode 100644 欧歌/json/wogg.json
delete mode 100644 欧歌/json/xm.json
delete mode 100644 欧歌/json/yyds.json
delete mode 100644 欧歌/json/八号影视.json
delete mode 100644 欧歌/json/养生堂.json
delete mode 100644 欧歌/json/农民影视.json
delete mode 100644 欧歌/json/厂长资源.json
delete mode 100644 欧歌/json/韩剧看看.json
delete mode 100644 欧歌/lives/tv.txt
delete mode 100644 欧歌/spider.jar
diff --git a/dx(无github代理,使用需海外网络).json b/dx(无github代理,使用需海外网络).json
index 23a561c..00418e8 100644
--- a/dx(无github代理,使用需海外网络).json
+++ b/dx(无github代理,使用需海外网络).json
@@ -28,10 +28,6 @@
"url": "https://raw.githubusercontent.com/ls125781003/tvboxtg/main/摸鱼儿/api.json",
"name": "摸鱼儿"
},
- {
- "url": "https://raw.githubusercontent.com/ls125781003/tvboxtg/main/欧歌/api.json",
- "name": "欧歌"
- },
{
"url": "https://raw.githubusercontent.com/ls125781003/tvboxtg/main/王二小/api.json",
"name": "王二小"
diff --git a/dx.json b/dx.json
index f8ddbaf..010d915 100644
--- a/dx.json
+++ b/dx.json
@@ -28,10 +28,6 @@
"url": "https://ghfast.top/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/摸鱼儿/api.json",
"name": "摸鱼儿"
},
- {
- "url": "https://ghfast.top/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/欧歌/api.json",
- "name": "欧歌"
- },
{
"url": "https://ghfast.top/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/王二小/api.json",
"name": "王二小"
diff --git a/dx1.json b/dx1.json
index 4cfb610..132b8d2 100644
--- a/dx1.json
+++ b/dx1.json
@@ -28,10 +28,6 @@
"url": "https://hub.gitmirror.com/raw.githubusercontent.com/ls125781003/tvboxtg/main/摸鱼儿/api.json",
"name": "摸鱼儿"
},
- {
- "url": "https://hub.gitmirror.com/raw.githubusercontent.com/ls125781003/tvboxtg/main/欧歌/api.json",
- "name": "欧歌"
- },
{
"url": "https://hub.gitmirror.com/raw.githubusercontent.com/ls125781003/tvboxtg/main/王二小/api.json",
"name": "王二小"
diff --git a/dx2.json b/dx2.json
index 5ed6a52..0e1e653 100644
--- a/dx2.json
+++ b/dx2.json
@@ -28,10 +28,6 @@
"url": "https://ghproxy.cxkpro.top/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/摸鱼儿/api.json",
"name": "摸鱼儿"
},
- {
- "url": "https://ghproxy.cxkpro.top/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/欧歌/api.json",
- "name": "欧歌"
- },
{
"url": "https://ghproxy.cxkpro.top/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/王二小/api.json",
"name": "王二小"
diff --git a/dx3.json b/dx3.json
index bcc2ebf..a5ea75b 100644
--- a/dx3.json
+++ b/dx3.json
@@ -28,10 +28,6 @@
"url": "https://hk.gh-proxy.com/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/摸鱼儿/api.json",
"name": "摸鱼儿"
},
- {
- "url": "https://hk.gh-proxy.com/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/欧歌/api.json",
- "name": "欧歌"
- },
{
"url": "https://hk.gh-proxy.com/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/王二小/api.json",
"name": "王二小"
diff --git a/dx4.json b/dx4.json
index d124f87..d77c0de 100644
--- a/dx4.json
+++ b/dx4.json
@@ -28,10 +28,6 @@
"url": "https://github.boki.moe/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/摸鱼儿/api.json",
"name": "摸鱼儿"
},
- {
- "url": "https://github.boki.moe/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/欧歌/api.json",
- "name": "欧歌"
- },
{
"url": "https://github.boki.moe/https://raw.githubusercontent.com/ls125781003/tvboxtg/main/王二小/api.json",
"name": "王二小"
diff --git a/欧歌/api.json b/欧歌/api.json
deleted file mode 100644
index 78d92fb..0000000
--- a/欧歌/api.json
+++ /dev/null
@@ -1,2019 +0,0 @@
-{
- "wallpaper": "https://tv.nxog.top/m/t/",
- "logo": "https://alicliimg.clewm.net/342/790/68790342/17369906896774bd3d1d8ba1877dea5d967a137aa23d91736990672.gif",
- "spider": "./spider.jar",
- "lives": [
- {
- "name": "tv",
- "type": 0,
- "url": "./lives/tv.txt",
- "epg": "http://cdn.1678520.xyz/epg/?ch={name}&date={date}"
- }
- ],
- "sites": [
- {
- "key": "豆瓣2",
- "name": "📢tv",
- "type": 3,
- "api": "csp_Douban",
- "searchable": 0
- },
- {
- "key": "豆瓣1",
- "name": "📢公告❤更新:9/24",
- "type": 3,
- "api": "csp_Notice",
- "searchable": 0,
- "changeable": 0,
- "jar": "./jars/豆瓣1.jar",
- "ext": "https://tv.nxog.top/m/公告.php?b=tv"
- },
- {
- "key": "config",
- "name": "🐲配置|中心",
- "type": 3,
- "jar": "./jars/config.jar",
- "api": "csp_Config",
- "searchable": 0
- },
- {
- "key": "配置中心",
- "name": "❤配置|中心",
- "type": 3,
- "api": "csp_Config",
- "searchable": 0,
- "changeable": 0,
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "csp_woog",
- "name": "🐲玩欧|4K弹幕",
- "type": 3,
- "changeable": "0",
- "api": "csp_Duopan",
- "filterable": 1,
- "jar": "./jars/csp_woog.jar",
- "ext": {
- "site_urls": [
- "https://woog.nxog.fun",
- "https://woog.nxog.eu.org"
- ],
- "url_key": "woog",
- "threadinfo": {
- "chunksize": 272,
- "threads": 16
- }
- }
- },
- {
- "key": "欧哥",
- "name": "🐲欧歌|4K弹幕",
- "type": 3,
- "changeable": "0",
- "api": "csp_Duopan",
- "filterable": 1,
- "jar": "./jars/config.jar",
- "ext": {
- "site_urls": [
- "https://ogkk.nxog.fun",
- "https://ogkk.nxog.eu.org"
- ],
- "url_key": "欧哥",
- "threadinfo": {
- "chunksize": 276,
- "threads": 16
- }
- }
- },
- {
- "key": "夸快",
- "name": "❤夸快|4K弹幕",
- "type": 3,
- "api": "csp_PanWebShare",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "changeable": 1,
- "ext": "./json/og.json"
- },
- {
- "key": "荐片",
- "name": "💡荐片|影视",
- "api": "csp_Jianpian",
- "type": 3,
- "ext": "https://api.ztcgi.com"
- },
- {
- "key": "移动",
- "name": "💡移动|影视",
- "type": 3,
- "api": "csp_YDjisu",
- "searchable": 1,
- "quickSearch": 1
- },
- {
- "key": "热播影视",
- "name": "💡热播|影视",
- "type": 3,
- "api": "csp_AppRJ",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 0,
- "ext": {
- "url": "http://v.rbotv.cn"
- }
- },
- {
- "key": "浪酷影视",
- "name": "💡浪酷|影视",
- "type": 3,
- "api": "csp_AppRJ",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 0,
- "ext": {
- "url": "http://v.lkuys.cn"
- }
- },
- {
- "key": "瓜子影视",
- "name": "💡瓜子|影视",
- "type": 3,
- "api": "csp_Gz360",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "低端",
- "name": "💡低端|影视",
- "type": 3,
- "api": "csp_Ddys",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "苹果影视",
- "name": "💡苹果|影视",
- "type": 3,
- "api": "csp_LiteApple",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "爱看机器人",
- "name": "💡爱看|影视",
- "type": 3,
- "api": "csp_Ikanbot",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "三六零",
- "name": "💡三六|视频",
- "type": 3,
- "api": "csp_SP360"
- },
- {
- "key": "农民影视",
- "name": "💡农民┃影视",
- "type": 3,
- "api": "csp_Wwys",
- "ext": "https://www.wwgz.cn"
- },
- {
- "key": "奇优影视",
- "name": "💡奇优|影视",
- "type": 3,
- "api": "csp_Qiyou"
- },
- {
- "key": "骚火影视",
- "name": "💡骚火|影视",
- "type": 3,
- "api": "csp_SaoHuo",
- "playerType": 2,
- "ext": "https://shdy5.us"
- },
- {
- "key": "金牌影视",
- "name": "💡金牌|影视",
- "type": 3,
- "api": "csp_Jpys",
- "ext": "https://m.hkybqufgh.com,https://m.sizhengxt.com,https://m.9zhoukj.com,https://m.sizhengxt.com,https://m.jiabaide.cn"
- },
- {
- "key": "1905",
- "name": "💡1905|影视",
- "type": 3,
- "api": "csp_Web1905",
- "searchable": 1,
- "quickSearch": 0,
- "filterable": 0
- },
- {
- "key": "柠檬",
- "name": "💡柠檬|影视",
- "type": 3,
- "api": "csp_Nmvod",
- "playerType": 2,
- "jar": "./jars/柠檬.jar",
- "ext": "7lj763gg402i7942503g839jg74h8h88highi40799jh6i6k454419l0l5184k0g549h0kg2i01i838i2h42g891lgg1"
- },
- {
- "key": "云云",
- "name": "💡云云|影视",
- "type": 3,
- "api": "csp_Qiji",
- "playerType": 2,
- "jar": "./jars/柠檬.jar",
- "ext": "7lj763gg402i79425h2384j4g949j899hll9990i9kjl6l740h1342hjlg1848401g8610h9995i998j351gl38kklkj1hkhll757010k7hji6h377ih37k060g35161jhl3i5h0l2702g7299452l4297k5697g5390lk6935k2i9g48l8j2kh27l1g014k7j9475g8"
- },
- {
- "key": "搜索",
- "name": "🐢聚搜|影视",
- "type": 3,
- "api": "csp_qiao2",
- "playerType": 2,
- "jar": "./jars/柠檬.jar",
- "ext": "7lj763gg402i79425739i7jghj118797l4hj840gi18633331l4708g2h7145403549g44l8ii56i187681hkjj3hhgh1ih3l32j250lk1k786lj20j468hk3hli4l46gig4i3g7g2722328j0136h01i7g5183k22k7gg3i72hk81gl8k9839kl7i0707"
- },
- {
- "key": "雄鹰",
- "name": "👑雄鹰|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet2",
- "ext": {
- "url": "http://122.228.193.2:9988",
- "dataKey": "ca94b06ca359d80e",
- "dataIv": "ca94b06ca359d80e",
- "deviceId": "",
- "version": "120"
- }
- },
- {
- "key": "萝卜",
- "name": "👑萝卜|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "https://apiapplbys.lbys.app:5678",
- "dataKey": "apiapplbyskey168",
- "dataIv": "apiapplbyskey168",
- "deviceId": "",
- "version": "107"
- }
- },
- {
- "key": "白蛇",
- "name": "👑白蛇|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "",
- "site": "http://tengxunyunaliyun.oss-cn-shanghai.aliyuncs.com/tengxunyun.txt",
- "dataKey": "n3l2tx5jdkp9s2c8",
- "dataIv": "n3l2tx5jdkp9s2c8",
- "deviceId": "",
- "version": "361"
- }
- },
- {
- "key": "丫丫",
- "name": "👑丫丫|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "http://tv.yy-fun.cc",
- "dataKey": "qkxnwkfjwpcnwycl",
- "dataIv": "qkxnwkfjwpcnwycl",
- "deviceId": "",
- "version": ""
- }
- },
- {
- "key": "咖啡",
- "name": "👑咖啡|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppQi",
- "ext": {
- "url": "",
- "site": "https://daen-1256234123.cos.ap-shanghai.myqcloud.com/MuQi/mqxh.txt",
- "dataKey": "37kj83zs1q16jk6t",
- "dataIv": "37kj83zs1q16jk6t",
- "deviceId": "",
- "version": "101",
- "ua": ""
- }
- },
- {
- "key": "云云",
- "name": "👑云云|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppQi",
- "ext": {
- "url": "",
- "site": "https://staraugust123456.oss-cn-hangzhou.aliyuncs.com/1.txt",
- "dataKey": "staraugust123456",
- "dataIv": "staraugust123456",
- "deviceId": "",
- "version": "120"
- }
- },
- {
- "key": "蓝鹰",
- "name": "👑蓝鹰|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppQi",
- "ext": {
- "url": "",
- "site": "https://lanyinghz.oss-cn-hangzhou.aliyuncs.com/lanyingxmy.txt",
- "dataKey": "ca94b06ca359d80e",
- "dataIv": "ca94b06ca359d80e",
- "deviceId": "",
- "version": "120"
- }
- },
- {
- "key": "莱米",
- "name": "👑莱米|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "",
- "site": "http://laiget-1313189639.cos.ap-guangzhou.myqcloud.com/laimi.txt",
- "dataKey": "ce032244d093b3e2",
- "dataIv": "ce032244d093b3e2",
- "deviceId": "",
- "version": ""
- }
- },
- {
- "key": "旗星",
- "name": "👑旗星|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "http://ys.qist.top",
- "site": "",
- "dataKey": "2SWSPFxugBLPPOKo",
- "dataIv": "2SWSPFxugBLPPOKo",
- "deviceId": "",
- "version": "120"
- }
- },
- {
- "key": "和友",
- "name": "👑和友|弹幕",
- "type": 3,
- "api": "csp_AppSy",
- "ext": {
- "url": "",
- "site": "http://qcb.sxtzg.com/api.txt",
- "siteKey": "rectangleadsadxa",
- "listKey": "gHSLmx3JQRasgztO",
- "parsesKey": "gHSLmx3JQRasgztO"
- }
- },
- {
- "key": "鲸鱼",
- "name": "👑鲸鱼|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppQi",
- "ext": {
- "url": "",
- "site": "https://jingyu4k-1312635929.cos.ap-nanjing.myqcloud.com/1.json",
- "dataKey": "AAdgrdghjfgswerA",
- "dataIv": "AAdgrdghjfgswerA",
- "deviceId": "",
- "version": ""
- }
- },
- {
- "key": "蔬菜",
- "name": "👑蔬菜|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "http://huohu.yihn.cc",
- "site": "",
- "dataKey": "huohushipingetap",
- "dataIv": "huohushipingetap",
- "deviceId": "",
- "version": "140",
- "ua": ""
- }
- },
- {
- "key": "云端",
- "name": "👑云端|弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "https://c8k2n5l0i9s8b2m1jj8k2x2l9ff68.ydysapi.cfd:27899",
- "site": "",
- "dataKey": "k9o3p2c8b7m3z0o8",
- "dataIv": "k9o3p2c8b7m3z0o8",
- "deviceId": "",
- "version": ""
- }
- },
- {
- "key": "五八",
- "name": "👑五八丨弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "https://dy.58ys.vip",
- "site": "",
- "dataKey": "JEWibY1AgWF0V1xx",
- "dataIv": "JEWibY1AgWF0V1xx",
- "deviceId": "",
- "version": "",
- "ua": ""
- }
- },
- {
- "key": "热剧",
- "name": "👑热剧丨弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppQi",
- "ext": {
- "url": "https://www.rebovod.com",
- "site": "",
- "dataKey": "8191A7F47B37882F",
- "dataIv": "8191A7F47B37882F",
- "deviceId": "",
- "version": "",
- "ua": ""
- }
- },
- {
- "key": "星星",
- "name": "👑星星丨弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "http://starani.qcanime.xyz",
- "site": "",
- "dataKey": "123456789StarAni",
- "dataIv": "123456789StarAni",
- "deviceId": "",
- "version": "",
- "ua": "okhttp/3.10.0BDYS/109.0.0.8"
- }
- },
- {
- "key": "斗量",
- "name": "👑斗量丨弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "",
- "site": "https://app-cms-v10-1314306855.cos.ap-guangzhou.myqcloud.com/appcms.php",
- "dataKey": "A1akVPQmnnE4Fz9Z",
- "dataIv": "A1akVPQmnnE4Fz9Z",
- "deviceId": "",
- "version": "",
- "ua": ""
- }
- },
- {
- "key": "魔方",
- "name": "👑魔方丨弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "https://www.pjb523.sbs",
- "site": "",
- "dataKey": "1234567887654321",
- "dataIv": "1234567887654321",
- "deviceId": "",
- "version": "",
- "ua": ""
- }
- },
- {
- "key": "布雷",
- "name": "👑布雷丨弹幕",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "https://cms.bl4k.cc",
- "site": "",
- "dataKey": "B7uaxcwdpX2dww82",
- "dataIv": "B7uaxcwdpX2dww82",
- "deviceId": "",
- "version": "",
- "ua": ""
- }
- },
- {
- "key": "New6v",
- "name": "🎃New6V┃磁力",
- "type": 3,
- "api": "csp_New6v",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "ext": "https://www.xb6v.com"
- },
- {
- "key": "剧迷",
- "name": "🎃剧迷┃磁力",
- "type": 3,
- "api": "csp_MeijuMi",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "80S",
- "name": "🎃80S|磁力",
- "type": 3,
- "api": "csp_BLSGod",
- "playerType": 1,
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "天堂",
- "name": "🎃美剧┃磁力",
- "type": 3,
- "api": "csp_MeijuTT",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "曼波动漫",
- "name": "🤣曼波|动漫",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "https://app.omofun1.top",
- "dataKey": "66dc309cbeeca454",
- "dataIv": "66dc309cbeeca454",
- "deviceId": "",
- "version": ""
- }
- },
- {
- "key": "魔都资源",
- "name": "🤣魔都┃动漫",
- "type": 1,
- "api": "https://caiji.moduapi.cc/api.php/provide/vod/?ac=list",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "稀饭动漫",
- "name": "🤣稀饭|动漫",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "",
- "site": "https://xfapp-1305390065.cos.ap-guangzhou.myqcloud.com/getapp.txt",
- "dataKey": "1yZ2Spn9krnzVKoC",
- "dataIv": "1yZ2Spn9krnzVKoC",
- "deviceId": "",
- "version": ""
- }
- },
- {
- "key": "派对动漫",
- "name": "🤣派对|动漫",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "https://qjappcms.acg.party",
- "dataKey": "AmtMYFCJDPoTlK7z",
- "dataIv": "AmtMYFCJDPoTlK7z",
- "deviceId": "",
- "version": ""
- }
- },
- {
- "key": "咕咕动漫",
- "name": "🤣咕咕|动漫",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "https://www.gugu3.com",
- "dataKey": "nKfZ8KX6JTNWRzTD",
- "dataIv": "nKfZ8KX6JTNWRzTD",
- "deviceId": "",
- "version": ""
- }
- },
- {
- "key": "多多动漫",
- "name": "🤣多多|动漫",
- "type": 3,
- "quickSearch": 1,
- "api": "csp_AppGet",
- "ext": {
- "url": "",
- "site": "https://app.cf4k.xyz/1.txt",
- "dataKey": "qqqqqqqqqqqqqqqq",
- "dataIv": "qqqqqqqqqqqqqqqq",
- "deviceId": "",
- "version": ""
- }
- },
- {
- "key": "木偶",
- "name": "❤木偶|4K弹幕",
- "type": 3,
- "api": "csp_PanWebShare",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "ext": "./json/mogg.json"
- },
- {
- "key": "蜡笔",
- "name": "❤蜡笔|4K弹幕",
- "type": 3,
- "api": "csp_PanWebShare",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "changeable": 1,
- "ext": "./json/lb.json"
- },
- {
- "key": "小米",
- "name": "❤小米|4K弹幕",
- "type": 3,
- "api": "csp_PanWebShare",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "changeable": 1,
- "ext": "./json/xm.json"
- },
- {
- "key": "多多",
- "name": "❤多多|4K弹幕",
- "type": 3,
- "api": "csp_PanWebShare",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "changeable": 1,
- "ext": "./json/yyds.json"
- },
- {
- "key": "玩偶",
- "name": "❤玩偶|4K弹幕",
- "type": 3,
- "api": "csp_PanWebShare",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "changeable": 1,
- "ext": "./json/wogg.json"
- },
- {
- "key": "糖果",
- "name": "❤糖果|搜索",
- "type": 3,
- "api": "csp_TGSou",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "音海",
- "name": "❤音海|搜索",
- "type": 3,
- "api": "csp_YinHai",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "糖果",
- "name": "❤糖果|搜索",
- "type": 3,
- "api": "csp_TGSou",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "音海",
- "name": "❤音海|搜索",
- "type": 3,
- "api": "csp_YinHai",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1
- },
- {
- "key": "夸克盘搜",
- "name": "❤夸克|搜索",
- "type": 3,
- "api": "csp_PanSou",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "ext": {
- "cloudDrives": "quark"
- }
- },
- {
- "key": "UC盘搜",
- "name": "❤UC|搜索",
- "type": 3,
- "api": "csp_PanSou",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "ext": {
- "cloudDrives": "uc"
- }
- },
- {
- "key": "百度盘搜",
- "name": "❤百度|搜索",
- "type": 3,
- "api": "csp_PanSou",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "ext": {
- "cloudDrives": "baidu"
- }
- },
- {
- "key": "阿里云盘",
- "name": "❤我的|阿里",
- "type": 3,
- "api": "csp_PanAli",
- "searchable": 0,
- "filterable": 0,
- "changeable": 0,
- "style": {
- "type": "list",
- "ratio": 1.433
- },
- "ext": "./json/aliShare.json"
- },
- {
- "key": "夸克云盘",
- "name": "❤我的|夸克",
- "type": 3,
- "api": "csp_PanQuark",
- "searchable": 0,
- "filterable": 0,
- "changeable": 0,
- "style": {
- "type": "list",
- "ratio": 1.433
- },
- "ext": "./json/quarkShare.json"
- },
- {
- "key": "UC",
- "name": "❤我的|UC",
- "type": 3,
- "api": "csp_PanUc",
- "searchable": 0,
- "filterable": 0,
- "changeable": 0,
- "style": {
- "type": "list",
- "ratio": 1.433
- },
- "ext": "./json/ucShare.json"
- },
- {
- "key": "百度云盘",
- "name": "❤我的|百度",
- "type": 3,
- "api": "csp_PanBaiDu",
- "searchable": 0,
- "filterable": 0,
- "changeable": 0,
- "style": {
- "type": "list",
- "ratio": 1.433
- }
- },
- {
- "key": "养生堂",
- "name": "🧿养生|知识",
- "type": 3,
- "jar": "./jars/养生堂.jar",
- "api": "csp_XBPQ",
- "ext": "./json/养生堂.json",
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "八号影视",
- "name": "🧿八号|影视",
- "type": 3,
- "api": "csp_XYQHiker",
- "searchable": 1,
- "quickSearch": 1,
- "filterable": 1,
- "ext": "./json/八号影视.json"
- },
- {
- "key": "农民",
- "name": "🧿农民|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": "./json/农民影视.json"
- },
- {
- "key": "明星",
- "name": "🧿明星|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://mxvod.com/"
- }
- },
- {
- "key": "番茄",
- "name": "🧿番茄|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://www.yirenmeng.com/"
- }
- },
- {
- "key": "小镇",
- "name": "🧿小镇|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "http://dyxz.tv/"
- }
- },
- {
- "key": "永乐",
- "name": "🧿永乐|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://www.ylys.tv/"
- }
- },
- {
- "key": "优质",
- "name": "🧿优质|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://www.myripon.com/"
- }
- },
- {
- "key": "韩国",
- "name": "🧿韩国|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": "./json/韩剧看看.json"
- },
- {
- "key": "厂长",
- "name": "🧿厂长|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": "./json/厂长资源.json"
- },
- {
- "key": "小鸭",
- "name": "🧿小鸭|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://777tv.ai/;;!H"
- }
- },
- {
- "key": "不卡",
- "name": "🧿不卡|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://www.sobods.com/vodshow/1-----------/area/{area}/by/{by}/class/{class}/id/{cateId}/page/{catePg}/year/{year}.html",
- "分类": "电影$1#连续剧$2#动漫$4#综艺$3"
- }
- },
- {
- "key": "老王",
- "name": "🧿老王|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://www.laowang.co/;;!"
- }
- },
- {
- "key": "麦田",
- "name": "🧿麦田|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://www.mtyy1.com/;;!"
- }
- },
- {
- "key": "飞快",
- "name": "🧿飞快|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://feikuai.tv/;;!"
- }
- },
- {
- "key": "快快",
- "name": "🧿快快|影视",
- "type": 3,
- "api": "csp_XBPQ",
- "jar": "./jars/养生堂.jar",
- "ext": {
- "副标题": "欧歌专属",
- "请求头": "User-Agent$MOBILE_UA",
- "编码": "UTF-8",
- "分类url": "https://4k4k.live/;;!"
- }
- },
- {
- "key": "哔️软件",
- "name": "🅰️软件┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/软件教程.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "哔哩学堂",
- "name": "🅰学堂┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/学堂教育.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "哔哩少儿",
- "name": "🅰少儿┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/少儿合集.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "️小学",
- "name": "🅰️小学┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/小学课堂.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "️初中",
- "name": "🅰️初中┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/初中课堂.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "️高中",
- "name": "🅰️高中┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/高中课堂.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "口才",
- "name": "🧒口才┃儿童",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/儿童口才.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "拼音",
- "name": "🧒拼音┃儿童",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/儿童拼音.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "识字",
- "name": "🧒识字┃儿童",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/儿童识字.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "思维",
- "name": "🧒思维┃儿童",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/儿童思维.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "英语",
- "name": "🧒英语┃儿童",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/儿童英语.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "科学",
- "name": "🧒科学┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/小灯塔科学.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "国学",
- "name": "🧒国学┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/小灯塔国学.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "地理",
- "name": "🧒地理┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/小灯塔地理.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "编程",
- "name": "🧒编程┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/儿童编程.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "武术",
- "name": "🧒武术┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/儿童武术.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "csp_BBB",
- "name": "🅱️套餐┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/哔哩套餐1.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "csp_111BB",
- "name": "🅱️套餐2┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/哔哩套餐2.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "歌曲",
- "name": "🌈歌曲┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/歌曲MV.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "美食",
- "name": "🌈美食┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/美食.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "球类",
- "name": "⚽️球类┃合集",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/球类合集.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "️球星",
- "name": "⚽️球星┃合集",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/球星合集.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "️演唱",
- "name": "🅰️演唱┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/演唱会.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "️戏曲",
- "name": "🅰️戏曲┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/戏曲合集.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "哔哩哔哩听书",
- "name": "🅰听书┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/小说.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "急救教学",
- "name": "🚑急救|教学",
- "type": 3,
- "api": "csp_FirstAid",
- "searchable": 0,
- "quickSearch": 0,
- "changeable": 0,
- "style": {
- "type": "rect",
- "ratio": 3.8
- },
- "gridview": "0-0-4.1"
- },
- {
- "key": "影视影视",
- "name": "🅰影视┃哔哩",
- "type": 3,
- "api": "csp_Bili",
- "searchable": 0,
- "quickSearch": 0,
- "filterable": 0,
- "ext": {
- "cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
- "json": "https://cdn.jsdmirror.com/gh/ouhaibo1980/tvbox@main/Bil/合集.json"
- },
- "style": {
- "type": "rect",
- "ratio": 1.597
- }
- },
- {
- "key": "88看球",
- "name": "💋88|看球",
- "type": 3,
- "api": "./api/drpy2.min.js",
- "style": {
- "type": "list"
- },
- "ext": "./js/88看球.js"
- },
- {
- "key": "本地",
- "name": "🌸本地|视频",
- "type": 3,
- "api": "csp_LocalFile"
- },
- {
- "key": "预告",
- "name": "🌸新片|预告",
- "type": 3,
- "api": "csp_DouBan",
- "searchable": 0
- },
- {
- "key": "push_agent",
- "name": "📢手机|推送",
- "type": 3,
- "api": "csp_Push",
- "searchable": 0,
- "filterable": 0,
- "changeable": 0
- },
- {
- "key": "本地包更新",
- "name": "🛒本地包更新",
- "type": 3,
- "api": "csp_Market",
- "searchable": 0,
- "changeable": 0,
- "ext": "http://123.yy.xn--dkw.xn--6qq986b3xl/zm/sd.php?b=tv"
- },
- {
- "key": "豆瓣3",
- "name": "📢接口软件永远免费",
- "type": 3,
- "api": "csp_Douban",
- "searchable": 0
- },
- {
- "key": "豆瓣4",
- "name": "📢长期维护切勿贩卖",
- "type": 3,
- "api": "csp_Douban",
- "searchable": 0
- }
- ],
- "parses": [
- {
- "name": "-聚合-",
- "type": 3,
- "url": "Demo"
- },
- {
- "name": "欧歌解析",
- "type": "1",
- "url": "https://欧歌解析.v.nxog.top/m/jx.php?ou=公众号欧歌APP&mz=0&url=",
- "ext": {
- "header": {
- "user-agent": "Mozilla/5.0(Linux;Android13;V2049ABuild/TP1A.220624.014;wv)AppleWebKit/537.36(KHTML,likeGecko)Version/4.0Chrome/116.0.0.0MobileSafari/537.36"
- }
- }
- },
- {
- "name": "-关注-",
- "type": 1,
- "url": "https://2.nxog.eu.org/jx.php?ou=公众号欧歌APP&mz=1&url="
- },
- {
- "name": "-欧歌-",
- "type": 1,
- "url": "https://3.nxog.eu.org/jx.php?ou=公众号欧歌APP&mz=2&url="
- },
- {
- "name": "-公众号-",
- "type": 1,
- "url": "https://2.nxog.eu.org/jx.php?ou=公众号欧歌APP&mz=3&url="
- },
- {
- "name": "欧歌APP",
- "type": 1,
- "url": "https://mfjx.iwsyy.xyz/?url="
- },
- {
- "name": "线路1",
- "type": 0,
- "url": "https://jx.xmflv.com/?url=",
- "ext": {
- "header": {
- "user-agent": "Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/110.0.0.0Safari/537.36Edg/110.0.1587.57"
- }
- }
- },
- {
- "name": "线路2",
- "type": 0,
- "url": "http://www.ckplayer.vip/jiexi/?url=",
- "ext": {
- "header": {
- "user-agent": "Mozilla/5.0(Linux;Android13;V2049ABuild/TP1A.220624.014;wv)AppleWebKit/537.36(KHTML,likeGecko)Version/4.0Chrome/116.0.0.0MobileSafari/537.36"
- }
- }
- },
- {
- "name": "线路3",
- "type": 0,
- "url": "https://jx.yparse.com/index.php?url=",
- "ext": {
- "header": {
- "user-agent": "Mozilla/5.0(Linux;Android13;V2049ABuild/TP1A.220624.014;wv)AppleWebKit/537.36(KHTML,likeGecko)Version/4.0Chrome/116.0.0.0MobileSafari/537.36"
- }
- }
- },
- {
- "name": "线路4",
- "type": 0,
- "url": "https://jx.m3u8.tv/jiexi/?url=",
- "ext": {
- "header": {
- "user-agent": "Mozilla/5.0(Linux;Android13;V2049ABuild/TP1A.220624.014;wv)AppleWebKit/537.36(KHTML,likeGecko)Version/4.0Chrome/116.0.0.0MobileSafari/537.36",
- "referer": "https://jiejie.uk/"
- }
- }
- },
- {
- "name": "线路5",
- "type": 0,
- "url": "https://cdn.zyc888.top/?url="
- },
- {
- "name": "线路6",
- "type": 0,
- "url": "https://bd.jx.cn/?url="
- },
- {
- "name": "线路7",
- "type": 0,
- "url": "https://yparse.ik9.cc/index.php?url="
- }
- ],
- "rules": [
- {
- "name": "磁力广告",
- "hosts": [
- "magnet"
- ],
- "regex": [
- "更多",
- "社區",
- "xuu",
- "最新",
- "直播",
- "更新",
- "社区",
- "有趣",
- "英皇体育",
- "全中文AV在线",
- "澳门皇冠赌场",
- "哥哥快来",
- "美女荷官",
- "裸聊",
- "新片首发",
- "UUE29"
- ]
- },
- {
- "name": "农民",
- "hosts": [
- "toutiaovod.com"
- ],
- "regex": [
- "video/tos/cn"
- ]
- },
- {
- "name": "火山",
- "hosts": [
- "huoshan.com"
- ],
- "regex": [
- "item_id="
- ]
- },
- {
- "name": "抖音",
- "hosts": [
- "douyin.com"
- ],
- "regex": [
- "is_play_url="
- ]
- },
- {
- "name": "饭团点击",
- "hosts": [
- "dadagui",
- "freeok",
- "dadagui"
- ],
- "script": [
- "document.querySelector(\"#playleftiframe\").contentWindow.document.querySelector(\"#start\").click();"
- ]
- },
- {
- "name": "毛驴点击",
- "hosts": [
- "www.maolvys.com"
- ],
- "script": [
- "document.getElementsByClassName('swal-buttonswal-button--confirm')[0].click()"
- ]
- },
- {
- "name": "ofiii",
- "hosts": [
- "www.ofiii.com"
- ],
- "script": [
- "constplay=document.getElementsByClassName('play_icon')[0],event=newMouseEvent('click',{bubbles:!0,cancelable:!0,view:window,screenX:100,screenY:100,clientX:50,clientY:50,button:0,shiftKey:!1,ctrlKey:!1,altKey:!1,metaKey:!1,modifierState:0});play.dispatchEvent(event);"
- ]
- }
- ],
- "flags": [
- "youku",
- "优酷",
- "优酷",
- "优酷视频",
- "qq",
- "腾讯",
- "腾讯",
- "腾讯视频",
- "iqiyi",
- "qiyi",
- "奇艺",
- "爱奇艺",
- "爱奇艺",
- "m1905",
- "xigua",
- "letv",
- "leshi",
- "乐视",
- "乐视",
- "sohu",
- "搜狐",
- "搜狐",
- "搜狐视频",
- "tudou",
- "pptv",
- "mgtv",
- "芒果",
- "imgo",
- "芒果TV",
- "芒果TV",
- "bilibili",
- "哔哩",
- "哔哩哔哩"
- ],
- "doh": [
- {
- "name": "Google",
- "url": "https://dns.google/dns-query",
- "ips": [
- "8.8.4.4",
- "8.8.8.8"
- ]
- },
- {
- "name": "Cloudflare",
- "url": "https://cloudflare-dns.com/dns-query",
- "ips": [
- "1.1.1.1",
- "1.0.0.1",
- "2606:4700:4700::1111",
- "2606:4700:4700::1001"
- ]
- },
- {
- "name": "AdGuard",
- "url": "https://dns.adguard.com/dns-query",
- "ips": [
- "94.140.14.140",
- "94.140.14.141"
- ]
- },
- {
- "name": "DNSWatch",
- "url": "https://resolver2.dns.watch/dns-query",
- "ips": [
- "84.200.69.80",
- "84.200.70.40"
- ]
- },
- {
- "name": "Quad9",
- "url": "https://dns.quad9.net/dns-quer",
- "ips": [
- "9.9.9.9",
- "149.112.112.112"
- ]
- }
- ],
- "hosts": [
- "cache.ott.*.itv.cmvideo.cn=base-v4-free-mghy.e.cdn.chinamobile.com",
- "cache.ott.ystenlive.itv.cmvideo.cn=base-v4-free-mghy.e.cdn.chinamobile.com",
- "cache.ott.bestlive.itv.cmvideo.cn=base-v4-free-mghy.e.cdn.chinamobile.com",
- "cache.ott.wasulive.itv.cmvideo.cn=base-v4-free-mghy.e.cdn.chinamobile.com",
- "cache.ott.fifalive.itv.cmvideo.cn=base-v4-free-mghy.e.cdn.chinamobile.com",
- "cache.ott.hnbblive.itv.cmvideo.cn=base-v4-free-mghy.e.cdn.chinamobile.com"
- ],
- "ijk": [
- {
- "group": "软解码",
- "options": [
- {
- "category": 4,
- "name": "opensles",
- "value": "0"
- },
- {
- "category": 4,
- "name": "overlay-format",
- "value": "842225234"
- },
- {
- "category": 4,
- "name": "framedrop",
- "value": "1"
- },
- {
- "category": 4,
- "name": "soundtouch",
- "value": "1"
- },
- {
- "category": 4,
- "name": "start-on-prepared",
- "value": "1"
- },
- {
- "category": 1,
- "name": "http-detect-range-support",
- "value": "0"
- },
- {
- "category": 1,
- "name": "fflags",
- "value": "fastseek"
- },
- {
- "category": 2,
- "name": "skip_loop_filter",
- "value": "48"
- },
- {
- "category": 4,
- "name": "reconnect",
- "value": "1"
- },
- {
- "category": 4,
- "name": "enable-accurate-seek",
- "value": "0"
- },
- {
- "category": 4,
- "name": "mediacodec",
- "value": "0"
- },
- {
- "category": 4,
- "name": "mediacodec-auto-rotate",
- "value": "0"
- },
- {
- "category": 4,
- "name": "mediacodec-handle-resolution-change",
- "value": "0"
- },
- {
- "category": 4,
- "name": "mediacodec-hevc",
- "value": "0"
- },
- {
- "category": 1,
- "name": "dns_cache_timeout",
- "value": "600000000"
- }
- ]
- },
- {
- "group": "硬解码",
- "options": [
- {
- "category": 4,
- "name": "opensles",
- "value": "0"
- },
- {
- "category": 4,
- "name": "overlay-format",
- "value": "842225234"
- },
- {
- "category": 4,
- "name": "framedrop",
- "value": "1"
- },
- {
- "category": 4,
- "name": "soundtouch",
- "value": "1"
- },
- {
- "category": 4,
- "name": "start-on-prepared",
- "value": "1"
- },
- {
- "category": 1,
- "name": "http-detect-range-support",
- "value": "0"
- },
- {
- "category": 1,
- "name": "fflags",
- "value": "fastseek"
- },
- {
- "category": 2,
- "name": "skip_loop_filter",
- "value": "48"
- },
- {
- "category": 4,
- "name": "reconnect",
- "value": "1"
- },
- {
- "category": 4,
- "name": "enable-accurate-seek",
- "value": "0"
- },
- {
- "category": 4,
- "name": "mediacodec",
- "value": "1"
- },
- {
- "category": 4,
- "name": "mediacodec-auto-rotate",
- "value": "1"
- },
- {
- "category": 4,
- "name": "mediacodec-handle-resolution-change",
- "value": "1"
- },
- {
- "category": 4,
- "name": "mediacodec-hevc",
- "value": "1"
- },
- {
- "category": 1,
- "name": "dns_cache_timeout",
- "value": "600000000"
- }
- ]
- }
- ],
- "ads": [
- "mimg.0c1q0l.cn",
- "www.googletagmanager.com",
- "www.google-analytics.com",
- "mc.usihnbcq.cn",
- "mg.g1mm3d.cn",
- "mscs.svaeuzh.cn",
- "cnzz.hhttm.top",
- "tp.vinuxhome.com",
- "cnzz.mmstat.com",
- "www.baihuillq.com",
- "s23.cnzz.com",
- "z3.cnzz.com",
- "c.cnzz.com",
- "stj.v1vo.top",
- "z12.cnzz.com",
- "img.mosflower.cn",
- "tips.gamevvip.com",
- "ehwe.yhdtns.com",
- "xdn.cqqc3.com",
- "www.jixunkyy.cn",
- "sp.chemacid.cn",
- "hm.baidu.com",
- "s9.cnzz.com",
- "z6.cnzz.com",
- "um.cavuc.com",
- "mav.mavuz.com",
- "wofwk.aoidf3.com",
- "z5.cnzz.com",
- "xc.hubeijieshikj.cn",
- "tj.tianwenhu.com",
- "xg.gars57.cn",
- "k.jinxiuzhilv.com",
- "cdn.bootcss.com",
- "ppl.xunzhuo123.com",
- "xomk.jiangjunmh.top",
- "img.xunzhuo123.com",
- "z1.cnzz.com",
- "s13.cnzz.com",
- "xg.huataisangao.cn",
- "z7.cnzz.com",
- "xg.huataisangao.cn",
- "z2.cnzz.com",
- "s96.cnzz.com",
- "q11.cnzz.com",
- "thy.dacedsfa.cn",
- "xg.whsbpw.cn",
- "s19.cnzz.com",
- "z8.cnzz.com",
- "s4.cnzz.com",
- "f5w.as12df.top",
- "ae01.alicdn.com",
- "www.92424.cn",
- "k.wudejia.com",
- "vivovip.mmszxc.top",
- "qiu.xixiqiu.com",
- "cdnjs.hnfenxun.com",
- "cms.qdwght.com"
- ]
-}
\ No newline at end of file
diff --git a/欧歌/api/drpy2.min.js b/欧歌/api/drpy2.min.js
deleted file mode 100644
index 464f33c..0000000
--- a/欧歌/api/drpy2.min.js
+++ /dev/null
@@ -1,3108 +0,0 @@
-import cheerio from "assets://js/lib/cheerio.min.js";
-import "assets://js/lib/crypto-js.js";
-import "./jsencrypt.js";
-import "./node-rsa.js";
-import "./pako.min.js";
-import 模板 from "./模板.js";
-import {
- gbkTool
-} from "./gbk.js";
-import "./json5.js";
-import "./jinja.js";
-const _jinja2 = cheerio.jinja2;
-cheerio.jinja2 = function(template, obj) {
- try {
- return jinja.render(template, obj)
- } catch (e) {
- console.log("新的jinja2库渲染失败,换回原始cheerio:" + e.message);
- return _jinja2(template, obj)
- }
-};
-let vercode = typeof pdfl === "function" ? "drpy2.1" : "drpy2";
-const VERSION = vercode + " 3.9.51beta6 20241126";
-const UpdateInfo = [{
- date: "20241126",
- title: "drpy更新,优化去广告算法",
- version: "3.9.51beta6 20241126",
- msg: `
- 1. 更新龙头大佬提供的去广告算法
- `
-}, {
- date: "20241104",
- title: "drpy更新,增加新特性",
- version: "3.9.51beta5 20241104",
- msg: `
- 1. rule增加 搜索验证标识 属性,可以不定义,默认为 '系统安全验证|请输入验证码'
- 2. rule增加 searchNoPage 属性,可以不定义,如果定义 1 将关闭该源的搜索翻页功能,超过1页直接返回空
- `
-}];
-
-function getUpdateInfo() {
- return UpdateInfo.map(_o => {
- _o.msg = _o.msg.trim().split("\n").map(_it => _it.trim()).join("\n");
- return _o
- })
-}
-
-function init_test() {
- console.log("init_test_start");
- console.log("当前版本号:" + VERSION);
- console.log("本地代理地址:" + getProxyUrl());
- console.log(RKEY);
- console.log(JSON.stringify(rule));
- console.log("init_test_end")
-}
-
-function ocr_demo_test() {
- let img_base64 = `iVBORw0KGgoAAAANSUhEUgAAAIAAAAAoBAMAAADEX+97AAAAG1BMVEXz+/4thQTa7N6QwIFFkyNeokKozqDB3b93sWHFR+MEAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABN0lEQVRIie2TQU+DQBCFt9vScvQpxR4xrcSjJCZ67JDGXsX+AdR4B3vpsSYm/m2HXaRLmuySepR3Gdidb/btDAjRq5dT96eCMlfBuzi1QLZUoZy2yz5sOvI+9iomaPEZ6nWnEtxqIyiM1RcAy44GNDhBXUjot/VVNweV1ah68FqWRyjKIOqAcyYF6rGcmpYnHzGt3fycNoMw0d3/THFu7hFSJ/8OXO6iTM8/KSg09obAzIHLO250LgQ0txOZSfgrV4Exdw98uGycJ0ErAeExZGhOmFHV9zHO6qVSj0MpLq7xZON56o++MjlsEgfVhbQWWME+xQX7J4V6zfi9A1Ly9rP1BvEXp+BbVJ/M77n+wfOIDVp51pZ4iBxvmj9AGrtvry6emwfKnVkW+ZRKd5ZNMvob36vXP9YPDmQki8QiCFAAAAAASUVORK5CYII=`;
- OcrApi.api = OCR_API;
- let code = OcrApi.classification(img_base64);
- log("测试验证码图片的ocr识别结果为:" + code)
-}
-
-function rsa_demo_test() {
- let t1 = (new Date).getTime();
- let pkcs1_public = `
------BEGIN RSA PUBLIC KEY-----
-MEgCQQCrI0pQ/ERRpJ3Ou190XJedFq846nDYP52rOtXyDxlFK5D3p6JJu2RwsKwy
-lsQ9xY0xYPpRZUZKMEeR7e9gmRNLAgMBAAE=
------END RSA PUBLIC KEY-----
-`.trim();
- let pkcs1_public_pem = `
-MEgCQQCrI0pQ/ERRpJ3Ou190XJedFq846nDYP52rOtXyDxlFK5D3p6JJu2RwsKwy
-lsQ9xY0xYPpRZUZKMEeR7e9gmRNLAgMBAAE=
-`.trim();
- let pkcs8_public = `
------BEGIN PUBLIC KEY-----
-MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/
-nas61fIPGUUrkPenokm7ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQ==
------END PUBLIC KEY-----`.trim();
- let pkcs8_public_pem = `
-MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/
-nas61fIPGUUrkPenokm7ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQ==
-`.trim();
- let pkcs1_private = `
------BEGIN RSA PRIVATE KEY-----
-MIIBOAIBAAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/nas61fIPGUUrkPenokm7
-ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQI/b6OV1z65UokQaMvSeRXt
-0Yv6wiYtduQI9qpq5nzy/ytaqsbBfClNTi/HifKPKxlRouWFkc518EQI8LBxoarJ
-AiEA4DaONMplV8PQNa3TKn2F+SDEvLOCjdL0kHKdN90Ti28CIQDDZnTBaHgZwZbA
-hS7Bbf5yvwjWMhO6Y7l04/Qm7R+35QIgPuQuqXIoUSD080mp1N5WyRW++atksIF+
-5lGv9e6GP/MCICnj8y/rl6Pd7tXDN6zcSeqLrfdNsREKhB3dKOCXgW9JAiAFYtFS
-EJNBXVRTK42SNsZ2hJ/9xLwOwnH2epT8Q43s3Q==
------END RSA PRIVATE KEY-----
-`.trim();
- let pkcs8_private = `
------BEGIN PRIVATE KEY-----
-MIIBUgIBADANBgkqhkiG9w0BAQEFAASCATwwggE4AgEAAkEAqyNKUPxEUaSdzrtf
-dFyXnRavOOpw2D+dqzrV8g8ZRSuQ96eiSbtkcLCsMpbEPcWNMWD6UWVGSjBHke3v
-YJkTSwIDAQABAj9vo5XXPrlSiRBoy9J5Fe3Ri/rCJi125Aj2qmrmfPL/K1qqxsF8
-KU1OL8eJ8o8rGVGi5YWRznXwRAjwsHGhqskCIQDgNo40ymVXw9A1rdMqfYX5IMS8
-s4KN0vSQcp033ROLbwIhAMNmdMFoeBnBlsCFLsFt/nK/CNYyE7pjuXTj9CbtH7fl
-AiA+5C6pcihRIPTzSanU3lbJFb75q2SwgX7mUa/17oY/8wIgKePzL+uXo93u1cM3
-rNxJ6out902xEQqEHd0o4JeBb0kCIAVi0VIQk0FdVFMrjZI2xnaEn/3EvA7CcfZ6
-lPxDjezd
------END PRIVATE KEY-----
-`.trim();
- let data = `
-NodeRsa
-这是node-rsa 现在修改集成在drpy里使用`.trim();
- let encryptedWithPublic = NODERSA.encryptRSAWithPublicKey(data, pkcs1_public, {
- outputEncoding: "base64",
- options: {
- environment: "browser",
- encryptionScheme: "pkcs1_oaep"
- }
- });
- console.log("公钥加密");
- console.log(encryptedWithPublic);
- let decryptedWithPrivate = NODERSA.decryptRSAWithPrivateKey(encryptedWithPublic, pkcs1_private, {
- options: {
- environment: "browser",
- encryptionScheme: "pkcs1_oaep"
- }
- });
- console.log("私钥解密");
- console.log(decryptedWithPrivate);
- let pkcs1_sha256_sign = NODERSA.sign("1", pkcs1_private, {
- outputEncoding: "base64",
- options: {
- environment: "browser",
- encryptionScheme: "pkcs1",
- signingScheme: "pkcs1-sha256"
- }
- });
- console.log("pkcs1_sha256_sign");
- console.log(pkcs1_sha256_sign);
- let pkcs1_sha256_sign_verify = NODERSA.verify("1", "Oulx2QrgeipKYBtqEDqFb2s/+ndk2cGQxO4CkhU7iBM1vyNmmvqubpsmeoUuN3waGrYZLknSEdwBkfv0tUMpFQ==", pkcs1_private, {
- options: {
- environment: "browser",
- encryptionScheme: "pkcs1",
- signingScheme: "pkcs1-sha256"
- }
- });
- console.log("pkcs1_sha256_sign_verify");
- console.log(pkcs1_sha256_sign_verify);
- let pkcs1_oaep_sha256 = NODERSA.encryptRSAWithPublicKey(data, `-----BEGIN RSA PUBLIC KEY-----
-MIIBCgKCAQEA5KOq1gRNyllLNWKQy8sGpZE3Q1ULLSmzZw+eaAhj9lvqn7IsT1du
-SYn08FfoOA2qMwtz+1O2l1mgzNoSVCyVpVabnTG+C9XKeZXAnJHd8aYA7l7Sxhdm
-kte+iymYZ0ZBPzijo8938iugtVvqi9UgDmnY3u/NlQDqiL5BGqSxSTd/Sgmy3zD8
-PYzEa3wD9vehQ5fZZ45vKIq8GNVh2Z8+IGO85FF1OsN7+b2yGJa/FmDDNn0+HP+m
-PfI+kYBqEVpo0Ztbc3UdxgFwGC8O1n8AQyriwHnSOtIiuBH62J/7qyC/3LEAApRb
-Dd9YszqzmODjQUddZKHmvc638VW+azc0EwIDAQAB
------END RSA PUBLIC KEY-----
-`, {
- outputEncoding: "base64",
- options: {
- environment: "browser",
- encryptionScheme: {
- scheme: "pkcs1_oaep",
- hash: "sha256"
- }
- }
- });
- console.log("pkcs1_oaep_sha256");
- console.log(pkcs1_oaep_sha256);
- decryptedWithPrivate = NODERSA.decryptRSAWithPrivateKey("kSZesAAyYh2hdsQnYMdGqb6gKAzTauBKouvBzWcc4+F8RvGd0nwO6mVkUMVilPgUuNxjEauHayHiY8gI3Py45UI3+km0rSGyHrS6dHiHgCkMejXHieglYzAB0IxX3Jkm4z/66bdB/D+GFy0oct5fGCMI1UHPjEAYOsazJDa8lBFNbjiWFeb/qiZtIx3vGM7KYPAZzyRf/zPbbQ8zy9xOmRuOl5nnIxgo0Okp3KO/RIPO4GZOSBA8f2lx1UtNwwrXAMpcNavtoqHVcjJ/9lcotXYQFrn5b299pSIRf2gVm8ZJ31SK6Z8cc14nKtvgnmsgClDzIXJ1o1RcDK+knVAySg==", `-----BEGIN RSA PRIVATE KEY-----
-MIIEpAIBAAKCAQEA5KOq1gRNyllLNWKQy8sGpZE3Q1ULLSmzZw+eaAhj9lvqn7Is
-T1duSYn08FfoOA2qMwtz+1O2l1mgzNoSVCyVpVabnTG+C9XKeZXAnJHd8aYA7l7S
-xhdmkte+iymYZ0ZBPzijo8938iugtVvqi9UgDmnY3u/NlQDqiL5BGqSxSTd/Sgmy
-3zD8PYzEa3wD9vehQ5fZZ45vKIq8GNVh2Z8+IGO85FF1OsN7+b2yGJa/FmDDNn0+
-HP+mPfI+kYBqEVpo0Ztbc3UdxgFwGC8O1n8AQyriwHnSOtIiuBH62J/7qyC/3LEA
-ApRbDd9YszqzmODjQUddZKHmvc638VW+azc0EwIDAQABAoIBADZ/QGgUzInvsLp/
-zO2WbfYm39o/uhNAvk9RbLt1TIZbMFhyOpeKynHi3Swwd9xsfWX/U9zS/lGi/m31
-iKrhmaW4OA1G3vqpMcK7TBbFufYwUEaA+ZJX344euH8pIfdzyneMQ4z3Far2dS7l
-QsmjuilVV2kEFadveXewiYoVOWCu00w6bN8wy2SIHlQn+kIL6HQhWz12iKKflIKu
-eGRdzLHsKmBt6WbY1Wuhx7HU0fAKdlBDPxCHNlI+kybUYE9o5C2vJiaVM5wqJBgZ
-8Dz8kt1QbLJ910JoLXkLVQ8uC8NJKQwFtqQjTGPnEq0+wbgz6Ij599rKZkwW/xq9
-l6KoUiECgYEA6Ah42tVdkNW047f03xVYXFH96RgorHRS36mR8Y+ONUq1fwKidovC
-WjwVujt4OPf3l1W6iyn/F6cu/bsmvPrSc3HTN0B1V31QK4OjgetxQ2PSbTldH02J
-NPzkt+v+cPxXpx/P5mgt7Weefw5txU547KubGrHUV5rBKFtIx9pj16MCgYEA/EF0
-o19+D24DZAPwlDS5VbEd7FStnwY4oQ5PqbuNOSbSJLMWU0AqzXcRokp8UTyCZ0X3
-ATkS1REq97kShCuR+npTR6a6DlY7sdpPI1SMLNajgB2tkx0EOzX+PfNIbHUd4jpJ
-I0ZMAHv/OOtkzQHDaeTWBTrzsWm6/nTiykfduNECgYEA46AMD4HpPECqKAs66e5i
-tI6q7JSKskObWVdcmQEfnSAhVOwcvPb2Ptda6UuV8S0xcwDi88rLOUUFUFzc79+P
-vTkY38cYVi/VChsluDpk7ptqv0PbGu5Rf+3n4pZdEjI7OvR2W64wAAn67uIUxc7p
-yiO/ET0K9rYWb6S9jXGtKMkCgYEA2kPAqoO7zZoBMQ7/oR0lp/HC1HRIbiqx4RlC
-8Lgpb+QZPEwA6zPAVVvLVENi4d+bbcRp/xLlKpraNNJcJSSWAMbLPFoU7sbKjA87
-HnTPfRSTEA2d3Ibk3F7Rh8TzS3Ti0JZiJjVzGZAwu41iAMifzwaD8K6boUy80eNN
-QH2CaaECgYBUsLYvC/MiYg3w+LGOONuQongoVUXjGqnw2bjVa9RK7lwRdXPUqJ51
-MpVO98IkoLvGSI/0sGNP3GKNhC+eMGjJAVwFyEuOn+JsmMv9Y9uStIVi5tIHIhKw
-m7mp8il0kaftHdSxTbspG3tZ2fjIiFIZkLEOmRpd7ogWumgOajzUdA==
------END RSA PRIVATE KEY-----`, {
- options: {
- environment: "browser",
- encryptionScheme: "pkcs1_oaep"
- }
- });
- console.log("decryptedWithPrivate");
- console.log(decryptedWithPrivate);
- (() => {
- let key = new NODERSA.NodeRSA({
- b: 1024
- });
- key.setOptions({
- encryptionScheme: "pkcs1"
- });
- let text = `你好drpy node-ras`;
- let encrypted = key.encrypt(text, "base64");
- console.log("encrypted: ", encrypted);
- const decrypted = key.decrypt(encrypted, "utf8");
- console.log("decrypted: ", decrypted)
- })();
- let t2 = (new Date).getTime();
- console.log("rsa_demo_test 测试耗时:" + (t2 - t1) + "毫秒")
-}
-
-function pre() {
- if (typeof rule.预处理 === "string" && rule.预处理 && rule.预处理.trim()) {
- let code = rule.预处理.trim();
- console.log("执行预处理代码:" + code);
- if (code.startsWith("js:")) {
- code = code.replace("js:", "")
- }
- try {
- eval(code)
- } catch (e) {
- console.log(`预处理执行失败:${e.message}`)
- }
- }
-}
-let rule = {};
-const MOBILE_UA = "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36";
-const PC_UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36";
-const UA = "Mozilla/5.0";
-const UC_UA = "Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36";
-const IOS_UA = "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1";
-const RULE_CK = "cookie";
-const CATE_EXCLUDE = "首页|留言|APP|下载|资讯|新闻|动态";
-const TAB_EXCLUDE = "猜你|喜欢|下载|剧情|榜|评论";
-const OCR_RETRY = 3;
-const OCR_API = "https://api.nn.ci/ocr/b64/text";
-if (typeof MY_URL === "undefined") {
- var MY_URL
-}
-var HOST;
-var RKEY;
-var fetch;
-var print;
-var log;
-var rule_fetch_params;
-var fetch_params;
-var oheaders;
-var _pdfh;
-var _pdfa;
-var _pd;
-const DOM_CHECK_ATTR = /(url|src|href|-original|-src|-play|-url|style)$/;
-const SPECIAL_URL = /^(ftp|magnet|thunder|ws):/;
-const NOADD_INDEX = /:eq|:lt|:gt|:first|:last|^body$|^#/;
-const URLJOIN_ATTR = /(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)/;
-const SELECT_REGEX = /:eq|:lt|:gt|#/g;
-const SELECT_REGEX_A = /:eq|:lt|:gt/g;
-const $js = {
- toString(func) {
- let strfun = func.toString();
- return strfun.replace(/^\(\)(\s+)?=>(\s+)?\{/, "js:").replace(/\}$/, "")
- }
-};
-
-function window_b64() {
- let b64map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
- let 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 < len) {
- c1 = str.charCodeAt(i++) & 255;
- if (i == len) {
- out += b64map.charAt(c1 >> 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 < len) {
- do {
- c1 = base64DecodeChars[str.charCodeAt(i++) & 255]
- } while (i < len && c1 == -1);
- if (c1 == -1) break;
- do {
- c2 = base64DecodeChars[str.charCodeAt(i++) & 255]
- } while (i < len && c2 == -1);
- if (c2 == -1) break;
- out += String.fromCharCode(c1 << 2 | (c2 & 48) >> 4);
- do {
- c3 = str.charCodeAt(i++) & 255;
- if (c3 == 61) return out;
- c3 = base64DecodeChars[c3]
- } while (i < len && c3 == -1);
- if (c3 == -1) break;
- out += String.fromCharCode((c2 & 15) << 4 | (c3 & 60) >> 2);
- do {
- c4 = str.charCodeAt(i++) & 255;
- if (c4 == 61) return out;
- c4 = base64DecodeChars[c4]
- } while (i < len && c4 == -1);
- if (c4 == -1) break;
- out += String.fromCharCode((c3 & 3) << 6 | c4)
- }
- return out
- }
- return {
- atob: atob,
- btoa: btoa
- }
-}
-if (typeof atob !== "function" || typeof btoa !== "function") {
- var {
- atob,
- btoa
- } = window_b64()
-}
-if (typeof Object.assign !== "function") {
- Object.assign = function() {
- let target = arguments[0];
- for (let i = 1; i < arguments.length; i++) {
- let source = arguments[i];
- for (let key in source) {
- if (Object.prototype.hasOwnProperty.call(source, key)) {
- target[key] = source[key]
- }
- }
- }
- return target
- }
-}
-if (!String.prototype.includes) {
- String.prototype.includes = function(search, start) {
- if (typeof start !== "number") {
- start = 0
- }
- if (start + search.length > this.length) {
- return false
- } else {
- return this.indexOf(search, start) !== -1
- }
- }
-}
-if (!Array.prototype.includes) {
- Object.defineProperty(Array.prototype, "includes", {
- value: function(searchElement, fromIndex) {
- if (this == null) {
- throw new TypeError('"this" is null or not defined')
- }
- var o = Object(this);
- var len = o.length >>> 0;
- if (len === 0) {
- return false
- }
- var n = fromIndex | 0;
- var k = Math.max(n >= 0 ? n : len - Math.abs(n), 0);
- while (k < len) {
- if (o[k] === searchElement) {
- return true
- }
- k++
- }
- return false
- },
- enumerable: false
- })
-}
-if (typeof String.prototype.startsWith !== "function") {
- String.prototype.startsWith = function(prefix) {
- return this.slice(0, prefix.length) === prefix
- }
-}
-if (typeof String.prototype.endsWith !== "function") {
- String.prototype.endsWith = function(suffix) {
- return this.indexOf(suffix, this.length - suffix.length) !== -1
- }
-}
-Object.defineProperty(Object.prototype, "myValues", {
- value: function(obj) {
- if (obj == null) {
- throw new TypeError("Cannot convert undefined or null to object")
- }
- var res = [];
- for (var k in obj) {
- if (obj.hasOwnProperty(k)) {
- res.push(obj[k])
- }
- }
- return res
- },
- enumerable: false
-});
-if (typeof Object.prototype.values !== "function") {
- Object.defineProperty(Object.prototype, "values", {
- value: function(obj) {
- if (obj == null) {
- throw new TypeError("Cannot convert undefined or null to object")
- }
- var res = [];
- for (var k in obj) {
- if (obj.hasOwnProperty(k)) {
- res.push(obj[k])
- }
- }
- return res
- },
- enumerable: false
- })
-}
-if (typeof Array.prototype.join !== "function") {
- Object.defineProperty(Array.prototype, "join", {
- value: function(emoji) {
- emoji = emoji || "";
- let self = this;
- let str = "";
- let i = 0;
- if (!Array.isArray(self)) {
- throw String(self) + "is not Array"
- }
- if (self.length === 0) {
- return ""
- }
- if (self.length === 1) {
- return String(self[0])
- }
- i = 1;
- str = this[0];
- for (; i < self.length; i++) {
- str += String(emoji) + String(self[i])
- }
- return str
- },
- enumerable: false
- })
-}
-if (typeof Array.prototype.toReversed !== "function") {
- Object.defineProperty(Array.prototype, "toReversed", {
- value: function() {
- const clonedList = this.slice();
- const reversedList = clonedList.reverse();
- return reversedList
- },
- enumerable: false
- })
-}
-Object.defineProperty(Array.prototype, "append", {
- value: Array.prototype.push,
- enumerable: false
-});
-Object.defineProperty(String.prototype, "strip", {
- value: String.prototype.trim,
- enumerable: false
-});
-Object.defineProperty(String.prototype, "rstrip", {
- value: function(chars) {
- let regex = new RegExp(chars + "$");
- return this.replace(regex, "")
- },
- enumerable: false
-});
-
-function 是否正版(vipUrl) {
- let flag = new RegExp("qq.com|iqiyi.com|youku.com|mgtv.com|bilibili.com|sohu.com|ixigua.com|pptv.com|miguvideo.com|le.com|1905.com|fun.tv");
- return flag.test(vipUrl)
-}
-
-function urlDeal(vipUrl) {
- if (!vipUrl) {
- return ""
- }
- if (!是否正版(vipUrl)) {
- return vipUrl
- }
- if (!/miguvideo/.test(vipUrl)) {
- vipUrl = vipUrl.split("#")[0].split("?")[0]
- }
- return vipUrl
-}
-
-function setResult(d) {
- if (!Array.isArray(d)) {
- return []
- }
- VODS = [];
- d.forEach(function(it) {
- let obj = {
- vod_id: it.url || "",
- vod_name: it.title || "",
- vod_remarks: it.desc || "",
- vod_content: it.content || "",
- vod_pic: it.pic_url || it.img || ""
- };
- let keys = Object.keys(it);
- if (keys.includes("tname")) {
- obj.type_name = it.tname || ""
- }
- if (keys.includes("tid")) {
- obj.type_id = it.tid || ""
- }
- if (keys.includes("year")) {
- obj.vod_year = it.year || ""
- }
- if (keys.includes("actor")) {
- obj.vod_actor = it.actor || ""
- }
- if (keys.includes("director")) {
- obj.vod_director = it.director || ""
- }
- if (keys.includes("area")) {
- obj.vod_area = it.area || ""
- }
- VODS.push(obj)
- });
- return VODS
-}
-
-function setResult2(res) {
- VODS = res.list || [];
- return VODS
-}
-
-function setHomeResult(res) {
- if (!res || typeof res !== "object") {
- return []
- }
- return setResult(res.list)
-}
-
-function rc(js) {
- if (js === "maomi_aes.js") {
- var a = CryptoJS.enc.Utf8.parse("625222f9149e961d");
- var t = CryptoJS.enc.Utf8.parse("5efdtf6060e2o330");
- return {
- De: function(word) {
- word = CryptoJS.enc.Hex.parse(word);
- return CryptoJS.AES.decrypt(CryptoJS.enc.Base64.stringify(word), a, {
- iv: t,
- mode: CryptoJS.mode.CBC,
- padding: CryptoJS.pad.Pkcs7
- }).toString(CryptoJS.enc.Utf8)
- },
- En: function(word) {
- var Encrypted = CryptoJS.AES.encrypt(word, a, {
- iv: t,
- mode: CryptoJS.mode.CBC,
- padding: CryptoJS.pad.Pkcs7
- });
- return Encrypted.ciphertext.toString()
- }
- }
- }
- return {}
-}
-
-function maoss(jxurl, ref, key) {
- fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
- eval(getCryptoJS());
- try {
- var getVideoInfo = function(text) {
- return CryptoJS.AES.decrypt(text, key, {
- iv: iv,
- padding: CryptoJS.pad.Pkcs7
- }).toString(CryptoJS.enc.Utf8)
- };
- var token_key = key == undefined ? "dvyYRQlnPRCMdQSe" : key;
- if (ref) {
- var html = request(jxurl, {
- headers: {
- Referer: ref
- }
- })
- } else {
- var html = request(jxurl)
- }
- if (html.indexOf("&btwaf=") != -1) {
- html = request(jxurl + "&btwaf" + html.match(/&btwaf(.*?)"/)[1], {
- headers: {
- Referer: ref
- }
- })
- }
- var token_iv = html.split('_token = "')[1].split('"')[0];
- var key = CryptoJS.enc.Utf8.parse(token_key);
- var iv = CryptoJS.enc.Utf8.parse(token_iv);
- eval(html.match(/var config = {[\s\S]*?}/)[0] + "");
- if (!config.url.startsWith("http")) {
- config.url = CryptoJS.AES.decrypt(config.url, key, {
- iv: iv,
- padding: CryptoJS.pad.Pkcs7
- }).toString(CryptoJS.enc.Utf8)
- }
- return config.url
- } catch (e) {
- return ""
- }
-}
-
-function urlencode(str) {
- str = (str + "").toString();
- return encodeURIComponent(str).replace(/!/g, "%21").replace(/'/g, "%27").replace(/\(/g, "%28").replace(/\)/g, "%29").replace(/\*/g, "%2A").replace(/%20/g, "+")
-}
-
-function encodeUrl(str) {
- if (typeof encodeURI == "function") {
- return encodeURI(str)
- } else {
- str = (str + "").toString();
- return encodeURIComponent(str).replace(/%2F/g, "/").replace(/%3F/g, "?").replace(/%3A/g, ":").replace(/%40/g, "@").replace(/%3D/g, "=").replace(/%3A/g, ":").replace(/%2C/g, ",").replace(/%2B/g, "+").replace(/%24/g, "$")
- }
-}
-
-function base64Encode(text) {
- return CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(text))
-}
-
-function base64Decode(text) {
- return CryptoJS.enc.Utf8.stringify(CryptoJS.enc.Base64.parse(text))
-}
-
-function md5(text) {
- return CryptoJS.MD5(text).toString()
-}
-
-function uint8ArrayToBase64(uint8Array) {
- let binaryString = String.fromCharCode.apply(null, Array.from(uint8Array));
- return btoa(binaryString)
-}
-
-function Utf8ArrayToStr(array) {
- var out, i, len, c;
- var char2, char3;
- out = "";
- len = array.length;
- i = 0;
- while (i < len) {
- c = array[i++];
- switch (c >> 4) {
- case 0:
- case 1:
- case 2:
- case 3:
- case 4:
- case 5:
- case 6:
- case 7:
- out += String.fromCharCode(c);
- break;
- case 12:
- case 13:
- char2 = array[i++];
- out += String.fromCharCode((c & 31) << 6 | char2 & 63);
- break;
- case 14:
- char2 = array[i++];
- char3 = array[i++];
- out += String.fromCharCode((c & 15) << 12 | (char2 & 63) << 6 | (char3 & 63) << 0);
- break
- }
- }
- return out
-}
-
-function gzip(str) {
- let arr = pako.gzip(str, {});
- return uint8ArrayToBase64(arr)
-}
-
-function ungzip(b64Data) {
- let strData = atob(b64Data);
- const charData = strData.split("").map(function(x) {
- return x.charCodeAt(0)
- });
- const binData = new Uint8Array(charData);
- const data = pako.inflate(binData);
- return Utf8ArrayToStr(data)
-}
-
-function encodeStr(input, encoding) {
- encoding = encoding || "gbk";
- if (encoding.startsWith("gb")) {
- const strTool = gbkTool();
- input = strTool.encode(input)
- }
- return input
-}
-
-function decodeStr(input, encoding) {
- encoding = encoding || "gbk";
- if (encoding.startsWith("gb")) {
- const strTool = gbkTool();
- input = strTool.decode(input)
- }
- return input
-}
-
-function getCryptoJS() {
- return 'console.log("CryptoJS已装载");'
-}
-const RSA = {
- decode: function(data, key, option) {
- option = option || {};
- if (typeof JSEncrypt === "function") {
- let chunkSize = option.chunkSize || 117;
- let privateKey = this.getPrivateKey(key);
- const decryptor = new JSEncrypt;
- decryptor.setPrivateKey(privateKey);
- let uncrypted = "";
- uncrypted = decryptor.decryptUnicodeLong(data);
- return uncrypted
- } else {
- return false
- }
- },
- encode: function(data, key, option) {
- option = option || {};
- if (typeof JSEncrypt === "function") {
- let chunkSize = option.chunkSize || 117;
- let publicKey = this.getPublicKey(key);
- const encryptor = new JSEncrypt;
- encryptor.setPublicKey(publicKey);
- let encrypted = "";
- encrypted = encryptor.encryptUnicodeLong(data);
- return encrypted
- } else {
- return false
- }
- },
- fixKey(key, prefix, endfix) {
- if (!key.includes(prefix)) {
- key = prefix + key
- }
- if (!key.includes(endfix)) {
- key += endfix
- }
- return key
- },
- getPrivateKey(key) {
- let prefix = "-----BEGIN RSA PRIVATE KEY-----";
- let endfix = "-----END RSA PRIVATE KEY-----";
- return this.fixKey(key, prefix, endfix)
- },
- getPublicKey(key) {
- let prefix = "-----BEGIN PUBLIC KEY-----";
- let endfix = "-----END PUBLIC KEY-----";
- return this.fixKey(key, prefix, endfix)
- }
-};
-
-function getProxyUrl() {
- if (typeof getProxy === "function") {
- return getProxy(true)
- } else {
- return "http://127.0.0.1:9978/proxy?do=js"
- }
-}
-
-function fixAdM3u8(m3u8_text, m3u8_url, ad_remove) {
- if (!m3u8_text && !m3u8_url || !m3u8_text && m3u8_url && !m3u8_url.startsWith("http")) {
- return ""
- }
- if (!m3u8_text) {
- log("m3u8_url:" + m3u8_url);
- m3u8_text = request(m3u8_url)
- }
- log("len(m3u8_text):" + m3u8_text.length);
- if (!ad_remove) {
- return m3u8_text
- }
- if (ad_remove.startsWith("reg:")) {
- ad_remove = ad_remove.slice(4)
- } else if (ad_remove.startsWith("js:")) {
- ad_remove = ad_remove.slice(3)
- }
- let m3u8_start = m3u8_text.slice(0, m3u8_text.indexOf("#EXTINF")).trim();
- let m3u8_body = m3u8_text.slice(m3u8_text.indexOf("#EXTINF"), m3u8_text.indexOf("#EXT-X-ENDLIST")).trim();
- let m3u8_end = m3u8_text.slice(m3u8_text.indexOf("#EXT-X-ENDLIST")).trim();
- let murls = [];
- let m3_body_list = m3u8_body.split("\n");
- let m3_len = m3_body_list.length;
- let i = 0;
- while (i < m3_len) {
- let mi = m3_body_list[i];
- let mi_1 = m3_body_list[i + 1];
- if (mi.startsWith("#EXTINF")) {
- murls.push([mi, mi_1].join("&"));
- i += 2
- } else if (mi.startsWith("#EXT-X-DISCONTINUITY")) {
- let mi_2 = m3_body_list[i + 2];
- murls.push([mi, mi_1, mi_2].join("&"));
- i += 3
- } else {
- break
- }
- }
- let new_m3u8_body = [];
- for (let murl of murls) {
- if (ad_remove && new RegExp(ad_remove).test(murl)) {} else {
- let murl_list = murl.split("&");
- if (!murl_list[murl_list.length - 1].startsWith("http") && m3u8_url.startsWith("http")) {
- murl_list[murl_list.length - 1] = urljoin(m3u8_url, murl_list[murl_list.length - 1])
- }
- murl_list.forEach(it => {
- new_m3u8_body.push(it)
- })
- }
- }
- new_m3u8_body = new_m3u8_body.join("\n").trim();
- m3u8_text = [m3u8_start, new_m3u8_body, m3u8_end].join("\n").trim();
- return m3u8_text
-}
-
-function fixAdM3u8Ai(m3u8_url, headers) {
- let ts = (new Date).getTime();
- let option = headers ? {
- headers: headers
- } : {};
-
- function b(s1, s2) {
- let i = 0;
- while (i < s1.length) {
- if (s1[i] !== s2[i]) {
- break
- }
- i++
- }
- return i
- }
-
- function reverseString(str) {
- return str.split("").reverse().join("")
- }
- let m3u8 = request(m3u8_url, option);
- m3u8 = m3u8.trim().split("\n").map(it => it.startsWith("#") ? it : urljoin(m3u8_url, it)).join("\n");
- m3u8 = m3u8.replace(/\n\n/gi, "\n");
- let last_url = m3u8.split("\n").slice(-1)[0];
- if (last_url.length < 5) {
- last_url = m3u8.split("\n").slice(-2)[0]
- }
- if (last_url.includes(".m3u8") && last_url !== m3u8_url) {
- m3u8_url = urljoin2(m3u8_url, last_url);
- log("嵌套的m3u8_url:" + m3u8_url);
- m3u8 = request(m3u8_url, option)
- }
- let s = m3u8.trim().split("\n").filter(it => it.trim()).join("\n");
- let ss = s.split("\n");
- if (m3u8_url.indexOf("ffzy") > 0) {
- let j = 0,
- k1 = 0,
- m = 0,
- n = 0,
- t = 0;
- let s2 = "";
- for (let i = 0; i < ss.length; i++) {
- let s = ss[i];
- let s1 = "";
- if (s.startsWith("#EXTINF")) {
- s1 = s.slice(8);
- n++;
- if (n == 1) k1 = i;
- if (s2.indexOf(s1) == -1) {
- s2 = s2 + s1;
- m++
- }
- t = t + parseFloat(s1);
- i++;
- s = ss[i]
- }
- if (s.startsWith("#EXT-X-DISCONTINUITY")) {
- if (n == 5) {
- log("n:" + n);
- log("m:" + m);
- for (let j = k1; j < k1 + n * 2; j++) {
- log(ss[j])
- }
- log("广告位置:" + k1);
- log("数据条数:" + n);
- log("数据种类:" + m);
- log("广告时间:" + t.toFixed(5));
- ss.splice(k1, 2 * n + 1);
- i = i - 2 * n + 1
- }
- t = 0;
- m = 0;
- n = 0;
- s2 = ""
- }
- }
- }
- let firststr = "";
- let maxl = 0;
- let kk = 0;
- let kkk1 = 1;
- let kkk2 = 0;
- let secondstr = "";
- for (let i = 0; i < ss.length; i++) {
- let s = ss[i];
- if (!s.startsWith("#")) {
- if (kk == 0) firststr = s;
- if (kk > 0) {
- if (maxl > b(firststr, s) + 1) {
- if (secondstr.length < 5) secondstr = s;
- kkk2++
- } else {
- maxl = b(firststr, s);
- kkk1++
- }
- }
- kk++;
- if (kk >= 30) break
- }
- }
- if (kkk2 > kkk1) firststr = secondstr;
- let firststrlen = firststr.length;
- let ml = Math.round(ss.length / 2).toString().length;
- let maxc = 0;
- let laststr = ss.toReversed().find(x => {
- if (!x.startsWith("#")) {
- let k = b(reverseString(firststr), reverseString(x));
- maxl = b(firststr, x);
- maxc++;
- if (firststrlen - maxl <= ml + k || maxc > 10) {
- return true
- }
- }
- return false
- });
- log("最后一条切片:" + laststr);
- let ad_urls = [];
- for (let i = 0; i < ss.length; i++) {
- let s = ss[i];
- if (!s.startsWith("#")) {
- if (b(firststr, s) < maxl) {
- ad_urls.push(s);
- ss.splice(i - 1, 2);
- i = i - 2
- } else {
- ss[i] = urljoin(m3u8_url, s)
- }
- } else {
- ss[i] = s.replace(/URI=\"(.*)\"/, 'URI="' + urljoin(m3u8_url, "$1") + '"')
- }
- }
- log("处理的m3u8地址:" + m3u8_url);
- log("----广告地址----");
- log(ad_urls);
- m3u8 = ss.join("\n");
- log("处理耗时:" + ((new Date).getTime() - ts).toString());
- log(m3u8);
- return m3u8
-}
-
-function forceOrder(lists, key, option) {
- let start = Math.floor(lists.length / 2);
- let end = Math.min(lists.length - 1, start + 1);
- if (start >= end) {
- return lists
- }
- let first = lists[start];
- let second = lists[end];
- if (key) {
- try {
- first = first[key];
- second = second[key]
- } catch (e) {}
- }
- if (option && typeof option === "function") {
- try {
- first = option(first);
- second = option(second)
- } catch (e) {}
- }
- first += "";
- second += "";
- if (first.match(/(\d+)/) && second.match(/(\d+)/)) {
- let num1 = Number(first.match(/(\d+)/)[1]);
- let num2 = Number(second.match(/(\d+)/)[1]);
- if (num1 > num2) {
- lists.reverse()
- }
- }
- return lists
-}
-let VODS = [];
-let VOD = {};
-let TABS = [];
-let LISTS = [];
-
-function getQuery(url) {
- try {
- if (url.indexOf("?") > -1) {
- url = url.slice(url.indexOf("?") + 1)
- }
- let arr = url.split("#")[0].split("&");
- const resObj = {};
- arr.forEach(item => {
- let arr1 = item.split("=");
- let key = arr1[0];
- let value = arr1.slice(1).join("=");
- resObj[key] = value
- });
- return resObj
- } catch (err) {
- log(`getQuery发生错误:${e.message}`);
- return {}
- }
-}
-
-function urljoin(fromPath, nowPath) {
- fromPath = fromPath || "";
- nowPath = nowPath || "";
- return joinUrl(fromPath, nowPath)
-}
-var urljoin2 = urljoin;
-const defaultParser = {
- pdfh: pdfh,
- pdfa: pdfa,
- pd: pd
-};
-
-function pdfh2(html, parse) {
- let html2 = html;
- try {
- if (typeof html !== "string") {
- html2 = html.rr(html.ele).toString()
- }
- } catch (e) {
- print(`html对象转文本发生了错误:${e.message}`)
- }
- let result = defaultParser.pdfh(html2, parse);
- let option = parse.includes("&&") ? parse.split("&&").slice(-1)[0] : parse.split(" ").slice(-1)[0];
- if (/style/.test(option.toLowerCase()) && /url\(/.test(result)) {
- try {
- result = result.match(/url\((.*?)\)/)[1];
- result = result.replace(/^['|"](.*)['|"]$/, "$1")
- } catch (e) {}
- }
- return result
-}
-
-function pdfa2(html, parse) {
- let html2 = html;
- try {
- if (typeof html !== "string") {
- html2 = html.rr(html.ele).toString()
- }
- } catch (e) {
- print(`html对象转文本发生了错误:${e.message}`)
- }
- return defaultParser.pdfa(html2, parse)
-}
-
-function pd2(html, parse, uri) {
- let ret = pdfh2(html, parse);
- if (typeof uri === "undefined" || !uri) {
- uri = ""
- }
- if (DOM_CHECK_ATTR.test(parse) && !SPECIAL_URL.test(ret)) {
- if (/http/.test(ret)) {
- ret = ret.slice(ret.indexOf("http"))
- } else {
- ret = urljoin(MY_URL, ret)
- }
- }
- return ret
-}
-const parseTags = {
- jsp: {
- pdfh: pdfh2,
- pdfa: pdfa2,
- pd: pd2
- },
- json: {
- pdfh(html, parse) {
- if (!parse || !parse.trim()) {
- return ""
- }
- if (typeof html === "string") {
- html = JSON.parse(html)
- }
- parse = parse.trim();
- if (!parse.startsWith("$.")) {
- parse = "$." + parse
- }
- parse = parse.split("||");
- for (let ps of parse) {
- let ret = cheerio.jp(ps, html);
- if (Array.isArray(ret)) {
- ret = ret[0] || ""
- } else {
- ret = ret || ""
- }
- if (ret && typeof ret !== "string") {
- ret = ret.toString()
- }
- if (ret) {
- return ret
- }
- }
- return ""
- },
- pdfa(html, parse) {
- if (!parse || !parse.trim()) {
- return ""
- }
- if (typeof html === "string") {
- html = JSON.parse(html)
- }
- parse = parse.trim();
- if (!parse.startsWith("$.")) {
- parse = "$." + parse
- }
- let ret = cheerio.jp(parse, html);
- if (Array.isArray(ret) && Array.isArray(ret[0]) && ret.length === 1) {
- return ret[0] || []
- }
- return ret || []
- },
- pd(html, parse) {
- let ret = parseTags.json.pdfh(html, parse);
- if (ret) {
- return urljoin(MY_URL, ret)
- }
- return ret
- }
- },
- jq: {
- pdfh(html, parse) {
- if (!html || !parse || !parse.trim()) {
- return ""
- }
- parse = parse.trim();
- let result = defaultParser.pdfh(html, parse);
- return result
- },
- pdfa(html, parse) {
- if (!html || !parse || !parse.trim()) {
- return []
- }
- parse = parse.trim();
- let result = defaultParser.pdfa(html, parse);
- print(`pdfa解析${parse}=>${result.length}`);
- return result
- },
- pd(html, parse, base_url) {
- if (!html || !parse || !parse.trim()) {
- return ""
- }
- parse = parse.trim();
- base_url = base_url || MY_URL;
- return defaultParser.pd(html, parse, base_url)
- }
- },
- getParse(p0) {
- if (p0.startsWith("jsp:")) {
- return this.jsp
- } else if (p0.startsWith("json:")) {
- return this.json
- } else if (p0.startsWith("jq:")) {
- return this.jq
- } else {
- return this.jq
- }
- }
-};
-const stringify = JSON.stringify;
-const jsp = parseTags.jsp;
-const jq = parseTags.jq;
-
-function readFile(filePath) {
- filePath = filePath || "./uri.min.js";
- var fd = os.open(filePath);
- var buffer = new ArrayBuffer(1024);
- var len = os.read(fd, buffer, 0, 1024);
- console.log(len);
- let text = String.fromCharCode.apply(null, new Uint8Array(buffer));
- console.log(text);
- return text
-}
-
-function dealJson(html) {
- try {
- html = html.trim();
- if (!(html.startsWith("{") && html.endsWith("}") || html.startsWith("[") && html.endsWith("]"))) {
- html = "{" + html.match(/.*?\{(.*)\}/m)[1] + "}"
- }
- } catch (e) {}
- try {
- html = JSON.parse(html)
- } catch (e) {}
- return html
-}
-var OcrApi = {
- api: OCR_API,
- classification: function(img) {
- let code = "";
- try {
- log("通过drpy_ocr验证码接口过验证...");
- let html = "";
- if (this.api.endsWith("drpy/text")) {
- html = request(this.api, {
- data: {
- img: img
- },
- headers: {
- "User-Agent": PC_UA
- },
- method: "POST"
- }, true)
- } else {
- html = post(this.api, {
- body: img
- })
- }
- code = html || ""
- } catch (e) {
- log(`OCR识别验证码发生错误:${e.message}`)
- }
- return code
- }
-};
-
-function verifyCode(url) {
- let cnt = 0;
- let host = getHome(url);
- let cookie = "";
- while (cnt < OCR_RETRY) {
- try {
- let yzm_url = `${host}/index.php/verify/index.html`;
- console.log(`验证码链接:${yzm_url}`);
- let hhtml = request(yzm_url, {
- withHeaders: true,
- toBase64: true
- }, true);
- let json = JSON.parse(hhtml);
- if (!cookie) {
- let setCk = Object.keys(json).find(it => it.toLowerCase() === "set-cookie");
- cookie = setCk ? json[setCk].split(";")[0] : ""
- }
- console.log("cookie:" + cookie);
- let img = json.body;
- let code = OcrApi.classification(img);
- console.log(`第${cnt+1}次验证码识别结果:${code}`);
- let submit_url = `${host}/index.php/ajax/verify_check?type=search&verify=${code}`;
- console.log(submit_url);
- let html = request(submit_url, {
- headers: {
- Cookie: cookie
- },
- method: "POST"
- });
- html = JSON.parse(html);
- if (html.msg === "ok") {
- console.log(`第${cnt+1}次验证码提交成功`);
- return cookie
- } else if (html.msg !== "ok" && cnt + 1 >= OCR_RETRY) {
- cookie = ""
- }
- } catch (e) {
- console.log(`第${cnt+1}次验证码提交失败:${e.message}`);
- if (cnt + 1 >= OCR_RETRY) {
- cookie = ""
- }
- }
- cnt += 1
- }
- return cookie
-}
-
-function setItem(k, v) {
- local.set(RKEY, k, v);
- console.log(`规则${RKEY}设置${k} => ${v}`)
-}
-
-function getItem(k, v) {
- return local.get(RKEY, k) || v
-}
-
-function clearItem(k) {
- local.delete(RKEY, k)
-}
-
-function getHome(url) {
- if (!url) {
- return ""
- }
- let tmp = url.split("//");
- url = tmp[0] + "//" + tmp[1].split("/")[0];
- try {
- url = decodeURIComponent(url)
- } catch (e) {}
- return url
-}
-
-function buildUrl(url, obj) {
- obj = obj || {};
- if (url.indexOf("?") < 0) {
- url += "?"
- }
- let param_list = [];
- let keys = Object.keys(obj);
- keys.forEach(it => {
- param_list.push(it + "=" + obj[it])
- });
- let prs = param_list.join("&");
- if (keys.length > 0 && !url.endsWith("?")) {
- url += "&"
- }
- url += prs;
- return url
-}
-
-function $require(url) {
- eval(request(url))
-}
-
-function keysToLowerCase(obj) {
- return Object.keys(obj).reduce((result, key) => {
- const newKey = key.toLowerCase();
- result[newKey] = obj[key];
- return result
- }, {})
-}
-
-function parseQueryString(query) {
- const params = {};
- query.split("&").forEach(function(part) {
- const regex = /^(.*?)=(.*)/;
- const match = part.match(regex);
- if (match) {
- const key = decodeURIComponent(match[1]);
- const value = decodeURIComponent(match[2]);
- params[key] = value
- }
- });
- return params
-}
-
-function encodeIfContainsSpecialChars(value) {
- const specialChars = ":/?#[]@!$'()*+,;=%";
- if (specialChars.split("").some(char => value.includes(char))) {
- return encodeURIComponent(value)
- }
- return value
-}
-
-function objectToQueryString(obj) {
- const encoded = [];
- for (let key in obj) {
- if (obj.hasOwnProperty(key)) {
- encoded.push(encodeURIComponent(key) + "=" + encodeIfContainsSpecialChars(obj[key]))
- }
- }
- return encoded.join("&")
-}
-
-function request(url, obj, ocr_flag) {
- ocr_flag = ocr_flag || false;
- if (typeof obj === "undefined" || !obj || obj === {}) {
- if (!fetch_params || !fetch_params.headers) {
- let headers = {
- "User-Agent": MOBILE_UA
- };
- if (rule.headers) {
- Object.assign(headers, rule.headers)
- }
- if (!fetch_params) {
- fetch_params = {}
- }
- fetch_params.headers = headers
- }
- if (!fetch_params.headers.Referer) {
- fetch_params.headers.Referer = getHome(url)
- }
- obj = fetch_params
- } else {
- let headers = obj.headers || {};
- let keys = Object.keys(headers).map(it => it.toLowerCase());
- if (!keys.includes("user-agent")) {
- headers["User-Agent"] = MOBILE_UA;
- if (typeof fetch_params === "object" && fetch_params && fetch_params.headers) {
- let fetch_headers = keysToLowerCase(fetch_params.headers);
- if (fetch_headers["user-agent"]) {
- headers["User-Agent"] = fetch_headers["user-agent"]
- }
- }
- }
- if (!keys.includes("referer")) {
- headers["Referer"] = getHome(url)
- }
- obj.headers = headers
- }
- if (rule.encoding && rule.encoding !== "utf-8" && !ocr_flag) {
- if (!obj.headers.hasOwnProperty("Content-Type") && !obj.headers.hasOwnProperty("content-type")) {
- obj.headers["Content-Type"] = "text/html; charset=" + rule.encoding
- }
- }
- if (typeof obj.body != "undefined" && obj.body && typeof obj.body === "string") {
- if (!obj.headers.hasOwnProperty("Content-Type") && !obj.headers.hasOwnProperty("content-type")) {
- obj.headers["Content-Type"] = "application/x-www-form-urlencoded; charset=" + rule.encoding
- }
- } else if (typeof obj.body != "undefined" && obj.body && typeof obj.body === "object") {
- obj.data = obj.body;
- delete obj.body
- }
- if (!url) {
- return obj.withHeaders ? "{}" : ""
- }
- if (obj.toBase64) {
- obj.buffer = 2;
- delete obj.toBase64
- }
- if (obj.redirect === false) {
- obj.redirect = 0
- }
- if (obj.headers.hasOwnProperty("Content-Type") || obj.headers.hasOwnProperty("content-type")) {
- let _contentType = obj.headers["Content-Type"] || obj.headers["content-type"] || "";
- if (_contentType.includes("application/x-www-form-urlencoded")) {
- log("custom body is application/x-www-form-urlencoded");
- if (typeof obj.body == "string") {
- let temp_obj = parseQueryString(obj.body);
- console.log(JSON.stringify(temp_obj))
- }
- }
- }
- console.log(JSON.stringify(obj.headers));
- console.log("request:" + url + `|method:${obj.method||"GET"}|body:${obj.body||""}`);
- let res = req(url, obj);
- let html = res.content || "";
- if (obj.withHeaders) {
- let htmlWithHeaders = res.headers;
- htmlWithHeaders.body = html;
- return JSON.stringify(htmlWithHeaders)
- } else {
- return html
- }
-}
-
-function post(url, obj) {
- obj = obj || {};
- obj.method = "POST";
- return request(url, obj)
-}
-
-function reqCookie(url, obj, all_cookie) {
- obj = obj || {};
- obj.withHeaders = true;
- all_cookie = all_cookie || false;
- let html = request(url, obj);
- let json = JSON.parse(html);
- let setCk = Object.keys(json).find(it => it.toLowerCase() === "set-cookie");
- let cookie = setCk ? json[setCk] : "";
- if (Array.isArray(cookie)) {
- cookie = cookie.join(";")
- }
- if (!all_cookie) {
- cookie = cookie.split(";")[0]
- }
- html = json.body;
- return {
- cookie: cookie,
- html: html
- }
-}
-fetch = request;
-print = function(data) {
- data = data || "";
- if (typeof data == "object" && Object.keys(data).length > 0) {
- try {
- data = JSON.stringify(data);
- console.log(data)
- } catch (e) {
- console.log(typeof data + ":" + data.length);
- return
- }
- } else if (typeof data == "object" && Object.keys(data).length < 1) {
- console.log("null object")
- } else {
- console.log(data)
- }
-};
-log = print;
-
-function checkHtml(html, url, obj) {
- if (/\?btwaf=/.test(html)) {
- let btwaf = html.match(/btwaf(.*?)"/)[1];
- url = url.split("#")[0] + "?btwaf" + btwaf;
- print("宝塔验证访问链接:" + url);
- html = request(url, obj)
- }
- return html
-}
-
-function getCode(url, obj) {
- let html = request(url, obj);
- html = checkHtml(html, url, obj);
- return html
-}
-
-function getHtml(url) {
- let obj = {};
- if (rule.headers) {
- obj.headers = rule.headers
- }
- let cookie = getItem(RULE_CK, "");
- if (cookie) {
- if (obj.headers && !Object.keys(obj.headers).map(it => it.toLowerCase()).includes("cookie")) {
- log("历史无cookie,新增过验证后的cookie");
- obj.headers["Cookie"] = cookie
- } else if (obj.headers && obj.headers.cookie && obj.headers.cookie !== cookie) {
- obj.headers["Cookie"] = cookie;
- log("历史有小写过期的cookie,更新过验证后的cookie")
- } else if (obj.headers && obj.headers.Cookie && obj.headers.Cookie !== cookie) {
- obj.headers["Cookie"] = cookie;
- log("历史有大写过期的cookie,更新过验证后的cookie")
- } else if (!obj.headers) {
- obj.headers = {
- Cookie: cookie
- };
- log("历史无headers,更新过验证后的含cookie的headers")
- }
- }
- let html = getCode(url, obj);
- return html
-}
-
-function homeParse(homeObj) {
- fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
- let classes = [];
- if (homeObj.class_name && homeObj.class_url) {
- let names = homeObj.class_name.split("&");
- let urls = homeObj.class_url.split("&");
- let cnt = Math.min(names.length, urls.length);
- for (let i = 0; i < cnt; i++) {
- classes.push({
- type_id: urls[i],
- type_name: names[i]
- })
- }
- }
- if (homeObj.class_parse) {
- if (homeObj.class_parse.startsWith("js:")) {
- var input = homeObj.MY_URL;
- try {
- eval(homeObj.class_parse.replace("js:", ""));
- if (Array.isArray(input)) {
- classes = input
- }
- } catch (e) {
- log(`通过js动态获取分类发生了错误:${e.message}`)
- }
- } else {
- let p = homeObj.class_parse.split(";");
- let p0 = p[0];
- let _ps = parseTags.getParse(p0);
- let is_json = p0.startsWith("json:");
- _pdfa = _ps.pdfa;
- _pdfh = _ps.pdfh;
- _pd = _ps.pd;
- MY_URL = rule.url;
- if (is_json) {
- try {
- let cms_cate_url = homeObj.MY_URL.replace("ac=detail", "ac=list");
- let html = homeObj.home_html || getHtml(cms_cate_url);
- if (html) {
- if (cms_cate_url === homeObj.MY_URL) {
- homeHtmlCache = html
- }
- let list = _pdfa(html, p0.replace("json:", ""));
- if (list && list.length > 0) {
- classes = list
- }
- }
- } catch (e) {
- console.log(e.message)
- }
- } else if (p.length >= 3 && !is_json) {
- try {
- let html = homeObj.home_html || getHtml(homeObj.MY_URL);
- if (html) {
- homeHtmlCache = html;
- let list = _pdfa(html, p0);
- if (list && list.length > 0) {
- list.forEach((it, idex) => {
- try {
- let name = _pdfh(it, p[1]);
- if (homeObj.cate_exclude && new RegExp(homeObj.cate_exclude).test(name)) {
- return
- }
- let url = _pd(it, p[2]);
- if (p.length > 3 && p[3] && !homeObj.home_html) {
- let exp = new RegExp(p[3]);
- url = url.match(exp)[1]
- }
- classes.push({
- type_id: url.trim(),
- type_name: name.trim()
- })
- } catch (e) {
- console.log(`分类列表定位第${idex}个元素正常报错:${e.message}`)
- }
- })
- }
- }
- } catch (e) {
- console.log(e.message)
- }
- }
- }
- }
- classes = classes.filter(it => !homeObj.cate_exclude || !new RegExp(homeObj.cate_exclude).test(it.type_name));
- let resp = {
- class: classes
- };
- if (homeObj.filter) {
- resp.filters = homeObj.filter
- }
- console.log(JSON.stringify(resp));
- return JSON.stringify(resp)
-}
-
-function getPP(p, pn, pp, ppn) {
- try {
- let ps = p[pn] === "*" && pp.length > ppn ? pp[ppn] : p[pn];
- return ps
- } catch (e) {
- return ""
- }
-}
-
-function homeVodParse(homeVodObj) {
- fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
- let d = [];
- MY_URL = homeVodObj.homeUrl;
- console.log(MY_URL);
- let t1 = (new Date).getTime();
- let p = homeVodObj.推荐;
- print("p:" + p);
- if (p === "*" && rule.一级) {
- p = rule.一级;
- homeVodObj.double = false
- }
- if (!p || typeof p !== "string") {
- return "{}"
- }
- p = p.trim();
- let pp = rule.一级 ? rule.一级.split(";") : [];
- if (p.startsWith("js:")) {
- const TYPE = "home";
- var input = MY_URL;
- HOST = rule.host;
- eval(p.replace("js:", ""));
- d = VODS
- } else {
- p = p.split(";");
- if (!homeVodObj.double && p.length < 5) {
- return "{}"
- } else if (homeVodObj.double && p.length < 6) {
- return "{}"
- }
- let p0 = getPP(p, 0, pp, 0);
- let _ps = parseTags.getParse(p0);
- _pdfa = _ps.pdfa;
- _pdfh = _ps.pdfh;
- _pd = _ps.pd;
- let is_json = p0.startsWith("json:");
- p0 = p0.replace(/^(jsp:|json:|jq:)/, "");
- let html = homeHtmlCache || getHtml(MY_URL);
- homeHtmlCache = undefined;
- if (is_json) {
- html = dealJson(html)
- }
- try {
- console.log("double:" + homeVodObj.double);
- if (homeVodObj.double) {
- let items = _pdfa(html, p0);
- let p1 = getPP(p, 1, pp, 0);
- let p2 = getPP(p, 2, pp, 1);
- let p3 = getPP(p, 3, pp, 2);
- let p4 = getPP(p, 4, pp, 3);
- let p5 = getPP(p, 5, pp, 4);
- let p6 = getPP(p, 6, pp, 5);
- for (let item of items) {
- let items2 = _pdfa(item, p1);
- for (let item2 of items2) {
- try {
- let title = _pdfh(item2, p2);
- let img = "";
- try {
- img = _pd(item2, p3)
- } catch (e) {}
- let desc = "";
- try {
- desc = _pdfh(item2, p4)
- } catch (e) {}
- let links = [];
- for (let _p5 of p5.split("+")) {
- let link = !homeVodObj.detailUrl ? _pd(item2, _p5, MY_URL) : _pdfh(item2, _p5);
- links.push(link)
- }
- let content;
- if (p.length > 6 && p[6]) {
- content = _pdfh(item2, p6)
- } else {
- content = ""
- }
- let vid = links.join("$");
- if (rule.二级 === "*") {
- vid = vid + "@@" + title + "@@" + img
- }
- let vod = {
- vod_name: title,
- vod_pic: img,
- vod_remarks: desc,
- vod_content: content,
- vod_id: vid
- };
- d.push(vod)
- } catch (e) {
- console.log(`首页列表双层定位处理发生错误:${e.message}`)
- }
- }
- }
- } else {
- let items = _pdfa(html, p0);
- let p1 = getPP(p, 1, pp, 1);
- let p2 = getPP(p, 2, pp, 2);
- let p3 = getPP(p, 3, pp, 3);
- let p4 = getPP(p, 4, pp, 4);
- let p5 = getPP(p, 5, pp, 5);
- for (let item of items) {
- try {
- let title = _pdfh(item, p1);
- let img = "";
- try {
- img = _pd(item, p2, MY_URL)
- } catch (e) {}
- let desc = "";
- try {
- desc = _pdfh(item, p3)
- } catch (e) {}
- let links = [];
- for (let _p5 of p4.split("+")) {
- let link = !homeVodObj.detailUrl ? _pd(item, _p5, MY_URL) : _pdfh(item, _p5);
- links.push(link)
- }
- let content;
- if (p.length > 5 && p[5]) {
- content = _pdfh(item, p5)
- } else {
- content = ""
- }
- let vid = links.join("$");
- if (rule.二级 === "*") {
- vid = vid + "@@" + title + "@@" + img
- }
- let vod = {
- vod_name: title,
- vod_pic: img,
- vod_remarks: desc,
- vod_content: content,
- vod_id: vid
- };
- d.push(vod)
- } catch (e) {
- console.log(`首页列表单层定位处理发生错误:${e.message}`)
- }
- }
- }
- } catch (e) {}
- }
- let t2 = (new Date).getTime();
- console.log("加载首页推荐耗时:" + (t2 - t1) + "毫秒");
- if (rule.图片替换) {
- if (rule.图片替换.startsWith("js:")) {
- d.forEach(it => {
- try {
- var input = it.vod_pic;
- eval(rule.图片替换.trim().replace("js:", ""));
- it.vod_pic = input
- } catch (e) {
- log(`图片:${it.vod_pic}替换错误:${e.message}`)
- }
- })
- } else if (rule.图片替换.includes("=>")) {
- let replace_from = rule.图片替换.split("=>")[0];
- let replace_to = rule.图片替换.split("=>")[1];
- d.forEach(it => {
- if (it.vod_pic && it.vod_pic.startsWith("http")) {
- it.vod_pic = it.vod_pic.replace(replace_from, replace_to)
- }
- })
- }
- }
- if (rule.图片来源) {
- d.forEach(it => {
- if (it.vod_pic && it.vod_pic.startsWith("http")) {
- it.vod_pic = it.vod_pic + rule.图片来源
- }
- })
- }
- if (d.length > 0) {
- print(d.slice(0, 2))
- }
- return JSON.stringify({
- list: d
- })
-}
-
-function categoryParse(cateObj) {
- fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
- let p = cateObj.一级;
- if (!p || typeof p !== "string") {
- return "{}"
- }
- let d = [];
- let url = cateObj.url.replaceAll("fyclass", cateObj.tid);
- if (cateObj.pg === 1 && url.includes("[") && url.includes("]")) {
- url = url.split("[")[1].split("]")[0]
- } else if (cateObj.pg > 1 && url.includes("[") && url.includes("]")) {
- url = url.split("[")[0]
- }
- if (rule.filter_url) {
- if (!/fyfilter/.test(url)) {
- if (!url.endsWith("&") && !rule.filter_url.startsWith("&")) {
- url += "&"
- }
- url += rule.filter_url
- } else {
- url = url.replace("fyfilter", rule.filter_url)
- }
- url = url.replaceAll("fyclass", cateObj.tid);
- let fl = cateObj.filter ? cateObj.extend : {};
- if (rule.filter_def && typeof rule.filter_def === "object") {
- try {
- if (Object.keys(rule.filter_def).length > 0 && rule.filter_def.hasOwnProperty(cateObj.tid)) {
- let self_fl_def = rule.filter_def[cateObj.tid];
- if (self_fl_def && typeof self_fl_def === "object") {
- let fl_def = JSON.parse(JSON.stringify(self_fl_def));
- fl = Object.assign(fl_def, fl)
- }
- }
- } catch (e) {
- print(`合并不同分类对应的默认筛选出错:${e.message}`)
- }
- }
- let new_url;
- new_url = cheerio.jinja2(url, {
- fl: fl,
- fyclass: cateObj.tid
- });
- url = new_url
- }
- if (/fypage/.test(url)) {
- if (url.includes("(") && url.includes(")")) {
- let url_rep = url.match(/.*?\((.*)\)/)[1];
- let cnt_page = url_rep.replaceAll("fypage", cateObj.pg);
- let cnt_pg = eval(cnt_page);
- url = url.replaceAll(url_rep, cnt_pg).replaceAll("(", "").replaceAll(")", "")
- } else {
- url = url.replaceAll("fypage", cateObj.pg)
- }
- }
- MY_URL = url;
- console.log(MY_URL);
- p = p.trim();
- const MY_CATE = cateObj.tid;
- if (p.startsWith("js:")) {
- var MY_FL = cateObj.extend;
- const TYPE = "cate";
- var input = MY_URL;
- const MY_PAGE = cateObj.pg;
- var desc = "";
- eval(p.trim().replace("js:", ""));
- d = VODS
- } else {
- p = p.split(";");
- if (p.length < 5) {
- return "{}"
- }
- let _ps = parseTags.getParse(p[0]);
- _pdfa = _ps.pdfa;
- _pdfh = _ps.pdfh;
- _pd = _ps.pd;
- let is_json = p[0].startsWith("json:");
- p[0] = p[0].replace(/^(jsp:|json:|jq:)/, "");
- try {
- let html = getHtml(MY_URL);
- if (html) {
- if (is_json) {
- html = dealJson(html)
- }
- let list = _pdfa(html, p[0]);
- list.forEach(it => {
- let links = p[4].split("+").map(p4 => {
- return !rule.detailUrl ? _pd(it, p4, MY_URL) : _pdfh(it, p4)
- });
- let link = links.join("$");
- let vod_id = rule.detailUrl ? MY_CATE + "$" + link : link;
- let vod_name = _pdfh(it, p[1]).replace(/\n|\t/g, "").trim();
- let vod_pic = _pd(it, p[2], MY_URL);
- if (rule.二级 === "*") {
- vod_id = vod_id + "@@" + vod_name + "@@" + vod_pic
- }
- d.push({
- vod_id: vod_id,
- vod_name: vod_name,
- vod_pic: vod_pic,
- vod_remarks: _pdfh(it, p[3]).replace(/\n|\t/g, "").trim()
- })
- })
- }
- } catch (e) {
- console.log(e.message)
- }
- }
- if (rule.图片替换) {
- if (rule.图片替换.startsWith("js:")) {
- d.forEach(it => {
- try {
- var input = it.vod_pic;
- eval(rule.图片替换.trim().replace("js:", ""));
- it.vod_pic = input
- } catch (e) {
- log(`图片:${it.vod_pic}替换错误:${e.message}`)
- }
- })
- } else if (rule.图片替换.includes("=>")) {
- let replace_from = rule.图片替换.split("=>")[0];
- let replace_to = rule.图片替换.split("=>")[1];
- d.forEach(it => {
- if (it.vod_pic && it.vod_pic.startsWith("http")) {
- it.vod_pic = it.vod_pic.replace(replace_from, replace_to)
- }
- })
- }
- }
- if (rule.图片来源) {
- d.forEach(it => {
- if (it.vod_pic && it.vod_pic.startsWith("http")) {
- it.vod_pic = it.vod_pic + rule.图片来源
- }
- })
- }
- if (d.length > 0) {
- print(d.slice(0, 2))
- }
- let pagecount = 0;
- if (rule.pagecount && typeof rule.pagecount === "object" && rule.pagecount.hasOwnProperty(MY_CATE)) {
- print(`MY_CATE:${MY_CATE},pagecount:${JSON.stringify(rule.pagecount)}`);
- pagecount = parseInt(rule.pagecount[MY_CATE])
- }
- let nodata = {
- list: [{
- vod_name: "无数据,防无限请求",
- vod_id: "no_data",
- vod_remarks: "不要点,会崩的",
- vod_pic: "https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/404.jpg"
- }],
- total: 1,
- pagecount: 1,
- page: 1,
- limit: 1
- };
- let vod = d.length < 1 ? JSON.stringify(nodata) : JSON.stringify({
- page: parseInt(cateObj.pg),
- pagecount: pagecount || 999,
- limit: 20,
- total: 999,
- list: d
- });
- return vod
-}
-
-function searchParse(searchObj) {
- fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
- let d = [];
- if (!searchObj.searchUrl) {
- return "{}"
- }
- if (rule.searchNoPage && Number(searchObj.pg) > 1) {
- return "{}"
- }
- let p = searchObj.搜索 === "*" && rule.一级 ? rule.一级 : searchObj.搜索;
- if (!p || typeof p !== "string") {
- return "{}"
- }
- p = p.trim();
- let pp = rule.一级 ? rule.一级.split(";") : [];
- let url = searchObj.searchUrl.replaceAll("**", searchObj.wd);
- if (searchObj.pg === 1 && url.includes("[") && url.includes("]") && !url.includes("#")) {
- url = url.split("[")[1].split("]")[0]
- } else if (searchObj.pg > 1 && url.includes("[") && url.includes("]") && !url.includes("#")) {
- url = url.split("[")[0]
- }
- if (/fypage/.test(url)) {
- if (url.includes("(") && url.includes(")")) {
- let url_rep = url.match(/.*?\((.*)\)/)[1];
- let cnt_page = url_rep.replaceAll("fypage", searchObj.pg);
- let cnt_pg = eval(cnt_page);
- url = url.replaceAll(url_rep, cnt_pg).replaceAll("(", "").replaceAll(")", "")
- } else {
- url = url.replaceAll("fypage", searchObj.pg)
- }
- }
- MY_URL = url;
- console.log(MY_URL);
- if (p.startsWith("js:")) {
- const TYPE = "search";
- const MY_PAGE = searchObj.pg;
- const KEY = searchObj.wd;
- var input = MY_URL;
- var detailUrl = rule.detailUrl || "";
- eval(p.trim().replace("js:", ""));
- d = VODS
- } else {
- p = p.split(";");
- if (p.length < 5) {
- return "{}"
- }
- let p0 = getPP(p, 0, pp, 0);
- let _ps = parseTags.getParse(p0);
- _pdfa = _ps.pdfa;
- _pdfh = _ps.pdfh;
- _pd = _ps.pd;
- let is_json = p0.startsWith("json:");
- p0 = p0.replace(/^(jsp:|json:|jq:)/, "");
- try {
- let req_method = MY_URL.split(";").length > 1 ? MY_URL.split(";")[1].toLowerCase() : "get";
- let html;
- if (req_method === "post") {
- let rurls = MY_URL.split(";")[0].split("#");
- let rurl = rurls[0];
- let params = rurls.length > 1 ? rurls[1] : "";
- print(`post=》rurl:${rurl},params:${params}`);
- let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
- let postData = {
- body: params
- };
- Object.assign(_fetch_params, postData);
- html = post(rurl, _fetch_params)
- } else if (req_method === "postjson") {
- let rurls = MY_URL.split(";")[0].split("#");
- let rurl = rurls[0];
- let params = rurls.length > 1 ? rurls[1] : "";
- print(`postjson-》rurl:${rurl},params:${params}`);
- try {
- params = JSON.parse(params)
- } catch (e) {
- params = "{}"
- }
- let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
- let postData = {
- body: params
- };
- Object.assign(_fetch_params, postData);
- html = post(rurl, _fetch_params)
- } else {
- html = getHtml(MY_URL)
- }
- if (html) {
- let search_tag = rule.搜索验证标识 || "系统安全验证|输入验证码";
- if (new RegExp(search_tag).test(html)) {
- let cookie = verifyCode(MY_URL);
- if (cookie) {
- console.log(`本次成功过验证,cookie:${cookie}`);
- setItem(RULE_CK, cookie)
- } else {
- console.log(`本次自动过搜索验证失败,cookie:${cookie}`)
- }
- html = getHtml(MY_URL)
- }
- if (!html.includes(searchObj.wd)) {
- console.log("搜索结果源码未包含关键字,疑似搜索失败,正为您打印结果源码");
- console.log(html)
- }
- if (is_json) {
- html = dealJson(html)
- }
- let list = _pdfa(html, p0);
- let p1 = getPP(p, 1, pp, 1);
- let p2 = getPP(p, 2, pp, 2);
- let p3 = getPP(p, 3, pp, 3);
- let p4 = getPP(p, 4, pp, 4);
- let p5 = getPP(p, 5, pp, 5);
- list.forEach(it => {
- let links = p4.split("+").map(_p4 => {
- return !rule.detailUrl ? _pd(it, _p4, MY_URL) : _pdfh(it, _p4)
- });
- let link = links.join("$");
- let content;
- if (p.length > 5 && p[5]) {
- content = _pdfh(it, p5)
- } else {
- content = ""
- }
- let vod_id = link;
- let vod_name = _pdfh(it, p1).replace(/\n|\t/g, "").trim();
- let vod_pic = _pd(it, p2, MY_URL);
- if (rule.二级 === "*") {
- vod_id = vod_id + "@@" + vod_name + "@@" + vod_pic
- }
- let ob = {
- vod_id: vod_id,
- vod_name: vod_name,
- vod_pic: vod_pic,
- vod_remarks: _pdfh(it, p3).replace(/\n|\t/g, "").trim(),
- vod_content: content.replace(/\n|\t/g, "").trim()
- };
- d.push(ob)
- })
- }
- } catch (e) {
- print(`搜索发生错误:${e.message}`);
- return "{}"
- }
- }
- if (rule.图片替换) {
- if (rule.图片替换.startsWith("js:")) {
- d.forEach(it => {
- try {
- var input = it.vod_pic;
- eval(rule.图片替换.trim().replace("js:", ""));
- it.vod_pic = input
- } catch (e) {
- log(`图片:${it.vod_pic}替换错误:${e.message}`)
- }
- })
- } else if (rule.图片替换.includes("=>")) {
- let replace_from = rule.图片替换.split("=>")[0];
- let replace_to = rule.图片替换.split("=>")[1];
- d.forEach(it => {
- if (it.vod_pic && it.vod_pic.startsWith("http")) {
- it.vod_pic = it.vod_pic.replace(replace_from, replace_to)
- }
- })
- }
- }
- if (rule.图片来源) {
- d.forEach(it => {
- if (it.vod_pic && it.vod_pic.startsWith("http")) {
- it.vod_pic = it.vod_pic + rule.图片来源
- }
- })
- }
- return JSON.stringify({
- page: parseInt(searchObj.pg),
- pagecount: 10,
- limit: 20,
- total: 100,
- list: d
- })
-}
-
-function detailParse(detailObj) {
- let t1 = (new Date).getTime();
- fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
- let orId = detailObj.orId;
- let vod_name = "片名";
- let vod_pic = "";
- let vod_id = orId;
- if (rule.二级 === "*") {
- let extra = orId.split("@@");
- vod_name = extra.length > 1 ? extra[1] : vod_name;
- vod_pic = extra.length > 2 ? extra[2] : vod_pic
- }
- let vod = {
- vod_id: vod_id,
- vod_name: vod_name,
- vod_pic: vod_pic,
- type_name: "类型",
- vod_year: "年份",
- vod_area: "地区",
- vod_remarks: "更新信息",
- vod_actor: "主演",
- vod_director: "导演",
- vod_content: "简介"
- };
- let p = detailObj.二级;
- let url = detailObj.url;
- let detailUrl = detailObj.detailUrl;
- let fyclass = detailObj.fyclass;
- let tab_exclude = detailObj.tab_exclude;
- let html = detailObj.html || "";
- MY_URL = url;
- if (detailObj.二级访问前) {
- try {
- print(`尝试在二级访问前执行代码:${detailObj.二级访问前}`);
- eval(detailObj.二级访问前.trim().replace("js:", ""))
- } catch (e) {
- print(`二级访问前执行代码出现错误:${e.message}`)
- }
- }
- if (p === "*") {
- vod.vod_play_from = "在线播放";
- vod.vod_remarks = detailUrl;
- vod.vod_actor = "没有二级,只有一级链接直接嗅探播放";
- vod.vod_content = MY_URL;
- vod.vod_play_url = "嗅探播放$" + MY_URL.split("@@")[0]
- } else if (typeof p === "string" && p.trim().startsWith("js:")) {
- const TYPE = "detail";
- var input = MY_URL;
- var play_url = "";
- eval(p.trim().replace("js:", ""));
- vod = VOD;
- console.log(JSON.stringify(vod))
- } else if (p && typeof p === "object") {
- let tt1 = (new Date).getTime();
- if (!html) {
- html = getHtml(MY_URL)
- }
- print(`二级${MY_URL}仅获取源码耗时:${(new Date).getTime()-tt1}毫秒`);
- let _ps;
- if (p.is_json) {
- print("二级是json");
- _ps = parseTags.json;
- html = dealJson(html)
- } else if (p.is_jsp) {
- print("二级是jsp");
- _ps = parseTags.jsp
- } else if (p.is_jq) {
- print("二级是jq");
- _ps = parseTags.jq
- } else {
- print("二级默认jq");
- _ps = parseTags.jq
- }
- let tt2 = (new Date).getTime();
- print(`二级${MY_URL}获取并装载源码耗时:${tt2-tt1}毫秒`);
- _pdfa = _ps.pdfa;
- _pdfh = _ps.pdfh;
- _pd = _ps.pd;
- if (p.title) {
- let p1 = p.title.split(";");
- vod.vod_name = _pdfh(html, p1[0]).replace(/\n|\t/g, "").trim();
- let type_name = p1.length > 1 ? _pdfh(html, p1[1]).replace(/\n|\t/g, "").replace(/ /g, "").trim() : "";
- vod.type_name = type_name || vod.type_name
- }
- if (p.desc) {
- try {
- let p1 = p.desc.split(";");
- vod.vod_remarks = _pdfh(html, p1[0]).replace(/\n|\t/g, "").trim();
- vod.vod_year = p1.length > 1 ? _pdfh(html, p1[1]).replace(/\n|\t/g, "").trim() : "";
- vod.vod_area = p1.length > 2 ? _pdfh(html, p1[2]).replace(/\n|\t/g, "").trim() : "";
- vod.vod_actor = p1.length > 3 ? _pdfh(html, p1[3]).replace(/\n|\t/g, "").trim() : "";
- vod.vod_director = p1.length > 4 ? _pdfh(html, p1[4]).replace(/\n|\t/g, "").trim() : ""
- } catch (e) {}
- }
- if (p.content) {
- try {
- let p1 = p.content.split(";");
- vod.vod_content = _pdfh(html, p1[0]).replace(/\n|\t/g, "").trim()
- } catch (e) {}
- }
- if (p.img) {
- try {
- let p1 = p.img.split(";");
- vod.vod_pic = _pd(html, p1[0], MY_URL)
- } catch (e) {}
- }
- let vod_play_from = "$$$";
- let playFrom = [];
- if (p.重定向 && p.重定向.startsWith("js:")) {
- print("开始执行重定向代码:" + p.重定向);
- html = eval(p.重定向.replace("js:", ""))
- }
- if (p.tabs) {
- if (p.tabs.startsWith("js:")) {
- print("开始执行tabs代码:" + p.tabs);
- var input = MY_URL;
- eval(p.tabs.replace("js:", ""));
- playFrom = TABS
- } else {
- let p_tab = p.tabs.split(";")[0];
- let vHeader = _pdfa(html, p_tab);
- console.log(vHeader.length);
- let tab_text = p.tab_text || "body&&Text";
- let new_map = {};
- for (let v of vHeader) {
- let v_title = _pdfh(v, tab_text).trim();
- if (!v_title) {
- v_title = "线路空"
- }
- console.log(v_title);
- if (tab_exclude && new RegExp(tab_exclude).test(v_title)) {
- continue
- }
- if (!new_map.hasOwnProperty(v_title)) {
- new_map[v_title] = 1
- } else {
- new_map[v_title] += 1
- }
- if (new_map[v_title] > 1) {
- v_title += Number(new_map[v_title] - 1)
- }
- playFrom.push(v_title)
- }
- }
- console.log(JSON.stringify(playFrom))
- } else {
- playFrom = ["在线播放"]
- }
- vod.vod_play_from = playFrom.join(vod_play_from);
- let vod_play_url = "$$$";
- let vod_tab_list = [];
- if (p.lists) {
- if (p.lists.startsWith("js:")) {
- print("开始执行lists代码:" + p.lists);
- try {
- var input = MY_URL;
- var play_url = "";
- eval(p.lists.replace("js:", ""));
- for (let i in LISTS) {
- if (LISTS.hasOwnProperty(i)) {
- try {
- LISTS[i] = LISTS[i].map(it => it.split("$").slice(0, 2).join("$"))
- } catch (e) {
- print(`格式化LISTS发生错误:${e.message}`)
- }
- }
- }
- vod_play_url = LISTS.map(it => it.join("#")).join(vod_play_url)
- } catch (e) {
- print(`js执行lists: 发生错误:${e.message}`)
- }
- } else {
- let list_text = p.list_text || "body&&Text";
- let list_url = p.list_url || "a&&href";
- let list_url_prefix = p.list_url_prefix || "";
- let is_tab_js = p.tabs.trim().startsWith("js:");
- for (let i = 0; i < playFrom.length; i++) {
- let tab_name = playFrom[i];
- let tab_ext = p.tabs.split(";").length > 1 && !is_tab_js ? p.tabs.split(";")[1] : "";
- let p1 = p.lists.replaceAll("#idv", tab_name).replaceAll("#id", i);
- tab_ext = tab_ext.replaceAll("#idv", tab_name).replaceAll("#id", i);
- let tabName = tab_ext ? _pdfh(html, tab_ext) : tab_name;
- console.log(tabName);
- let new_vod_list = [];
- let tt1 = (new Date).getTime();
- if (typeof pdfl === "function") {
- new_vod_list = pdfl(html, p1, list_text, list_url, MY_URL);
- if (list_url_prefix) {
- new_vod_list = new_vod_list.map(it => it.split("$")[0] + "$" + list_url_prefix + it.split("$").slice(1).join("$"))
- }
- } else {
- let vodList = [];
- try {
- vodList = _pdfa(html, p1);
- console.log("len(vodList):" + vodList.length)
- } catch (e) {}
- for (let i = 0; i < vodList.length; i++) {
- let it = vodList[i];
- new_vod_list.push(_pdfh(it, list_text).trim() + "$" + list_url_prefix + _pd(it, list_url, MY_URL))
- }
- }
- if (new_vod_list.length > 0) {
- new_vod_list = forceOrder(new_vod_list, "", x => x.split("$")[0]);
- console.log(`drpy影响性能代码共计列表数循环次数:${new_vod_list.length},耗时:${(new Date).getTime()-tt1}毫秒`)
- }
- let vlist = new_vod_list.join("#");
- vod_tab_list.push(vlist)
- }
- vod_play_url = vod_tab_list.join(vod_play_url)
- }
- }
- vod.vod_play_url = vod_play_url
- }
- if (rule.图片替换 && rule.图片替换.includes("=>")) {
- let replace_from = rule.图片替换.split("=>")[0];
- let replace_to = rule.图片替换.split("=>")[1];
- vod.vod_pic = vod.vod_pic.replace(replace_from, replace_to)
- }
- if (rule.图片来源 && vod.vod_pic && vod.vod_pic.startsWith("http")) {
- vod.vod_pic = vod.vod_pic + rule.图片来源
- }
- if (!vod.vod_id || vod_id.includes("$") && vod.vod_id !== vod_id) {
- vod.vod_id = vod_id
- }
- let t2 = (new Date).getTime();
- console.log(`加载二级界面${MY_URL}耗时:${t2-t1}毫秒`);
- try {
- vod = vodDeal(vod)
- } catch (e) {
- console.log(`vodDeal发生错误:${e.message}`)
- }
- return JSON.stringify({
- list: [vod]
- })
-}
-
-function get_tab_index(vod) {
- let obj = {};
- vod.vod_play_from.split("$$$").forEach((it, index) => {
- obj[it] = index
- });
- return obj
-}
-
-function vodDeal(vod) {
- let vod_play_from = vod.vod_play_from.split("$$$");
- let vod_play_url = vod.vod_play_url.split("$$$");
- let tab_removed_list = vod_play_from;
- let tab_ordered_list = vod_play_from;
- let tab_renamed_list = vod_play_from;
- let tab_list = vod_play_from;
- let play_ordered_list = vod_play_url;
- if (rule.tab_remove && rule.tab_remove.length > 0 || rule.tab_order && rule.tab_order.length > 0) {
- let tab_index_dict = get_tab_index(vod);
- if (rule.tab_remove && rule.tab_remove.length > 0) {
- tab_removed_list = vod_play_from.filter(it => !rule.tab_remove.includes(it));
- tab_list = tab_removed_list
- }
- if (rule.tab_order && rule.tab_order.length > 0) {
- let tab_order = rule.tab_order;
- tab_ordered_list = tab_removed_list.sort((a, b) => {
- return (tab_order.indexOf(a) === -1 ? 9999 : tab_order.indexOf(a)) - (tab_order.indexOf(b) === -1 ? 9999 : tab_order.indexOf(b))
- });
- tab_list = tab_ordered_list
- }
- play_ordered_list = tab_list.map(it => vod_play_url[tab_index_dict[it]])
- }
- if (rule.tab_rename && typeof rule.tab_rename === "object" & Object.keys(rule.tab_rename).length > 0) {
- tab_renamed_list = tab_list.map(it => rule.tab_rename[it] || it);
- tab_list = tab_renamed_list
- }
- vod.vod_play_from = tab_list.join("$$$");
- vod.vod_play_url = play_ordered_list.join("$$$");
- return vod
-}
-
-function tellIsJx(url) {
- try {
- let is_vip = !/\.(m3u8|mp4|m4a)$/.test(url.split("?")[0]) && 是否正版(url);
- return is_vip ? 1 : 0
- } catch (e) {
- return 1
- }
-}
-
-function playParse(playObj) {
- fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
- MY_URL = playObj.url;
- var MY_FLAG = playObj.flag;
- if (!/http/.test(MY_URL)) {
- try {
- MY_URL = base64Decode(MY_URL)
- } catch (e) {}
- }
- MY_URL = decodeURIComponent(MY_URL);
- var input = MY_URL;
- var flag = MY_FLAG;
- let common_play = {
- parse: SPECIAL_URL.test(input) || /^(push:)/.test(input) ? 0 : 1,
- url: input,
- flag: flag,
- jx: tellIsJx(input)
- };
- let lazy_play;
- if (!rule.play_parse || !rule.lazy) {
- lazy_play = common_play
- } else if (rule.play_parse && rule.lazy && typeof rule.lazy === "string") {
- try {
- let lazy_code = rule.lazy.trim();
- if (lazy_code.startsWith("js:")) {
- lazy_code = lazy_code.replace("js:", "").trim()
- }
- print("开始执行js免嗅=>" + lazy_code);
- eval(lazy_code);
- lazy_play = typeof input === "object" ? input : {
- parse: SPECIAL_URL.test(input) || /^(push:)/.test(input) ? 0 : 1,
- jx: tellIsJx(input),
- url: input
- }
- } catch (e) {
- print(`js免嗅错误:${e.message}`);
- lazy_play = common_play
- }
- } else {
- lazy_play = common_play
- }
- if (Array.isArray(rule.play_json) && rule.play_json.length > 0) {
- let web_url = lazy_play.url;
- for (let pjson of rule.play_json) {
- if (pjson.re && (pjson.re === "*" || web_url.match(new RegExp(pjson.re)))) {
- if (pjson.json && typeof pjson.json === "object") {
- let base_json = pjson.json;
- lazy_play = Object.assign(lazy_play, base_json);
- break
- }
- }
- }
- } else if (rule.play_json && !Array.isArray(rule.play_json)) {
- let base_json = {
- jx: 1,
- parse: 1
- };
- lazy_play = Object.assign(lazy_play, base_json)
- } else if (!rule.play_json) {
- let base_json = {
- jx: 0,
- parse: 1
- };
- lazy_play = Object.assign(lazy_play, base_json)
- }
- console.log(JSON.stringify(lazy_play));
- return JSON.stringify(lazy_play)
-}
-
-function proxyParse(proxyObj) {
- var input = proxyObj.params;
- if (proxyObj.proxy_rule) {
- log("准备执行本地代理规则:\n" + proxyObj.proxy_rule);
- try {
- eval(proxyObj.proxy_rule);
- if (input && input !== proxyObj.params && Array.isArray(input) && input.length >= 3) {
- return input
- } else {
- return [404, "text/plain", "Not Found"]
- }
- } catch (e) {
- return [500, "text/plain", "代理规则错误:" + e.message]
- }
- } else {
- return [404, "text/plain", "Not Found"]
- }
-}
-
-function isVideoParse(isVideoObj) {
- var input = isVideoObj.url;
- if (!isVideoObj.t) {
- let re_matcher = new RegExp(isVideoObj.isVideo, "i");
- return re_matcher.test(input)
- } else {
- try {
- eval(isVideoObj.isVideo);
- if (typeof input === "boolean") {
- return input
- } else {
- return false
- }
- } catch (e) {
- log(`执行嗅探规则发生错误:${e.message}`);
- return false
- }
- }
-}
-
-function getOriginalJs(js_code) {
- let current_match = /var rule|[\u4E00-\u9FA5]+|function|let |var |const |\(|\)|"|'/;
- if (current_match.test(js_code)) {
- return js_code
- }
- let rsa_private_key = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCqin/jUpqM6+fgYP/oMqj9zcdHMM0mEZXLeTyixIJWP53lzJV2N2E3OP6BBpUmq2O1a9aLnTIbADBaTulTNiOnVGoNG58umBnupnbmmF8iARbDp2mTzdMMeEgLdrfXS6Y3VvazKYALP8EhEQykQVarexR78vRq7ltY3quXx7cgI0ROfZz5Sw3UOLQJ+VoWmwIxu9AMEZLVzFDQN93hzuzs3tNyHK6xspBGB7zGbwCg+TKi0JeqPDrXxYUpAz1cQ/MO+Da0WgvkXnvrry8NQROHejdLVOAslgr6vYthH9bKbsGyNY3H+P12kcxo9RAcVveONnZbcMyxjtF5dWblaernAgMBAAECggEAGdEHlSEPFmAr5PKqKrtoi6tYDHXdyHKHC5tZy4YV+Pp+a6gxxAiUJejx1hRqBcWSPYeKne35BM9dgn5JofgjI5SKzVsuGL6bxl3ayAOu+xXRHWM9f0t8NHoM5fdd0zC3g88dX3fb01geY2QSVtcxSJpEOpNH3twgZe6naT2pgiq1S4okpkpldJPo5GYWGKMCHSLnKGyhwS76gF8bTPLoay9Jxk70uv6BDUMlA4ICENjmsYtd3oirWwLwYMEJbSFMlyJvB7hjOjR/4RpT4FPnlSsIpuRtkCYXD4jdhxGlvpXREw97UF2wwnEUnfgiZJ2FT/MWmvGGoaV/CfboLsLZuQKBgQDTNZdJrs8dbijynHZuuRwvXvwC03GDpEJO6c1tbZ1s9wjRyOZjBbQFRjDgFeWs9/T1aNBLUrgsQL9c9nzgUziXjr1Nmu52I0Mwxi13Km/q3mT+aQfdgNdu6ojsI5apQQHnN/9yMhF6sNHg63YOpH+b+1bGRCtr1XubuLlumKKscwKBgQDOtQ2lQjMtwsqJmyiyRLiUOChtvQ5XI7B2mhKCGi8kZ+WEAbNQcmThPesVzW+puER6D4Ar4hgsh9gCeuTaOzbRfZ+RLn3Aksu2WJEzfs6UrGvm6DU1INn0z/tPYRAwPX7sxoZZGxqML/z+/yQdf2DREoPdClcDa2Lmf1KpHdB+vQKBgBXFCVHz7a8n4pqXG/HvrIMJdEpKRwH9lUQS/zSPPtGzaLpOzchZFyQQBwuh1imM6Te+VPHeldMh3VeUpGxux39/m+160adlnRBS7O7CdgSsZZZ/dusS06HAFNraFDZf1/VgJTk9BeYygX+AZYu+0tReBKSs9BjKSVJUqPBIVUQXAoGBAJcZ7J6oVMcXxHxwqoAeEhtvLcaCU9BJK36XQ/5M67ceJ72mjJC6/plUbNukMAMNyyi62gO6I9exearecRpB/OGIhjNXm99Ar59dAM9228X8gGfryLFMkWcO/fNZzb6lxXmJ6b2LPY3KqpMwqRLTAU/zy+ax30eFoWdDHYa4X6e1AoGAfa8asVGOJ8GL9dlWufEeFkDEDKO9ww5GdnpN+wqLwePWqeJhWCHad7bge6SnlylJp5aZXl1+YaBTtOskC4Whq9TP2J+dNIgxsaF5EFZQJr8Xv+lY9lu0CruYOh9nTNF9x3nubxJgaSid/7yRPfAGnsJRiknB5bsrCvgsFQFjJVs=";
- let decode_content = "";
-
- function aes_decrypt(data) {
- let key = CryptoJS.enc.Hex.parse("686A64686E780A0A0A0A0A0A0A0A0A0A");
- let iv = CryptoJS.enc.Hex.parse("647A797964730A0A0A0A0A0A0A0A0A0A");
- let encrypted = CryptoJS.AES.decrypt({
- ciphertext: CryptoJS.enc.Base64.parse(data)
- }, key, {
- iv: iv,
- mode: CryptoJS.mode.CBC,
- padding: CryptoJS.pad.Pkcs7
- }).toString(CryptoJS.enc.Utf8);
- return encrypted
- }
- let error_log = false;
-
- function logger(text) {
- if (error_log) {
- log(text)
- }
- }
- let decode_funcs = [text => {
- try {
- return ungzip(text)
- } catch (e) {
- logger("非gzip加密");
- return ""
- }
- }, text => {
- try {
- return base64Decode(text)
- } catch (e) {
- logger("非b64加密");
- return ""
- }
- }, text => {
- try {
- return aes_decrypt(text)
- } catch (e) {
- logger("非aes加密");
- return ""
- }
- }, text => {
- try {
- return RSA.decode(text, rsa_private_key, null)
- } catch (e) {
- logger("非rsa加密");
- return ""
- }
- }];
- let func_index = 0;
- while (!current_match.test(decode_content)) {
- decode_content = decode_funcs[func_index](js_code);
- func_index++;
- if (func_index >= decode_funcs.length) {
- break
- }
- }
- return decode_content
-}
-
-function runMain(main_func_code, arg) {
- let mainFunc = function() {
- return ""
- };
- try {
- eval(main_func_code + "\nmainFunc=main;");
- return mainFunc(arg)
- } catch (e) {
- log(`执行main_funct发生了错误:${e.message}`);
- return ""
- }
-}
-
-function init(ext) {
- console.log("init");
- rule = {};
- rule_fetch_params = {};
- fetch_params = null;
- try {
- let muban = 模板.getMubans();
- if (typeof ext == "object") {
- rule = ext
- } else if (typeof ext == "string") {
- let is_file = ext.startsWith("file://");
- if (ext.startsWith("http") || is_file) {
- let query = getQuery(ext);
- if (is_file) {
- ext = ext.split("?")[0]
- }
- let js = request(ext, {
- method: "GET"
- });
- if (js) {
- js = getOriginalJs(js);
- eval("(function(){" + js.replace("var rule", "rule") + "})()")
- }
- if (query.type === "url" && query.params) {
- if (is_file && /^http/.test(query.params)) {
- rule.params = query.params
- } else {
- rule.params = urljoin(ext, query.params)
- }
- } else if (query.params) {
- rule.params = query.params
- }
- } else {
- ext = getOriginalJs(ext);
- eval("(function(){" + ext.replace("var rule", "rule") + "})()")
- }
- } else {
- console.log(`规则加载失败,不支持的规则类型:${typeof ext}`);
- return
- }
- rule.host = (rule.host || "").rstrip("/");
- HOST = rule.host;
- if (rule.hostJs) {
- console.log(`检测到hostJs,准备执行...`);
- try {
- eval(rule.hostJs);
- rule.host = HOST.rstrip("/")
- } catch (e) {
- console.log(`执行${rule.hostJs}获取host发生错误:${e.message}`)
- }
- }
- if (rule["模板"] === "自动") {
- try {
- let host_headers = rule["headers"] || {};
- let host_html = getCode(HOST, {
- headers: host_headers
- });
- let match_muban = "";
- let muban_keys = Object.keys(muban).filter(it => !/默认|短视2|采集1/.test(it));
- for (let muban_key of muban_keys) {
- try {
- let host_data = JSON.parse(home({}, host_html, muban[muban_key].class_parse));
- if (host_data.class && host_data.class.length > 0) {
- match_muban = muban_key;
- console.log(`自动匹配模板:【${muban_key}】`);
- break
- }
- } catch (e) {
- console.log(`自动匹配模板:【${muban_key}】错误:${e.message}`)
- }
- }
- if (match_muban) {
- muban["自动"] = muban[match_muban];
- if (rule["模板修改"] && rule["模板修改"].startsWith("js:")) {
- eval(rule["模板修改"].replace("js:", "").trim())
- }
- } else {
- delete rule["模板"]
- }
- } catch (e) {
- delete rule["模板"]
- }
- }
- if (rule.模板 && muban.hasOwnProperty(rule.模板)) {
- print("继承模板:" + rule.模板);
- rule = Object.assign(muban[rule.模板], rule)
- }
- let rule_cate_excludes = (rule.cate_exclude || "").split("|").filter(it => it.trim());
- let rule_tab_excludes = (rule.tab_exclude || "").split("|").filter(it => it.trim());
- rule_cate_excludes = rule_cate_excludes.concat(CATE_EXCLUDE.split("|").filter(it => it.trim()));
- rule_tab_excludes = rule_tab_excludes.concat(TAB_EXCLUDE.split("|").filter(it => it.trim()));
- rule.cate_exclude = rule_cate_excludes.join("|");
- rule.tab_exclude = rule_tab_excludes.join("|");
- rule.类型 = rule.类型 || "影视";
- rule.url = rule.url || "";
- rule.double = rule.double || false;
- rule.homeUrl = rule.homeUrl || "";
- rule.detailUrl = rule.detailUrl || "";
- rule.searchUrl = rule.searchUrl || "";
- rule.homeUrl = rule.host && rule.homeUrl ? urljoin(rule.host, rule.homeUrl) : rule.homeUrl || rule.host;
- rule.homeUrl = cheerio.jinja2(rule.homeUrl, {
- rule: rule
- });
- rule.detailUrl = rule.host && rule.detailUrl ? urljoin(rule.host, rule.detailUrl) : rule.detailUrl;
- rule.二级访问前 = rule.二级访问前 || "";
- if (rule.url.includes("[") && rule.url.includes("]")) {
- let u1 = rule.url.split("[")[0];
- let u2 = rule.url.split("[")[1].split("]")[0];
- rule.url = rule.host && rule.url ? urljoin(rule.host, u1) + "[" + urljoin(rule.host, u2) + "]" : rule.url
- } else {
- rule.url = rule.host && rule.url ? urljoin(rule.host, rule.url) : rule.url
- }
- if (rule.searchUrl.includes("[") && rule.searchUrl.includes("]") && !rule.searchUrl.includes("#")) {
- let u1 = rule.searchUrl.split("[")[0];
- let u2 = rule.searchUrl.split("[")[1].split("]")[0];
- rule.searchUrl = rule.host && rule.searchUrl ? urljoin(rule.host, u1) + "[" + urljoin(rule.host, u2) + "]" : rule.searchUrl
- } else {
- rule.searchUrl = rule.host && rule.searchUrl ? urljoin(rule.host, rule.searchUrl) : rule.searchUrl
- }
- rule.timeout = rule.timeout || 5e3;
- rule.encoding = rule.编码 || rule.encoding || "utf-8";
- rule.search_encoding = rule.搜索编码 || rule.search_encoding || "";
- rule.图片来源 = rule.图片来源 || "";
- rule.图片替换 = rule.图片替换 || "";
- rule.play_json = rule.hasOwnProperty("play_json") ? rule.play_json : [];
- rule.pagecount = rule.hasOwnProperty("pagecount") ? rule.pagecount : {};
- rule.proxy_rule = rule.hasOwnProperty("proxy_rule") ? rule.proxy_rule : "";
- if (!rule.hasOwnProperty("sniffer")) {
- rule.sniffer = false
- }
- rule.sniffer = rule.hasOwnProperty("sniffer") ? rule.sniffer : "";
- rule.sniffer = !!(rule.sniffer && rule.sniffer !== "0" && rule.sniffer !== "false");
- rule.isVideo = rule.hasOwnProperty("isVideo") ? rule.isVideo : "";
- if (rule.sniffer && !rule.isVideo) {
- rule.isVideo = "http((?!http).){12,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)\\?.*|http((?!http).){12,}\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)|http((?!http).)*?video/tos*|http((?!http).)*?obj/tos*"
- }
- rule.tab_remove = rule.hasOwnProperty("tab_remove") ? rule.tab_remove : [];
- rule.tab_order = rule.hasOwnProperty("tab_order") ? rule.tab_order : [];
- rule.tab_rename = rule.hasOwnProperty("tab_rename") ? rule.tab_rename : {};
- if (rule.headers && typeof rule.headers === "object") {
- try {
- let header_keys = Object.keys(rule.headers);
- for (let k of header_keys) {
- if (k.toLowerCase() === "user-agent") {
- let v = rule.headers[k];
- console.log(v);
- if (["MOBILE_UA", "PC_UA", "UC_UA", "IOS_UA", "UA"].includes(v)) {
- rule.headers[k] = eval(v)
- }
- } else if (k.toLowerCase() === "cookie") {
- let v = rule.headers[k];
- if (v && v.startsWith("http")) {
- console.log(v);
- try {
- v = fetch(v);
- console.log(v);
- rule.headers[k] = v
- } catch (e) {
- console.log(`从${v}获取cookie发生错误:${e.message}`)
- }
- }
- }
- }
- } catch (e) {
- console.log(`处理headers发生错误:${e.message}`)
- }
- } else {
- rule.headers = {}
- }
- oheaders = deepCopy(rule.headers);
- rule_fetch_params = {
- headers: rule.headers,
- timeout: rule.timeout,
- encoding: rule.encoding
- };
- RKEY = typeof key !== "undefined" && key ? key : "drpy_" + (rule.title || rule.host);
- pre();
- init_test()
- } catch (e) {
- console.log(`init_test发生错误:${e.message}`)
- }
-}
-let homeHtmlCache = undefined;
-
-function home(filter, home_html, class_parse) {
- console.log("home");
- home_html = home_html || "";
- class_parse = class_parse || "";
- if (typeof rule.filter === "string" && rule.filter.trim().length > 0) {
- try {
- let filter_json = ungzip(rule.filter.trim());
- rule.filter = JSON.parse(filter_json)
- } catch (e) {
- rule.filter = {}
- }
- }
- let homeObj = {
- filter: rule.filter || false,
- MY_URL: rule.homeUrl,
- class_name: rule.class_name || "",
- class_url: rule.class_url || "",
- class_parse: class_parse || rule.class_parse || "",
- cate_exclude: rule.cate_exclude,
- home_html: home_html
- };
- return homeParse(homeObj)
-}
-
-function homeVod(params) {
- console.log("homeVod");
- let homeVodObj = {
- "推荐": rule.推荐,
- double: rule.double,
- homeUrl: rule.homeUrl,
- detailUrl: rule.detailUrl
- };
- return homeVodParse(homeVodObj)
-}
-
-function category(tid, pg, filter, extend) {
- let cateObj = {
- url: rule.url,
- "一级": rule.一级,
- tid: tid,
- pg: parseInt(pg),
- filter: filter,
- extend: extend
- };
- return categoryParse(cateObj)
-}
-
-function detail(vod_url) {
- let orId = vod_url;
- let fyclass = "";
- log("orId:" + orId);
- if (vod_url.indexOf("$") > -1) {
- let tmp = vod_url.split("$");
- fyclass = tmp[0];
- vod_url = tmp[1]
- }
- let detailUrl = vod_url.split("@@")[0];
- let url;
- if (!detailUrl.startsWith("http") && !detailUrl.includes("/")) {
- url = rule.detailUrl.replaceAll("fyid", detailUrl).replaceAll("fyclass", fyclass)
- } else if (detailUrl.includes("/")) {
- url = urljoin(rule.homeUrl, detailUrl)
- } else {
- url = detailUrl
- }
- let detailObj = {
- orId: orId,
- url: url,
- "二级": rule.二级,
- "二级访问前": rule.二级访问前,
- detailUrl: detailUrl,
- fyclass: fyclass,
- tab_exclude: rule.tab_exclude
- };
- return detailParse(detailObj)
-}
-
-function play(flag, id, flags) {
- let playObj = {
- url: id,
- flag: flag,
- flags: flags
- };
- return playParse(playObj)
-}
-
-function search(wd, quick, pg) {
- if (rule.search_encoding) {
- if (rule.search_encoding.toLowerCase() !== "utf-8") {
- wd = encodeStr(wd, rule.search_encoding)
- }
- } else if (rule.encoding && rule.encoding.toLowerCase() !== "utf-8") {
- wd = encodeStr(wd, rule.encoding)
- }
- let searchObj = {
- searchUrl: rule.searchUrl,
- "搜索": rule.搜索,
- wd: wd,
- pg: pg || 1,
- quick: quick
- };
- return searchParse(searchObj)
-}
-
-function proxy(params) {
- if (rule.proxy_rule && rule.proxy_rule.trim()) {
- rule.proxy_rule = rule.proxy_rule.trim()
- }
- if (rule.proxy_rule.startsWith("js:")) {
- rule.proxy_rule = rule.proxy_rule.replace("js:", "")
- }
- let proxyObj = {
- params: params,
- proxy_rule: rule.proxy_rule
- };
- return proxyParse(proxyObj)
-}
-
-function sniffer() {
- let enable_sniffer = rule.sniffer || false;
- if (enable_sniffer) {
- log("开始执行辅助嗅探代理规则...")
- }
- return enable_sniffer
-}
-
-function isVideo(url) {
- let t = 0;
- let is_video;
- if (rule.isVideo && rule.isVideo.trim()) {
- is_video = rule.isVideo.trim()
- }
- if (is_video.startsWith("js:")) {
- is_video = is_video.replace("js:", "");
- t = 1
- }
- let isVideoObj = {
- url: url,
- isVideo: is_video,
- t: t
- };
- let result = isVideoParse(isVideoObj);
- if (result) {
- log("成功执行辅助嗅探规则并检测到视频地址:\n" + rule.isVideo)
- }
- return result
-}
-
-function getRule(key) {
- return key ? rule[key] || "" : rule
-}
-
-function deepCopy(_obj) {
- return JSON.parse(JSON.stringify(_obj))
-}
-
-function matchesAll(str, pattern, flatten) {
- if (!pattern.global) {
- pattern = new RegExp(pattern.source, "g" + (pattern.ignoreCase ? "i" : "") + (pattern.multiline ? "m" : ""))
- }
- var matches = [];
- var match;
- while ((match = pattern.exec(str)) !== null) {
- matches.push(match)
- }
- return flatten ? matches.flat() : matches
-}
-
-function stringUtils() {
- Object.defineProperties(String.prototype, {
- replaceX: {
- value: function(regex, replacement) {
- let matches = matchesAll(this, regex, true);
- if (matches && matches.length > 1) {
- const hasCaptureGroup = /\$\d/.test(replacement);
- if (hasCaptureGroup) {
- return this.replace(regex, m => m.replace(regex, replacement))
- } else {
- return this.replace(regex, (m, p1) => m.replace(p1, replacement))
- }
- }
- return this.replace(regex, replacement)
- },
- configurable: true,
- enumerable: false,
- writable: true
- },
- parseX: {
- get: function() {
- try {
- return JSON.parse(this)
- } catch (e) {
- console.log(e.message);
- return this.startsWith("[") ? [] : {}
- }
- },
- configurable: true,
- enumerable: false
- }
- })
-}
-
-function cut(text, start, end, method, All) {
- let result = "";
- let c = (t, s, e) => {
- let result = "";
- let rs = [];
- let results = [];
- try {
- let lr = new RegExp(String.raw`${s}`.toString());
- let rr = new RegExp(String.raw`${e}`.toString());
- const segments = t.split(lr);
- if (segments.length < 2) return "";
- let cutSegments = segments.slice(1).map(segment => {
- let splitSegment = segment.split(rr);
- return splitSegment.length < 2 ? undefined : splitSegment[0] + e
- }).filter(f => f);
- if (All) {
- return `[${cutSegments.join(",")}]`
- } else {
- return cutSegments[0]
- }
- } catch (e) {
- console.log(`Error cutting text:${e.message}`)
- }
- return result
- };
- result = c(text, start, end);
- stringUtils();
- if (method && typeof method === "function") {
- result = method(result)
- }
- return result
-}
-
-function DRPY() {
- return {
- runMain: runMain,
- getRule: getRule,
- init: init,
- home: home,
- homeVod: homeVod,
- category: category,
- detail: detail,
- play: play,
- search: search,
- proxy: proxy,
- sniffer: sniffer,
- isVideo: isVideo,
- fixAdM3u8Ai: fixAdM3u8Ai
- }
-}
-export default {
- runMain: runMain,
- getRule: getRule,
- init: init,
- home: home,
- homeVod: homeVod,
- category: category,
- detail: detail,
- play: play,
- search: search,
- proxy: proxy,
- sniffer: sniffer,
- isVideo: isVideo,
- fixAdM3u8Ai: fixAdM3u8Ai,
- DRPY: DRPY
-};
\ No newline at end of file
diff --git a/欧歌/api/jinja.js b/欧歌/api/jinja.js
deleted file mode 100644
index 67928a0..0000000
--- a/欧歌/api/jinja.js
+++ /dev/null
@@ -1,607 +0,0 @@
-/*!
- * Jinja Templating for JavaScript v0.1.8
- * https://github.com/sstur/jinja-js
- *
- * This is a slimmed-down Jinja2 implementation [http://jinja.pocoo.org/]
- *
- * In the interest of simplicity, it deviates from Jinja2 as follows:
- * - Line statements, cycle, super, macro tags and block nesting are not implemented
- * - auto escapes html by default (the filter is "html" not "e")
- * - Only "html" and "safe" filters are built in
- * - Filters are not valid in expressions; `foo|length > 1` is not valid
- * - Expression Tests (`if num is odd`) not implemented (`is` translates to `==` and `isnot` to `!=`)
- *
- * Notes:
- * - if property is not found, but method '_get' exists, it will be called with the property name (and cached)
- * - `{% for n in obj %}` iterates the object's keys; get the value with `{% for n in obj %}{{ obj[n] }}{% endfor %}`
- * - subscript notation `a[0]` takes literals or simple variables but not `a[item.key]`
- * - `.2` is not a valid number literal; use `0.2`
- *
- */
-/*global require, exports, module, define */
-
-(function(global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
- typeof define === 'function' && define.amd ? define(['exports'], factory) :
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.jinja = {}));
-})(this, (function(jinja) {
- "use strict";
- var STRINGS = /'(\\.|[^'])*'|"(\\.|[^"'"])*"/g;
- var IDENTS_AND_NUMS = /([$_a-z][$\w]*)|([+-]?\d+(\.\d+)?)/g;
- var NUMBER = /^[+-]?\d+(\.\d+)?$/;
- //non-primitive literals (array and object literals)
- var NON_PRIMITIVES = /\[[@#~](,[@#~])*\]|\[\]|\{([@i]:[@#~])(,[@i]:[@#~])*\}|\{\}/g;
- //bare identifiers such as variables and in object literals: {foo: 'value'}
- var IDENTIFIERS = /[$_a-z][$\w]*/ig;
- var VARIABLES = /i(\.i|\[[@#i]\])*/g;
- var ACCESSOR = /(\.i|\[[@#i]\])/g;
- var OPERATORS = /(===?|!==?|>=?|<=?|&&|\|\||[+\-\*\/%])/g;
- //extended (english) operators
- var EOPS = /(^|[^$\w])(and|or|not|is|isnot)([^$\w]|$)/g;
- var LEADING_SPACE = /^\s+/;
- var TRAILING_SPACE = /\s+$/;
-
- var START_TOKEN = /\{\{\{|\{\{|\{%|\{#/;
- var TAGS = {
- '{{{': /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?\}\}\}/,
- '{{': /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?\}\}/,
- '{%': /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?%\}/,
- '{#': /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?#\}/
- };
-
- var delimeters = {
- '{%': 'directive',
- '{{': 'output',
- '{#': 'comment'
- };
-
- var operators = {
- and: '&&',
- or: '||',
- not: '!',
- is: '==',
- isnot: '!='
- };
-
- var constants = {
- 'true': true,
- 'false': false,
- 'null': null
- };
-
- function Parser() {
- this.nest = [];
- this.compiled = [];
- this.childBlocks = 0;
- this.parentBlocks = 0;
- this.isSilent = false;
- }
-
- Parser.prototype.push = function(line) {
- if (!this.isSilent) {
- this.compiled.push(line);
- }
- };
-
- Parser.prototype.parse = function(src) {
- this.tokenize(src);
- return this.compiled;
- };
-
- Parser.prototype.tokenize = function(src) {
- var lastEnd = 0,
- parser = this,
- trimLeading = false;
- matchAll(src, START_TOKEN, function(open, index, src) {
- //here we match the rest of the src against a regex for this tag
- var match = src.slice(index + open.length).match(TAGS[open]);
- match = (match ? match[0] : '');
- //here we sub out strings so we don't get false matches
- var simplified = match.replace(STRINGS, '@');
- //if we don't have a close tag or there is a nested open tag
- if (!match || ~simplified.indexOf(open)) {
- return index + 1;
- }
- var inner = match.slice(0, 0 - open.length);
- //check for white-space collapse syntax
- if (inner.charAt(0) === '-') var wsCollapseLeft = true;
- if (inner.slice(-1) === '-') var wsCollapseRight = true;
- inner = inner.replace(/^-|-$/g, '').trim();
- //if we're in raw mode and we are not looking at an "endraw" tag, move along
- if (parser.rawMode && (open + inner) !== '{%endraw') {
- return index + 1;
- }
- var text = src.slice(lastEnd, index);
- lastEnd = index + open.length + match.length;
- if (trimLeading) text = trimLeft(text);
- if (wsCollapseLeft) text = trimRight(text);
- if (wsCollapseRight) trimLeading = true;
- if (open === '{{{') {
- //liquid-style: make {{{x}}} => {{x|safe}}
- open = '{{';
- inner += '|safe';
- }
- parser.textHandler(text);
- parser.tokenHandler(open, inner);
- });
- var text = src.slice(lastEnd);
- if (trimLeading) text = trimLeft(text);
- this.textHandler(text);
- };
-
- Parser.prototype.textHandler = function(text) {
- this.push('write(' + JSON.stringify(text) + ');');
- };
-
- Parser.prototype.tokenHandler = function(open, inner) {
- var type = delimeters[open];
- if (type === 'directive') {
- this.compileTag(inner);
- } else if (type === 'output') {
- var extracted = this.extractEnt(inner, STRINGS, '@');
- //replace || operators with ~
- extracted.src = extracted.src.replace(/\|\|/g, '~').split('|');
- //put back || operators
- extracted.src = extracted.src.map(function(part) {
- return part.split('~').join('||');
- });
- var parts = this.injectEnt(extracted, '@');
- if (parts.length > 1) {
- var filters = parts.slice(1).map(this.parseFilter.bind(this));
- this.push('filter(' + this.parseExpr(parts[0]) + ',' + filters.join(',') + ');');
- } else {
- this.push('filter(' + this.parseExpr(parts[0]) + ');');
- }
- }
- };
-
- Parser.prototype.compileTag = function(str) {
- var directive = str.split(' ')[0];
- var handler = tagHandlers[directive];
- if (!handler) {
- throw new Error('Invalid tag: ' + str);
- }
- handler.call(this, str.slice(directive.length).trim());
- };
-
- Parser.prototype.parseFilter = function(src) {
- src = src.trim();
- var match = src.match(/[:(]/);
- var i = match ? match.index : -1;
- if (i < 0) return JSON.stringify([src]);
- var name = src.slice(0, i);
- var args = src.charAt(i) === ':' ? src.slice(i + 1) : src.slice(i + 1, -1);
- args = this.parseExpr(args, {
- terms: true
- });
- return '[' + JSON.stringify(name) + ',' + args + ']';
- };
-
- Parser.prototype.extractEnt = function(src, regex, placeholder) {
- var subs = [],
- isFunc = typeof placeholder == 'function';
- src = src.replace(regex, function(str) {
- var replacement = isFunc ? placeholder(str) : placeholder;
- if (replacement) {
- subs.push(str);
- return replacement;
- }
- return str;
- });
- return {
- src: src,
- subs: subs
- };
- };
-
- Parser.prototype.injectEnt = function(extracted, placeholder) {
- var src = extracted.src,
- subs = extracted.subs,
- isArr = Array.isArray(src);
- var arr = (isArr) ? src : [src];
- var re = new RegExp('[' + placeholder + ']', 'g'),
- i = 0;
- arr.forEach(function(src, index) {
- arr[index] = src.replace(re, function() {
- return subs[i++];
- });
- });
- return isArr ? arr : arr[0];
- };
-
- //replace complex literals without mistaking subscript notation with array literals
- Parser.prototype.replaceComplex = function(s) {
- var parsed = this.extractEnt(s, /i(\.i|\[[@#i]\])+/g, 'v');
- parsed.src = parsed.src.replace(NON_PRIMITIVES, '~');
- return this.injectEnt(parsed, 'v');
- };
-
- //parse expression containing literals (including objects/arrays) and variables (including dot and subscript notation)
- //valid expressions: `a + 1 > b.c or c == null`, `a and b[1] != c`, `(a < b) or (c < d and e)`, 'a || [1]`
- Parser.prototype.parseExpr = function(src, opts) {
- opts = opts || {};
- //extract string literals -> @
- var parsed1 = this.extractEnt(src, STRINGS, '@');
- //note: this will catch {not: 1} and a.is; could we replace temporarily and then check adjacent chars?
- parsed1.src = parsed1.src.replace(EOPS, function(s, before, op, after) {
- return (op in operators) ? before + operators[op] + after : s;
- });
- //sub out non-string literals (numbers/true/false/null) -> #
- // the distinction is necessary because @ can be object identifiers, # cannot
- var parsed2 = this.extractEnt(parsed1.src, IDENTS_AND_NUMS, function(s) {
- return (s in constants || NUMBER.test(s)) ? '#' : null;
- });
- //sub out object/variable identifiers -> i
- var parsed3 = this.extractEnt(parsed2.src, IDENTIFIERS, 'i');
- //remove white-space
- parsed3.src = parsed3.src.replace(/\s+/g, '');
-
- //the rest of this is simply to boil the expression down and check validity
- var simplified = parsed3.src;
- //sub out complex literals (objects/arrays) -> ~
- // the distinction is necessary because @ and # can be subscripts but ~ cannot
- while (simplified !== (simplified = this.replaceComplex(simplified)));
- //now @ represents strings, # represents other primitives and ~ represents non-primitives
- //replace complex variables (those with dot/subscript accessors) -> v
- while (simplified !== (simplified = simplified.replace(/i(\.i|\[[@#i]\])+/, 'v')));
- //empty subscript or complex variables in subscript, are not permitted
- simplified = simplified.replace(/[iv]\[v?\]/g, 'x');
- //sub in "i" for @ and # and ~ and v (now "i" represents all literals, variables and identifiers)
- simplified = simplified.replace(/[@#~v]/g, 'i');
- //sub out operators
- simplified = simplified.replace(OPERATORS, '%');
- //allow 'not' unary operator
- simplified = simplified.replace(/!+[i]/g, 'i');
- var terms = opts.terms ? simplified.split(',') : [simplified];
- terms.forEach(function(term) {
- //simplify logical grouping
- while (term !== (term = term.replace(/\(i(%i)*\)/g, 'i')));
- if (!term.match(/^i(%i)*/)) {
- throw new Error('Invalid expression: ' + src + " " + term);
- }
- });
- parsed3.src = parsed3.src.replace(VARIABLES, this.parseVar.bind(this));
- parsed2.src = this.injectEnt(parsed3, 'i');
- parsed1.src = this.injectEnt(parsed2, '#');
- return this.injectEnt(parsed1, '@');
- };
-
- Parser.prototype.parseVar = function(src) {
- var args = Array.prototype.slice.call(arguments);
- var str = args.pop(),
- index = args.pop();
- //quote bare object identifiers (might be a reserved word like {while: 1})
- if (src === 'i' && str.charAt(index + 1) === ':') {
- return '"i"';
- }
- var parts = ['"i"'];
- src.replace(ACCESSOR, function(part) {
- if (part === '.i') {
- parts.push('"i"');
- } else if (part === '[i]') {
- parts.push('get("i")');
- } else {
- parts.push(part.slice(1, -1));
- }
- });
- return 'get(' + parts.join(',') + ')';
- };
-
- //escapes a name to be used as a javascript identifier
- Parser.prototype.escName = function(str) {
- return str.replace(/\W/g, function(s) {
- return '$' + s.charCodeAt(0).toString(16);
- });
- };
-
- Parser.prototype.parseQuoted = function(str) {
- if (str.charAt(0) === "'") {
- str = str.slice(1, -1).replace(/\\.|"/, function(s) {
- if (s === "\\'") return "'";
- return s.charAt(0) === '\\' ? s : ('\\' + s);
- });
- str = '"' + str + '"';
- }
- //todo: try/catch or deal with invalid characters (linebreaks, control characters)
- return JSON.parse(str);
- };
-
-
- //the context 'this' inside tagHandlers is the parser instance
- var tagHandlers = {
- 'if': function(expr) {
- this.push('if (' + this.parseExpr(expr) + ') {');
- this.nest.unshift('if');
- },
- 'else': function() {
- if (this.nest[0] === 'for') {
- this.push('}, function() {');
- } else {
- this.push('} else {');
- }
- },
- 'elseif': function(expr) {
- this.push('} else if (' + this.parseExpr(expr) + ') {');
- },
- 'endif': function() {
- this.nest.shift();
- this.push('}');
- },
- 'for': function(str) {
- var i = str.indexOf(' in ');
- var name = str.slice(0, i).trim();
- var expr = str.slice(i + 4).trim();
- this.push('each(' + this.parseExpr(expr) + ',' + JSON.stringify(name) + ',function() {');
- this.nest.unshift('for');
- },
- 'endfor': function() {
- this.nest.shift();
- this.push('});');
- },
- 'raw': function() {
- this.rawMode = true;
- },
- 'endraw': function() {
- this.rawMode = false;
- },
- 'set': function(stmt) {
- var i = stmt.indexOf('=');
- var name = stmt.slice(0, i).trim();
- var expr = stmt.slice(i + 1).trim();
- this.push('set(' + JSON.stringify(name) + ',' + this.parseExpr(expr) + ');');
- },
- 'block': function(name) {
- if (this.isParent) {
- ++this.parentBlocks;
- var blockName = 'block_' + (this.escName(name) || this.parentBlocks);
- this.push('block(typeof ' + blockName + ' == "function" ? ' + blockName + ' : function() {');
- } else if (this.hasParent) {
- this.isSilent = false;
- ++this.childBlocks;
- blockName = 'block_' + (this.escName(name) || this.childBlocks);
- this.push('function ' + blockName + '() {');
- }
- this.nest.unshift('block');
- },
- 'endblock': function() {
- this.nest.shift();
- if (this.isParent) {
- this.push('});');
- } else if (this.hasParent) {
- this.push('}');
- this.isSilent = true;
- }
- },
- 'extends': function(name) {
- name = this.parseQuoted(name);
- var parentSrc = this.readTemplateFile(name);
- this.isParent = true;
- this.tokenize(parentSrc);
- this.isParent = false;
- this.hasParent = true;
- //silence output until we enter a child block
- this.isSilent = true;
- },
- 'include': function(name) {
- name = this.parseQuoted(name);
- var incSrc = this.readTemplateFile(name);
- this.isInclude = true;
- this.tokenize(incSrc);
- this.isInclude = false;
- }
- };
-
- //liquid style
- tagHandlers.assign = tagHandlers.set;
- //python/django style
- tagHandlers.elif = tagHandlers.elseif;
-
- var getRuntime = function runtime(data, opts) {
- var defaults = {
- autoEscape: 'toJson'
- };
- var _toString = Object.prototype.toString;
- var _hasOwnProperty = Object.prototype.hasOwnProperty;
- var getKeys = Object.keys || function(obj) {
- var keys = [];
- for (var n in obj)
- if (_hasOwnProperty.call(obj, n)) keys.push(n);
- return keys;
- };
- var isArray = Array.isArray || function(obj) {
- return _toString.call(obj) === '[object Array]';
- };
- var create = Object.create || function(obj) {
- function F() {}
-
- F.prototype = obj;
- return new F();
- };
- var toString = function(val) {
- if (val == null) return '';
- return (typeof val.toString == 'function') ? val.toString() : _toString.call(val);
- };
- var extend = function(dest, src) {
- var keys = getKeys(src);
- for (var i = 0, len = keys.length; i < len; i++) {
- var key = keys[i];
- dest[key] = src[key];
- }
- return dest;
- };
- //get a value, lexically, starting in current context; a.b -> get("a","b")
- var get = function() {
- var val, n = arguments[0],
- c = stack.length;
- while (c--) {
- val = stack[c][n];
- if (typeof val != 'undefined') break;
- }
- for (var i = 1, len = arguments.length; i < len; i++) {
- if (val == null) continue;
- n = arguments[i];
- val = (_hasOwnProperty.call(val, n)) ? val[n] : (typeof val._get == 'function' ? (val[n] = val._get(n)) : null);
- }
- return (val == null) ? '' : val;
- };
- var set = function(n, val) {
- stack[stack.length - 1][n] = val;
- };
- var push = function(ctx) {
- stack.push(ctx || {});
- };
- var pop = function() {
- stack.pop();
- };
- var write = function(str) {
- output.push(str);
- };
- var filter = function(val) {
- for (var i = 1, len = arguments.length; i < len; i++) {
- var arr = arguments[i],
- name = arr[0],
- filter = filters[name];
- if (filter) {
- arr[0] = val;
- //now arr looks like [val, arg1, arg2]
- val = filter.apply(data, arr);
- } else {
- throw new Error('Invalid filter: ' + name);
- }
- }
- if (opts.autoEscape && name !== opts.autoEscape && name !== 'safe') {
- //auto escape if not explicitly safe or already escaped
- val = filters[opts.autoEscape].call(data, val);
- }
- output.push(val);
- };
- var each = function(obj, loopvar, fn1, fn2) {
- if (obj == null) return;
- var arr = isArray(obj) ? obj : getKeys(obj),
- len = arr.length;
- var ctx = {
- loop: {
- length: len,
- first: arr[0],
- last: arr[len - 1]
- }
- };
- push(ctx);
- for (var i = 0; i < len; i++) {
- extend(ctx.loop, {
- index: i + 1,
- index0: i
- });
- fn1(ctx[loopvar] = arr[i]);
- }
- if (len === 0 && fn2) fn2();
- pop();
- };
- var block = function(fn) {
- push();
- fn();
- pop();
- };
- var render = function() {
- return output.join('');
- };
- data = data || {};
- opts = extend(defaults, opts || {});
- var filters = extend({
- html: function(val) {
- return toString(val)
- .split('&').join('&')
- .split('<').join('<')
- .split('>').join('>')
- .split('"').join('"');
- },
- safe: function(val) {
- return val;
- },
- toJson: function(val) {
- if (typeof val === 'object') {
- return JSON.stringify(val);
- }
- return toString(val);
- }
- }, opts.filters || {});
- var stack = [create(data || {})],
- output = [];
- return {
- get: get,
- set: set,
- push: push,
- pop: pop,
- write: write,
- filter: filter,
- each: each,
- block: block,
- render: render
- };
- };
-
- var runtime;
-
- jinja.compile = function(markup, opts) {
- opts = opts || {};
- var parser = new Parser();
- parser.readTemplateFile = this.readTemplateFile;
- var code = [];
- code.push('function render($) {');
- code.push('var get = $.get, set = $.set, push = $.push, pop = $.pop, write = $.write, filter = $.filter, each = $.each, block = $.block;');
- code.push.apply(code, parser.parse(markup));
- code.push('return $.render();');
- code.push('}');
- code = code.join('\n');
- if (opts.runtime === false) {
- var fn = new Function('data', 'options', 'return (' + code + ')(runtime(data, options))');
- } else {
- runtime = runtime || (runtime = getRuntime.toString());
- fn = new Function('data', 'options', 'return (' + code + ')((' + runtime + ')(data, options))');
- }
- return {
- render: fn
- };
- };
-
- jinja.render = function(markup, data, opts) {
- var tmpl = jinja.compile(markup);
- return tmpl.render(data, opts);
- };
-
- jinja.templateFiles = [];
-
- jinja.readTemplateFile = function(name) {
- var templateFiles = this.templateFiles || [];
- var templateFile = templateFiles[name];
- if (templateFile == null) {
- throw new Error('Template file not found: ' + name);
- }
- return templateFile;
- };
-
-
- /*!
- * Helpers
- */
-
- function trimLeft(str) {
- return str.replace(LEADING_SPACE, '');
- }
-
- function trimRight(str) {
- return str.replace(TRAILING_SPACE, '');
- }
-
- function matchAll(str, reg, fn) {
- //copy as global
- reg = new RegExp(reg.source, 'g' + (reg.ignoreCase ? 'i' : '') + (reg.multiline ? 'm' : ''));
- var match;
- while ((match = reg.exec(str))) {
- var result = fn(match[0], match.index, str);
- if (typeof result == 'number') {
- reg.lastIndex = result;
- }
- }
- }
-}));
\ No newline at end of file
diff --git a/欧歌/api/jsencrypt.js b/欧歌/api/jsencrypt.js
deleted file mode 100644
index 8deca5f..0000000
--- a/欧歌/api/jsencrypt.js
+++ /dev/null
@@ -1,360 +0,0 @@
-/*
- * 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/欧歌/api/json5.js b/欧歌/api/json5.js
deleted file mode 100644
index 7949f11..0000000
--- a/欧歌/api/json5.js
+++ /dev/null
@@ -1,1809 +0,0 @@
-(function(global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
- typeof define === 'function' && define.amd ? define(factory) :
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.JSON5 = factory());
-}(this, (function() {
- 'use strict';
-
- function createCommonjsModule(fn, module) {
- return module = {
- exports: {}
- }, fn(module, module.exports), module.exports;
- }
-
- var _global = createCommonjsModule(function(module) {
- // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
- var global = module.exports = typeof window != 'undefined' && window.Math == Math ?
- window : typeof self != 'undefined' && self.Math == Math ? self
- // eslint-disable-next-line no-new-func
- :
- Function('return this')();
- if (typeof __g == 'number') {
- __g = global;
- } // eslint-disable-line no-undef
- });
-
- var _core = createCommonjsModule(function(module) {
- var core = module.exports = {
- version: '2.6.5'
- };
- if (typeof __e == 'number') {
- __e = core;
- } // eslint-disable-line no-undef
- });
- var _core_1 = _core.version;
-
- var _isObject = function(it) {
- return typeof it === 'object' ? it !== null : typeof it === 'function';
- };
-
- var _anObject = function(it) {
- if (!_isObject(it)) {
- throw TypeError(it + ' is not an object!');
- }
- return it;
- };
-
- var _fails = function(exec) {
- try {
- return !!exec();
- } catch (e) {
- return true;
- }
- };
-
- // Thank's IE8 for his funny defineProperty
- var _descriptors = !_fails(function() {
- return Object.defineProperty({}, 'a', {
- get: function() {
- return 7;
- }
- }).a != 7;
- });
-
- var document = _global.document;
- // typeof document.createElement is 'object' in old IE
- var is = _isObject(document) && _isObject(document.createElement);
- var _domCreate = function(it) {
- return is ? document.createElement(it) : {};
- };
-
- var _ie8DomDefine = !_descriptors && !_fails(function() {
- return Object.defineProperty(_domCreate('div'), 'a', {
- get: function() {
- return 7;
- }
- }).a != 7;
- });
-
- // 7.1.1 ToPrimitive(input [, PreferredType])
-
- // instead of the ES6 spec version, we didn't implement @@toPrimitive case
- // and the second argument - flag - preferred type is a string
- var _toPrimitive = function(it, S) {
- if (!_isObject(it)) {
- return it;
- }
- var fn, val;
- if (S && typeof(fn = it.toString) == 'function' && !_isObject(val = fn.call(it))) {
- return val;
- }
- if (typeof(fn = it.valueOf) == 'function' && !_isObject(val = fn.call(it))) {
- return val;
- }
- if (!S && typeof(fn = it.toString) == 'function' && !_isObject(val = fn.call(it))) {
- return val;
- }
- throw TypeError("Can't convert object to primitive value");
- };
-
- var dP = Object.defineProperty;
-
- var f = _descriptors ? Object.defineProperty : function defineProperty(O, P, Attributes) {
- _anObject(O);
- P = _toPrimitive(P, true);
- _anObject(Attributes);
- if (_ie8DomDefine) {
- try {
- return dP(O, P, Attributes);
- } catch (e) {
- /* empty */ }
- }
- if ('get' in Attributes || 'set' in Attributes) {
- throw TypeError('Accessors not supported!');
- }
- if ('value' in Attributes) {
- O[P] = Attributes.value;
- }
- return O;
- };
-
- var _objectDp = {
- f: f
- };
-
- var _propertyDesc = function(bitmap, value) {
- return {
- enumerable: !(bitmap & 1),
- configurable: !(bitmap & 2),
- writable: !(bitmap & 4),
- value: value
- };
- };
-
- var _hide = _descriptors ? function(object, key, value) {
- return _objectDp.f(object, key, _propertyDesc(1, value));
- } : function(object, key, value) {
- object[key] = value;
- return object;
- };
-
- var hasOwnProperty = {}.hasOwnProperty;
- var _has = function(it, key) {
- return hasOwnProperty.call(it, key);
- };
-
- var id = 0;
- var px = Math.random();
- var _uid = function(key) {
- return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
- };
-
- var _library = false;
-
- var _shared = createCommonjsModule(function(module) {
- var SHARED = '__core-js_shared__';
- var store = _global[SHARED] || (_global[SHARED] = {});
-
- (module.exports = function(key, value) {
- return store[key] || (store[key] = value !== undefined ? value : {});
- })('versions', []).push({
- version: _core.version,
- mode: _library ? 'pure' : 'global',
- copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
- });
- });
-
- var _functionToString = _shared('native-function-to-string', Function.toString);
-
- var _redefine = createCommonjsModule(function(module) {
- var SRC = _uid('src');
-
- var TO_STRING = 'toString';
- var TPL = ('' + _functionToString).split(TO_STRING);
-
- _core.inspectSource = function(it) {
- return _functionToString.call(it);
- };
-
- (module.exports = function(O, key, val, safe) {
- var isFunction = typeof val == 'function';
- if (isFunction) {
- _has(val, 'name') || _hide(val, 'name', key);
- }
- if (O[key] === val) {
- return;
- }
- if (isFunction) {
- _has(val, SRC) || _hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
- }
- if (O === _global) {
- O[key] = val;
- } else if (!safe) {
- delete O[key];
- _hide(O, key, val);
- } else if (O[key]) {
- O[key] = val;
- } else {
- _hide(O, key, val);
- }
- // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
- })(Function.prototype, TO_STRING, function toString() {
- return typeof this == 'function' && this[SRC] || _functionToString.call(this);
- });
- });
-
- var _aFunction = function(it) {
- if (typeof it != 'function') {
- throw TypeError(it + ' is not a function!');
- }
- return it;
- };
-
- // optional / simple context binding
-
- var _ctx = function(fn, that, length) {
- _aFunction(fn);
- if (that === undefined) {
- return fn;
- }
- switch (length) {
- case 1:
- return function(a) {
- return fn.call(that, a);
- };
- case 2:
- return function(a, b) {
- return fn.call(that, a, b);
- };
- case 3:
- return function(a, b, c) {
- return fn.call(that, a, b, c);
- };
- }
- return function( /* ...args */ ) {
- return fn.apply(that, arguments);
- };
- };
-
- var PROTOTYPE = 'prototype';
-
- var $export = function(type, name, source) {
- var IS_FORCED = type & $export.F;
- var IS_GLOBAL = type & $export.G;
- var IS_STATIC = type & $export.S;
- var IS_PROTO = type & $export.P;
- var IS_BIND = type & $export.B;
- var target = IS_GLOBAL ? _global : IS_STATIC ? _global[name] || (_global[name] = {}) : (_global[name] || {})[PROTOTYPE];
- var exports = IS_GLOBAL ? _core : _core[name] || (_core[name] = {});
- var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
- var key, own, out, exp;
- if (IS_GLOBAL) {
- source = name;
- }
- for (key in source) {
- // contains in native
- own = !IS_FORCED && target && target[key] !== undefined;
- // export native or passed
- out = (own ? target : source)[key];
- // bind timers to global for call from export context
- exp = IS_BIND && own ? _ctx(out, _global) : IS_PROTO && typeof out == 'function' ? _ctx(Function.call, out) : out;
- // extend global
- if (target) {
- _redefine(target, key, out, type & $export.U);
- }
- // export
- if (exports[key] != out) {
- _hide(exports, key, exp);
- }
- if (IS_PROTO && expProto[key] != out) {
- expProto[key] = out;
- }
- }
- };
- _global.core = _core;
- // type bitmap
- $export.F = 1; // forced
- $export.G = 2; // global
- $export.S = 4; // static
- $export.P = 8; // proto
- $export.B = 16; // bind
- $export.W = 32; // wrap
- $export.U = 64; // safe
- $export.R = 128; // real proto method for `library`
- var _export = $export;
-
- // 7.1.4 ToInteger
- var ceil = Math.ceil;
- var floor = Math.floor;
- var _toInteger = function(it) {
- return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
- };
-
- // 7.2.1 RequireObjectCoercible(argument)
- var _defined = function(it) {
- if (it == undefined) {
- throw TypeError("Can't call method on " + it);
- }
- return it;
- };
-
- // true -> String#at
- // false -> String#codePointAt
- var _stringAt = function(TO_STRING) {
- return function(that, pos) {
- var s = String(_defined(that));
- var i = _toInteger(pos);
- var l = s.length;
- var a, b;
- if (i < 0 || i >= l) {
- return TO_STRING ? '' : undefined;
- }
- a = s.charCodeAt(i);
- return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff ?
- TO_STRING ? s.charAt(i) : a :
- TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
- };
- };
-
- var $at = _stringAt(false);
- _export(_export.P, 'String', {
- // 21.1.3.3 String.prototype.codePointAt(pos)
- codePointAt: function codePointAt(pos) {
- return $at(this, pos);
- }
- });
-
- var codePointAt = _core.String.codePointAt;
-
- var max = Math.max;
- var min = Math.min;
- var _toAbsoluteIndex = function(index, length) {
- index = _toInteger(index);
- return index < 0 ? max(index + length, 0) : min(index, length);
- };
-
- var fromCharCode = String.fromCharCode;
- var $fromCodePoint = String.fromCodePoint;
-
- // length should be 1, old FF problem
- _export(_export.S + _export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
- // 21.1.2.2 String.fromCodePoint(...codePoints)
- fromCodePoint: function fromCodePoint(x) {
- var arguments$1 = arguments;
- // eslint-disable-line no-unused-vars
- var res = [];
- var aLen = arguments.length;
- var i = 0;
- var code;
- while (aLen > i) {
- code = +arguments$1[i++];
- if (_toAbsoluteIndex(code, 0x10ffff) !== code) {
- throw RangeError(code + ' is not a valid code point');
- }
- res.push(code < 0x10000 ?
- fromCharCode(code) :
- fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
- );
- }
- return res.join('');
- }
- });
-
- var fromCodePoint = _core.String.fromCodePoint;
-
- // This is a generated file. Do not edit.
- var Space_Separator = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/;
- var ID_Start = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/;
- var ID_Continue = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/;
-
- var unicode = {
- Space_Separator: Space_Separator,
- ID_Start: ID_Start,
- ID_Continue: ID_Continue
- };
-
- var util = {
- isSpaceSeparator: function isSpaceSeparator(c) {
- return typeof c === 'string' && unicode.Space_Separator.test(c)
- },
-
- isIdStartChar: function isIdStartChar(c) {
- return typeof c === 'string' && (
- (c >= 'a' && c <= 'z') ||
- (c >= 'A' && c <= 'Z') ||
- (c === '$') || (c === '_') ||
- unicode.ID_Start.test(c)
- )
- },
-
- isIdContinueChar: function isIdContinueChar(c) {
- return typeof c === 'string' && (
- (c >= 'a' && c <= 'z') ||
- (c >= 'A' && c <= 'Z') ||
- (c >= '0' && c <= '9') ||
- (c === '$') || (c === '_') ||
- (c === '\u200C') || (c === '\u200D') ||
- unicode.ID_Continue.test(c)
- )
- },
-
- isDigit: function isDigit(c) {
- return typeof c === 'string' && /[0-9]/.test(c)
- },
-
- isHexDigit: function isHexDigit(c) {
- return typeof c === 'string' && /[0-9A-Fa-f]/.test(c)
- },
- };
-
- var source;
- var parseState;
- var stack;
- var pos;
- var line;
- var column;
- var token;
- var key;
- var root;
-
- var parse = function parse(text, reviver) {
- source = String(text);
- parseState = 'start';
- stack = [];
- pos = 0;
- line = 1;
- column = 0;
- token = undefined;
- key = undefined;
- root = undefined;
-
- do {
- token = lex();
-
- // This code is unreachable.
- // if (!parseStates[parseState]) {
- // throw invalidParseState()
- // }
-
- parseStates[parseState]();
- } while (token.type !== 'eof')
-
- if (typeof reviver === 'function') {
- return internalize({
- '': root
- }, '', reviver)
- }
-
- return root
- };
-
- function internalize(holder, name, reviver) {
- var value = holder[name];
- if (value != null && typeof value === 'object') {
- if (Array.isArray(value)) {
- for (var i = 0; i < value.length; i++) {
- var key = String(i);
- var replacement = internalize(value, key, reviver);
- if (replacement === undefined) {
- delete value[key];
- } else {
- Object.defineProperty(value, key, {
- value: replacement,
- writable: true,
- enumerable: true,
- configurable: true,
- });
- }
- }
- } else {
- for (var key$1 in value) {
- var replacement$1 = internalize(value, key$1, reviver);
- if (replacement$1 === undefined) {
- delete value[key$1];
- } else {
- Object.defineProperty(value, key$1, {
- value: replacement$1,
- writable: true,
- enumerable: true,
- configurable: true,
- });
- }
- }
- }
- }
-
- return reviver.call(holder, name, value)
- }
-
- var lexState;
- var buffer;
- var doubleQuote;
- var sign;
- var c;
-
- function lex() {
- lexState = 'default';
- buffer = '';
- doubleQuote = false;
- sign = 1;
-
- for (;;) {
- c = peek();
-
- // This code is unreachable.
- // if (!lexStates[lexState]) {
- // throw invalidLexState(lexState)
- // }
-
- var token = lexStates[lexState]();
- if (token) {
- return token
- }
- }
- }
-
- function peek() {
- if (source[pos]) {
- return String.fromCodePoint(source.codePointAt(pos))
- }
- }
-
- function read() {
- var c = peek();
-
- if (c === '\n') {
- line++;
- column = 0;
- } else if (c) {
- column += c.length;
- } else {
- column++;
- }
-
- if (c) {
- pos += c.length;
- }
-
- return c
- }
-
- var lexStates = {
- default: function default$1() {
- switch (c) {
- case '\t':
- case '\v':
- case '\f':
- case ' ':
- case '\u00A0':
- case '\uFEFF':
- case '\n':
- case '\r':
- case '\u2028':
- case '\u2029':
- read();
- return
-
- case '/':
- read();
- lexState = 'comment';
- return
-
- case undefined:
- read();
- return newToken('eof')
- }
-
- if (util.isSpaceSeparator(c)) {
- read();
- return
- }
-
- // This code is unreachable.
- // if (!lexStates[parseState]) {
- // throw invalidLexState(parseState)
- // }
-
- return lexStates[parseState]()
- },
-
- comment: function comment() {
- switch (c) {
- case '*':
- read();
- lexState = 'multiLineComment';
- return
-
- case '/':
- read();
- lexState = 'singleLineComment';
- return
- }
-
- throw invalidChar(read())
- },
-
- multiLineComment: function multiLineComment() {
- switch (c) {
- case '*':
- read();
- lexState = 'multiLineCommentAsterisk';
- return
-
- case undefined:
- throw invalidChar(read())
- }
-
- read();
- },
-
- multiLineCommentAsterisk: function multiLineCommentAsterisk() {
- switch (c) {
- case '*':
- read();
- return
-
- case '/':
- read();
- lexState = 'default';
- return
-
- case undefined:
- throw invalidChar(read())
- }
-
- read();
- lexState = 'multiLineComment';
- },
-
- singleLineComment: function singleLineComment() {
- switch (c) {
- case '\n':
- case '\r':
- case '\u2028':
- case '\u2029':
- read();
- lexState = 'default';
- return
-
- case undefined:
- read();
- return newToken('eof')
- }
-
- read();
- },
-
- value: function value() {
- switch (c) {
- case '{':
- case '[':
- return newToken('punctuator', read())
-
- case 'n':
- read();
- literal('ull');
- return newToken('null', null)
-
- case 't':
- read();
- literal('rue');
- return newToken('boolean', true)
-
- case 'f':
- read();
- literal('alse');
- return newToken('boolean', false)
-
- case '-':
- case '+':
- if (read() === '-') {
- sign = -1;
- }
-
- lexState = 'sign';
- return
-
- case '.':
- buffer = read();
- lexState = 'decimalPointLeading';
- return
-
- case '0':
- buffer = read();
- lexState = 'zero';
- return
-
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- buffer = read();
- lexState = 'decimalInteger';
- return
-
- case 'I':
- read();
- literal('nfinity');
- return newToken('numeric', Infinity)
-
- case 'N':
- read();
- literal('aN');
- return newToken('numeric', NaN)
-
- case '"':
- case "'":
- doubleQuote = (read() === '"');
- buffer = '';
- lexState = 'string';
- return
- }
-
- throw invalidChar(read())
- },
-
- identifierNameStartEscape: function identifierNameStartEscape() {
- if (c !== 'u') {
- throw invalidChar(read())
- }
-
- read();
- var u = unicodeEscape();
- switch (u) {
- case '$':
- case '_':
- break
-
- default:
- if (!util.isIdStartChar(u)) {
- throw invalidIdentifier()
- }
-
- break
- }
-
- buffer += u;
- lexState = 'identifierName';
- },
-
- identifierName: function identifierName() {
- switch (c) {
- case '$':
- case '_':
- case '\u200C':
- case '\u200D':
- buffer += read();
- return
-
- case '\\':
- read();
- lexState = 'identifierNameEscape';
- return
- }
-
- if (util.isIdContinueChar(c)) {
- buffer += read();
- return
- }
-
- return newToken('identifier', buffer)
- },
-
- identifierNameEscape: function identifierNameEscape() {
- if (c !== 'u') {
- throw invalidChar(read())
- }
-
- read();
- var u = unicodeEscape();
- switch (u) {
- case '$':
- case '_':
- case '\u200C':
- case '\u200D':
- break
-
- default:
- if (!util.isIdContinueChar(u)) {
- throw invalidIdentifier()
- }
-
- break
- }
-
- buffer += u;
- lexState = 'identifierName';
- },
-
- sign: function sign$1() {
- switch (c) {
- case '.':
- buffer = read();
- lexState = 'decimalPointLeading';
- return
-
- case '0':
- buffer = read();
- lexState = 'zero';
- return
-
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- buffer = read();
- lexState = 'decimalInteger';
- return
-
- case 'I':
- read();
- literal('nfinity');
- return newToken('numeric', sign * Infinity)
-
- case 'N':
- read();
- literal('aN');
- return newToken('numeric', NaN)
- }
-
- throw invalidChar(read())
- },
-
- zero: function zero() {
- switch (c) {
- case '.':
- buffer += read();
- lexState = 'decimalPoint';
- return
-
- case 'e':
- case 'E':
- buffer += read();
- lexState = 'decimalExponent';
- return
-
- case 'x':
- case 'X':
- buffer += read();
- lexState = 'hexadecimal';
- return
- }
-
- return newToken('numeric', sign * 0)
- },
-
- decimalInteger: function decimalInteger() {
- switch (c) {
- case '.':
- buffer += read();
- lexState = 'decimalPoint';
- return
-
- case 'e':
- case 'E':
- buffer += read();
- lexState = 'decimalExponent';
- return
- }
-
- if (util.isDigit(c)) {
- buffer += read();
- return
- }
-
- return newToken('numeric', sign * Number(buffer))
- },
-
- decimalPointLeading: function decimalPointLeading() {
- if (util.isDigit(c)) {
- buffer += read();
- lexState = 'decimalFraction';
- return
- }
-
- throw invalidChar(read())
- },
-
- decimalPoint: function decimalPoint() {
- switch (c) {
- case 'e':
- case 'E':
- buffer += read();
- lexState = 'decimalExponent';
- return
- }
-
- if (util.isDigit(c)) {
- buffer += read();
- lexState = 'decimalFraction';
- return
- }
-
- return newToken('numeric', sign * Number(buffer))
- },
-
- decimalFraction: function decimalFraction() {
- switch (c) {
- case 'e':
- case 'E':
- buffer += read();
- lexState = 'decimalExponent';
- return
- }
-
- if (util.isDigit(c)) {
- buffer += read();
- return
- }
-
- return newToken('numeric', sign * Number(buffer))
- },
-
- decimalExponent: function decimalExponent() {
- switch (c) {
- case '+':
- case '-':
- buffer += read();
- lexState = 'decimalExponentSign';
- return
- }
-
- if (util.isDigit(c)) {
- buffer += read();
- lexState = 'decimalExponentInteger';
- return
- }
-
- throw invalidChar(read())
- },
-
- decimalExponentSign: function decimalExponentSign() {
- if (util.isDigit(c)) {
- buffer += read();
- lexState = 'decimalExponentInteger';
- return
- }
-
- throw invalidChar(read())
- },
-
- decimalExponentInteger: function decimalExponentInteger() {
- if (util.isDigit(c)) {
- buffer += read();
- return
- }
-
- return newToken('numeric', sign * Number(buffer))
- },
-
- hexadecimal: function hexadecimal() {
- if (util.isHexDigit(c)) {
- buffer += read();
- lexState = 'hexadecimalInteger';
- return
- }
-
- throw invalidChar(read())
- },
-
- hexadecimalInteger: function hexadecimalInteger() {
- if (util.isHexDigit(c)) {
- buffer += read();
- return
- }
-
- return newToken('numeric', sign * Number(buffer))
- },
-
- string: function string() {
- switch (c) {
- case '\\':
- read();
- buffer += escape();
- return
-
- case '"':
- if (doubleQuote) {
- read();
- return newToken('string', buffer)
- }
-
- buffer += read();
- return
-
- case "'":
- if (!doubleQuote) {
- read();
- return newToken('string', buffer)
- }
-
- buffer += read();
- return
-
- case '\n':
- case '\r':
- throw invalidChar(read())
-
- case '\u2028':
- case '\u2029':
- separatorChar(c);
- break
-
- case undefined:
- throw invalidChar(read())
- }
-
- buffer += read();
- },
-
- start: function start() {
- switch (c) {
- case '{':
- case '[':
- return newToken('punctuator', read())
-
- // This code is unreachable since the default lexState handles eof.
- // case undefined:
- // return newToken('eof')
- }
-
- lexState = 'value';
- },
-
- beforePropertyName: function beforePropertyName() {
- switch (c) {
- case '$':
- case '_':
- buffer = read();
- lexState = 'identifierName';
- return
-
- case '\\':
- read();
- lexState = 'identifierNameStartEscape';
- return
-
- case '}':
- return newToken('punctuator', read())
-
- case '"':
- case "'":
- doubleQuote = (read() === '"');
- lexState = 'string';
- return
- }
-
- if (util.isIdStartChar(c)) {
- buffer += read();
- lexState = 'identifierName';
- return
- }
-
- throw invalidChar(read())
- },
-
- afterPropertyName: function afterPropertyName() {
- if (c === ':') {
- return newToken('punctuator', read())
- }
-
- throw invalidChar(read())
- },
-
- beforePropertyValue: function beforePropertyValue() {
- lexState = 'value';
- },
-
- afterPropertyValue: function afterPropertyValue() {
- switch (c) {
- case ',':
- case '}':
- return newToken('punctuator', read())
- }
-
- throw invalidChar(read())
- },
-
- beforeArrayValue: function beforeArrayValue() {
- if (c === ']') {
- return newToken('punctuator', read())
- }
-
- lexState = 'value';
- },
-
- afterArrayValue: function afterArrayValue() {
- switch (c) {
- case ',':
- case ']':
- return newToken('punctuator', read())
- }
-
- throw invalidChar(read())
- },
-
- end: function end() {
- // This code is unreachable since it's handled by the default lexState.
- // if (c === undefined) {
- // read()
- // return newToken('eof')
- // }
-
- throw invalidChar(read())
- },
- };
-
- function newToken(type, value) {
- return {
- type: type,
- value: value,
- line: line,
- column: column,
- }
- }
-
- function literal(s) {
- for (var i = 0, list = s; i < list.length; i += 1) {
- var c = list[i];
-
- var p = peek();
-
- if (p !== c) {
- throw invalidChar(read())
- }
-
- read();
- }
- }
-
- function escape() {
- var c = peek();
- switch (c) {
- case 'b':
- read();
- return '\b'
-
- case 'f':
- read();
- return '\f'
-
- case 'n':
- read();
- return '\n'
-
- case 'r':
- read();
- return '\r'
-
- case 't':
- read();
- return '\t'
-
- case 'v':
- read();
- return '\v'
-
- case '0':
- read();
- if (util.isDigit(peek())) {
- throw invalidChar(read())
- }
-
- return '\0'
-
- case 'x':
- read();
- return hexEscape()
-
- case 'u':
- read();
- return unicodeEscape()
-
- case '\n':
- case '\u2028':
- case '\u2029':
- read();
- return ''
-
- case '\r':
- read();
- if (peek() === '\n') {
- read();
- }
-
- return ''
-
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- throw invalidChar(read())
-
- case undefined:
- throw invalidChar(read())
- }
-
- return read()
- }
-
- function hexEscape() {
- var buffer = '';
- var c = peek();
-
- if (!util.isHexDigit(c)) {
- throw invalidChar(read())
- }
-
- buffer += read();
-
- c = peek();
- if (!util.isHexDigit(c)) {
- throw invalidChar(read())
- }
-
- buffer += read();
-
- return String.fromCodePoint(parseInt(buffer, 16))
- }
-
- function unicodeEscape() {
- var buffer = '';
- var count = 4;
-
- while (count-- > 0) {
- var c = peek();
- if (!util.isHexDigit(c)) {
- throw invalidChar(read())
- }
-
- buffer += read();
- }
-
- return String.fromCodePoint(parseInt(buffer, 16))
- }
-
- var parseStates = {
- start: function start() {
- if (token.type === 'eof') {
- throw invalidEOF()
- }
-
- push();
- },
-
- beforePropertyName: function beforePropertyName() {
- switch (token.type) {
- case 'identifier':
- case 'string':
- key = token.value;
- parseState = 'afterPropertyName';
- return
-
- case 'punctuator':
- // This code is unreachable since it's handled by the lexState.
- // if (token.value !== '}') {
- // throw invalidToken()
- // }
-
- pop();
- return
-
- case 'eof':
- throw invalidEOF()
- }
-
- // This code is unreachable since it's handled by the lexState.
- // throw invalidToken()
- },
-
- afterPropertyName: function afterPropertyName() {
- // This code is unreachable since it's handled by the lexState.
- // if (token.type !== 'punctuator' || token.value !== ':') {
- // throw invalidToken()
- // }
-
- if (token.type === 'eof') {
- throw invalidEOF()
- }
-
- parseState = 'beforePropertyValue';
- },
-
- beforePropertyValue: function beforePropertyValue() {
- if (token.type === 'eof') {
- throw invalidEOF()
- }
-
- push();
- },
-
- beforeArrayValue: function beforeArrayValue() {
- if (token.type === 'eof') {
- throw invalidEOF()
- }
-
- if (token.type === 'punctuator' && token.value === ']') {
- pop();
- return
- }
-
- push();
- },
-
- afterPropertyValue: function afterPropertyValue() {
- // This code is unreachable since it's handled by the lexState.
- // if (token.type !== 'punctuator') {
- // throw invalidToken()
- // }
-
- if (token.type === 'eof') {
- throw invalidEOF()
- }
-
- switch (token.value) {
- case ',':
- parseState = 'beforePropertyName';
- return
-
- case '}':
- pop();
- }
-
- // This code is unreachable since it's handled by the lexState.
- // throw invalidToken()
- },
-
- afterArrayValue: function afterArrayValue() {
- // This code is unreachable since it's handled by the lexState.
- // if (token.type !== 'punctuator') {
- // throw invalidToken()
- // }
-
- if (token.type === 'eof') {
- throw invalidEOF()
- }
-
- switch (token.value) {
- case ',':
- parseState = 'beforeArrayValue';
- return
-
- case ']':
- pop();
- }
-
- // This code is unreachable since it's handled by the lexState.
- // throw invalidToken()
- },
-
- end: function end() {
- // This code is unreachable since it's handled by the lexState.
- // if (token.type !== 'eof') {
- // throw invalidToken()
- // }
- },
- };
-
- function push() {
- var value;
-
- switch (token.type) {
- case 'punctuator':
- switch (token.value) {
- case '{':
- value = {};
- break
-
- case '[':
- value = [];
- break
- }
-
- break
-
- case 'null':
- case 'boolean':
- case 'numeric':
- case 'string':
- value = token.value;
- break
-
- // This code is unreachable.
- // default:
- // throw invalidToken()
- }
-
- if (root === undefined) {
- root = value;
- } else {
- var parent = stack[stack.length - 1];
- if (Array.isArray(parent)) {
- parent.push(value);
- } else {
- Object.defineProperty(parent, key, {
- value: value,
- writable: true,
- enumerable: true,
- configurable: true,
- });
- }
- }
-
- if (value !== null && typeof value === 'object') {
- stack.push(value);
-
- if (Array.isArray(value)) {
- parseState = 'beforeArrayValue';
- } else {
- parseState = 'beforePropertyName';
- }
- } else {
- var current = stack[stack.length - 1];
- if (current == null) {
- parseState = 'end';
- } else if (Array.isArray(current)) {
- parseState = 'afterArrayValue';
- } else {
- parseState = 'afterPropertyValue';
- }
- }
- }
-
- function pop() {
- stack.pop();
-
- var current = stack[stack.length - 1];
- if (current == null) {
- parseState = 'end';
- } else if (Array.isArray(current)) {
- parseState = 'afterArrayValue';
- } else {
- parseState = 'afterPropertyValue';
- }
- }
-
- // This code is unreachable.
- // function invalidParseState () {
- // return new Error(`JSON5: invalid parse state '${parseState}'`)
- // }
-
- // This code is unreachable.
- // function invalidLexState (state) {
- // return new Error(`JSON5: invalid lex state '${state}'`)
- // }
-
- function invalidChar(c) {
- if (c === undefined) {
- return syntaxError(("JSON5: invalid end of input at " + line + ":" + column))
- }
-
- return syntaxError(("JSON5: invalid character '" + (formatChar(c)) + "' at " + line + ":" + column))
- }
-
- function invalidEOF() {
- return syntaxError(("JSON5: invalid end of input at " + line + ":" + column))
- }
-
- // This code is unreachable.
- // function invalidToken () {
- // if (token.type === 'eof') {
- // return syntaxError(`JSON5: invalid end of input at ${line}:${column}`)
- // }
-
- // const c = String.fromCodePoint(token.value.codePointAt(0))
- // return syntaxError(`JSON5: invalid character '${formatChar(c)}' at ${line}:${column}`)
- // }
-
- function invalidIdentifier() {
- column -= 5;
- return syntaxError(("JSON5: invalid identifier character at " + line + ":" + column))
- }
-
- function separatorChar(c) {
- console.warn(("JSON5: '" + (formatChar(c)) + "' in strings is not valid ECMAScript; consider escaping"));
- }
-
- function formatChar(c) {
- var replacements = {
- "'": "\\'",
- '"': '\\"',
- '\\': '\\\\',
- '\b': '\\b',
- '\f': '\\f',
- '\n': '\\n',
- '\r': '\\r',
- '\t': '\\t',
- '\v': '\\v',
- '\0': '\\0',
- '\u2028': '\\u2028',
- '\u2029': '\\u2029',
- };
-
- if (replacements[c]) {
- return replacements[c]
- }
-
- if (c < ' ') {
- var hexString = c.charCodeAt(0).toString(16);
- return '\\x' + ('00' + hexString).substring(hexString.length)
- }
-
- return c
- }
-
- function syntaxError(message) {
- var err = new SyntaxError(message);
- err.lineNumber = line;
- err.columnNumber = column;
- return err
- }
-
- var stringify = function stringify(value, replacer, space) {
- var stack = [];
- var indent = '';
- var propertyList;
- var replacerFunc;
- var gap = '';
- var quote;
-
- if (
- replacer != null &&
- typeof replacer === 'object' &&
- !Array.isArray(replacer)
- ) {
- space = replacer.space;
- quote = replacer.quote;
- replacer = replacer.replacer;
- }
-
- if (typeof replacer === 'function') {
- replacerFunc = replacer;
- } else if (Array.isArray(replacer)) {
- propertyList = [];
- for (var i = 0, list = replacer; i < list.length; i += 1) {
- var v = list[i];
-
- var item = (void 0);
-
- if (typeof v === 'string') {
- item = v;
- } else if (
- typeof v === 'number' ||
- v instanceof String ||
- v instanceof Number
- ) {
- item = String(v);
- }
-
- if (item !== undefined && propertyList.indexOf(item) < 0) {
- propertyList.push(item);
- }
- }
- }
-
- if (space instanceof Number) {
- space = Number(space);
- } else if (space instanceof String) {
- space = String(space);
- }
-
- if (typeof space === 'number') {
- if (space > 0) {
- space = Math.min(10, Math.floor(space));
- gap = ' '.substr(0, space);
- }
- } else if (typeof space === 'string') {
- gap = space.substr(0, 10);
- }
-
- return serializeProperty('', {
- '': value
- })
-
- function serializeProperty(key, holder) {
- var value = holder[key];
- if (value != null) {
- if (typeof value.toJSON5 === 'function') {
- value = value.toJSON5(key);
- } else if (typeof value.toJSON === 'function') {
- value = value.toJSON(key);
- }
- }
-
- if (replacerFunc) {
- value = replacerFunc.call(holder, key, value);
- }
-
- if (value instanceof Number) {
- value = Number(value);
- } else if (value instanceof String) {
- value = String(value);
- } else if (value instanceof Boolean) {
- value = value.valueOf();
- }
-
- switch (value) {
- case null:
- return 'null'
- case true:
- return 'true'
- case false:
- return 'false'
- }
-
- if (typeof value === 'string') {
- return quoteString(value, false)
- }
-
- if (typeof value === 'number') {
- return String(value)
- }
-
- if (typeof value === 'object') {
- return Array.isArray(value) ? serializeArray(value) : serializeObject(value)
- }
-
- return undefined
- }
-
- function quoteString(value) {
- var quotes = {
- "'": 0.1,
- '"': 0.2,
- };
-
- var replacements = {
- "'": "\\'",
- '"': '\\"',
- '\\': '\\\\',
- '\b': '\\b',
- '\f': '\\f',
- '\n': '\\n',
- '\r': '\\r',
- '\t': '\\t',
- '\v': '\\v',
- '\0': '\\0',
- '\u2028': '\\u2028',
- '\u2029': '\\u2029',
- };
-
- var product = '';
-
- for (var i = 0; i < value.length; i++) {
- var c = value[i];
- switch (c) {
- case "'":
- case '"':
- quotes[c]++;
- product += c;
- continue
-
- case '\0':
- if (util.isDigit(value[i + 1])) {
- product += '\\x00';
- continue
- }
- }
-
- if (replacements[c]) {
- product += replacements[c];
- continue
- }
-
- if (c < ' ') {
- var hexString = c.charCodeAt(0).toString(16);
- product += '\\x' + ('00' + hexString).substring(hexString.length);
- continue
- }
-
- product += c;
- }
-
- var quoteChar = quote || Object.keys(quotes).reduce(function(a, b) {
- return (quotes[a] < quotes[b]) ? a : b;
- });
-
- product = product.replace(new RegExp(quoteChar, 'g'), replacements[quoteChar]);
-
- return quoteChar + product + quoteChar
- }
-
- function serializeObject(value) {
- if (stack.indexOf(value) >= 0) {
- throw TypeError('Converting circular structure to JSON5')
- }
-
- stack.push(value);
-
- var stepback = indent;
- indent = indent + gap;
-
- var keys = propertyList || Object.keys(value);
- var partial = [];
- for (var i = 0, list = keys; i < list.length; i += 1) {
- var key = list[i];
-
- var propertyString = serializeProperty(key, value);
- if (propertyString !== undefined) {
- var member = serializeKey(key) + ':';
- if (gap !== '') {
- member += ' ';
- }
- member += propertyString;
- partial.push(member);
- }
- }
-
- var final;
- if (partial.length === 0) {
- final = '{}';
- } else {
- var properties;
- if (gap === '') {
- properties = partial.join(',');
- final = '{' + properties + '}';
- } else {
- var separator = ',\n' + indent;
- properties = partial.join(separator);
- final = '{\n' + indent + properties + ',\n' + stepback + '}';
- }
- }
-
- stack.pop();
- indent = stepback;
- return final
- }
-
- function serializeKey(key) {
- if (key.length === 0) {
- return quoteString(key, true)
- }
-
- var firstChar = String.fromCodePoint(key.codePointAt(0));
- if (!util.isIdStartChar(firstChar)) {
- return quoteString(key, true)
- }
-
- for (var i = firstChar.length; i < key.length; i++) {
- if (!util.isIdContinueChar(String.fromCodePoint(key.codePointAt(i)))) {
- return quoteString(key, true)
- }
- }
-
- return key
- }
-
- function serializeArray(value) {
- if (stack.indexOf(value) >= 0) {
- throw TypeError('Converting circular structure to JSON5')
- }
-
- stack.push(value);
-
- var stepback = indent;
- indent = indent + gap;
-
- var partial = [];
- for (var i = 0; i < value.length; i++) {
- var propertyString = serializeProperty(String(i), value);
- partial.push((propertyString !== undefined) ? propertyString : 'null');
- }
-
- var final;
- if (partial.length === 0) {
- final = '[]';
- } else {
- if (gap === '') {
- var properties = partial.join(',');
- final = '[' + properties + ']';
- } else {
- var separator = ',\n' + indent;
- var properties$1 = partial.join(separator);
- final = '[\n' + indent + properties$1 + ',\n' + stepback + ']';
- }
- }
-
- stack.pop();
- indent = stepback;
- return final
- }
- };
-
- var JSON5 = {
- parse: parse,
- stringify: stringify,
- };
-
- var lib = JSON5;
-
- var es5 = lib;
-
- return es5;
-
-})));
\ No newline at end of file
diff --git a/欧歌/api/node-rsa.js b/欧歌/api/node-rsa.js
deleted file mode 100644
index fab092b..0000000
--- a/欧歌/api/node-rsa.js
+++ /dev/null
@@ -1,5858 +0,0 @@
-/*! 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/欧歌/api/pako.min.js b/欧歌/api/pako.min.js
deleted file mode 100644
index 09522f2..0000000
--- a/欧歌/api/pako.min.js
+++ /dev/null
@@ -1,1439 +0,0 @@
-/*! 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/欧歌/api/模板.js b/欧歌/api/模板.js
deleted file mode 100644
index 6da4cc5..0000000
--- a/欧歌/api/模板.js
+++ /dev/null
@@ -1,429 +0,0 @@
-if (typeof Object.assign !== 'function') {
- Object.assign = function() {
- let target = arguments[0];
- for (let i = 1; i < arguments.length; i++) {
- let source = arguments[i];
- for (let key in source) {
- if (Object.prototype.hasOwnProperty.call(source, key)) {
- target[key] = source[key];
- }
- }
- }
- return target;
- };
-}
-
-// 通用免嗅探播放
-let common_lazy = `js:
- let html = request(input);
- let hconf = html.match(/r player_.*?=(.*?))[1];
- let json = JSON5.parse(hconf);
- let url = json.url;
- if (json.encrypt == '1') {
- url = unescape(url);
- } else if (json.encrypt == '2') {
- url = unescape(base64Decode(url));
- }
- if (/\\.(m3u8|mp4|m4a|mp3)/.test(url)) {
- input = {
- parse: 0,
- jx: 0,
- url: url,
- };
- } else {
- input = url && url.startsWith('http') && tellIsJx(url) ? {parse:0,jx:1,url:url}:input;
- }`;
-// 默认嗅探播放
-
-let def_lazy = `js:
- input = { parse: 1, url: input, js: '' };`;
-// 采集站播放
-
-let cj_lazy = `js:
- if (/\\.(m3u8|mp4)/.test(input)) {
- input = { parse: 0, url: input };
- } else {
- if (rule.parse_url.startsWith('json:')) {
- let purl = rule.parse_url.replace('json:', '') + input;
- let html = request(purl);
- let json = JSON.parse(html);
- if (json.url) {
- input = { parse: 0, url: json.url };
- }
- } else {
- input = rule.parse_url + input;
- }
- }`;
-
-function getMubans() {
- const mubanDict = { // 模板字典
- mx: {
- title: '',
- host: '',
- url: '/vodshow/fyclass--------fypage---/',
- searchUrl: '/vodsearch/**----------fypage---/',
- class_parse: '.top_nav li;a&&Text;a&&href;.*/(.*?)/',
- searchable: 2,
- quickSearch: 0,
- filterable: 0,
- headers: {
- 'User-Agent': 'MOBILE_UA',
- },
- play_parse: true,
- lazy: common_lazy,
- limit: 6,
- double: true,
- 推荐: '.cbox_list;*;*;*;*;*',
- 一级: 'ul.vodlist li;a&&title;a&&data-original;.pic_text&&Text;a&&href',
- 二级: {
- title: 'h2&&Text;.content_detail:eq(1)&&li&&a:eq(2)&&Text',
- img: '.vodlist_thumb&&data-original',
- desc: '.content_detail:eq(1)&&li:eq(1)&&Text;.content_detail:eq(1)&&li&&a&&Text;.content_detail:eq(1)&&li&&a:eq(1)&&Text;.content_detail:eq(1)&&li:eq(2)&&Text;.content_detail:eq(1)&&li:eq(3)&&Text',
- content: '.content_desc&&span&&Text',
- tabs: '.play_source_tab&&a',
- lists: '.content_playlist:eq(#id) li',
- },
- 搜索: '*',
- },
- mxpro: {
- title: '',
- host: '', // homeUrl:'/',
- url: '/vodshow/fyclass--------fypage---.html',
- searchUrl: '/vodsearch/**----------fypage---.html',
- searchable: 2, //是否启用全局搜索,
- quickSearch: 0, //是否启用快速搜索,
- filterable: 0, //是否启用分类筛选,
- headers: { //网站的请求头,完整支持所有的,常带ua和cookies
- 'User-Agent': 'MOBILE_UA', // "Cookie": "searchneed=ok"
- },
- class_parse: '.navbar-items li:gt(0):lt(10);a&&Text;a&&href;/(\\d+)',
- play_parse: true,
- lazy: common_lazy,
- limit: 6,
- double: true, // 推荐内容是否双层定位
- 推荐: '.tab-list.active;a.module-poster-item.module-item;.module-poster-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href',
- 一级: 'body a.module-poster-item.module-item;a&&title;.lazyload&&data-original;.module-item-note&&Text;a&&href',
- 二级: {
- title: 'h1&&Text;.module-info-tag-link:eq(-1)&&Text',
- img: '.lazyload&&data-original||data-src||src',
- desc: '.module-info-item:eq(-2)&&Text;.module-info-tag-link&&Text;.module-info-tag-link:eq(1)&&Text;.module-info-item:eq(2)&&Text;.module-info-item:eq(1)&&Text',
- content: '.module-info-introduction&&Text',
- tabs: '.module-tab-item',
- lists: '.module-play-list:eq(#id) a',
- tab_text: 'div--small&&Text',
- },
- 搜索: 'body .module-item;.module-card-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href;.module-info-item-content&&Text',
- },
- mxone5: {
- title: '',
- host: '',
- url: '/show/fyclass--------fypage---.html',
- searchUrl: '/search/**----------fypage---.html',
- searchable: 2, //是否启用全局搜索,
- quickSearch: 0, //是否启用快速搜索,
- filterable: 0, //是否启用分类筛选,
- class_parse: '.nav-menu-items&&li;a&&Text;a&&href;.*/(.*?)\.html',
- play_parse: true,
- lazy: common_lazy,
- limit: 6,
- double: true, // 推荐内容是否双层定位
- 推荐: '.module-list;.module-items&&.module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href',
- 一级: '.module-items .module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href',
- 二级: {
- title: 'h1&&Text;.tag-link&&Text',
- img: '.module-item-pic&&img&&data-src',
- desc: '.video-info-items:eq(3)&&Text;.tag-link:eq(2)&&Text;.tag-link:eq(1)&&Text;.video-info-items:eq(1)&&Text;.video-info-items:eq(0)&&Text',
- content: '.vod_content&&Text',
- tabs: '.module-tab-item',
- lists: '.module-player-list:eq(#id)&&.scroll-content&&a',
- tab_text: 'div--small&&Text',
- },
- 搜索: '.module-items .module-search-item;a&&title;img&&data-src;.video-serial&&Text;a&&href',
- },
- 首图: {
- title: '',
- host: '',
- url: '/vodshow/fyclass--------fypage---/',
- searchUrl: '/vodsearch/**----------fypage---.html',
- searchable: 2, //是否启用全局搜索,
- quickSearch: 0, //是否启用快速搜索,
- filterable: 0, //是否启用分类筛选,
- headers: { //网站的请求头,完整支持所有的,常带ua和cookies
- 'User-Agent': 'MOBILE_UA', // "Cookie": "searchneed=ok"
- },
- class_parse: '.myui-header__menu li.hidden-sm:gt(0):lt(7);a&&Text;a&&href;/(\\d+).html',
- play_parse: true,
- lazy: common_lazy,
- limit: 6,
- double: true, // 推荐内容是否双层定位
- 推荐: 'ul.myui-vodlist.clearfix;li;a&&title;a&&data-original;.pic-text&&Text;a&&href',
- 一级: '.myui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href',
- 二级: {
- title: '.myui-content__detail .title--span&&Text;.myui-content__detail p.data:eq(3)&&Text',
- img: '.myui-content__thumb .lazyload&&data-original',
- desc: '.myui-content__detail p.otherbox&&Text;.year&&Text;.myui-content__detail p.data:eq(4)&&Text;.myui-content__detail p.data:eq(2)&&Text;.myui-content__detail p.data:eq(0)&&Text',
- content: '.content&&Text',
- tabs: '.myui-panel__head&&li',
- // tabs: '.nav-tabs&&li',
- lists: '.myui-content__list:eq(#id) li',
- },
- 搜索: '#searchList li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href;.detail&&Text',
- },
- 首图2: {
- title: '',
- host: '',
- url: '/list/fyclass-fypage.html',
- searchUrl: '/vodsearch/**----------fypage---.html',
- searchable: 2, //是否启用全局搜索,
- quickSearch: 0, //是否启用快速搜索,
- filterable: 0, //是否启用分类筛选,
- headers: {
- 'User-Agent': 'UC_UA', // "Cookie": ""
- },
- class_parse: '.stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;.*/(.*?).html',
- play_parse: true,
- lazy: common_lazy,
- limit: 6,
- double: true, // 推荐内容是否双层定位
- 推荐: 'ul.stui-vodlist.clearfix;li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href',
- 一级: '.stui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href',
- 二级: {
- title: '.stui-content__detail .title&&Text;.stui-content__detail&&p:eq(-2)&&a&&Text',
- title1: '.stui-content__detail .title&&Text;.stui-content__detail&&p&&Text',
- img: '.stui-content__thumb .lazyload&&data-original',
- desc: '.stui-content__detail p&&Text;.stui-content__detail&&p:eq(-2)&&a:eq(2)&&Text;.stui-content__detail&&p:eq(-2)&&a:eq(1)&&Text;.stui-content__detail p:eq(2)&&Text;.stui-content__detail p:eq(1)&&Text',
- desc1: '.stui-content__detail p:eq(4)&&Text;;;.stui-content__detail p:eq(1)&&Text',
- content: '.detail&&Text',
- tabs: '.stui-pannel__head h3',
- tabs1: '.stui-vodlist__head h3',
- lists: '.stui-content__playlist:eq(#id) li',
- },
- 搜索: 'ul.stui-vodlist__media,ul.stui-vodlist,#searchList li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href;.detail&&Text',
- },
- 默认: {
- title: '',
- host: '',
- url: '',
- searchUrl: '',
- searchable: 2,
- quickSearch: 0,
- filterable: 0,
- filter: '',
- filter_url: '',
- filter_def: {},
- headers: {
- 'User-Agent': 'MOBILE_UA',
- },
- timeout: 5000,
- class_parse: '#side-menu li;a&&Text;a&&href;/(.*?)\.html',
- cate_exclude: '',
- play_parse: true,
- lazy: def_lazy,
- double: true,
- 推荐: '列表1;列表2;标题;图片;描述;链接;详情',
- 一级: '列表;标题;图片;描述;链接;详情',
- 二级: {
- title: 'vod_name;vod_type',
- img: '图片链接',
- desc: '主要信息;年代;地区;演员;导演',
- content: '简介',
- tabs: '',
- lists: 'xx:eq(#id)&&a',
- tab_text: 'body&&Text',
- list_text: 'body&&Text',
- list_url: 'a&&href',
- },
- 搜索: '列表;标题;图片;描述;链接;详情',
- },
- vfed: {
- title: '',
- host: '',
- url: '/index.php/vod/show/id/fyclass/page/fypage.html',
- searchUrl: '/index.php/vod/search/page/fypage/wd/**.html',
- searchable: 2, //是否启用全局搜索,
- quickSearch: 0, //是否启用快速搜索,
- filterable: 0, //是否启用分类筛选,
- headers: {
- 'User-Agent': 'UC_UA',
- },
- class_parse: '.fed-pops-navbar&&ul.fed-part-rows&&a;a&&Text;a&&href;.*/(.*?).html',
- play_parse: true,
- lazy: common_lazy,
- limit: 6,
- double: true, // 推荐内容是否双层定位
- 推荐: 'ul.fed-list-info.fed-part-rows;li;a.fed-list-title&&Text;a&&data-original;.fed-list-remarks&&Text;a&&href',
- 一级: '.fed-list-info&&li;a.fed-list-title&&Text;a&&data-original;.fed-list-remarks&&Text;a&&href',
- 二级: {
- title: 'h1.fed-part-eone&&Text;.fed-deta-content&&.fed-part-rows&&li&&Text',
- img: '.fed-list-info&&a&&data-original',
- desc: '.fed-deta-content&&.fed-part-rows&&li:eq(1)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(2)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(3)&&Text',
- content: '.fed-part-esan&&Text',
- tabs: '.fed-drop-boxs&&.fed-part-rows&&li',
- lists: '.fed-play-item:eq(#id)&&ul:eq(1)&&li',
- },
- 搜索: '.fed-deta-info;h1&&Text;.lazyload&&data-original;.fed-list-remarks&&Text;a&&href;.fed-deta-content&&Text',
- },
- 海螺3: {
- title: '',
- host: '',
- searchUrl: '/v_search/**----------fypage---.html',
- url: '/vod_____show/fyclass--------fypage---.html',
- headers: {
- 'User-Agent': 'MOBILE_UA',
- },
- timeout: 5000,
- class_parse: 'body&&.hl-nav li:gt(0);a&&Text;a&&href;.*/(.*?).html',
- cate_exclude: '明星|专题|最新|排行',
- limit: 40,
- play_parse: true,
- lazy: common_lazy,
- double: true,
- 推荐: '.hl-vod-list;li;a&&title;a&&data-original;.remarks&&Text;a&&href',
- 一级: '.hl-vod-list&&.hl-list-item;a&&title;a&&data-original;.remarks&&Text;a&&href',
- 二级: {
- title: '.hl-dc-title&&Text;.hl-dc-content&&li:eq(6)&&Text',
- img: '.hl-lazy&&data-original',
- desc: '.hl-dc-content&&li:eq(10)&&Text;.hl-dc-content&&li:eq(4)&&Text;.hl-dc-content&&li:eq(5)&&Text;.hl-dc-content&&li:eq(2)&&Text;.hl-dc-content&&li:eq(3)&&Text',
- content: '.hl-content-text&&Text',
- tabs: '.hl-tabs&&a',
- tab_text: 'a--span&&Text',
- lists: '.hl-plays-list:eq(#id)&&li',
- },
- 搜索: '.hl-list-item;a&&title;a&&data-original;.remarks&&Text;a&&href',
- searchable: 2, //是否启用全局搜索,
- quickSearch: 0, //是否启用快速搜索,
- filterable: 0, //是否启用分类筛选,
- },
- 海螺2: {
- title: '',
- host: '',
- searchUrl: '/index.php/vod/search/page/fypage/wd/**/',
- url: '/index.php/vod/show/id/fyclass/page/fypage/',
- headers: {
- 'User-Agent': 'MOBILE_UA',
- },
- timeout: 5000,
- class_parse: '#nav-bar li;a&&Text;a&&href;id/(.*?)/',
- limit: 40,
- play_parse: true,
- lazy: common_lazy,
- double: true,
- 推荐: '.list-a.size;li;a&&title;.lazy&&data-original;.bt&&Text;a&&href',
- 一级: '.list-a&&li;a&&title;.lazy&&data-original;.list-remarks&&Text;a&&href',
- 二级: {
- title: 'h2&&Text;.deployment&&Text',
- img: '.lazy&&data-original',
- desc: '.deployment&&Text',
- content: '.ec-show&&Text',
- tabs: '#tag&&a',
- lists: '.play_list_box:eq(#id)&&li',
- },
- 搜索: '.search-list;a&&title;.lazy&&data-original;.deployment&&Text;a&&href',
- searchable: 2, //是否启用全局搜索,
- quickSearch: 0, //是否启用快速搜索,
- filterable: 0, //是否启用分类筛选,
- },
- 短视: {
- title: '',
- host: '', // homeUrl:'/',
- url: '/channel/fyclass-fypage.html',
- searchUrl: '/search.html?wd=**',
- searchable: 2, //是否启用全局搜索,
- quickSearch: 0, //是否启用快速搜索,
- filterable: 0, //是否启用分类筛选,
- headers: { //网站的请求头,完整支持所有的,常带ua和cookies
- 'User-Agent': 'MOBILE_UA', // "Cookie": "searchneed=ok"
- },
- class_parse: '.menu_bottom ul li;a&&Text;a&&href;.*/(.*?).html',
- cate_exclude: '解析|动态',
- play_parse: true,
- lazy: common_lazy,
- limit: 6,
- double: true, // 推荐内容是否双层定位
- 推荐: '.indexShowBox;ul&&li;a&&title;img&&data-src;.s1&&Text;a&&href',
- 一级: '.pic-list&&li;a&&title;img&&data-src;.s1&&Text;a&&href',
- 二级: {
- title: 'h1&&Text;.content-rt&&p:eq(0)&&Text',
- img: '.img&&img&&data-src',
- desc: '.content-rt&&p:eq(1)&&Text;.content-rt&&p:eq(2)&&Text;.content-rt&&p:eq(3)&&Text;.content-rt&&p:eq(4)&&Text;.content-rt&&p:eq(5)&&Text',
- content: '.zkjj_a&&Text',
- tabs: '.py-tabs&&option',
- lists: '.player:eq(#id) li',
- },
- 搜索: '.sr_lists&&ul&&li;h3&&Text;img&&data-src;.int&&p:eq(0)&&Text;a&&href',
- },
- 短视2: {
- title: '',
- host: '',
- class_name: '电影&电视剧&综艺&动漫',
- class_url: '1&2&3&4',
- searchUrl: '/index.php/ajax/suggest?mid=1&wd=**&limit=50',
- searchable: 2,
- quickSearch: 0,
- headers: {
- 'User-Agent': 'MOBILE_UA'
- },
- url: '/index.php/api/vod#type=fyclass&page=fypage',
- filterable: 0, //是否启用分类筛选,
- filter_url: '',
- filter: {},
- filter_def: {},
- detailUrl: '/index.php/vod/detail/id/fyid.html',
- play_parse: true,
- lazy: common_lazy,
- limit: 6,
- 推荐: '.list-vod.flex .public-list-box;a&&title;.lazy&&data-original;.public-list-prb&&Text;a&&href',
- 一级: 'js:let body=input.split("#")[1];let t=Math.round(new Date/1e3).toString();let key=md5("DS"+t+"DCC147D11943AF75");let url=input.split("#")[0];body=body+"&time="+t+"&key="+key;print(body);fetch_params.body=body;let html=post(url,fetch_params);let data=JSON.parse(html);VODS=data.list.map(function(it){it.vod_pic=urljoin2(input.split("/i")[0],it.vod_pic);return it});',
- 二级: {
- title: '.slide-info-title&&Text;.slide-info:eq(2)--strong&&Text',
- img: '.detail-pic&&data-original',
- desc: '.slide-info-remarks&&Text;.slide-info-remarks:eq(1)&&Text;.slide-info-remarks:eq(2)&&Text;.slide-info:eq(1)--strong&&Text;.info-parameter&&ul&&li:eq(3)&&Text',
- content: '#height_limit&&Text',
- tabs: '.anthology.wow.fadeInUp.animated&&.swiper-wrapper&&a',
- tab_text: 'a--span&&Text',
- lists: '.anthology-list-box:eq(#id) li',
- },
- 搜索: 'json:list;name;pic;;id',
- },
- 采集1: {
- title: '',
- host: '',
- homeTid: '13',
- homeUrl: '/api.php/provide/vod/?ac=detail&t={{rule.homeTid}}',
- detailUrl: '/api.php/provide/vod/?ac=detail&ids=fyid',
- searchUrl: '/api.php/provide/vod/?wd=**&pg=fypage',
- url: '/api.php/provide/vod/?ac=detail&pg=fypage&t=fyclass',
- headers: {
- 'User-Agent': 'MOBILE_UA'
- },
- timeout: 5000, // class_name: '电影&电视剧&综艺&动漫',
- // class_url: '1&2&3&4',
- // class_parse:'js:let html=request(input);input=JSON.parse(html).class;',
- class_parse: 'json:class;',
- limit: 20,
- multi: 1,
- searchable: 2, //是否启用全局搜索,
- quickSearch: 1, //是否启用快速搜索,
- filterable: 0, //是否启用分类筛选,
- play_parse: true,
- parse_url: '',
- lazy: cj_lazy,
- 推荐: '*',
- 一级: 'json:list;vod_name;vod_pic;vod_remarks;vod_id;vod_play_from',
- 二级: `js:
- let html=request(input);
- html=JSON.parse(html);
- let data=html.list;
- VOD=data[0];`,
- 搜索: '*',
- },
- };
- return JSON.parse(JSON.stringify(mubanDict));
-}
-
-var mubanDict = getMubans();
-var muban = getMubans();
-export default {
- muban,
- getMubans
-};
\ No newline at end of file
diff --git a/欧歌/jars/csp_woog.jar b/欧歌/jars/csp_woog.jar
deleted file mode 100644
index 061891acaac42cf3e850e53941fd0df98de60ca2..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 262501
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