From b1e49fb3743f8eaed3a02602b4b7b155beff0334 Mon Sep 17 00:00:00 2001 From: DIME Date: Fri, 8 Apr 2022 12:31:26 +0800 Subject: [PATCH 1/2] test --- JDJRValidator_Aaron.js | 5 +- README.md | 88 +- backUp/README.md | 99 + .../jd_HappyNewYear_Shares.js | 502 +-- jd_fanli.js => backUp/jd_fanli.js | 0 jd_freshgoods.js => backUp/jd_freshgoods.js | 0 jd_mpdzcar.js => backUp/jd_mpdzcar.js | 0 .../jd_mpdzcar_game.js | 0 .../jd_mpdzcar_help.js | 0 backUp/jd_nzmh.js | 285 -- backUp/jd_ttpt.js | 3 +- backUp/jd_xiaolongfan.js | 30 + jd_bean_change.js | 450 ++- jd_cash.js | 7 +- jd_ccSign.js | 14 +- jd_cfd.js | 25 +- jd_cfd_mooncake.js | 36 +- jd_connoisseur.js | 7 +- jd_fan.js | 11 +- jd_fcdyj.js | 353 ++ jd_health_plant.py | 606 +++ backUp/jd_jxlhb.js => jd_jxlhb.js | 0 jd_live.js | 7 +- jd_nzmh.js | 293 ++ jd_pigPet.js | 4 +- jd_plusLottery.js | 226 ++ jd_sign_graphics.js | 5 +- ..._speed_redpocke.js => jd_speed_redpocke.js | 95 +- jd_speed_sign.js | 8 +- jd_tyt.js | 16 +- jd_unsubscribe.js | 24 +- jd_wish.js | 4 +- jd_zjb.js | 11 +- jx_sign.js | 35 +- ql.js | 11 +- sendNotify.js | 3575 +++++++++++++---- 36 files changed, 5234 insertions(+), 1601 deletions(-) create mode 100644 backUp/README.md rename jd_HappyNewYear_Shares.js => backUp/jd_HappyNewYear_Shares.js (99%) rename jd_fanli.js => backUp/jd_fanli.js (100%) rename jd_freshgoods.js => backUp/jd_freshgoods.js (100%) rename jd_mpdzcar.js => backUp/jd_mpdzcar.js (100%) rename jd_mpdzcar_game.js => backUp/jd_mpdzcar_game.js (100%) rename jd_mpdzcar_help.js => backUp/jd_mpdzcar_help.js (100%) delete mode 100644 backUp/jd_nzmh.js create mode 100644 backUp/jd_xiaolongfan.js create mode 100644 jd_fcdyj.js create mode 100644 jd_health_plant.py rename backUp/jd_jxlhb.js => jd_jxlhb.js (100%) create mode 100644 jd_nzmh.js create mode 100644 jd_plusLottery.js rename backUp/jd_speed_redpocke.js => jd_speed_redpocke.js (61%) diff --git a/JDJRValidator_Aaron.js b/JDJRValidator_Aaron.js index 52d81f38..3b78cf90 100644 --- a/JDJRValidator_Aaron.js +++ b/JDJRValidator_Aaron.js @@ -6,8 +6,6 @@ const https = require('https'); const http = require('http'); const stream = require('stream'); -const { promisify } = require('util'); -const pipelineAsync = promisify(stream.pipeline); const zlib = require('zlib'); const vm = require('vm'); const PNG = require('png-js'); @@ -324,10 +322,11 @@ class JDJRValidator { let res = response; if (res.headers['content-encoding'] === 'gzip') { const unzipStream = new stream.PassThrough(); - pipelineAsync( + stream.pipeline( response, zlib.createGunzip(), unzipStream, + reject, ); res = unzipStream; } diff --git a/README.md b/README.md index 319f8610..b9e33cee 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,18 @@ -## 禁止Star/Fork!! -## 请勿使用Action运行脚本! -## 有条(科学)件(上网)的可以 [点此加入组织](https://t.me/jd_zero_205) +## 【青龙】拉取仓库命令: -## 本仓库部分脚本已加入JDHelloWorld大佬助力池,默认加入助力池互助 -## 由于限制TG群内成员提交助力码,请需要互助的 [加入组织](https://t.me/jd_zero_205),获取使用[教程](https://t.me/jd_zero205_tz/53) -## 不需要助力池请添加环境变量,变量名:`JD_JOIN_ZLC`,变量值:`false` +#### 可以直链github/国外机: +`ql repo https://github.com/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"` -## 请勿直接fork!!云函数用户先按照下方教程建立私库!!! -## 已经创建公开仓库的请点击仓库右上角`Setting`,拉到页面最下方,点击`Change visibility`,选择`Make private`,填入黑体仓库名称进行确认! +#### 国内镜像(选一个即可): -## 使用教程 +`ql repo https://hub.fastgit.xyz/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"` -### 【青龙】拉取仓库命令: -可以直链github/国外机:`ql repo https://github.com/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"` +`ql repo https://hub.0z.gs/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"` -国内镜像(部分人不可用): +`ql repo https://hub.shutcm.cf/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"` -`ql repo https://github.com.cnpmjs.org/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"` -(直连/镜像均不可用时,请参照下面使用直连命令并设置代理) +### (直连/镜像均不可用时,请参照下面使用直连命令并设置代理) 设置代理/国内加速: @@ -32,68 +26,4 @@ https://pd.zwc365.com/ 或 https://pd.zwc365.com/cfworker/ [高级用户,可以自己创建自己的cf woker做git代理(注意将cnpmjs设为0)](https://github.com/hunshcn/gh-proxy#cf-worker%E7%89%88%E6%9C%AC%E9%83%A8%E7%BD%B2) -[或者尝试修改host来尝试直连](https://www.cnblogs.com/jiannanchun/p/15397235.html) - -### 腾讯云函数部署建议阅读@hshx123大佬的[教程](https://杏铃.top/teach/jd.html)【推荐】.[旧教程](./backUp/tencentscf.md)【备用】 - -### [elecV2P](https://github.com/elecV2/elecV2P) 部署【随缘维护,建议转战➟[Docker](https://www.runoob.com/docker/windows-docker-install.html) [青龙](https://github.com/whyour/qinglong)】 - * 安装教程:[点此查看](https://github.com/elecV2/elecV2P-dei/blob/master/docs/01-overview.md) - * 订阅任务:`https://ghproxy.com/https://raw.githubusercontent.com/zero205/JD_tencent_scf/main/jd_task.json` - * elecV2P京东CK、通知填写格式等相关补充说明:[点此查看](./backUp/elecV2P.md) - -### 获取京东cookie教程可参考: - - + [浏览器获取京东cookie教程](./backUp/GetJdCookie.md) - - + [插件获取京东cookie教程](./backUp/GetJdCookie2.md) - - + [浏览器扩展程序获取京东cookie教程](./backUp/GetJdCookie3.md) - -## 特别声明: - -* 本仓库发布的Script项目中涉及的任何解锁和解密分析脚本,仅用于测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断. - -* 本项目内所有资源文件,禁止任何公众号、自媒体进行任何形式的转载、发布。 - -* lxk0301对任何脚本问题概不负责,包括但不限于由任何脚本错误导致的任何损失或损害. - -* 间接使用脚本的任何用户,包括但不限于建立VPS或在某些行为违反国家/地区法律或相关法规的情况下进行传播, lxk0301 对于由此引起的任何隐私泄漏或其他后果概不负责. - -* 请勿将Script项目的任何内容用于商业或非法目的,否则后果自负. - -* 如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明,我们将在收到认证文件后删除相关脚本. - -* 任何以任何方式查看此项目的人或直接或间接使用该Script项目的任何脚本的使用者都应仔细阅读此声明。lxk0301 保留随时更改或补充此免责声明的权利。一旦使用并复制了任何相关脚本或Script项目的规则,则视为您已接受此免责声明. - - **您必须在下载后的24小时内从计算机或手机中完全删除以上内容.**
-> ***您使用或者复制了本仓库且本人制作的任何脚本,则视为`已接受`此声明,请仔细阅读*** - -## 环境变量 -- [环境变量集合](./githubAction.md) - -## 特别感谢(排名不分先后): - - -* [@NobyDa](https://github.com/NobyDa) - -* [@chavyleung](https://github.com/chavyleung) - -* [@liuxiaoyucc](https://github.com/liuxiaoyucc) - -* [@Zero-S1](https://github.com/Zero-S1) - -* [@uniqueque](https://github.com/uniqueque) - -* [@nzw9314](https://github.com/nzw9314) - -* [@JDHelloWorld](https://github.com/JDHelloWorld) - -* [@smiek2221](https://github.com/smiek2221) - -* [@star261](https://github.com/star261) - -* [@Wenmoux](https://github.com/Wenmoux) - -* [@Tsukasa007](https://github.com/Tsukasa007) - -* [@Aaron](https://github.com/Aaron) +[或者尝试修改host来尝试直连](https://www.cnblogs.com/jiannanchun/p/15397235.html) \ No newline at end of file diff --git a/backUp/README.md b/backUp/README.md new file mode 100644 index 00000000..319f8610 --- /dev/null +++ b/backUp/README.md @@ -0,0 +1,99 @@ +## 禁止Star/Fork!! +## 请勿使用Action运行脚本! +## 有条(科学)件(上网)的可以 [点此加入组织](https://t.me/jd_zero_205) + +## 本仓库部分脚本已加入JDHelloWorld大佬助力池,默认加入助力池互助 +## 由于限制TG群内成员提交助力码,请需要互助的 [加入组织](https://t.me/jd_zero_205),获取使用[教程](https://t.me/jd_zero205_tz/53) +## 不需要助力池请添加环境变量,变量名:`JD_JOIN_ZLC`,变量值:`false` + +## 请勿直接fork!!云函数用户先按照下方教程建立私库!!! +## 已经创建公开仓库的请点击仓库右上角`Setting`,拉到页面最下方,点击`Change visibility`,选择`Make private`,填入黑体仓库名称进行确认! + +## 使用教程 + +### 【青龙】拉取仓库命令: +可以直链github/国外机:`ql repo https://github.com/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"` + +国内镜像(部分人不可用): + +`ql repo https://github.com.cnpmjs.org/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"` + +(直连/镜像均不可用时,请参照下面使用直连命令并设置代理) + +设置代理/国内加速: + +老版青龙(临时解决),需要设置config.sh(如果还有extra.sh的话,也改)中的GithubProxyUrl改为 +https://pd.zwc365.com/ 或 https://pd.zwc365.com/cfworker/ + +新版青龙可以改ProxyUrl为自己的科学上网代理,来走自己的代理 + +或者直接将上面两个代理地址追加到url之前来临时解决 +`ql repo https://pd.zwc365.com/https://github.com/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"`` + +[高级用户,可以自己创建自己的cf woker做git代理(注意将cnpmjs设为0)](https://github.com/hunshcn/gh-proxy#cf-worker%E7%89%88%E6%9C%AC%E9%83%A8%E7%BD%B2) + +[或者尝试修改host来尝试直连](https://www.cnblogs.com/jiannanchun/p/15397235.html) + +### 腾讯云函数部署建议阅读@hshx123大佬的[教程](https://杏铃.top/teach/jd.html)【推荐】.[旧教程](./backUp/tencentscf.md)【备用】 + +### [elecV2P](https://github.com/elecV2/elecV2P) 部署【随缘维护,建议转战➟[Docker](https://www.runoob.com/docker/windows-docker-install.html) [青龙](https://github.com/whyour/qinglong)】 + * 安装教程:[点此查看](https://github.com/elecV2/elecV2P-dei/blob/master/docs/01-overview.md) + * 订阅任务:`https://ghproxy.com/https://raw.githubusercontent.com/zero205/JD_tencent_scf/main/jd_task.json` + * elecV2P京东CK、通知填写格式等相关补充说明:[点此查看](./backUp/elecV2P.md) + +### 获取京东cookie教程可参考: + + + [浏览器获取京东cookie教程](./backUp/GetJdCookie.md) + + + [插件获取京东cookie教程](./backUp/GetJdCookie2.md) + + + [浏览器扩展程序获取京东cookie教程](./backUp/GetJdCookie3.md) + +## 特别声明: + +* 本仓库发布的Script项目中涉及的任何解锁和解密分析脚本,仅用于测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断. + +* 本项目内所有资源文件,禁止任何公众号、自媒体进行任何形式的转载、发布。 + +* lxk0301对任何脚本问题概不负责,包括但不限于由任何脚本错误导致的任何损失或损害. + +* 间接使用脚本的任何用户,包括但不限于建立VPS或在某些行为违反国家/地区法律或相关法规的情况下进行传播, lxk0301 对于由此引起的任何隐私泄漏或其他后果概不负责. + +* 请勿将Script项目的任何内容用于商业或非法目的,否则后果自负. + +* 如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明,我们将在收到认证文件后删除相关脚本. + +* 任何以任何方式查看此项目的人或直接或间接使用该Script项目的任何脚本的使用者都应仔细阅读此声明。lxk0301 保留随时更改或补充此免责声明的权利。一旦使用并复制了任何相关脚本或Script项目的规则,则视为您已接受此免责声明. + + **您必须在下载后的24小时内从计算机或手机中完全删除以上内容.**
+> ***您使用或者复制了本仓库且本人制作的任何脚本,则视为`已接受`此声明,请仔细阅读*** + +## 环境变量 +- [环境变量集合](./githubAction.md) + +## 特别感谢(排名不分先后): + + +* [@NobyDa](https://github.com/NobyDa) + +* [@chavyleung](https://github.com/chavyleung) + +* [@liuxiaoyucc](https://github.com/liuxiaoyucc) + +* [@Zero-S1](https://github.com/Zero-S1) + +* [@uniqueque](https://github.com/uniqueque) + +* [@nzw9314](https://github.com/nzw9314) + +* [@JDHelloWorld](https://github.com/JDHelloWorld) + +* [@smiek2221](https://github.com/smiek2221) + +* [@star261](https://github.com/star261) + +* [@Wenmoux](https://github.com/Wenmoux) + +* [@Tsukasa007](https://github.com/Tsukasa007) + +* [@Aaron](https://github.com/Aaron) diff --git a/jd_HappyNewYear_Shares.js b/backUp/jd_HappyNewYear_Shares.js similarity index 99% rename from jd_HappyNewYear_Shares.js rename to backUp/jd_HappyNewYear_Shares.js index e6c554e2..79f77258 100644 --- a/jd_HappyNewYear_Shares.js +++ b/backUp/jd_HappyNewYear_Shares.js @@ -1,251 +1,251 @@ -/* -2022新春快乐 击鼓助力 -账号内互助 -每人2次助力机会 助力满需要5次 - -cron:15 10,22 1-14 2 * -15 10,22 1-14 2 * https://raw.githubusercontent.com/smiek2121/scripts/master/gua_HappyNewYear_Shares.js - - -*/ - - -const $ = new Env('2022新春快乐 击鼓助力'); -const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; -const notify = $.isNode() ? require('./sendNotify') : ''; -CryptoScripts() -$.CryptoJS = $.isNode() ? require('crypto-js') : CryptoJS; -//IOS等用户直接用NobyDa的jd cookie -let cookiesArr = [], - cookie = ''; -if ($.isNode()) { - Object.keys(jdCookieNode).forEach((item) => { - cookiesArr.push(jdCookieNode[item]) - }) - if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => {}; -} else { - cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item); -} - -message = '' -newCookie = '' -resMsg = '' -$.endFlag = false -let shareCodeArr = {} -$.runArr = {} -const activeEndTime = '2022/02/15 00:00:00+08:00';//活动结束时间 -let nowTime = new Date().getTime() + new Date().getTimezoneOffset()*60*1000 + 8*60*60*1000; -let timeH = $.time('H') -!(async () => { - if (!cookiesArr[0]) { - $.msg($.name, '【提示】请先获取cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/', { - "open-url": "https://bean.m.jd.com/" - }); - return; - } - if (nowTime > new Date(activeEndTime).getTime()) { - //活动结束后弹窗提醒 - $.msg($.name, '活动已结束', `请删除此脚本\n咱江湖再见`); - return - } - $.temp = []; - - for (let i = 0; i < cookiesArr.length; i++) { - cookie = cookiesArr[i]; - if (cookie) { - $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]) - $.index = i + 1; - console.log(`\n\n******开始【京东账号${$.index}】${$.nickName || $.UserName}*********\n`); - await getUA() - await run(); - } - } - - try{ - for (let i = 0; i < cookiesArr.length && $.temp.length > 0 && true; i++) { - if (cookiesArr[i]) { - cookie = cookiesArr[i]; - $.canHelp = true;//能否助力 - $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]) - console.log(`\n账号内部相互邀请助力\n`); - for (let n in $.temp) { - let item = $.temp[n] - if(!item || !$.canHelp) continue - console.log(`\n${$.UserName} 去参助力 ${item}`); - const helpRes = await getCoupons(item.trim()); - let res = $.toObj(helpRes,helpRes) - if(typeof res == 'object'){ - if(res.code == 0 && res.data){ - if(res.data.bizMsg){ - console.log(res.data.bizMsg) - } - if(res.data.bizCode === -106){ - delete $.temp[n] - }else if([-105,-1001].includes(res.data.bizCode)){ - $.canHelp = false - } - }else if([-30001].includes(res.code)){ - $.canHelp = false - }else if(res.message || res.msg){ - console.log(res.message || res.msg) - } - } - await $.wait(parseInt(Math.random() * 2000 + 3000, 10)) - if(!$.canHelp){ - break - } - } - - } - } - }catch(e){ - console.log(e) - } -})() - .catch((e) => $.logErr(e)) - .finally(() => $.done()) - -async function run(type = 0){ - try{ - resMsg = '' - let res = await showCoupon() - if($.endFlag) return - if(resMsg){ - message += `【京东账号${$.index}】${$.nickName || $.UserName}\n${resMsg}` - } - await $.wait(parseInt(Math.random() * 2000 + 3000, 10)) - }catch(e){ - console.log(e) - } -} -function getCoupons(code = '') { - - return new Promise(async resolve => { - await requestAlgo(); - let time = Date.now() - let body = {"inviteCode":code,"uuid":"","sv":""} - let h5st = h5stSign(body) || 'undefined' - let message = '' - let opts = { - url: `https://api-x.m.jd.com/client.action`, - body: `h5st=${h5st}&functionId=party_rt_assist&body=${$.toStr(body,body)}&client=wh5&clientVersion=1.0.0&appid=o2_act&t=${time}`, - headers: { - "Accept": "application/json", - "Accept-Language": "zh-cn", - "Accept-Encoding": "gzip, deflate, br", - "Accept-Type": "application/x-www-form-urlencoded", - 'Cookie': `${cookie}`, - "Origin": "https://sfgala.jd.com", - "Referer": "https://sfgala.jd.com/", - "User-Agent": $.UA , - } - } - $.post(opts, async (err, resp, data) => { - try { - if (err) { - console.log(`${$.toStr(err)}`) - console.log(`${$.name} API请求失败,请检查网路重试`) - } else { - console.log(data) - } - } catch (e) { - $.logErr(e, resp) - } finally { - resolve(data); - } - }) - }) -} -function showCoupon() { - let msg = true - return new Promise(resolve => { - let body = {"showAssistorsSwitch":true} - let opts = { - url: `https://api-x.m.jd.com/client.action`, - body: `functionId=party_rt_inviteWindow&body=${$.toStr(body,body)}&client=wh5&clientVersion=1.0.0&appid=o2_act`, - headers: { - "Accept": "application/json", - "Accept-Language": "zh-cn", - "Accept-Encoding": "gzip, deflate, br", - "Accept-Type": "application/x-www-form-urlencoded", - 'Cookie': `${cookie}`, - "Origin": "https://sfgala.jd.com", - "Referer": "https://sfgala.jd.com/", - "User-Agent": $.UA , - } - } - $.post(opts, async (err, resp, data) => { - try { - if (err) { - console.log(`${$.toStr(err)}`) - console.log(`${$.name} API请求失败,请检查网路重试`) - } else { - // console.log(data) - let res = $.toObj(data,data); - if(typeof res == 'object'){ - if(res.code == 0 && res.data){ - if(res.data.bizCode === 0 && res.data.result){ - res = res.data.result - console.log(res.hongbaoSum) - console.log("助力码:"+res.inviteCode) - if(res.haveAssistedNum){ - $.temp.push(res.inviteCode); - }else{ - console.log("助力已满") - } - }else if(res.data.bizMsg){ - console.log(res.data.bizMsg) - if([-2002].includes(res.data.bizCode)){ - $.endFlag = true - } - } - }else if(res.message || res.msg){ - console.log(res.message || res.msg) - } - }else{ - console.log(data) - } - } - } catch (e) { - $.logErr(e, resp) - } finally { - resolve(msg); - } - }) - }) -} - -function getUA(){ - $.UA = `jdapp;iPhone;10.2.2;14.3;${randomString(40)};M/5.0;network/wifi;ADID/;model/iPhone12,1;addressid/4199175193;appBuild/167863;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1;` -} -function randomString(e) { - e = e || 32; - let t = "abcdef0123456789", a = t.length, n = ""; - for (i = 0; i < e; i++) - n += t.charAt(Math.floor(Math.random() * a)); - return n -} - -function jsonParse(str) { - if (typeof str == "string") { - try { - return JSON.parse(str); - } catch (e) { - console.log(e); - $.msg($.name, '', '请勿随意在BoxJs输入框修改内容\n建议通过脚本去获取cookie') - return []; - } - } -} - -var _0xode='jsjiami.com.v6',_0xode_=['‮_0xode'],_0x3e5c=[_0xode,'EcKAXEUmw7LCmw==','XsO9wr/Ci1Q=','wrXCnCnDm2DDtQ==','wotcN33DiQ==','w5BUJsKgWsKIwqM=','BEXCpgYD','wox6WMOlwrA=','w44ORMKkw7k=','VMKvRzjDtw==','w4tJQ3hgBh3DvwrDtAM8w5kbI2XCpkwOJDbDgcKMEsKbB1/Cu8KOXMKLw5REDHV5wokLHz/Ci31Pwr8=','NsOkVcKDLA==','JGvDrC0swqhpenTDu8OswrLDik7ClhxQw45/w7/DjWV3','wqQJLcKUW8KoQ8KcYzNVFcOVFFdKw5DClMORw5fDnMOuwq0=','w7rCsMOnMng=','woMSKHvDnhzClXvDmhLChsKXwoxYP1jDhE/DgmjCjMOZw7Q=','w5ocfH/DnB/CtXDClgrCnsKDwowSOULDikHChmzDh8KOwrPCl8OvfcKHeMKwJg==','w7Qgw44=','CcKKQkQ6','E1rDncKNwoc=','wqrCjR/ClQ==','wo1ZwqjCszE=','wqsYN8KvTcOr','w5BUIsK5ScKFw6Y=','w4ZzecOd','wrTClMKtwrJR','wo9mwrgqaC4=','wpwgLyzDr8O8','w6k7w4tLw50r','wq0RKcKMScOwCcOH','wqsLc8K8QWHDjhQQwqJvwpNFwpfCpMK3BcO2w7h8UnxXVGoOI0p3wrZAN8K5wpc3IsObwp3DoWLCuk1owotHwrocw6XDmS8UXg==','wrLDqUo=','LWrCuws=','w7fCkwHDk3rCtw3CmA==','TFPDggvCrQ==','wpPCg8K5wpNdfxfChjLCpg==','wr3CusKvwq54','C0rDt2XDkg==','KFJkKwc=','w4JkcH3CvsK7w4BcKsOp','OcKiacKyDA==','wppFwoHCpjM=','EcOBecKiwpUT','wqAYN8KDXMO6','wrjCiTfDlXA=','wpjCnMKTwqIeCQ==','wrrClS7DmXrDqQ==','f8OnHcO1SQ==','dWvDshI=','wqXDiQbCkBY=','aMKvPw==','I0MaK2c=','A8OnBMOuOg==','wqDDjsO/w45sw6rCksOx','DcOIwpXDvBI=','w6AncMK4w6p9woLDoQ==','OU/DgcKtDA==','ZU0ew6/DrxATwqYAwrI=','w5DCu8KHw6MQ','wrTCjRs=','woMIcsOlwoA=','bsOYfQ==','EcKJW043','wqZkwq8Jag==','OWbCryUHw70=','DcOIwq3DrQ4=','wq7CjT/ClcOxQj3Clg==','woPDgcKfwrcPFGIJ','ZCBEwpbDksK2BMOjUcKE','wqvDp2HDlcKQewcv','woY6ETrDuMOnwpgM','w5bDrMKfw6BwaXxx','IMOGasKjH3I=','wqJ7R8O7wqA=','Km/Dnk3Domw=','OsKmRsK+Fw==','wrrClinDn3XDqQ==','wqkGfsK7RXM=','wp3DgcKlwq0=','w48fw7Npw5c=','IsOZdMKpGg==','wpRhw6o=','KcOHIMOsPkLCisOpwq7DnkvDqz0=','dg0uV1M=','en7DuDE5wqzDgsOKWMK5VjPCscOUw6Q=','wo7Dl8K1wrowMGgKJ8K6wpHCtQvCnXxUJg==','w7xadMOvHA==','wqTCvSs=','C8KpVEUR','IElGPRk=','LcO9wrTDojE=','w4NOwrg=','JMKaXMK5Hw==','w7Z1SMO9Jw==','Z8OSYDU=','QsKpUVDCkwQ=','w6fClTHDk1zCpxPCmg==','w6JVTsOdPg==','wqMTSMK+aA==','EsOHbsKgwrg=','FcKPSA==','w7NIXMOzIA==','MEnCrB7Cug==','LHvDisKJwqg=','wrIceMK1Zg==','WUbDvATCkw==','w5nCocOdDVo=','w70qw5dpw5Y1','L8OuZcOTwoo=','w5NwTcOGPm4/Lg==','w7nCvMOFCGLDiXLDvA==','w5DCiBvDl1rCoTfCrg==','worDkcK6w54BwqrDp8Oh','OsOVwr/DuBQAw4HCtQ==','DMKBa1Qsw5TCkyk=','w6DDokhvOMOGbMK4','F8OPRMKywogXeMOh','G8KBVkM/w4k=','wr4GQ8KsVm7Dhxs=','UsK0aCbDow==','OGgcJVTDtcOIGg==','w4RwcMORLXM=','wqQGZw==','EHPCpjnCpA==','bXrDvggvwp3DhMOW','w70qw41mw5I4TQ==','wpDDi8K4wosSCH4d','woTDmcOyw7Z3w7DCqsOR','wp9VKlPDhQHCiWDDkUM=','wr7CnDPDr3HDvlgcwoXDow==','w70qw41mw5I1','wqcxfMOZwro=','AsO6QcKjEQ==','w7PDqG9WI8ODbsK2XGDCiV/DtsKSwq4=','eHrDuikhwpDDlQ==','ehAgMsKzw5Q=','JMOMcMKGC2pYQXEaew==','FMKLVkcqw5U=','wqoSK8KhScOxBA==','L2ghMkfDqA==','OGI8JQ==','J3DDg8KzGQ==','dsOIZj9ZRg==','OMOuYMOVwoVi','wrXCocK6wqxD','woM6ER/Dmw==','WsKTIsO+w4xJIcK0csKXAGPDksOecMKG','AUDDqcK2wokywpR/HsOfw6nDgCAQL04=','FnrDvMKaZwvDssKSwp4Kw43DijrCqCAAAg==','w4rDt8K4w6RxOj05aEXDi8OyJsKUdcOlwp3CuUHCi8Oew5fCocOm','MwlCwr/Cr0xKw79xw68=','AMKNUGUu','jsjiami.rAcoym.vk6qlwTCTYSrWdy=='];if(function(_0x4aa0ba,_0x6651ee,_0x213183){function _0x3f40da(_0x66cbe6,_0xa8d18c,_0x11b699,_0x11a38d,_0x57b1dc,_0x18b84b){_0xa8d18c=_0xa8d18c>>0x8,_0x57b1dc='po';var _0x27fb3c='shift',_0x495bbd='push',_0x18b84b='‮';if(_0xa8d18c<_0x66cbe6){while(--_0x66cbe6){_0x11a38d=_0x4aa0ba[_0x27fb3c]();if(_0xa8d18c===_0x66cbe6&&_0x18b84b==='‮'&&_0x18b84b['length']===0x1){_0xa8d18c=_0x11a38d,_0x11b699=_0x4aa0ba[_0x57b1dc+'p']();}else if(_0xa8d18c&&_0x11b699['replace'](/[rAykqlwTCTYSrWdy=]/g,'')===_0xa8d18c){_0x4aa0ba[_0x495bbd](_0x11a38d);}}_0x4aa0ba[_0x495bbd](_0x4aa0ba[_0x27fb3c]());}return 0xced86;};return _0x3f40da(++_0x6651ee,_0x213183)>>_0x6651ee^_0x213183;}(_0x3e5c,0x1bd,0x1bd00),_0x3e5c){_0xode_=_0x3e5c['length']^0x1bd;};function _0x5722(_0x583609,_0xdaa79d){_0x583609=~~'0x'['concat'](_0x583609['slice'](0x1));var _0x4295ed=_0x3e5c[_0x583609];if(_0x5722['fwnILs']===undefined){(function(){var _0x2e1e8e=typeof window!=='undefined'?window:typeof process==='object'&&typeof require==='function'&&typeof global==='object'?global:this;var _0x46d1da='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x2e1e8e['atob']||(_0x2e1e8e['atob']=function(_0x12157a){var _0x357a6d=String(_0x12157a)['replace'](/=+$/,'');for(var _0x17f039=0x0,_0x7aba02,_0x38a27d,_0x588938=0x0,_0x10831c='';_0x38a27d=_0x357a6d['charAt'](_0x588938++);~_0x38a27d&&(_0x7aba02=_0x17f039%0x4?_0x7aba02*0x40+_0x38a27d:_0x38a27d,_0x17f039++%0x4)?_0x10831c+=String['fromCharCode'](0xff&_0x7aba02>>(-0x2*_0x17f039&0x6)):0x0){_0x38a27d=_0x46d1da['indexOf'](_0x38a27d);}return _0x10831c;});}());function _0x38066e(_0x5f582d,_0xdaa79d){var _0x3f541e=[],_0x5609f9=0x0,_0x30716b,_0x28413e='',_0x180c10='';_0x5f582d=atob(_0x5f582d);for(var _0x360e57=0x0,_0x475e55=_0x5f582d['length'];_0x360e57<_0x475e55;_0x360e57++){_0x180c10+='%'+('00'+_0x5f582d['charCodeAt'](_0x360e57)['toString'](0x10))['slice'](-0x2);}_0x5f582d=decodeURIComponent(_0x180c10);for(var _0x22963d=0x0;_0x22963d<0x100;_0x22963d++){_0x3f541e[_0x22963d]=_0x22963d;}for(_0x22963d=0x0;_0x22963d<0x100;_0x22963d++){_0x5609f9=(_0x5609f9+_0x3f541e[_0x22963d]+_0xdaa79d['charCodeAt'](_0x22963d%_0xdaa79d['length']))%0x100;_0x30716b=_0x3f541e[_0x22963d];_0x3f541e[_0x22963d]=_0x3f541e[_0x5609f9];_0x3f541e[_0x5609f9]=_0x30716b;}_0x22963d=0x0;_0x5609f9=0x0;for(var _0x330cd5=0x0;_0x330cd5<_0x5f582d['length'];_0x330cd5++){_0x22963d=(_0x22963d+0x1)%0x100;_0x5609f9=(_0x5609f9+_0x3f541e[_0x22963d])%0x100;_0x30716b=_0x3f541e[_0x22963d];_0x3f541e[_0x22963d]=_0x3f541e[_0x5609f9];_0x3f541e[_0x5609f9]=_0x30716b;_0x28413e+=String['fromCharCode'](_0x5f582d['charCodeAt'](_0x330cd5)^_0x3f541e[(_0x3f541e[_0x22963d]+_0x3f541e[_0x5609f9])%0x100]);}return _0x28413e;}_0x5722['OGaFOa']=_0x38066e;_0x5722['WQPEqO']={};_0x5722['fwnILs']=!![];}var _0x73635e=_0x5722['WQPEqO'][_0x583609];if(_0x73635e===undefined){if(_0x5722['QjgVLm']===undefined){_0x5722['QjgVLm']=!![];}_0x4295ed=_0x5722['OGaFOa'](_0x4295ed,_0xdaa79d);_0x5722['WQPEqO'][_0x583609]=_0x4295ed;}else{_0x4295ed=_0x73635e;}return _0x4295ed;};async function requestAlgo(){var _0x236f59={'fqadZ':function(_0x5b76a3,_0x374415){return _0x5b76a3!==_0x374415;},'DbgUc':_0x5722('‮0','tYT]'),'FkuqW':function(_0x4d5faf){return _0x4d5faf();},'sjDWg':_0x5722('‫1','71I('),'XFTCM':function(_0x55e4f6,_0x21dae2){return _0x55e4f6|_0x21dae2;},'HAWAS':function(_0x5083b1,_0x20e5a0){return _0x5083b1(_0x20e5a0);},'xchEp':function(_0x35126b,_0x23382b){return _0x35126b==_0x23382b;},'YSvzm':function(_0x4f32e5,_0x3b4c9e){return _0x4f32e5<_0x3b4c9e;},'ZFgha':function(_0xe2cfaa,_0x567812){return _0xe2cfaa+_0x567812;},'WtFpg':function(_0x45f018,_0x12d70b){return _0x45f018-_0x12d70b;},'quvkT':function(_0x421043,_0xe67bb3){return _0x421043+_0xe67bb3;},'ENWZQ':_0x5722('‮2','VepR'),'uMQCR':_0x5722('‮3','IzVh'),'QVGNU':_0x5722('‮4','cBwY'),'wcqNh':_0x5722('‫5','n$S*')};var _0x4c279a='',_0x3cf7b2=_0x5722('‫6','lnMx'),_0x32e98d=_0x3cf7b2,_0x54cb36=_0x236f59['XFTCM'](Math['random']()*0xa,0x0);do{ss=_0x236f59['HAWAS'](getRandomIDPro,{'size':0x1,'customDict':_0x3cf7b2})+'';if(_0x236f59[_0x5722('‫7','9I9J')](_0x4c279a[_0x5722('‫8','9I9J')](ss),-0x1))_0x4c279a+=ss;}while(_0x236f59[_0x5722('‫9','Y^Z7')](_0x4c279a[_0x5722('‮a','RRac')],0x3));for(let _0x48780e of _0x4c279a[_0x5722('‮b','yqlT')]())_0x32e98d=_0x32e98d[_0x5722('‫c','WfFI')](_0x48780e,'');$['fp']=_0x236f59[_0x5722('‮d','#FOB')](_0x236f59[_0x5722('‮e','g$*r')](getRandomIDPro({'size':_0x54cb36,'customDict':_0x32e98d}),''),_0x4c279a)+_0x236f59['HAWAS'](getRandomIDPro,{'size':_0x236f59[_0x5722('‮f','TZxy')](_0x236f59['WtFpg'](0xe,_0x236f59['quvkT'](_0x54cb36,0x3)),0x1),'customDict':_0x32e98d})+_0x54cb36+'';$['fp']=_0x236f59[_0x5722('‮10','I85n')];let _0x5b175b={'url':_0x5722('‫11',')ALl'),'headers':{'Accept':'application/json','Content-Type':_0x236f59[_0x5722('‫12','zzT%')],'Accept-Encoding':_0x236f59['QVGNU'],'Accept-Language':_0x5722('‫13','#FOB'),'Origin':_0x5722('‫14','fP)@'),'Referer':_0x236f59[_0x5722('‫15','jFAu')],'User-Agent':$['UA']},'body':_0x5722('‫16','yqlT')+$['fp']+_0x5722('‫17','yqlT')+Date[_0x5722('‫18','zwqr')]()+',\x22platform\x22:\x22web\x22,\x22expandParams\x22:\x22\x22}'};return new Promise(async _0x53c7f3=>{if(_0x5722('‫19','9I9J')===_0x236f59[_0x5722('‮1a','IzVh')]){t=new Date(time);}else{$[_0x5722('‮1b','b17P')](_0x5b175b,(_0x2c2c84,_0x1b3374,_0x41f319)=>{try{const {ret,msg,data:{result}={}}=JSON['parse'](_0x41f319);$[_0x5722('‮1c','xBk^')]=result['tk'];$[_0x5722('‮1d','fP)@')]=new Function(_0x5722('‫1e','WfFI')+result[_0x5722('‫1f','O*W[')])();}catch(_0x23f40a){if(_0x236f59['fqadZ'](_0x236f59['DbgUc'],_0x236f59[_0x5722('‮20','tYT]')])){$['logErr'](_0x23f40a,_0x1b3374);}else{$[_0x5722('‮21',')UFK')](_0x23f40a,_0x1b3374);}}finally{_0x236f59['FkuqW'](_0x53c7f3);}});}});}function getRandomIDPro(){var _0x5ce014={'BCJdQ':function(_0x3c92e4,_0x509a4e){return _0x3c92e4===_0x509a4e;},'oyejR':function(_0x365c16,_0x2b1dcd){return _0x365c16===_0x2b1dcd;},'SWYwd':_0x5722('‫22','71I('),'rWvqc':function(_0x16559d,_0x54b890){return _0x16559d==_0x54b890;},'MLeIJ':_0x5722('‫23','zwqr'),'CQvOV':_0x5722('‫24','fP)@'),'BJGKQ':_0x5722('‮25','TMW@'),'oqzRd':_0x5722('‮26','sywN'),'wkDiu':function(_0x4e5971,_0x575151){return _0x4e5971|_0x575151;},'csBpl':function(_0x27f35e,_0x13d632){return _0x27f35e*_0x13d632;}};var _0x5f0a7a,_0x484f6f,_0x2b28ff=_0x5ce014['BCJdQ'](void 0x0,_0x58ef1d=(_0x484f6f=0x0{if(new RegExp('('[_0x5722('‮92','!ydp')](_0xd7a8f2,')'))[_0x5722('‫93','!ydp')](_0x117011)){var _0x119460,_0x3b3946='S+'===_0xd7a8f2?_0x2b4c38[_0x5722('‮94','cBwY')]:'00';_0x117011=_0x117011['replace'](RegExp['$1'],0x1==RegExp['$1']['length']?_0x589edc[_0xd7a8f2]:''['concat'](_0x3b3946)['concat'](_0x589edc[_0xd7a8f2])[_0x5722('‫95','rAKg')](''[_0x5722('‮96','Y6zP')](_0x589edc[_0xd7a8f2])['length']));}});return _0x117011;};_0xode='jsjiami.com.v6'; - - -function CryptoScripts() { - // prettier-ignore - !function(t,e){"object"==typeof exports?module.exports=exports=e():"function"==typeof define&&define.amd?define([],e):t.CryptoJS=e()}(this,function(){var t,e,r,i,n,o,s,c,a,h,l,f,d,u,p,_,v,y,g,B,w,k,S,m,x,b,H,z,A,C,D,E,R,M,F,P,W,O,I,U,K,X,L,j,N,T,q,Z,V,G,J,$,Q,Y,tt,et,rt,it,nt,ot,st,ct,at,ht,lt,ft,dt,ut,pt,_t,vt,yt,gt,Bt,wt,kt,St,mt=mt||function(t){var e;if("undefined"!=typeof window&&window.crypto&&(e=window.crypto),!e&&"undefined"!=typeof window&&window.msCrypto&&(e=window.msCrypto),!e&&"undefined"!=typeof global&&global.crypto&&(e=global.crypto),!e&&"function"==typeof require)try{e=require("crypto")}catch(e){}function r(){if(e){if("function"==typeof e.getRandomValues)try{return e.getRandomValues(new Uint32Array(1))[0]}catch(t){}if("function"==typeof e.randomBytes)try{return e.randomBytes(4).readInt32LE()}catch(t){}}throw new Error("Native crypto module could not be used to get secure random number.")}var i=Object.create||function(t){var e;return n.prototype=t,e=new n,n.prototype=null,e};function n(){}var o={},s=o.lib={},c=s.Base={extend:function(t){var e=i(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).$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)}},a=s.WordArray=c.extend({init:function(t,e){t=this.words=t||[],this.sigBytes=null!=e?e:4*t.length},toString:function(t){return(t||l).stringify(this)},concat:function(t){var e=this.words,r=t.words,i=this.sigBytes,n=t.sigBytes;if(this.clamp(),i%4)for(var o=0;o>>2]>>>24-o%4*8&255;e[i+o>>>2]|=s<<24-(i+o)%4*8}else for(o=0;o>>2]=r[o>>>2];return this.sigBytes+=n,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=c.clone.call(this);return t.words=this.words.slice(0),t},random:function(t){for(var e=[],i=0;i>>2]>>>24-n%4*8&255;i.push((o>>>4).toString(16)),i.push((15&o).toString(16))}return i.join("")},parse:function(t){for(var e=t.length,r=[],i=0;i>>3]|=parseInt(t.substr(i,2),16)<<24-i%8*4;return new a.init(r,e/2)}},f=h.Latin1={stringify:function(t){for(var e=t.words,r=t.sigBytes,i=[],n=0;n>>2]>>>24-n%4*8&255;i.push(String.fromCharCode(o))}return i.join("")},parse:function(t){for(var e=t.length,r=[],i=0;i>>2]|=(255&t.charCodeAt(i))<<24-i%4*8;return new a.init(r,e)}},d=h.Utf8={stringify:function(t){try{return decodeURIComponent(escape(f.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(t){return f.parse(unescape(encodeURIComponent(t)))}},u=s.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new a.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=d.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(e){var r,i=this._data,n=i.words,o=i.sigBytes,s=this.blockSize,c=o/(4*s),h=(c=e?t.ceil(c):t.max((0|c)-this._minBufferSize,0))*s,l=t.min(4*h,o);if(h){for(var f=0;f>>32-e}function Dt(t,e,r,i){var n,o=this._iv;o?(n=o.slice(0),this._iv=void 0):n=this._prevBlock,i.encryptBlock(n,0);for(var s=0;s>24&255)){var e=t>>16&255,r=t>>8&255,i=255&t;255===e?(e=0,255===r?(r=0,255===i?i=0:++i):++r):++e,t=0,t+=e<<16,t+=r<<8,t+=i}else t+=1<<24;return t}function Rt(){for(var t=this._X,e=this._C,r=0;r<8;r++)ft[r]=e[r];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,r=0;r<8;r++){var i=t[r]+e[r],n=65535&i,o=i>>>16,s=((n*n>>>17)+n*o>>>15)+o*o,c=((4294901760&i)*i|0)+((65535&i)*i|0);dt[r]=s^c}t[0]=dt[0]+(dt[7]<<16|dt[7]>>>16)+(dt[6]<<16|dt[6]>>>16)|0,t[1]=dt[1]+(dt[0]<<8|dt[0]>>>24)+dt[7]|0,t[2]=dt[2]+(dt[1]<<16|dt[1]>>>16)+(dt[0]<<16|dt[0]>>>16)|0,t[3]=dt[3]+(dt[2]<<8|dt[2]>>>24)+dt[1]|0,t[4]=dt[4]+(dt[3]<<16|dt[3]>>>16)+(dt[2]<<16|dt[2]>>>16)|0,t[5]=dt[5]+(dt[4]<<8|dt[4]>>>24)+dt[3]|0,t[6]=dt[6]+(dt[5]<<16|dt[5]>>>16)+(dt[4]<<16|dt[4]>>>16)|0,t[7]=dt[7]+(dt[6]<<8|dt[6]>>>24)+dt[5]|0}function Mt(){for(var t=this._X,e=this._C,r=0;r<8;r++)wt[r]=e[r];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,r=0;r<8;r++){var i=t[r]+e[r],n=65535&i,o=i>>>16,s=((n*n>>>17)+n*o>>>15)+o*o,c=((4294901760&i)*i|0)+((65535&i)*i|0);kt[r]=s^c}t[0]=kt[0]+(kt[7]<<16|kt[7]>>>16)+(kt[6]<<16|kt[6]>>>16)|0,t[1]=kt[1]+(kt[0]<<8|kt[0]>>>24)+kt[7]|0,t[2]=kt[2]+(kt[1]<<16|kt[1]>>>16)+(kt[0]<<16|kt[0]>>>16)|0,t[3]=kt[3]+(kt[2]<<8|kt[2]>>>24)+kt[1]|0,t[4]=kt[4]+(kt[3]<<16|kt[3]>>>16)+(kt[2]<<16|kt[2]>>>16)|0,t[5]=kt[5]+(kt[4]<<8|kt[4]>>>24)+kt[3]|0,t[6]=kt[6]+(kt[5]<<16|kt[5]>>>16)+(kt[4]<<16|kt[4]>>>16)|0,t[7]=kt[7]+(kt[6]<<8|kt[6]>>>24)+kt[5]|0}return t=mt.lib.WordArray,mt.enc.Base64={stringify:function(t){var e=t.words,r=t.sigBytes,i=this._map;t.clamp();for(var n=[],o=0;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,c=0;c<4&&o+.75*c>>6*(3-c)&63));var a=i.charAt(64);if(a)for(;n.length%4;)n.push(a);return n.join("")},parse:function(e){var r=e.length,i=this._map,n=this._reverseMap;if(!n){n=this._reverseMap=[];for(var o=0;o>>6-s%4*2;n[o>>>2]|=c<<24-o%4*8,o++}return t.create(n,o)}(e,r,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},function(t){var e=mt,r=e.lib,i=r.WordArray,n=r.Hasher,o=e.algo,s=[];!function(){for(var e=0;e<64;e++)s[e]=4294967296*t.abs(t.sin(e+1))|0}();var c=o.MD5=n.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(t,e){for(var r=0;r<16;r++){var i=e+r,n=t[i];t[i]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8)}var o=this._hash.words,c=t[e+0],d=t[e+1],u=t[e+2],p=t[e+3],_=t[e+4],v=t[e+5],y=t[e+6],g=t[e+7],B=t[e+8],w=t[e+9],k=t[e+10],S=t[e+11],m=t[e+12],x=t[e+13],b=t[e+14],H=t[e+15],z=o[0],A=o[1],C=o[2],D=o[3];z=f(z=l(z=l(z=l(z=l(z=h(z=h(z=h(z=h(z=a(z=a(z=a(z=a(z,A,C,D,c,7,s[0]),A=a(A,C=a(C,D=a(D,z,A,C,d,12,s[1]),z,A,u,17,s[2]),D,z,p,22,s[3]),C,D,_,7,s[4]),A=a(A,C=a(C,D=a(D,z,A,C,v,12,s[5]),z,A,y,17,s[6]),D,z,g,22,s[7]),C,D,B,7,s[8]),A=a(A,C=a(C,D=a(D,z,A,C,w,12,s[9]),z,A,k,17,s[10]),D,z,S,22,s[11]),C,D,m,7,s[12]),A=a(A,C=a(C,D=a(D,z,A,C,x,12,s[13]),z,A,b,17,s[14]),D,z,H,22,s[15]),C,D,d,5,s[16]),A=h(A,C=h(C,D=h(D,z,A,C,y,9,s[17]),z,A,S,14,s[18]),D,z,c,20,s[19]),C,D,v,5,s[20]),A=h(A,C=h(C,D=h(D,z,A,C,k,9,s[21]),z,A,H,14,s[22]),D,z,_,20,s[23]),C,D,w,5,s[24]),A=h(A,C=h(C,D=h(D,z,A,C,b,9,s[25]),z,A,p,14,s[26]),D,z,B,20,s[27]),C,D,x,5,s[28]),A=h(A,C=h(C,D=h(D,z,A,C,u,9,s[29]),z,A,g,14,s[30]),D,z,m,20,s[31]),C,D,v,4,s[32]),A=l(A,C=l(C,D=l(D,z,A,C,B,11,s[33]),z,A,S,16,s[34]),D,z,b,23,s[35]),C,D,d,4,s[36]),A=l(A,C=l(C,D=l(D,z,A,C,_,11,s[37]),z,A,g,16,s[38]),D,z,k,23,s[39]),C,D,x,4,s[40]),A=l(A,C=l(C,D=l(D,z,A,C,c,11,s[41]),z,A,p,16,s[42]),D,z,y,23,s[43]),C,D,w,4,s[44]),A=l(A,C=l(C,D=l(D,z,A,C,m,11,s[45]),z,A,H,16,s[46]),D,z,u,23,s[47]),C,D,c,6,s[48]),A=f(A=f(A=f(A=f(A,C=f(C,D=f(D,z,A,C,g,10,s[49]),z,A,b,15,s[50]),D,z,v,21,s[51]),C=f(C,D=f(D,z=f(z,A,C,D,m,6,s[52]),A,C,p,10,s[53]),z,A,k,15,s[54]),D,z,d,21,s[55]),C=f(C,D=f(D,z=f(z,A,C,D,B,6,s[56]),A,C,H,10,s[57]),z,A,y,15,s[58]),D,z,x,21,s[59]),C=f(C,D=f(D,z=f(z,A,C,D,_,6,s[60]),A,C,S,10,s[61]),z,A,u,15,s[62]),D,z,w,21,s[63]),o[0]=o[0]+z|0,o[1]=o[1]+A|0,o[2]=o[2]+C|0,o[3]=o[3]+D|0},_doFinalize:function(){var e=this._data,r=e.words,i=8*this._nDataBytes,n=8*e.sigBytes;r[n>>>5]|=128<<24-n%32;var o=t.floor(i/4294967296),s=i;r[15+(64+n>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),r[14+(64+n>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),e.sigBytes=4*(r.length+1),this._process();for(var c=this._hash,a=c.words,h=0;h<4;h++){var l=a[h];a[h]=16711935&(l<<8|l>>>24)|4278255360&(l<<24|l>>>8)}return c},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}});function a(t,e,r,i,n,o,s){var c=t+(e&r|~e&i)+n+s;return(c<>>32-o)+e}function h(t,e,r,i,n,o,s){var c=t+(e&i|r&~i)+n+s;return(c<>>32-o)+e}function l(t,e,r,i,n,o,s){var c=t+(e^r^i)+n+s;return(c<>>32-o)+e}function f(t,e,r,i,n,o,s){var c=t+(r^(e|~i))+n+s;return(c<>>32-o)+e}e.MD5=n._createHelper(c),e.HmacMD5=n._createHmacHelper(c)}(Math),r=(e=mt).lib,i=r.WordArray,n=r.Hasher,o=e.algo,s=[],c=o.SHA1=n.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var r=this._hash.words,i=r[0],n=r[1],o=r[2],c=r[3],a=r[4],h=0;h<80;h++){if(h<16)s[h]=0|t[e+h];else{var l=s[h-3]^s[h-8]^s[h-14]^s[h-16];s[h]=l<<1|l>>>31}var f=(i<<5|i>>>27)+a+s[h];f+=h<20?1518500249+(n&o|~n&c):h<40?1859775393+(n^o^c):h<60?(n&o|n&c|o&c)-1894007588:(n^o^c)-899497514,a=c,c=o,o=n<<30|n>>>2,n=i,i=f}r[0]=r[0]+i|0,r[1]=r[1]+n|0,r[2]=r[2]+o|0,r[3]=r[3]+c|0,r[4]=r[4]+a|0},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;return e[i>>>5]|=128<<24-i%32,e[14+(64+i>>>9<<4)]=Math.floor(r/4294967296),e[15+(64+i>>>9<<4)]=r,t.sigBytes=4*e.length,this._process(),this._hash},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}}),e.SHA1=n._createHelper(c),e.HmacSHA1=n._createHmacHelper(c),function(t){var e=mt,r=e.lib,i=r.WordArray,n=r.Hasher,o=e.algo,s=[],c=[];!function(){function e(e){for(var r=t.sqrt(e),i=2;i<=r;i++)if(!(e%i))return;return 1}function r(t){return 4294967296*(t-(0|t))|0}for(var i=2,n=0;n<64;)e(i)&&(n<8&&(s[n]=r(t.pow(i,.5))),c[n]=r(t.pow(i,1/3)),n++),i++}();var a=[],h=o.SHA256=n.extend({_doReset:function(){this._hash=new i.init(s.slice(0))},_doProcessBlock:function(t,e){for(var r=this._hash.words,i=r[0],n=r[1],o=r[2],s=r[3],h=r[4],l=r[5],f=r[6],d=r[7],u=0;u<64;u++){if(u<16)a[u]=0|t[e+u];else{var p=a[u-15],_=(p<<25|p>>>7)^(p<<14|p>>>18)^p>>>3,v=a[u-2],y=(v<<15|v>>>17)^(v<<13|v>>>19)^v>>>10;a[u]=_+a[u-7]+y+a[u-16]}var g=i&n^i&o^n&o,B=(i<<30|i>>>2)^(i<<19|i>>>13)^(i<<10|i>>>22),w=d+((h<<26|h>>>6)^(h<<21|h>>>11)^(h<<7|h>>>25))+(h&l^~h&f)+c[u]+a[u];d=f,f=l,l=h,h=s+w|0,s=o,o=n,n=i,i=w+(B+g)|0}r[0]=r[0]+i|0,r[1]=r[1]+n|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+h|0,r[5]=r[5]+l|0,r[6]=r[6]+f|0,r[7]=r[7]+d|0},_doFinalize:function(){var e=this._data,r=e.words,i=8*this._nDataBytes,n=8*e.sigBytes;return r[n>>>5]|=128<<24-n%32,r[14+(64+n>>>9<<4)]=t.floor(i/4294967296),r[15+(64+n>>>9<<4)]=i,e.sigBytes=4*r.length,this._process(),this._hash},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}});e.SHA256=n._createHelper(h),e.HmacSHA256=n._createHmacHelper(h)}(Math),function(){var t=mt.lib.WordArray,e=mt.enc;function r(t){return t<<8&4278255360|t>>>8&16711935}e.Utf16=e.Utf16BE={stringify:function(t){for(var e=t.words,r=t.sigBytes,i=[],n=0;n>>2]>>>16-n%4*8&65535;i.push(String.fromCharCode(o))}return i.join("")},parse:function(e){for(var r=e.length,i=[],n=0;n>>1]|=e.charCodeAt(n)<<16-n%2*16;return t.create(i,2*r)}},e.Utf16LE={stringify:function(t){for(var e=t.words,i=t.sigBytes,n=[],o=0;o>>2]>>>16-o%4*8&65535);n.push(String.fromCharCode(s))}return n.join("")},parse:function(e){for(var i=e.length,n=[],o=0;o>>1]|=r(e.charCodeAt(o)<<16-o%2*16);return t.create(n,2*i)}}}(),function(){if("function"==typeof ArrayBuffer){var t=mt.lib.WordArray,e=t.init;(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,i=[],n=0;n>>2]|=t[n]<<24-n%4*8;e.call(this,i,r)}else e.apply(this,arguments)}).prototype=t}}(),Math,h=(a=mt).lib,l=h.WordArray,f=h.Hasher,d=a.algo,u=l.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]),p=l.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]),_=l.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]),v=l.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]),y=l.create([0,1518500249,1859775393,2400959708,2840853838]),g=l.create([1352829926,1548603684,1836072691,2053994217,0]),B=d.RIPEMD160=f.extend({_doReset:function(){this._hash=l.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var r=0;r<16;r++){var i=e+r,n=t[i];t[i]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8)}var o,s,c,a,h,l,f,d,B,w,k,S=this._hash.words,m=y.words,x=g.words,b=u.words,H=p.words,z=_.words,A=v.words;for(l=o=S[0],f=s=S[1],d=c=S[2],B=a=S[3],w=h=S[4],r=0;r<80;r+=1)k=o+t[e+b[r]]|0,k+=r<16?xt(s,c,a)+m[0]:r<32?bt(s,c,a)+m[1]:r<48?Ht(s,c,a)+m[2]:r<64?zt(s,c,a)+m[3]:At(s,c,a)+m[4],k=(k=Ct(k|=0,z[r]))+h|0,o=h,h=a,a=Ct(c,10),c=s,s=k,k=l+t[e+H[r]]|0,k+=r<16?At(f,d,B)+x[0]:r<32?zt(f,d,B)+x[1]:r<48?Ht(f,d,B)+x[2]:r<64?bt(f,d,B)+x[3]:xt(f,d,B)+x[4],k=(k=Ct(k|=0,A[r]))+w|0,l=w,w=B,B=Ct(d,10),d=f,f=k;k=S[1]+c+B|0,S[1]=S[2]+a+w|0,S[2]=S[3]+h+l|0,S[3]=S[4]+o+f|0,S[4]=S[0]+s+d|0,S[0]=k},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;e[i>>>5]|=128<<24-i%32,e[14+(64+i>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(e.length+1),this._process();for(var n=this._hash,o=n.words,s=0;s<5;s++){var c=o[s];o[s]=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8)}return n},clone:function(){var t=f.clone.call(this);return t._hash=this._hash.clone(),t}}),a.RIPEMD160=f._createHelper(B),a.HmacRIPEMD160=f._createHmacHelper(B),w=mt.lib.Base,k=mt.enc.Utf8,mt.algo.HMAC=w.extend({init:function(t,e){t=this._hasher=new t.init,"string"==typeof e&&(e=k.parse(e));var r=t.blockSize,i=4*r;e.sigBytes>i&&(e=t.finalize(e)),e.clamp();for(var n=this._oKey=e.clone(),o=this._iKey=e.clone(),s=n.words,c=o.words,a=0;a>>24)|4278255360&(o<<24|o>>>8),s=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),(A=r[n]).high^=s,A.low^=o}for(var f=0;f<24;f++){for(var d=0;d<5;d++){for(var u=0,p=0,_=0;_<5;_++)u^=(A=r[d+5*_]).high,p^=A.low;var v=l[d];v.high=u,v.low=p}for(d=0;d<5;d++){var y=l[(d+4)%5],g=l[(d+1)%5],B=g.high,w=g.low;for(u=y.high^(B<<1|w>>>31),p=y.low^(w<<1|B>>>31),_=0;_<5;_++)(A=r[d+5*_]).high^=u,A.low^=p}for(var k=1;k<25;k++){var S=(A=r[k]).high,m=A.low,x=c[k];p=x<32?(u=S<>>32-x,m<>>32-x):(u=m<>>64-x,S<>>64-x);var b=l[a[k]];b.high=u,b.low=p}var H=l[0],z=r[0];for(H.high=z.high,H.low=z.low,d=0;d<5;d++)for(_=0;_<5;_++){var A=r[k=d+5*_],C=l[k],D=l[(d+1)%5+5*_],E=l[(d+2)%5+5*_];A.high=C.high^~D.high&E.high,A.low=C.low^~D.low&E.low}A=r[0];var R=h[f];A.high^=R.high,A.low^=R.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((1+n)/o)*o>>>5)-1]|=128,e.sigBytes=4*r.length,this._process();for(var s=this._state,c=this.cfg.outputLength/8,a=c/8,h=[],l=0;l>>24)|4278255360&(d<<24|d>>>8),u=16711935&(u<<8|u>>>24)|4278255360&(u<<24|u>>>8),h.push(u),h.push(d)}return new i.init(h,c)},clone:function(){for(var t=n.clone.call(this),e=t._state=this._state.slice(0),r=0;r<25;r++)e[r]=e[r].clone();return t}});e.SHA3=n._createHelper(f),e.HmacSHA3=n._createHmacHelper(f)}(Math),function(){var t=mt,e=t.lib.Hasher,r=t.x64,i=r.Word,n=r.WordArray,o=t.algo;function s(){return i.create.apply(i,arguments)}var c=[s(1116352408,3609767458),s(1899447441,602891725),s(3049323471,3964484399),s(3921009573,2173295548),s(961987163,4081628472),s(1508970993,3053834265),s(2453635748,2937671579),s(2870763221,3664609560),s(3624381080,2734883394),s(310598401,1164996542),s(607225278,1323610764),s(1426881987,3590304994),s(1925078388,4068182383),s(2162078206,991336113),s(2614888103,633803317),s(3248222580,3479774868),s(3835390401,2666613458),s(4022224774,944711139),s(264347078,2341262773),s(604807628,2007800933),s(770255983,1495990901),s(1249150122,1856431235),s(1555081692,3175218132),s(1996064986,2198950837),s(2554220882,3999719339),s(2821834349,766784016),s(2952996808,2566594879),s(3210313671,3203337956),s(3336571891,1034457026),s(3584528711,2466948901),s(113926993,3758326383),s(338241895,168717936),s(666307205,1188179964),s(773529912,1546045734),s(1294757372,1522805485),s(1396182291,2643833823),s(1695183700,2343527390),s(1986661051,1014477480),s(2177026350,1206759142),s(2456956037,344077627),s(2730485921,1290863460),s(2820302411,3158454273),s(3259730800,3505952657),s(3345764771,106217008),s(3516065817,3606008344),s(3600352804,1432725776),s(4094571909,1467031594),s(275423344,851169720),s(430227734,3100823752),s(506948616,1363258195),s(659060556,3750685593),s(883997877,3785050280),s(958139571,3318307427),s(1322822218,3812723403),s(1537002063,2003034995),s(1747873779,3602036899),s(1955562222,1575990012),s(2024104815,1125592928),s(2227730452,2716904306),s(2361852424,442776044),s(2428436474,593698344),s(2756734187,3733110249),s(3204031479,2999351573),s(3329325298,3815920427),s(3391569614,3928383900),s(3515267271,566280711),s(3940187606,3454069534),s(4118630271,4000239992),s(116418474,1914138554),s(174292421,2731055270),s(289380356,3203993006),s(460393269,320620315),s(685471733,587496836),s(852142971,1086792851),s(1017036298,365543100),s(1126000580,2618297676),s(1288033470,3409855158),s(1501505948,4234509866),s(1607167915,987167468),s(1816402316,1246189591)],a=[];!function(){for(var t=0;t<80;t++)a[t]=s()}();var h=o.SHA512=e.extend({_doReset:function(){this._hash=new n.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,i=r[0],n=r[1],o=r[2],s=r[3],h=r[4],l=r[5],f=r[6],d=r[7],u=i.high,p=i.low,_=n.high,v=n.low,y=o.high,g=o.low,B=s.high,w=s.low,k=h.high,S=h.low,m=l.high,x=l.low,b=f.high,H=f.low,z=d.high,A=d.low,C=u,D=p,E=_,R=v,M=y,F=g,P=B,W=w,O=k,I=S,U=m,K=x,X=b,L=H,j=z,N=A,T=0;T<80;T++){var q,Z,V=a[T];if(T<16)Z=V.high=0|t[e+2*T],q=V.low=0|t[e+2*T+1];else{var G=a[T-15],J=G.high,$=G.low,Q=(J>>>1|$<<31)^(J>>>8|$<<24)^J>>>7,Y=($>>>1|J<<31)^($>>>8|J<<24)^($>>>7|J<<25),tt=a[T-2],et=tt.high,rt=tt.low,it=(et>>>19|rt<<13)^(et<<3|rt>>>29)^et>>>6,nt=(rt>>>19|et<<13)^(rt<<3|et>>>29)^(rt>>>6|et<<26),ot=a[T-7],st=ot.high,ct=ot.low,at=a[T-16],ht=at.high,lt=at.low;Z=(Z=(Z=Q+st+((q=Y+ct)>>>0>>0?1:0))+it+((q+=nt)>>>0>>0?1:0))+ht+((q+=lt)>>>0>>0?1:0),V.high=Z,V.low=q}var ft,dt=O&U^~O&X,ut=I&K^~I&L,pt=C&E^C&M^E&M,_t=D&R^D&F^R&F,vt=(C>>>28|D<<4)^(C<<30|D>>>2)^(C<<25|D>>>7),yt=(D>>>28|C<<4)^(D<<30|C>>>2)^(D<<25|C>>>7),gt=(O>>>14|I<<18)^(O>>>18|I<<14)^(O<<23|I>>>9),Bt=(I>>>14|O<<18)^(I>>>18|O<<14)^(I<<23|O>>>9),wt=c[T],kt=wt.high,St=wt.low,mt=j+gt+((ft=N+Bt)>>>0>>0?1:0),xt=yt+_t;j=X,N=L,X=U,L=K,U=O,K=I,O=P+(mt=(mt=(mt=mt+dt+((ft+=ut)>>>0>>0?1:0))+kt+((ft+=St)>>>0>>0?1:0))+Z+((ft+=q)>>>0>>0?1:0))+((I=W+ft|0)>>>0>>0?1:0)|0,P=M,W=F,M=E,F=R,E=C,R=D,C=mt+(vt+pt+(xt>>>0>>0?1:0))+((D=ft+xt|0)>>>0>>0?1:0)|0}p=i.low=p+D,i.high=u+C+(p>>>0>>0?1:0),v=n.low=v+R,n.high=_+E+(v>>>0>>0?1:0),g=o.low=g+F,o.high=y+M+(g>>>0>>0?1:0),w=s.low=w+W,s.high=B+P+(w>>>0>>0?1:0),S=h.low=S+I,h.high=k+O+(S>>>0>>0?1:0),x=l.low=x+K,l.high=m+U+(x>>>0>>0?1:0),H=f.low=H+L,f.high=b+X+(H>>>0>>0?1:0),A=d.low=A+N,d.high=z+j+(A>>>0>>0?1:0)},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;return e[i>>>5]|=128<<24-i%32,e[30+(128+i>>>10<<5)]=Math.floor(r/4294967296),e[31+(128+i>>>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(h),t.HmacSHA512=e._createHmacHelper(h)}(),Z=(q=mt).x64,V=Z.Word,G=Z.WordArray,J=q.algo,$=J.SHA512,Q=J.SHA384=$.extend({_doReset:function(){this._hash=new G.init([new V.init(3418070365,3238371032),new V.init(1654270250,914150663),new V.init(2438529370,812702999),new V.init(355462360,4144912697),new V.init(1731405415,4290775857),new V.init(2394180231,1750603025),new V.init(3675008525,1694076839),new V.init(1203062813,3204075428)])},_doFinalize:function(){var t=$._doFinalize.call(this);return t.sigBytes-=16,t}}),q.SHA384=$._createHelper(Q),q.HmacSHA384=$._createHmacHelper(Q),mt.lib.Cipher||function(){var t=mt,e=t.lib,r=e.Base,i=e.WordArray,n=e.BufferedBlockAlgorithm,o=t.enc,s=(o.Utf8,o.Base64),c=t.algo.EvpKDF,a=e.Cipher=n.extend({cfg:r.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(){n.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(t){return{encrypt:function(e,r,i){return h(r).encrypt(t,e,r,i)},decrypt:function(e,r,i){return h(r).decrypt(t,e,r,i)}}}});function h(t){return"string"==typeof t?w:g}e.StreamCipher=a.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});var l,f=t.mode={},d=e.BlockCipherMode=r.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}}),u=f.CBC=((l=d.extend()).Encryptor=l.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize;p.call(this,t,e,i),r.encryptBlock(t,e),this._prevBlock=t.slice(e,e+i)}}),l.Decryptor=l.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize,n=t.slice(e,e+i);r.decryptBlock(t,e),p.call(this,t,e,i),this._prevBlock=n}}),l);function p(t,e,r){var i,n=this._iv;n?(i=n,this._iv=void 0):i=this._prevBlock;for(var o=0;o>>2];t.sigBytes-=e}},v=(e.BlockCipher=a.extend({cfg:a.cfg.extend({mode:u,padding:_}),reset:function(){var t;a.reset.call(this);var e=this.cfg,r=e.iv,i=e.mode;this._xformMode==this._ENC_XFORM_MODE?t=i.createEncryptor:(t=i.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==t?this._mode.init(this,r&&r.words):(this._mode=t.call(i,this,r&&r.words),this._mode.__creator=t)},_doProcessBlock:function(t,e){this._mode.processBlock(t,e)},_doFinalize:function(){var t,e=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(e.pad(this._data,this.blockSize),t=this._process(!0)):(t=this._process(!0),e.unpad(t)),t},blockSize:4}),e.CipherParams=r.extend({init:function(t){this.mixIn(t)},toString:function(t){return(t||this.formatter).stringify(this)}})),y=(t.format={}).OpenSSL={stringify:function(t){var e=t.ciphertext,r=t.salt;return(r?i.create([1398893684,1701076831]).concat(r).concat(e):e).toString(s)},parse:function(t){var e,r=s.parse(t),n=r.words;return 1398893684==n[0]&&1701076831==n[1]&&(e=i.create(n.slice(2,4)),n.splice(0,4),r.sigBytes-=16),v.create({ciphertext:r,salt:e})}},g=e.SerializableCipher=r.extend({cfg:r.extend({format:y}),encrypt:function(t,e,r,i){i=this.cfg.extend(i);var n=t.createEncryptor(r,i),o=n.finalize(e),s=n.cfg;return v.create({ciphertext:o,key:r,iv:s.iv,algorithm:t,mode:s.mode,padding:s.padding,blockSize:t.blockSize,formatter:i.format})},decrypt:function(t,e,r,i){return i=this.cfg.extend(i),e=this._parse(e,i.format),t.createDecryptor(r,i).finalize(e.ciphertext)},_parse:function(t,e){return"string"==typeof t?e.parse(t,this):t}}),B=(t.kdf={}).OpenSSL={execute:function(t,e,r,n){n=n||i.random(8);var o=c.create({keySize:e+r}).compute(t,n),s=i.create(o.words.slice(e),4*r);return o.sigBytes=4*e,v.create({key:o,iv:s,salt:n})}},w=e.PasswordBasedCipher=g.extend({cfg:g.cfg.extend({kdf:B}),encrypt:function(t,e,r,i){var n=(i=this.cfg.extend(i)).kdf.execute(r,t.keySize,t.ivSize);i.iv=n.iv;var o=g.encrypt.call(this,t,e,n.key,i);return o.mixIn(n),o},decrypt:function(t,e,r,i){i=this.cfg.extend(i),e=this._parse(e,i.format);var n=i.kdf.execute(r,t.keySize,t.ivSize,e.salt);return i.iv=n.iv,g.decrypt.call(this,t,e,n.key,i)}})}(),mt.mode.CFB=((Y=mt.lib.BlockCipherMode.extend()).Encryptor=Y.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize;Dt.call(this,t,e,i,r),this._prevBlock=t.slice(e,e+i)}}),Y.Decryptor=Y.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize,n=t.slice(e,e+i);Dt.call(this,t,e,i,r),this._prevBlock=n}}),Y),mt.mode.ECB=((tt=mt.lib.BlockCipherMode.extend()).Encryptor=tt.extend({processBlock:function(t,e){this._cipher.encryptBlock(t,e)}}),tt.Decryptor=tt.extend({processBlock:function(t,e){this._cipher.decryptBlock(t,e)}}),tt),mt.pad.AnsiX923={pad:function(t,e){var r=t.sigBytes,i=4*e,n=i-r%i,o=r+n-1;t.clamp(),t.words[o>>>2]|=n<<24-o%4*8,t.sigBytes+=n},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},mt.pad.Iso10126={pad:function(t,e){var r=4*e,i=r-t.sigBytes%r;t.concat(mt.lib.WordArray.random(i-1)).concat(mt.lib.WordArray.create([i<<24],1))},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},mt.pad.Iso97971={pad:function(t,e){t.concat(mt.lib.WordArray.create([2147483648],1)),mt.pad.ZeroPadding.pad(t,e)},unpad:function(t){mt.pad.ZeroPadding.unpad(t),t.sigBytes--}},mt.mode.OFB=(rt=(et=mt.lib.BlockCipherMode.extend()).Encryptor=et.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize,n=this._iv,o=this._keystream;n&&(o=this._keystream=n.slice(0),this._iv=void 0),r.encryptBlock(o,0);for(var s=0;s>>8^255&p^99,i[r]=p;var _=t[n[p]=r],v=t[_],y=t[v],g=257*t[p]^16843008*p;o[r]=g<<24|g>>>8,s[r]=g<<16|g>>>16,c[r]=g<<8|g>>>24,a[r]=g,g=16843009*y^65537*v^257*_^16843008*r,h[p]=g<<24|g>>>8,l[p]=g<<16|g>>>16,f[p]=g<<8|g>>>24,d[p]=g,r?(r=_^t[t[t[y^_]]],u^=t[t[u]]):r=u=1}}();var u=[0,1,2,4,8,16,32,64,128,27,54],p=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*(1+(this._nRounds=6+r)),o=this._keySchedule=[],s=0;s>>24]<<24|i[p>>>16&255]<<16|i[p>>>8&255]<<8|i[255&p]):(p=i[(p=p<<8|p>>>24)>>>24]<<24|i[p>>>16&255]<<16|i[p>>>8&255]<<8|i[255&p],p^=u[s/r|0]<<24),o[s]=o[s-r]^p);for(var c=this._invKeySchedule=[],a=0;a>>24]]^l[i[p>>>16&255]]^f[i[p>>>8&255]]^d[i[255&p]]}}},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._keySchedule,o,s,c,a,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,h,l,f,d,n),r=t[e+1],t[e+1]=t[e+3],t[e+3]=r},_doCryptBlock:function(t,e,r,i,n,o,s,c){for(var a=this._nRounds,h=t[e]^r[0],l=t[e+1]^r[1],f=t[e+2]^r[2],d=t[e+3]^r[3],u=4,p=1;p>>24]^n[l>>>16&255]^o[f>>>8&255]^s[255&d]^r[u++],v=i[l>>>24]^n[f>>>16&255]^o[d>>>8&255]^s[255&h]^r[u++],y=i[f>>>24]^n[d>>>16&255]^o[h>>>8&255]^s[255&l]^r[u++],g=i[d>>>24]^n[h>>>16&255]^o[l>>>8&255]^s[255&f]^r[u++];h=_,l=v,f=y,d=g}_=(c[h>>>24]<<24|c[l>>>16&255]<<16|c[f>>>8&255]<<8|c[255&d])^r[u++],v=(c[l>>>24]<<24|c[f>>>16&255]<<16|c[d>>>8&255]<<8|c[255&h])^r[u++],y=(c[f>>>24]<<24|c[d>>>16&255]<<16|c[h>>>8&255]<<8|c[255&l])^r[u++],g=(c[d>>>24]<<24|c[h>>>16&255]<<16|c[l>>>8&255]<<8|c[255&f])^r[u++],t[e]=_,t[e+1]=v,t[e+2]=y,t[e+3]=g},keySize:8});t.AES=e._createHelper(p)}(),function(){var t=mt,e=t.lib,r=e.WordArray,i=e.BlockCipher,n=t.algo,o=[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],s=[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],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],a=[{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}],h=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],l=n.DES=i.extend({_doReset:function(){for(var t=this._key.words,e=[],r=0;r<56;r++){var i=o[r]-1;e[r]=t[i>>>5]>>>31-i%32&1}for(var n=this._subKeys=[],a=0;a<16;a++){var h=n[a]=[],l=c[a];for(r=0;r<24;r++)h[r/6|0]|=e[(s[r]-1+l)%28]<<31-r%6,h[4+(r/6|0)]|=e[28+(s[r+24]-1+l)%28]<<31-r%6;for(h[0]=h[0]<<1|h[0]>>>31,r=1;r<7;r++)h[r]=h[r]>>>4*(r-1)+3;h[7]=h[7]<<5|h[7]>>>27}var f=this._invSubKeys=[];for(r=0;r<16;r++)f[r]=n[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],f.call(this,4,252645135),f.call(this,16,65535),d.call(this,2,858993459),d.call(this,8,16711935),f.call(this,1,1431655765);for(var i=0;i<16;i++){for(var n=r[i],o=this._lBlock,s=this._rBlock,c=0,l=0;l<8;l++)c|=a[l][((s^n[l])&h[l])>>>0];this._lBlock=s,this._rBlock=o^c}var u=this._lBlock;this._lBlock=this._rBlock,this._rBlock=u,f.call(this,1,1431655765),d.call(this,8,16711935),d.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),t[e]=this._lBlock,t[e+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});function f(t,e){var r=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=r,this._lBlock^=r<>>t^this._lBlock)&e;this._lBlock^=r,this._rBlock^=r<192.");var e=t.slice(0,2),i=t.length<4?t.slice(0,2):t.slice(2,4),n=t.length<6?t.slice(0,2):t.slice(4,6);this._des1=l.createEncryptor(r.create(e)),this._des2=l.createEncryptor(r.create(i)),this._des3=l.createEncryptor(r.create(n))},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(u)}(),function(){var t=mt,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,i=this._S=[],n=0;n<256;n++)i[n]=n;n=0;for(var o=0;n<256;n++){var s=n%r,c=e[s>>>2]>>>24-s%4*8&255;o=(o+i[n]+c)%256;var a=i[n];i[n]=i[o],i[o]=a}this._i=this._j=0},_doProcessBlock:function(t,e){t[e]^=n.call(this)},keySize:8,ivSize:0});function n(){for(var t=this._S,e=this._i,r=this._j,i=0,n=0;n<4;n++){r=(r+t[e=(e+1)%256])%256;var o=t[e];t[e]=t[r],t[r]=o,i|=t[(t[e]+t[r])%256]<<24-8*n}return this._i=e,this._j=r,i}t.RC4=e._createHelper(i);var o=r.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var t=this.cfg.drop;0>>24)|4278255360&(t[r]<<24|t[r]>>>8);var i=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]];for(r=this._b=0;r<4;r++)Rt.call(this);for(r=0;r<8;r++)n[r]^=i[r+4&7];if(e){var o=e.words,s=o[0],c=o[1],a=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),h=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),l=a>>>16|4294901760&h,f=h<<16|65535&a;for(n[0]^=a,n[1]^=l,n[2]^=h,n[3]^=f,n[4]^=a,n[5]^=l,n[6]^=h,n[7]^=f,r=0;r<4;r++)Rt.call(this)}},_doProcessBlock:function(t,e){var r=this._X;Rt.call(this),lt[0]=r[0]^r[5]>>>16^r[3]<<16,lt[1]=r[2]^r[7]>>>16^r[5]<<16,lt[2]=r[4]^r[1]>>>16^r[7]<<16,lt[3]=r[6]^r[3]>>>16^r[1]<<16;for(var i=0;i<4;i++)lt[i]=16711935&(lt[i]<<8|lt[i]>>>24)|4278255360&(lt[i]<<24|lt[i]>>>8),t[e+i]^=lt[i]},blockSize:4,ivSize:2}),ct.Rabbit=at._createHelper(ut),mt.mode.CTR=(_t=(pt=mt.lib.BlockCipherMode.extend()).Encryptor=pt.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize,n=this._iv,o=this._counter;n&&(o=this._counter=n.slice(0),this._iv=void 0);var s=o.slice(0);r.encryptBlock(s,0),o[i-1]=o[i-1]+1|0;for(var c=0;c>>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]],n=this._b=0;n<4;n++)Mt.call(this);for(n=0;n<8;n++)i[n]^=r[n+4&7];if(e){var o=e.words,s=o[0],c=o[1],a=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),h=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),l=a>>>16|4294901760&h,f=h<<16|65535&a;for(i[0]^=a,i[1]^=l,i[2]^=h,i[3]^=f,i[4]^=a,i[5]^=l,i[6]^=h,i[7]^=f,n=0;n<4;n++)Mt.call(this)}},_doProcessBlock:function(t,e){var r=this._X;Mt.call(this),Bt[0]=r[0]^r[5]>>>16^r[3]<<16,Bt[1]=r[2]^r[7]>>>16^r[5]<<16,Bt[2]=r[4]^r[1]>>>16^r[7]<<16,Bt[3]=r[6]^r[3]>>>16^r[1]<<16;for(var i=0;i<4;i++)Bt[i]=16711935&(Bt[i]<<8|Bt[i]>>>24)|4278255360&(Bt[i]<<24|Bt[i]>>>8),t[e+i]^=Bt[i]},blockSize:4,ivSize:2}),vt.RabbitLegacy=yt._createHelper(St),mt.pad.ZeroPadding={pad:function(t,e){var r=4*e;t.clamp(),t.sigBytes+=r-(t.sigBytes%r||r)},unpad:function(t){var e=t.words,r=t.sigBytes-1;for(r=t.sigBytes-1;0<=r;r--)if(e[r>>>2]>>>24-r%4*8&255){t.sigBytes=r+1;break}}},mt}); -} - -// prettier-ignore -function Env(t,e){"undefined"!=typeof process&&JSON.stringify(process.env).indexOf("GITHUB")>-1&&process.exit(0);class s{constructor(t){this.env=t}send(t,e="GET"){t="string"==typeof t?{url:t}:t;let s=this.get;return"POST"===e&&(s=this.post),new Promise((e,i)=>{s.call(this,t,(t,s,r)=>{t?i(t):e(s)})})}get(t){return this.send.call(this.env,t)}post(t){return this.send.call(this.env,t,"POST")}}return new class{constructor(t,e){this.name=t,this.http=new s(this),this.data=null,this.dataFile="box.dat",this.logs=[],this.isMute=!1,this.isNeedRewrite=!1,this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,e),this.log("",`🔔${this.name}, 开始!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}toObj(t,e=null){try{return JSON.parse(t)}catch{return e}}toStr(t,e=null){try{return JSON.stringify(t)}catch{return e}}getjson(t,e){let s=e;const i=this.getdata(t);if(i)try{s=JSON.parse(this.getdata(t))}catch{}return s}setjson(t,e){try{return this.setdata(JSON.stringify(t),e)}catch{return!1}}getScript(t){return new Promise(e=>{this.get({url:t},(t,s,i)=>e(i))})}runScript(t,e){return new Promise(s=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let r=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");r=r?1*r:20,r=e&&e.timeout?e.timeout:r;const[o,h]=i.split("@"),n={url:`http://${h}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:r},headers:{"X-Key":o,Accept:"*/*"}};this.post(n,(t,e,i)=>s(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e);if(!s&&!i)return{};{const i=s?t:e;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e),r=JSON.stringify(this.data);s?this.fs.writeFileSync(t,r):i?this.fs.writeFileSync(e,r):this.fs.writeFileSync(t,r)}}lodash_get(t,e,s){const i=e.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(const t of i)if(r=Object(r)[t],void 0===r)return s;return r}lodash_set(t,e,s){return Object(t)!==t?t:(Array.isArray(e)||(e=e.toString().match(/[^.[\]]+/g)||[]),e.slice(0,-1).reduce((t,s,i)=>Object(t[s])===t[s]?t[s]:t[s]=Math.abs(e[i+1])>>0==+e[i+1]?[]:{},t)[e[e.length-1]]=s,t)}getdata(t){let e=this.getval(t);if(/^@/.test(t)){const[,s,i]=/^@(.*?)\.(.*?)$/.exec(t),r=s?this.getval(s):"";if(r)try{const t=JSON.parse(r);e=t?this.lodash_get(t,i,""):e}catch(t){e=""}}return e}setdata(t,e){let s=!1;if(/^@/.test(e)){const[,i,r]=/^@(.*?)\.(.*?)$/.exec(e),o=this.getval(i),h=i?"null"===o?null:o||"{}":"{}";try{const e=JSON.parse(h);this.lodash_set(e,r,t),s=this.setval(JSON.stringify(e),i)}catch(e){const o={};this.lodash_set(o,r,t),s=this.setval(JSON.stringify(o),i)}}else s=this.setval(t,e);return s}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,e){return this.isSurge()||this.isLoon()?$persistentStore.write(t,e):this.isQuanX()?$prefs.setValueForKey(t,e):this.isNode()?(this.data=this.loaddata(),this.data[e]=t,this.writedata(),!0):this.data&&this.data[e]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,e=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?(this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.get(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)})):this.isQuanX()?(this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t))):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,e)=>{try{if(t.headers["set-cookie"]){const s=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();s&&this.ckjar.setCookieSync(s,null),e.cookieJar=this.ckjar}}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)}))}post(t,e=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),t.headers&&delete t.headers["Content-Length"],this.isSurge()||this.isLoon())this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.post(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)});else if(this.isQuanX())t.method="POST",this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t));else if(this.isNode()){this.initGotEnv(t);const{url:s,...i}=t;this.got.post(s,i).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)})}}time(t,e=null){const s=e?new Date(e):new Date(new Date().getTime()+new Date().getTimezoneOffset()*60*1000+8*60*60*1000);let i={"M+":s.getMonth()+1,"d+":s.getDate(),"H+":s.getHours(),"m+":s.getMinutes(),"s+":s.getSeconds(),"q+":Math.floor((s.getMonth()+3)/3),S:s.getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(s.getFullYear()+"").substr(4-RegExp.$1.length)));for(let e in i)new RegExp("("+e+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?i[e]:("00"+i[e]).substr((""+i[e]).length)));return t}msg(e=t,s="",i="",r){const o=t=>{if(!t)return t;if("string"==typeof t)return this.isLoon()?t:this.isQuanX()?{"open-url":t}:this.isSurge()?{url:t}:void 0;if("object"==typeof t){if(this.isLoon()){let e=t.openUrl||t.url||t["open-url"],s=t.mediaUrl||t["media-url"];return{openUrl:e,mediaUrl:s}}if(this.isQuanX()){let e=t["open-url"]||t.url||t.openUrl,s=t["media-url"]||t.mediaUrl;return{"open-url":e,"media-url":s}}if(this.isSurge()){let e=t.url||t.openUrl||t["open-url"];return{url:e}}}};if(this.isMute||(this.isSurge()||this.isLoon()?$notification.post(e,s,i,o(r)):this.isQuanX()&&$notify(e,s,i,o(r))),!this.isMuteLog){let t=["","==============📣系统通知📣=============="];t.push(e),s&&t.push(s),i&&t.push(i),console.log(t.join("\n")),this.logs=this.logs.concat(t)}}log(...t){t.length>0&&(this.logs=[...this.logs,...t]),console.log(t.join(this.logSeparator))}logErr(t,e){const s=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();s?this.log("",`❗️${this.name}, 错误!`,t.stack):this.log("",`❗️${this.name}, 错误!`,t)}wait(t){return new Promise(e=>setTimeout(e,t))}done(t={}){const e=(new Date).getTime(),s=(e-this.startTime)/1e3;this.log("",`🔔${this.name}, 结束! 🕛 ${s} 秒`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,e)} - +/* +2022新春快乐 击鼓助力 +账号内互助 +每人2次助力机会 助力满需要5次 + +cron:15 10,22 1-14 2 * +15 10,22 1-14 2 * https://raw.githubusercontent.com/smiek2121/scripts/master/gua_HappyNewYear_Shares.js + + +*/ + + +const $ = new Env('2022新春快乐 击鼓助力'); +const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; +const notify = $.isNode() ? require('./sendNotify') : ''; +CryptoScripts() +$.CryptoJS = $.isNode() ? require('crypto-js') : CryptoJS; +//IOS等用户直接用NobyDa的jd cookie +let cookiesArr = [], + cookie = ''; +if ($.isNode()) { + Object.keys(jdCookieNode).forEach((item) => { + cookiesArr.push(jdCookieNode[item]) + }) + if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => {}; +} else { + cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item); +} + +message = '' +newCookie = '' +resMsg = '' +$.endFlag = false +let shareCodeArr = {} +$.runArr = {} +const activeEndTime = '2022/02/15 00:00:00+08:00';//活动结束时间 +let nowTime = new Date().getTime() + new Date().getTimezoneOffset()*60*1000 + 8*60*60*1000; +let timeH = $.time('H') +!(async () => { + if (!cookiesArr[0]) { + $.msg($.name, '【提示】请先获取cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/', { + "open-url": "https://bean.m.jd.com/" + }); + return; + } + if (nowTime > new Date(activeEndTime).getTime()) { + //活动结束后弹窗提醒 + $.msg($.name, '活动已结束', `请删除此脚本\n咱江湖再见`); + return + } + $.temp = []; + + for (let i = 0; i < cookiesArr.length; i++) { + cookie = cookiesArr[i]; + if (cookie) { + $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]) + $.index = i + 1; + console.log(`\n\n******开始【京东账号${$.index}】${$.nickName || $.UserName}*********\n`); + await getUA() + await run(); + } + } + + try{ + for (let i = 0; i < cookiesArr.length && $.temp.length > 0 && true; i++) { + if (cookiesArr[i]) { + cookie = cookiesArr[i]; + $.canHelp = true;//能否助力 + $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]) + console.log(`\n账号内部相互邀请助力\n`); + for (let n in $.temp) { + let item = $.temp[n] + if(!item || !$.canHelp) continue + console.log(`\n${$.UserName} 去参助力 ${item}`); + const helpRes = await getCoupons(item.trim()); + let res = $.toObj(helpRes,helpRes) + if(typeof res == 'object'){ + if(res.code == 0 && res.data){ + if(res.data.bizMsg){ + console.log(res.data.bizMsg) + } + if(res.data.bizCode === -106){ + delete $.temp[n] + }else if([-105,-1001].includes(res.data.bizCode)){ + $.canHelp = false + } + }else if([-30001].includes(res.code)){ + $.canHelp = false + }else if(res.message || res.msg){ + console.log(res.message || res.msg) + } + } + await $.wait(parseInt(Math.random() * 2000 + 3000, 10)) + if(!$.canHelp){ + break + } + } + + } + } + }catch(e){ + console.log(e) + } +})() + .catch((e) => $.logErr(e)) + .finally(() => $.done()) + +async function run(type = 0){ + try{ + resMsg = '' + let res = await showCoupon() + if($.endFlag) return + if(resMsg){ + message += `【京东账号${$.index}】${$.nickName || $.UserName}\n${resMsg}` + } + await $.wait(parseInt(Math.random() * 2000 + 3000, 10)) + }catch(e){ + console.log(e) + } +} +function getCoupons(code = '') { + + return new Promise(async resolve => { + await requestAlgo(); + let time = Date.now() + let body = {"inviteCode":code,"uuid":"","sv":""} + let h5st = h5stSign(body) || 'undefined' + let message = '' + let opts = { + url: `https://api-x.m.jd.com/client.action`, + body: `h5st=${h5st}&functionId=party_rt_assist&body=${$.toStr(body,body)}&client=wh5&clientVersion=1.0.0&appid=o2_act&t=${time}`, + headers: { + "Accept": "application/json", + "Accept-Language": "zh-cn", + "Accept-Encoding": "gzip, deflate, br", + "Accept-Type": "application/x-www-form-urlencoded", + 'Cookie': `${cookie}`, + "Origin": "https://sfgala.jd.com", + "Referer": "https://sfgala.jd.com/", + "User-Agent": $.UA , + } + } + $.post(opts, async (err, resp, data) => { + try { + if (err) { + console.log(`${$.toStr(err)}`) + console.log(`${$.name} API请求失败,请检查网路重试`) + } else { + console.log(data) + } + } catch (e) { + $.logErr(e, resp) + } finally { + resolve(data); + } + }) + }) +} +function showCoupon() { + let msg = true + return new Promise(resolve => { + let body = {"showAssistorsSwitch":true} + let opts = { + url: `https://api-x.m.jd.com/client.action`, + body: `functionId=party_rt_inviteWindow&body=${$.toStr(body,body)}&client=wh5&clientVersion=1.0.0&appid=o2_act`, + headers: { + "Accept": "application/json", + "Accept-Language": "zh-cn", + "Accept-Encoding": "gzip, deflate, br", + "Accept-Type": "application/x-www-form-urlencoded", + 'Cookie': `${cookie}`, + "Origin": "https://sfgala.jd.com", + "Referer": "https://sfgala.jd.com/", + "User-Agent": $.UA , + } + } + $.post(opts, async (err, resp, data) => { + try { + if (err) { + console.log(`${$.toStr(err)}`) + console.log(`${$.name} API请求失败,请检查网路重试`) + } else { + // console.log(data) + let res = $.toObj(data,data); + if(typeof res == 'object'){ + if(res.code == 0 && res.data){ + if(res.data.bizCode === 0 && res.data.result){ + res = res.data.result + console.log(res.hongbaoSum) + console.log("助力码:"+res.inviteCode) + if(res.haveAssistedNum){ + $.temp.push(res.inviteCode); + }else{ + console.log("助力已满") + } + }else if(res.data.bizMsg){ + console.log(res.data.bizMsg) + if([-2002].includes(res.data.bizCode)){ + $.endFlag = true + } + } + }else if(res.message || res.msg){ + console.log(res.message || res.msg) + } + }else{ + console.log(data) + } + } + } catch (e) { + $.logErr(e, resp) + } finally { + resolve(msg); + } + }) + }) +} + +function getUA(){ + $.UA = `jdapp;iPhone;10.2.2;14.3;${randomString(40)};M/5.0;network/wifi;ADID/;model/iPhone12,1;addressid/4199175193;appBuild/167863;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1;` +} +function randomString(e) { + e = e || 32; + let t = "abcdef0123456789", a = t.length, n = ""; + for (i = 0; i < e; i++) + n += t.charAt(Math.floor(Math.random() * a)); + return n +} + +function jsonParse(str) { + if (typeof str == "string") { + try { + return JSON.parse(str); + } catch (e) { + console.log(e); + $.msg($.name, '', '请勿随意在BoxJs输入框修改内容\n建议通过脚本去获取cookie') + return []; + } + } +} + +var _0xode='jsjiami.com.v6',_0xode_=['‮_0xode'],_0x3e5c=[_0xode,'EcKAXEUmw7LCmw==','XsO9wr/Ci1Q=','wrXCnCnDm2DDtQ==','wotcN33DiQ==','w5BUJsKgWsKIwqM=','BEXCpgYD','wox6WMOlwrA=','w44ORMKkw7k=','VMKvRzjDtw==','w4tJQ3hgBh3DvwrDtAM8w5kbI2XCpkwOJDbDgcKMEsKbB1/Cu8KOXMKLw5REDHV5wokLHz/Ci31Pwr8=','NsOkVcKDLA==','JGvDrC0swqhpenTDu8OswrLDik7ClhxQw45/w7/DjWV3','wqQJLcKUW8KoQ8KcYzNVFcOVFFdKw5DClMORw5fDnMOuwq0=','w7rCsMOnMng=','woMSKHvDnhzClXvDmhLChsKXwoxYP1jDhE/DgmjCjMOZw7Q=','w5ocfH/DnB/CtXDClgrCnsKDwowSOULDikHChmzDh8KOwrPCl8OvfcKHeMKwJg==','w7Qgw44=','CcKKQkQ6','E1rDncKNwoc=','wqrCjR/ClQ==','wo1ZwqjCszE=','wqsYN8KvTcOr','w5BUIsK5ScKFw6Y=','w4ZzecOd','wrTClMKtwrJR','wo9mwrgqaC4=','wpwgLyzDr8O8','w6k7w4tLw50r','wq0RKcKMScOwCcOH','wqsLc8K8QWHDjhQQwqJvwpNFwpfCpMK3BcO2w7h8UnxXVGoOI0p3wrZAN8K5wpc3IsObwp3DoWLCuk1owotHwrocw6XDmS8UXg==','wrLDqUo=','LWrCuws=','w7fCkwHDk3rCtw3CmA==','TFPDggvCrQ==','wpPCg8K5wpNdfxfChjLCpg==','wr3CusKvwq54','C0rDt2XDkg==','KFJkKwc=','w4JkcH3CvsK7w4BcKsOp','OcKiacKyDA==','wppFwoHCpjM=','EcOBecKiwpUT','wqAYN8KDXMO6','wrjCiTfDlXA=','wpjCnMKTwqIeCQ==','wrrClS7DmXrDqQ==','f8OnHcO1SQ==','dWvDshI=','wqXDiQbCkBY=','aMKvPw==','I0MaK2c=','A8OnBMOuOg==','wqDDjsO/w45sw6rCksOx','DcOIwpXDvBI=','w6AncMK4w6p9woLDoQ==','OU/DgcKtDA==','ZU0ew6/DrxATwqYAwrI=','w5DCu8KHw6MQ','wrTCjRs=','woMIcsOlwoA=','bsOYfQ==','EcKJW043','wqZkwq8Jag==','OWbCryUHw70=','DcOIwq3DrQ4=','wq7CjT/ClcOxQj3Clg==','woPDgcKfwrcPFGIJ','ZCBEwpbDksK2BMOjUcKE','wqvDp2HDlcKQewcv','woY6ETrDuMOnwpgM','w5bDrMKfw6BwaXxx','IMOGasKjH3I=','wqJ7R8O7wqA=','Km/Dnk3Domw=','OsKmRsK+Fw==','wrrClinDn3XDqQ==','wqkGfsK7RXM=','wp3DgcKlwq0=','w48fw7Npw5c=','IsOZdMKpGg==','wpRhw6o=','KcOHIMOsPkLCisOpwq7DnkvDqz0=','dg0uV1M=','en7DuDE5wqzDgsOKWMK5VjPCscOUw6Q=','wo7Dl8K1wrowMGgKJ8K6wpHCtQvCnXxUJg==','w7xadMOvHA==','wqTCvSs=','C8KpVEUR','IElGPRk=','LcO9wrTDojE=','w4NOwrg=','JMKaXMK5Hw==','w7Z1SMO9Jw==','Z8OSYDU=','QsKpUVDCkwQ=','w6fClTHDk1zCpxPCmg==','w6JVTsOdPg==','wqMTSMK+aA==','EsOHbsKgwrg=','FcKPSA==','w7NIXMOzIA==','MEnCrB7Cug==','LHvDisKJwqg=','wrIceMK1Zg==','WUbDvATCkw==','w5nCocOdDVo=','w70qw5dpw5Y1','L8OuZcOTwoo=','w5NwTcOGPm4/Lg==','w7nCvMOFCGLDiXLDvA==','w5DCiBvDl1rCoTfCrg==','worDkcK6w54BwqrDp8Oh','OsOVwr/DuBQAw4HCtQ==','DMKBa1Qsw5TCkyk=','w6DDokhvOMOGbMK4','F8OPRMKywogXeMOh','G8KBVkM/w4k=','wr4GQ8KsVm7Dhxs=','UsK0aCbDow==','OGgcJVTDtcOIGg==','w4RwcMORLXM=','wqQGZw==','EHPCpjnCpA==','bXrDvggvwp3DhMOW','w70qw41mw5I4TQ==','wpDDi8K4wosSCH4d','woTDmcOyw7Z3w7DCqsOR','wp9VKlPDhQHCiWDDkUM=','wr7CnDPDr3HDvlgcwoXDow==','w70qw41mw5I1','wqcxfMOZwro=','AsO6QcKjEQ==','w7PDqG9WI8ODbsK2XGDCiV/DtsKSwq4=','eHrDuikhwpDDlQ==','ehAgMsKzw5Q=','JMOMcMKGC2pYQXEaew==','FMKLVkcqw5U=','wqoSK8KhScOxBA==','L2ghMkfDqA==','OGI8JQ==','J3DDg8KzGQ==','dsOIZj9ZRg==','OMOuYMOVwoVi','wrXCocK6wqxD','woM6ER/Dmw==','WsKTIsO+w4xJIcK0csKXAGPDksOecMKG','AUDDqcK2wokywpR/HsOfw6nDgCAQL04=','FnrDvMKaZwvDssKSwp4Kw43DijrCqCAAAg==','w4rDt8K4w6RxOj05aEXDi8OyJsKUdcOlwp3CuUHCi8Oew5fCocOm','MwlCwr/Cr0xKw79xw68=','AMKNUGUu','jsjiami.rAcoym.vk6qlwTCTYSrWdy=='];if(function(_0x4aa0ba,_0x6651ee,_0x213183){function _0x3f40da(_0x66cbe6,_0xa8d18c,_0x11b699,_0x11a38d,_0x57b1dc,_0x18b84b){_0xa8d18c=_0xa8d18c>>0x8,_0x57b1dc='po';var _0x27fb3c='shift',_0x495bbd='push',_0x18b84b='‮';if(_0xa8d18c<_0x66cbe6){while(--_0x66cbe6){_0x11a38d=_0x4aa0ba[_0x27fb3c]();if(_0xa8d18c===_0x66cbe6&&_0x18b84b==='‮'&&_0x18b84b['length']===0x1){_0xa8d18c=_0x11a38d,_0x11b699=_0x4aa0ba[_0x57b1dc+'p']();}else if(_0xa8d18c&&_0x11b699['replace'](/[rAykqlwTCTYSrWdy=]/g,'')===_0xa8d18c){_0x4aa0ba[_0x495bbd](_0x11a38d);}}_0x4aa0ba[_0x495bbd](_0x4aa0ba[_0x27fb3c]());}return 0xced86;};return _0x3f40da(++_0x6651ee,_0x213183)>>_0x6651ee^_0x213183;}(_0x3e5c,0x1bd,0x1bd00),_0x3e5c){_0xode_=_0x3e5c['length']^0x1bd;};function _0x5722(_0x583609,_0xdaa79d){_0x583609=~~'0x'['concat'](_0x583609['slice'](0x1));var _0x4295ed=_0x3e5c[_0x583609];if(_0x5722['fwnILs']===undefined){(function(){var _0x2e1e8e=typeof window!=='undefined'?window:typeof process==='object'&&typeof require==='function'&&typeof global==='object'?global:this;var _0x46d1da='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x2e1e8e['atob']||(_0x2e1e8e['atob']=function(_0x12157a){var _0x357a6d=String(_0x12157a)['replace'](/=+$/,'');for(var _0x17f039=0x0,_0x7aba02,_0x38a27d,_0x588938=0x0,_0x10831c='';_0x38a27d=_0x357a6d['charAt'](_0x588938++);~_0x38a27d&&(_0x7aba02=_0x17f039%0x4?_0x7aba02*0x40+_0x38a27d:_0x38a27d,_0x17f039++%0x4)?_0x10831c+=String['fromCharCode'](0xff&_0x7aba02>>(-0x2*_0x17f039&0x6)):0x0){_0x38a27d=_0x46d1da['indexOf'](_0x38a27d);}return _0x10831c;});}());function _0x38066e(_0x5f582d,_0xdaa79d){var _0x3f541e=[],_0x5609f9=0x0,_0x30716b,_0x28413e='',_0x180c10='';_0x5f582d=atob(_0x5f582d);for(var _0x360e57=0x0,_0x475e55=_0x5f582d['length'];_0x360e57<_0x475e55;_0x360e57++){_0x180c10+='%'+('00'+_0x5f582d['charCodeAt'](_0x360e57)['toString'](0x10))['slice'](-0x2);}_0x5f582d=decodeURIComponent(_0x180c10);for(var _0x22963d=0x0;_0x22963d<0x100;_0x22963d++){_0x3f541e[_0x22963d]=_0x22963d;}for(_0x22963d=0x0;_0x22963d<0x100;_0x22963d++){_0x5609f9=(_0x5609f9+_0x3f541e[_0x22963d]+_0xdaa79d['charCodeAt'](_0x22963d%_0xdaa79d['length']))%0x100;_0x30716b=_0x3f541e[_0x22963d];_0x3f541e[_0x22963d]=_0x3f541e[_0x5609f9];_0x3f541e[_0x5609f9]=_0x30716b;}_0x22963d=0x0;_0x5609f9=0x0;for(var _0x330cd5=0x0;_0x330cd5<_0x5f582d['length'];_0x330cd5++){_0x22963d=(_0x22963d+0x1)%0x100;_0x5609f9=(_0x5609f9+_0x3f541e[_0x22963d])%0x100;_0x30716b=_0x3f541e[_0x22963d];_0x3f541e[_0x22963d]=_0x3f541e[_0x5609f9];_0x3f541e[_0x5609f9]=_0x30716b;_0x28413e+=String['fromCharCode'](_0x5f582d['charCodeAt'](_0x330cd5)^_0x3f541e[(_0x3f541e[_0x22963d]+_0x3f541e[_0x5609f9])%0x100]);}return _0x28413e;}_0x5722['OGaFOa']=_0x38066e;_0x5722['WQPEqO']={};_0x5722['fwnILs']=!![];}var _0x73635e=_0x5722['WQPEqO'][_0x583609];if(_0x73635e===undefined){if(_0x5722['QjgVLm']===undefined){_0x5722['QjgVLm']=!![];}_0x4295ed=_0x5722['OGaFOa'](_0x4295ed,_0xdaa79d);_0x5722['WQPEqO'][_0x583609]=_0x4295ed;}else{_0x4295ed=_0x73635e;}return _0x4295ed;};async function requestAlgo(){var _0x236f59={'fqadZ':function(_0x5b76a3,_0x374415){return _0x5b76a3!==_0x374415;},'DbgUc':_0x5722('‮0','tYT]'),'FkuqW':function(_0x4d5faf){return _0x4d5faf();},'sjDWg':_0x5722('‫1','71I('),'XFTCM':function(_0x55e4f6,_0x21dae2){return _0x55e4f6|_0x21dae2;},'HAWAS':function(_0x5083b1,_0x20e5a0){return _0x5083b1(_0x20e5a0);},'xchEp':function(_0x35126b,_0x23382b){return _0x35126b==_0x23382b;},'YSvzm':function(_0x4f32e5,_0x3b4c9e){return _0x4f32e5<_0x3b4c9e;},'ZFgha':function(_0xe2cfaa,_0x567812){return _0xe2cfaa+_0x567812;},'WtFpg':function(_0x45f018,_0x12d70b){return _0x45f018-_0x12d70b;},'quvkT':function(_0x421043,_0xe67bb3){return _0x421043+_0xe67bb3;},'ENWZQ':_0x5722('‮2','VepR'),'uMQCR':_0x5722('‮3','IzVh'),'QVGNU':_0x5722('‮4','cBwY'),'wcqNh':_0x5722('‫5','n$S*')};var _0x4c279a='',_0x3cf7b2=_0x5722('‫6','lnMx'),_0x32e98d=_0x3cf7b2,_0x54cb36=_0x236f59['XFTCM'](Math['random']()*0xa,0x0);do{ss=_0x236f59['HAWAS'](getRandomIDPro,{'size':0x1,'customDict':_0x3cf7b2})+'';if(_0x236f59[_0x5722('‫7','9I9J')](_0x4c279a[_0x5722('‫8','9I9J')](ss),-0x1))_0x4c279a+=ss;}while(_0x236f59[_0x5722('‫9','Y^Z7')](_0x4c279a[_0x5722('‮a','RRac')],0x3));for(let _0x48780e of _0x4c279a[_0x5722('‮b','yqlT')]())_0x32e98d=_0x32e98d[_0x5722('‫c','WfFI')](_0x48780e,'');$['fp']=_0x236f59[_0x5722('‮d','#FOB')](_0x236f59[_0x5722('‮e','g$*r')](getRandomIDPro({'size':_0x54cb36,'customDict':_0x32e98d}),''),_0x4c279a)+_0x236f59['HAWAS'](getRandomIDPro,{'size':_0x236f59[_0x5722('‮f','TZxy')](_0x236f59['WtFpg'](0xe,_0x236f59['quvkT'](_0x54cb36,0x3)),0x1),'customDict':_0x32e98d})+_0x54cb36+'';$['fp']=_0x236f59[_0x5722('‮10','I85n')];let _0x5b175b={'url':_0x5722('‫11',')ALl'),'headers':{'Accept':'application/json','Content-Type':_0x236f59[_0x5722('‫12','zzT%')],'Accept-Encoding':_0x236f59['QVGNU'],'Accept-Language':_0x5722('‫13','#FOB'),'Origin':_0x5722('‫14','fP)@'),'Referer':_0x236f59[_0x5722('‫15','jFAu')],'User-Agent':$['UA']},'body':_0x5722('‫16','yqlT')+$['fp']+_0x5722('‫17','yqlT')+Date[_0x5722('‫18','zwqr')]()+',\x22platform\x22:\x22web\x22,\x22expandParams\x22:\x22\x22}'};return new Promise(async _0x53c7f3=>{if(_0x5722('‫19','9I9J')===_0x236f59[_0x5722('‮1a','IzVh')]){t=new Date(time);}else{$[_0x5722('‮1b','b17P')](_0x5b175b,(_0x2c2c84,_0x1b3374,_0x41f319)=>{try{const {ret,msg,data:{result}={}}=JSON['parse'](_0x41f319);$[_0x5722('‮1c','xBk^')]=result['tk'];$[_0x5722('‮1d','fP)@')]=new Function(_0x5722('‫1e','WfFI')+result[_0x5722('‫1f','O*W[')])();}catch(_0x23f40a){if(_0x236f59['fqadZ'](_0x236f59['DbgUc'],_0x236f59[_0x5722('‮20','tYT]')])){$['logErr'](_0x23f40a,_0x1b3374);}else{$[_0x5722('‮21',')UFK')](_0x23f40a,_0x1b3374);}}finally{_0x236f59['FkuqW'](_0x53c7f3);}});}});}function getRandomIDPro(){var _0x5ce014={'BCJdQ':function(_0x3c92e4,_0x509a4e){return _0x3c92e4===_0x509a4e;},'oyejR':function(_0x365c16,_0x2b1dcd){return _0x365c16===_0x2b1dcd;},'SWYwd':_0x5722('‫22','71I('),'rWvqc':function(_0x16559d,_0x54b890){return _0x16559d==_0x54b890;},'MLeIJ':_0x5722('‫23','zwqr'),'CQvOV':_0x5722('‫24','fP)@'),'BJGKQ':_0x5722('‮25','TMW@'),'oqzRd':_0x5722('‮26','sywN'),'wkDiu':function(_0x4e5971,_0x575151){return _0x4e5971|_0x575151;},'csBpl':function(_0x27f35e,_0x13d632){return _0x27f35e*_0x13d632;}};var _0x5f0a7a,_0x484f6f,_0x2b28ff=_0x5ce014['BCJdQ'](void 0x0,_0x58ef1d=(_0x484f6f=0x0{if(new RegExp('('[_0x5722('‮92','!ydp')](_0xd7a8f2,')'))[_0x5722('‫93','!ydp')](_0x117011)){var _0x119460,_0x3b3946='S+'===_0xd7a8f2?_0x2b4c38[_0x5722('‮94','cBwY')]:'00';_0x117011=_0x117011['replace'](RegExp['$1'],0x1==RegExp['$1']['length']?_0x589edc[_0xd7a8f2]:''['concat'](_0x3b3946)['concat'](_0x589edc[_0xd7a8f2])[_0x5722('‫95','rAKg')](''[_0x5722('‮96','Y6zP')](_0x589edc[_0xd7a8f2])['length']));}});return _0x117011;};_0xode='jsjiami.com.v6'; + + +function CryptoScripts() { + // prettier-ignore + !function(t,e){"object"==typeof exports?module.exports=exports=e():"function"==typeof define&&define.amd?define([],e):t.CryptoJS=e()}(this,function(){var t,e,r,i,n,o,s,c,a,h,l,f,d,u,p,_,v,y,g,B,w,k,S,m,x,b,H,z,A,C,D,E,R,M,F,P,W,O,I,U,K,X,L,j,N,T,q,Z,V,G,J,$,Q,Y,tt,et,rt,it,nt,ot,st,ct,at,ht,lt,ft,dt,ut,pt,_t,vt,yt,gt,Bt,wt,kt,St,mt=mt||function(t){var e;if("undefined"!=typeof window&&window.crypto&&(e=window.crypto),!e&&"undefined"!=typeof window&&window.msCrypto&&(e=window.msCrypto),!e&&"undefined"!=typeof global&&global.crypto&&(e=global.crypto),!e&&"function"==typeof require)try{e=require("crypto")}catch(e){}function r(){if(e){if("function"==typeof e.getRandomValues)try{return e.getRandomValues(new Uint32Array(1))[0]}catch(t){}if("function"==typeof e.randomBytes)try{return e.randomBytes(4).readInt32LE()}catch(t){}}throw new Error("Native crypto module could not be used to get secure random number.")}var i=Object.create||function(t){var e;return n.prototype=t,e=new n,n.prototype=null,e};function n(){}var o={},s=o.lib={},c=s.Base={extend:function(t){var e=i(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).$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)}},a=s.WordArray=c.extend({init:function(t,e){t=this.words=t||[],this.sigBytes=null!=e?e:4*t.length},toString:function(t){return(t||l).stringify(this)},concat:function(t){var e=this.words,r=t.words,i=this.sigBytes,n=t.sigBytes;if(this.clamp(),i%4)for(var o=0;o>>2]>>>24-o%4*8&255;e[i+o>>>2]|=s<<24-(i+o)%4*8}else for(o=0;o>>2]=r[o>>>2];return this.sigBytes+=n,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=c.clone.call(this);return t.words=this.words.slice(0),t},random:function(t){for(var e=[],i=0;i>>2]>>>24-n%4*8&255;i.push((o>>>4).toString(16)),i.push((15&o).toString(16))}return i.join("")},parse:function(t){for(var e=t.length,r=[],i=0;i>>3]|=parseInt(t.substr(i,2),16)<<24-i%8*4;return new a.init(r,e/2)}},f=h.Latin1={stringify:function(t){for(var e=t.words,r=t.sigBytes,i=[],n=0;n>>2]>>>24-n%4*8&255;i.push(String.fromCharCode(o))}return i.join("")},parse:function(t){for(var e=t.length,r=[],i=0;i>>2]|=(255&t.charCodeAt(i))<<24-i%4*8;return new a.init(r,e)}},d=h.Utf8={stringify:function(t){try{return decodeURIComponent(escape(f.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(t){return f.parse(unescape(encodeURIComponent(t)))}},u=s.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new a.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=d.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(e){var r,i=this._data,n=i.words,o=i.sigBytes,s=this.blockSize,c=o/(4*s),h=(c=e?t.ceil(c):t.max((0|c)-this._minBufferSize,0))*s,l=t.min(4*h,o);if(h){for(var f=0;f>>32-e}function Dt(t,e,r,i){var n,o=this._iv;o?(n=o.slice(0),this._iv=void 0):n=this._prevBlock,i.encryptBlock(n,0);for(var s=0;s>24&255)){var e=t>>16&255,r=t>>8&255,i=255&t;255===e?(e=0,255===r?(r=0,255===i?i=0:++i):++r):++e,t=0,t+=e<<16,t+=r<<8,t+=i}else t+=1<<24;return t}function Rt(){for(var t=this._X,e=this._C,r=0;r<8;r++)ft[r]=e[r];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,r=0;r<8;r++){var i=t[r]+e[r],n=65535&i,o=i>>>16,s=((n*n>>>17)+n*o>>>15)+o*o,c=((4294901760&i)*i|0)+((65535&i)*i|0);dt[r]=s^c}t[0]=dt[0]+(dt[7]<<16|dt[7]>>>16)+(dt[6]<<16|dt[6]>>>16)|0,t[1]=dt[1]+(dt[0]<<8|dt[0]>>>24)+dt[7]|0,t[2]=dt[2]+(dt[1]<<16|dt[1]>>>16)+(dt[0]<<16|dt[0]>>>16)|0,t[3]=dt[3]+(dt[2]<<8|dt[2]>>>24)+dt[1]|0,t[4]=dt[4]+(dt[3]<<16|dt[3]>>>16)+(dt[2]<<16|dt[2]>>>16)|0,t[5]=dt[5]+(dt[4]<<8|dt[4]>>>24)+dt[3]|0,t[6]=dt[6]+(dt[5]<<16|dt[5]>>>16)+(dt[4]<<16|dt[4]>>>16)|0,t[7]=dt[7]+(dt[6]<<8|dt[6]>>>24)+dt[5]|0}function Mt(){for(var t=this._X,e=this._C,r=0;r<8;r++)wt[r]=e[r];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,r=0;r<8;r++){var i=t[r]+e[r],n=65535&i,o=i>>>16,s=((n*n>>>17)+n*o>>>15)+o*o,c=((4294901760&i)*i|0)+((65535&i)*i|0);kt[r]=s^c}t[0]=kt[0]+(kt[7]<<16|kt[7]>>>16)+(kt[6]<<16|kt[6]>>>16)|0,t[1]=kt[1]+(kt[0]<<8|kt[0]>>>24)+kt[7]|0,t[2]=kt[2]+(kt[1]<<16|kt[1]>>>16)+(kt[0]<<16|kt[0]>>>16)|0,t[3]=kt[3]+(kt[2]<<8|kt[2]>>>24)+kt[1]|0,t[4]=kt[4]+(kt[3]<<16|kt[3]>>>16)+(kt[2]<<16|kt[2]>>>16)|0,t[5]=kt[5]+(kt[4]<<8|kt[4]>>>24)+kt[3]|0,t[6]=kt[6]+(kt[5]<<16|kt[5]>>>16)+(kt[4]<<16|kt[4]>>>16)|0,t[7]=kt[7]+(kt[6]<<8|kt[6]>>>24)+kt[5]|0}return t=mt.lib.WordArray,mt.enc.Base64={stringify:function(t){var e=t.words,r=t.sigBytes,i=this._map;t.clamp();for(var n=[],o=0;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,c=0;c<4&&o+.75*c>>6*(3-c)&63));var a=i.charAt(64);if(a)for(;n.length%4;)n.push(a);return n.join("")},parse:function(e){var r=e.length,i=this._map,n=this._reverseMap;if(!n){n=this._reverseMap=[];for(var o=0;o>>6-s%4*2;n[o>>>2]|=c<<24-o%4*8,o++}return t.create(n,o)}(e,r,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},function(t){var e=mt,r=e.lib,i=r.WordArray,n=r.Hasher,o=e.algo,s=[];!function(){for(var e=0;e<64;e++)s[e]=4294967296*t.abs(t.sin(e+1))|0}();var c=o.MD5=n.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(t,e){for(var r=0;r<16;r++){var i=e+r,n=t[i];t[i]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8)}var o=this._hash.words,c=t[e+0],d=t[e+1],u=t[e+2],p=t[e+3],_=t[e+4],v=t[e+5],y=t[e+6],g=t[e+7],B=t[e+8],w=t[e+9],k=t[e+10],S=t[e+11],m=t[e+12],x=t[e+13],b=t[e+14],H=t[e+15],z=o[0],A=o[1],C=o[2],D=o[3];z=f(z=l(z=l(z=l(z=l(z=h(z=h(z=h(z=h(z=a(z=a(z=a(z=a(z,A,C,D,c,7,s[0]),A=a(A,C=a(C,D=a(D,z,A,C,d,12,s[1]),z,A,u,17,s[2]),D,z,p,22,s[3]),C,D,_,7,s[4]),A=a(A,C=a(C,D=a(D,z,A,C,v,12,s[5]),z,A,y,17,s[6]),D,z,g,22,s[7]),C,D,B,7,s[8]),A=a(A,C=a(C,D=a(D,z,A,C,w,12,s[9]),z,A,k,17,s[10]),D,z,S,22,s[11]),C,D,m,7,s[12]),A=a(A,C=a(C,D=a(D,z,A,C,x,12,s[13]),z,A,b,17,s[14]),D,z,H,22,s[15]),C,D,d,5,s[16]),A=h(A,C=h(C,D=h(D,z,A,C,y,9,s[17]),z,A,S,14,s[18]),D,z,c,20,s[19]),C,D,v,5,s[20]),A=h(A,C=h(C,D=h(D,z,A,C,k,9,s[21]),z,A,H,14,s[22]),D,z,_,20,s[23]),C,D,w,5,s[24]),A=h(A,C=h(C,D=h(D,z,A,C,b,9,s[25]),z,A,p,14,s[26]),D,z,B,20,s[27]),C,D,x,5,s[28]),A=h(A,C=h(C,D=h(D,z,A,C,u,9,s[29]),z,A,g,14,s[30]),D,z,m,20,s[31]),C,D,v,4,s[32]),A=l(A,C=l(C,D=l(D,z,A,C,B,11,s[33]),z,A,S,16,s[34]),D,z,b,23,s[35]),C,D,d,4,s[36]),A=l(A,C=l(C,D=l(D,z,A,C,_,11,s[37]),z,A,g,16,s[38]),D,z,k,23,s[39]),C,D,x,4,s[40]),A=l(A,C=l(C,D=l(D,z,A,C,c,11,s[41]),z,A,p,16,s[42]),D,z,y,23,s[43]),C,D,w,4,s[44]),A=l(A,C=l(C,D=l(D,z,A,C,m,11,s[45]),z,A,H,16,s[46]),D,z,u,23,s[47]),C,D,c,6,s[48]),A=f(A=f(A=f(A=f(A,C=f(C,D=f(D,z,A,C,g,10,s[49]),z,A,b,15,s[50]),D,z,v,21,s[51]),C=f(C,D=f(D,z=f(z,A,C,D,m,6,s[52]),A,C,p,10,s[53]),z,A,k,15,s[54]),D,z,d,21,s[55]),C=f(C,D=f(D,z=f(z,A,C,D,B,6,s[56]),A,C,H,10,s[57]),z,A,y,15,s[58]),D,z,x,21,s[59]),C=f(C,D=f(D,z=f(z,A,C,D,_,6,s[60]),A,C,S,10,s[61]),z,A,u,15,s[62]),D,z,w,21,s[63]),o[0]=o[0]+z|0,o[1]=o[1]+A|0,o[2]=o[2]+C|0,o[3]=o[3]+D|0},_doFinalize:function(){var e=this._data,r=e.words,i=8*this._nDataBytes,n=8*e.sigBytes;r[n>>>5]|=128<<24-n%32;var o=t.floor(i/4294967296),s=i;r[15+(64+n>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),r[14+(64+n>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),e.sigBytes=4*(r.length+1),this._process();for(var c=this._hash,a=c.words,h=0;h<4;h++){var l=a[h];a[h]=16711935&(l<<8|l>>>24)|4278255360&(l<<24|l>>>8)}return c},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}});function a(t,e,r,i,n,o,s){var c=t+(e&r|~e&i)+n+s;return(c<>>32-o)+e}function h(t,e,r,i,n,o,s){var c=t+(e&i|r&~i)+n+s;return(c<>>32-o)+e}function l(t,e,r,i,n,o,s){var c=t+(e^r^i)+n+s;return(c<>>32-o)+e}function f(t,e,r,i,n,o,s){var c=t+(r^(e|~i))+n+s;return(c<>>32-o)+e}e.MD5=n._createHelper(c),e.HmacMD5=n._createHmacHelper(c)}(Math),r=(e=mt).lib,i=r.WordArray,n=r.Hasher,o=e.algo,s=[],c=o.SHA1=n.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var r=this._hash.words,i=r[0],n=r[1],o=r[2],c=r[3],a=r[4],h=0;h<80;h++){if(h<16)s[h]=0|t[e+h];else{var l=s[h-3]^s[h-8]^s[h-14]^s[h-16];s[h]=l<<1|l>>>31}var f=(i<<5|i>>>27)+a+s[h];f+=h<20?1518500249+(n&o|~n&c):h<40?1859775393+(n^o^c):h<60?(n&o|n&c|o&c)-1894007588:(n^o^c)-899497514,a=c,c=o,o=n<<30|n>>>2,n=i,i=f}r[0]=r[0]+i|0,r[1]=r[1]+n|0,r[2]=r[2]+o|0,r[3]=r[3]+c|0,r[4]=r[4]+a|0},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;return e[i>>>5]|=128<<24-i%32,e[14+(64+i>>>9<<4)]=Math.floor(r/4294967296),e[15+(64+i>>>9<<4)]=r,t.sigBytes=4*e.length,this._process(),this._hash},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}}),e.SHA1=n._createHelper(c),e.HmacSHA1=n._createHmacHelper(c),function(t){var e=mt,r=e.lib,i=r.WordArray,n=r.Hasher,o=e.algo,s=[],c=[];!function(){function e(e){for(var r=t.sqrt(e),i=2;i<=r;i++)if(!(e%i))return;return 1}function r(t){return 4294967296*(t-(0|t))|0}for(var i=2,n=0;n<64;)e(i)&&(n<8&&(s[n]=r(t.pow(i,.5))),c[n]=r(t.pow(i,1/3)),n++),i++}();var a=[],h=o.SHA256=n.extend({_doReset:function(){this._hash=new i.init(s.slice(0))},_doProcessBlock:function(t,e){for(var r=this._hash.words,i=r[0],n=r[1],o=r[2],s=r[3],h=r[4],l=r[5],f=r[6],d=r[7],u=0;u<64;u++){if(u<16)a[u]=0|t[e+u];else{var p=a[u-15],_=(p<<25|p>>>7)^(p<<14|p>>>18)^p>>>3,v=a[u-2],y=(v<<15|v>>>17)^(v<<13|v>>>19)^v>>>10;a[u]=_+a[u-7]+y+a[u-16]}var g=i&n^i&o^n&o,B=(i<<30|i>>>2)^(i<<19|i>>>13)^(i<<10|i>>>22),w=d+((h<<26|h>>>6)^(h<<21|h>>>11)^(h<<7|h>>>25))+(h&l^~h&f)+c[u]+a[u];d=f,f=l,l=h,h=s+w|0,s=o,o=n,n=i,i=w+(B+g)|0}r[0]=r[0]+i|0,r[1]=r[1]+n|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+h|0,r[5]=r[5]+l|0,r[6]=r[6]+f|0,r[7]=r[7]+d|0},_doFinalize:function(){var e=this._data,r=e.words,i=8*this._nDataBytes,n=8*e.sigBytes;return r[n>>>5]|=128<<24-n%32,r[14+(64+n>>>9<<4)]=t.floor(i/4294967296),r[15+(64+n>>>9<<4)]=i,e.sigBytes=4*r.length,this._process(),this._hash},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}});e.SHA256=n._createHelper(h),e.HmacSHA256=n._createHmacHelper(h)}(Math),function(){var t=mt.lib.WordArray,e=mt.enc;function r(t){return t<<8&4278255360|t>>>8&16711935}e.Utf16=e.Utf16BE={stringify:function(t){for(var e=t.words,r=t.sigBytes,i=[],n=0;n>>2]>>>16-n%4*8&65535;i.push(String.fromCharCode(o))}return i.join("")},parse:function(e){for(var r=e.length,i=[],n=0;n>>1]|=e.charCodeAt(n)<<16-n%2*16;return t.create(i,2*r)}},e.Utf16LE={stringify:function(t){for(var e=t.words,i=t.sigBytes,n=[],o=0;o>>2]>>>16-o%4*8&65535);n.push(String.fromCharCode(s))}return n.join("")},parse:function(e){for(var i=e.length,n=[],o=0;o>>1]|=r(e.charCodeAt(o)<<16-o%2*16);return t.create(n,2*i)}}}(),function(){if("function"==typeof ArrayBuffer){var t=mt.lib.WordArray,e=t.init;(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,i=[],n=0;n>>2]|=t[n]<<24-n%4*8;e.call(this,i,r)}else e.apply(this,arguments)}).prototype=t}}(),Math,h=(a=mt).lib,l=h.WordArray,f=h.Hasher,d=a.algo,u=l.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]),p=l.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]),_=l.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]),v=l.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]),y=l.create([0,1518500249,1859775393,2400959708,2840853838]),g=l.create([1352829926,1548603684,1836072691,2053994217,0]),B=d.RIPEMD160=f.extend({_doReset:function(){this._hash=l.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var r=0;r<16;r++){var i=e+r,n=t[i];t[i]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8)}var o,s,c,a,h,l,f,d,B,w,k,S=this._hash.words,m=y.words,x=g.words,b=u.words,H=p.words,z=_.words,A=v.words;for(l=o=S[0],f=s=S[1],d=c=S[2],B=a=S[3],w=h=S[4],r=0;r<80;r+=1)k=o+t[e+b[r]]|0,k+=r<16?xt(s,c,a)+m[0]:r<32?bt(s,c,a)+m[1]:r<48?Ht(s,c,a)+m[2]:r<64?zt(s,c,a)+m[3]:At(s,c,a)+m[4],k=(k=Ct(k|=0,z[r]))+h|0,o=h,h=a,a=Ct(c,10),c=s,s=k,k=l+t[e+H[r]]|0,k+=r<16?At(f,d,B)+x[0]:r<32?zt(f,d,B)+x[1]:r<48?Ht(f,d,B)+x[2]:r<64?bt(f,d,B)+x[3]:xt(f,d,B)+x[4],k=(k=Ct(k|=0,A[r]))+w|0,l=w,w=B,B=Ct(d,10),d=f,f=k;k=S[1]+c+B|0,S[1]=S[2]+a+w|0,S[2]=S[3]+h+l|0,S[3]=S[4]+o+f|0,S[4]=S[0]+s+d|0,S[0]=k},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;e[i>>>5]|=128<<24-i%32,e[14+(64+i>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(e.length+1),this._process();for(var n=this._hash,o=n.words,s=0;s<5;s++){var c=o[s];o[s]=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8)}return n},clone:function(){var t=f.clone.call(this);return t._hash=this._hash.clone(),t}}),a.RIPEMD160=f._createHelper(B),a.HmacRIPEMD160=f._createHmacHelper(B),w=mt.lib.Base,k=mt.enc.Utf8,mt.algo.HMAC=w.extend({init:function(t,e){t=this._hasher=new t.init,"string"==typeof e&&(e=k.parse(e));var r=t.blockSize,i=4*r;e.sigBytes>i&&(e=t.finalize(e)),e.clamp();for(var n=this._oKey=e.clone(),o=this._iKey=e.clone(),s=n.words,c=o.words,a=0;a>>24)|4278255360&(o<<24|o>>>8),s=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),(A=r[n]).high^=s,A.low^=o}for(var f=0;f<24;f++){for(var d=0;d<5;d++){for(var u=0,p=0,_=0;_<5;_++)u^=(A=r[d+5*_]).high,p^=A.low;var v=l[d];v.high=u,v.low=p}for(d=0;d<5;d++){var y=l[(d+4)%5],g=l[(d+1)%5],B=g.high,w=g.low;for(u=y.high^(B<<1|w>>>31),p=y.low^(w<<1|B>>>31),_=0;_<5;_++)(A=r[d+5*_]).high^=u,A.low^=p}for(var k=1;k<25;k++){var S=(A=r[k]).high,m=A.low,x=c[k];p=x<32?(u=S<>>32-x,m<>>32-x):(u=m<>>64-x,S<>>64-x);var b=l[a[k]];b.high=u,b.low=p}var H=l[0],z=r[0];for(H.high=z.high,H.low=z.low,d=0;d<5;d++)for(_=0;_<5;_++){var A=r[k=d+5*_],C=l[k],D=l[(d+1)%5+5*_],E=l[(d+2)%5+5*_];A.high=C.high^~D.high&E.high,A.low=C.low^~D.low&E.low}A=r[0];var R=h[f];A.high^=R.high,A.low^=R.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((1+n)/o)*o>>>5)-1]|=128,e.sigBytes=4*r.length,this._process();for(var s=this._state,c=this.cfg.outputLength/8,a=c/8,h=[],l=0;l>>24)|4278255360&(d<<24|d>>>8),u=16711935&(u<<8|u>>>24)|4278255360&(u<<24|u>>>8),h.push(u),h.push(d)}return new i.init(h,c)},clone:function(){for(var t=n.clone.call(this),e=t._state=this._state.slice(0),r=0;r<25;r++)e[r]=e[r].clone();return t}});e.SHA3=n._createHelper(f),e.HmacSHA3=n._createHmacHelper(f)}(Math),function(){var t=mt,e=t.lib.Hasher,r=t.x64,i=r.Word,n=r.WordArray,o=t.algo;function s(){return i.create.apply(i,arguments)}var c=[s(1116352408,3609767458),s(1899447441,602891725),s(3049323471,3964484399),s(3921009573,2173295548),s(961987163,4081628472),s(1508970993,3053834265),s(2453635748,2937671579),s(2870763221,3664609560),s(3624381080,2734883394),s(310598401,1164996542),s(607225278,1323610764),s(1426881987,3590304994),s(1925078388,4068182383),s(2162078206,991336113),s(2614888103,633803317),s(3248222580,3479774868),s(3835390401,2666613458),s(4022224774,944711139),s(264347078,2341262773),s(604807628,2007800933),s(770255983,1495990901),s(1249150122,1856431235),s(1555081692,3175218132),s(1996064986,2198950837),s(2554220882,3999719339),s(2821834349,766784016),s(2952996808,2566594879),s(3210313671,3203337956),s(3336571891,1034457026),s(3584528711,2466948901),s(113926993,3758326383),s(338241895,168717936),s(666307205,1188179964),s(773529912,1546045734),s(1294757372,1522805485),s(1396182291,2643833823),s(1695183700,2343527390),s(1986661051,1014477480),s(2177026350,1206759142),s(2456956037,344077627),s(2730485921,1290863460),s(2820302411,3158454273),s(3259730800,3505952657),s(3345764771,106217008),s(3516065817,3606008344),s(3600352804,1432725776),s(4094571909,1467031594),s(275423344,851169720),s(430227734,3100823752),s(506948616,1363258195),s(659060556,3750685593),s(883997877,3785050280),s(958139571,3318307427),s(1322822218,3812723403),s(1537002063,2003034995),s(1747873779,3602036899),s(1955562222,1575990012),s(2024104815,1125592928),s(2227730452,2716904306),s(2361852424,442776044),s(2428436474,593698344),s(2756734187,3733110249),s(3204031479,2999351573),s(3329325298,3815920427),s(3391569614,3928383900),s(3515267271,566280711),s(3940187606,3454069534),s(4118630271,4000239992),s(116418474,1914138554),s(174292421,2731055270),s(289380356,3203993006),s(460393269,320620315),s(685471733,587496836),s(852142971,1086792851),s(1017036298,365543100),s(1126000580,2618297676),s(1288033470,3409855158),s(1501505948,4234509866),s(1607167915,987167468),s(1816402316,1246189591)],a=[];!function(){for(var t=0;t<80;t++)a[t]=s()}();var h=o.SHA512=e.extend({_doReset:function(){this._hash=new n.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,i=r[0],n=r[1],o=r[2],s=r[3],h=r[4],l=r[5],f=r[6],d=r[7],u=i.high,p=i.low,_=n.high,v=n.low,y=o.high,g=o.low,B=s.high,w=s.low,k=h.high,S=h.low,m=l.high,x=l.low,b=f.high,H=f.low,z=d.high,A=d.low,C=u,D=p,E=_,R=v,M=y,F=g,P=B,W=w,O=k,I=S,U=m,K=x,X=b,L=H,j=z,N=A,T=0;T<80;T++){var q,Z,V=a[T];if(T<16)Z=V.high=0|t[e+2*T],q=V.low=0|t[e+2*T+1];else{var G=a[T-15],J=G.high,$=G.low,Q=(J>>>1|$<<31)^(J>>>8|$<<24)^J>>>7,Y=($>>>1|J<<31)^($>>>8|J<<24)^($>>>7|J<<25),tt=a[T-2],et=tt.high,rt=tt.low,it=(et>>>19|rt<<13)^(et<<3|rt>>>29)^et>>>6,nt=(rt>>>19|et<<13)^(rt<<3|et>>>29)^(rt>>>6|et<<26),ot=a[T-7],st=ot.high,ct=ot.low,at=a[T-16],ht=at.high,lt=at.low;Z=(Z=(Z=Q+st+((q=Y+ct)>>>0>>0?1:0))+it+((q+=nt)>>>0>>0?1:0))+ht+((q+=lt)>>>0>>0?1:0),V.high=Z,V.low=q}var ft,dt=O&U^~O&X,ut=I&K^~I&L,pt=C&E^C&M^E&M,_t=D&R^D&F^R&F,vt=(C>>>28|D<<4)^(C<<30|D>>>2)^(C<<25|D>>>7),yt=(D>>>28|C<<4)^(D<<30|C>>>2)^(D<<25|C>>>7),gt=(O>>>14|I<<18)^(O>>>18|I<<14)^(O<<23|I>>>9),Bt=(I>>>14|O<<18)^(I>>>18|O<<14)^(I<<23|O>>>9),wt=c[T],kt=wt.high,St=wt.low,mt=j+gt+((ft=N+Bt)>>>0>>0?1:0),xt=yt+_t;j=X,N=L,X=U,L=K,U=O,K=I,O=P+(mt=(mt=(mt=mt+dt+((ft+=ut)>>>0>>0?1:0))+kt+((ft+=St)>>>0>>0?1:0))+Z+((ft+=q)>>>0>>0?1:0))+((I=W+ft|0)>>>0>>0?1:0)|0,P=M,W=F,M=E,F=R,E=C,R=D,C=mt+(vt+pt+(xt>>>0>>0?1:0))+((D=ft+xt|0)>>>0>>0?1:0)|0}p=i.low=p+D,i.high=u+C+(p>>>0>>0?1:0),v=n.low=v+R,n.high=_+E+(v>>>0>>0?1:0),g=o.low=g+F,o.high=y+M+(g>>>0>>0?1:0),w=s.low=w+W,s.high=B+P+(w>>>0>>0?1:0),S=h.low=S+I,h.high=k+O+(S>>>0>>0?1:0),x=l.low=x+K,l.high=m+U+(x>>>0>>0?1:0),H=f.low=H+L,f.high=b+X+(H>>>0>>0?1:0),A=d.low=A+N,d.high=z+j+(A>>>0>>0?1:0)},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;return e[i>>>5]|=128<<24-i%32,e[30+(128+i>>>10<<5)]=Math.floor(r/4294967296),e[31+(128+i>>>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(h),t.HmacSHA512=e._createHmacHelper(h)}(),Z=(q=mt).x64,V=Z.Word,G=Z.WordArray,J=q.algo,$=J.SHA512,Q=J.SHA384=$.extend({_doReset:function(){this._hash=new G.init([new V.init(3418070365,3238371032),new V.init(1654270250,914150663),new V.init(2438529370,812702999),new V.init(355462360,4144912697),new V.init(1731405415,4290775857),new V.init(2394180231,1750603025),new V.init(3675008525,1694076839),new V.init(1203062813,3204075428)])},_doFinalize:function(){var t=$._doFinalize.call(this);return t.sigBytes-=16,t}}),q.SHA384=$._createHelper(Q),q.HmacSHA384=$._createHmacHelper(Q),mt.lib.Cipher||function(){var t=mt,e=t.lib,r=e.Base,i=e.WordArray,n=e.BufferedBlockAlgorithm,o=t.enc,s=(o.Utf8,o.Base64),c=t.algo.EvpKDF,a=e.Cipher=n.extend({cfg:r.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(){n.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(t){return{encrypt:function(e,r,i){return h(r).encrypt(t,e,r,i)},decrypt:function(e,r,i){return h(r).decrypt(t,e,r,i)}}}});function h(t){return"string"==typeof t?w:g}e.StreamCipher=a.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});var l,f=t.mode={},d=e.BlockCipherMode=r.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}}),u=f.CBC=((l=d.extend()).Encryptor=l.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize;p.call(this,t,e,i),r.encryptBlock(t,e),this._prevBlock=t.slice(e,e+i)}}),l.Decryptor=l.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize,n=t.slice(e,e+i);r.decryptBlock(t,e),p.call(this,t,e,i),this._prevBlock=n}}),l);function p(t,e,r){var i,n=this._iv;n?(i=n,this._iv=void 0):i=this._prevBlock;for(var o=0;o>>2];t.sigBytes-=e}},v=(e.BlockCipher=a.extend({cfg:a.cfg.extend({mode:u,padding:_}),reset:function(){var t;a.reset.call(this);var e=this.cfg,r=e.iv,i=e.mode;this._xformMode==this._ENC_XFORM_MODE?t=i.createEncryptor:(t=i.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==t?this._mode.init(this,r&&r.words):(this._mode=t.call(i,this,r&&r.words),this._mode.__creator=t)},_doProcessBlock:function(t,e){this._mode.processBlock(t,e)},_doFinalize:function(){var t,e=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(e.pad(this._data,this.blockSize),t=this._process(!0)):(t=this._process(!0),e.unpad(t)),t},blockSize:4}),e.CipherParams=r.extend({init:function(t){this.mixIn(t)},toString:function(t){return(t||this.formatter).stringify(this)}})),y=(t.format={}).OpenSSL={stringify:function(t){var e=t.ciphertext,r=t.salt;return(r?i.create([1398893684,1701076831]).concat(r).concat(e):e).toString(s)},parse:function(t){var e,r=s.parse(t),n=r.words;return 1398893684==n[0]&&1701076831==n[1]&&(e=i.create(n.slice(2,4)),n.splice(0,4),r.sigBytes-=16),v.create({ciphertext:r,salt:e})}},g=e.SerializableCipher=r.extend({cfg:r.extend({format:y}),encrypt:function(t,e,r,i){i=this.cfg.extend(i);var n=t.createEncryptor(r,i),o=n.finalize(e),s=n.cfg;return v.create({ciphertext:o,key:r,iv:s.iv,algorithm:t,mode:s.mode,padding:s.padding,blockSize:t.blockSize,formatter:i.format})},decrypt:function(t,e,r,i){return i=this.cfg.extend(i),e=this._parse(e,i.format),t.createDecryptor(r,i).finalize(e.ciphertext)},_parse:function(t,e){return"string"==typeof t?e.parse(t,this):t}}),B=(t.kdf={}).OpenSSL={execute:function(t,e,r,n){n=n||i.random(8);var o=c.create({keySize:e+r}).compute(t,n),s=i.create(o.words.slice(e),4*r);return o.sigBytes=4*e,v.create({key:o,iv:s,salt:n})}},w=e.PasswordBasedCipher=g.extend({cfg:g.cfg.extend({kdf:B}),encrypt:function(t,e,r,i){var n=(i=this.cfg.extend(i)).kdf.execute(r,t.keySize,t.ivSize);i.iv=n.iv;var o=g.encrypt.call(this,t,e,n.key,i);return o.mixIn(n),o},decrypt:function(t,e,r,i){i=this.cfg.extend(i),e=this._parse(e,i.format);var n=i.kdf.execute(r,t.keySize,t.ivSize,e.salt);return i.iv=n.iv,g.decrypt.call(this,t,e,n.key,i)}})}(),mt.mode.CFB=((Y=mt.lib.BlockCipherMode.extend()).Encryptor=Y.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize;Dt.call(this,t,e,i,r),this._prevBlock=t.slice(e,e+i)}}),Y.Decryptor=Y.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize,n=t.slice(e,e+i);Dt.call(this,t,e,i,r),this._prevBlock=n}}),Y),mt.mode.ECB=((tt=mt.lib.BlockCipherMode.extend()).Encryptor=tt.extend({processBlock:function(t,e){this._cipher.encryptBlock(t,e)}}),tt.Decryptor=tt.extend({processBlock:function(t,e){this._cipher.decryptBlock(t,e)}}),tt),mt.pad.AnsiX923={pad:function(t,e){var r=t.sigBytes,i=4*e,n=i-r%i,o=r+n-1;t.clamp(),t.words[o>>>2]|=n<<24-o%4*8,t.sigBytes+=n},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},mt.pad.Iso10126={pad:function(t,e){var r=4*e,i=r-t.sigBytes%r;t.concat(mt.lib.WordArray.random(i-1)).concat(mt.lib.WordArray.create([i<<24],1))},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},mt.pad.Iso97971={pad:function(t,e){t.concat(mt.lib.WordArray.create([2147483648],1)),mt.pad.ZeroPadding.pad(t,e)},unpad:function(t){mt.pad.ZeroPadding.unpad(t),t.sigBytes--}},mt.mode.OFB=(rt=(et=mt.lib.BlockCipherMode.extend()).Encryptor=et.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize,n=this._iv,o=this._keystream;n&&(o=this._keystream=n.slice(0),this._iv=void 0),r.encryptBlock(o,0);for(var s=0;s>>8^255&p^99,i[r]=p;var _=t[n[p]=r],v=t[_],y=t[v],g=257*t[p]^16843008*p;o[r]=g<<24|g>>>8,s[r]=g<<16|g>>>16,c[r]=g<<8|g>>>24,a[r]=g,g=16843009*y^65537*v^257*_^16843008*r,h[p]=g<<24|g>>>8,l[p]=g<<16|g>>>16,f[p]=g<<8|g>>>24,d[p]=g,r?(r=_^t[t[t[y^_]]],u^=t[t[u]]):r=u=1}}();var u=[0,1,2,4,8,16,32,64,128,27,54],p=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*(1+(this._nRounds=6+r)),o=this._keySchedule=[],s=0;s>>24]<<24|i[p>>>16&255]<<16|i[p>>>8&255]<<8|i[255&p]):(p=i[(p=p<<8|p>>>24)>>>24]<<24|i[p>>>16&255]<<16|i[p>>>8&255]<<8|i[255&p],p^=u[s/r|0]<<24),o[s]=o[s-r]^p);for(var c=this._invKeySchedule=[],a=0;a>>24]]^l[i[p>>>16&255]]^f[i[p>>>8&255]]^d[i[255&p]]}}},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._keySchedule,o,s,c,a,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,h,l,f,d,n),r=t[e+1],t[e+1]=t[e+3],t[e+3]=r},_doCryptBlock:function(t,e,r,i,n,o,s,c){for(var a=this._nRounds,h=t[e]^r[0],l=t[e+1]^r[1],f=t[e+2]^r[2],d=t[e+3]^r[3],u=4,p=1;p>>24]^n[l>>>16&255]^o[f>>>8&255]^s[255&d]^r[u++],v=i[l>>>24]^n[f>>>16&255]^o[d>>>8&255]^s[255&h]^r[u++],y=i[f>>>24]^n[d>>>16&255]^o[h>>>8&255]^s[255&l]^r[u++],g=i[d>>>24]^n[h>>>16&255]^o[l>>>8&255]^s[255&f]^r[u++];h=_,l=v,f=y,d=g}_=(c[h>>>24]<<24|c[l>>>16&255]<<16|c[f>>>8&255]<<8|c[255&d])^r[u++],v=(c[l>>>24]<<24|c[f>>>16&255]<<16|c[d>>>8&255]<<8|c[255&h])^r[u++],y=(c[f>>>24]<<24|c[d>>>16&255]<<16|c[h>>>8&255]<<8|c[255&l])^r[u++],g=(c[d>>>24]<<24|c[h>>>16&255]<<16|c[l>>>8&255]<<8|c[255&f])^r[u++],t[e]=_,t[e+1]=v,t[e+2]=y,t[e+3]=g},keySize:8});t.AES=e._createHelper(p)}(),function(){var t=mt,e=t.lib,r=e.WordArray,i=e.BlockCipher,n=t.algo,o=[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],s=[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],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],a=[{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}],h=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],l=n.DES=i.extend({_doReset:function(){for(var t=this._key.words,e=[],r=0;r<56;r++){var i=o[r]-1;e[r]=t[i>>>5]>>>31-i%32&1}for(var n=this._subKeys=[],a=0;a<16;a++){var h=n[a]=[],l=c[a];for(r=0;r<24;r++)h[r/6|0]|=e[(s[r]-1+l)%28]<<31-r%6,h[4+(r/6|0)]|=e[28+(s[r+24]-1+l)%28]<<31-r%6;for(h[0]=h[0]<<1|h[0]>>>31,r=1;r<7;r++)h[r]=h[r]>>>4*(r-1)+3;h[7]=h[7]<<5|h[7]>>>27}var f=this._invSubKeys=[];for(r=0;r<16;r++)f[r]=n[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],f.call(this,4,252645135),f.call(this,16,65535),d.call(this,2,858993459),d.call(this,8,16711935),f.call(this,1,1431655765);for(var i=0;i<16;i++){for(var n=r[i],o=this._lBlock,s=this._rBlock,c=0,l=0;l<8;l++)c|=a[l][((s^n[l])&h[l])>>>0];this._lBlock=s,this._rBlock=o^c}var u=this._lBlock;this._lBlock=this._rBlock,this._rBlock=u,f.call(this,1,1431655765),d.call(this,8,16711935),d.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),t[e]=this._lBlock,t[e+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});function f(t,e){var r=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=r,this._lBlock^=r<>>t^this._lBlock)&e;this._lBlock^=r,this._rBlock^=r<192.");var e=t.slice(0,2),i=t.length<4?t.slice(0,2):t.slice(2,4),n=t.length<6?t.slice(0,2):t.slice(4,6);this._des1=l.createEncryptor(r.create(e)),this._des2=l.createEncryptor(r.create(i)),this._des3=l.createEncryptor(r.create(n))},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(u)}(),function(){var t=mt,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,i=this._S=[],n=0;n<256;n++)i[n]=n;n=0;for(var o=0;n<256;n++){var s=n%r,c=e[s>>>2]>>>24-s%4*8&255;o=(o+i[n]+c)%256;var a=i[n];i[n]=i[o],i[o]=a}this._i=this._j=0},_doProcessBlock:function(t,e){t[e]^=n.call(this)},keySize:8,ivSize:0});function n(){for(var t=this._S,e=this._i,r=this._j,i=0,n=0;n<4;n++){r=(r+t[e=(e+1)%256])%256;var o=t[e];t[e]=t[r],t[r]=o,i|=t[(t[e]+t[r])%256]<<24-8*n}return this._i=e,this._j=r,i}t.RC4=e._createHelper(i);var o=r.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var t=this.cfg.drop;0>>24)|4278255360&(t[r]<<24|t[r]>>>8);var i=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]];for(r=this._b=0;r<4;r++)Rt.call(this);for(r=0;r<8;r++)n[r]^=i[r+4&7];if(e){var o=e.words,s=o[0],c=o[1],a=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),h=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),l=a>>>16|4294901760&h,f=h<<16|65535&a;for(n[0]^=a,n[1]^=l,n[2]^=h,n[3]^=f,n[4]^=a,n[5]^=l,n[6]^=h,n[7]^=f,r=0;r<4;r++)Rt.call(this)}},_doProcessBlock:function(t,e){var r=this._X;Rt.call(this),lt[0]=r[0]^r[5]>>>16^r[3]<<16,lt[1]=r[2]^r[7]>>>16^r[5]<<16,lt[2]=r[4]^r[1]>>>16^r[7]<<16,lt[3]=r[6]^r[3]>>>16^r[1]<<16;for(var i=0;i<4;i++)lt[i]=16711935&(lt[i]<<8|lt[i]>>>24)|4278255360&(lt[i]<<24|lt[i]>>>8),t[e+i]^=lt[i]},blockSize:4,ivSize:2}),ct.Rabbit=at._createHelper(ut),mt.mode.CTR=(_t=(pt=mt.lib.BlockCipherMode.extend()).Encryptor=pt.extend({processBlock:function(t,e){var r=this._cipher,i=r.blockSize,n=this._iv,o=this._counter;n&&(o=this._counter=n.slice(0),this._iv=void 0);var s=o.slice(0);r.encryptBlock(s,0),o[i-1]=o[i-1]+1|0;for(var c=0;c>>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]],n=this._b=0;n<4;n++)Mt.call(this);for(n=0;n<8;n++)i[n]^=r[n+4&7];if(e){var o=e.words,s=o[0],c=o[1],a=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),h=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),l=a>>>16|4294901760&h,f=h<<16|65535&a;for(i[0]^=a,i[1]^=l,i[2]^=h,i[3]^=f,i[4]^=a,i[5]^=l,i[6]^=h,i[7]^=f,n=0;n<4;n++)Mt.call(this)}},_doProcessBlock:function(t,e){var r=this._X;Mt.call(this),Bt[0]=r[0]^r[5]>>>16^r[3]<<16,Bt[1]=r[2]^r[7]>>>16^r[5]<<16,Bt[2]=r[4]^r[1]>>>16^r[7]<<16,Bt[3]=r[6]^r[3]>>>16^r[1]<<16;for(var i=0;i<4;i++)Bt[i]=16711935&(Bt[i]<<8|Bt[i]>>>24)|4278255360&(Bt[i]<<24|Bt[i]>>>8),t[e+i]^=Bt[i]},blockSize:4,ivSize:2}),vt.RabbitLegacy=yt._createHelper(St),mt.pad.ZeroPadding={pad:function(t,e){var r=4*e;t.clamp(),t.sigBytes+=r-(t.sigBytes%r||r)},unpad:function(t){var e=t.words,r=t.sigBytes-1;for(r=t.sigBytes-1;0<=r;r--)if(e[r>>>2]>>>24-r%4*8&255){t.sigBytes=r+1;break}}},mt}); +} + +// prettier-ignore +function Env(t,e){"undefined"!=typeof process&&JSON.stringify(process.env).indexOf("GITHUB")>-1&&process.exit(0);class s{constructor(t){this.env=t}send(t,e="GET"){t="string"==typeof t?{url:t}:t;let s=this.get;return"POST"===e&&(s=this.post),new Promise((e,i)=>{s.call(this,t,(t,s,r)=>{t?i(t):e(s)})})}get(t){return this.send.call(this.env,t)}post(t){return this.send.call(this.env,t,"POST")}}return new class{constructor(t,e){this.name=t,this.http=new s(this),this.data=null,this.dataFile="box.dat",this.logs=[],this.isMute=!1,this.isNeedRewrite=!1,this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,e),this.log("",`🔔${this.name}, 开始!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}toObj(t,e=null){try{return JSON.parse(t)}catch{return e}}toStr(t,e=null){try{return JSON.stringify(t)}catch{return e}}getjson(t,e){let s=e;const i=this.getdata(t);if(i)try{s=JSON.parse(this.getdata(t))}catch{}return s}setjson(t,e){try{return this.setdata(JSON.stringify(t),e)}catch{return!1}}getScript(t){return new Promise(e=>{this.get({url:t},(t,s,i)=>e(i))})}runScript(t,e){return new Promise(s=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let r=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");r=r?1*r:20,r=e&&e.timeout?e.timeout:r;const[o,h]=i.split("@"),n={url:`http://${h}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:r},headers:{"X-Key":o,Accept:"*/*"}};this.post(n,(t,e,i)=>s(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e);if(!s&&!i)return{};{const i=s?t:e;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e),r=JSON.stringify(this.data);s?this.fs.writeFileSync(t,r):i?this.fs.writeFileSync(e,r):this.fs.writeFileSync(t,r)}}lodash_get(t,e,s){const i=e.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(const t of i)if(r=Object(r)[t],void 0===r)return s;return r}lodash_set(t,e,s){return Object(t)!==t?t:(Array.isArray(e)||(e=e.toString().match(/[^.[\]]+/g)||[]),e.slice(0,-1).reduce((t,s,i)=>Object(t[s])===t[s]?t[s]:t[s]=Math.abs(e[i+1])>>0==+e[i+1]?[]:{},t)[e[e.length-1]]=s,t)}getdata(t){let e=this.getval(t);if(/^@/.test(t)){const[,s,i]=/^@(.*?)\.(.*?)$/.exec(t),r=s?this.getval(s):"";if(r)try{const t=JSON.parse(r);e=t?this.lodash_get(t,i,""):e}catch(t){e=""}}return e}setdata(t,e){let s=!1;if(/^@/.test(e)){const[,i,r]=/^@(.*?)\.(.*?)$/.exec(e),o=this.getval(i),h=i?"null"===o?null:o||"{}":"{}";try{const e=JSON.parse(h);this.lodash_set(e,r,t),s=this.setval(JSON.stringify(e),i)}catch(e){const o={};this.lodash_set(o,r,t),s=this.setval(JSON.stringify(o),i)}}else s=this.setval(t,e);return s}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,e){return this.isSurge()||this.isLoon()?$persistentStore.write(t,e):this.isQuanX()?$prefs.setValueForKey(t,e):this.isNode()?(this.data=this.loaddata(),this.data[e]=t,this.writedata(),!0):this.data&&this.data[e]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,e=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?(this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.get(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)})):this.isQuanX()?(this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t))):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,e)=>{try{if(t.headers["set-cookie"]){const s=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();s&&this.ckjar.setCookieSync(s,null),e.cookieJar=this.ckjar}}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)}))}post(t,e=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),t.headers&&delete t.headers["Content-Length"],this.isSurge()||this.isLoon())this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.post(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)});else if(this.isQuanX())t.method="POST",this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t));else if(this.isNode()){this.initGotEnv(t);const{url:s,...i}=t;this.got.post(s,i).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)})}}time(t,e=null){const s=e?new Date(e):new Date(new Date().getTime()+new Date().getTimezoneOffset()*60*1000+8*60*60*1000);let i={"M+":s.getMonth()+1,"d+":s.getDate(),"H+":s.getHours(),"m+":s.getMinutes(),"s+":s.getSeconds(),"q+":Math.floor((s.getMonth()+3)/3),S:s.getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(s.getFullYear()+"").substr(4-RegExp.$1.length)));for(let e in i)new RegExp("("+e+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?i[e]:("00"+i[e]).substr((""+i[e]).length)));return t}msg(e=t,s="",i="",r){const o=t=>{if(!t)return t;if("string"==typeof t)return this.isLoon()?t:this.isQuanX()?{"open-url":t}:this.isSurge()?{url:t}:void 0;if("object"==typeof t){if(this.isLoon()){let e=t.openUrl||t.url||t["open-url"],s=t.mediaUrl||t["media-url"];return{openUrl:e,mediaUrl:s}}if(this.isQuanX()){let e=t["open-url"]||t.url||t.openUrl,s=t["media-url"]||t.mediaUrl;return{"open-url":e,"media-url":s}}if(this.isSurge()){let e=t.url||t.openUrl||t["open-url"];return{url:e}}}};if(this.isMute||(this.isSurge()||this.isLoon()?$notification.post(e,s,i,o(r)):this.isQuanX()&&$notify(e,s,i,o(r))),!this.isMuteLog){let t=["","==============📣系统通知📣=============="];t.push(e),s&&t.push(s),i&&t.push(i),console.log(t.join("\n")),this.logs=this.logs.concat(t)}}log(...t){t.length>0&&(this.logs=[...this.logs,...t]),console.log(t.join(this.logSeparator))}logErr(t,e){const s=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();s?this.log("",`❗️${this.name}, 错误!`,t.stack):this.log("",`❗️${this.name}, 错误!`,t)}wait(t){return new Promise(e=>setTimeout(e,t))}done(t={}){const e=(new Date).getTime(),s=(e-this.startTime)/1e3;this.log("",`🔔${this.name}, 结束! 🕛 ${s} 秒`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,e)} + diff --git a/jd_fanli.js b/backUp/jd_fanli.js similarity index 100% rename from jd_fanli.js rename to backUp/jd_fanli.js diff --git a/jd_freshgoods.js b/backUp/jd_freshgoods.js similarity index 100% rename from jd_freshgoods.js rename to backUp/jd_freshgoods.js diff --git a/jd_mpdzcar.js b/backUp/jd_mpdzcar.js similarity index 100% rename from jd_mpdzcar.js rename to backUp/jd_mpdzcar.js diff --git a/jd_mpdzcar_game.js b/backUp/jd_mpdzcar_game.js similarity index 100% rename from jd_mpdzcar_game.js rename to backUp/jd_mpdzcar_game.js diff --git a/jd_mpdzcar_help.js b/backUp/jd_mpdzcar_help.js similarity index 100% rename from jd_mpdzcar_help.js rename to backUp/jd_mpdzcar_help.js diff --git a/backUp/jd_nzmh.js b/backUp/jd_nzmh.js deleted file mode 100644 index f0a2bd3e..00000000 --- a/backUp/jd_nzmh.js +++ /dev/null @@ -1,285 +0,0 @@ -/* -女装盲盒 -活动地址:https://h5.m.jd.com/babelDiy/Zeus/293owQqRtKfS8cuUhk4YzGFYGw2W/index.html -活动入口:京东app-女装馆-赢京豆 -已支持IOS双京东账号,Node.js支持N个京东账号 -脚本兼容: QuantumultX, Surge, Loon, JSBox, Node.js -============Quantumultx=============== -[task_local] -#女装盲盒 -35 8,12 * * * https://gitee.com/lxk0301/jd_scripts/raw/master/jd_nzmh.js, tag=女装盲盒, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/Color/jd.png, enabled=true - -================Loon============== -[Script] -cron "35 8,12 * * *" script-path=https://gitee.com/lxk0301/jd_scripts/raw/master/jd_nzmh.js,tag=女装盲盒 - -===============Surge================= -女装盲盒 = type=cron,cronexp="35 8,12 * * *",wake-system=1,timeout=3600,script-path=https://gitee.com/lxk0301/jd_scripts/raw/master/jd_nzmh.js - -============小火箭========= -女装盲盒 = type=cron,script-path=https://gitee.com/lxk0301/jd_scripts/raw/master/jd_nzmh.js, cronexpr="35 8,12 * * *", timeout=3600, enable=true - */ - -const $ = new Env('女装盲盒抽京豆'); -const notify = $.isNode() ? require('./sendNotify') : ''; -const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; -//Node.js用户请在jdCookie.js处填写京东ck; -//IOS等用户直接用NobyDa的jd cookie -let cookiesArr = [], cookie = '', message; - -if ($.isNode()) { - Object.keys(jdCookieNode).forEach((item) => { - cookiesArr.push(jdCookieNode[item]) - }) - if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => { - }; -} else { - cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item); -} - -!(async () => { - if (!cookiesArr[0]) { - $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/', {"open-url": "https://bean.m.jd.com/"}); - return; - } - for (let i = 0; i < cookiesArr.length; i++) { - if (cookiesArr[i]) { - cookie = cookiesArr[i]; - $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]) - $.index = i + 1; - $.isLogin = true; - $.nickName = ''; - $.beans = 0 - message = ''; - await TotalBean(); - console.log(`\n******开始【京东账号${$.index}】${$.nickName || $.UserName}*********\n`); - if (!$.isLogin) { - $.msg($.name, `【提示】cookie已失效`, `京东账号${$.index} ${$.nickName || $.UserName}\n请重新登录获取\nhttps://bean.m.jd.com/`, {"open-url": "https://bean.m.jd.com/"}); - if ($.isNode()) { - await notify.sendNotify(`${$.name}cookie已失效 - ${$.UserName}`, `京东账号${$.index} ${$.UserName}\n请重新登录获取cookie`); - } else { - $.setdata('', `CookieJD${i ? i + 1 : ""}`);//cookie失效,故清空cookie。$.setdata('', `CookieJD${i ? i + 1 : "" }`);//cookie失效,故清空cookie。 - } - continue - } - try { - await jdMh('https://anmp.jd.com/babelDiy/Zeus/293owQqRtKfS8cuUhk4YzGFYGw2W/index.html') - } catch (e) { - $.logErr(e) - } - } - } -})() - .catch((e) => { - $.log('', `❌ ${$.name}, 失败! 原因: ${e}!`, '') - }) - .finally(() => { - $.done(); - }) - -async function jdMh(url) { - try { - await getInfo(url) - await getUserInfo() - await draw() - while ($.userInfo.bless >= $.userInfo.cost_bless_one_time) { - await draw() - await getUserInfo() - await $.wait(500) - } - await showMsg(); - } catch (e) { - $.logErr(e) - } -} - -function showMsg() { - return new Promise(resolve => { - if ($.beans) { - message += `本次运行获得${$.beans}京豆` - $.msg($.name, '', `京东账号${$.index}${$.nickName}\n${message}`); - } - resolve() - }) -} - -function getInfo(url = 'https://anmp.jd.com/babelDiy/Zeus/3DSHPs2xC66RgcCEB8YVLsudqfh5/index.html?wxAppName=jd') { - console.log(`url:${url}`) - return new Promise(resolve => { - $.get({ - url, - headers: { - Cookie: cookie - } - }, (err, resp, data) => { - try { - $.info = JSON.parse(data.match(/var snsConfig = (.*)/)[1]) - $.prize = JSON.parse($.info.prize) - resolve() - } catch (e) { - console.log(e) - } - }) - }) -} - -function getUserInfo() { - return new Promise(resolve => { - $.get(taskUrl('query'), async (err, resp, data) => { - try { - if (err) { - console.log(`${err},${jsonParse(resp.body)['message']}`) - console.log(`${$.name} API请求失败,请检查网路重试`) - } else { - $.userInfo = JSON.parse(data.match(/query\((.*)\n/)[1]).data - // console.log(`您的好友助力码为${$.userInfo.shareid}`) - console.log(`当前幸运值:${$.userInfo.bless}`) - for (let task of $.info.config.tasks) { - if (!$.userInfo.complete_task_list.includes(task['_id'])) { - console.log(`去做任务${task['_id']}`) - await doTask(task['_id']) - await $.wait(500) - } - } - } - } catch (e) { - $.logErr(e, resp) - } finally { - resolve(data); - } - }) - }) -} - -function doTask(taskId) { - let body = `task_bless=10&taskid=${taskId}` - return new Promise(resolve => { - $.get(taskUrl('completeTask', body), async (err, resp, data) => { - try { - if (err) { - console.log(`${err},${jsonParse(resp.body)['message']}`) - console.log(`${$.name} API请求失败,请检查网路重试`) - } else { - data = JSON.parse(data.match(/query\((.*)\n/)[1]) - if (data.data.complete_task_list.includes(taskId)) { - console.log(`任务完成成功,当前幸运值${data.data.curbless}`) - $.userInfo.bless = data.data.curbless - } - } - } catch (e) { - $.logErr(e, resp) - } finally { - resolve(data); - } - }) - }) -} - -function draw() { - return new Promise(resolve => { - $.get(taskUrl('draw'), async (err, resp, data) => { - try { - if (err) { - console.log(`${err},${jsonParse(resp.body)['message']}`) - console.log(`${$.name} API请求失败,请检查网路重试`) - } else { - data = JSON.parse(data.match(/query\((.*)\n/)[1]) - if (data.data && data.data.drawflag) { - if ($.prize.filter(vo => vo.prizeLevel === data.data.level).length > 0) { - console.log(`获得${$.prize.filter(vo => vo.prizeLevel === data.data.level)[0].prizename}`) - $.beans += $.prize.filter(vo => vo.prizeLevel === data.data.level)[0].beansPerNum - } - } - } - } catch (e) { - $.logErr(e, resp) - } finally { - resolve(data); - } - }) - }) -} - -function taskUrl(function_id, body = '') { - body = `activeid=${$.info.activeId}&token=${$.info.actToken}&sceneval=2&shareid=&_=${new Date().getTime()}&callback=query&${body}` - return { - url: `https://wq.jd.com/activet2/piggybank/${function_id}?${body}`, - headers: { - 'Host': 'wq.jd.com', - 'Accept': 'application/json', - 'Accept-Language': 'zh-cn', - 'Content-Type': 'application/json;charset=utf-8', - 'Origin': 'wq.jd.com', - "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), - 'Referer': `https://anmp.jd.com/babelDiy/Zeus/xKACpgVjVJM7zPKbd5AGCij5yV9/index.html?wxAppName=jd`, - 'Cookie': cookie - } - } -} - -function TotalBean() { - return new Promise(async resolve => { - const options = { - url: "https://me-api.jd.com/user_new/info/GetJDUserInfoUnion", - headers: { - Host: "me-api.jd.com", - Accept: "*/*", - Connection: "keep-alive", - Cookie: cookie, - "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), - "Accept-Language": "zh-cn", - "Referer": "https://home.m.jd.com/myJd/newhome.action?sceneval=2&ufc=&", - "Accept-Encoding": "gzip, deflate, br" - } - } - $.get(options, (err, resp, data) => { - try { - if (err) { - $.logErr(err) - } else { - if (data) { - data = JSON.parse(data); - if (data['retcode'] === "1001") { - $.isLogin = false; //cookie过期 - return; - } - if (data['retcode'] === "0" && data.data && data.data.hasOwnProperty("userInfo")) { - $.nickName = data.data.userInfo.baseInfo.nickname; - } - } else { - console.log('京东服务器返回空数据'); - } - } - } catch (e) { - $.logErr(e) - } finally { - resolve(); - } - }) - }) -} -function safeGet(data) { - try { - if (typeof JSON.parse(data) == "object") { - return true; - } - } catch (e) { - console.log(e); - console.log(`京东服务器访问数据为空,请检查自身设备网络情况`); - return false; - } -} - -function jsonParse(str) { - if (typeof str == "string") { - try { - return JSON.parse(str); - } catch (e) { - console.log(e); - $.msg($.name, '', '不要在BoxJS手动复制粘贴修改cookie') - return []; - } - } -} -// prettier-ignore -function Env(t,e){class s{constructor(t){this.env=t}send(t,e="GET"){t="string"==typeof t?{url:t}:t;let s=this.get;return"POST"===e&&(s=this.post),new Promise((e,i)=>{s.call(this,t,(t,s,r)=>{t?i(t):e(s)})})}get(t){return this.send.call(this.env,t)}post(t){return this.send.call(this.env,t,"POST")}}return new class{constructor(t,e){this.name=t,this.http=new s(this),this.data=null,this.dataFile="box.dat",this.logs=[],this.isMute=!1,this.isNeedRewrite=!1,this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,e),this.log("",`\ud83d\udd14${this.name}, \u5f00\u59cb!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}toObj(t,e=null){try{return JSON.parse(t)}catch{return e}}toStr(t,e=null){try{return JSON.stringify(t)}catch{return e}}getjson(t,e){let s=e;const i=this.getdata(t);if(i)try{s=JSON.parse(this.getdata(t))}catch{}return s}setjson(t,e){try{return this.setdata(JSON.stringify(t),e)}catch{return!1}}getScript(t){return new Promise(e=>{this.get({url:t},(t,s,i)=>e(i))})}runScript(t,e){return new Promise(s=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let r=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");r=r?1*r:20,r=e&&e.timeout?e.timeout:r;const[o,h]=i.split("@"),a={url:`http://${h}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:r},headers:{"X-Key":o,Accept:"*/*"}};this.post(a,(t,e,i)=>s(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e);if(!s&&!i)return{};{const i=s?t:e;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e),r=JSON.stringify(this.data);s?this.fs.writeFileSync(t,r):i?this.fs.writeFileSync(e,r):this.fs.writeFileSync(t,r)}}lodash_get(t,e,s){const i=e.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(const t of i)if(r=Object(r)[t],void 0===r)return s;return r}lodash_set(t,e,s){return Object(t)!==t?t:(Array.isArray(e)||(e=e.toString().match(/[^.[\]]+/g)||[]),e.slice(0,-1).reduce((t,s,i)=>Object(t[s])===t[s]?t[s]:t[s]=Math.abs(e[i+1])>>0==+e[i+1]?[]:{},t)[e[e.length-1]]=s,t)}getdata(t){let e=this.getval(t);if(/^@/.test(t)){const[,s,i]=/^@(.*?)\.(.*?)$/.exec(t),r=s?this.getval(s):"";if(r)try{const t=JSON.parse(r);e=t?this.lodash_get(t,i,""):e}catch(t){e=""}}return e}setdata(t,e){let s=!1;if(/^@/.test(e)){const[,i,r]=/^@(.*?)\.(.*?)$/.exec(e),o=this.getval(i),h=i?"null"===o?null:o||"{}":"{}";try{const e=JSON.parse(h);this.lodash_set(e,r,t),s=this.setval(JSON.stringify(e),i)}catch(e){const o={};this.lodash_set(o,r,t),s=this.setval(JSON.stringify(o),i)}}else s=this.setval(t,e);return s}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,e){return this.isSurge()||this.isLoon()?$persistentStore.write(t,e):this.isQuanX()?$prefs.setValueForKey(t,e):this.isNode()?(this.data=this.loaddata(),this.data[e]=t,this.writedata(),!0):this.data&&this.data[e]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,e=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?(this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.get(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)})):this.isQuanX()?(this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t))):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,e)=>{try{if(t.headers["set-cookie"]){const s=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();this.ckjar.setCookieSync(s,null),e.cookieJar=this.ckjar}}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)}))}post(t,e=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),t.headers&&delete t.headers["Content-Length"],this.isSurge()||this.isLoon())this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.post(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)});else if(this.isQuanX())t.method="POST",this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t));else if(this.isNode()){this.initGotEnv(t);const{url:s,...i}=t;this.got.post(s,i).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)})}}time(t){let e={"M+":(new Date).getMonth()+1,"d+":(new Date).getDate(),"H+":(new Date).getHours(),"m+":(new Date).getMinutes(),"s+":(new Date).getSeconds(),"q+":Math.floor(((new Date).getMonth()+3)/3),S:(new Date).getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,((new Date).getFullYear()+"").substr(4-RegExp.$1.length)));for(let s in e)new RegExp("("+s+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?e[s]:("00"+e[s]).substr((""+e[s]).length)));return t}msg(e=t,s="",i="",r){const o=t=>{if(!t)return t;if("string"==typeof t)return this.isLoon()?t:this.isQuanX()?{"open-url":t}:this.isSurge()?{url:t}:void 0;if("object"==typeof t){if(this.isLoon()){let e=t.openUrl||t.url||t["open-url"],s=t.mediaUrl||t["media-url"];return{openUrl:e,mediaUrl:s}}if(this.isQuanX()){let e=t["open-url"]||t.url||t.openUrl,s=t["media-url"]||t.mediaUrl;return{"open-url":e,"media-url":s}}if(this.isSurge()){let e=t.url||t.openUrl||t["open-url"];return{url:e}}}};this.isMute||(this.isSurge()||this.isLoon()?$notification.post(e,s,i,o(r)):this.isQuanX()&&$notify(e,s,i,o(r)));let h=["","==============\ud83d\udce3\u7cfb\u7edf\u901a\u77e5\ud83d\udce3=============="];h.push(e),s&&h.push(s),i&&h.push(i),console.log(h.join("\n")),this.logs=this.logs.concat(h)}log(...t){t.length>0&&(this.logs=[...this.logs,...t]),console.log(t.join(this.logSeparator))}logErr(t,e){const s=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();s?this.log("",`\u2757\ufe0f${this.name}, \u9519\u8bef!`,t.stack):this.log("",`\u2757\ufe0f${this.name}, \u9519\u8bef!`,t)}wait(t){return new Promise(e=>setTimeout(e,t))}done(t={}){const e=(new Date).getTime(),s=(e-this.startTime)/1e3;this.log("",`\ud83d\udd14${this.name}, \u7ed3\u675f! \ud83d\udd5b ${s} \u79d2`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,e)} diff --git a/backUp/jd_ttpt.js b/backUp/jd_ttpt.js index b6ad5fc9..9868db48 100644 --- a/backUp/jd_ttpt.js +++ b/backUp/jd_ttpt.js @@ -1,6 +1,5 @@ /* * -Author:zero205 Data:2021-09-29 GitHub:https://github.com/zero205/JD_tencent_scf/tree/main @@ -49,7 +48,7 @@ if ($.isNode()) { $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', { "open-url": "https://bean.m.jd.com/bean/signIndex.action" }); return; } - console.log(`\nAuthor:zero205\n活动入口:京东金融APP->签到->天天拼图\n`); + // console.log(`\nAuthor:zero205\n活动入口:京东金融APP->签到->天天拼图\n`); for (let i = 0; i < cookiesArr.length; i++) { if (cookiesArr[i]) { cookie = cookiesArr[i]; diff --git a/backUp/jd_xiaolongfan.js b/backUp/jd_xiaolongfan.js new file mode 100644 index 00000000..fa0de5a5 --- /dev/null +++ b/backUp/jd_xiaolongfan.js @@ -0,0 +1,30 @@ +/** + 一次性活动。概率蚊子腿豆子 + 需要入会晓龙,差不多都入会过了。。 + cron 23 2 1-28 2 * https://raw.githubusercontent.com/star261/jd/main/scripts/jd_xiaolongfan.js + 入口:https://lzdz-isv.isvjcloud.com/dingzhi/bd/common/activity/5017722?activityId=90222021101 + */ + const $ = new Env('翻卡对对碰'); + const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; + let cookiesArr = []; + if ($.isNode()) { + Object.keys(jdCookieNode).forEach((item) => { + cookiesArr.push(jdCookieNode[item]) + }) + if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => { + }; + } else { + cookiesArr = [ + $.getdata("CookieJD"), + $.getdata("CookieJD2"), + ...$.toObj($.getdata("CookiesJD") || "[]").map((item) => item.cookie)].filter((item) => !!item); + } + !function (t, r) { "object" == typeof exports ? module.exports = exports = r() : "function" == typeof define && define.amd ? define([], r) : t.CryptoJS = r() }(this, function () { + var t = t || function (t, r) { var e = Object.create || function () { function t() { } return function (r) { var e; return t.prototype = r, e = new t, t.prototype = null, e } }(), i = {}, n = i.lib = {}, o = n.Base = function () { return { extend: function (t) { var r = e(this); return t && r.mixIn(t), r.hasOwnProperty("init") && this.init !== r.init || (r.init = function () { r.$super.init.apply(this, arguments) }), r.init.prototype = r, r.$super = this, r }, create: function () { var t = this.extend(); return t.init.apply(t, arguments), t }, init: function () { }, mixIn: function (t) { for (var r in t) t.hasOwnProperty(r) && (this[r] = t[r]); t.hasOwnProperty("toString") && (this.toString = t.toString) }, clone: function () { return this.init.prototype.extend(this) } } }(), s = n.WordArray = o.extend({ init: function (t, e) { t = this.words = t || [], e != r ? this.sigBytes = e : this.sigBytes = 4 * t.length }, toString: function (t) { return (t || c).stringify(this) }, concat: function (t) { var r = this.words, e = t.words, i = this.sigBytes, n = t.sigBytes; if (this.clamp(), i % 4) for (var o = 0; o < n; o++) { var s = e[o >>> 2] >>> 24 - o % 4 * 8 & 255; r[i + o >>> 2] |= s << 24 - (i + o) % 4 * 8 } else for (var o = 0; o < n; o += 4)r[i + o >>> 2] = e[o >>> 2]; return this.sigBytes += n, this }, clamp: function () { var r = this.words, e = this.sigBytes; r[e >>> 2] &= 4294967295 << 32 - e % 4 * 8, r.length = t.ceil(e / 4) }, clone: function () { var t = o.clone.call(this); return t.words = this.words.slice(0), t }, random: function (r) { for (var e, i = [], n = function (r) { var r = r, e = 987654321, i = 4294967295; return function () { e = 36969 * (65535 & e) + (e >> 16) & i, r = 18e3 * (65535 & r) + (r >> 16) & i; var n = (e << 16) + r & i; return n /= 4294967296, n += .5, n * (t.random() > .5 ? 1 : -1) } }, o = 0; o < r; o += 4) { var a = n(4294967296 * (e || t.random())); e = 987654071 * a(), i.push(4294967296 * a() | 0) } return new s.init(i, r) } }), a = i.enc = {}, c = a.Hex = { stringify: function (t) { for (var r = t.words, e = t.sigBytes, i = [], n = 0; n < e; n++) { var o = r[n >>> 2] >>> 24 - n % 4 * 8 & 255; i.push((o >>> 4).toString(16)), i.push((15 & o).toString(16)) } return i.join("") }, parse: function (t) { for (var r = t.length, e = [], i = 0; i < r; i += 2)e[i >>> 3] |= parseInt(t.substr(i, 2), 16) << 24 - i % 8 * 4; return new s.init(e, r / 2) } }, h = a.Latin1 = { stringify: function (t) { for (var r = t.words, e = t.sigBytes, i = [], n = 0; n < e; n++) { var o = r[n >>> 2] >>> 24 - n % 4 * 8 & 255; i.push(String.fromCharCode(o)) } return i.join("") }, parse: function (t) { for (var r = t.length, e = [], i = 0; i < r; i++)e[i >>> 2] |= (255 & t.charCodeAt(i)) << 24 - i % 4 * 8; return new s.init(e, r) } }, l = a.Utf8 = { stringify: function (t) { try { return decodeURIComponent(escape(h.stringify(t))) } catch (t) { throw new Error("Malformed UTF-8 data") } }, parse: function (t) { return h.parse(unescape(encodeURIComponent(t))) } }, f = n.BufferedBlockAlgorithm = o.extend({ reset: function () { this._data = new s.init, this._nDataBytes = 0 }, _append: function (t) { "string" == typeof t && (t = l.parse(t)), this._data.concat(t), this._nDataBytes += t.sigBytes }, _process: function (r) { var e = this._data, i = e.words, n = e.sigBytes, o = this.blockSize, a = 4 * o, c = n / a; c = r ? t.ceil(c) : t.max((0 | c) - this._minBufferSize, 0); var h = c * o, l = t.min(4 * h, n); if (h) { for (var f = 0; f < h; f += o)this._doProcessBlock(i, f); var u = i.splice(0, h); e.sigBytes -= l } return new s.init(u, l) }, clone: function () { var t = o.clone.call(this); return t._data = this._data.clone(), t }, _minBufferSize: 0 }), u = (n.Hasher = f.extend({ cfg: o.extend(), init: function (t) { this.cfg = this.cfg.extend(t), this.reset() }, reset: function () { f.reset.call(this), this._doReset() }, update: function (t) { return this._append(t), this._process(), this }, finalize: function (t) { t && this._append(t); var r = this._doFinalize(); return r }, blockSize: 16, _createHelper: function (t) { return function (r, e) { return new t.init(e).finalize(r) } }, _createHmacHelper: function (t) { return function (r, e) { return new u.HMAC.init(t, e).finalize(r) } } }), i.algo = {}); return i }(Math); return function () { function r(t, r, e) { for (var i = [], o = 0, s = 0; s < r; s++)if (s % 4) { var a = e[t.charCodeAt(s - 1)] << s % 4 * 2, c = e[t.charCodeAt(s)] >>> 6 - s % 4 * 2; i[o >>> 2] |= (a | c) << 24 - o % 4 * 8, o++ } return n.create(i, o) } var e = t, i = e.lib, n = i.WordArray, o = e.enc; o.Base64 = { stringify: function (t) { var r = t.words, e = t.sigBytes, i = this._map; t.clamp(); for (var n = [], o = 0; o < e; o += 3)for (var s = r[o >>> 2] >>> 24 - o % 4 * 8 & 255, a = r[o + 1 >>> 2] >>> 24 - (o + 1) % 4 * 8 & 255, c = r[o + 2 >>> 2] >>> 24 - (o + 2) % 4 * 8 & 255, h = s << 16 | a << 8 | c, l = 0; l < 4 && o + .75 * l < e; l++)n.push(i.charAt(h >>> 6 * (3 - l) & 63)); var f = i.charAt(64); if (f) for (; n.length % 4;)n.push(f); return n.join("") }, parse: function (t) { var e = t.length, i = this._map, n = this._reverseMap; if (!n) { n = this._reverseMap = []; for (var o = 0; o < i.length; o++)n[i.charCodeAt(o)] = o } var s = i.charAt(64); if (s) { var a = t.indexOf(s); a !== -1 && (e = a) } return r(t, e, n) }, _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" } }(), function (r) { function e(t, r, e, i, n, o, s) { var a = t + (r & e | ~r & i) + n + s; return (a << o | a >>> 32 - o) + r } function i(t, r, e, i, n, o, s) { var a = t + (r & i | e & ~i) + n + s; return (a << o | a >>> 32 - o) + r } function n(t, r, e, i, n, o, s) { var a = t + (r ^ e ^ i) + n + s; return (a << o | a >>> 32 - o) + r } function o(t, r, e, i, n, o, s) { var a = t + (e ^ (r | ~i)) + n + s; return (a << o | a >>> 32 - o) + r } var s = t, a = s.lib, c = a.WordArray, h = a.Hasher, l = s.algo, f = []; !function () { for (var t = 0; t < 64; t++)f[t] = 4294967296 * r.abs(r.sin(t + 1)) | 0 }(); var u = l.MD5 = h.extend({ _doReset: function () { this._hash = new c.init([1732584193, 4023233417, 2562383102, 271733878]) }, _doProcessBlock: function (t, r) { for (var s = 0; s < 16; s++) { var a = r + s, c = t[a]; t[a] = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8) } var h = this._hash.words, l = t[r + 0], u = t[r + 1], d = t[r + 2], v = t[r + 3], p = t[r + 4], _ = t[r + 5], y = t[r + 6], g = t[r + 7], B = t[r + 8], w = t[r + 9], k = t[r + 10], S = t[r + 11], m = t[r + 12], x = t[r + 13], b = t[r + 14], H = t[r + 15], z = h[0], A = h[1], C = h[2], D = h[3]; z = e(z, A, C, D, l, 7, f[0]), D = e(D, z, A, C, u, 12, f[1]), C = e(C, D, z, A, d, 17, f[2]), A = e(A, C, D, z, v, 22, f[3]), z = e(z, A, C, D, p, 7, f[4]), D = e(D, z, A, C, _, 12, f[5]), C = e(C, D, z, A, y, 17, f[6]), A = e(A, C, D, z, g, 22, f[7]), z = e(z, A, C, D, B, 7, f[8]), D = e(D, z, A, C, w, 12, f[9]), C = e(C, D, z, A, k, 17, f[10]), A = e(A, C, D, z, S, 22, f[11]), z = e(z, A, C, D, m, 7, f[12]), D = e(D, z, A, C, x, 12, f[13]), C = e(C, D, z, A, b, 17, f[14]), A = e(A, C, D, z, H, 22, f[15]), z = i(z, A, C, D, u, 5, f[16]), D = i(D, z, A, C, y, 9, f[17]), C = i(C, D, z, A, S, 14, f[18]), A = i(A, C, D, z, l, 20, f[19]), z = i(z, A, C, D, _, 5, f[20]), D = i(D, z, A, C, k, 9, f[21]), C = i(C, D, z, A, H, 14, f[22]), A = i(A, C, D, z, p, 20, f[23]), z = i(z, A, C, D, w, 5, f[24]), D = i(D, z, A, C, b, 9, f[25]), C = i(C, D, z, A, v, 14, f[26]), A = i(A, C, D, z, B, 20, f[27]), z = i(z, A, C, D, x, 5, f[28]), D = i(D, z, A, C, d, 9, f[29]), C = i(C, D, z, A, g, 14, f[30]), A = i(A, C, D, z, m, 20, f[31]), z = n(z, A, C, D, _, 4, f[32]), D = n(D, z, A, C, B, 11, f[33]), C = n(C, D, z, A, S, 16, f[34]), A = n(A, C, D, z, b, 23, f[35]), z = n(z, A, C, D, u, 4, f[36]), D = n(D, z, A, C, p, 11, f[37]), C = n(C, D, z, A, g, 16, f[38]), A = n(A, C, D, z, k, 23, f[39]), z = n(z, A, C, D, x, 4, f[40]), D = n(D, z, A, C, l, 11, f[41]), C = n(C, D, z, A, v, 16, f[42]), A = n(A, C, D, z, y, 23, f[43]), z = n(z, A, C, D, w, 4, f[44]), D = n(D, z, A, C, m, 11, f[45]), C = n(C, D, z, A, H, 16, f[46]), A = n(A, C, D, z, d, 23, f[47]), z = o(z, A, C, D, l, 6, f[48]), D = o(D, z, A, C, g, 10, f[49]), C = o(C, D, z, A, b, 15, f[50]), A = o(A, C, D, z, _, 21, f[51]), z = o(z, A, C, D, m, 6, f[52]), D = o(D, z, A, C, v, 10, f[53]), C = o(C, D, z, A, k, 15, f[54]), A = o(A, C, D, z, u, 21, f[55]), z = o(z, A, C, D, B, 6, f[56]), D = o(D, z, A, C, H, 10, f[57]), C = o(C, D, z, A, y, 15, f[58]), A = o(A, C, D, z, x, 21, f[59]), z = o(z, A, C, D, p, 6, f[60]), D = o(D, z, A, C, S, 10, f[61]), C = o(C, D, z, A, d, 15, f[62]), A = o(A, C, D, z, w, 21, f[63]), h[0] = h[0] + z | 0, h[1] = h[1] + A | 0, h[2] = h[2] + C | 0, h[3] = h[3] + D | 0 }, _doFinalize: function () { var t = this._data, e = t.words, i = 8 * this._nDataBytes, n = 8 * t.sigBytes; e[n >>> 5] |= 128 << 24 - n % 32; var o = r.floor(i / 4294967296), s = i; e[(n + 64 >>> 9 << 4) + 15] = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), e[(n + 64 >>> 9 << 4) + 14] = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), t.sigBytes = 4 * (e.length + 1), this._process(); for (var a = this._hash, c = a.words, h = 0; h < 4; h++) { var l = c[h]; c[h] = 16711935 & (l << 8 | l >>> 24) | 4278255360 & (l << 24 | l >>> 8) } return a }, clone: function () { var t = h.clone.call(this); return t._hash = this._hash.clone(), t } }); s.MD5 = h._createHelper(u), s.HmacMD5 = h._createHmacHelper(u) }(Math), function () { var r = t, e = r.lib, i = e.WordArray, n = e.Hasher, o = r.algo, s = [], a = o.SHA1 = n.extend({ _doReset: function () { this._hash = new i.init([1732584193, 4023233417, 2562383102, 271733878, 3285377520]) }, _doProcessBlock: function (t, r) { for (var e = this._hash.words, i = e[0], n = e[1], o = e[2], a = e[3], c = e[4], h = 0; h < 80; h++) { if (h < 16) s[h] = 0 | t[r + h]; else { var l = s[h - 3] ^ s[h - 8] ^ s[h - 14] ^ s[h - 16]; s[h] = l << 1 | l >>> 31 } var f = (i << 5 | i >>> 27) + c + s[h]; f += h < 20 ? (n & o | ~n & a) + 1518500249 : h < 40 ? (n ^ o ^ a) + 1859775393 : h < 60 ? (n & o | n & a | o & a) - 1894007588 : (n ^ o ^ a) - 899497514, c = a, a = o, o = n << 30 | n >>> 2, n = i, i = f } e[0] = e[0] + i | 0, e[1] = e[1] + n | 0, e[2] = e[2] + o | 0, e[3] = e[3] + a | 0, e[4] = e[4] + c | 0 }, _doFinalize: function () { var t = this._data, r = t.words, e = 8 * this._nDataBytes, i = 8 * t.sigBytes; return r[i >>> 5] |= 128 << 24 - i % 32, r[(i + 64 >>> 9 << 4) + 14] = Math.floor(e / 4294967296), r[(i + 64 >>> 9 << 4) + 15] = e, t.sigBytes = 4 * r.length, this._process(), this._hash }, clone: function () { var t = n.clone.call(this); return t._hash = this._hash.clone(), t } }); r.SHA1 = n._createHelper(a), r.HmacSHA1 = n._createHmacHelper(a) }(), function (r) { var e = t, i = e.lib, n = i.WordArray, o = i.Hasher, s = e.algo, a = [], c = []; !function () { function t(t) { for (var e = r.sqrt(t), i = 2; i <= e; i++)if (!(t % i)) return !1; return !0 } function e(t) { return 4294967296 * (t - (0 | t)) | 0 } for (var i = 2, n = 0; n < 64;)t(i) && (n < 8 && (a[n] = e(r.pow(i, .5))), c[n] = e(r.pow(i, 1 / 3)), n++), i++ }(); var h = [], l = s.SHA256 = o.extend({ _doReset: function () { this._hash = new n.init(a.slice(0)) }, _doProcessBlock: function (t, r) { for (var e = this._hash.words, i = e[0], n = e[1], o = e[2], s = e[3], a = e[4], l = e[5], f = e[6], u = e[7], d = 0; d < 64; d++) { if (d < 16) h[d] = 0 | t[r + d]; else { var v = h[d - 15], p = (v << 25 | v >>> 7) ^ (v << 14 | v >>> 18) ^ v >>> 3, _ = h[d - 2], y = (_ << 15 | _ >>> 17) ^ (_ << 13 | _ >>> 19) ^ _ >>> 10; h[d] = p + h[d - 7] + y + h[d - 16] } var g = a & l ^ ~a & f, B = i & n ^ i & o ^ n & o, w = (i << 30 | i >>> 2) ^ (i << 19 | i >>> 13) ^ (i << 10 | i >>> 22), k = (a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25), S = u + k + g + c[d] + h[d], m = w + B; u = f, f = l, l = a, a = s + S | 0, s = o, o = n, n = i, i = S + m | 0 } e[0] = e[0] + i | 0, e[1] = e[1] + n | 0, e[2] = e[2] + o | 0, e[3] = e[3] + s | 0, e[4] = e[4] + a | 0, e[5] = e[5] + l | 0, e[6] = e[6] + f | 0, e[7] = e[7] + u | 0 }, _doFinalize: function () { var t = this._data, e = t.words, i = 8 * this._nDataBytes, n = 8 * t.sigBytes; return e[n >>> 5] |= 128 << 24 - n % 32, e[(n + 64 >>> 9 << 4) + 14] = r.floor(i / 4294967296), e[(n + 64 >>> 9 << 4) + 15] = i, t.sigBytes = 4 * e.length, this._process(), this._hash }, clone: function () { var t = o.clone.call(this); return t._hash = this._hash.clone(), t } }); e.SHA256 = o._createHelper(l), e.HmacSHA256 = o._createHmacHelper(l) }(Math), function () { function r(t) { return t << 8 & 4278255360 | t >>> 8 & 16711935 } var e = t, i = e.lib, n = i.WordArray, o = e.enc; o.Utf16 = o.Utf16BE = { stringify: function (t) { for (var r = t.words, e = t.sigBytes, i = [], n = 0; n < e; n += 2) { var o = r[n >>> 2] >>> 16 - n % 4 * 8 & 65535; i.push(String.fromCharCode(o)) } return i.join("") }, parse: function (t) { for (var r = t.length, e = [], i = 0; i < r; i++)e[i >>> 1] |= t.charCodeAt(i) << 16 - i % 2 * 16; return n.create(e, 2 * r) } }; o.Utf16LE = { stringify: function (t) { for (var e = t.words, i = t.sigBytes, n = [], o = 0; o < i; o += 2) { var s = r(e[o >>> 2] >>> 16 - o % 4 * 8 & 65535); n.push(String.fromCharCode(s)) } return n.join("") }, parse: function (t) { for (var e = t.length, i = [], o = 0; o < e; o++)i[o >>> 1] |= r(t.charCodeAt(o) << 16 - o % 2 * 16); return n.create(i, 2 * e) } } }(), function () { if ("function" == typeof ArrayBuffer) { var r = t, e = r.lib, i = e.WordArray, n = i.init, o = i.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, e = [], i = 0; i < r; i++)e[i >>> 2] |= t[i] << 24 - i % 4 * 8; n.call(this, e, r) } else n.apply(this, arguments) }; o.prototype = i } }(), function (r) { function e(t, r, e) { return t ^ r ^ e } function i(t, r, e) { return t & r | ~t & e } function n(t, r, e) { return (t | ~r) ^ e } function o(t, r, e) { return t & e | r & ~e } function s(t, r, e) { return t ^ (r | ~e) } function a(t, r) { return t << r | t >>> 32 - r } var c = t, h = c.lib, l = h.WordArray, f = h.Hasher, u = c.algo, d = l.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]), v = l.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]), p = l.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]), _ = l.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]), y = l.create([0, 1518500249, 1859775393, 2400959708, 2840853838]), g = l.create([1352829926, 1548603684, 1836072691, 2053994217, 0]), B = u.RIPEMD160 = f.extend({ _doReset: function () { this._hash = l.create([1732584193, 4023233417, 2562383102, 271733878, 3285377520]) }, _doProcessBlock: function (t, r) { for (var c = 0; c < 16; c++) { var h = r + c, l = t[h]; t[h] = 16711935 & (l << 8 | l >>> 24) | 4278255360 & (l << 24 | l >>> 8) } var f, u, B, w, k, S, m, x, b, H, z = this._hash.words, A = y.words, C = g.words, D = d.words, R = v.words, E = p.words, M = _.words; S = f = z[0], m = u = z[1], x = B = z[2], b = w = z[3], H = k = z[4]; for (var F, c = 0; c < 80; c += 1)F = f + t[r + D[c]] | 0, F += c < 16 ? e(u, B, w) + A[0] : c < 32 ? i(u, B, w) + A[1] : c < 48 ? n(u, B, w) + A[2] : c < 64 ? o(u, B, w) + A[3] : s(u, B, w) + A[4], F |= 0, F = a(F, E[c]), F = F + k | 0, f = k, k = w, w = a(B, 10), B = u, u = F, F = S + t[r + R[c]] | 0, F += c < 16 ? s(m, x, b) + C[0] : c < 32 ? o(m, x, b) + C[1] : c < 48 ? n(m, x, b) + C[2] : c < 64 ? i(m, x, b) + C[3] : e(m, x, b) + C[4], F |= 0, F = a(F, M[c]), F = F + H | 0, S = H, H = b, b = a(x, 10), x = m, m = F; F = z[1] + B + b | 0, z[1] = z[2] + w + H | 0, z[2] = z[3] + k + S | 0, z[3] = z[4] + f + m | 0, z[4] = z[0] + u + x | 0, z[0] = F }, _doFinalize: function () { var t = this._data, r = t.words, e = 8 * this._nDataBytes, i = 8 * t.sigBytes; r[i >>> 5] |= 128 << 24 - i % 32, r[(i + 64 >>> 9 << 4) + 14] = 16711935 & (e << 8 | e >>> 24) | 4278255360 & (e << 24 | e >>> 8), t.sigBytes = 4 * (r.length + 1), this._process(); for (var n = this._hash, o = n.words, s = 0; s < 5; s++) { var a = o[s]; o[s] = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8) } return n }, clone: function () { var t = f.clone.call(this); return t._hash = this._hash.clone(), t } }); c.RIPEMD160 = f._createHelper(B), c.HmacRIPEMD160 = f._createHmacHelper(B) }(Math), function () { var r = t, e = r.lib, i = e.Base, n = r.enc, o = n.Utf8, s = r.algo; s.HMAC = i.extend({ init: function (t, r) { t = this._hasher = new t.init, "string" == typeof r && (r = o.parse(r)); var e = t.blockSize, i = 4 * e; r.sigBytes > i && (r = t.finalize(r)), r.clamp(); for (var n = this._oKey = r.clone(), s = this._iKey = r.clone(), a = n.words, c = s.words, h = 0; h < e; h++)a[h] ^= 1549556828, c[h] ^= 909522486; n.sigBytes = s.sigBytes = i, 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 r = this._hasher, e = r.finalize(t); r.reset(); var i = r.finalize(this._oKey.clone().concat(e)); return i } }) }(), function () { var r = t, e = r.lib, i = e.Base, n = e.WordArray, o = r.algo, s = o.SHA1, a = o.HMAC, c = o.PBKDF2 = i.extend({ cfg: i.extend({ keySize: 4, hasher: s, iterations: 1 }), init: function (t) { this.cfg = this.cfg.extend(t) }, compute: function (t, r) { for (var e = this.cfg, i = a.create(e.hasher, t), o = n.create(), s = n.create([1]), c = o.words, h = s.words, l = e.keySize, f = e.iterations; c.length < l;) { var u = i.update(r).finalize(s); i.reset(); for (var d = u.words, v = d.length, p = u, _ = 1; _ < f; _++) { p = i.finalize(p), i.reset(); for (var y = p.words, g = 0; g < v; g++)d[g] ^= y[g] } o.concat(u), h[0]++ } return o.sigBytes = 4 * l, o } }); r.PBKDF2 = function (t, r, e) { return c.create(e).compute(t, r) } }(), function () { var r = t, e = r.lib, i = e.Base, n = e.WordArray, o = r.algo, s = o.MD5, a = o.EvpKDF = i.extend({ cfg: i.extend({ keySize: 4, hasher: s, iterations: 1 }), init: function (t) { this.cfg = this.cfg.extend(t) }, compute: function (t, r) { for (var e = this.cfg, i = e.hasher.create(), o = n.create(), s = o.words, a = e.keySize, c = e.iterations; s.length < a;) { h && i.update(h); var h = i.update(t).finalize(r); i.reset(); for (var l = 1; l < c; l++)h = i.finalize(h), i.reset(); o.concat(h) } return o.sigBytes = 4 * a, o } }); r.EvpKDF = function (t, r, e) { return a.create(e).compute(t, r) } }(), function () { var r = t, e = r.lib, i = e.WordArray, n = r.algo, o = n.SHA256, s = n.SHA224 = o.extend({ _doReset: function () { this._hash = new i.init([3238371032, 914150663, 812702999, 4144912697, 4290775857, 1750603025, 1694076839, 3204075428]) }, _doFinalize: function () { var t = o._doFinalize.call(this); return t.sigBytes -= 4, t } }); r.SHA224 = o._createHelper(s), r.HmacSHA224 = o._createHmacHelper(s) }(), function (r) { var e = t, i = e.lib, n = i.Base, o = i.WordArray, s = e.x64 = {}; s.Word = n.extend({ init: function (t, r) { this.high = t, this.low = r } }), s.WordArray = n.extend({ init: function (t, e) { t = this.words = t || [], e != r ? this.sigBytes = e : this.sigBytes = 8 * t.length }, toX32: function () { for (var t = this.words, r = t.length, e = [], i = 0; i < r; i++) { var n = t[i]; e.push(n.high), e.push(n.low) } return o.create(e, this.sigBytes) }, clone: function () { for (var t = n.clone.call(this), r = t.words = this.words.slice(0), e = r.length, i = 0; i < e; i++)r[i] = r[i].clone(); return t } }) }(), function (r) { var e = t, i = e.lib, n = i.WordArray, o = i.Hasher, s = e.x64, a = s.Word, c = e.algo, h = [], l = [], f = []; !function () { for (var t = 1, r = 0, e = 0; e < 24; e++) { h[t + 5 * r] = (e + 1) * (e + 2) / 2 % 64; var i = r % 5, n = (2 * t + 3 * r) % 5; t = i, r = n } for (var t = 0; t < 5; t++)for (var r = 0; r < 5; r++)l[t + 5 * r] = r + (2 * t + 3 * r) % 5 * 5; for (var o = 1, s = 0; s < 24; s++) { for (var c = 0, u = 0, d = 0; d < 7; d++) { if (1 & o) { var v = (1 << d) - 1; v < 32 ? u ^= 1 << v : c ^= 1 << v - 32 } 128 & o ? o = o << 1 ^ 113 : o <<= 1 } f[s] = a.create(c, u) } }(); var u = []; !function () { for (var t = 0; t < 25; t++)u[t] = a.create() }(); var d = c.SHA3 = o.extend({ cfg: o.cfg.extend({ outputLength: 512 }), _doReset: function () { for (var t = this._state = [], r = 0; r < 25; r++)t[r] = new a.init; this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32 }, _doProcessBlock: function (t, r) { for (var e = this._state, i = this.blockSize / 2, n = 0; n < i; n++) { var o = t[r + 2 * n], s = t[r + 2 * n + 1]; o = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), s = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8); var a = e[n]; a.high ^= s, a.low ^= o } for (var c = 0; c < 24; c++) { for (var d = 0; d < 5; d++) { for (var v = 0, p = 0, _ = 0; _ < 5; _++) { var a = e[d + 5 * _]; v ^= a.high, p ^= a.low } var y = u[d]; y.high = v, y.low = p } for (var d = 0; d < 5; d++)for (var g = u[(d + 4) % 5], B = u[(d + 1) % 5], w = B.high, k = B.low, v = g.high ^ (w << 1 | k >>> 31), p = g.low ^ (k << 1 | w >>> 31), _ = 0; _ < 5; _++) { var a = e[d + 5 * _]; a.high ^= v, a.low ^= p } for (var S = 1; S < 25; S++) { var a = e[S], m = a.high, x = a.low, b = h[S]; if (b < 32) var v = m << b | x >>> 32 - b, p = x << b | m >>> 32 - b; else var v = x << b - 32 | m >>> 64 - b, p = m << b - 32 | x >>> 64 - b; var H = u[l[S]]; H.high = v, H.low = p } var z = u[0], A = e[0]; z.high = A.high, z.low = A.low; for (var d = 0; d < 5; d++)for (var _ = 0; _ < 5; _++) { var S = d + 5 * _, a = e[S], C = u[S], D = u[(d + 1) % 5 + 5 * _], R = u[(d + 2) % 5 + 5 * _]; a.high = C.high ^ ~D.high & R.high, a.low = C.low ^ ~D.low & R.low } var a = e[0], E = f[c]; a.high ^= E.high, a.low ^= E.low } }, _doFinalize: function () { var t = this._data, e = t.words, i = (8 * this._nDataBytes, 8 * t.sigBytes), o = 32 * this.blockSize; e[i >>> 5] |= 1 << 24 - i % 32, e[(r.ceil((i + 1) / o) * o >>> 5) - 1] |= 128, t.sigBytes = 4 * e.length, this._process(); for (var s = this._state, a = this.cfg.outputLength / 8, c = a / 8, h = [], l = 0; l < c; l++) { var f = s[l], u = f.high, d = f.low; u = 16711935 & (u << 8 | u >>> 24) | 4278255360 & (u << 24 | u >>> 8), d = 16711935 & (d << 8 | d >>> 24) | 4278255360 & (d << 24 | d >>> 8), h.push(d), h.push(u) } return new n.init(h, a) }, clone: function () { for (var t = o.clone.call(this), r = t._state = this._state.slice(0), e = 0; e < 25; e++)r[e] = r[e].clone(); return t } }); e.SHA3 = o._createHelper(d), e.HmacSHA3 = o._createHmacHelper(d) }(Math), function () { function r() { return s.create.apply(s, arguments) } var e = t, i = e.lib, n = i.Hasher, o = e.x64, s = o.Word, a = o.WordArray, c = e.algo, h = [r(1116352408, 3609767458), r(1899447441, 602891725), r(3049323471, 3964484399), r(3921009573, 2173295548), r(961987163, 4081628472), r(1508970993, 3053834265), r(2453635748, 2937671579), r(2870763221, 3664609560), r(3624381080, 2734883394), r(310598401, 1164996542), r(607225278, 1323610764), r(1426881987, 3590304994), r(1925078388, 4068182383), r(2162078206, 991336113), r(2614888103, 633803317), r(3248222580, 3479774868), r(3835390401, 2666613458), r(4022224774, 944711139), r(264347078, 2341262773), r(604807628, 2007800933), r(770255983, 1495990901), r(1249150122, 1856431235), r(1555081692, 3175218132), r(1996064986, 2198950837), r(2554220882, 3999719339), r(2821834349, 766784016), r(2952996808, 2566594879), r(3210313671, 3203337956), r(3336571891, 1034457026), r(3584528711, 2466948901), r(113926993, 3758326383), r(338241895, 168717936), r(666307205, 1188179964), r(773529912, 1546045734), r(1294757372, 1522805485), r(1396182291, 2643833823), r(1695183700, 2343527390), r(1986661051, 1014477480), r(2177026350, 1206759142), r(2456956037, 344077627), r(2730485921, 1290863460), r(2820302411, 3158454273), r(3259730800, 3505952657), r(3345764771, 106217008), r(3516065817, 3606008344), r(3600352804, 1432725776), r(4094571909, 1467031594), r(275423344, 851169720), r(430227734, 3100823752), r(506948616, 1363258195), r(659060556, 3750685593), r(883997877, 3785050280), r(958139571, 3318307427), r(1322822218, 3812723403), r(1537002063, 2003034995), r(1747873779, 3602036899), r(1955562222, 1575990012), r(2024104815, 1125592928), r(2227730452, 2716904306), r(2361852424, 442776044), r(2428436474, 593698344), r(2756734187, 3733110249), r(3204031479, 2999351573), r(3329325298, 3815920427), r(3391569614, 3928383900), r(3515267271, 566280711), r(3940187606, 3454069534), r(4118630271, 4000239992), r(116418474, 1914138554), r(174292421, 2731055270), r(289380356, 3203993006), r(460393269, 320620315), r(685471733, 587496836), r(852142971, 1086792851), r(1017036298, 365543100), r(1126000580, 2618297676), r(1288033470, 3409855158), r(1501505948, 4234509866), r(1607167915, 987167468), r(1816402316, 1246189591)], l = []; !function () { for (var t = 0; t < 80; t++)l[t] = r() }(); var f = c.SHA512 = n.extend({ _doReset: function () { this._hash = new a.init([new s.init(1779033703, 4089235720), new s.init(3144134277, 2227873595), new s.init(1013904242, 4271175723), new s.init(2773480762, 1595750129), new s.init(1359893119, 2917565137), new s.init(2600822924, 725511199), new s.init(528734635, 4215389547), new s.init(1541459225, 327033209)]) }, _doProcessBlock: function (t, r) { for (var e = this._hash.words, i = e[0], n = e[1], o = e[2], s = e[3], a = e[4], c = e[5], f = e[6], u = e[7], d = i.high, v = i.low, p = n.high, _ = n.low, y = o.high, g = o.low, B = s.high, w = s.low, k = a.high, S = a.low, m = c.high, x = c.low, b = f.high, H = f.low, z = u.high, A = u.low, C = d, D = v, R = p, E = _, M = y, F = g, P = B, W = w, O = k, U = S, I = m, K = x, X = b, L = H, j = z, N = A, T = 0; T < 80; T++) { var Z = l[T]; if (T < 16) var q = Z.high = 0 | t[r + 2 * T], G = Z.low = 0 | t[r + 2 * T + 1]; else { var J = l[T - 15], $ = J.high, Q = J.low, V = ($ >>> 1 | Q << 31) ^ ($ >>> 8 | Q << 24) ^ $ >>> 7, Y = (Q >>> 1 | $ << 31) ^ (Q >>> 8 | $ << 24) ^ (Q >>> 7 | $ << 25), tt = l[T - 2], rt = tt.high, et = tt.low, it = (rt >>> 19 | et << 13) ^ (rt << 3 | et >>> 29) ^ rt >>> 6, nt = (et >>> 19 | rt << 13) ^ (et << 3 | rt >>> 29) ^ (et >>> 6 | rt << 26), ot = l[T - 7], st = ot.high, at = ot.low, ct = l[T - 16], ht = ct.high, lt = ct.low, G = Y + at, q = V + st + (G >>> 0 < Y >>> 0 ? 1 : 0), G = G + nt, q = q + it + (G >>> 0 < nt >>> 0 ? 1 : 0), G = G + lt, q = q + ht + (G >>> 0 < lt >>> 0 ? 1 : 0); Z.high = q, Z.low = G } var ft = O & I ^ ~O & X, ut = U & K ^ ~U & L, dt = C & R ^ C & M ^ R & M, vt = D & E ^ D & F ^ E & F, pt = (C >>> 28 | D << 4) ^ (C << 30 | D >>> 2) ^ (C << 25 | D >>> 7), _t = (D >>> 28 | C << 4) ^ (D << 30 | C >>> 2) ^ (D << 25 | C >>> 7), yt = (O >>> 14 | U << 18) ^ (O >>> 18 | U << 14) ^ (O << 23 | U >>> 9), gt = (U >>> 14 | O << 18) ^ (U >>> 18 | O << 14) ^ (U << 23 | O >>> 9), Bt = h[T], wt = Bt.high, kt = Bt.low, St = N + gt, mt = j + yt + (St >>> 0 < N >>> 0 ? 1 : 0), St = St + ut, mt = mt + ft + (St >>> 0 < ut >>> 0 ? 1 : 0), St = St + kt, mt = mt + wt + (St >>> 0 < kt >>> 0 ? 1 : 0), St = St + G, mt = mt + q + (St >>> 0 < G >>> 0 ? 1 : 0), xt = _t + vt, bt = pt + dt + (xt >>> 0 < _t >>> 0 ? 1 : 0); j = X, N = L, X = I, L = K, I = O, K = U, U = W + St | 0, O = P + mt + (U >>> 0 < W >>> 0 ? 1 : 0) | 0, P = M, W = F, M = R, F = E, R = C, E = D, D = St + xt | 0, C = mt + bt + (D >>> 0 < St >>> 0 ? 1 : 0) | 0 } v = i.low = v + D, i.high = d + C + (v >>> 0 < D >>> 0 ? 1 : 0), _ = n.low = _ + E, n.high = p + R + (_ >>> 0 < E >>> 0 ? 1 : 0), g = o.low = g + F, o.high = y + M + (g >>> 0 < F >>> 0 ? 1 : 0), w = s.low = w + W, s.high = B + P + (w >>> 0 < W >>> 0 ? 1 : 0), S = a.low = S + U, a.high = k + O + (S >>> 0 < U >>> 0 ? 1 : 0), x = c.low = x + K, c.high = m + I + (x >>> 0 < K >>> 0 ? 1 : 0), H = f.low = H + L, f.high = b + X + (H >>> 0 < L >>> 0 ? 1 : 0), A = u.low = A + N, u.high = z + j + (A >>> 0 < N >>> 0 ? 1 : 0) }, _doFinalize: function () { var t = this._data, r = t.words, e = 8 * this._nDataBytes, i = 8 * t.sigBytes; r[i >>> 5] |= 128 << 24 - i % 32, r[(i + 128 >>> 10 << 5) + 30] = Math.floor(e / 4294967296), r[(i + 128 >>> 10 << 5) + 31] = e, t.sigBytes = 4 * r.length, this._process(); var n = this._hash.toX32(); return n }, clone: function () { var t = n.clone.call(this); return t._hash = this._hash.clone(), t }, blockSize: 32 }); e.SHA512 = n._createHelper(f), e.HmacSHA512 = n._createHmacHelper(f) }(), function () { var r = t, e = r.x64, i = e.Word, n = e.WordArray, o = r.algo, s = o.SHA512, a = o.SHA384 = s.extend({ _doReset: function () { this._hash = new n.init([new i.init(3418070365, 3238371032), new i.init(1654270250, 914150663), new i.init(2438529370, 812702999), new i.init(355462360, 4144912697), new i.init(1731405415, 4290775857), new i.init(2394180231, 1750603025), new i.init(3675008525, 1694076839), new i.init(1203062813, 3204075428)]) }, _doFinalize: function () { var t = s._doFinalize.call(this); return t.sigBytes -= 16, t } }); r.SHA384 = s._createHelper(a), r.HmacSHA384 = s._createHmacHelper(a) }(), t.lib.Cipher || function (r) { var e = t, i = e.lib, n = i.Base, o = i.WordArray, s = i.BufferedBlockAlgorithm, a = e.enc, c = (a.Utf8, a.Base64), h = e.algo, l = h.EvpKDF, f = i.Cipher = s.extend({ cfg: n.extend(), createEncryptor: function (t, r) { return this.create(this._ENC_XFORM_MODE, t, r) }, createDecryptor: function (t, r) { return this.create(this._DEC_XFORM_MODE, t, r) }, init: function (t, r, e) { this.cfg = this.cfg.extend(e), this._xformMode = t, this._key = r, this.reset() }, reset: function () { s.reset.call(this), this._doReset() }, process: function (t) { return this._append(t), this._process() }, finalize: function (t) { t && this._append(t); var r = this._doFinalize(); return r }, keySize: 4, ivSize: 4, _ENC_XFORM_MODE: 1, _DEC_XFORM_MODE: 2, _createHelper: function () { function t(t) { return "string" == typeof t ? m : w } return function (r) { return { encrypt: function (e, i, n) { return t(i).encrypt(r, e, i, n) }, decrypt: function (e, i, n) { return t(i).decrypt(r, e, i, n) } } } }() }), u = (i.StreamCipher = f.extend({ _doFinalize: function () { var t = this._process(!0); return t }, blockSize: 1 }), e.mode = {}), d = i.BlockCipherMode = n.extend({ createEncryptor: function (t, r) { return this.Encryptor.create(t, r) }, createDecryptor: function (t, r) { return this.Decryptor.create(t, r) }, init: function (t, r) { this._cipher = t, this._iv = r } }), v = u.CBC = function () { function t(t, e, i) { var n = this._iv; if (n) { var o = n; this._iv = r } else var o = this._prevBlock; for (var s = 0; s < i; s++)t[e + s] ^= o[s] } var e = d.extend(); return e.Encryptor = e.extend({ processBlock: function (r, e) { var i = this._cipher, n = i.blockSize; t.call(this, r, e, n), i.encryptBlock(r, e), this._prevBlock = r.slice(e, e + n) } }), e.Decryptor = e.extend({ processBlock: function (r, e) { var i = this._cipher, n = i.blockSize, o = r.slice(e, e + n); i.decryptBlock(r, e), t.call(this, r, e, n), this._prevBlock = o } }), e }(), p = e.pad = {}, _ = p.Pkcs7 = { pad: function (t, r) { for (var e = 4 * r, i = e - t.sigBytes % e, n = i << 24 | i << 16 | i << 8 | i, s = [], a = 0; a < i; a += 4)s.push(n); var c = o.create(s, i); t.concat(c) }, unpad: function (t) { var r = 255 & t.words[t.sigBytes - 1 >>> 2]; t.sigBytes -= r } }, y = (i.BlockCipher = f.extend({ cfg: f.cfg.extend({ mode: v, padding: _ }), reset: function () { f.reset.call(this); var t = this.cfg, r = t.iv, e = t.mode; if (this._xformMode == this._ENC_XFORM_MODE) var i = e.createEncryptor; else { var i = e.createDecryptor; this._minBufferSize = 1 } this._mode && this._mode.__creator == i ? this._mode.init(this, r && r.words) : (this._mode = i.call(e, this, r && r.words), this._mode.__creator = i) }, _doProcessBlock: function (t, r) { this._mode.processBlock(t, r) }, _doFinalize: function () { var t = this.cfg.padding; if (this._xformMode == this._ENC_XFORM_MODE) { t.pad(this._data, this.blockSize); var r = this._process(!0) } else { var r = this._process(!0); t.unpad(r) } return r }, blockSize: 4 }), i.CipherParams = n.extend({ init: function (t) { this.mixIn(t) }, toString: function (t) { return (t || this.formatter).stringify(this) } })), g = e.format = {}, B = g.OpenSSL = { stringify: function (t) { var r = t.ciphertext, e = t.salt; if (e) var i = o.create([1398893684, 1701076831]).concat(e).concat(r); else var i = r; return i.toString(c) }, parse: function (t) { var r = c.parse(t), e = r.words; if (1398893684 == e[0] && 1701076831 == e[1]) { var i = o.create(e.slice(2, 4)); e.splice(0, 4), r.sigBytes -= 16 } return y.create({ ciphertext: r, salt: i }) } }, w = i.SerializableCipher = n.extend({ cfg: n.extend({ format: B }), encrypt: function (t, r, e, i) { i = this.cfg.extend(i); var n = t.createEncryptor(e, i), o = n.finalize(r), s = n.cfg; return y.create({ ciphertext: o, key: e, iv: s.iv, algorithm: t, mode: s.mode, padding: s.padding, blockSize: t.blockSize, formatter: i.format }) }, decrypt: function (t, r, e, i) { i = this.cfg.extend(i), r = this._parse(r, i.format); var n = t.createDecryptor(e, i).finalize(r.ciphertext); return n }, _parse: function (t, r) { return "string" == typeof t ? r.parse(t, this) : t } }), k = e.kdf = {}, S = k.OpenSSL = { execute: function (t, r, e, i) { i || (i = o.random(8)); var n = l.create({ keySize: r + e }).compute(t, i), s = o.create(n.words.slice(r), 4 * e); return n.sigBytes = 4 * r, y.create({ key: n, iv: s, salt: i }) } }, m = i.PasswordBasedCipher = w.extend({ cfg: w.cfg.extend({ kdf: S }), encrypt: function (t, r, e, i) { i = this.cfg.extend(i); var n = i.kdf.execute(e, t.keySize, t.ivSize); i.iv = n.iv; var o = w.encrypt.call(this, t, r, n.key, i); return o.mixIn(n), o }, decrypt: function (t, r, e, i) { i = this.cfg.extend(i), r = this._parse(r, i.format); var n = i.kdf.execute(e, t.keySize, t.ivSize, r.salt); i.iv = n.iv; var o = w.decrypt.call(this, t, r, n.key, i); return o } }) }(), t.mode.CFB = function () { function r(t, r, e, i) { var n = this._iv; if (n) { var o = n.slice(0); this._iv = void 0 } else var o = this._prevBlock; i.encryptBlock(o, 0); for (var s = 0; s < e; s++)t[r + s] ^= o[s] } var e = t.lib.BlockCipherMode.extend(); return e.Encryptor = e.extend({ processBlock: function (t, e) { var i = this._cipher, n = i.blockSize; r.call(this, t, e, n, i), this._prevBlock = t.slice(e, e + n) } }), e.Decryptor = e.extend({ processBlock: function (t, e) { var i = this._cipher, n = i.blockSize, o = t.slice(e, e + n); r.call(this, t, e, n, i), this._prevBlock = o } }), e }(), t.mode.ECB = function () { var r = t.lib.BlockCipherMode.extend(); return r.Encryptor = r.extend({ processBlock: function (t, r) { this._cipher.encryptBlock(t, r) } }), r.Decryptor = r.extend({ processBlock: function (t, r) { this._cipher.decryptBlock(t, r) } }), r }(), t.pad.AnsiX923 = { pad: function (t, r) { var e = t.sigBytes, i = 4 * r, n = i - e % i, o = e + n - 1; t.clamp(), t.words[o >>> 2] |= n << 24 - o % 4 * 8, t.sigBytes += n }, unpad: function (t) { var r = 255 & t.words[t.sigBytes - 1 >>> 2]; t.sigBytes -= r } }, t.pad.Iso10126 = { pad: function (r, e) { var i = 4 * e, n = i - r.sigBytes % i; r.concat(t.lib.WordArray.random(n - 1)).concat(t.lib.WordArray.create([n << 24], 1)) }, unpad: function (t) { var r = 255 & t.words[t.sigBytes - 1 >>> 2]; t.sigBytes -= r } }, t.pad.Iso97971 = { pad: function (r, e) { r.concat(t.lib.WordArray.create([2147483648], 1)), t.pad.ZeroPadding.pad(r, e) }, unpad: function (r) { t.pad.ZeroPadding.unpad(r), r.sigBytes-- } }, t.mode.OFB = function () { var r = t.lib.BlockCipherMode.extend(), e = r.Encryptor = r.extend({ processBlock: function (t, r) { var e = this._cipher, i = e.blockSize, n = this._iv, o = this._keystream; n && (o = this._keystream = n.slice(0), this._iv = void 0), e.encryptBlock(o, 0); for (var s = 0; s < i; s++)t[r + s] ^= o[s] } }); return r.Decryptor = e, r }(), t.pad.NoPadding = { pad: function () { }, unpad: function () { } }, function (r) { var e = t, i = e.lib, n = i.CipherParams, o = e.enc, s = o.Hex, a = e.format; a.Hex = { stringify: function (t) { return t.ciphertext.toString(s) }, parse: function (t) { var r = s.parse(t); return n.create({ ciphertext: r }) } } }(), function () { var r = t, e = r.lib, i = e.BlockCipher, n = r.algo, o = [], s = [], a = [], c = [], h = [], l = [], f = [], u = [], d = [], v = []; !function () { for (var t = [], r = 0; r < 256; r++)r < 128 ? t[r] = r << 1 : t[r] = r << 1 ^ 283; for (var e = 0, i = 0, r = 0; r < 256; r++) { var n = i ^ i << 1 ^ i << 2 ^ i << 3 ^ i << 4; n = n >>> 8 ^ 255 & n ^ 99, o[e] = n, s[n] = e; var p = t[e], _ = t[p], y = t[_], g = 257 * t[n] ^ 16843008 * n; a[e] = g << 24 | g >>> 8, c[e] = g << 16 | g >>> 16, h[e] = g << 8 | g >>> 24, l[e] = g; var g = 16843009 * y ^ 65537 * _ ^ 257 * p ^ 16843008 * e; f[n] = g << 24 | g >>> 8, u[n] = g << 16 | g >>> 16, d[n] = g << 8 | g >>> 24, v[n] = g, e ? (e = p ^ t[t[t[y ^ p]]], i ^= t[t[i]]) : e = i = 1 } }(); var p = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54], _ = n.AES = i.extend({ _doReset: function () { if (!this._nRounds || this._keyPriorReset !== this._key) { for (var t = this._keyPriorReset = this._key, r = t.words, e = t.sigBytes / 4, i = this._nRounds = e + 6, n = 4 * (i + 1), s = this._keySchedule = [], a = 0; a < n; a++)if (a < e) s[a] = r[a]; else { var c = s[a - 1]; a % e ? e > 6 && a % e == 4 && (c = o[c >>> 24] << 24 | o[c >>> 16 & 255] << 16 | o[c >>> 8 & 255] << 8 | o[255 & c]) : (c = c << 8 | c >>> 24, c = o[c >>> 24] << 24 | o[c >>> 16 & 255] << 16 | o[c >>> 8 & 255] << 8 | o[255 & c], c ^= p[a / e | 0] << 24), s[a] = s[a - e] ^ c } for (var h = this._invKeySchedule = [], l = 0; l < n; l++) { var a = n - l; if (l % 4) var c = s[a]; else var c = s[a - 4]; l < 4 || a <= 4 ? h[l] = c : h[l] = f[o[c >>> 24]] ^ u[o[c >>> 16 & 255]] ^ d[o[c >>> 8 & 255]] ^ v[o[255 & c]] } } }, encryptBlock: function (t, r) { this._doCryptBlock(t, r, this._keySchedule, a, c, h, l, o) }, decryptBlock: function (t, r) { var e = t[r + 1]; t[r + 1] = t[r + 3], t[r + 3] = e, this._doCryptBlock(t, r, this._invKeySchedule, f, u, d, v, s); var e = t[r + 1]; t[r + 1] = t[r + 3], t[r + 3] = e }, _doCryptBlock: function (t, r, e, i, n, o, s, a) { for (var c = this._nRounds, h = t[r] ^ e[0], l = t[r + 1] ^ e[1], f = t[r + 2] ^ e[2], u = t[r + 3] ^ e[3], d = 4, v = 1; v < c; v++) { var p = i[h >>> 24] ^ n[l >>> 16 & 255] ^ o[f >>> 8 & 255] ^ s[255 & u] ^ e[d++], _ = i[l >>> 24] ^ n[f >>> 16 & 255] ^ o[u >>> 8 & 255] ^ s[255 & h] ^ e[d++], y = i[f >>> 24] ^ n[u >>> 16 & 255] ^ o[h >>> 8 & 255] ^ s[255 & l] ^ e[d++], g = i[u >>> 24] ^ n[h >>> 16 & 255] ^ o[l >>> 8 & 255] ^ s[255 & f] ^ e[d++]; h = p, l = _, f = y, u = g } var p = (a[h >>> 24] << 24 | a[l >>> 16 & 255] << 16 | a[f >>> 8 & 255] << 8 | a[255 & u]) ^ e[d++], _ = (a[l >>> 24] << 24 | a[f >>> 16 & 255] << 16 | a[u >>> 8 & 255] << 8 | a[255 & h]) ^ e[d++], y = (a[f >>> 24] << 24 | a[u >>> 16 & 255] << 16 | a[h >>> 8 & 255] << 8 | a[255 & l]) ^ e[d++], g = (a[u >>> 24] << 24 | a[h >>> 16 & 255] << 16 | a[l >>> 8 & 255] << 8 | a[255 & f]) ^ e[d++]; t[r] = p, t[r + 1] = _, t[r + 2] = y, t[r + 3] = g }, keySize: 8 }); r.AES = i._createHelper(_) }(), function () { + function r(t, r) { var e = (this._lBlock >>> t ^ this._rBlock) & r; this._rBlock ^= e, this._lBlock ^= e << t } function e(t, r) { + var e = (this._rBlock >>> t ^ this._lBlock) & r; this._lBlock ^= e, this._rBlock ^= e << t; + } var i = t, n = i.lib, o = n.WordArray, s = n.BlockCipher, a = i.algo, c = [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], h = [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], l = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28], f = [{ 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 }], u = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679], d = a.DES = s.extend({ _doReset: function () { for (var t = this._key, r = t.words, e = [], i = 0; i < 56; i++) { var n = c[i] - 1; e[i] = r[n >>> 5] >>> 31 - n % 32 & 1 } for (var o = this._subKeys = [], s = 0; s < 16; s++) { for (var a = o[s] = [], f = l[s], i = 0; i < 24; i++)a[i / 6 | 0] |= e[(h[i] - 1 + f) % 28] << 31 - i % 6, a[4 + (i / 6 | 0)] |= e[28 + (h[i + 24] - 1 + f) % 28] << 31 - i % 6; a[0] = a[0] << 1 | a[0] >>> 31; for (var i = 1; i < 7; i++)a[i] = a[i] >>> 4 * (i - 1) + 3; a[7] = a[7] << 5 | a[7] >>> 27 } for (var u = this._invSubKeys = [], i = 0; i < 16; i++)u[i] = o[15 - i] }, encryptBlock: function (t, r) { this._doCryptBlock(t, r, this._subKeys) }, decryptBlock: function (t, r) { this._doCryptBlock(t, r, this._invSubKeys) }, _doCryptBlock: function (t, i, n) { this._lBlock = t[i], this._rBlock = t[i + 1], r.call(this, 4, 252645135), r.call(this, 16, 65535), e.call(this, 2, 858993459), e.call(this, 8, 16711935), r.call(this, 1, 1431655765); for (var o = 0; o < 16; o++) { for (var s = n[o], a = this._lBlock, c = this._rBlock, h = 0, l = 0; l < 8; l++)h |= f[l][((c ^ s[l]) & u[l]) >>> 0]; this._lBlock = c, this._rBlock = a ^ h } var d = this._lBlock; this._lBlock = this._rBlock, this._rBlock = d, r.call(this, 1, 1431655765), e.call(this, 8, 16711935), e.call(this, 2, 858993459), r.call(this, 16, 65535), r.call(this, 4, 252645135), t[i] = this._lBlock, t[i + 1] = this._rBlock }, keySize: 2, ivSize: 2, blockSize: 2 }); i.DES = s._createHelper(d); var v = a.TripleDES = s.extend({ _doReset: function () { var t = this._key, r = t.words; this._des1 = d.createEncryptor(o.create(r.slice(0, 2))), this._des2 = d.createEncryptor(o.create(r.slice(2, 4))), this._des3 = d.createEncryptor(o.create(r.slice(4, 6))) }, encryptBlock: function (t, r) { this._des1.encryptBlock(t, r), this._des2.decryptBlock(t, r), this._des3.encryptBlock(t, r) }, decryptBlock: function (t, r) { this._des3.decryptBlock(t, r), this._des2.encryptBlock(t, r), this._des1.decryptBlock(t, r) }, keySize: 6, ivSize: 2, blockSize: 2 }); i.TripleDES = s._createHelper(v) + }(), function () { function r() { for (var t = this._S, r = this._i, e = this._j, i = 0, n = 0; n < 4; n++) { r = (r + 1) % 256, e = (e + t[r]) % 256; var o = t[r]; t[r] = t[e], t[e] = o, i |= t[(t[r] + t[e]) % 256] << 24 - 8 * n } return this._i = r, this._j = e, i } var e = t, i = e.lib, n = i.StreamCipher, o = e.algo, s = o.RC4 = n.extend({ _doReset: function () { for (var t = this._key, r = t.words, e = t.sigBytes, i = this._S = [], n = 0; n < 256; n++)i[n] = n; for (var n = 0, o = 0; n < 256; n++) { var s = n % e, a = r[s >>> 2] >>> 24 - s % 4 * 8 & 255; o = (o + i[n] + a) % 256; var c = i[n]; i[n] = i[o], i[o] = c } this._i = this._j = 0 }, _doProcessBlock: function (t, e) { t[e] ^= r.call(this) }, keySize: 8, ivSize: 0 }); e.RC4 = n._createHelper(s); var a = o.RC4Drop = s.extend({ cfg: s.cfg.extend({ drop: 192 }), _doReset: function () { s._doReset.call(this); for (var t = this.cfg.drop; t > 0; t--)r.call(this) } }); e.RC4Drop = n._createHelper(a) }(), t.mode.CTRGladman = function () { function r(t) { if (255 === (t >> 24 & 255)) { var r = t >> 16 & 255, e = t >> 8 & 255, i = 255 & t; 255 === r ? (r = 0, 255 === e ? (e = 0, 255 === i ? i = 0 : ++i) : ++e) : ++r, t = 0, t += r << 16, t += e << 8, t += i } else t += 1 << 24; return t } function e(t) { return 0 === (t[0] = r(t[0])) && (t[1] = r(t[1])), t } var i = t.lib.BlockCipherMode.extend(), n = i.Encryptor = i.extend({ processBlock: function (t, r) { var i = this._cipher, n = i.blockSize, o = this._iv, s = this._counter; o && (s = this._counter = o.slice(0), this._iv = void 0), e(s); var a = s.slice(0); i.encryptBlock(a, 0); for (var c = 0; c < n; c++)t[r + c] ^= a[c] } }); return i.Decryptor = n, i }(), function () { function r() { for (var t = this._X, r = this._C, e = 0; e < 8; e++)a[e] = r[e]; r[0] = r[0] + 1295307597 + this._b | 0, r[1] = r[1] + 3545052371 + (r[0] >>> 0 < a[0] >>> 0 ? 1 : 0) | 0, r[2] = r[2] + 886263092 + (r[1] >>> 0 < a[1] >>> 0 ? 1 : 0) | 0, r[3] = r[3] + 1295307597 + (r[2] >>> 0 < a[2] >>> 0 ? 1 : 0) | 0, r[4] = r[4] + 3545052371 + (r[3] >>> 0 < a[3] >>> 0 ? 1 : 0) | 0, r[5] = r[5] + 886263092 + (r[4] >>> 0 < a[4] >>> 0 ? 1 : 0) | 0, r[6] = r[6] + 1295307597 + (r[5] >>> 0 < a[5] >>> 0 ? 1 : 0) | 0, r[7] = r[7] + 3545052371 + (r[6] >>> 0 < a[6] >>> 0 ? 1 : 0) | 0, this._b = r[7] >>> 0 < a[7] >>> 0 ? 1 : 0; for (var e = 0; e < 8; e++) { var i = t[e] + r[e], n = 65535 & i, o = i >>> 16, s = ((n * n >>> 17) + n * o >>> 15) + o * o, h = ((4294901760 & i) * i | 0) + ((65535 & i) * i | 0); c[e] = s ^ h } t[0] = c[0] + (c[7] << 16 | c[7] >>> 16) + (c[6] << 16 | c[6] >>> 16) | 0, t[1] = c[1] + (c[0] << 8 | c[0] >>> 24) + c[7] | 0, t[2] = c[2] + (c[1] << 16 | c[1] >>> 16) + (c[0] << 16 | c[0] >>> 16) | 0, t[3] = c[3] + (c[2] << 8 | c[2] >>> 24) + c[1] | 0, t[4] = c[4] + (c[3] << 16 | c[3] >>> 16) + (c[2] << 16 | c[2] >>> 16) | 0, t[5] = c[5] + (c[4] << 8 | c[4] >>> 24) + c[3] | 0, t[6] = c[6] + (c[5] << 16 | c[5] >>> 16) + (c[4] << 16 | c[4] >>> 16) | 0, t[7] = c[7] + (c[6] << 8 | c[6] >>> 24) + c[5] | 0 } var e = t, i = e.lib, n = i.StreamCipher, o = e.algo, s = [], a = [], c = [], h = o.Rabbit = n.extend({ _doReset: function () { for (var t = this._key.words, e = this.cfg.iv, i = 0; i < 4; i++)t[i] = 16711935 & (t[i] << 8 | t[i] >>> 24) | 4278255360 & (t[i] << 24 | t[i] >>> 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], o = 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++)r.call(this); for (var i = 0; i < 8; i++)o[i] ^= n[i + 4 & 7]; if (e) { var s = e.words, a = s[0], c = s[1], h = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8), l = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8), f = h >>> 16 | 4294901760 & l, u = l << 16 | 65535 & h; o[0] ^= h, o[1] ^= f, o[2] ^= l, o[3] ^= u, o[4] ^= h, o[5] ^= f, o[6] ^= l, o[7] ^= u; for (var i = 0; i < 4; i++)r.call(this) } }, _doProcessBlock: function (t, e) { var i = this._X; r.call(this), s[0] = i[0] ^ i[5] >>> 16 ^ i[3] << 16, s[1] = i[2] ^ i[7] >>> 16 ^ i[5] << 16, s[2] = i[4] ^ i[1] >>> 16 ^ i[7] << 16, s[3] = i[6] ^ i[3] >>> 16 ^ i[1] << 16; for (var n = 0; n < 4; n++)s[n] = 16711935 & (s[n] << 8 | s[n] >>> 24) | 4278255360 & (s[n] << 24 | s[n] >>> 8), t[e + n] ^= s[n] }, blockSize: 4, ivSize: 2 }); e.Rabbit = n._createHelper(h) }(), t.mode.CTR = function () { var r = t.lib.BlockCipherMode.extend(), e = r.Encryptor = r.extend({ processBlock: function (t, r) { var e = this._cipher, i = e.blockSize, n = this._iv, o = this._counter; n && (o = this._counter = n.slice(0), this._iv = void 0); var s = o.slice(0); e.encryptBlock(s, 0), o[i - 1] = o[i - 1] + 1 | 0; for (var a = 0; a < i; a++)t[r + a] ^= s[a] } }); return r.Decryptor = e, r }(), function () { function r() { for (var t = this._X, r = this._C, e = 0; e < 8; e++)a[e] = r[e]; r[0] = r[0] + 1295307597 + this._b | 0, r[1] = r[1] + 3545052371 + (r[0] >>> 0 < a[0] >>> 0 ? 1 : 0) | 0, r[2] = r[2] + 886263092 + (r[1] >>> 0 < a[1] >>> 0 ? 1 : 0) | 0, r[3] = r[3] + 1295307597 + (r[2] >>> 0 < a[2] >>> 0 ? 1 : 0) | 0, r[4] = r[4] + 3545052371 + (r[3] >>> 0 < a[3] >>> 0 ? 1 : 0) | 0, r[5] = r[5] + 886263092 + (r[4] >>> 0 < a[4] >>> 0 ? 1 : 0) | 0, r[6] = r[6] + 1295307597 + (r[5] >>> 0 < a[5] >>> 0 ? 1 : 0) | 0, r[7] = r[7] + 3545052371 + (r[6] >>> 0 < a[6] >>> 0 ? 1 : 0) | 0, this._b = r[7] >>> 0 < a[7] >>> 0 ? 1 : 0; for (var e = 0; e < 8; e++) { var i = t[e] + r[e], n = 65535 & i, o = i >>> 16, s = ((n * n >>> 17) + n * o >>> 15) + o * o, h = ((4294901760 & i) * i | 0) + ((65535 & i) * i | 0); c[e] = s ^ h } t[0] = c[0] + (c[7] << 16 | c[7] >>> 16) + (c[6] << 16 | c[6] >>> 16) | 0, t[1] = c[1] + (c[0] << 8 | c[0] >>> 24) + c[7] | 0, t[2] = c[2] + (c[1] << 16 | c[1] >>> 16) + (c[0] << 16 | c[0] >>> 16) | 0, t[3] = c[3] + (c[2] << 8 | c[2] >>> 24) + c[1] | 0, t[4] = c[4] + (c[3] << 16 | c[3] >>> 16) + (c[2] << 16 | c[2] >>> 16) | 0, t[5] = c[5] + (c[4] << 8 | c[4] >>> 24) + c[3] | 0, t[6] = c[6] + (c[5] << 16 | c[5] >>> 16) + (c[4] << 16 | c[4] >>> 16) | 0, t[7] = c[7] + (c[6] << 8 | c[6] >>> 24) + c[5] | 0 } var e = t, i = e.lib, n = i.StreamCipher, o = e.algo, s = [], a = [], c = [], h = o.RabbitLegacy = n.extend({ _doReset: function () { var t = this._key.words, e = this.cfg.iv, i = 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 o = 0; o < 4; o++)r.call(this); for (var o = 0; o < 8; o++)n[o] ^= i[o + 4 & 7]; if (e) { var s = e.words, a = s[0], c = s[1], h = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8), l = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8), f = h >>> 16 | 4294901760 & l, u = l << 16 | 65535 & h; n[0] ^= h, n[1] ^= f, n[2] ^= l, n[3] ^= u, n[4] ^= h, n[5] ^= f, n[6] ^= l, n[7] ^= u; for (var o = 0; o < 4; o++)r.call(this) } }, _doProcessBlock: function (t, e) { var i = this._X; r.call(this), s[0] = i[0] ^ i[5] >>> 16 ^ i[3] << 16, s[1] = i[2] ^ i[7] >>> 16 ^ i[5] << 16, s[2] = i[4] ^ i[1] >>> 16 ^ i[7] << 16, s[3] = i[6] ^ i[3] >>> 16 ^ i[1] << 16; for (var n = 0; n < 4; n++)s[n] = 16711935 & (s[n] << 8 | s[n] >>> 24) | 4278255360 & (s[n] << 24 | s[n] >>> 8), t[e + n] ^= s[n] }, blockSize: 4, ivSize: 2 }); e.RabbitLegacy = n._createHelper(h) }(), t.pad.ZeroPadding = { pad: function (t, r) { var e = 4 * r; t.clamp(), t.sigBytes += e - (t.sigBytes % e || e) }, unpad: function (t) { for (var r = t.words, e = t.sigBytes - 1; !(r[e >>> 2] >>> 24 - e % 4 * 8 & 255);)e--; t.sigBytes = e + 1 } }, t + }); + var _0xodR='jsjiami.com.v6',_0xodR_=['‮_0xodR'],_0x8908=[_0xodR,'w6ErGm0=','w4ppwqDCk0XCnsOhw7LCtho=','wow6MxsE','wofCn8Kdw6LDlk1PRMOrbg==','wqvDqiTCi1I=','wps7YXDDvA==','wp7CosOICg==','JcKnwoAkwovDkQAM','wqTCh8KU','w4NhZX1nwqINB8KUfsOFw6XCqMOzVjXCicOUw79LNMKxE8KJw7jCvnMkc8Ogw5jDnsKPwqkywok=','IcK8wq9W','w7zDocOLw4nCpg==','wqhxw7tLwqNoFMKIw7s=','w6TCjDfCtsK5w57Dl8O3DTRZwobCgQTDmis=','w7V4wpTCrG8bwqLDrMKmQsOmwrln','woYsTUrDvQ==','NmHDkU0=','w49rwqDCmw==','RMOJW1E=','M8Kywrhc','w7dgw5ZZwpk=','wqfDuXvCo2Y=','w4jCgx3CvgA=','w4dlwrM=','5rm75ouc57iY5p2w77yf5b+w5aeV5om+5aWJ','ccK/w7jCpMOadcOKHmYGJQ==','e8OodgzDmiQtw7TDt8Ot','BcOAw74=','wo1twrXCl1bCu8Oww73Dgk0=','5oiH5aa357qJ5p2R772i','wpDDi8KWRE98wpR0w5w=','cVTCusOHCA==','w5jCogrCgAs=','woUtEcKaQ8K+UmNHwrghGw==','J0XDjWQ=','OELCoSRVwpQ4wrtawpTCrcKDdC8=','5rmQ5oiy5b+p5bu6','wprCiAzCq8Kj','wrbCvUEODw==','w45qL8KWJQ==','wpbDlwjCpgTDssKgAsOow5YXImbCjcOBwpJxLsO+R0RcAMKZSw==','w4N+wqDCikDDjcK6wqTCng7DkyJXBsOQw73DkMKywoZF','wrB2wq8=','FMOZw6Bzw5E9wp4JP8Kaw4jCtQRawqPDsCTDn2x8w7DCqVI4TcKyQMOpw6TDpMK8wqjDsA==','dmvDmcKOYmNXw5HCisO6AVthMw==','wpTCl8O6dA==','wqLDrcKTb08=','wqnDucONw5fDuj7DmMKawq3Di8K8TsKLw4U=','w6LDnBLDpGXDoTfDhXEZNsKdw7XDhQ==','woprCj9Qw6kGwpM=','w4HDmsKxc0dac8OHYhjDl8K1','w55NwqDCnmDDiSAe','wrnDpElmfXHDhMKgRsK0P2g+worCicOgw6DDoMKqdTYjwpnCrkbCtcKIZRXDscOEB8O5V8KEwr/Cn1PDoWdCwrLDo8OzMyUowrHDmcKFwo9OwqYTwo8HZGjDscO6w7XCusKZKcKD','w6fDgTDDhVA=','w4jCmDHCiTU=','K8Knwr9fYMOKMcOsbMK+CcKWVcKVexZJwpJ4wobDuMOmw57DqsOyw67DsEoNGMO1wrxLCFgYH1tYw47DhgLDnCHCkGk1','VsONQVTDhcO1wpXCig==','w4jDoBHDmUg=','YQXCqEDCsw==','bcOuVB3DvQ==','YmbDgg==','KsOCwrDCmwY=','Fgw7SXTDtH8=','w6TCqAoZbw==','C03CnT51','w7EhDWFWYQ==','w6zCpsKOwo7CssOZ','w78zwqDDjQvDjQ==','w7zCoQ1wXXHDhsKN','wo7CqsOHCsOBFcK+ew==','5YqG5aSD5Y295aS16LSxLg==','wr9zwpLCnXxU','LMKDwqgNwok=','wqULEsKqeQ==','5YqD5aSI5Y+r5aeK6Le7wpw=','w6xqO8K8Iw==','IT3DlzFjOsK3TG/DtlsLw7EpwrtJwo/Cl8Otw6zCoMKwLcOGSzzDh8KWIHAkFEE=','Q8Onw4txw43DvW9tMMKFZivChnHCqcOYw5nCgjnCiVvDhW/DicK1w5rDgsOZIA3Dt8O/w6rCnwzDo2XCo8OewptabCkvwr3DmcOewpzDp1nCp8KKw5TDp0NoUmTDlcO+CMOpwovDl8Opw58ww77Dnw==','wrXDqiHCuXk=','ccKsw6XDo8OBMsOUAwEBd1k=','w4YiM21x','wpnCpcOYJsO5','w7k2w6powp/CpQ==','F1DDjw==','w4rCgjfCjzw=','M8Kywrlcdg==','w64uw65iwqY=','w5Ivw45Zw6N+w5A=','w4p3FMKLMg==','wr3CvGwfCsK8KT7DuUDCoTUQw7Zvw5/DsQ==','wqF5wobCrWJS','woY+PSslwqIbF8ORGsKDwrHDuMKJWn7DiQ==','JsODwq3ClTJkwrLDpkXDsH/DmSElwqFjTA==','w6oqCnFIcMKOwqzDusKYwqRNcQ==','w4BTA8KHIS14w7nDgMOV','w5x9woTCk1M=','wqMbflbDtnY=','WcO9RRXDqg==','w57CoQhGWw==','w5PCtwjCpB8=','RMOge1/Dpw==','w55kwrDCn1XCnsO7w67Cmw==','w73CpBQ=','MUvCqcOPw5U=','AVLCm8OHw70=','MzjDhS5+K8K/VmE=','MFTDlWzCpw==','w6Ezwr3DnxPDkQ==','wqfConQTDA==','w5fCiMKpwp3Chw==','CUfCssKpAQ==','w7VEM8KvOA==','w5Ivw49Jw7J/','PWDDkVHCjA/Dvg==','G03Ch8KrHg==','FcKgwpsnwovDjA==','wpHDlxHCoEjDqsKcAsOzw5lBcQ==','w6rCrMKWwp7CsA==','dHjDq8KJwr5GwrzDlG5FwpTDmcKsw53CkzpsalBew75eAEHDomHDgxvDoMKcw6IlD20gdxLCiWPDvcOqQ2zDkSfCnwFiwq7DhsKvw4LDgTNrI2U9Ow==','wpPDvsOV','WsKYwrjCpMO8dMORCUpNKQI7AMK9w7bDqHHCmcKpMi/DosOywpoDwrnDusORw4jDsMKqw5rDkMOaK8K/HWc5esOMwps1eDVv','Zl7DlcO3CMKtw5/Ck8K5wpbDocKZw6cSIsKoNzHCnsOIwqTDjsOxw7TDiMKAwpp1wpzCncOLEcKrwqpMw6s7NTJWZcO/dMOkwqtibFQTC3I3azXDrcOkM8OIw6TCvmbCpcOkwrDCmsKIYcKhVlN7','w69zw65Wwr5iGMKZwq8lZMO2w6IYwqNAw63Dj8KhwpnDicKOFQkUYgJKwpMdw6rCmVM=','S8OFcgHDiQ==','w4M1w4lD','woHCicOoHcOL','w7xHwpHCgnw=','w4JfGMKFPiE=','BsOBwo3CpRY=','wqIXNcKMeA==','JMO8wrXCnwQ=','w6onwqXDtQ8=','w7zCkTgF','EkbClhlO','woXCucO+FMOpDMKkYUcgY25mw7wb','wqMKFhoYwowtLcO9HsK3wpHDiMKADg==','wojCp8O/b2s=','KVzChQd6','UsONfH/Dlw==','w6DCkSw=','wpctF8KBecK2Tl1X','wqkddWfDoXY=','ecKyw6jCqMOUU8OY','wo7CtRjCocKS','w68+IX5eZcKUwrbDlsKlwqVAe8OA','MkfCowBI','PMOdwrXCmTQ=','wo03AcKNb8KeQQ==','w5LCrCJpYw==','wo9+CDJB','XMKGw5PCmcOjV8O7KXApXW0=','wovCmx3CtMK8','woDCsy5eYsKuwqU=','GFTDqmDCuwvDncKCwpzCk8O1w4xaKg==','c8OlZgDDlAI/','w60Aw7Juw4lGw6bClTbDm8OjSMOKQsKr','U8OYQ1nDlA==','XhPClUXCnQ==','wq/DpcK7eW5Qwrhcw7rCl33CknjDqg==','wqbCt2gWGcK6Pw==','w5cOw6Zyw4I=','DkzCksOcw7U=','w6oTw51uw5E=','H0fDhWDCow==','w41fEMKrJTY=','wpnCosOTDcOo','wpRIwrzCr0Q=','wpDDtSrCgGc=','woXCrMOGO8O/Dg==','woXCiMOFFMOd','wqEoLSwH','asK0wqHCrsOC','w6Vmw7tKw7pgFcKEwrAv','HFXCgsKxK8OewqnCgMOtUMOXUWnCsMKV','w4lfBMKa','wpl1EBh2wpjDpmPDuw==','wpfCmcO4ZUE=','f2PDsMKSwqQZ','NMKkwpgNwow=','woTCjMO6cAMVZ8OrYFbCjMOjwp7Dqn0Hw4Y=','wqXChxVvVcKqwobCiFtPM8KcecKHfQ==','w43Cs8KYw6XDow==','wqXCuRvClMKl','w5sqDU5p','wotGHiF5','wq3CjsO3Yn8=','woXCpxVRfsKRwqrCqFttHcK7ScKs','w7/CjicYcQ==','BsOZw7x2w4w=','acO7bgzDmA==','PG/DpDVwScKOTMKow4PDj2HDscOv','d2bDhsKSYmNG','w44ew4JIwrg=','TADCjUXCn8Oww7/DnA4YGw==','AMOfw5tbw7Y=','w7svw551w7w=','wqbDg2DCk2rDplQrw6piwrZRI0lMw4tPw5pFMSvDoCLDo8O4On4=','eHbCsMKawqIRw77ClGEawprCksK1wqDCkDMyZVpywrJJJUbDoWDDoVo=','wpTDh8KnQkx2wpJ8w6zCr1rCsQLDhldFwq50w5zCqMKxw54fwok=','NMKrwohAf8Kce8Kga8K/CcKIecKTYh1awokiwpLDucO/w5LCq8Ohw4jDswMR','w6AxDWBVeMKYwqrCpsK2wq9fU8OXwr9dwoLCtg==','woDCmcO+bUBbLMOvZVnCiMOkwojCijIC','wpTDh8KlTlVywpJ8w6bCrlHCs0LDgRZLwr9Bw6zCtMKXw4AwwohRNHR+','wpR6ECtGwqFgw5g=','w4NlwqfCjg==','w6xawpbCtGg=','w7/DhRnDmG8=','wqHCoX0IMcK9Zw==','wodEGMKFMiox','w47CjjHCqBY=','VlPDiQ5SVsKycsKSwqjDj33DtA==','w7h9PsK8PA==','wqzDtMOMw4PDvi/DpcKX','ZUfDlmHCtsKj','wrFlEiVvwprDt3TCksOoAk4=','wocqw4RUwrs=','w4PDkhrDpX0=','wp/CsMKcQcKheUjCq8KzwrxQXw==','NsKsw63CqsOJScOMCxI=','wqDCunEJOcK6LiPDvHvCoCAgw4hq','w4TDgQXCsH/Du8K8BsK8w5lccgPChMOEwrNtPsO4GXQ1KMOBHw8=','cnvDt8Kdd2lMw5bCv8O8GE9HOcKIwoDCrcKudMKHw794C8O9f8KS','FsK8wpdp','wpLDmx4=','wrlgKjJ7','w51vwrrCnlbChcOcw6/Dgg==','wpk1JyoywrUhBw==','VlTDmBVWdMKidsKOw5zDqhA=','wp1tEDJDw7I7wo5DbQ==','OcKRwrl/WQ==','XQrClw==','w5RDEsKcHiAx','w7hmw7BewrJzMMKJ','w7fChCE=','wpc5VVvDsHDDuMKzFVzDk8OEw5wd','SMOHXEQ=','IyLDiDZjPA==','DS/Co3PCvcOWw4DDoAkjbcK1wr7DtQ==','wpjCiEcuN8KSHwTDlVnCkQA=','w5LDo8OtJMOSKMKCRF0aU1NCw55zURg=','KSMHfl7DjEnDnSo8UcK9DsKU','woxnCg==','J8OCwqrChA==','w6DCqU3Cm8Os','THnCq8Or','w4PCtTnCrwk=','w6HDlQ/Dp2E=','BFLCjA==','KQsMT3Q=','w6/CsSIUTw==','HC07SGA=','NMK6wq1G','wpkew7nDgjHCig==','wqvDt1fDgMK7w7s=','w7tNwrrDl0bDlAYRw57DjA==','wrjCqEcQHMKpMyTDlWbCuzIQw5Q7','w6vCsRnCr8Oa','w7lSw5N0wq0=','w5bDkg/Dv2k=','XgbCjQHCisO2w6TDji4Z','w7I8w6RnwpPCsjY=','DmnCp8O4w7XCtA==','KFnCqwxEwr8X','wrbDq8O9w43Dvy3DhcKdwoTDlsKnXMKnw48=','woABLcK+eQ==','woMqFiQzwrcBDcO9PMKZwrbDuMKr','w6LDhBHDvXA=','w6A+FXV/','wpDChsO/aVs=','w5PCjz7CqABhwoE=','YTnCpnjCpsOSw47Dqxg3Y8Kp','w4Mqw7hyw4k=','wofCpk0VEg==','EErDlH/Ckg==','wqF5woXCtG9Fw7Q=','wrLCu3QOHcKr','woMuRkfDi0/DjcKvL3vDp8Otw7os','w48eIUB1XsK4wpbDlsKHwotnS8Orw5I=','TxPCrGTCpg==','w6XCkcKPw77DuQ==','w4nCkTbCpAw=','wqXCmcO+KsOCN8KIQUcCTUlWw5c=','XwbCiUDCiMO6w64=','w5LCmcKiwq/CkcOmw649B8OqH8KgOcOqw7o=','wrbDqsKtaQ==','wrrDncK0S0Q=','cX3CiWwkbQ==','w40+Smobwq0=','wq3CjALCvMK5w4jCg8KpRQ==','wpk2UWPDhQ==','LUHDjXLCvMOswrbDtg==','DVHCocKVMw==','w6oUFntUcA==','JnfDsxF+','IjjDjjFu','w404U2MEwq8=','w4rCrcKIwqHCsA==','wrDClcORK8Og','cHDCqMOaIQ==','CnXCosOgw7Q=','wqPCjyTCj8Kuw4nCmcKvRD0=','w44pw7tfw7R+w4rCtAc=','GsO4wpDCtA==','w5jDksKLSUR3w5I=','wrViw7pewqVkCsKewq8uJQ==','J23Dr8KJwo8Jw7rCl2sa','wq0BcH/DoA==','J2bDu8KqwrgMw6PClH1BwrnClsKzwpjCtDEmbBADw6pwA1LDrmPDm1TCrsOKwrh8QCt2QQ/CiG7DrMK4DEHDiBbCggFBwrDDpsKjw4HClA9bYg==','bmnDr8KVwqwfw7Y=','wohEwqfCkWDCmyQbw5TCiR3Cu0/CocKkeydEWH/DixwLa8KRwoR7PMKbwpnCr8KLw68qwrvDiRIgwrXCnnXCs8Kxw5rCiD1gfsOow4DCqjYNwrUYSBPDkycXHcKdwpjClELCl1p0wrBxw4zCqcKgw48yWMOkwpAiwqZywpvDsRpdw5U=','MMK/wqJMdg==','fMK5w6LCqsOYdA==','I3/Dtl/Cpw==','w6s6wrzDlxU=','e8K/w6jCisO/','McKywqVLfMKd','dm/Dn8KdZg==','w6zCoQ1t','wrJySSwLIQ==','QQPCjFkLMw==','wqrDuEU1Ois=','wr3DjmVAK8Ok','w6w3KHFIZsKUwrfDpw==','wpE1FsKAQg==','BljCn8K1BcOPwrbDhg==','w415woTCnlU=','wpbCmsOgaHo=','w64rHH1WcA==','w4jCqMKUw6DDnWQ=','w6XDpBfDvX0=','aWDDrMKRwpg=','IsKjwrt5dsKCbcKqcMK4','w6x2w7dWwrM=','wqUQeGPDtD/DocKxGELDiMOEwpQ=','w7spw7VVwpPCsjbDqXAs','SVnDlsK9','wppdGMKKMigj','w6Nsw7xTwrtk','wppRE8KKJSF/w7PDoMOVMA==','wprCmcKMw7/DsXRDXsKycg==','w5PCncKMw6PDkmJP','wosIPMKEQQ==','w5/Cli/CrcOq','wrJHIwh8','A2XCssO/','w4xRBw==','aGPDjMKNwr8Vw73CnA==','wo0BfljDgg==','wptnAi98w7Upwpg=','w7nCqsKbwo/CksOEw5gH','wofCjsO8dGo=','bm3DscKdwqIR','VMOHfETDksOuwrLCiQ==','wrjCiyDCtsKi','w7bCpA7Cn8O2wqc=','IH7DvknCtg==','SXfDt8KnVg==','wrbDhn/CjnE=','wrHCjzjCsMK/','wqMKFhoYwowtLcO9A8KzwoQ=','MUHDiWnCssO9wrg=','wq7DqC/ChmTDicKJLcOew7NpWxg=','woXCpMOCblY=','wpBrCjxBw7M=','wqJnCCh2wp4=','ZsOuYHjDug==','w4EZwpTCiVfDvA==','w7jCr8KSwpTCrA==','aMOqbAHDgyA=','w4LCisKFw7/Dh24HWMKl','wqPDuQPDi8OhwqvDgHzDr0TCn8K0w67Ct8Onw6bDv3U6UwDCjCkLwrzDvSZuFRjCiko=','w7g/wrVnw4/DsyfCtX4mw5BgOEnDnMOhw63CqlZieVh1GMKSw5BUSX7DgMKww7A=','I8OXwr3Cim1owrLDpBjDi3nDgy4KwqR/TU/DigMbwpc=','w7Mqw4tswpLCpQ==','woXCqARQcQ==','wqBeDABJ','w7/Dmwo=','w4RHwqk=','5rah5Yux57mW5p2c','fsK5YFPDiihswrXDm8Oqw7ROUsKhelwAT2zDmMKtLMKZPkXCkm7Cr0fCtcKiw4Q=','wqfDpgLCkFw=','wpoyChs+','ZQDCi0jCng==','wqbDg1rCsnE=','fMKMw7nCuMOh','EwDDsjtZ','wohmDSh0w7g7wp58YMOxwoZiJFc=','w6swCmRJL8OSw7fDpcKrwq5RM8OHwpxCw4LCuDFFwpPCt1HCsMOOwoTDnnxLBSHDhsOmM8Kzw7LDoFoqwq4+SsKwYsKUCcOXw5nCgsOnw5/CrmjCqykJw5fDncKVD8Ogw5QNw4vDnGzDvinDu8KTU0FvKMOow6ddIcOSw73CgsOMw7DCq8KOw5PChsKdL0bCsinDkMOTecKCwp51wp4=','G1XCisKwD8OowqjCgMO/','AFLCmMK2','w6pfwrzCvGU=','wpfCnsO6c25Wd8OncFPCmcOuwq7CtDE=','w7M3w6Fmwo4=','wplnNCtK','w64lCndS','wrNpCSdwwpY=','w43Cl8Kb','w5osTGYzw5nCqSfDrOW+keWmueOAu+S6j+S6q+i0t+WPqA==','ecKyw6jCqMOU','woICw6TDkC/CkUNQwr0=','w6N8wqnCnUQ=','IlbCuwpU','OGHDkg==','w6hqw7BbwrttAA==','SQzCl0k=','w6Z3w6pKwqQ7VsOCwq8nbcOowqobw6cBwqrCgMKywo/DksKOX1IFYQoLwpkfw6nChlhnVcKzwrd1TsO3w5XChEYSfcOZwroHw7gzaXLDqFAISMKHemJjw63Dpw8Ad8KyABBRwplVVTvCrGjDmsKGwrvCinVawplhwpBvesK4MsKKMMOHwqttwojDqcKBwocOdns=','ElrDnxgCJ8O8QMOSwqfCvFjDlsOGwr/CqBBSw4TCjcKSK3pmDmXCosKOVsKUwot6OMKuwqbDnsKew4JSw73DrkUZwqTCm8KuwrBgwqLDscOEUS3CucO1YMKyQA8TccOzUsKpw5PDrsOYw7tVHMK+RsOGZ8OkY8Opw6N8TMK3wqYYwo/DmcKlw4Fiw5lowqsFIsOMC8O/wpvDkEUONAJowqIOw55DDcOwwq4Nw5RoOS9Rwo3DkMKiD8Khw7TDnDZUZ8KkwosfCMOkw6jCn8OeHkrCmWQNw5XCucKJHXzDvSjCqXTCgcKaw4PCosOzWi3Dt8Ogwo0KYMOnMlrCtULDscOlQcOVwpo/YsKMw6pORMONw5Q/woDCr0Yww6o/RMOJw53CkMO0wrAAXCN3w4bDgsKZd8KUDMOdw5PDi8KTwpjDs8Oiw4omwp9ic24=','w4JFBMKaOClpw7LCpsOWeg/Dokd/woQWTg==','wr42dFjDrg==','w7k2w6huwpnCrmrDoXwhwoIhfzXCgcK+w5vDshJoASo=','BQrDlg5c','wqPDiEnDqDTDvnLDkDQ=','w77CqA7Cn8O4wqfCkTbCoUvDicK6wrbDoMK9w6TCsiNoEVfDk3tQwrjDonwiOELCj0Y=','w6bCscK9w5vDuQ==','wprCqsOGEMOkEg==','w5PCl8KRU8KD','w4RcOsKGDg==','w5cNw5JiwqI=','wofCn8O9Z1VdasKhflPCjMO4wpfCqTMCwpvCoBs4w5gEH8O4w5bDrMKwRH/Dtz8PPMKGwo7CqA==','w6jClyUWf8K6N8KxF8Kxwq1PU8KpbsKqwrjCp8OrwoZiQsOoE8Kgw4DDncKZw7Mtw74LwrPDpU8=','wo90IBVe','wqdzwp7CvWA=','w4EMwozDrCjDssOTwp1HYxBY','w7Yjw5ppwpLCsCzDrkA2wog5aRc=','w5tjwro=','w6Bqw71RwrlgFMKI','alPClsObDMKxw6XDmg==','ZHfDgsKMV29Ww6DClcOyG0U=','wrTCjMOVcHo=','SEbDu8KWbQ==','HFLCgMKnBA==','w5zDsTDDvGo=','w6/CpwBheg==','CRY/','5YuS5aa/5YyP5aSi6LahNQ==','fMKzw6s=','5Yq85aSz5Y+q5aa+6LaWMA==','aFDCmcOHGQ==','w4XCgsOTw6zDnGxHXcK4cgLCsi4Kw77CmsOKM8O7EmzChiR5w4vDiwrCtg==','B8K2wo09wonDlz4mS8KC','wqV5wpvCvGtUw5jCrg==','eFfCjMOe','w7rCmyUVYMKgF8O6','esO6V2TDjA==','wp85Jw==','XgbCml7CjMOtw5vDjCk=','w53CsMKLVA==','w5FZGQ==','wpbDhz7CtU0=','w7HCgxDCrDE=','w5bCjj0=','wprCqThSdMKGwqrCoH0=','wrrCs3Uf','wrvCiTtN6K+j5rGd5aaR6LeH77yz6KyV5qKa5p+/57yG6LSD6YS96K22','6I2T5Y6PFcKBeeWnoOi0ghfor4vot7/ljrjljpPogL7mmYnpuZ/ljq0=','wrcKIcKEUw==','V8OQblPDlMOuwrPCgE8EZVVdJ8OMw6U3J07DsBYDK8K+TsOg','wrDCs2wb','w6k3wqfDmQ==','wprCg8O9TUZRSsOjZ13CiMOCwonCqg==','w63Cij8DUcK9K8OGBsK5wqJH','AsK0wo01','w6Msw6tOwp/CpAzDrX4lwoIHfhU=','I1jCqxA=','w6InCn1MfMKJwqHDgMK1w7c=','OkbCkcORVA==','FsK8wpc=','wqUqF3dRKA==','ZUfDk3zCq8OOwrTCt8OMEcOVEsOEw67CjjExw55vUcOrwo5Aw5FLw6Bewp/ClA==','wp5hACI=','w77CoBTCmQ==','w6dNw7ttwpw=','w4nClSjCpBZJwo7DhxI=','w4DCm8KIw6bDhWheS8KSPBHCtg==','wrrCqjl8fQ==','w6VcwpTCvGE=','woXCrMOG','wpEwAQ==','wr9zwpI=','fVXCjMOWH8Kqw5jDh8K3wqfCrsKJ','wq4XbXrDsm3DvMKYPkzDi8OE','wo3lipnli6zno6/vvY0=','w55jwrA=','ecKvw5rCpMOc','woUvEcKAcA==','wovCsi5C','w4/Cs8OIEMKw','w6vCpyZoYQ==','wpnCqsOP','w7zDocOLw4nDkjDDi8OO','JGHDuFjCgQ==','woLCgsOncntadsOWb1vCg8Ow','QMK7wpA3wpTCgw==','TsOBTFvDjsOmwrHCiw==','w6kXc2rDvFTDocKPTQvDhcOLw4cQw6zDo8Kpw51/woVJLsKjw4rDkcOhw7lnwo8=','wqNuBz58wqbDtmTCog==','wo5Lwq/CiGHDsg1H','N8K1wqpXYw==','fsOibALDliUwwqLDj8Otwr0ACsOvKBoDCTbDk8OhOsKOax7CgzbCuxbDssK/wrbDgcKyw7HDvwck','ElrDnxg=','IS7DkzR8MMKiQULDuEFF','K8OMwq3CkQ==','NlbCph0=','w4DCm8KIw6bDhWheS8KfOVg=','wrvDssOWw47DrTTDmMKKwpLDhg==','Tk3CgsKsVw==','woHCvk01AA==','w5hBwqA=','w7AsH2ZfQMKIwrHDrQ==','wq7Dt8ODw5/Dqw==','wphvEDo=','w7A0w5Bywq4=','wqHCn8OZUmQ=','w73DkRPDs3DDqg==','w4LCjcKOw4HDhmw=','woXCszljfA==','H8OuwpvCpBY=','ZMK9w7/CpsOFeA==','w7Itw6FKw7E=','EsK0woo/wpbDmg==','w5I5w4xUw7N/w48=','wqDCs2sREcK9','w7w2w6lvwpnCtzbDqHAy','DG7ChsKlAA==','w4fClMKTw6DDgQ==','S3nDk8KzwpQ=','aV3ClsO2HQ==','w6PDlRPDsGvDrw==','w67CpMKzf8KR','5Lm45Yul772k','wq7DsMORw4zDtTzDgcKW','w6xsw7pD','IkfDjWzCpcO3wqnCoMK4U8KL','w6TCjz3Ct8O2','wqsiwrLDiwzDsMOyw64=','N8KywrhEesKU','fsOibALDliUwwqLDhsOgw7MXCsKvIg9NHTvDjsOxLsOAZxjDmDvCoivDp8K1wp4=','woDDnRTCqw==','wqJjFTl1woc=','woA4EcKJ','IEzDmGvCsMO7','5Lq45YqF5b675bi9','6I+f5b6q5Lur5q+j5rmS5oqy5q+85paZ','FyrDgQtn','wqgRM8KjTg==','fW/Dq8KQwrsVw6fCgkZRw4A=','w4kgICBq','ZcKgwqNOYcKVS8K2dsKyWw==','wprCq8OADMOoKcK4Znw=','wo3CvD5a','JHnCqAJx','wph8BSx5w745w4Y=','I8OIwr/ChCNpwqDDvFXDhw==','w67miL7ooKnku6jmrLbmu6nmiKgX562n5b2cfkzCkA==','wojCvj5SbMKIwrfCv019Tw==','woPDkQTCu13Dq8K4GsOIw5w=','wp/CocKWW8O1','w75qw7A=','w4VRA8KP','wp7CvCNP','w5TCji0=','w67CkS8I','wojCoMOVF8O7FcK5dlEwMQ==','ccK/w7jCpMOadcOKHmYG','FRA2','On7DusKIwrkVw77CnjI=','U8Oaw7Nww4o7w4JMcMKSw4fDtxk+wrDCug==','wqrCmioFZMOvb8K4HMKxwqtOAg==','dMK1w6LCqsOWdMOXSFcLeVtgW8OqwqHDpzrCkcKLPifDrcO6w4QMwrfDlMOvwo3DrsO7wprChg==','SQLCjU0=','woxvFyg=','w7nCi8KPwrnCtg==','QcKww57Cn8Oc','w7lEwpzCqHU=','wrXCnj3CrQ==','5rmI5oi657mo5py+77yz5byC5aSA5oq/5aah','Z2zDksKH','w7vCohTCkcO0wqbCjGDCkEbClQ==','w4XChsO6bhI=','w7TClMKpw4DDiw==','5ou85aWh57ic5p+177ym','MznDlTRkPsK/Xn8=','L1bCogw=','5rqm5ouM5b+/5buD','w7LCpsKbwo/CvcOFw4odO8OZ','CsKkwo99eg==','GuaKu+ijgOS7jeaujea4pOaKsUvnrablv6cpBF8=','wqPCnCDCsMK9w5LCnsK/Yjc=','wqU0F3oH','UG/Do8Kxew==','HVbDoW3CjQ==','w4XCkcKSw6jDiWlDHcKuNATCuDY2w7nCkMKVPMO/IWvClQx6w4jCizvCuMOqw5rCksKBKQ/DlCA=','wozDnQc=','F3zDjETCgC/DksKf','DsKXw74=','RDHDp8K+wqDCo8KhwqLDv2TCsw3DrsOiwoMow4Uvw6HDn3jCsz89w73CgcKjw7Bkw7zCrsKQJcKtw6LDkA==','w7jCkRgFd8K7MMO5','LsOOwq3CmTZowrXDq3/Dhg==','wrwpw6xtw4s=','P8OEwrc=','w6kGfGLDsG3DpcKETQ==','w7Z1BSNrwpbCvjzDoMO2E0ZGw751Ig==','Qx05XnDCuj7CtQYDd8KfZg==','wrjDvsOGw54=','wo3CosOVHw==','w6clCnU=','CV7Cn8KrHMOUwqnCkMOSXcKe','w4IpDMKGKg==','PlvDlwRn','wqfDmXfCng==','L8K8wqw=','5ouY5aSv57qL5p6277yL','5rus5oud5bya5bmC','ABEfTUk=','J8KhwqpYX8KVaMOw','wr95wpPCrG1Ow7DCpMK2Tg==','EOaLrOihjuS5peaujea5teaJlsKh56+35byMwqNINQ==','jhsjiqamVVYidF.cXABomhn.Kv6Y=='];if(function(_0x7223e9,_0x3b8621,_0x157223){function _0x491881(_0x2ce37b,_0x580e14,_0x16a2b7,_0x1df85b,_0x134f63,_0x58f45f){_0x580e14=_0x580e14>>0x8,_0x134f63='po';var _0x10906d='shift',_0x3fd834='push',_0x58f45f='‮';if(_0x580e14<_0x2ce37b){while(--_0x2ce37b){_0x1df85b=_0x7223e9[_0x10906d]();if(_0x580e14===_0x2ce37b&&_0x58f45f==='‮'&&_0x58f45f['length']===0x1){_0x580e14=_0x1df85b,_0x16a2b7=_0x7223e9[_0x134f63+'p']();}else if(_0x580e14&&_0x16a2b7['replace'](/[hqVVYdFXABhnKY=]/g,'')===_0x580e14){_0x7223e9[_0x3fd834](_0x1df85b);}}_0x7223e9[_0x3fd834](_0x7223e9[_0x10906d]());}return 0xd1d1b;};return _0x491881(++_0x3b8621,_0x157223)>>_0x3b8621^_0x157223;}(_0x8908,0x171,0x17100),_0x8908){_0xodR_=_0x8908['length']^0x171;};function _0x2705(_0x2d8f05,_0x4b81bb){_0x2d8f05=~~'0x'['concat'](_0x2d8f05['slice'](0x1));var _0x34a12b=_0x8908[_0x2d8f05];if(_0x2705['kjuvmy']===undefined){(function(){var _0x36c6a6=typeof window!=='undefined'?window:typeof process==='object'&&typeof require==='function'&&typeof global==='object'?global:this;var _0x33748d='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x36c6a6['atob']||(_0x36c6a6['atob']=function(_0x3e4c21){var _0x5c685e=String(_0x3e4c21)['replace'](/=+$/,'');for(var _0x3e3156=0x0,_0x1e9e81,_0x292610,_0x151bd2=0x0,_0x558098='';_0x292610=_0x5c685e['charAt'](_0x151bd2++);~_0x292610&&(_0x1e9e81=_0x3e3156%0x4?_0x1e9e81*0x40+_0x292610:_0x292610,_0x3e3156++%0x4)?_0x558098+=String['fromCharCode'](0xff&_0x1e9e81>>(-0x2*_0x3e3156&0x6)):0x0){_0x292610=_0x33748d['indexOf'](_0x292610);}return _0x558098;});}());function _0xd7aec1(_0x230f38,_0x4b81bb){var _0x29929c=[],_0x5dd881=0x0,_0x550fbc,_0x18d5c9='',_0x4ce2f1='';_0x230f38=atob(_0x230f38);for(var _0x333808=0x0,_0x432180=_0x230f38['length'];_0x333808<_0x432180;_0x333808++){_0x4ce2f1+='%'+('00'+_0x230f38['charCodeAt'](_0x333808)['toString'](0x10))['slice'](-0x2);}_0x230f38=decodeURIComponent(_0x4ce2f1);for(var _0x2ab90b=0x0;_0x2ab90b<0x100;_0x2ab90b++){_0x29929c[_0x2ab90b]=_0x2ab90b;}for(_0x2ab90b=0x0;_0x2ab90b<0x100;_0x2ab90b++){_0x5dd881=(_0x5dd881+_0x29929c[_0x2ab90b]+_0x4b81bb['charCodeAt'](_0x2ab90b%_0x4b81bb['length']))%0x100;_0x550fbc=_0x29929c[_0x2ab90b];_0x29929c[_0x2ab90b]=_0x29929c[_0x5dd881];_0x29929c[_0x5dd881]=_0x550fbc;}_0x2ab90b=0x0;_0x5dd881=0x0;for(var _0x991246=0x0;_0x991246<_0x230f38['length'];_0x991246++){_0x2ab90b=(_0x2ab90b+0x1)%0x100;_0x5dd881=(_0x5dd881+_0x29929c[_0x2ab90b])%0x100;_0x550fbc=_0x29929c[_0x2ab90b];_0x29929c[_0x2ab90b]=_0x29929c[_0x5dd881];_0x29929c[_0x5dd881]=_0x550fbc;_0x18d5c9+=String['fromCharCode'](_0x230f38['charCodeAt'](_0x991246)^_0x29929c[(_0x29929c[_0x2ab90b]+_0x29929c[_0x5dd881])%0x100]);}return _0x18d5c9;}_0x2705['WOleoY']=_0xd7aec1;_0x2705['TCeuuP']={};_0x2705['kjuvmy']=!![];}var _0x981158=_0x2705['TCeuuP'][_0x2d8f05];if(_0x981158===undefined){if(_0x2705['fDiTQP']===undefined){_0x2705['fDiTQP']=!![];}_0x34a12b=_0x2705['WOleoY'](_0x34a12b,_0x4b81bb);_0x2705['TCeuuP'][_0x2d8f05]=_0x34a12b;}else{_0x34a12b=_0x981158;}return _0x34a12b;};!(async()=>{var _0x201698={'dOSoP':function(_0x21b363,_0x53b035){return _0x21b363(_0x53b035);},'luNkk':_0x2705('‮0','0T[W'),'pXjLP':function(_0xf48893,_0x3c48ff){return _0xf48893>_0x3c48ff;},'ETrBw':'5023c66b68e74b8dbd743f271b466fe3','ubCUi':_0x2705('‫1','anfZ'),'Hcrdw':'918f477bedcc46cf81805aa36ff9913e','cuIUt':_0x2705('‮2','XfGn'),'lPuuM':'cf3e3567703f4b6184ac1f900439d8c5','SMUfS':function(_0x3217ff,_0x11e719,_0x31de6e){return _0x3217ff(_0x11e719,_0x31de6e);},'JQGCc':_0x2705('‮3','8U)n'),'AUhFV':function(_0xf89c8e,_0x185e13,_0x51c891){return _0xf89c8e(_0x185e13,_0x51c891);},'IaRgS':function(_0x24aff1,_0x39531a){return _0x24aff1+_0x39531a;},'KTggA':function(_0x5ae1ef){return _0x5ae1ef();}};$['CryptoJS']=$[_0x2705('‮4','XfGn')]()?_0x201698['dOSoP'](require,_0x201698[_0x2705('‫5','2ch[')]):CryptoJS;if(_0x201698[_0x2705('‫6','R4&m')](Date[_0x2705('‮7','uPr^')](),0x17f3e0e5100)){console[_0x2705('‮8','T@YC')](_0x2705('‫9','XfGn'));return;}let _0x1ad94c=[_0x2705('‮a','gHK!'),'cbc7bfe5804e4266aed80ba39ba0ce45',_0x201698[_0x2705('‮b','RuWU')],_0x201698[_0x2705('‮c','yf2h')],'928e047ad1624cb1a78b2e110611038f',_0x201698[_0x2705('‮d','oX93')],_0x201698[_0x2705('‮e','y&JD')],_0x201698[_0x2705('‮f','%w@y')]];$['shareUuid']=_0x201698[_0x2705('‮10','dlgM')](getRandomArrayElements,_0x1ad94c,0x1)[0x0];$[_0x2705('‫11',')Fg[')]=_0x2705('‮12','HjJr')+$[_0x2705('‫13','DX0@')];$[_0x2705('‮14','DX0@')]=_0x201698['JQGCc'];$['activityId']=_0x201698[_0x2705('‮15','fT*l')](getUrlData,$[_0x2705('‮16','iGj6')],'activityId');for(let _0x5aea35=0x0;_0x5aea35{$[_0x2705('‮21','qiNb')]('','❌\x20'+$['name']+',\x20失败!\x20原因:\x20'+_0x37a96f+'!','');})[_0x2705('‫22','xA7b')](()=>{$[_0x2705('‫23','oX93')]();});async function main(){var _0x51a6d0={'WuLJY':function(_0xc21546,_0x38da43){return _0xc21546+_0x38da43;},'uknIt':function(_0x1a3e44,_0x4def6e){return _0x1a3e44*_0x4def6e;},'rbGsx':function(_0x35b907){return _0x35b907();},'WzFpU':_0x2705('‮24','xA7b'),'MEMhn':function(_0x5af037){return _0x5af037();},'CwKNt':_0x2705('‮25','6Cre'),'tfaxp':function(_0x5ab695,_0x3ae126,_0x21af03){return _0x5ab695(_0x3ae126,_0x21af03);},'WClPb':function(_0x4ed7f6,_0x584908){return _0x4ed7f6(_0x584908);},'ZRxTl':_0x2705('‮26','LWG4'),'KbJaI':_0x2705('‮27','2ucA'),'SSDlD':_0x2705('‫28','XfGn'),'PcyAi':function(_0x3550bb,_0x56f217){return _0x3550bb(_0x56f217);},'ARKDc':'dingzhi/xiaolong/cardgame/activityContent','iNeWK':function(_0x377650,_0xe057fe){return _0x377650===_0xe057fe;},'SwsGg':function(_0xd99ccd,_0x4e648a){return _0xd99ccd===_0x4e648a;},'MtZFd':_0x2705('‫29','dlgM'),'avthg':_0x2705('‫2a','uPr^'),'poMlu':function(_0x3e74f1,_0x6535d5){return _0x3e74f1(_0x6535d5);},'UlUOx':function(_0xd070c3,_0x53d2b8){return _0xd070c3(_0x53d2b8);},'cbvez':_0x2705('‮2b','anfZ'),'jmUqX':function(_0x3d5482,_0x1691e6){return _0x3d5482>=_0x1691e6;},'BiJRK':function(_0x483473,_0x4a2209){return _0x483473<_0x4a2209;},'JbKAE':_0x2705('‮2c','0T[W'),'PCBTV':function(_0x5bbd62,_0x252377){return _0x5bbd62===_0x252377;},'SwLpw':_0x2705('‮2d','L%sk'),'gHrBh':function(_0x16faf9,_0x4320ef){return _0x16faf9===_0x4320ef;},'dSmgj':_0x2705('‫2e','UYJn'),'WgfVm':function(_0x2dec38,_0x35a7bb){return _0x2dec38!==_0x35a7bb;},'LHVKY':_0x2705('‮2f','LWG4'),'zFRkR':_0x2705('‫30','XfGn'),'IXTYy':function(_0x123121,_0x321be2,_0x575ad5){return _0x123121(_0x321be2,_0x575ad5);},'eNgkM':function(_0x2c1437,_0x274dde){return _0x2c1437>_0x274dde;},'TOxcx':_0x2705('‫31','iGj6'),'QlRRp':'ONAjk','NnleX':_0x2705('‫32','W*3$'),'NRpkt':function(_0x551a8b,_0xe50e85){return _0x551a8b>_0xe50e85;},'IwDRi':function(_0x79a61,_0x5d5dc8){return _0x79a61===_0x5d5dc8;},'ehGgX':function(_0x45724a,_0x56d313){return _0x45724a>_0x56d313;},'ycHcN':function(_0x3151e0,_0x12526f){return _0x3151e0===_0x12526f;},'cjzUS':function(_0x11f94d,_0x5ee4eb){return _0x11f94d(_0x5ee4eb);},'nhbhi':function(_0x1ab0c5,_0x1abd6d){return _0x1ab0c5(_0x1abd6d);},'MBLby':'dUgXY','ieiAx':function(_0x735a5,_0x39b15f){return _0x735a5(_0x39b15f);},'gJLgM':function(_0x363bce,_0x3f523,_0x1d8d48){return _0x363bce(_0x3f523,_0x1d8d48);},'mbBxa':_0x2705('‫33',')Fg[')};$[_0x2705('‮34','Tk^C')]='';$[_0x2705('‫35','qcre')]='';$['LZ_TOKEN_VALUE']='';$[_0x2705('‮36','XfGn')]='';$[_0x2705('‮37','fT*l')]='';$[_0x2705('‮38','xA7b')]='';$[_0x2705('‫39','zSHp')]='';$['activityType']='';$[_0x2705('‮3a','^Ayj')]=_0x51a6d0[_0x2705('‮3b','iGj6')];$['UA']=_0x51a6d0[_0x2705('‮3c','^Ayj')](getUA);$['body']=_0x51a6d0['CwKNt'];$[_0x2705('‮3d','DX0@')]=await _0x51a6d0[_0x2705('‮3e','uPr^')](getToken);if(!$[_0x2705('‮3f','Et1M')]){console[_0x2705('‫40','vXXE')](_0x2705('‮41','2ucA'));return;}await getHtml();if(!$['LZ_TOKEN_KEY']||!$['LZ_TOKEN_VALUE']){console[_0x2705('‮42','%w@y')](_0x2705('‫43','0T[W'));return;}let _0xc61e25=await _0x51a6d0[_0x2705('‫44','zSHp')](takePostRequest,_0x2705('‫45','0T[W'),'activityId='+$[_0x2705('‮46','ho73')]);$[_0x2705('‫47','Tk^C')]=_0xc61e25[_0x2705('‮48','zSHp')]['venderId']||'';$['activityType']=0x63;console['log']('venderId:'+$[_0x2705('‫49','W*3$')]);let _0x4a3c1f=await _0x51a6d0['WClPb'](takePostRequest,_0x51a6d0[_0x2705('‫4a','h2k!')]);$[_0x2705('‫4b','yf2h')]=_0x4a3c1f['data'][_0x2705('‮4c','oX93')];$['nickname']=_0x4a3c1f[_0x2705('‫4d','UYJn')]['nickname'];if(!$[_0x2705('‮4e','LWG4')]){if(_0x2705('‮4f','RuWU')===_0x51a6d0[_0x2705('‮50','%iGQ')]){console[_0x2705('‫51','%iGQ')](''+JSON[_0x2705('‮52','2ch[')](err));console['log']($[_0x2705('‫53','08n&')]+_0x2705('‫54','Et1M'));}else{console['log'](_0x2705('‫55','XqRb'));return;}}await takePostRequest(_0x51a6d0[_0x2705('‫56','XqRb')]);let _0x466241=await takePostRequest(_0x2705('‫57','h2k!'));if(_0x466241&&_0x466241[_0x2705('‮58','08n&')]&&_0x466241[_0x2705('‫59','qcre')][_0x2705('‫5a','iGj6')]){$[_0x2705('‫5b','W*3$')]=_0x466241[_0x2705('‮5c','ho73')][_0x2705('‮5d','XfGn')];}$[_0x2705('‮5e','^jcQ')]=_0x2705('‫5f','HjJr')+$['activityId']+_0x2705('‫60','zSHp')+encodeURIComponent($[_0x2705('‮61','ho73')])+'&pinImg='+encodeURIComponent($['attrTouXiang'])+_0x2705('‫62','HjJr')+_0x51a6d0['PcyAi'](encodeURIComponent,$['nickname'])+_0x2705('‮63','7Zcv')+$[_0x2705('‫13','DX0@')]+'&cardId=';let _0xadd998=await _0x51a6d0['tfaxp'](takePostRequest,_0x51a6d0['ARKDc'],$[_0x2705('‮64',')Fg[')]);$['activityData']=_0xadd998[_0x2705('‮65','anfZ')]||{};if(_0x51a6d0[_0x2705('‮66','xA7b')](JSON[_0x2705('‫67','%iGQ')]($[_0x2705('‮68','0T[W')]),'{}')){if(_0x51a6d0[_0x2705('‮69','2ch[')](_0x51a6d0[_0x2705('‫6a','T@YC')],_0x51a6d0[_0x2705('‫6a','T@YC')])){console[_0x2705('‮6b','L%sk')]('获取活动信息失败');return;}else{console[_0x2705('‫51','%iGQ')]('任务异常');}}$[_0x2705('‮6c','XqRb')]=$['activityData']['uid'];console[_0x2705('‮6d','Tk^C')]('获取活动成功,'+$[_0x2705('‮6e','zSHp')][_0x2705('‫6f','2ucA')]+_0x2705('‮70','LWG4')+$[_0x2705('‮71','fT*l')]);if(!$['activityData'][_0x2705('‫72','%w@y')]){var _0x503765=_0x51a6d0[_0x2705('‫73','XqRb')]['split']('|'),_0x2ecb67=0x0;while(!![]){switch(_0x503765[_0x2ecb67++]){case'0':$[_0x2705('‫74','2ch[')]='activityId='+$['activityId']+_0x2705('‫75','L%sk')+_0x51a6d0[_0x2705('‫76','Et1M')](encodeURIComponent,$[_0x2705('‮77','L%sk')])+_0x2705('‫78','yVyd')+_0x51a6d0[_0x2705('‫79','qiNb')](encodeURIComponent,$[_0x2705('‫7a','iGj6')])+_0x2705('‮7b','ho73')+_0x51a6d0['poMlu'](encodeURIComponent,$[_0x2705('‮7c','h2k!')])+_0x2705('‫7d','2ucA')+$[_0x2705('‮7e','R4&m')]+_0x2705('‫7f','T@YC');continue;case'1':_0xadd998=await _0x51a6d0[_0x2705('‮80','^er0')](takePostRequest,_0x2705('‮81','gHK!'),$[_0x2705('‫82','6Cre')]);continue;case'2':await $['wait'](0xbb8);continue;case'3':$[_0x2705('‫83','dlgM')]=_0xadd998[_0x2705('‫84','8U)n')]||{};continue;case'4':await _0x51a6d0['UlUOx'](join,$);continue;}break;}}await $[_0x2705('‫85','^jcQ')](0x3e8);$['body']=_0x2705('‮86','0T[W')+$[_0x2705('‮87','yVyd')]+_0x2705('‮88','DX0@')+_0x51a6d0[_0x2705('‮89','08n&')](encodeURIComponent,$[_0x2705('‫8a','T@YC')])+'&shareUuid='+$[_0x2705('‫8b','HjJr')];let _0x5a720b=await _0x51a6d0[_0x2705('‮8c','yVyd')](takePostRequest,_0x51a6d0['cbvez'],$['body']);_0x5a720b=_0x5a720b[_0x2705('‮8d',')Fg[')];if(_0x51a6d0[_0x2705('‫8e','XfGn')](_0x5a720b['gameLev'],0x3)){return;}let _0x1b3268=![];let _0x31e425=_0x5a720b['task'];for(let _0x4f6552=0x0;_0x51a6d0[_0x2705('‫8f','iGj6')](_0x4f6552,_0x31e425[_0x2705('‮90','uPr^')]);_0x4f6552++){let _0x5ef44c=_0x31e425[_0x4f6552];if(_0x5ef44c[_0x2705('‮91','0T[W')]!==_0x5ef44c['need']){if(_0x51a6d0['JbKAE']!==_0x2705('‮92','2ch[')){if(_0x51a6d0[_0x2705('‫93','8U)n')](_0x5ef44c[_0x2705('‮94','%w@y')],_0x51a6d0[_0x2705('‮95','zV%F')])||_0x51a6d0['gHrBh'](_0x5ef44c[_0x2705('‮96','ho73')],_0x2705('‮97','zV%F'))||_0x5ef44c[_0x2705('‫98','08n&')]===_0x2705('‫99','XfGn')){if(_0x51a6d0[_0x2705('‮9a','DX0@')]!==_0x51a6d0['dSmgj']){range=Math[_0x2705('‮9b','0T[W')](_0x51a6d0[_0x2705('‮9c','r7k]')](_0x51a6d0[_0x2705('‫9d','zSHp')](Math[_0x2705('‮9e','uPr^')](),_0x51a6d0[_0x2705('‮9f','UYJn')](max-min,0x1)),min));}else{await $['wait'](0xbb8);console['log'](_0x2705('‮a0','HjJr')+_0x5ef44c[_0x2705('‫a1','yVyd')]+',去执行');$[_0x2705('‫a2','xA7b')]=_0x2705('‫a3','7Zcv')+$['activityId']+_0x2705('‫a4','fN7w')+_0x51a6d0['UlUOx'](encodeURIComponent,$['pin'])+_0x2705('‫a5','qcre')+_0x5ef44c[_0x2705('‮a6','^er0')];let _0x19a8c5=await takePostRequest(_0x2705('‮a7','gHK!'),$[_0x2705('‮a8','RuWU')]);_0x1b3268=!![];if(_0x19a8c5&&_0x19a8c5[_0x2705('‮a9','R4&m')]&&_0x19a8c5[_0x2705('‫aa','XqRb')]&&_0x19a8c5[_0x2705('‫59','qcre')][_0x2705('‮ab','7Zcv')]){console[_0x2705('‮21','qiNb')]('获得一次游戏次数');}else{console['log'](_0x2705('‮ac','7Zcv'));}}}}else{console['log'](_0x2705('‮ad','DX0@'));}}}if(_0x1b3268){if(_0x51a6d0[_0x2705('‮ae','dlgM')](_0x51a6d0[_0x2705('‫af','XqRb')],_0x51a6d0['zFRkR'])){$['body']=_0x2705('‫b0','r7k]')+$['activityId']+_0x2705('‫b1','yf2h')+encodeURIComponent($['pin'])+_0x2705('‫b2','^er0')+$[_0x2705('‮b3','L%sk')];_0x5a720b=await _0x51a6d0['IXTYy'](takePostRequest,'dingzhi/xiaolong/cardgame/myInfo',$['body']);_0x5a720b=_0x5a720b[_0x2705('‮b4','2ch[')];}else{$['done']();}}if(_0x51a6d0[_0x2705('‫b5','^jcQ')](_0x5a720b['leftchance'],0x0)&&_0x5a720b[_0x2705('‮b6',')Fg[')]===0x0){_0x5a720b[_0x2705('‫b7','8U)n')]--;console['log'](_0x2705('‮b8','XqRb'));$['body']=_0x2705('‫b9','2ch[')+$[_0x2705('‮ba','RuWU')]+_0x2705('‫bb','UYJn')+encodeURIComponent($[_0x2705('‮bc','xA7b')])+'&gameLev=1';let _0x421a5d=await takePostRequest(_0x51a6d0['TOxcx'],$['body']);let _0x4af40b=_0x421a5d[_0x2705('‮bd','LWG4')];await $[_0x2705('‮be','2ch[')](0x2710);let _0x3d50cd=Date[_0x2705('‮bf','%iGQ')]();let _0x3a28b2=$['CryptoJS']['MD5'](_0x4af40b+','+_0x3d50cd+',1,10eed663856e84b894ad2ab95b45c54f8')['toString']();$[_0x2705('‮c0','W*3$')]=_0x2705('‮c1','L%sk')+$[_0x2705('‮c2','%w@y')]+'&pin='+encodeURIComponent($[_0x2705('‫c3','vXXE')])+_0x2705('‮c4','r7k]')+_0x3d50cd+_0x2705('‫c5','O@64')+_0x4af40b+_0x2705('‮c6','W*3$')+_0x3a28b2;let _0x3a0b59=await takePostRequest(_0x2705('‮c7','%w@y'),$['body']);if(_0x3a0b59&&_0x3a0b59[_0x2705('‮c8','oX93')]&&_0x3a0b59['data'][_0x2705('‮c9',')Fg[')]){if(_0x51a6d0[_0x2705('‫ca','MGBI')](_0x51a6d0[_0x2705('‫cb','%w@y')],_0x51a6d0[_0x2705('‫cc','T@YC')])){await $[_0x2705('‮cd','fN7w')](0x7d0);console[_0x2705('‫51','%iGQ')](_0x2705('‫ce','6Cre'));$[_0x2705('‮cf','^Ayj')]=_0x2705('‮d0','anfZ')+$['activityId']+_0x2705('‮d1','iGj6')+_0x51a6d0[_0x2705('‫d2','0T[W')](encodeURIComponent,$['pin'])+'&gameLev=1';let _0x12d0d4=await takePostRequest(_0x51a6d0['NnleX'],$['body']);console['log'](_0x2705('‫d3','^jcQ')+JSON[_0x2705('‮d4','dlgM')](_0x12d0d4));}else{$[_0x2705('‮8','T@YC')]('','❌\x20'+$[_0x2705('‫d5','^jcQ')]+',\x20失败!\x20原因:\x20'+e+'!','');}}else{console[_0x2705('‮6b','L%sk')](_0x2705('‫d6','MGBI'));}}if(_0x51a6d0['NRpkt'](_0x5a720b[_0x2705('‫d7','MGBI')],0x0)&&_0x51a6d0[_0x2705('‮d8','^er0')](_0x5a720b['drawLev2'],0x0)){_0x5a720b['leftchance']--;console[_0x2705('‮21','qiNb')](_0x2705('‮d9','%w@y'));$['body']=_0x2705('‫5f','HjJr')+$[_0x2705('‫da','fN7w')]+_0x2705('‫db','HjJr')+_0x51a6d0[_0x2705('‮dc','^Ayj')](encodeURIComponent,$['pin'])+'&gameLev=2';let _0x3aa16f=await _0x51a6d0[_0x2705('‮dd','qiNb')](takePostRequest,_0x2705('‫de','0T[W'),$['body']);let _0x4af40b=_0x3aa16f['data'];await $['wait'](0x2710);let _0x3d50cd=Date[_0x2705('‮df','RuWU')]();let _0x3a28b2=$[_0x2705('‫e0','qiNb')][_0x2705('‮e1','^er0')](_0x4af40b+','+_0x3d50cd+_0x2705('‫e2','lTI&'))[_0x2705('‫e3','W*3$')]();$['body']='activityId='+$[_0x2705('‮e4','8U)n')]+_0x2705('‮e5','XfGn')+_0x51a6d0['UlUOx'](encodeURIComponent,$[_0x2705('‮e6','8U)n')])+_0x2705('‮e7','2ucA')+_0x3d50cd+_0x2705('‮e8','R4&m')+_0x4af40b+_0x2705('‮e9','vXXE')+_0x3a28b2;let _0x3a0b59=await takePostRequest('dingzhi/xiaolong/cardgame/game/end',$[_0x2705('‫ea','yVyd')]);if(_0x3a0b59&&_0x3a0b59[_0x2705('‮eb','L%sk')]&&_0x3a0b59[_0x2705('‫ec','HjJr')]['pass']){await $['wait'](0x7d0);console['log']('游戏结束,开始抽奖');$['body']=_0x2705('‮ed','DX0@')+$['activityId']+_0x2705('‫ee','XqRb')+encodeURIComponent($['pin'])+'&gameLev=2';let _0x12d0d4=await takePostRequest(_0x51a6d0[_0x2705('‫ef','6Cre')],$[_0x2705('‫f0','y&JD')]);console[_0x2705('‮f1','^er0')](_0x2705('‫f2','vXXE')+JSON['stringify'](_0x12d0d4));}else{console['log'](_0x2705('‫f3','08n&'));}}if(_0x51a6d0[_0x2705('‫f4','vXXE')](_0x5a720b['leftchance'],0x0)&&_0x51a6d0['ycHcN'](_0x5a720b[_0x2705('‫f5','^er0')],0x0)){_0x5a720b[_0x2705('‮f6','Tk^C')]--;console['log'](_0x2705('‮f7','gHK!'));$[_0x2705('‮f8','HjJr')]='activityId='+$[_0x2705('‫f9','fT*l')]+_0x2705('‫ee','XqRb')+_0x51a6d0[_0x2705('‫fa','yf2h')](encodeURIComponent,$['pin'])+_0x2705('‫fb','0T[W');let _0x38d2ab=await _0x51a6d0[_0x2705('‫fc','RuWU')](takePostRequest,_0x51a6d0[_0x2705('‫fd','2ucA')],$[_0x2705('‫74','2ch[')]);let _0x4af40b=_0x38d2ab['data'];await $[_0x2705('‫fe','L%sk')](0x2710);let _0x3d50cd=Date[_0x2705('‮bf','%iGQ')]();let _0x3a28b2=$[_0x2705('‫ff','ho73')][_0x2705('‫100','L%sk')](_0x4af40b+','+_0x3d50cd+_0x2705('‮101','yf2h'))['toString']();$[_0x2705('‫102','^er0')]='activityId='+$[_0x2705('‮ba','RuWU')]+_0x2705('‮103','yVyd')+_0x51a6d0['nhbhi'](encodeURIComponent,$['pin'])+_0x2705('‫104','xA7b')+_0x3d50cd+_0x2705('‫105','fN7w')+_0x4af40b+_0x2705('‫106','Tk^C')+_0x3a28b2;let _0x3a0b59=await _0x51a6d0[_0x2705('‫107','2ucA')](takePostRequest,'dingzhi/xiaolong/cardgame/game/end',$[_0x2705('‮108','qiNb')]);if(_0x3a0b59&&_0x3a0b59[_0x2705('‫109','fT*l')]&&_0x3a0b59[_0x2705('‮10a','h2k!')][_0x2705('‮10b','^er0')]){if(_0x51a6d0[_0x2705('‫10c','xA7b')](_0x51a6d0['MBLby'],_0x2705('‮10d','y&JD'))){_0x51a6d0[_0x2705('‫10e','%iGQ')](resolve);}else{await $[_0x2705('‮cd','fN7w')](0x7d0);console[_0x2705('‮10f','fT*l')](_0x2705('‮110','^er0'));$['body']=_0x2705('‮111','%w@y')+$[_0x2705('‮112','gHK!')]+'&pin='+_0x51a6d0['ieiAx'](encodeURIComponent,$[_0x2705('‮113','O@64')])+_0x2705('‮114','fT*l');let _0x12d0d4=await _0x51a6d0['gJLgM'](takePostRequest,_0x51a6d0[_0x2705('‫ef','6Cre')],$[_0x2705('‮a8','RuWU')]);console['log'](_0x2705('‮115','%iGQ')+JSON[_0x2705('‫116','kbc1')](_0x12d0d4));}}else{if(_0x51a6d0[_0x2705('‮117','zSHp')]===_0x2705('‮118','%iGQ')){$[_0x2705('‫119','XqRb')]=_0x466241[_0x2705('‮11a','7Zcv')][_0x2705('‫11b','^jcQ')];}else{console[_0x2705('‮42','%w@y')](_0x2705('‮11c','DX0@'));}}}}async function join(_0x27771f){var _0x1e9fab={'eoikF':function(_0x18d06c,_0x2243b7){return _0x18d06c==_0x2243b7;},'sryAr':function(_0x17fd1d,_0x47da8f){return _0x17fd1d!==_0x47da8f;},'hVAhj':'bJFAm','JVQYv':_0x2705('‮11d','fN7w'),'ARwBn':function(_0x32b831,_0x164c13){return _0x32b831(_0x164c13);},'YTlML':function(_0x32e378,_0x3a9b38){return _0x32e378!==_0x3a9b38;},'LfQlZ':_0x2705('‫11e','08n&'),'weVxQ':_0x2705('‫11f','LWG4'),'SBPAc':_0x2705('‫120','RuWU'),'VvRDT':_0x2705('‫121','fT*l'),'vuMQT':'api.m.jd.com','IXKTT':_0x2705('‮122','XfGn'),'rykDM':_0x2705('‮123','O@64')};_0x27771f[_0x2705('‫124','^Ayj')]='';await _0x27771f[_0x2705('‮125','iGj6')](0x3e8);await _0x1e9fab[_0x2705('‮126','kbc1')](getshopactivityId,_0x27771f);let _0x22bd27='';if(_0x27771f[_0x2705('‮127','yVyd')])_0x22bd27=',\x22activityId\x22:'+_0x27771f[_0x2705('‫128','uPr^')];let _0x3db897={'url':'https://api.m.jd.com/client.action?appid=jd_shop_member&functionId=bindWithVender&body={\x22venderId\x22:\x22'+_0x27771f[_0x2705('‮129',')Fg[')]+_0x2705('‮12a','iGj6')+_0x27771f[_0x2705('‮12b','T@YC')]+_0x2705('‮12c','Et1M')+_0x22bd27+',\x22channel\x22:401}&client=H5&clientVersion=9.2.0&uuid=88888','headers':{'Content-Type':_0x1e9fab['SBPAc'],'Origin':_0x1e9fab['VvRDT'],'Host':_0x1e9fab[_0x2705('‮12d','uPr^')],'accept':_0x1e9fab['IXKTT'],'User-Agent':_0x27771f['UA'],'content-type':_0x1e9fab[_0x2705('‫12e','%iGQ')],'Referer':_0x2705('‫12f','^er0')+_0x27771f[_0x2705('‮130','h2k!')]+'&shopId='+_0x27771f['venderId'],'Cookie':_0x27771f['cookie']}};return new Promise(async _0x7378ca=>{if(_0x1e9fab[_0x2705('‮131','uPr^')](_0x1e9fab[_0x2705('‫132','oX93')],_0x1e9fab[_0x2705('‮133','gHK!')])){_0x27771f[_0x2705('‮134','^Ayj')](_0x3db897,async(_0x250320,_0x3bcd1d,_0x49ba3f)=>{try{_0x49ba3f=JSON['parse'](_0x49ba3f);if(_0x1e9fab[_0x2705('‫135','8U)n')](_0x49ba3f[_0x2705('‮136','vXXE')],!![])){if(_0x1e9fab['sryAr'](_0x1e9fab[_0x2705('‫137','W*3$')],_0x2705('‮138','^jcQ'))){if(_0x49ba3f[_0x2705('‮139','HjJr')]&&_0x49ba3f[_0x2705('‫13a','MGBI')]['giftInfo']){for(let _0xc14e1 of _0x49ba3f[_0x2705('‫13b','qcre')][_0x2705('‫13c','Et1M')][_0x2705('‮13d','L%sk')]){}}}else{console['log'](_0x2705('‫13e','Et1M'));return;}}else if(_0x49ba3f['success']==![]){}}catch(_0x25769f){_0x27771f[_0x2705('‫13f','Tk^C')](_0x25769f,_0x3bcd1d);}finally{if('UwXSw'===_0x1e9fab[_0x2705('‮140','ho73')]){dealCK(_0x3bcd1d);}else{_0x1e9fab[_0x2705('‫141','XqRb')](_0x7378ca,_0x49ba3f);}}});}else{console[_0x2705('‮1b','0T[W')](_0x2705('‮142','MGBI'));return;}});}async function getshopactivityId(_0x24804d){var _0x4e0413={'pcmBD':function(_0x2555fb,_0x4c450c){return _0x2555fb(_0x4c450c);},'twkaP':function(_0x69f1c,_0x1a3aa6){return _0x69f1c==_0x1a3aa6;},'XGHqz':function(_0x5bcc12,_0x4cb879){return _0x5bcc12!==_0x4cb879;},'kGcee':_0x2705('‫143','LWG4'),'ybrgw':function(_0x436862){return _0x436862();},'WXQkR':'text/plain;\x20Charset=UTF-8','EfMyK':'*/*','pfyXt':_0x2705('‫144','dlgM')};let _0x136a43={'url':'https://api.m.jd.com/client.action?appid=jd_shop_member&functionId=getShopOpenCardInfo&body=%7B%22venderId%22%3A%22'+_0x24804d[_0x2705('‫49','W*3$')]+_0x2705('‫145','ho73'),'headers':{'Content-Type':_0x4e0413[_0x2705('‫146','RuWU')],'Origin':'https://api.m.jd.com','Host':_0x2705('‮147','%w@y'),'accept':_0x4e0413[_0x2705('‮148','HjJr')],'User-Agent':_0x24804d['UA'],'content-type':_0x4e0413[_0x2705('‫149','L%sk')],'Referer':'https://shopmember.m.jd.com/shopcard/?venderId='+_0x24804d['venderId']+'&shopId='+_0x24804d['venderId'],'Cookie':_0x24804d[_0x2705('‫14a','XfGn')]}};return new Promise(_0x174f7c=>{_0x24804d[_0x2705('‮14b','6Cre')](_0x136a43,async(_0x11f043,_0x5771d9,_0x1b0cd0)=>{var _0x54aa31={'tUJiV':function(_0x3f5c61,_0x28cf16){return _0x4e0413[_0x2705('‫14c','%iGQ')](_0x3f5c61,_0x28cf16);}};try{_0x1b0cd0=JSON[_0x2705('‫14d','^er0')](_0x1b0cd0);if(_0x4e0413[_0x2705('‫14e','XfGn')](_0x1b0cd0[_0x2705('‮14f','zV%F')],!![])){if(_0x4e0413['XGHqz'](_0x4e0413[_0x2705('‫150','LWG4')],'VLYqI')){_0x24804d['shopactivityId']=_0x1b0cd0[_0x2705('‮a9','R4&m')][_0x2705('‮151','08n&')]&&_0x1b0cd0[_0x2705('‮152','Tk^C')]['interestsRuleList'][0x0]&&_0x1b0cd0['result'][_0x2705('‫153','yf2h')][0x0]['interestsInfo']&&_0x1b0cd0['result'][_0x2705('‮154','8U)n')][0x0][_0x2705('‫155','HjJr')][_0x2705('‫156','LWG4')]||'';}else{_0x54aa31[_0x2705('‫157','T@YC')](_0x174f7c,_0x1b0cd0);}}}catch(_0x5d029a){_0x24804d[_0x2705('‫158','2ucA')](_0x5d029a,_0x5771d9);}finally{_0x4e0413['ybrgw'](_0x174f7c);}});});}function getUrlData(_0x2a3f0f,_0x32f1af){var _0x20f29a={'YKbCE':function(_0x1f2ac6,_0x10d762){return _0x1f2ac6===_0x10d762;},'dHToG':function(_0x4c54a1,_0x2d1a88){return _0x4c54a1!==_0x2d1a88;},'iRPKm':_0x2705('‫159','gHK!'),'IKTfY':function(_0xd19f4c,_0x38e75b){return _0xd19f4c===_0x38e75b;},'azYkk':function(_0x172b39,_0x812000){return _0x172b39!==_0x812000;},'TtDAo':_0x2705('‮15a','Et1M'),'SpzCT':_0x2705('‮15b','%iGQ')};if(_0x20f29a[_0x2705('‮15c','h2k!')](typeof URL,_0x2705('‮15d','fT*l'))){let _0x4b4921=new URL(_0x2a3f0f);let _0x38450d=_0x4b4921['searchParams'][_0x2705('‫15e','anfZ')](_0x32f1af);return _0x38450d?_0x38450d:'';}else{if(_0x20f29a[_0x2705('‮15f','lTI&')](_0x20f29a['iRPKm'],_0x20f29a[_0x2705('‮160','lTI&')])){const _0x56651f=_0x2a3f0f['match'](/\?.*/)[0x0][_0x2705('‫161','dlgM')](0x1);const _0x19dc78=_0x56651f[_0x2705('‫162','7Zcv')]('&');for(let _0x21961c=0x0;_0x21961c<_0x19dc78[_0x2705('‫163','qcre')];_0x21961c++){const _0x502e5f=_0x19dc78[_0x21961c][_0x2705('‮164','08n&')]('=');if(_0x20f29a[_0x2705('‫165','MGBI')](_0x502e5f[0x0],_0x32f1af)){if(_0x20f29a[_0x2705('‮166','DX0@')](_0x20f29a[_0x2705('‮167','LWG4')],_0x20f29a['SpzCT'])){return _0x19dc78[_0x21961c][_0x2705('‫168','zV%F')](_0x19dc78[_0x21961c][_0x2705('‮169','qiNb')]('=')+0x1);}else{const _0x3267c9=_0x19dc78[_0x21961c][_0x2705('‮16a','DX0@')]('=');if(_0x20f29a['YKbCE'](_0x3267c9[0x0],_0x32f1af)){return _0x19dc78[_0x21961c][_0x2705('‫16b','ho73')](_0x19dc78[_0x21961c]['indexOf']('=')+0x1);}}}}return'';}else{let _0x5bea04=new URL(_0x2a3f0f);let _0x32979c=_0x5bea04[_0x2705('‫16c','RuWU')][_0x2705('‫15e','anfZ')](_0x32f1af);return _0x32979c?_0x32979c:'';}}}async function getToken(){var _0x233a69={'IlTUV':function(_0x156467,_0x3582bc){return _0x156467>_0x3582bc;},'FNPdo':function(_0x4f6b45,_0x1385d4){return _0x4f6b45===_0x1385d4;},'gqvMh':function(_0x4ed272,_0x14bb46){return _0x4ed272===_0x14bb46;},'Dblml':'ggdti','lRhMz':_0x2705('‫16d','MGBI'),'QNpde':_0x2705('‮16e','r7k]'),'hJIcF':_0x2705('‮16f','UYJn'),'WMExO':_0x2705('‮170','%w@y'),'xboJG':_0x2705('‫171','zSHp'),'hQnxX':_0x2705('‮172','xA7b')};let _0x14391a={'url':_0x233a69[_0x2705('‮173','gHK!')],'body':$[_0x2705('‮174','zV%F')],'headers':{'Host':'api.m.jd.com','accept':_0x233a69[_0x2705('‫175','L%sk')],'user-agent':_0x233a69[_0x2705('‮176','fT*l')],'accept-language':_0x233a69['xboJG'],'content-type':_0x233a69['hQnxX'],'Cookie':$[_0x2705('‫177','LWG4')]}};return new Promise(_0x161954=>{var _0x526e85={'SqYpr':function(_0xd43d41,_0x5ca595){return _0x233a69[_0x2705('‫178','8U)n')](_0xd43d41,_0x5ca595);},'WzuNf':function(_0x3ab57b,_0x16d550){return _0x233a69[_0x2705('‫179','XqRb')](_0x3ab57b,_0x16d550);},'hkJnF':_0x2705('‮17a','8U)n'),'chYHt':function(_0x4cae31,_0x4099d6){return _0x233a69[_0x2705('‮17b','qcre')](_0x4cae31,_0x4099d6);},'oDJCL':'reSOw','fLYPe':function(_0x4cad44,_0x32b268){return _0x233a69['gqvMh'](_0x4cad44,_0x32b268);},'GTIwJ':_0x233a69['Dblml'],'rGZRL':_0x233a69['lRhMz']};$[_0x2705('‮17c','W*3$')](_0x14391a,async(_0x2e92d7,_0xca83f7,_0x14fbdc)=>{var _0x1c0110={'PHTcK':function(_0x42a947,_0x12cb88){return _0x526e85[_0x2705('‮17d','^jcQ')](_0x42a947,_0x12cb88);},'LJLxY':_0x2705('‫17e','L%sk'),'MhRnW':function(_0x2b0cf0,_0x41909b){return _0x2b0cf0+_0x41909b;},'IdImw':'LZ_TOKEN_KEY=','vTKHD':_0x2705('‮17f','yf2h')};if(_0x526e85['WzuNf'](_0x2705('‫180','iGj6'),_0x526e85[_0x2705('‮181','^jcQ')])){try{if(_0x526e85['chYHt'](_0x526e85['oDJCL'],_0x2705('‮182','h2k!'))){if(_0x2e92d7){console[_0x2705('‮183','W*3$')](''+JSON[_0x2705('‫184','XqRb')](_0x2e92d7));console['log']($['name']+'\x20API请求失败,请检查网路重试');}else{_0x14fbdc=JSON['parse'](_0x14fbdc);}}else{let _0x158a74=setcookie[_0x2705('‫185','2ucA')](_0x23cf28=>_0x23cf28[_0x2705('‮186','%w@y')]('lz_jdpin_token')!==-0x1)[0x0];if(_0x158a74&&_0x1c0110['PHTcK'](_0x158a74['indexOf'](_0x1c0110[_0x2705('‫187','fN7w')]),-0x1)){$[_0x2705('‮188','HjJr')]=_0x158a74[_0x2705('‮189','^jcQ')](';')&&_0x1c0110['MhRnW'](_0x158a74[_0x2705('‫18a','8U)n')](';')[0x0],';')||'';}let _0x1e2e15=setcookie['filter'](_0x2a5879=>_0x2a5879[_0x2705('‫18b','XqRb')]('LZ_TOKEN_KEY')!==-0x1)[0x0];if(_0x1e2e15&&_0x1e2e15['indexOf'](_0x1c0110[_0x2705('‫18c','Et1M')])>-0x1){let _0x1cb358=_0x1e2e15[_0x2705('‫18d',')Fg[')](';')&&_0x1e2e15['split'](';')[0x0]||'';$[_0x2705('‫18e','%w@y')]=_0x1cb358['replace'](_0x1c0110[_0x2705('‮18f','fN7w')],'');}let _0x3ddfe9=setcookie['filter'](_0x276294=>_0x276294[_0x2705('‫190','2ch[')](_0x2705('‮191','qiNb'))!==-0x1)[0x0];if(_0x3ddfe9&&_0x1c0110['PHTcK'](_0x3ddfe9[_0x2705('‫192','gHK!')](_0x2705('‮193','zV%F')),-0x1)){let _0x4ac442=_0x3ddfe9[_0x2705('‫194','h2k!')](';')&&_0x3ddfe9[_0x2705('‫195','oX93')](';')[0x0]||'';$[_0x2705('‮196','kbc1')]=_0x4ac442[_0x2705('‮197','08n&')](_0x1c0110[_0x2705('‫198','zV%F')],'');}}}catch(_0x2a6003){if(_0x526e85[_0x2705('‮199','lTI&')](_0x2705('‮19a','zV%F'),_0x2705('‫19b','qiNb'))){$[_0x2705('‮19c','LWG4')](_0x2a6003,_0xca83f7);}else{_0x14fbdc=JSON[_0x2705('‮19d','L%sk')](_0x14fbdc);}}finally{if(_0x526e85['GTIwJ']===_0x526e85[_0x2705('‫19e','Tk^C')]){_0x161954(_0x14fbdc[_0x526e85[_0x2705('‮19f','RuWU')]]||'');}else{return;}}}else{$[_0x2705('‮1a0','L%sk')](e,_0xca83f7);}});});}async function getHtml(){var _0x5e9f2c={'esGgI':function(_0x2b2494,_0x325844){return _0x2b2494+_0x325844;},'gFOMn':_0x2705('‫1a1','L%sk'),'XnsZS':function(_0x4a242e,_0x2fe46d){return _0x4a242e(_0x2fe46d);},'wHzzL':function(_0x4adbe3,_0x275feb){return _0x4adbe3===_0x275feb;},'TXSZJ':_0x2705('‮1a2','yf2h'),'MqzUD':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8','RqaYs':_0x2705('‮1a3','%w@y'),'BXmJt':_0x2705('‮1a4','xA7b')};let _0x449437={'url':$[_0x2705('‮1a5','DX0@')],'headers':{'Host':$[_0x2705('‫1a6','LWG4')],'Accept':_0x5e9f2c['MqzUD'],'Cookie':_0x2705('‫1a7','R4&m')+$[_0x2705('‫1a8','iGj6')]+';'+$[_0x2705('‫1a9','r7k]')],'User-Agent':$['UA'],'Accept-Language':_0x5e9f2c[_0x2705('‫1aa','ho73')],'Accept-Encoding':_0x2705('‮1ab','iGj6'),'Connection':_0x5e9f2c['BXmJt']}};return new Promise(_0x531dc9=>{var _0xc13beb={'TGGKN':_0x2705('‫1ac','2ch[')};$['get'](_0x449437,(_0x331e03,_0x52a7bc,_0x433222)=>{var _0x49fba5={'UCgon':function(_0x3f87c7,_0x55ee93){return _0x5e9f2c['esGgI'](_0x3f87c7,_0x55ee93);}};if(_0x2705('‮1ad','0T[W')===_0x5e9f2c[_0x2705('‫1ae','fN7w')]){try{_0x5e9f2c[_0x2705('‫1af','HjJr')](dealCK,_0x52a7bc);}catch(_0x38a3c4){if(_0x5e9f2c[_0x2705('‫1b0',')Fg[')](_0x2705('‫1b1','iGj6'),_0x5e9f2c['TXSZJ'])){$[_0x2705('‮1a0','L%sk')](_0x38a3c4,_0x52a7bc);}else{$[_0x2705('‮1b2','2ch[')]=lzjdpintoken[_0x2705('‫1b3','W*3$')](';')&&_0x49fba5['UCgon'](lzjdpintoken[_0x2705('‫1b4','O@64')](';')[0x0],';')||'';}}finally{_0x531dc9(_0x433222);}}else{let _0x38da91=LZTOKENVALUE[_0x2705('‮164','08n&')](';')&&LZTOKENVALUE[_0x2705('‮1b5','gHK!')](';')[0x0]||'';$[_0x2705('‮1b6','6Cre')]=_0x38da91[_0x2705('‫1b7','^Ayj')](_0xc13beb[_0x2705('‮1b8','XfGn')],'');}});});}async function takePostRequest(_0x501f7d,_0x129604=_0x2705('‫1b9','oX93')+$[_0x2705('‮e4','8U)n')]+'&pin='+encodeURIComponent($['pin'])){var _0x2e6828={'yTcbq':function(_0x27e2ae,_0x53c602){return _0x27e2ae(_0x53c602);},'LrTee':function(_0x2f8c13,_0x3e1e98){return _0x2f8c13!==_0x3e1e98;},'cOieJ':_0x2705('‮1ba','O@64'),'SPkSC':_0x2705('‫1bb','zV%F'),'mheov':_0x2705('‫1bc','y&JD'),'NRYON':_0x2705('‫1bd','r7k]'),'DrXNm':_0x2705('‮1be','kbc1'),'nqdLk':_0x2705('‫1bf','^er0'),'eaTtT':_0x2705('‮1c0','HjJr'),'YMIRk':'common/accessLogWithAD','kcAzl':_0x2705('‫1c1','iGj6'),'Rfgqy':function(_0x2dd101,_0x3b9497){return _0x2dd101(_0x3b9497);},'EdeiY':function(_0x552fe4,_0x4421d1){return _0x552fe4(_0x4421d1);},'EnNiN':'wxCommonInfo/getActMemberInfo','zBrPJ':function(_0x133642,_0x5acf32){return _0x133642(_0x5acf32);},'AztBC':_0x2705('‮1c2','kbc1'),'ydKkL':'2222'};let _0x12996a=_0x2705('‫1c3',')Fg[')+$[_0x2705('‫1c4','fT*l')]+'/'+_0x501f7d;switch(_0x501f7d){case _0x2e6828['mheov']:case _0x2e6828['NRYON']:case _0x2e6828[_0x2705('‫1c5','T@YC')]:case _0x2e6828[_0x2705('‫1c6','uPr^')]:case'wxCollectCard/shopInfo':case'wxCollectCard/drawContent':_0x129604='activityId='+$[_0x2705('‫f9','fT*l')];break;case _0x2e6828['eaTtT']:_0x129604=_0x2705('‫1c7','08n&')+$['venderId']+_0x2705('‫1c8','LWG4')+encodeURIComponent($[_0x2705('‮1c9','%iGQ')])+_0x2705('‮1ca','6Cre');break;case _0x2e6828[_0x2705('‮1cb','LWG4')]:case _0x2e6828['kcAzl']:_0x129604='venderId='+$[_0x2705('‫1cc','yVyd')]+_0x2705('‮1cd','7Zcv')+$[_0x2705('‮1ce','R4&m')]+_0x2705('‮1cf','zV%F')+_0x2e6828[_0x2705('‫1d0','uPr^')](encodeURIComponent,$[_0x2705('‮e6','8U)n')])+_0x2705('‮1d1','UYJn')+$['activityId']+_0x2705('‮1d2','%w@y')+encodeURIComponent($[_0x2705('‮1d3','08n&')])+_0x2705('‮1d4','RuWU');break;case _0x2705('‮1d5','^Ayj'):_0x129604=_0x2705('‮1d6','ho73')+_0x2e6828['EdeiY'](encodeURIComponent,$[_0x2705('‮1d7','RuWU')]);break;case _0x2e6828[_0x2705('‮1d8',')Fg[')]:_0x129604=_0x2705('‮1d9','fT*l')+$[_0x2705('‮1da','yf2h')]+_0x2705('‮1db','6Cre')+$[_0x2705('‫1dc',')Fg[')]+_0x2705('‫b1','yf2h')+_0x2e6828[_0x2705('‮1dd','^er0')](encodeURIComponent,$[_0x2705('‮1de','oX93')]);break;case _0x2e6828['AztBC']:_0x129604=_0x2705('‫1df','LWG4')+$[_0x2705('‮1e0','xA7b')];break;case _0x2e6828['ydKkL']:_0x129604=_0x2705('‫1e1','y&JD');break;}const _0x234d33={'X-Requested-With':_0x2705('‫1e2','2ucA'),'Connection':'keep-alive','Accept-Encoding':'gzip,\x20deflate,\x20br','Content-Type':_0x2705('‮123','O@64'),'Origin':'https://'+$[_0x2705('‮1e3','h2k!')],'User-Agent':$['UA'],'Cookie':$[_0x2705('‮1e4','dlgM')]+_0x2705('‫1e5','oX93')+$[_0x2705('‫1e6','08n&')]+_0x2705('‮1e7','L%sk')+$[_0x2705('‮1e8','vXXE')]+';\x20AUTH_C_USER='+$[_0x2705('‮1e9',')Fg[')]+';\x20'+$['lz_jdpin_token'],'Host':$[_0x2705('‫1ea','8U)n')],'Referer':$['thisActivityUrl'],'Accept-Language':_0x2705('‫1eb','anfZ'),'Accept':'application/json'};let _0x312f2c={'url':_0x12996a,'method':_0x2705('‫1ec','zSHp'),'headers':_0x234d33,'body':_0x129604};return new Promise(async _0x3ceeae=>{$['post'](_0x312f2c,(_0x32ca78,_0x29fb69,_0x3e4e83)=>{try{_0x2e6828[_0x2705('‫1ed','%iGQ')](dealCK,_0x29fb69);if(_0x3e4e83){_0x3e4e83=JSON[_0x2705('‮1ee','uPr^')](_0x3e4e83);}}catch(_0x2d0afc){console[_0x2705('‮1ef','DX0@')](_0x3e4e83);$['logErr'](_0x2d0afc,_0x29fb69);}finally{if(_0x2e6828[_0x2705('‮1f0','vXXE')](_0x2e6828[_0x2705('‮1f1','W*3$')],_0x2e6828['SPkSC'])){_0x2e6828[_0x2705('‫1f2','vXXE')](_0x3ceeae,_0x3e4e83);}else{console['log']('获取pin失败,该账号可能是黑号');return;}}});});}function dealCK(_0x570bfe){var _0x3e8097={'YbPfe':function(_0x1a9fcf,_0x11bdd4){return _0x1a9fcf(_0x11bdd4);},'VBHpA':function(_0x5253bd,_0x39e464,_0x4926c9){return _0x5253bd(_0x39e464,_0x4926c9);},'elJWY':_0x2705('‮1f3','^er0'),'boDpo':function(_0x27f166,_0x52d54b,_0x4df7fc){return _0x27f166(_0x52d54b,_0x4df7fc);},'TnuZn':_0x2705('‮1f4','T@YC'),'YVpUm':_0x2705('‫1f5','anfZ'),'lFPeH':function(_0x15debe,_0xc61619,_0x55760f){return _0x15debe(_0xc61619,_0x55760f);},'Tnnkd':function(_0x2b01ae,_0x48f234){return _0x2b01ae===_0x48f234;},'Gfrkm':'headers','zFLMa':_0x2705('‫1f6','T@YC'),'dXHVn':function(_0x23b345,_0x49bd7f){return _0x23b345>_0x49bd7f;},'DVYft':_0x2705('‫1f7','08n&'),'czkaE':function(_0x5167eb,_0x29025c){return _0x5167eb+_0x29025c;},'bpUHO':function(_0x25bee1,_0x5b2606){return _0x25bee1!==_0x5b2606;},'StUoj':_0x2705('‫1f8','anfZ'),'SpNYh':'LZ_TOKEN_KEY=','gFsUw':function(_0xbce478,_0x5c69df){return _0xbce478>_0x5c69df;},'DisqJ':_0x2705('‫1f9','xA7b'),'RZUyT':'sisGY'};if(_0x3e8097['Tnnkd'](_0x570bfe,undefined)){return;}let _0xf2801d=_0x570bfe[_0x3e8097[_0x2705('‮1fa','uPr^')]][_0x2705('‮1fb','oX93')]||_0x570bfe[_0x2705('‮1fc','XfGn')][_0x3e8097['zFLMa']]||'';if(_0xf2801d){let _0x45674e=_0xf2801d[_0x2705('‮1fd','lTI&')](_0x5a87b3=>_0x5a87b3[_0x2705('‫1fe','^jcQ')](_0x2705('‮1ff','yVyd'))!==-0x1)[0x0];if(_0x45674e&&_0x3e8097[_0x2705('‫200','XqRb')](_0x45674e['indexOf'](_0x3e8097['DVYft']),-0x1)){$[_0x2705('‮201','yf2h')]=_0x45674e[_0x2705('‮202','uPr^')](';')&&_0x3e8097[_0x2705('‫203','HjJr')](_0x45674e[_0x2705('‮204','iGj6')](';')[0x0],';')||'';}let _0x3ca61e=_0xf2801d['filter'](_0x46e536=>_0x46e536[_0x2705('‮205','%iGQ')](_0x2705('‫206','oX93'))!==-0x1)[0x0];if(_0x3ca61e&&_0x3ca61e['indexOf']('LZ_TOKEN_KEY=')>-0x1){if(_0x3e8097[_0x2705('‮207','zV%F')](_0x3e8097[_0x2705('‫208','08n&')],_0x2705('‫209','qiNb'))){let _0x212bf2=_0x3ca61e[_0x2705('‫162','7Zcv')](';')&&_0x3ca61e['split'](';')[0x0]||'';$['LZ_TOKEN_KEY']=_0x212bf2[_0x2705('‮20a','Tk^C')](_0x3e8097['SpNYh'],'');}else{return;}}let _0x4e531c=_0xf2801d[_0x2705('‮20b','08n&')](_0x4f8dc5=>_0x4f8dc5['indexOf'](_0x2705('‮20c','2ucA'))!==-0x1)[0x0];if(_0x4e531c&&_0x3e8097['gFsUw'](_0x4e531c['indexOf'](_0x2705('‮20d','HjJr')),-0x1)){if(_0x3e8097[_0x2705('‫20e','oX93')](_0x3e8097[_0x2705('‫20f','0T[W')],_0x3e8097['RZUyT'])){let _0x21b7d2=_0x4e531c['split'](';')&&_0x4e531c[_0x2705('‫210','%iGQ')](';')[0x0]||'';$[_0x2705('‮211','L%sk')]=_0x21b7d2[_0x2705('‫212','oX93')](_0x2705('‫213','MGBI'),'');}else{$[_0x2705('‮214','kbc1')]=_0x3e8097[_0x2705('‫215','kbc1')](randomString,0x28);const _0x3490c9={'167814':_0x2705('‫216','dlgM'),'167841':_0x2705('‮217',')Fg[')};$[_0x2705('‮218','fN7w')]=_0x3e8097[_0x2705('‮219','2ucA')](randomNum,0xc,0xe)+'.'+randomNum(0x0,0x6);let _0x1f119b=_0x2705('‮21a','7Zcv')+['4g','5g',_0x3e8097[_0x2705('‫21b','DX0@')]][randomNum(0x0,0x2)];$['mobile']=_0x2705('‫21c','HjJr')+_0x3e8097[_0x2705('‫21d','6Cre')](randomNum,0x9,0xd)+','+_0x3e8097['boDpo'](randomNum,0x1,0x3);$[_0x2705('‫21e','dlgM')]=[_0x2705('‫21f',')Fg['),_0x3e8097[_0x2705('‫220','MGBI')],_0x3e8097[_0x2705('‮221','L%sk')]][_0x3e8097[_0x2705('‮222','zSHp')](randomNum,0x0,0x1)];$['appVersion']=_0x3490c9[$[_0x2705('‮223','lTI&')]];return'jdapp;iPhone;'+$[_0x2705('‫224','fN7w')]+';'+$[_0x2705('‮225','zV%F')]+';'+$[_0x2705('‫226','8U)n')]+';'+_0x1f119b+_0x2705('‮227','kbc1')+$['mobile']+_0x2705('‮228','xA7b')+randomNum(0x3b9aca00)+_0x2705('‫229','r7k]')+$[_0x2705('‫22a','2ucA')]+_0x2705('‫22b','r7k]')+$['osVersion'][_0x2705('‮22c','r7k]')](/\./g,'_')+_0x2705('‫22d','T@YC');}}}}function getRandomArrayElements(_0xbe0803,_0x49c702){var _0xa3c67a={'wqCkS':function(_0x4bee99,_0x298b2f){return _0x4bee99>_0x298b2f;},'kcdGS':function(_0x3c7569,_0x6986cd){return _0x3c7569*_0x6986cd;}};var _0x4844a0=_0xbe0803[_0x2705('‮22e','^er0')](0x0),_0x1b9244=_0xbe0803[_0x2705('‮22f','%w@y')],_0x21801d=_0x1b9244-_0x49c702,_0x213605,_0x3c58ea;while(_0xa3c67a[_0x2705('‫230','qiNb')](_0x1b9244--,_0x21801d)){_0x3c58ea=Math[_0x2705('‫231','qcre')](_0xa3c67a[_0x2705('‮232','%w@y')](_0x1b9244+0x1,Math[_0x2705('‮233','^er0')]()));_0x213605=_0x4844a0[_0x3c58ea];_0x4844a0[_0x3c58ea]=_0x4844a0[_0x1b9244];_0x4844a0[_0x1b9244]=_0x213605;}return _0x4844a0[_0x2705('‫234','^Ayj')](_0x21801d);}function getUA(){var _0x5bd892={'ulshU':function(_0x53b937,_0x1cdd88,_0x98c858){return _0x53b937(_0x1cdd88,_0x98c858);},'eQJdP':_0x2705('‫235','Et1M'),'tPjiy':_0x2705('‫236','HjJr'),'nRPUM':_0x2705('‮237','6Cre'),'DMETd':'167894','zppKh':function(_0x22a260,_0x4b0baf){return _0x22a260(_0x4b0baf);}};$['UUID']=randomString(0x28);const _0xa28dda={'167814':_0x2705('‫238','Et1M'),'167841':_0x2705('‮239','W*3$')};$[_0x2705('‫23a','HjJr')]=randomNum(0xc,0xe)+'.'+_0x5bd892[_0x2705('‫23b','XqRb')](randomNum,0x0,0x6);let _0x18e464=_0x2705('‫23c','DX0@')+['4g','5g',_0x5bd892[_0x2705('‫23d','T@YC')]][_0x5bd892[_0x2705('‫23e','iGj6')](randomNum,0x0,0x2)];$[_0x2705('‮23f','HjJr')]=_0x2705('‫240','0T[W')+randomNum(0x9,0xd)+','+randomNum(0x1,0x3);$['build']=[_0x5bd892[_0x2705('‫241','uPr^')],_0x5bd892['nRPUM'],_0x5bd892['DMETd']][_0x5bd892[_0x2705('‫242','r7k]')](randomNum,0x0,0x1)];$[_0x2705('‮243','^er0')]=_0xa28dda[$[_0x2705('‫244','xA7b')]];return _0x2705('‫245','2ucA')+$[_0x2705('‫246','XfGn')]+';'+$['osVersion']+';'+$[_0x2705('‮247','r7k]')]+';'+_0x18e464+_0x2705('‫248','LWG4')+$[_0x2705('‫249','xA7b')]+_0x2705('‮24a','LWG4')+_0x5bd892['zppKh'](randomNum,0x3b9aca00)+_0x2705('‮24b','0T[W')+$['build']+';jdSupportDarkMode/0;Mozilla/5.0\x20(iPhone;\x20CPU\x20iPhone\x20OS\x20'+$['osVersion'][_0x2705('‫24c','0T[W')](/\./g,'_')+'\x20like\x20Mac\x20OS\x20X)\x20AppleWebKit/605.1.15\x20(KHTML,\x20like\x20Gecko)\x20Mobile/15E148;supportJDSHWK/1';}function randomString(_0xaf2091,_0x5c0426=0x0){var _0x419bd5={'bAEDe':function(_0x401043,_0x1d8d07){return _0x401043(_0x1d8d07);},'cMWxl':'eBiAV','BugKF':'AWIfU','nDmte':function(_0x5e19d6,_0x5a52f6){return _0x5e19d6+_0x5a52f6;},'dxotE':function(_0x5152df,_0x1e9491){return _0x5152df+_0x1e9491;},'GZpAP':function(_0x5b2582,_0x29518c){return _0x5b2582-_0x29518c;},'zttoi':function(_0x48c5db,_0x225289){return _0x48c5db-_0x225289;},'cZGLe':_0x2705('‮24d','XqRb'),'LtAYU':_0x2705('‮24e','anfZ'),'fRQny':function(_0x3c5a96,_0x241091){return _0x3c5a96-_0x241091;}};var _0x1e14ae='',_0x5d75ea=_0xaf2091,_0x473447=[..._0x419bd5[_0x2705('‮24f','R4&m')](Array,0x23)[_0x2705('‫250','lTI&')]()][_0x2705('‫251','LWG4')](_0x4d65a3=>_0x4d65a3[_0x2705('‫252','r7k]')](0x24));if(_0x5c0426){if(_0x419bd5['cMWxl']===_0x419bd5[_0x2705('‫253','2ucA')]){if(data['result']&&data['result'][_0x2705('‮254',')Fg[')]){for(let _0x9afeef of data['result']['giftInfo'][_0x2705('‮255','MGBI')]){}}}else{_0x5d75ea=Math['floor'](_0x419bd5['nDmte'](Math['random']()*_0x419bd5[_0x2705('‮256','iGj6')](_0x419bd5['GZpAP'](_0x5c0426,_0xaf2091),0x1),_0xaf2091));}}for(let _0x54348e=0x0;_0x54348e<_0x5d75ea;){let _0x77b12f=Math[_0x2705('‮257','r7k]')]()[_0x2705('‫258','h2k!')](0x10)['substring'](0x2);if(_0x419bd5[_0x2705('‮259','fN7w')](_0x5d75ea,_0x54348e)>_0x77b12f[_0x2705('‫25a','anfZ')]){if(_0x419bd5[_0x2705('‮25b','7Zcv')]!==_0x419bd5[_0x2705('‮25c','^Ayj')]){_0x1e14ae+=_0x77b12f;_0x54348e+=_0x77b12f['length'];}else{let _0x579ec3=LZTOKENKEY[_0x2705('‮25d','y&JD')](';')&&LZTOKENKEY[_0x2705('‫25e','fN7w')](';')[0x0]||'';$[_0x2705('‮25f','yf2h')]=_0x579ec3[_0x2705('‮260','7Zcv')](_0x2705('‮261','RuWU'),'');}}else{_0x1e14ae+=_0x77b12f['slice'](_0x419bd5[_0x2705('‮262','iGj6')](_0x54348e,_0x5d75ea));_0x54348e+=_0x77b12f[_0x2705('‮263',')Fg[')];}}return _0x1e14ae;}function randomNum(_0x178735,_0x46585b){var _0x425aee={'aEwWf':function(_0x393d8f,_0x4468e0){return _0x393d8f===_0x4468e0;},'FFOHZ':function(_0x182583,_0xc5ecbd){return _0x182583-_0xc5ecbd;},'hpkDi':function(_0x4d9da1,_0x472000){return _0x4d9da1+_0x472000;},'isJpO':function(_0x588f53,_0x27da03){return _0x588f53*_0x27da03;}};if(_0x425aee['aEwWf'](arguments['length'],0x0))return Math[_0x2705('‫264','R4&m')]();if(!_0x46585b)_0x46585b=_0x425aee[_0x2705('‮265','h2k!')](0xa**(_0x425aee['hpkDi'](_0x425aee['isJpO'](Math[_0x2705('‮f1','^er0')](_0x178735),Math[_0x2705('‫266','qcre')]),0x1)|0x0),0x1);return Math[_0x2705('‫267','MGBI')](Math[_0x2705('‮268','gHK!')]()*(_0x46585b-_0x178735+0x1)+_0x178735);};_0xodR='jsjiami.com.v6'; + function Env(t,e){"undefined"!=typeof process&&JSON.stringify(process.env).indexOf("GITHUB")>-1&&process.exit(0);class s{constructor(t){this.env=t}send(t,e="GET"){t="string"==typeof t?{url:t}:t;let s=this.get;return"POST"===e&&(s=this.post),new Promise((e,i)=>{s.call(this,t,(t,s,r)=>{t?i(t):e(s)})})}get(t){return this.send.call(this.env,t)}post(t){return this.send.call(this.env,t,"POST")}}return new class{constructor(t,e){this.name=t,this.http=new s(this),this.data=null,this.dataFile="box.dat",this.logs=[],this.isMute=!1,this.isNeedRewrite=!1,this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,e),this.log("",`🔔${this.name}, 开始!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}toObj(t,e=null){try{return JSON.parse(t)}catch{return e}}toStr(t,e=null){try{return JSON.stringify(t)}catch{return e}}getjson(t,e){let s=e;const i=this.getdata(t);if(i)try{s=JSON.parse(this.getdata(t))}catch{}return s}setjson(t,e){try{return this.setdata(JSON.stringify(t),e)}catch{return!1}}getScript(t){return new Promise(e=>{this.get({url:t},(t,s,i)=>e(i))})}runScript(t,e){return new Promise(s=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let r=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");r=r?1*r:20,r=e&&e.timeout?e.timeout:r;const[o,h]=i.split("@"),n={url:`http://${h}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:r},headers:{"X-Key":o,Accept:"*/*"}};this.post(n,(t,e,i)=>s(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e);if(!s&&!i)return{};{const i=s?t:e;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e),r=JSON.stringify(this.data);s?this.fs.writeFileSync(t,r):i?this.fs.writeFileSync(e,r):this.fs.writeFileSync(t,r)}}lodash_get(t,e,s){const i=e.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(const t of i)if(r=Object(r)[t],void 0===r)return s;return r}lodash_set(t,e,s){return Object(t)!==t?t:(Array.isArray(e)||(e=e.toString().match(/[^.[\]]+/g)||[]),e.slice(0,-1).reduce((t,s,i)=>Object(t[s])===t[s]?t[s]:t[s]=Math.abs(e[i+1])>>0==+e[i+1]?[]:{},t)[e[e.length-1]]=s,t)}getdata(t){let e=this.getval(t);if(/^@/.test(t)){const[,s,i]=/^@(.*?)\.(.*?)$/.exec(t),r=s?this.getval(s):"";if(r)try{const t=JSON.parse(r);e=t?this.lodash_get(t,i,""):e}catch(t){e=""}}return e}setdata(t,e){let s=!1;if(/^@/.test(e)){const[,i,r]=/^@(.*?)\.(.*?)$/.exec(e),o=this.getval(i),h=i?"null"===o?null:o||"{}":"{}";try{const e=JSON.parse(h);this.lodash_set(e,r,t),s=this.setval(JSON.stringify(e),i)}catch(e){const o={};this.lodash_set(o,r,t),s=this.setval(JSON.stringify(o),i)}}else s=this.setval(t,e);return s}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,e){return this.isSurge()||this.isLoon()?$persistentStore.write(t,e):this.isQuanX()?$prefs.setValueForKey(t,e):this.isNode()?(this.data=this.loaddata(),this.data[e]=t,this.writedata(),!0):this.data&&this.data[e]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,e=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?(this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.get(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)})):this.isQuanX()?(this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t))):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,e)=>{try{if(t.headers["set-cookie"]){const s=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();s&&this.ckjar.setCookieSync(s,null),e.cookieJar=this.ckjar}}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)}))}post(t,e=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),t.headers&&delete t.headers["Content-Length"],this.isSurge()||this.isLoon())this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.post(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)});else if(this.isQuanX())t.method="POST",this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t));else if(this.isNode()){this.initGotEnv(t);const{url:s,...i}=t;this.got.post(s,i).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)})}}time(t,e=null){const s=e?new Date(e):new Date;let i={"M+":s.getMonth()+1,"d+":s.getDate(),"H+":s.getHours(),"m+":s.getMinutes(),"s+":s.getSeconds(),"q+":Math.floor((s.getMonth()+3)/3),S:s.getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(s.getFullYear()+"").substr(4-RegExp.$1.length)));for(let e in i)new RegExp("("+e+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?i[e]:("00"+i[e]).substr((""+i[e]).length)));return t}msg(e=t,s="",i="",r){const o=t=>{if(!t)return t;if("string"==typeof t)return this.isLoon()?t:this.isQuanX()?{"open-url":t}:this.isSurge()?{url:t}:void 0;if("object"==typeof t){if(this.isLoon()){let e=t.openUrl||t.url||t["open-url"],s=t.mediaUrl||t["media-url"];return{openUrl:e,mediaUrl:s}}if(this.isQuanX()){let e=t["open-url"]||t.url||t.openUrl,s=t["media-url"]||t.mediaUrl;return{"open-url":e,"media-url":s}}if(this.isSurge()){let e=t.url||t.openUrl||t["open-url"];return{url:e}}}};if(this.isMute||(this.isSurge()||this.isLoon()?$notification.post(e,s,i,o(r)):this.isQuanX()&&$notify(e,s,i,o(r))),!this.isMuteLog){let t=["","==============📣系统通知📣=============="];t.push(e),s&&t.push(s),i&&t.push(i),console.log(t.join("\n")),this.logs=this.logs.concat(t)}}log(...t){t.length>0&&(this.logs=[...this.logs,...t]),console.log(t.join(this.logSeparator))}logErr(t,e){const s=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();s?this.log("",`❗️${this.name}, 错误!`,t.stack):this.log("",`❗️${this.name}, 错误!`,t)}wait(t){return new Promise(e=>setTimeout(e,t))}done(t={}){const e=(new Date).getTime(),s=(e-this.startTime)/1e3;this.log("",`🔔${this.name}, 结束! 🕛 ${s} 秒`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,e)} \ No newline at end of file diff --git a/jd_bean_change.js b/jd_bean_change.js index 7e3c25e1..de8e8240 100644 --- a/jd_bean_change.js +++ b/jd_bean_change.js @@ -2,7 +2,7 @@ cron "30 21 * * *" jd_bean_change.js, tag:资产变化强化版by-ccwav */ -//详细说明参考 https://github.com/ccwav/QLScript2. +//详细说明参考 https://github.com/ccwav/QLScript2 // prettier-ignore !function (t, e) { "object" == typeof exports ? module.exports = exports = e() : "function" == typeof define && define.amd ? define([], e) : t.CryptoJS = e() }(this, function () { var h, t, e, r, i, n, f, o, s, c, a, l, d, m, x, b, H, z, A, u, p, _, v, y, g, B, w, k, S, C, D, E, R, M, F, P, W, O, I, U, K, X, L, j, N, T, q, Z, V, G, J, $, Q, Y, tt, et, rt, it, nt, ot, st, ct, at, ht, lt, ft, dt, ut, pt, _t, vt, yt, gt, Bt, wt, kt, St, bt = bt || function (l) { var t; if ("undefined" != typeof window && window.crypto && (t = window.crypto), !t && "undefined" != typeof window && window.msCrypto && (t = window.msCrypto), !t && "undefined" != typeof global && global.crypto && (t = global.crypto), !t && "function" == typeof require) try { t = require("crypto") } catch (t) { } function i() { if (t) { if ("function" == typeof t.getRandomValues) try { return t.getRandomValues(new Uint32Array(1))[0] } catch (t) { } if ("function" == typeof t.randomBytes) try { return t.randomBytes(4).readInt32LE() } catch (t) { } } throw new Error("Native crypto module could not be used to get secure random number.") } var r = Object.create || function (t) { var e; return n.prototype = t, e = new n, n.prototype = null, e }; function n() { } var e = {}, o = e.lib = {}, s = o.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).$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) } }, f = o.WordArray = s.extend({ init: function (t, e) { t = this.words = t || [], this.sigBytes = null != e ? e : 4 * t.length }, toString: function (t) { return (t || a).stringify(this) }, concat: function (t) { var e = this.words, r = t.words, i = this.sigBytes, n = t.sigBytes; if (this.clamp(), i % 4) for (var o = 0; o < n; o++) { var s = r[o >>> 2] >>> 24 - o % 4 * 8 & 255; e[i + o >>> 2] |= s << 24 - (i + o) % 4 * 8 } else for (o = 0; o < n; o += 4)e[i + o >>> 2] = r[o >>> 2]; return this.sigBytes += n, this }, clamp: function () { var t = this.words, e = this.sigBytes; t[e >>> 2] &= 4294967295 << 32 - e % 4 * 8, t.length = l.ceil(e / 4) }, clone: function () { var t = s.clone.call(this); return t.words = this.words.slice(0), t }, random: function (t) { for (var e = [], r = 0; r < t; r += 4)e.push(i()); return new f.init(e, t) } }), c = e.enc = {}, a = c.Hex = { stringify: function (t) { for (var e = t.words, r = t.sigBytes, i = [], n = 0; n < r; n++) { var o = e[n >>> 2] >>> 24 - n % 4 * 8 & 255; i.push((o >>> 4).toString(16)), i.push((15 & o).toString(16)) } return i.join("") }, parse: function (t) { for (var e = t.length, r = [], i = 0; i < e; i += 2)r[i >>> 3] |= parseInt(t.substr(i, 2), 16) << 24 - i % 8 * 4; return new f.init(r, e / 2) } }, h = c.Latin1 = { stringify: function (t) { for (var e = t.words, r = t.sigBytes, i = [], n = 0; n < r; n++) { var o = e[n >>> 2] >>> 24 - n % 4 * 8 & 255; i.push(String.fromCharCode(o)) } return i.join("") }, parse: function (t) { for (var e = t.length, r = [], i = 0; i < e; i++)r[i >>> 2] |= (255 & t.charCodeAt(i)) << 24 - i % 4 * 8; return new f.init(r, e) } }, d = c.Utf8 = { stringify: function (t) { try { return decodeURIComponent(escape(h.stringify(t))) } catch (t) { throw new Error("Malformed UTF-8 data") } }, parse: function (t) { return h.parse(unescape(encodeURIComponent(t))) } }, u = o.BufferedBlockAlgorithm = s.extend({ reset: function () { this._data = new f.init, this._nDataBytes = 0 }, _append: function (t) { "string" == typeof t && (t = d.parse(t)), this._data.concat(t), this._nDataBytes += t.sigBytes }, _process: function (t) { var e, r = this._data, i = r.words, n = r.sigBytes, o = this.blockSize, s = n / (4 * o), c = (s = t ? l.ceil(s) : l.max((0 | s) - this._minBufferSize, 0)) * o, a = l.min(4 * c, n); if (c) { for (var h = 0; h < c; h += o)this._doProcessBlock(i, h); e = i.splice(0, c), r.sigBytes -= a } return new f.init(e, a) }, clone: function () { var t = s.clone.call(this); return t._data = this._data.clone(), t }, _minBufferSize: 0 }), p = (o.Hasher = u.extend({ cfg: s.extend(), init: function (t) { this.cfg = this.cfg.extend(t), this.reset() }, reset: function () { u.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 (r) { return function (t, e) { return new r.init(e).finalize(t) } }, _createHmacHelper: function (r) { return function (t, e) { return new p.HMAC.init(r, e).finalize(t) } } }), e.algo = {}); return e }(Math); function mt(t, e, r) { return t ^ e ^ r } function xt(t, e, r) { return t & e | ~t & r } function Ht(t, e, r) { return (t | ~e) ^ r } function zt(t, e, r) { return t & r | e & ~r } function At(t, e, r) { return t ^ (e | ~r) } function Ct(t, e) { return t << e | t >>> 32 - e } function Dt(t, e, r, i) { var n, o = this._iv; o ? (n = o.slice(0), this._iv = void 0) : n = this._prevBlock, i.encryptBlock(n, 0); for (var s = 0; s < r; s++)t[e + s] ^= n[s] } function Et(t) { if (255 == (t >> 24 & 255)) { var e = t >> 16 & 255, r = t >> 8 & 255, i = 255 & t; 255 === e ? (e = 0, 255 === r ? (r = 0, 255 === i ? i = 0 : ++i) : ++r) : ++e, t = 0, t += e << 16, t += r << 8, t += i } else t += 1 << 24; return t } function Rt() { for (var t = this._X, e = this._C, r = 0; r < 8; r++)ft[r] = e[r]; e[0] = e[0] + 1295307597 + this._b | 0, e[1] = e[1] + 3545052371 + (e[0] >>> 0 < ft[0] >>> 0 ? 1 : 0) | 0, e[2] = e[2] + 886263092 + (e[1] >>> 0 < ft[1] >>> 0 ? 1 : 0) | 0, e[3] = e[3] + 1295307597 + (e[2] >>> 0 < ft[2] >>> 0 ? 1 : 0) | 0, e[4] = e[4] + 3545052371 + (e[3] >>> 0 < ft[3] >>> 0 ? 1 : 0) | 0, e[5] = e[5] + 886263092 + (e[4] >>> 0 < ft[4] >>> 0 ? 1 : 0) | 0, e[6] = e[6] + 1295307597 + (e[5] >>> 0 < ft[5] >>> 0 ? 1 : 0) | 0, e[7] = e[7] + 3545052371 + (e[6] >>> 0 < ft[6] >>> 0 ? 1 : 0) | 0, this._b = e[7] >>> 0 < ft[7] >>> 0 ? 1 : 0; for (r = 0; r < 8; r++) { var i = t[r] + e[r], n = 65535 & i, o = i >>> 16, s = ((n * n >>> 17) + n * o >>> 15) + o * o, c = ((4294901760 & i) * i | 0) + ((65535 & i) * i | 0); dt[r] = s ^ c } t[0] = dt[0] + (dt[7] << 16 | dt[7] >>> 16) + (dt[6] << 16 | dt[6] >>> 16) | 0, t[1] = dt[1] + (dt[0] << 8 | dt[0] >>> 24) + dt[7] | 0, t[2] = dt[2] + (dt[1] << 16 | dt[1] >>> 16) + (dt[0] << 16 | dt[0] >>> 16) | 0, t[3] = dt[3] + (dt[2] << 8 | dt[2] >>> 24) + dt[1] | 0, t[4] = dt[4] + (dt[3] << 16 | dt[3] >>> 16) + (dt[2] << 16 | dt[2] >>> 16) | 0, t[5] = dt[5] + (dt[4] << 8 | dt[4] >>> 24) + dt[3] | 0, t[6] = dt[6] + (dt[5] << 16 | dt[5] >>> 16) + (dt[4] << 16 | dt[4] >>> 16) | 0, t[7] = dt[7] + (dt[6] << 8 | dt[6] >>> 24) + dt[5] | 0 } function Mt() { for (var t = this._X, e = this._C, r = 0; r < 8; r++)wt[r] = e[r]; e[0] = e[0] + 1295307597 + this._b | 0, e[1] = e[1] + 3545052371 + (e[0] >>> 0 < wt[0] >>> 0 ? 1 : 0) | 0, e[2] = e[2] + 886263092 + (e[1] >>> 0 < wt[1] >>> 0 ? 1 : 0) | 0, e[3] = e[3] + 1295307597 + (e[2] >>> 0 < wt[2] >>> 0 ? 1 : 0) | 0, e[4] = e[4] + 3545052371 + (e[3] >>> 0 < wt[3] >>> 0 ? 1 : 0) | 0, e[5] = e[5] + 886263092 + (e[4] >>> 0 < wt[4] >>> 0 ? 1 : 0) | 0, e[6] = e[6] + 1295307597 + (e[5] >>> 0 < wt[5] >>> 0 ? 1 : 0) | 0, e[7] = e[7] + 3545052371 + (e[6] >>> 0 < wt[6] >>> 0 ? 1 : 0) | 0, this._b = e[7] >>> 0 < wt[7] >>> 0 ? 1 : 0; for (r = 0; r < 8; r++) { var i = t[r] + e[r], n = 65535 & i, o = i >>> 16, s = ((n * n >>> 17) + n * o >>> 15) + o * o, c = ((4294901760 & i) * i | 0) + ((65535 & i) * i | 0); kt[r] = s ^ c } t[0] = kt[0] + (kt[7] << 16 | kt[7] >>> 16) + (kt[6] << 16 | kt[6] >>> 16) | 0, t[1] = kt[1] + (kt[0] << 8 | kt[0] >>> 24) + kt[7] | 0, t[2] = kt[2] + (kt[1] << 16 | kt[1] >>> 16) + (kt[0] << 16 | kt[0] >>> 16) | 0, t[3] = kt[3] + (kt[2] << 8 | kt[2] >>> 24) + kt[1] | 0, t[4] = kt[4] + (kt[3] << 16 | kt[3] >>> 16) + (kt[2] << 16 | kt[2] >>> 16) | 0, t[5] = kt[5] + (kt[4] << 8 | kt[4] >>> 24) + kt[3] | 0, t[6] = kt[6] + (kt[5] << 16 | kt[5] >>> 16) + (kt[4] << 16 | kt[4] >>> 16) | 0, t[7] = kt[7] + (kt[6] << 8 | kt[6] >>> 24) + kt[5] | 0 } return h = bt.lib.WordArray, bt.enc.Base64 = { stringify: function (t) { var e = t.words, r = t.sigBytes, i = this._map; t.clamp(); for (var n = [], 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, c = 0; c < 4 && o + .75 * c < r; c++)n.push(i.charAt(s >>> 6 * (3 - c) & 63)); var a = i.charAt(64); if (a) for (; n.length % 4;)n.push(a); return n.join("") }, parse: function (t) { var e = t.length, r = this._map, i = this._reverseMap; if (!i) { i = this._reverseMap = []; for (var n = 0; n < r.length; n++)i[r.charCodeAt(n)] = n } var o = r.charAt(64); if (o) { var s = t.indexOf(o); -1 !== s && (e = s) } return function (t, e, r) { for (var i = [], n = 0, o = 0; o < e; o++)if (o % 4) { var s = r[t.charCodeAt(o - 1)] << o % 4 * 2, c = r[t.charCodeAt(o)] >>> 6 - o % 4 * 2, a = s | c; i[n >>> 2] |= a << 24 - n % 4 * 8, n++ } return h.create(i, n) }(t, e, i) }, _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" }, function (l) { var t = bt, e = t.lib, r = e.WordArray, i = e.Hasher, n = t.algo, H = []; !function () { for (var t = 0; t < 64; t++)H[t] = 4294967296 * l.abs(l.sin(t + 1)) | 0 }(); var o = n.MD5 = i.extend({ _doReset: function () { this._hash = new r.init([1732584193, 4023233417, 2562383102, 271733878]) }, _doProcessBlock: function (t, e) { for (var r = 0; r < 16; r++) { var i = e + r, n = t[i]; t[i] = 16711935 & (n << 8 | n >>> 24) | 4278255360 & (n << 24 | n >>> 8) } var o = this._hash.words, s = t[e + 0], c = t[e + 1], a = t[e + 2], h = t[e + 3], l = t[e + 4], f = t[e + 5], d = t[e + 6], u = t[e + 7], p = t[e + 8], _ = t[e + 9], v = t[e + 10], y = t[e + 11], g = t[e + 12], B = t[e + 13], w = t[e + 14], k = t[e + 15], S = o[0], m = o[1], x = o[2], b = o[3]; S = z(S, m, x, b, s, 7, H[0]), b = z(b, S, m, x, c, 12, H[1]), x = z(x, b, S, m, a, 17, H[2]), m = z(m, x, b, S, h, 22, H[3]), S = z(S, m, x, b, l, 7, H[4]), b = z(b, S, m, x, f, 12, H[5]), x = z(x, b, S, m, d, 17, H[6]), m = z(m, x, b, S, u, 22, H[7]), S = z(S, m, x, b, p, 7, H[8]), b = z(b, S, m, x, _, 12, H[9]), x = z(x, b, S, m, v, 17, H[10]), m = z(m, x, b, S, y, 22, H[11]), S = z(S, m, x, b, g, 7, H[12]), b = z(b, S, m, x, B, 12, H[13]), x = z(x, b, S, m, w, 17, H[14]), S = A(S, m = z(m, x, b, S, k, 22, H[15]), x, b, c, 5, H[16]), b = A(b, S, m, x, d, 9, H[17]), x = A(x, b, S, m, y, 14, H[18]), m = A(m, x, b, S, s, 20, H[19]), S = A(S, m, x, b, f, 5, H[20]), b = A(b, S, m, x, v, 9, H[21]), x = A(x, b, S, m, k, 14, H[22]), m = A(m, x, b, S, l, 20, H[23]), S = A(S, m, x, b, _, 5, H[24]), b = A(b, S, m, x, w, 9, H[25]), x = A(x, b, S, m, h, 14, H[26]), m = A(m, x, b, S, p, 20, H[27]), S = A(S, m, x, b, B, 5, H[28]), b = A(b, S, m, x, a, 9, H[29]), x = A(x, b, S, m, u, 14, H[30]), S = C(S, m = A(m, x, b, S, g, 20, H[31]), x, b, f, 4, H[32]), b = C(b, S, m, x, p, 11, H[33]), x = C(x, b, S, m, y, 16, H[34]), m = C(m, x, b, S, w, 23, H[35]), S = C(S, m, x, b, c, 4, H[36]), b = C(b, S, m, x, l, 11, H[37]), x = C(x, b, S, m, u, 16, H[38]), m = C(m, x, b, S, v, 23, H[39]), S = C(S, m, x, b, B, 4, H[40]), b = C(b, S, m, x, s, 11, H[41]), x = C(x, b, S, m, h, 16, H[42]), m = C(m, x, b, S, d, 23, H[43]), S = C(S, m, x, b, _, 4, H[44]), b = C(b, S, m, x, g, 11, H[45]), x = C(x, b, S, m, k, 16, H[46]), S = D(S, m = C(m, x, b, S, a, 23, H[47]), x, b, s, 6, H[48]), b = D(b, S, m, x, u, 10, H[49]), x = D(x, b, S, m, w, 15, H[50]), m = D(m, x, b, S, f, 21, H[51]), S = D(S, m, x, b, g, 6, H[52]), b = D(b, S, m, x, h, 10, H[53]), x = D(x, b, S, m, v, 15, H[54]), m = D(m, x, b, S, c, 21, H[55]), S = D(S, m, x, b, p, 6, H[56]), b = D(b, S, m, x, k, 10, H[57]), x = D(x, b, S, m, d, 15, H[58]), m = D(m, x, b, S, B, 21, H[59]), S = D(S, m, x, b, l, 6, H[60]), b = D(b, S, m, x, y, 10, H[61]), x = D(x, b, S, m, a, 15, H[62]), m = D(m, x, b, S, _, 21, H[63]), o[0] = o[0] + S | 0, o[1] = o[1] + m | 0, o[2] = o[2] + x | 0, o[3] = o[3] + b | 0 }, _doFinalize: function () { var t = this._data, e = t.words, r = 8 * this._nDataBytes, i = 8 * t.sigBytes; e[i >>> 5] |= 128 << 24 - i % 32; var n = l.floor(r / 4294967296), o = r; e[15 + (64 + i >>> 9 << 4)] = 16711935 & (n << 8 | n >>> 24) | 4278255360 & (n << 24 | n >>> 8), e[14 + (64 + i >>> 9 << 4)] = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), t.sigBytes = 4 * (e.length + 1), this._process(); for (var s = this._hash, c = s.words, a = 0; a < 4; a++) { var h = c[a]; c[a] = 16711935 & (h << 8 | h >>> 24) | 4278255360 & (h << 24 | h >>> 8) } return s }, clone: function () { var t = i.clone.call(this); return t._hash = this._hash.clone(), t } }); function z(t, e, r, i, n, o, s) { var c = t + (e & r | ~e & i) + n + s; return (c << o | c >>> 32 - o) + e } function A(t, e, r, i, n, o, s) { var c = t + (e & i | r & ~i) + n + s; return (c << o | c >>> 32 - o) + e } function C(t, e, r, i, n, o, s) { var c = t + (e ^ r ^ i) + n + s; return (c << o | c >>> 32 - o) + e } function D(t, e, r, i, n, o, s) { var c = t + (r ^ (e | ~i)) + n + s; return (c << o | c >>> 32 - o) + e } t.MD5 = i._createHelper(o), t.HmacMD5 = i._createHmacHelper(o) }(Math), e = (t = bt).lib, r = e.WordArray, i = e.Hasher, n = t.algo, f = [], o = n.SHA1 = i.extend({ _doReset: function () { this._hash = new r.init([1732584193, 4023233417, 2562383102, 271733878, 3285377520]) }, _doProcessBlock: function (t, e) { for (var r = this._hash.words, i = r[0], n = r[1], o = r[2], s = r[3], c = r[4], a = 0; a < 80; a++) { if (a < 16) f[a] = 0 | t[e + a]; else { var h = f[a - 3] ^ f[a - 8] ^ f[a - 14] ^ f[a - 16]; f[a] = h << 1 | h >>> 31 } var l = (i << 5 | i >>> 27) + c + f[a]; l += a < 20 ? 1518500249 + (n & o | ~n & s) : a < 40 ? 1859775393 + (n ^ o ^ s) : a < 60 ? (n & o | n & s | o & s) - 1894007588 : (n ^ o ^ s) - 899497514, c = s, s = o, o = n << 30 | n >>> 2, n = i, i = l } r[0] = r[0] + i | 0, r[1] = r[1] + n | 0, r[2] = r[2] + o | 0, r[3] = r[3] + s | 0, r[4] = r[4] + c | 0 }, _doFinalize: function () { var t = this._data, e = t.words, r = 8 * this._nDataBytes, i = 8 * t.sigBytes; return e[i >>> 5] |= 128 << 24 - i % 32, e[14 + (64 + i >>> 9 << 4)] = Math.floor(r / 4294967296), e[15 + (64 + i >>> 9 << 4)] = r, t.sigBytes = 4 * e.length, this._process(), this._hash }, clone: function () { var t = i.clone.call(this); return t._hash = this._hash.clone(), t } }), t.SHA1 = i._createHelper(o), t.HmacSHA1 = i._createHmacHelper(o), function (n) { var t = bt, e = t.lib, r = e.WordArray, i = e.Hasher, o = t.algo, s = [], B = []; !function () { function t(t) { for (var e = n.sqrt(t), r = 2; r <= e; r++)if (!(t % r)) return; return 1 } function e(t) { return 4294967296 * (t - (0 | t)) | 0 } for (var r = 2, i = 0; i < 64;)t(r) && (i < 8 && (s[i] = e(n.pow(r, .5))), B[i] = e(n.pow(r, 1 / 3)), i++), r++ }(); var w = [], c = o.SHA256 = i.extend({ _doReset: function () { this._hash = new r.init(s.slice(0)) }, _doProcessBlock: function (t, e) { for (var r = this._hash.words, i = r[0], n = r[1], o = r[2], s = r[3], c = r[4], a = r[5], h = r[6], l = r[7], f = 0; f < 64; f++) { if (f < 16) w[f] = 0 | t[e + f]; else { var d = w[f - 15], u = (d << 25 | d >>> 7) ^ (d << 14 | d >>> 18) ^ d >>> 3, p = w[f - 2], _ = (p << 15 | p >>> 17) ^ (p << 13 | p >>> 19) ^ p >>> 10; w[f] = u + w[f - 7] + _ + w[f - 16] } var v = i & n ^ i & o ^ n & o, y = (i << 30 | i >>> 2) ^ (i << 19 | i >>> 13) ^ (i << 10 | i >>> 22), g = l + ((c << 26 | c >>> 6) ^ (c << 21 | c >>> 11) ^ (c << 7 | c >>> 25)) + (c & a ^ ~c & h) + B[f] + w[f]; l = h, h = a, a = c, c = s + g | 0, s = o, o = n, n = i, i = g + (y + v) | 0 } r[0] = r[0] + i | 0, r[1] = r[1] + n | 0, r[2] = r[2] + o | 0, r[3] = r[3] + s | 0, r[4] = r[4] + c | 0, r[5] = r[5] + a | 0, r[6] = r[6] + h | 0, r[7] = r[7] + l | 0 }, _doFinalize: function () { var t = this._data, e = t.words, r = 8 * this._nDataBytes, i = 8 * t.sigBytes; return e[i >>> 5] |= 128 << 24 - i % 32, e[14 + (64 + i >>> 9 << 4)] = n.floor(r / 4294967296), e[15 + (64 + i >>> 9 << 4)] = r, t.sigBytes = 4 * e.length, this._process(), this._hash }, clone: function () { var t = i.clone.call(this); return t._hash = this._hash.clone(), t } }); t.SHA256 = i._createHelper(c), t.HmacSHA256 = i._createHmacHelper(c) }(Math), function () { var n = bt.lib.WordArray, t = bt.enc; t.Utf16 = t.Utf16BE = { stringify: function (t) { for (var e = t.words, r = t.sigBytes, i = [], n = 0; n < r; n += 2) { var o = e[n >>> 2] >>> 16 - n % 4 * 8 & 65535; i.push(String.fromCharCode(o)) } return i.join("") }, parse: function (t) { for (var e = t.length, r = [], i = 0; i < e; i++)r[i >>> 1] |= t.charCodeAt(i) << 16 - i % 2 * 16; return n.create(r, 2 * e) } }; function s(t) { return t << 8 & 4278255360 | t >>> 8 & 16711935 } t.Utf16LE = { stringify: function (t) { for (var e = t.words, r = t.sigBytes, i = [], n = 0; n < r; n += 2) { var o = s(e[n >>> 2] >>> 16 - n % 4 * 8 & 65535); i.push(String.fromCharCode(o)) } return i.join("") }, parse: function (t) { for (var e = t.length, r = [], i = 0; i < e; i++)r[i >>> 1] |= s(t.charCodeAt(i) << 16 - i % 2 * 16); return n.create(r, 2 * e) } } }(), function () { if ("function" == typeof ArrayBuffer) { var t = bt.lib.WordArray, n = t.init; (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 e = t.byteLength, r = [], i = 0; i < e; i++)r[i >>> 2] |= t[i] << 24 - i % 4 * 8; n.call(this, r, e) } else n.apply(this, arguments) }).prototype = t } }(), Math, c = (s = bt).lib, a = c.WordArray, l = c.Hasher, d = s.algo, m = a.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]), x = a.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]), b = a.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]), H = a.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]), z = a.create([0, 1518500249, 1859775393, 2400959708, 2840853838]), A = a.create([1352829926, 1548603684, 1836072691, 2053994217, 0]), u = d.RIPEMD160 = l.extend({ _doReset: function () { this._hash = a.create([1732584193, 4023233417, 2562383102, 271733878, 3285377520]) }, _doProcessBlock: function (t, e) { for (var r = 0; r < 16; r++) { var i = e + r, n = t[i]; t[i] = 16711935 & (n << 8 | n >>> 24) | 4278255360 & (n << 24 | n >>> 8) } var o, s, c, a, h, l, f, d, u, p, _, v = this._hash.words, y = z.words, g = A.words, B = m.words, w = x.words, k = b.words, S = H.words; l = o = v[0], f = s = v[1], d = c = v[2], u = a = v[3], p = h = v[4]; for (r = 0; r < 80; r += 1)_ = o + t[e + B[r]] | 0, _ += r < 16 ? mt(s, c, a) + y[0] : r < 32 ? xt(s, c, a) + y[1] : r < 48 ? Ht(s, c, a) + y[2] : r < 64 ? zt(s, c, a) + y[3] : At(s, c, a) + y[4], _ = (_ = Ct(_ |= 0, k[r])) + h | 0, o = h, h = a, a = Ct(c, 10), c = s, s = _, _ = l + t[e + w[r]] | 0, _ += r < 16 ? At(f, d, u) + g[0] : r < 32 ? zt(f, d, u) + g[1] : r < 48 ? Ht(f, d, u) + g[2] : r < 64 ? xt(f, d, u) + g[3] : mt(f, d, u) + g[4], _ = (_ = Ct(_ |= 0, S[r])) + p | 0, l = p, p = u, u = Ct(d, 10), d = f, f = _; _ = v[1] + c + u | 0, v[1] = v[2] + a + p | 0, v[2] = v[3] + h + l | 0, v[3] = v[4] + o + f | 0, v[4] = v[0] + s + d | 0, v[0] = _ }, _doFinalize: function () { var t = this._data, e = t.words, r = 8 * this._nDataBytes, i = 8 * t.sigBytes; e[i >>> 5] |= 128 << 24 - i % 32, e[14 + (64 + i >>> 9 << 4)] = 16711935 & (r << 8 | r >>> 24) | 4278255360 & (r << 24 | r >>> 8), t.sigBytes = 4 * (e.length + 1), this._process(); for (var n = this._hash, o = n.words, s = 0; s < 5; s++) { var c = o[s]; o[s] = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8) } return n }, clone: function () { var t = l.clone.call(this); return t._hash = this._hash.clone(), t } }), s.RIPEMD160 = l._createHelper(u), s.HmacRIPEMD160 = l._createHmacHelper(u), p = bt.lib.Base, _ = bt.enc.Utf8, bt.algo.HMAC = p.extend({ init: function (t, e) { t = this._hasher = new t.init, "string" == typeof e && (e = _.parse(e)); var r = t.blockSize, i = 4 * r; e.sigBytes > i && (e = t.finalize(e)), e.clamp(); for (var n = this._oKey = e.clone(), o = this._iKey = e.clone(), s = n.words, c = o.words, a = 0; a < r; a++)s[a] ^= 1549556828, c[a] ^= 909522486; n.sigBytes = o.sigBytes = i, 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)) } }), y = (v = bt).lib, g = y.Base, B = y.WordArray, w = v.algo, k = w.SHA1, S = w.HMAC, C = w.PBKDF2 = g.extend({ cfg: g.extend({ keySize: 4, hasher: k, iterations: 1 }), init: function (t) { this.cfg = this.cfg.extend(t) }, compute: function (t, e) { for (var r = this.cfg, i = S.create(r.hasher, t), n = B.create(), o = B.create([1]), s = n.words, c = o.words, a = r.keySize, h = r.iterations; s.length < a;) { var l = i.update(e).finalize(o); i.reset(); for (var f = l.words, d = f.length, u = l, p = 1; p < h; p++) { u = i.finalize(u), i.reset(); for (var _ = u.words, v = 0; v < d; v++)f[v] ^= _[v] } n.concat(l), c[0]++ } return n.sigBytes = 4 * a, n } }), v.PBKDF2 = function (t, e, r) { return C.create(r).compute(t, e) }, E = (D = bt).lib, R = E.Base, M = E.WordArray, F = D.algo, P = F.MD5, W = F.EvpKDF = R.extend({ cfg: R.extend({ keySize: 4, hasher: P, iterations: 1 }), init: function (t) { this.cfg = this.cfg.extend(t) }, compute: function (t, e) { for (var r, i = this.cfg, n = i.hasher.create(), o = M.create(), s = o.words, c = i.keySize, a = i.iterations; s.length < c;) { r && n.update(r), r = n.update(t).finalize(e), n.reset(); for (var h = 1; h < a; h++)r = n.finalize(r), n.reset(); o.concat(r) } return o.sigBytes = 4 * c, o } }), D.EvpKDF = function (t, e, r) { return W.create(r).compute(t, e) }, I = (O = bt).lib.WordArray, U = O.algo, K = U.SHA256, X = U.SHA224 = K.extend({ _doReset: function () { this._hash = new I.init([3238371032, 914150663, 812702999, 4144912697, 4290775857, 1750603025, 1694076839, 3204075428]) }, _doFinalize: function () { var t = K._doFinalize.call(this); return t.sigBytes -= 4, t } }), O.SHA224 = K._createHelper(X), O.HmacSHA224 = K._createHmacHelper(X), L = bt.lib, j = L.Base, N = L.WordArray, (T = bt.x64 = {}).Word = j.extend({ init: function (t, e) { this.high = t, this.low = e } }), T.WordArray = j.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 = [], i = 0; i < e; i++) { var n = t[i]; r.push(n.high), r.push(n.low) } return N.create(r, this.sigBytes) }, clone: function () { for (var t = j.clone.call(this), e = t.words = this.words.slice(0), r = e.length, i = 0; i < r; i++)e[i] = e[i].clone(); return t } }), function (d) { var t = bt, e = t.lib, u = e.WordArray, i = e.Hasher, l = t.x64.Word, r = t.algo, C = [], D = [], E = []; !function () { for (var t = 1, e = 0, r = 0; r < 24; r++) { C[t + 5 * e] = (r + 1) * (r + 2) / 2 % 64; var i = (2 * t + 3 * e) % 5; t = e % 5, e = i } for (t = 0; t < 5; t++)for (e = 0; e < 5; e++)D[t + 5 * e] = e + (2 * t + 3 * e) % 5 * 5; for (var n = 1, o = 0; o < 24; o++) { for (var s = 0, c = 0, a = 0; a < 7; a++) { if (1 & n) { var h = (1 << a) - 1; h < 32 ? c ^= 1 << h : s ^= 1 << h - 32 } 128 & n ? n = n << 1 ^ 113 : n <<= 1 } E[o] = l.create(s, c) } }(); var R = []; !function () { for (var t = 0; t < 25; t++)R[t] = l.create() }(); var n = r.SHA3 = i.extend({ cfg: i.cfg.extend({ outputLength: 512 }), _doReset: function () { for (var t = this._state = [], e = 0; e < 25; e++)t[e] = new l.init; this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32 }, _doProcessBlock: function (t, e) { for (var r = this._state, i = this.blockSize / 2, n = 0; n < i; n++) { var o = t[e + 2 * n], s = t[e + 2 * n + 1]; o = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), s = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), (x = r[n]).high ^= s, x.low ^= o } for (var c = 0; c < 24; c++) { for (var a = 0; a < 5; a++) { for (var h = 0, l = 0, f = 0; f < 5; f++) { h ^= (x = r[a + 5 * f]).high, l ^= x.low } var d = R[a]; d.high = h, d.low = l } for (a = 0; a < 5; a++) { var u = R[(a + 4) % 5], p = R[(a + 1) % 5], _ = p.high, v = p.low; for (h = u.high ^ (_ << 1 | v >>> 31), l = u.low ^ (v << 1 | _ >>> 31), f = 0; f < 5; f++) { (x = r[a + 5 * f]).high ^= h, x.low ^= l } } for (var y = 1; y < 25; y++) { var g = (x = r[y]).high, B = x.low, w = C[y]; l = w < 32 ? (h = g << w | B >>> 32 - w, B << w | g >>> 32 - w) : (h = B << w - 32 | g >>> 64 - w, g << w - 32 | B >>> 64 - w); var k = R[D[y]]; k.high = h, k.low = l } var S = R[0], m = r[0]; S.high = m.high, S.low = m.low; for (a = 0; a < 5; a++)for (f = 0; f < 5; f++) { var x = r[y = a + 5 * f], b = R[y], H = R[(a + 1) % 5 + 5 * f], z = R[(a + 2) % 5 + 5 * f]; x.high = b.high ^ ~H.high & z.high, x.low = b.low ^ ~H.low & z.low } x = r[0]; var A = E[c]; x.high ^= A.high, x.low ^= A.low } }, _doFinalize: function () { var t = this._data, e = t.words, r = (this._nDataBytes, 8 * t.sigBytes), i = 32 * this.blockSize; e[r >>> 5] |= 1 << 24 - r % 32, e[(d.ceil((1 + r) / i) * i >>> 5) - 1] |= 128, t.sigBytes = 4 * e.length, this._process(); for (var n = this._state, o = this.cfg.outputLength / 8, s = o / 8, c = [], a = 0; a < s; a++) { var h = n[a], l = h.high, f = h.low; l = 16711935 & (l << 8 | l >>> 24) | 4278255360 & (l << 24 | l >>> 8), f = 16711935 & (f << 8 | f >>> 24) | 4278255360 & (f << 24 | f >>> 8), c.push(f), c.push(l) } return new u.init(c, o) }, clone: function () { for (var t = i.clone.call(this), e = t._state = this._state.slice(0), r = 0; r < 25; r++)e[r] = e[r].clone(); return t } }); t.SHA3 = i._createHelper(n), t.HmacSHA3 = i._createHmacHelper(n) }(Math), function () { var t = bt, e = t.lib.Hasher, r = t.x64, i = r.Word, n = r.WordArray, o = t.algo; function s() { return i.create.apply(i, arguments) } var mt = [s(1116352408, 3609767458), s(1899447441, 602891725), s(3049323471, 3964484399), s(3921009573, 2173295548), s(961987163, 4081628472), s(1508970993, 3053834265), s(2453635748, 2937671579), s(2870763221, 3664609560), s(3624381080, 2734883394), s(310598401, 1164996542), s(607225278, 1323610764), s(1426881987, 3590304994), s(1925078388, 4068182383), s(2162078206, 991336113), s(2614888103, 633803317), s(3248222580, 3479774868), s(3835390401, 2666613458), s(4022224774, 944711139), s(264347078, 2341262773), s(604807628, 2007800933), s(770255983, 1495990901), s(1249150122, 1856431235), s(1555081692, 3175218132), s(1996064986, 2198950837), s(2554220882, 3999719339), s(2821834349, 766784016), s(2952996808, 2566594879), s(3210313671, 3203337956), s(3336571891, 1034457026), s(3584528711, 2466948901), s(113926993, 3758326383), s(338241895, 168717936), s(666307205, 1188179964), s(773529912, 1546045734), s(1294757372, 1522805485), s(1396182291, 2643833823), s(1695183700, 2343527390), s(1986661051, 1014477480), s(2177026350, 1206759142), s(2456956037, 344077627), s(2730485921, 1290863460), s(2820302411, 3158454273), s(3259730800, 3505952657), s(3345764771, 106217008), s(3516065817, 3606008344), s(3600352804, 1432725776), s(4094571909, 1467031594), s(275423344, 851169720), s(430227734, 3100823752), s(506948616, 1363258195), s(659060556, 3750685593), s(883997877, 3785050280), s(958139571, 3318307427), s(1322822218, 3812723403), s(1537002063, 2003034995), s(1747873779, 3602036899), s(1955562222, 1575990012), s(2024104815, 1125592928), s(2227730452, 2716904306), s(2361852424, 442776044), s(2428436474, 593698344), s(2756734187, 3733110249), s(3204031479, 2999351573), s(3329325298, 3815920427), s(3391569614, 3928383900), s(3515267271, 566280711), s(3940187606, 3454069534), s(4118630271, 4000239992), s(116418474, 1914138554), s(174292421, 2731055270), s(289380356, 3203993006), s(460393269, 320620315), s(685471733, 587496836), s(852142971, 1086792851), s(1017036298, 365543100), s(1126000580, 2618297676), s(1288033470, 3409855158), s(1501505948, 4234509866), s(1607167915, 987167468), s(1816402316, 1246189591)], xt = []; !function () { for (var t = 0; t < 80; t++)xt[t] = s() }(); var c = o.SHA512 = e.extend({ _doReset: function () { this._hash = new n.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, i = r[0], n = r[1], o = r[2], s = r[3], c = r[4], a = r[5], h = r[6], l = r[7], f = i.high, d = i.low, u = n.high, p = n.low, _ = o.high, v = o.low, y = s.high, g = s.low, B = c.high, w = c.low, k = a.high, S = a.low, m = h.high, x = h.low, b = l.high, H = l.low, z = f, A = d, C = u, D = p, E = _, R = v, M = y, F = g, P = B, W = w, O = k, I = S, U = m, K = x, X = b, L = H, j = 0; j < 80; j++) { var N, T, q = xt[j]; if (j < 16) T = q.high = 0 | t[e + 2 * j], N = q.low = 0 | t[e + 2 * j + 1]; else { var Z = xt[j - 15], V = Z.high, G = Z.low, J = (V >>> 1 | G << 31) ^ (V >>> 8 | G << 24) ^ V >>> 7, $ = (G >>> 1 | V << 31) ^ (G >>> 8 | V << 24) ^ (G >>> 7 | V << 25), Q = xt[j - 2], Y = Q.high, tt = Q.low, et = (Y >>> 19 | tt << 13) ^ (Y << 3 | tt >>> 29) ^ Y >>> 6, rt = (tt >>> 19 | Y << 13) ^ (tt << 3 | Y >>> 29) ^ (tt >>> 6 | Y << 26), it = xt[j - 7], nt = it.high, ot = it.low, st = xt[j - 16], ct = st.high, at = st.low; T = (T = (T = J + nt + ((N = $ + ot) >>> 0 < $ >>> 0 ? 1 : 0)) + et + ((N += rt) >>> 0 < rt >>> 0 ? 1 : 0)) + ct + ((N += at) >>> 0 < at >>> 0 ? 1 : 0), q.high = T, q.low = N } var ht, lt = P & O ^ ~P & U, ft = W & I ^ ~W & K, dt = z & C ^ z & E ^ C & E, ut = A & D ^ A & R ^ D & R, pt = (z >>> 28 | A << 4) ^ (z << 30 | A >>> 2) ^ (z << 25 | A >>> 7), _t = (A >>> 28 | z << 4) ^ (A << 30 | z >>> 2) ^ (A << 25 | z >>> 7), vt = (P >>> 14 | W << 18) ^ (P >>> 18 | W << 14) ^ (P << 23 | W >>> 9), yt = (W >>> 14 | P << 18) ^ (W >>> 18 | P << 14) ^ (W << 23 | P >>> 9), gt = mt[j], Bt = gt.high, wt = gt.low, kt = X + vt + ((ht = L + yt) >>> 0 < L >>> 0 ? 1 : 0), St = _t + ut; X = U, L = K, U = O, K = I, O = P, I = W, P = M + (kt = (kt = (kt = kt + lt + ((ht = ht + ft) >>> 0 < ft >>> 0 ? 1 : 0)) + Bt + ((ht = ht + wt) >>> 0 < wt >>> 0 ? 1 : 0)) + T + ((ht = ht + N) >>> 0 < N >>> 0 ? 1 : 0)) + ((W = F + ht | 0) >>> 0 < F >>> 0 ? 1 : 0) | 0, M = E, F = R, E = C, R = D, C = z, D = A, z = kt + (pt + dt + (St >>> 0 < _t >>> 0 ? 1 : 0)) + ((A = ht + St | 0) >>> 0 < ht >>> 0 ? 1 : 0) | 0 } d = i.low = d + A, i.high = f + z + (d >>> 0 < A >>> 0 ? 1 : 0), p = n.low = p + D, n.high = u + C + (p >>> 0 < D >>> 0 ? 1 : 0), v = o.low = v + R, o.high = _ + E + (v >>> 0 < R >>> 0 ? 1 : 0), g = s.low = g + F, s.high = y + M + (g >>> 0 < F >>> 0 ? 1 : 0), w = c.low = w + W, c.high = B + P + (w >>> 0 < W >>> 0 ? 1 : 0), S = a.low = S + I, a.high = k + O + (S >>> 0 < I >>> 0 ? 1 : 0), x = h.low = x + K, h.high = m + U + (x >>> 0 < K >>> 0 ? 1 : 0), H = l.low = H + L, l.high = b + X + (H >>> 0 < L >>> 0 ? 1 : 0) }, _doFinalize: function () { var t = this._data, e = t.words, r = 8 * this._nDataBytes, i = 8 * t.sigBytes; return e[i >>> 5] |= 128 << 24 - i % 32, e[30 + (128 + i >>> 10 << 5)] = Math.floor(r / 4294967296), e[31 + (128 + i >>> 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) }(), Z = (q = bt).x64, V = Z.Word, G = Z.WordArray, J = q.algo, $ = J.SHA512, Q = J.SHA384 = $.extend({ _doReset: function () { this._hash = new G.init([new V.init(3418070365, 3238371032), new V.init(1654270250, 914150663), new V.init(2438529370, 812702999), new V.init(355462360, 4144912697), new V.init(1731405415, 4290775857), new V.init(2394180231, 1750603025), new V.init(3675008525, 1694076839), new V.init(1203062813, 3204075428)]) }, _doFinalize: function () { var t = $._doFinalize.call(this); return t.sigBytes -= 16, t } }), q.SHA384 = $._createHelper(Q), q.HmacSHA384 = $._createHmacHelper(Q), bt.lib.Cipher || function () { var t = bt, e = t.lib, r = e.Base, a = e.WordArray, i = e.BufferedBlockAlgorithm, n = t.enc, o = (n.Utf8, n.Base64), s = t.algo.EvpKDF, c = e.Cipher = i.extend({ cfg: r.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 () { i.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 (i) { return { encrypt: function (t, e, r) { return h(e).encrypt(i, t, e, r) }, decrypt: function (t, e, r) { return h(e).decrypt(i, t, e, r) } } } }); function h(t) { return "string" == typeof t ? w : g } e.StreamCipher = c.extend({ _doFinalize: function () { return this._process(!0) }, blockSize: 1 }); var l, f = t.mode = {}, d = e.BlockCipherMode = r.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 } }), u = f.CBC = ((l = d.extend()).Encryptor = l.extend({ processBlock: function (t, e) { var r = this._cipher, i = r.blockSize; p.call(this, t, e, i), r.encryptBlock(t, e), this._prevBlock = t.slice(e, e + i) } }), l.Decryptor = l.extend({ processBlock: function (t, e) { var r = this._cipher, i = r.blockSize, n = t.slice(e, e + i); r.decryptBlock(t, e), p.call(this, t, e, i), this._prevBlock = n } }), l); function p(t, e, r) { var i, n = this._iv; n ? (i = n, this._iv = void 0) : i = this._prevBlock; for (var o = 0; o < r; o++)t[e + o] ^= i[o] } var _ = (t.pad = {}).Pkcs7 = { pad: function (t, e) { for (var r = 4 * e, i = r - t.sigBytes % r, n = i << 24 | i << 16 | i << 8 | i, o = [], s = 0; s < i; s += 4)o.push(n); var c = a.create(o, i); t.concat(c) }, unpad: function (t) { var e = 255 & t.words[t.sigBytes - 1 >>> 2]; t.sigBytes -= e } }, v = (e.BlockCipher = c.extend({ cfg: c.cfg.extend({ mode: u, padding: _ }), reset: function () { var t; c.reset.call(this); var e = this.cfg, r = e.iv, i = e.mode; this._xformMode == this._ENC_XFORM_MODE ? t = i.createEncryptor : (t = i.createDecryptor, this._minBufferSize = 1), this._mode && this._mode.__creator == t ? this._mode.init(this, r && r.words) : (this._mode = t.call(i, this, r && r.words), this._mode.__creator = t) }, _doProcessBlock: function (t, e) { this._mode.processBlock(t, e) }, _doFinalize: function () { var t, e = this.cfg.padding; return this._xformMode == this._ENC_XFORM_MODE ? (e.pad(this._data, this.blockSize), t = this._process(!0)) : (t = this._process(!0), e.unpad(t)), t }, blockSize: 4 }), e.CipherParams = r.extend({ init: function (t) { this.mixIn(t) }, toString: function (t) { return (t || this.formatter).stringify(this) } })), y = (t.format = {}).OpenSSL = { stringify: function (t) { var e = t.ciphertext, r = t.salt; return (r ? a.create([1398893684, 1701076831]).concat(r).concat(e) : e).toString(o) }, parse: function (t) { var e, r = o.parse(t), i = r.words; return 1398893684 == i[0] && 1701076831 == i[1] && (e = a.create(i.slice(2, 4)), i.splice(0, 4), r.sigBytes -= 16), v.create({ ciphertext: r, salt: e }) } }, g = e.SerializableCipher = r.extend({ cfg: r.extend({ format: y }), encrypt: function (t, e, r, i) { i = this.cfg.extend(i); var n = t.createEncryptor(r, i), o = n.finalize(e), s = n.cfg; return v.create({ ciphertext: o, key: r, iv: s.iv, algorithm: t, mode: s.mode, padding: s.padding, blockSize: t.blockSize, formatter: i.format }) }, decrypt: function (t, e, r, i) { return i = this.cfg.extend(i), e = this._parse(e, i.format), t.createDecryptor(r, i).finalize(e.ciphertext) }, _parse: function (t, e) { return "string" == typeof t ? e.parse(t, this) : t } }), B = (t.kdf = {}).OpenSSL = { execute: function (t, e, r, i) { i = i || a.random(8); var n = s.create({ keySize: e + r }).compute(t, i), o = a.create(n.words.slice(e), 4 * r); return n.sigBytes = 4 * e, v.create({ key: n, iv: o, salt: i }) } }, w = e.PasswordBasedCipher = g.extend({ cfg: g.cfg.extend({ kdf: B }), encrypt: function (t, e, r, i) { var n = (i = this.cfg.extend(i)).kdf.execute(r, t.keySize, t.ivSize); i.iv = n.iv; var o = g.encrypt.call(this, t, e, n.key, i); return o.mixIn(n), o }, decrypt: function (t, e, r, i) { i = this.cfg.extend(i), e = this._parse(e, i.format); var n = i.kdf.execute(r, t.keySize, t.ivSize, e.salt); return i.iv = n.iv, g.decrypt.call(this, t, e, n.key, i) } }) }(), bt.mode.CFB = ((Y = bt.lib.BlockCipherMode.extend()).Encryptor = Y.extend({ processBlock: function (t, e) { var r = this._cipher, i = r.blockSize; Dt.call(this, t, e, i, r), this._prevBlock = t.slice(e, e + i) } }), Y.Decryptor = Y.extend({ processBlock: function (t, e) { var r = this._cipher, i = r.blockSize, n = t.slice(e, e + i); Dt.call(this, t, e, i, r), this._prevBlock = n } }), Y), bt.mode.ECB = ((tt = bt.lib.BlockCipherMode.extend()).Encryptor = tt.extend({ processBlock: function (t, e) { this._cipher.encryptBlock(t, e) } }), tt.Decryptor = tt.extend({ processBlock: function (t, e) { this._cipher.decryptBlock(t, e) } }), tt), bt.pad.AnsiX923 = { pad: function (t, e) { var r = t.sigBytes, i = 4 * e, n = i - r % i, o = r + n - 1; t.clamp(), t.words[o >>> 2] |= n << 24 - o % 4 * 8, t.sigBytes += n }, unpad: function (t) { var e = 255 & t.words[t.sigBytes - 1 >>> 2]; t.sigBytes -= e } }, bt.pad.Iso10126 = { pad: function (t, e) { var r = 4 * e, i = r - t.sigBytes % r; t.concat(bt.lib.WordArray.random(i - 1)).concat(bt.lib.WordArray.create([i << 24], 1)) }, unpad: function (t) { var e = 255 & t.words[t.sigBytes - 1 >>> 2]; t.sigBytes -= e } }, bt.pad.Iso97971 = { pad: function (t, e) { t.concat(bt.lib.WordArray.create([2147483648], 1)), bt.pad.ZeroPadding.pad(t, e) }, unpad: function (t) { bt.pad.ZeroPadding.unpad(t), t.sigBytes-- } }, bt.mode.OFB = (et = bt.lib.BlockCipherMode.extend(), rt = et.Encryptor = et.extend({ processBlock: function (t, e) { var r = this._cipher, i = r.blockSize, n = this._iv, o = this._keystream; n && (o = this._keystream = n.slice(0), this._iv = void 0), r.encryptBlock(o, 0); for (var s = 0; s < i; s++)t[e + s] ^= o[s] } }), et.Decryptor = rt, et), bt.pad.NoPadding = { pad: function () { }, unpad: function () { } }, it = bt.lib.CipherParams, nt = bt.enc.Hex, bt.format.Hex = { stringify: function (t) { return t.ciphertext.toString(nt) }, parse: function (t) { var e = nt.parse(t); return it.create({ ciphertext: e }) } }, function () { var t = bt, e = t.lib.BlockCipher, r = t.algo, h = [], l = [], f = [], d = [], u = [], p = [], _ = [], v = [], y = [], g = []; !function () { for (var t = [], e = 0; e < 256; e++)t[e] = e < 128 ? e << 1 : e << 1 ^ 283; var r = 0, i = 0; for (e = 0; e < 256; e++) { var n = i ^ i << 1 ^ i << 2 ^ i << 3 ^ i << 4; n = n >>> 8 ^ 255 & n ^ 99, h[r] = n; var o = t[l[n] = r], s = t[o], c = t[s], a = 257 * t[n] ^ 16843008 * n; f[r] = a << 24 | a >>> 8, d[r] = a << 16 | a >>> 16, u[r] = a << 8 | a >>> 24, p[r] = a; a = 16843009 * c ^ 65537 * s ^ 257 * o ^ 16843008 * r; _[n] = a << 24 | a >>> 8, v[n] = a << 16 | a >>> 16, y[n] = a << 8 | a >>> 24, g[n] = a, r ? (r = o ^ t[t[t[c ^ o]]], i ^= t[t[i]]) : r = i = 1 } }(); var B = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54], i = 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, i = 4 * (1 + (this._nRounds = 6 + r)), n = this._keySchedule = [], o = 0; o < i; o++)o < r ? n[o] = e[o] : (a = n[o - 1], o % r ? 6 < r && o % r == 4 && (a = h[a >>> 24] << 24 | h[a >>> 16 & 255] << 16 | h[a >>> 8 & 255] << 8 | h[255 & a]) : (a = h[(a = a << 8 | a >>> 24) >>> 24] << 24 | h[a >>> 16 & 255] << 16 | h[a >>> 8 & 255] << 8 | h[255 & a], a ^= B[o / r | 0] << 24), n[o] = n[o - r] ^ a); for (var s = this._invKeySchedule = [], c = 0; c < i; c++) { o = i - c; if (c % 4) var a = n[o]; else a = n[o - 4]; s[c] = c < 4 || o <= 4 ? a : _[h[a >>> 24]] ^ v[h[a >>> 16 & 255]] ^ y[h[a >>> 8 & 255]] ^ g[h[255 & a]] } } }, encryptBlock: function (t, e) { this._doCryptBlock(t, e, this._keySchedule, f, d, u, p, h) }, 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, _, v, y, g, l); r = t[e + 1]; t[e + 1] = t[e + 3], t[e + 3] = r }, _doCryptBlock: function (t, e, r, i, n, o, s, c) { for (var a = this._nRounds, h = t[e] ^ r[0], l = t[e + 1] ^ r[1], f = t[e + 2] ^ r[2], d = t[e + 3] ^ r[3], u = 4, p = 1; p < a; p++) { var _ = i[h >>> 24] ^ n[l >>> 16 & 255] ^ o[f >>> 8 & 255] ^ s[255 & d] ^ r[u++], v = i[l >>> 24] ^ n[f >>> 16 & 255] ^ o[d >>> 8 & 255] ^ s[255 & h] ^ r[u++], y = i[f >>> 24] ^ n[d >>> 16 & 255] ^ o[h >>> 8 & 255] ^ s[255 & l] ^ r[u++], g = i[d >>> 24] ^ n[h >>> 16 & 255] ^ o[l >>> 8 & 255] ^ s[255 & f] ^ r[u++]; h = _, l = v, f = y, d = g } _ = (c[h >>> 24] << 24 | c[l >>> 16 & 255] << 16 | c[f >>> 8 & 255] << 8 | c[255 & d]) ^ r[u++], v = (c[l >>> 24] << 24 | c[f >>> 16 & 255] << 16 | c[d >>> 8 & 255] << 8 | c[255 & h]) ^ r[u++], y = (c[f >>> 24] << 24 | c[d >>> 16 & 255] << 16 | c[h >>> 8 & 255] << 8 | c[255 & l]) ^ r[u++], g = (c[d >>> 24] << 24 | c[h >>> 16 & 255] << 16 | c[l >>> 8 & 255] << 8 | c[255 & f]) ^ r[u++]; t[e] = _, t[e + 1] = v, t[e + 2] = y, t[e + 3] = g }, keySize: 8 }); t.AES = e._createHelper(i) }(), function () { var t = bt, e = t.lib, n = e.WordArray, r = e.BlockCipher, i = t.algo, h = [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], l = [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], d = [{ 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 }], u = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679], o = i.DES = r.extend({ _doReset: function () { for (var t = this._key.words, e = [], r = 0; r < 56; r++) { var i = h[r] - 1; e[r] = t[i >>> 5] >>> 31 - i % 32 & 1 } for (var n = this._subKeys = [], o = 0; o < 16; o++) { var s = n[o] = [], c = f[o]; for (r = 0; r < 24; r++)s[r / 6 | 0] |= e[(l[r] - 1 + c) % 28] << 31 - r % 6, s[4 + (r / 6 | 0)] |= e[28 + (l[r + 24] - 1 + c) % 28] << 31 - r % 6; s[0] = s[0] << 1 | s[0] >>> 31; for (r = 1; r < 7; r++)s[r] = s[r] >>> 4 * (r - 1) + 3; s[7] = s[7] << 5 | s[7] >>> 27 } var a = this._invSubKeys = []; for (r = 0; r < 16; r++)a[r] = n[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), _.call(this, 2, 858993459), _.call(this, 8, 16711935), p.call(this, 1, 1431655765); for (var i = 0; i < 16; i++) { for (var n = r[i], o = this._lBlock, s = this._rBlock, c = 0, a = 0; a < 8; a++)c |= d[a][((s ^ n[a]) & u[a]) >>> 0]; this._lBlock = s, this._rBlock = o ^ c } var h = this._lBlock; this._lBlock = this._rBlock, this._rBlock = h, p.call(this, 1, 1431655765), _.call(this, 8, 16711935), _.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 _(t, e) { var r = (this._rBlock >>> t ^ this._lBlock) & e; this._lBlock ^= r, this._rBlock ^= r << t } t.DES = r._createHelper(o); var s = i.TripleDES = r.extend({ _doReset: function () { var t = this._key.words; if (2 !== t.length && 4 !== t.length && t.length < 6) throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192."); var e = t.slice(0, 2), r = t.length < 4 ? t.slice(0, 2) : t.slice(2, 4), i = t.length < 6 ? t.slice(0, 2) : t.slice(4, 6); this._des1 = o.createEncryptor(n.create(e)), this._des2 = o.createEncryptor(n.create(r)), this._des3 = o.createEncryptor(n.create(i)) }, 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 = r._createHelper(s) }(), function () { var t = bt, 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, i = this._S = [], n = 0; n < 256; n++)i[n] = n; n = 0; for (var o = 0; n < 256; n++) { var s = n % r, c = e[s >>> 2] >>> 24 - s % 4 * 8 & 255; o = (o + i[n] + c) % 256; var a = i[n]; i[n] = i[o], i[o] = a } this._i = this._j = 0 }, _doProcessBlock: function (t, e) { t[e] ^= n.call(this) }, keySize: 8, ivSize: 0 }); function n() { for (var t = this._S, e = this._i, r = this._j, i = 0, n = 0; n < 4; n++) { r = (r + t[e = (e + 1) % 256]) % 256; var o = t[e]; t[e] = t[r], t[r] = o, i |= t[(t[e] + t[r]) % 256] << 24 - 8 * n } return this._i = e, this._j = r, i } t.RC4 = e._createHelper(i); var o = r.RC4Drop = i.extend({ cfg: i.cfg.extend({ drop: 192 }), _doReset: function () { i._doReset.call(this); for (var t = this.cfg.drop; 0 < t; t--)n.call(this) } }); t.RC4Drop = e._createHelper(o) }(), bt.mode.CTRGladman = (ot = bt.lib.BlockCipherMode.extend(), st = ot.Encryptor = ot.extend({ processBlock: function (t, e) { var r, i = this._cipher, n = i.blockSize, o = this._iv, s = this._counter; o && (s = this._counter = o.slice(0), this._iv = void 0), 0 === ((r = s)[0] = Et(r[0])) && (r[1] = Et(r[1])); var c = s.slice(0); i.encryptBlock(c, 0); for (var a = 0; a < n; a++)t[e + a] ^= c[a] } }), ot.Decryptor = st, ot), at = (ct = bt).lib.StreamCipher, ht = ct.algo, lt = [], ft = [], dt = [], ut = ht.Rabbit = at.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 i = 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]]; for (r = this._b = 0; r < 4; r++)Rt.call(this); for (r = 0; r < 8; r++)n[r] ^= i[r + 4 & 7]; if (e) { var o = e.words, s = o[0], c = o[1], a = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), h = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8), l = a >>> 16 | 4294901760 & h, f = h << 16 | 65535 & a; n[0] ^= a, n[1] ^= l, n[2] ^= h, n[3] ^= f, n[4] ^= a, n[5] ^= l, n[6] ^= h, n[7] ^= f; for (r = 0; r < 4; r++)Rt.call(this) } }, _doProcessBlock: function (t, e) { var r = this._X; Rt.call(this), lt[0] = r[0] ^ r[5] >>> 16 ^ r[3] << 16, lt[1] = r[2] ^ r[7] >>> 16 ^ r[5] << 16, lt[2] = r[4] ^ r[1] >>> 16 ^ r[7] << 16, lt[3] = r[6] ^ r[3] >>> 16 ^ r[1] << 16; for (var i = 0; i < 4; i++)lt[i] = 16711935 & (lt[i] << 8 | lt[i] >>> 24) | 4278255360 & (lt[i] << 24 | lt[i] >>> 8), t[e + i] ^= lt[i] }, blockSize: 4, ivSize: 2 }), ct.Rabbit = at._createHelper(ut), bt.mode.CTR = (pt = bt.lib.BlockCipherMode.extend(), _t = pt.Encryptor = pt.extend({ processBlock: function (t, e) { var r = this._cipher, i = r.blockSize, n = this._iv, o = this._counter; n && (o = this._counter = n.slice(0), this._iv = void 0); var s = o.slice(0); r.encryptBlock(s, 0), o[i - 1] = o[i - 1] + 1 | 0; for (var c = 0; c < i; c++)t[e + c] ^= s[c] } }), pt.Decryptor = _t, pt), yt = (vt = bt).lib.StreamCipher, gt = vt.algo, Bt = [], wt = [], kt = [], St = gt.RabbitLegacy = yt.extend({ _doReset: function () { for (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], 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]], n = this._b = 0; n < 4; n++)Mt.call(this); for (n = 0; n < 8; n++)i[n] ^= r[n + 4 & 7]; if (e) { var o = e.words, s = o[0], c = o[1], a = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), h = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8), l = a >>> 16 | 4294901760 & h, f = h << 16 | 65535 & a; i[0] ^= a, i[1] ^= l, i[2] ^= h, i[3] ^= f, i[4] ^= a, i[5] ^= l, i[6] ^= h, i[7] ^= f; for (n = 0; n < 4; n++)Mt.call(this) } }, _doProcessBlock: function (t, e) { var r = this._X; Mt.call(this), Bt[0] = r[0] ^ r[5] >>> 16 ^ r[3] << 16, Bt[1] = r[2] ^ r[7] >>> 16 ^ r[5] << 16, Bt[2] = r[4] ^ r[1] >>> 16 ^ r[7] << 16, Bt[3] = r[6] ^ r[3] >>> 16 ^ r[1] << 16; for (var i = 0; i < 4; i++)Bt[i] = 16711935 & (Bt[i] << 8 | Bt[i] >>> 24) | 4278255360 & (Bt[i] << 24 | Bt[i] >>> 8), t[e + i] ^= Bt[i] }, blockSize: 4, ivSize: 2 }), vt.RabbitLegacy = yt._createHelper(St), bt.pad.ZeroPadding = { pad: function (t, e) { var r = 4 * e; t.clamp(), t.sigBytes += r - (t.sigBytes % r || r) }, unpad: function (t) { var e = t.words, r = t.sigBytes - 1; for (r = t.sigBytes - 1; 0 <= r; r--)if (e[r >>> 2] >>> 24 - r % 4 * 8 & 255) { t.sigBytes = r + 1; break } } }, bt }); @@ -12,6 +12,7 @@ const notify = $.isNode() ? require('./sendNotify') : ''; const JXUserAgent = $.isNode() ? (process.env.JX_USER_AGENT ? process.env.JX_USER_AGENT : ``) : ``; //Node.js用户请在jdCookie.js处填写京东ck; const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; +let NowHour = new Date().getHours(); let allMessage = ''; let allMessage2 = ''; let allReceiveMessage = ''; @@ -75,7 +76,7 @@ RemainMessage += '【其他】京喜红包只能在京喜使用,其他同理'; let WP_APP_TOKEN_ONE = ""; let TempBaipiao = ""; - +let llgeterror=false; let doExJxBeans ="false"; let time = new Date().getHours(); @@ -321,6 +322,12 @@ if(DisableIndex!=-1){ $.todayOutJxBean=0; $.xibeanCount = 0; $.PigPet = ''; + $.YunFeiTitle=""; + $.YunFeiQuan = 0; + $.YunFeiQuanEndTime = ""; + $.YunFeiTitle2=""; + $.YunFeiQuan2 = 0; + $.YunFeiQuanEndTime2 = ""; TempBaipiao = ""; strGuoqi=""; console.log(`******开始查询【京东账号${$.index}】${$.nickName || $.UserName}*********`); @@ -353,14 +360,26 @@ if(DisableIndex!=-1){ if(EnableJdMs) await getMs(); - //东东农场 - if(EnableJdFruit){ - await jdfruitRequest('taskInitForFarm', { - "version": 14, - "channel": 1, - "babelChannel": "120" - }); - await getjdfruit(); + //东东农场 + if (EnableJdFruit) { + llgeterror = false; + if (NowHour > 16) { + await jdfruitRequest('taskInitForFarm', { + "version": 14, + "channel": 1, + "babelChannel": "120" + }); + } + await getjdfruit(); + if (llgeterror) { + console.log(`东东农场API查询失败,等待10秒后再次尝试...`) + await $.wait(10 * 1000); + await getjdfruit(); + } + if (llgeterror) { + console.log(`东东农场API查询失败,有空重启路由器换个IP吧.`) + } + } //极速金币 if(EnableJdSpeed) @@ -368,7 +387,13 @@ if(DisableIndex!=-1){ //京喜牧场 if(EnableJxMC){ + llgeterror = false; await requestAlgo(); + if(llgeterror){ + console.log(`等待10秒后再次尝试...`) + await $.wait(10 * 1000); + await requestAlgo(); + } await JxmcGetRequest(); } @@ -703,14 +728,14 @@ async function showMsg() { ReturnMessage += `\n`; if ($.beanCount){ - ReturnMessage += `【当前京豆】${$.beanCount}豆(≈${(($.beanCount-$.beanChangeXi)/ 100).toFixed(2)}元)\n`; - strsummary+= `【当前京豆】${$.beanCount}豆(≈${(($.beanCount-$.beanChangeXi)/ 100).toFixed(2)}元)\n`; + ReturnMessage += `【当前京豆】${$.beanCount-$.beanChangeXi}豆(≈${(($.beanCount-$.beanChangeXi)/ 100).toFixed(2)}元)\n`; + strsummary+= `【当前京豆】${$.beanCount-$.beanChangeXi}豆(≈${(($.beanCount-$.beanChangeXi)/ 100).toFixed(2)}元)\n`; } else { if($.levelName || $.JingXiang) ReturnMessage += `【当前京豆】获取失败,接口返回空数据\n`; else{ - ReturnMessage += `【当前京豆】${$.beanCount}豆(≈${(($.beanCount-$.beanChangeXi)/ 100).toFixed(2)}元)\n`; - strsummary += `【当前京豆】${$.beanCount}豆(≈${(($.beanCount-$.beanChangeXi)/ 100).toFixed(2)}元)\n`; + ReturnMessage += `【当前京豆】${$.beanCount-$.beanChangeXi}豆(≈${(($.beanCount-$.beanChangeXi)/ 100).toFixed(2)}元)\n`; + strsummary += `【当前京豆】${$.beanCount-$.beanChangeXi}豆(≈${(($.beanCount-$.beanChangeXi)/ 100).toFixed(2)}元)\n`; } } @@ -879,8 +904,17 @@ async function showMsg() { } if(EnableJDPet){ llPetError=false; - const response = await PetRequest('energyCollect'); - const initPetTownRes = await PetRequest('initPetTown'); + var response =""; + response = await PetRequest('energyCollect'); + if(llPetError) + response = await PetRequest('energyCollect'); + + llPetError=false; + var initPetTownRes = ""; + initPetTownRes = await PetRequest('initPetTown'); + if(llPetError) + initPetTownRes = await PetRequest('initPetTown'); + if(!llPetError && initPetTownRes){ if (initPetTownRes.code === '0' && initPetTownRes.resultCode === '0' && initPetTownRes.message === 'success') { $.petInfo = initPetTownRes.result; @@ -947,6 +981,23 @@ async function showMsg() { ReturnMessage += `${$.message}`; strsummary +=`${$.message}`; + if($.YunFeiQuan){ + var strTempYF="【免运费券】"+$.YunFeiQuan+"张"; + if($.YunFeiQuanEndTime) + strTempYF+="(有效期至"+$.YunFeiQuanEndTime+")"; + strTempYF+="\n"; + ReturnMessage +=strTempYF + strsummary +=strTempYF; + } + if($.YunFeiQuan2){ + var strTempYF2="【免运费券】"+$.YunFeiQuan2+"张"; + if($.YunFeiQuanEndTime2) + strTempYF+="(有效期至"+$.YunFeiQuanEndTime2+")"; + strTempYF2+="\n"; + ReturnMessage +=strTempYF2 + strsummary +=strTempYF2; + } + if (userIndex2 != -1) { allMessageGp2 += ReturnMessageTitle+ReturnMessage + `\n`; } @@ -1061,6 +1112,7 @@ async function bean() { } await redPacket(); + await getCoupon(); } async function Monthbean() { @@ -1135,22 +1187,21 @@ async function Monthbean() { async function jdCash() { let functionId = "cash_homePage"; - let body = "%7B%7D"; - let uuid = randomString(16); + /* let body = {}; console.log(`正在获取领现金任务签名...`); isSignError = false; - let sign = await getSign(functionId, decodeURIComponent(body), uuid) + let sign = await getSign(functionId, body); if (isSignError) { console.log(`领现金任务签名获取失败,等待2秒后再次尝试...`) await $.wait(2 * 1000); isSignError = false; - sign = await getSign(functionId, decodeURIComponent(body), uuid); + sign =await getSign(functionId, body); } if (isSignError) { console.log(`领现金任务签名获取失败,等待2秒后再次尝试...`) await $.wait(2 * 1000); isSignError = false; - sign = await getSign(functionId, decodeURIComponent(body), uuid); + sign = await getSign(functionId, body); } if (!isSignError) { console.log(`领现金任务签名获取成功...`) @@ -1158,10 +1209,10 @@ async function jdCash() { console.log(`领现金任务签名获取失败...`) $.jdCash = 0; return - } - let url = `${JD_API_HOST}?functionId=${functionId}&build=167774&client=apple&clientVersion=10.1.0&uuid=${uuid}&${sign}` + } */ + let sign = `body=%7B%7D&build=167968&client=apple&clientVersion=10.4.0&d_brand=apple&d_model=iPhone13%2C3&ef=1&eid=eidI25488122a6s9Uqq6qodtQx6rgQhFlHkaE1KqvCRbzRnPZgP/93P%2BzfeY8nyrCw1FMzlQ1pE4X9JdmFEYKWdd1VxutadX0iJ6xedL%2BVBrSHCeDGV1&ep=%7B%22ciphertype%22%3A5%2C%22cipher%22%3A%7B%22screen%22%3A%22CJO3CMeyDJCy%22%2C%22osVersion%22%3A%22CJUkDK%3D%3D%22%2C%22openudid%22%3A%22CJSmCWU0DNYnYtS0DtGmCJY0YJcmDwCmYJC0DNHwZNc5ZQU2DJc3Zq%3D%3D%22%2C%22area%22%3A%22CJZpCJCmC180ENcnCv80ENc1EK%3D%3D%22%2C%22uuid%22%3A%22aQf1ZRdxb2r4ovZ1EJZhcxYlVNZSZz09%22%7D%2C%22ts%22%3A1648428189%2C%22hdid%22%3A%22JM9F1ywUPwflvMIpYPok0tt5k9kW4ArJEU3lfLhxBqw%3D%22%2C%22version%22%3A%221.0.3%22%2C%22appname%22%3A%22com.360buy.jdmobile%22%2C%22ridx%22%3A-1%7D&ext=%7B%22prstate%22%3A%220%22%2C%22pvcStu%22%3A%221%22%7D&isBackground=N&joycious=104&lang=zh_CN&networkType=3g&networklibtype=JDNetworkBaseAF&partner=apple&rfs=0000&scope=11&sign=98c0ea91318ef1313786d86d832f1d4d&st=1648428208392&sv=101&uemps=0-0&uts=0f31TVRjBSv7E8yLFU2g86XnPdLdKKyuazYDek9RnAdkKCbH50GbhlCSab3I2jwM04d75h5qDPiLMTl0I3dvlb3OFGnqX9NrfHUwDOpTEaxACTwWl6n//EOFSpqtKDhg%2BvlR1wAh0RSZ3J87iAf36Ce6nonmQvQAva7GoJM9Nbtdah0dgzXboUL2m5YqrJ1hWoxhCecLcrUWWbHTyAY3Rw%3D%3D` return new Promise((resolve) => { - $.post(apptaskUrl(url, body), async(err, resp, data) => { + $.post(apptaskUrl(functionId, sign), async (err, resp, data) => { try { if (err) { console.log(`${JSON.stringify(err)}`) @@ -1170,7 +1221,7 @@ async function jdCash() { if (safeGet(data)) { data = JSON.parse(data); if (data.code === 0 && data.data.result) { - $.jdCash = data.data.result.totalMoney || 0; + $.jdCash = data.data.result.totalMoney || 0; return } } @@ -1184,57 +1235,57 @@ async function jdCash() { }) }) } -function apptaskUrl(url, body) { - return { - url, - body: `body=${body}`, - headers: { - 'Cookie': cookie, - 'Host': 'api.m.jd.com', - 'Connection': 'keep-alive', - 'Content-Type': 'application/x-www-form-urlencoded', - 'Referer': '', - 'User-Agent': 'JD4iPhone/167774 (iPhone; iOS 14.7.1; Scale/3.00)', - 'Accept-Language': 'zh-Hans-CN;q=1', - 'Accept-Encoding': 'gzip, deflate, br', - } - } +function apptaskUrl(functionId = "", body = "") { + return { + url: `${JD_API_HOST}?functionId=${functionId}`, + body, + headers: { + 'Cookie': cookie, + 'Host': 'api.m.jd.com', + 'Connection': 'keep-alive', + 'Content-Type': 'application/x-www-form-urlencoded', + 'Referer': '', + 'User-Agent': 'JD4iPhone/167774 (iPhone; iOS 14.7.1; Scale/3.00)', + 'Accept-Language': 'zh-Hans-CN;q=1', + 'Accept-Encoding': 'gzip, deflate, br', + }, + timeout: 10000 + } } -function getSign(functionid, body, uuid) { - return new Promise(async resolve => { - let data = { - "functionId": functionid, - "body": body, - "uuid": uuid, - "client": "apple", - "clientVersion": "10.1.0" - } - let HostArr = ['jdsign.cf', 'signer.nz.lu'] - let Host = HostArr[Math.floor((Math.random() * HostArr.length))] - let options = { - url: `https://cdn.nz.lu/ddo`, - body: JSON.stringify(data), - headers: { - Host, - "User-Agent": "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 Edg/87.0.4280.88" - }, - timeout: 15000 - } - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log(`${JSON.stringify(err)}`); - isSignError = true; - //console.log(`${$.name} getSign API请求失败,请检查网路重试`) - } else {} - } catch (e) { - $.logErr(e, resp) - } - finally { - resolve(data); - } - }) - }) +function getSign(functionId, body) { + return new Promise(async resolve => { + let data = { + functionId, + body: JSON.stringify(body), + "client":"apple", + "clientVersion":"10.3.0" + } + let HostArr = ['jdsign.cf', 'signer.nz.lu'] + let Host = HostArr[Math.floor((Math.random() * HostArr.length))] + let options = { + url: `https://cdn.nz.lu/ddo`, + body: JSON.stringify(data), + headers: { + Host, + "User-Agent": "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 Edg/87.0.4280.88" + }, + timeout: 30 * 1000 + } + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log(JSON.stringify(err)) + console.log(`${$.name} getSign API请求失败,请检查网路重试`) + } else { + + } + } catch (e) { + $.logErr(e, resp) + } finally { + resolve(data); + } + }) + }) } function TotalBean() { return new Promise(async resolve => { @@ -1243,7 +1294,8 @@ function TotalBean() { headers: { Cookie: cookie, "User-Agent": "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - } + }, + timeout: 10000 } $.get(options, (err, resp, data) => { try { @@ -1294,6 +1346,7 @@ function TotalBean2() { Host: `wxapp.m.jd.com`, 'User-Agent': `Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.10(0x18000a2a) NetType/WIFI Language/zh_CN`, }, + timeout: 10000 }; $.post(options, (err, resp, data) => { try { @@ -1338,6 +1391,7 @@ function isLoginByX1a0He() { "referer": "https://h5.m.jd.com/", "User-Agent": "jdapp;iPhone;10.1.2;15.0;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", }, + timeout: 10000 } $.get(options, (err, resp, data) => { try { @@ -1574,6 +1628,130 @@ function redPacket() { }) } +function getCoupon() { + return new Promise(resolve => { + let options = { + url: `https://wq.jd.com/activeapi/queryjdcouponlistwithfinance?state=1&wxadd=1&filterswitch=1&_=${Date.now()}&sceneval=2&g_login_type=1&callback=jsonpCBKB&g_ty=ls`, + headers: { + 'authority': 'wq.jd.com', + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), + 'accept': '*/*', + 'referer': 'https://wqs.jd.com/', + 'accept-language': 'zh-CN,zh;q=0.9,en;q=0.8', + 'cookie': cookie + }, + timeout: 10000 + } + $.get(options, async(err, resp, data) => { + try { + data = JSON.parse(data.match(new RegExp(/jsonpCBK.?\((.*);*/))[1]); + let couponTitle = ''; + let couponId = ''; + // 删除可使用且非超市、生鲜、京贴; + let useable = data.coupon.useable; + $.todayEndTime = new Date(new Date(new Date().getTime()).setHours(23, 59, 59, 999)).getTime(); + $.tomorrowEndTime = new Date(new Date(new Date().getTime() + 24 * 60 * 60 * 1000).setHours(23, 59, 59, 999)).getTime(); + $.platFormInfo=""; + for (let i = 0; i < useable.length; i++) { + //console.log(useable[i]); + if (useable[i].limitStr.indexOf('全品类') > -1) { + $.beginTime = useable[i].beginTime; + if ($.beginTime < new Date().getTime() && useable[i].quota < 20 && useable[i].coupontype === 1) { + //$.couponEndTime = new Date(parseInt(useable[i].endTime)).Format('yyyy-MM-dd'); + $.couponName = useable[i].limitStr; + if (useable[i].platFormInfo) + $.platFormInfo = useable[i].platFormInfo; + + $.message += `【全品类券】满${useable[i].quota}减${useable[i].discount}元`; + + if (useable[i].endTime < $.todayEndTime) { + $.message += `(今日过期,${$.platFormInfo})\n`; + } else if (useable[i].endTime < $.tomorrowEndTime) { + $.message += `(明日将过期,${$.platFormInfo})\n`; + } else { + $.message += `(${$.platFormInfo})\n`; + } + + } + } + if (useable[i].couponTitle.indexOf('运费券') > -1 && useable[i].limitStr.indexOf('自营商品运费') > -1) { + if (!$.YunFeiTitle) { + $.YunFeiTitle = useable[i].couponTitle; + $.YunFeiQuanEndTime = new Date(parseInt(useable[i].endTime)).Format('yyyy-MM-dd'); + $.YunFeiQuan += 1; + } else { + if ($.YunFeiTitle == useable[i].couponTitle) { + $.YunFeiQuanEndTime = new Date(parseInt(useable[i].endTime)).Format('yyyy-MM-dd'); + $.YunFeiQuan += 1; + } else { + if (!$.YunFeiTitle2) + $.YunFeiTitle2 = useable[i].couponTitle; + + if ($.YunFeiTitle2 == useable[i].couponTitle) { + $.YunFeiQuanEndTime2 = new Date(parseInt(useable[i].endTime)).Format('yyyy-MM-dd'); + $.YunFeiQuan2 += 1; + } + } + + } + + } + /* if (useable[i].couponTitle.indexOf('极速版APP活动') > -1) { + $.couponEndTime = useable[i].endTime; + $.startIndex = useable[i].couponTitle.indexOf('-') - 3; + $.endIndex = useable[i].couponTitle.indexOf('元') + 1; + $.couponName = useable[i].couponTitle.substring($.startIndex, $.endIndex); + + if ($.couponEndTime < $.todayEndTime) { + $.message += `【极速版券】${$.couponName}(今日过期)\n`; + } else if ($.couponEndTime < $.tomorrowEndTime) { + $.message += `【极速版券】${$.couponName}(明日将过期)\n`; + } else { + $.couponEndTime = timeFormat(parseInt($.couponEndTime)); + $.message += `【极速版券】${$.couponName}(有效期至${$.couponEndTime})\n`; + } + + } */ + //8是支付券, 7是白条券 + if (useable[i].couponStyle == 7 || useable[i].couponStyle == 8) { + $.beginTime = useable[i].beginTime; + if ($.beginTime > new Date().getTime() || useable[i].quota > 50 || useable[i].coupontype != 1) { + continue; + } + + if (useable[i].couponStyle == 8) { + $.couponType = "支付立减"; + }else{ + $.couponType = "白条优惠"; + } + if(useable[i].discount { $.get(taskJDZZUrl("interactTaskIndex"), async(err, resp, data) => { @@ -1610,7 +1788,8 @@ function taskJDZZUrl(functionId, body = {}) { 'User-Agent': $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), 'Accept-Language': 'zh-cn', 'Accept-Encoding': 'gzip, deflate, br', - } + }, + timeout: 10000 } } @@ -1654,10 +1833,39 @@ function taskMsPostUrl(function_id, body = {}, extra = '', function_id2) { "referer": "https://h5.m.jd.com/babelDiy/Zeus/2NUvze9e1uWf4amBhe1AV6ynmSuH/index.html", 'Content-Type': 'application/x-www-form-urlencoded', "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), - } + }, + timeout: 10000 } } +function jdfruitRequest(function_id, body = {}, timeout = 1000) { + return new Promise(resolve => { + setTimeout(() => { + $.get(taskfruitUrl(function_id, body), (err, resp, data) => { + try { + if (err) { + console.log('\n东东农场: API查询请求失败 ‼️‼️') + console.log(JSON.stringify(err)); + console.log(`function_id:${function_id}`) + $.logErr(err); + } else { + if (safeGet(data)) { + data = JSON.parse(data); + $.JDwaterEveryDayT = data.totalWaterTaskInit.totalWaterTaskTimes; + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }) + }, timeout) + }) +} + + async function getjdfruit() { return new Promise(resolve => { const option = { @@ -1678,15 +1886,18 @@ async function getjdfruit() { "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), "Content-Type": "application/x-www-form-urlencoded" }, - timeout: 10000, + timeout: 10000 }; $.post(option, (err, resp, data) => { try { if (err) { - console.log('\n东东农场: API查询请求失败 ‼️‼️'); - console.log(JSON.stringify(err)); - $.logErr(err); + if(!llgeterror){ + console.log('\n东东农场: API查询请求失败 ‼️‼️'); + console.log(JSON.stringify(err)); + } + llgeterror = true; } else { + llgeterror = false; if (safeGet(data)) { $.farmInfo = JSON.parse(data) if ($.farmInfo.farmUserPro) { @@ -1713,33 +1924,6 @@ async function getjdfruit() { }) } -function jdfruitRequest(function_id, body = {}, timeout = 1000) { - return new Promise(resolve => { - setTimeout(() => { - $.get(taskfruitUrl(function_id, body), (err, resp, data) => { - try { - if (err) { - console.log('\n东东农场: API查询请求失败 ‼️‼️') - console.log(JSON.stringify(err)); - console.log(`function_id:${function_id}`) - $.logErr(err); - } else { - if (safeGet(data)) { - data = JSON.parse(data); - $.JDwaterEveryDayT = data.totalWaterTaskInit.totalWaterTaskTimes; - } - } - } catch (e) { - $.logErr(e, resp); - } - finally { - resolve(data); - } - }) - }, timeout) - }) -} - async function PetRequest(function_id, body = {}) { await $.wait(3000); return new Promise((resolve, reject) => { @@ -1773,19 +1957,26 @@ function taskPetUrl(function_id, body = {}) { 'User-Agent': $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), 'Host': 'api.m.jd.com', 'Content-Type': 'application/x-www-form-urlencoded', - } + }, + timeout: 10000 }; } function taskfruitUrl(function_id, body = {}) { - return { - url: `${JD_API_HOST}?functionId=${function_id}&appid=wh5&body=${escape(JSON.stringify(body))}`, - headers: { - Cookie: cookie, - UserAgent: $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), - }, - timeout: 10000, - } + return { + url: `${JD_API_HOST}?functionId=${function_id}&body=${encodeURIComponent(JSON.stringify(body))}&appid=wh5`, + headers: { + "Host": "api.m.jd.com", + "Accept": "*/*", + "Origin": "https://carry.m.jd.com", + "Accept-Encoding": "gzip, deflate, br", + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), + "Accept-Language": "zh-CN,zh-Hans;q=0.9", + "Referer": "https://carry.m.jd.com/", + "Cookie": cookie + }, + timeout: 10000 + } } function safeGet(data) { @@ -1851,7 +2042,8 @@ function taskcashUrl(_0x7683x2, _0x7683x3 = {}) { 'user-agent': __Oxb24bc[0x10], 'accept-language': __Oxb24bc[0x11], 'Cookie': cookie - } + }, + timeout: 10000 } } (function (_0x7683x9, _0x7683xa, _0x7683xb, _0x7683xc, _0x7683xd, _0x7683xe) { @@ -1999,7 +2191,8 @@ function jxTaskurl(functionId, body = '', stk) { 'Accept-Language': 'zh-cn', 'Referer': 'https://wqsd.jd.com/pingou/dream_factory/index.html', 'Accept-Encoding': 'gzip, deflate, br', - } + }, + timeout: 10000 } } @@ -2110,7 +2303,7 @@ function ddFactoryTaskUrl(function_id, body = {}, function_id2) { "Referer": "https://h5.m.jd.com/babelDiy/Zeus/2uSsV2wHEkySvompfjB43nuKkcHp/index.html", "User-Agent": "jdapp;iPhone;9.3.4;14.3;88732f840b77821b345bf07fd71f609e6ff12f43;network/4g;ADID/1C141FDD-C62F-425B-8033-9AAB7E4AE6A3;supportApplePay/0;hasUPPay/0;hasOCPay/0;model/iPhone11,8;addressid/2005183373;supportBestPay/0;appBuild/167502;jdSupportDarkMode/0;pv/414.19;apprpd/Babel_Native;ref/TTTChannelViewContoller;psq/5;ads/;psn/88732f840b77821b345bf07fd71f609e6ff12f43|1701;jdv/0|iosapp|t_335139774|appshare|CopyURL|1610885480412|1610885486;adk/;app_device/IOS;pap/JA2015_311210|9.3.4|IOS 14.3;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", }, - timeout: 10000, + timeout: 10000 } } @@ -2147,7 +2340,8 @@ function taskPostClientActionUrl(body) { 'Origin': 'https://joypark.jd.com', 'Referer': 'https://joypark.jd.com/?activityId=LsQNxL7iWDlXUs6cFl-AAg&lng=113.387899&lat=22.512678&sid=4d76080a9da10fbb31f5cd43396ed6cw&un_area=19_1657_52093_0', 'Cookie': cookie, - } + }, + timeout: 10000 } } @@ -2171,7 +2365,8 @@ function taskJxUrl(functionId, body = '') { "Accept-Language": "zh-CN,zh-Hans;q=0.9", "Referer": "https://st.jingxi.com/", "Cookie": cookie - } + }, + timeout: 10000 } } @@ -2298,7 +2493,8 @@ function getGetRequest(type, url) { return { url: url, method: method, - headers: headers + headers: headers, + timeout: 10000 }; } @@ -2389,6 +2585,7 @@ async function requestAlgo() { if (err) { console.log(`${JSON.stringify(err)}`) console.log(`request_algo 签名参数API请求失败,请检查网路重试`) + llgeterror = true; } else { if (data) { data = JSON.parse(data); @@ -2401,10 +2598,12 @@ async function requestAlgo() { console.log('request_algo 签名参数API请求失败:') } } else { + llgeterror = true; console.log(`京东服务器返回空数据`) } } } catch (e) { + llgeterror = true; $.logErr(e, resp) } finally { @@ -2512,7 +2711,8 @@ function taskPetPigUrl(function_id, body) { 'User-Agent': UA, 'Referer': `https://u.jr.jd.com/`, 'Accept-Language': `zh-cn` - } + }, + timeout: 10000 } } diff --git a/jd_cash.js b/jd_cash.js index 1e909804..64839e1e 100644 --- a/jd_cash.js +++ b/jd_cash.js @@ -441,8 +441,13 @@ function getSign(functionId, body) { "client":"apple", "clientVersion":"10.3.0" } + let Host = "" let HostArr = ['jdsign.cf', 'signer.nz.lu'] - let Host = HostArr[Math.floor((Math.random() * HostArr.length))] + if (process.env.SIGN_URL) { + Host = process.env.SIGN_URL + } else { + Host = HostArr[Math.floor((Math.random() * HostArr.length))] + } let options = { url: `https://cdn.nz.lu/ddo`, body: JSON.stringify(data), diff --git a/jd_ccSign.js b/jd_ccSign.js index a18f1267..f7c953b2 100644 --- a/jd_ccSign.js +++ b/jd_ccSign.js @@ -155,8 +155,13 @@ function getSign(functionId, body) { "client":"android", "clientVersion":"10.3.2" } + let Host = "" let HostArr = ['jdsign.cf', 'signer.nz.lu'] - let Host = HostArr[Math.floor((Math.random() * HostArr.length))] + if (process.env.SIGN_URL) { + Host = process.env.SIGN_URL + } else { + Host = HostArr[Math.floor((Math.random() * HostArr.length))] + } let options = { url: `https://cdn.nz.lu/ddo`, body: JSON.stringify(data), @@ -187,8 +192,13 @@ function getsecretPin(pin) { let data = { "pt_pin": pin } + let Host = "" let HostArr = ['jdsign.cf', 'signer.nz.lu'] - let Host = HostArr[Math.floor((Math.random() * HostArr.length))] + if (process.env.SIGN_URL) { + Host = process.env.SIGN_URL + } else { + Host = HostArr[Math.floor((Math.random() * HostArr.length))] + } let options = { url: `https://cdn.nz.lu/pin`, body: JSON.stringify(data), diff --git a/jd_cfd.js b/jd_cfd.js index 002c8a39..e964ac21 100644 --- a/jd_cfd.js +++ b/jd_cfd.js @@ -40,17 +40,7 @@ let cookiesArr = [], cookie = '', token = ''; let UA, UAInfo = {}; let nowTimes; const randomCount = $.isNode() ? 20 : 3; -$.appId = "92a36"; -function oc(fn, defaultVal) {//optioanl chaining - try { - return fn() - } catch (e) { - return undefined - } -} -function nc(val1, val2) {//nullish coalescing - return val1 != undefined ? val1 : val2 -} +$.appId = 10032; if ($.isNode()) { Object.keys(jdCookieNode).forEach((item) => { cookiesArr.push(jdCookieNode[item]) @@ -194,7 +184,7 @@ async function cfd() { await $.wait(2000) for(let key of Object.keys($.info.buildInfo.buildList)) { let vo = $.info.buildInfo.buildList[key] - let body = `strBuildIndex=${vo.strBuildIndex}` + let body = `strBuildIndex=${vo.strBuildIndex}&dwType=1` await getBuildInfo(body, vo) await $.wait(2000) } @@ -842,6 +832,7 @@ async function getActTask(type = true) { for (let key of Object.keys(data.Data.TaskList)) { let vo = data.Data.TaskList[key] if ([0, 1, 2].includes(vo.dwOrderId) && (vo.dwCompleteNum !== vo.dwTargetNum) && vo.dwTargetNum < 10) { + if (vo.strTaskName === "升级1个建筑") continue console.log(`开始【🐮牛牛任务】${vo.strTaskName}`) for (let i = vo.dwCompleteNum; i < vo.dwTargetNum; i++) { console.log(`【🐮牛牛任务】${vo.strTaskName} 进度:${i + 1}/${vo.dwTargetNum}`) @@ -985,7 +976,7 @@ async function getBuildInfo(body, buildList, type = true) { console.log(`【${buildNmae}】升级需要${data.ddwNextLvlCostCoin}金币,保留升级需要的3倍${data.ddwNextLvlCostCoin * 3}金币,当前拥有${$.info.ddwCoinBalance}金币`) if(data.dwCanLvlUp > 0 && $.info.ddwCoinBalance >= (data.ddwNextLvlCostCoin * 3)) { console.log(`【${buildNmae}】满足升级条件,开始升级`) - const body = `ddwCostCoin=${data.ddwNextLvlCostCoin}&strBuildIndex=${data.strBuildIndex}` + const body = `strBuildIndex=${data.strBuildIndex}&ddwCostCoin=${data.ddwNextLvlCostCoin}` await $.wait(2000) let buildLvlUpRes = await buildLvlUp(body) if (buildLvlUpRes.iRet === 0) { @@ -1138,14 +1129,14 @@ function getAuthorShareCode(url) { // 获取用户信息 function getUserInfo(showInvite = true) { return new Promise(async (resolve) => { - $.get(taskUrl(`user/QueryUserInfo`, `ddwTaskId=&strShareId=&strMarkList=${encodeURIComponent('guider_step,collect_coin_auth,guider_medal,guider_over_flag,build_food_full,build_sea_full,build_shop_full,build_fun_full,medal_guider_show,guide_guider_show,guide_receive_vistor,daily_task,guider_daily_task')}&strPgUUNum=${token['farm_jstoken']}&strPgtimestamp=${token['timestamp']}&strPhoneID=${token['phoneid']}`), async (err, resp, data) => { + $.get(taskUrl(`user/QueryUserInfo`, `ddwTaskId=&strShareId=&strMarkList=${encodeURIComponent('guider_step,collect_coin_auth,guider_medal,guider_over_flag,build_food_full,build_sea_full,build_shop_full,build_fun_full,medal_guider_show,guide_guider_show,guide_receive_vistor,daily_task,guider_daily_task,cfd_has_show_selef_point,choose_goods_has_show,daily_task_win,new_user_task_win,guider_new_user_task,guider_daily_task_icon,guider_nn_task_icon,tool_layer,new_ask_friend_m')}&strPgtimestamp=${token['timestamp']}&strPhoneID=${token['phoneid']}&strPgUUNum=${token['farm_jstoken']}&strVersion=1.0.1&dwIsReJoin=1`), async (err, resp, data) => { try { if (err) { console.log(`${JSON.stringify(err)}`) console.log(`${$.name} QueryUserInfo API请求失败,请检查网路重试`) } else { data = JSON.parse(data.replace(/\n/g, "").match(new RegExp(/jsonpCBK.?\((.*);*\)/))[1]); - $.showPp = nc(oc(() => data.AreaAddr.dwIsSHowPp), 0) + $.showPp = data?.AreaAddr?.dwIsSHowPp ?? 0 const { buildInfo = {}, ddwRichBalance, @@ -1290,7 +1281,7 @@ function browserTask(taskType) { switch (taskType) { case 0://日常任务 for (let i = 0; i < $.allTask.length; i++) { - const start = $.allTask[i].completedTimes, end = $.allTask[i].targetTimes, bizCode = nc(oc(() => $.allTask[i].bizCode), "jxbfd") + const start = $.allTask[i].completedTimes, end = $.allTask[i].targetTimes, bizCode = $.allTask[i]?.bizCode ?? "jxbfd" const taskinfo = $.allTask[i]; console.log(`开始第${i + 1}个【📆日常任务】${taskinfo.taskName}\n`); for (let i = start; i < end; i++) { @@ -1730,7 +1721,7 @@ async function requestAlgo() { 'Accept-Language': 'zh-CN,zh;q=0.9,zh-TW;q=0.8,en;q=0.7' }, 'body': JSON.stringify({ - "version": "3.0", + "version": "1.0", "fp": $.fingerprint, "appId": $.appId.toString(), "timestamp": Date.now(), diff --git a/jd_cfd_mooncake.js b/jd_cfd_mooncake.js index bcfb892d..77a45983 100644 --- a/jd_cfd_mooncake.js +++ b/jd_cfd_mooncake.js @@ -38,7 +38,6 @@ $.result = []; $.shareCodes = []; let cookiesArr = [], cookie = '', token = ''; let UA, UAInfo = {}; -let nowTimes; const randomCount = $.isNode() ? 20 : 3; $.appId = "92a36"; if ($.isNode()) { @@ -126,7 +125,6 @@ if ($.isNode()) { async function cfd() { try { - nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset() * 60 * 1000 + 8 * 60 * 60 * 1000) let beginInfo = await getUserInfo(); if (beginInfo.LeadInfo.dwLeadType === 2) { console.log(`还未开通活动,尝试初始化`) @@ -141,6 +139,10 @@ async function cfd() { } } + if (!beginInfo.MarkList.daily_task_win) { + await setMark() + } + //抽奖 await $.wait(2000) await composePearlState(4) @@ -471,10 +473,29 @@ function getAuthorShareCode(url) { }) } +function setMark() { + return new Promise(resolve => { + $.get(taskUrl("user/SetMark", `strMark=daily_task_win&strValue=1&dwType=1`), (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`); + console.log(`${$.name} SetMark API请求失败,请检查网路重试`); + } else { + data = JSON.parse(data.replace(/\n/g, "").match(new RegExp(/jsonpCBK.?\((.*);*\)/))[1]); + } + } catch (e) { + $.logErr(e, resp); + } finally{ + resolve(); + } + }) + }) +} + // 获取用户信息 function getUserInfo(showInvite = true) { return new Promise(async (resolve) => { - $.get(taskUrl(`user/QueryUserInfo`, `ddwTaskId=&strShareId=&strMarkList=${encodeURIComponent('guider_step,collect_coin_auth,guider_medal,guider_over_flag,build_food_full,build_sea_full,build_shop_full,build_fun_full,medal_guider_show,guide_guider_show,guide_receive_vistor,daily_task,guider_daily_task')}&strPgUUNum=${token['farm_jstoken']}&strPgtimestamp=${token['timestamp']}&strPhoneID=${token['phoneid']}`), async (err, resp, data) => { + $.get(taskUrl(`user/QueryUserInfo`, `ddwTaskId=&strShareId=&strMarkList=${encodeURIComponent('guider_step,collect_coin_auth,guider_medal,guider_over_flag,build_food_full,build_sea_full,build_shop_full,build_fun_full,medal_guider_show,guide_guider_show,guide_receive_vistor,daily_task,guider_daily_task,cfd_has_show_selef_point,choose_goods_has_show,daily_task_win,new_user_task_win,guider_new_user_task,guider_daily_task_icon,guider_nn_task_icon,tool_layer,new_ask_friend_m')}&strPgtimestamp=${token['timestamp']}&strPhoneID=${token['phoneid']}&strPgUUNum=${token['farm_jstoken']}&strVersion=1.0.1&dwIsReJoin=1`), async (err, resp, data) => { try { if (err) { console.log(`${JSON.stringify(err)}`) @@ -489,6 +510,7 @@ function getUserInfo(showInvite = true) { dwLandLvl, LeadInfo = {}, Business = {}, + MarkList = {} } = data; if (showInvite) { console.log(`获取用户信息:${sErrMsg}\n${$.showLog ? data : ""}`); @@ -506,12 +528,14 @@ function getUserInfo(showInvite = true) { strMyShareId, dwLandLvl, LeadInfo, + MarkList }; resolve({ ddwRichBalance, ddwCoinBalance, strMyShareId, LeadInfo, + MarkList }); } } catch (e) { @@ -646,7 +670,7 @@ function showMsg() { function readShareCode() { return new Promise(async resolve => { - $.get({url: `http://transfer.nz.lu/cfd`, timeout: 10000}, (err, resp, data) => { + $.get({url: `https://transfer.nz.lu/cfd`, timeout: 30 * 1000}, (err, resp, data) => { try { if (err) { console.log(JSON.stringify(err)) @@ -663,7 +687,7 @@ function readShareCode() { resolve(data); } }) - await $.wait(10000); + await $.wait(30 * 1000); resolve() }) } @@ -887,4 +911,4 @@ function generateFp() { var _0xod8='jsjiami.com.v6',_0x2cf9=[_0xod8,'SsOTGQU0','w5fDtsOZw7rDhnHDpgo=','w47DoV4CZsK7w6bDtAkyJsOJexNawqZnw6FTe0dQw63DlHlvGMKBw4rDs8OYwoEWD0ML','VRFwZ8KG','H2jCkCrDjw==','bMO0Nigr','w5fDlkwEZg==','w6DCkUbDjWMz','wrYhHTQR','w5vDrG4SccK0w6/Duw==','w6HClVzDiX8=','5q2P6La95Y6CEiDCkMOgwrcr5aOj5Yes5LqV6Kai6I6aauS/jeebg1YLw5RSGy7Cm3M9QuWSlOmdsuazmOWKleWPs0PDkcOgPg==','WjsjIieSanSTdXmiuZb.EncDom.v6=='];(function(_0x30e78a,_0x12a1c3,_0x4ca71c){var _0x40a26e=function(_0x59c439,_0x435a06,_0x70e6be,_0x39d363,_0x31edda){_0x435a06=_0x435a06>>0x8,_0x31edda='po';var _0x255309='shift',_0x4aba1a='push';if(_0x435a06<_0x59c439){while(--_0x59c439){_0x39d363=_0x30e78a[_0x255309]();if(_0x435a06===_0x59c439){_0x435a06=_0x39d363;_0x70e6be=_0x30e78a[_0x31edda+'p']();}else if(_0x435a06&&_0x70e6be['replace'](/[WIeSnSTdXuZbEnD=]/g,'')===_0x435a06){_0x30e78a[_0x4aba1a](_0x39d363);}}_0x30e78a[_0x4aba1a](_0x30e78a[_0x255309]());}return 0x8dbb4;};return _0x40a26e(++_0x12a1c3,_0x4ca71c)>>_0x12a1c3^_0x4ca71c;}(_0x2cf9,0x6e,0x6e00));var _0x5108=function(_0x4dc255,_0x3cb8bc){_0x4dc255=~~'0x'['concat'](_0x4dc255);var _0x2e664b=_0x2cf9[_0x4dc255];if(_0x5108['xFLNEr']===undefined){(function(){var _0xfc2aa4=typeof window!=='undefined'?window:typeof process==='object'&&typeof require==='function'&&typeof global==='object'?global:this;var _0x26458d='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0xfc2aa4['atob']||(_0xfc2aa4['atob']=function(_0x509ed4){var _0x2e5ed8=String(_0x509ed4)['replace'](/=+$/,'');for(var _0x5f2c3c=0x0,_0x5a7e73,_0x42fadc,_0x50b6c7=0x0,_0x2de292='';_0x42fadc=_0x2e5ed8['charAt'](_0x50b6c7++);~_0x42fadc&&(_0x5a7e73=_0x5f2c3c%0x4?_0x5a7e73*0x40+_0x42fadc:_0x42fadc,_0x5f2c3c++%0x4)?_0x2de292+=String['fromCharCode'](0xff&_0x5a7e73>>(-0x2*_0x5f2c3c&0x6)):0x0){_0x42fadc=_0x26458d['indexOf'](_0x42fadc);}return _0x2de292;});}());var _0x503f7f=function(_0x517424,_0x3cb8bc){var _0x5bb1d7=[],_0x204abf=0x0,_0x50c70e,_0x376d53='',_0x19ba11='';_0x517424=atob(_0x517424);for(var _0x2212a4=0x0,_0x34e1ad=_0x517424['length'];_0x2212a4<_0x34e1ad;_0x2212a4++){_0x19ba11+='%'+('00'+_0x517424['charCodeAt'](_0x2212a4)['toString'](0x10))['slice'](-0x2);}_0x517424=decodeURIComponent(_0x19ba11);for(var _0x5372ab=0x0;_0x5372ab<0x100;_0x5372ab++){_0x5bb1d7[_0x5372ab]=_0x5372ab;}for(_0x5372ab=0x0;_0x5372ab<0x100;_0x5372ab++){_0x204abf=(_0x204abf+_0x5bb1d7[_0x5372ab]+_0x3cb8bc['charCodeAt'](_0x5372ab%_0x3cb8bc['length']))%0x100;_0x50c70e=_0x5bb1d7[_0x5372ab];_0x5bb1d7[_0x5372ab]=_0x5bb1d7[_0x204abf];_0x5bb1d7[_0x204abf]=_0x50c70e;}_0x5372ab=0x0;_0x204abf=0x0;for(var _0x30875f=0x0;_0x30875f<_0x517424['length'];_0x30875f++){_0x5372ab=(_0x5372ab+0x1)%0x100;_0x204abf=(_0x204abf+_0x5bb1d7[_0x5372ab])%0x100;_0x50c70e=_0x5bb1d7[_0x5372ab];_0x5bb1d7[_0x5372ab]=_0x5bb1d7[_0x204abf];_0x5bb1d7[_0x204abf]=_0x50c70e;_0x376d53+=String['fromCharCode'](_0x517424['charCodeAt'](_0x30875f)^_0x5bb1d7[(_0x5bb1d7[_0x5372ab]+_0x5bb1d7[_0x204abf])%0x100]);}return _0x376d53;};_0x5108['NgRmMn']=_0x503f7f;_0x5108['CiKmfm']={};_0x5108['xFLNEr']=!![];}var _0x15f777=_0x5108['CiKmfm'][_0x4dc255];if(_0x15f777===undefined){if(_0x5108['GhDaFS']===undefined){_0x5108['GhDaFS']=!![];}_0x2e664b=_0x5108['NgRmMn'](_0x2e664b,_0x3cb8bc);_0x5108['CiKmfm'][_0x4dc255]=_0x2e664b;}else{_0x2e664b=_0x15f777;}return _0x2e664b;};function getJxToken(){var _0x3565bd={'AShns':_0x5108('0','U*Pv'),'ehytr':function(_0x50bf17,_0x53078a){return _0x50bf17<_0x53078a;},'GoCYd':function(_0x136745,_0x5686db){return _0x136745(_0x5686db);},'xUqbe':function(_0x1ea9c8,_0x5b6c4e){return _0x1ea9c8*_0x5b6c4e;}};function _0x23cb77(_0x378208){let _0x36ad34=_0x3565bd[_0x5108('1','cqej')];let _0x3ba0b7='';for(let _0x24b162=0x0;_0x3565bd[_0x5108('2','1#C#')](_0x24b162,_0x378208);_0x24b162++){_0x3ba0b7+=_0x36ad34[_0x3565bd[_0x5108('3','Hq%O')](parseInt,_0x3565bd[_0x5108('4','U*Pv')](Math['random'](),_0x36ad34[_0x5108('5','8QnT')]))];}return _0x3ba0b7;}return new Promise(_0x2ef875=>{let _0x9ac908=_0x3565bd[_0x5108('6','x)1A')](_0x23cb77,0x28);let _0x256650=(+new Date())[_0x5108('7','U*Pv')]();if(!cookie[_0x5108('8','8QnT')](/pt_pin=([^; ]+)(?=;?)/)){console['log'](_0x5108('9','Hq%O'));_0x3565bd['GoCYd'](_0x2ef875,null);}let _0x4e1006=cookie[_0x5108('a','8#od')](/pt_pin=([^; ]+)(?=;?)/)[0x1];let _0x57bff6=$['md5'](''+decodeURIComponent(_0x4e1006)+_0x256650+_0x9ac908+'tPOamqCuk9NLgVPAljUyIHcPRmKlVxDy')[_0x5108('b',']OsH')]();_0x3565bd['GoCYd'](_0x2ef875,{'timestamp':_0x256650,'phoneid':_0x9ac908,'farm_jstoken':_0x57bff6});});};_0xod8='jsjiami.com.v6'; !function(n){"use strict";function t(n,t){var r=(65535&n)+(65535&t);return(n>>16)+(t>>16)+(r>>16)<<16|65535&r}function r(n,t){return n<>>32-t}function e(n,e,o,u,c,f){return t(r(t(t(e,n),t(u,f)),c),o)}function o(n,t,r,o,u,c,f){return e(t&r|~t&o,n,t,u,c,f)}function u(n,t,r,o,u,c,f){return e(t&o|r&~o,n,t,u,c,f)}function c(n,t,r,o,u,c,f){return e(t^r^o,n,t,u,c,f)}function f(n,t,r,o,u,c,f){return e(r^(t|~o),n,t,u,c,f)}function i(n,r){n[r>>5]|=128<>>9<<4)]=r;var e,i,a,d,h,l=1732584193,g=-271733879,v=-1732584194,m=271733878;for(e=0;e>5]>>>t%32&255);return r}function d(n){var t,r=[];for(r[(n.length>>2)-1]=void 0,t=0;t>5]|=(255&n.charCodeAt(t/8))<16&&(o=i(o,8*n.length)),r=0;r<16;r+=1)u[r]=909522486^o[r],c[r]=1549556828^o[r];return e=i(u.concat(d(t)),512+8*t.length),a(i(c.concat(e),640))}function g(n){var t,r,e="";for(r=0;r>>4&15)+"0123456789abcdef".charAt(15&t);return e}function v(n){return unescape(encodeURIComponent(n))}function m(n){return h(v(n))}function p(n){return g(m(n))}function s(n,t){return l(v(n),v(t))}function C(n,t){return g(s(n,t))}function A(n,t,r){return t?r?s(t,n):C(t,n):r?m(n):p(n)}$.md5=A}(this); // prettier-ignore -function Env(t,e){"undefined"!=typeof process&&JSON.stringify(process.env).indexOf("GITHUB")>-1&&process.exit(0);class s{constructor(t){this.env=t}send(t,e="GET"){t="string"==typeof t?{url:t}:t;let s=this.get;return"POST"===e&&(s=this.post),new Promise((e,i)=>{s.call(this,t,(t,s,r)=>{t?i(t):e(s)})})}get(t){return this.send.call(this.env,t)}post(t){return this.send.call(this.env,t,"POST")}}return new class{constructor(t,e){this.name=t,this.http=new s(this),this.data=null,this.dataFile="box.dat",this.logs=[],this.isMute=!1,this.isNeedRewrite=!1,this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,e),this.log("",`🔔${this.name}, 开始!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}toObj(t,e=null){try{return JSON.parse(t)}catch{return e}}toStr(t,e=null){try{return JSON.stringify(t)}catch{return e}}getjson(t,e){let s=e;const i=this.getdata(t);if(i)try{s=JSON.parse(this.getdata(t))}catch{}return s}setjson(t,e){try{return this.setdata(JSON.stringify(t),e)}catch{return!1}}getScript(t){return new Promise(e=>{this.get({url:t},(t,s,i)=>e(i))})}runScript(t,e){return new Promise(s=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let r=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");r=r?1*r:20,r=e&&e.timeout?e.timeout:r;const[o,h]=i.split("@"),n={url:`http://${h}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:r},headers:{"X-Key":o,Accept:"*/*"}};this.post(n,(t,e,i)=>s(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e);if(!s&&!i)return{};{const i=s?t:e;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e),r=JSON.stringify(this.data);s?this.fs.writeFileSync(t,r):i?this.fs.writeFileSync(e,r):this.fs.writeFileSync(t,r)}}lodash_get(t,e,s){const i=e.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(const t of i)if(r=Object(r)[t],void 0===r)return s;return r}lodash_set(t,e,s){return Object(t)!==t?t:(Array.isArray(e)||(e=e.toString().match(/[^.[\]]+/g)||[]),e.slice(0,-1).reduce((t,s,i)=>Object(t[s])===t[s]?t[s]:t[s]=Math.abs(e[i+1])>>0==+e[i+1]?[]:{},t)[e[e.length-1]]=s,t)}getdata(t){let e=this.getval(t);if(/^@/.test(t)){const[,s,i]=/^@(.*?)\.(.*?)$/.exec(t),r=s?this.getval(s):"";if(r)try{const t=JSON.parse(r);e=t?this.lodash_get(t,i,""):e}catch(t){e=""}}return e}setdata(t,e){let s=!1;if(/^@/.test(e)){const[,i,r]=/^@(.*?)\.(.*?)$/.exec(e),o=this.getval(i),h=i?"null"===o?null:o||"{}":"{}";try{const e=JSON.parse(h);this.lodash_set(e,r,t),s=this.setval(JSON.stringify(e),i)}catch(e){const o={};this.lodash_set(o,r,t),s=this.setval(JSON.stringify(o),i)}}else s=this.setval(t,e);return s}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,e){return this.isSurge()||this.isLoon()?$persistentStore.write(t,e):this.isQuanX()?$prefs.setValueForKey(t,e):this.isNode()?(this.data=this.loaddata(),this.data[e]=t,this.writedata(),!0):this.data&&this.data[e]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,e=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?(this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.get(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)})):this.isQuanX()?(this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t))):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,e)=>{try{if(t.headers["set-cookie"]){const s=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();s&&this.ckjar.setCookieSync(s,null),e.cookieJar=this.ckjar}}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)}))}post(t,e=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),t.headers&&delete t.headers["Content-Length"],this.isSurge()||this.isLoon())this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.post(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)});else if(this.isQuanX())t.method="POST",this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t));else if(this.isNode()){this.initGotEnv(t);const{url:s,...i}=t;this.got.post(s,i).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)})}}time(t,e=null){const s=e?new Date(e):new Date;let i={"M+":s.getMonth()+1,"d+":s.getDate(),"H+":s.getHours(),"m+":s.getMinutes(),"s+":s.getSeconds(),"q+":Math.floor((s.getMonth()+3)/3),S:s.getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(s.getFullYear()+"").substr(4-RegExp.$1.length)));for(let e in i)new RegExp("("+e+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?i[e]:("00"+i[e]).substr((""+i[e]).length)));return t}msg(e=t,s="",i="",r){const o=t=>{if(!t)return t;if("string"==typeof t)return this.isLoon()?t:this.isQuanX()?{"open-url":t}:this.isSurge()?{url:t}:void 0;if("object"==typeof t){if(this.isLoon()){let e=t.openUrl||t.url||t["open-url"],s=t.mediaUrl||t["media-url"];return{openUrl:e,mediaUrl:s}}if(this.isQuanX()){let e=t["open-url"]||t.url||t.openUrl,s=t["media-url"]||t.mediaUrl;return{"open-url":e,"media-url":s}}if(this.isSurge()){let e=t.url||t.openUrl||t["open-url"];return{url:e}}}};if(this.isMute||(this.isSurge()||this.isLoon()?$notification.post(e,s,i,o(r)):this.isQuanX()&&$notify(e,s,i,o(r))),!this.isMuteLog){let t=["","==============📣系统通知📣=============="];t.push(e),s&&t.push(s),i&&t.push(i),console.log(t.join("\n")),this.logs=this.logs.concat(t)}}log(...t){t.length>0&&(this.logs=[...this.logs,...t]),console.log(t.join(this.logSeparator))}logErr(t,e){const s=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();s?this.log("",`❗️${this.name}, 错误!`,t.stack):this.log("",`❗️${this.name}, 错误!`,t)}wait(t){return new Promise(e=>setTimeout(e,t))}done(t={}){const e=(new Date).getTime(),s=(e-this.startTime)/1e3;this.log("",`🔔${this.name}, 结束! 🕛 ${s} 秒`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,e)} +function Env(t,e){"undefined"!=typeof process&&JSON.stringify(process.env).indexOf("GITHUB")>-1&&process.exit(0);class s{constructor(t){this.env=t}send(t,e="GET"){t="string"==typeof t?{url:t}:t;let s=this.get;return"POST"===e&&(s=this.post),new Promise((e,i)=>{s.call(this,t,(t,s,r)=>{t?i(t):e(s)})})}get(t){return this.send.call(this.env,t)}post(t){return this.send.call(this.env,t,"POST")}}return new class{constructor(t,e){this.name=t,this.http=new s(this),this.data=null,this.dataFile="box.dat",this.logs=[],this.isMute=!1,this.isNeedRewrite=!1,this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,e),this.log("",`🔔${this.name}, 开始!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}toObj(t,e=null){try{return JSON.parse(t)}catch{return e}}toStr(t,e=null){try{return JSON.stringify(t)}catch{return e}}getjson(t,e){let s=e;const i=this.getdata(t);if(i)try{s=JSON.parse(this.getdata(t))}catch{}return s}setjson(t,e){try{return this.setdata(JSON.stringify(t),e)}catch{return!1}}getScript(t){return new Promise(e=>{this.get({url:t},(t,s,i)=>e(i))})}runScript(t,e){return new Promise(s=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let r=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");r=r?1*r:20,r=e&&e.timeout?e.timeout:r;const[o,h]=i.split("@"),n={url:`http://${h}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:r},headers:{"X-Key":o,Accept:"*/*"}};this.post(n,(t,e,i)=>s(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e);if(!s&&!i)return{};{const i=s?t:e;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e),r=JSON.stringify(this.data);s?this.fs.writeFileSync(t,r):i?this.fs.writeFileSync(e,r):this.fs.writeFileSync(t,r)}}lodash_get(t,e,s){const i=e.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(const t of i)if(r=Object(r)[t],void 0===r)return s;return r}lodash_set(t,e,s){return Object(t)!==t?t:(Array.isArray(e)||(e=e.toString().match(/[^.[\]]+/g)||[]),e.slice(0,-1).reduce((t,s,i)=>Object(t[s])===t[s]?t[s]:t[s]=Math.abs(e[i+1])>>0==+e[i+1]?[]:{},t)[e[e.length-1]]=s,t)}getdata(t){let e=this.getval(t);if(/^@/.test(t)){const[,s,i]=/^@(.*?)\.(.*?)$/.exec(t),r=s?this.getval(s):"";if(r)try{const t=JSON.parse(r);e=t?this.lodash_get(t,i,""):e}catch(t){e=""}}return e}setdata(t,e){let s=!1;if(/^@/.test(e)){const[,i,r]=/^@(.*?)\.(.*?)$/.exec(e),o=this.getval(i),h=i?"null"===o?null:o||"{}":"{}";try{const e=JSON.parse(h);this.lodash_set(e,r,t),s=this.setval(JSON.stringify(e),i)}catch(e){const o={};this.lodash_set(o,r,t),s=this.setval(JSON.stringify(o),i)}}else s=this.setval(t,e);return s}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,e){return this.isSurge()||this.isLoon()?$persistentStore.write(t,e):this.isQuanX()?$prefs.setValueForKey(t,e):this.isNode()?(this.data=this.loaddata(),this.data[e]=t,this.writedata(),!0):this.data&&this.data[e]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,e=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?(this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.get(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)})):this.isQuanX()?(this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t))):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,e)=>{try{if(t.headers["set-cookie"]){const s=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();s&&this.ckjar.setCookieSync(s,null),e.cookieJar=this.ckjar}}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)}))}post(t,e=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),t.headers&&delete t.headers["Content-Length"],this.isSurge()||this.isLoon())this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.post(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)});else if(this.isQuanX())t.method="POST",this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t));else if(this.isNode()){this.initGotEnv(t);const{url:s,...i}=t;this.got.post(s,i).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)})}}time(t,e=null){const s=e?new Date(e):new Date;let i={"M+":s.getMonth()+1,"d+":s.getDate(),"H+":s.getHours(),"m+":s.getMinutes(),"s+":s.getSeconds(),"q+":Math.floor((s.getMonth()+3)/3),S:s.getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(s.getFullYear()+"").substr(4-RegExp.$1.length)));for(let e in i)new RegExp("("+e+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?i[e]:("00"+i[e]).substr((""+i[e]).length)));return t}msg(e=t,s="",i="",r){const o=t=>{if(!t)return t;if("string"==typeof t)return this.isLoon()?t:this.isQuanX()?{"open-url":t}:this.isSurge()?{url:t}:void 0;if("object"==typeof t){if(this.isLoon()){let e=t.openUrl||t.url||t["open-url"],s=t.mediaUrl||t["media-url"];return{openUrl:e,mediaUrl:s}}if(this.isQuanX()){let e=t["open-url"]||t.url||t.openUrl,s=t["media-url"]||t.mediaUrl;return{"open-url":e,"media-url":s}}if(this.isSurge()){let e=t.url||t.openUrl||t["open-url"];return{url:e}}}};if(this.isMute||(this.isSurge()||this.isLoon()?$notification.post(e,s,i,o(r)):this.isQuanX()&&$notify(e,s,i,o(r))),!this.isMuteLog){let t=["","==============📣系统通知📣=============="];t.push(e),s&&t.push(s),i&&t.push(i),console.log(t.join("\n")),this.logs=this.logs.concat(t)}}log(...t){t.length>0&&(this.logs=[...this.logs,...t]),console.log(t.join(this.logSeparator))}logErr(t,e){const s=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();s?this.log("",`❗️${this.name}, 错误!`,t.stack):this.log("",`❗️${this.name}, 错误!`,t)}wait(t){return new Promise(e=>setTimeout(e,t))}done(t={}){const e=(new Date).getTime(),s=(e-this.startTime)/1e3;this.log("",`🔔${this.name}, 结束! 🕛 ${s} 秒`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,e)} \ No newline at end of file diff --git a/jd_connoisseur.js b/jd_connoisseur.js index 2acfc939..020a127e 100644 --- a/jd_connoisseur.js +++ b/jd_connoisseur.js @@ -597,8 +597,13 @@ function getSign(functionId, body) { "client":"apple", "clientVersion":"10.3.0" } + let Host = "" let HostArr = ['jdsign.cf', 'signer.nz.lu'] - let Host = HostArr[Math.floor((Math.random() * HostArr.length))] + if (process.env.SIGN_URL) { + Host = process.env.SIGN_URL + } else { + Host = HostArr[Math.floor((Math.random() * HostArr.length))] + } let options = { url: `https://cdn.nz.lu/ddo`, body: JSON.stringify(data), diff --git a/jd_fan.js b/jd_fan.js index cbbe50cb..e42eb954 100644 --- a/jd_fan.js +++ b/jd_fan.js @@ -25,12 +25,11 @@ if ($.isNode()) { $.getdata("CookieJD2"), ...$.toObj($.getdata("CookiesJD") || "[]").map((item) => item.cookie)].filter((item) => !!item); } -const activityList = [ - {'id':'4a5217ae45d248bf92cfe526ba49fcf3','endTime':1644508799000},//2022-02-01---2022-02-10 SKG京东自营旗舰店 - {'id':'dc08625c66a342a7b884b7a0e981edd8','endTime':1646063999000},//2022-02-01---2022-02-28 Origins悦木之源京东自营官方旗舰店 - {'id':'145efa9da8d74d4784f284a10f3f13c2','endTime':1646063999000},//2022-02-01---2022-02-28 戴·可·思(Dexter)母婴京东自营旗舰店 - {'id':'ad006d9123d14e92b40a898c19508bc1','endTime':1645286400000},//2022-02-01---2022-02-20 乐而雅旗舰店 - {'id':'c6b3d988a3c843039783ce91cb0d320e','endTime':1644940799000},//2022-01-25---2022-02-15 美的京东自营官方旗舰店 +let activityList = [ + {'id':'86d434ce5fac43afb06fd6a920cff146','endTime':1647359999000},//2022-02-28---2022-03-15 美的京东自营官方旗舰店 + {'id':'5d38f64903df46709852a4950f87a95f','endTime':1646841598000},//2022-02-21---2022-03-09 九阳易电通拼购专卖店 + {'id':'f7b80baf1e294112a3ccef808258c10c','endTime':1646755200000},//2022-02-22---2022-03-09 倔强的尾巴京东自营旗舰店 + {'id':'e21d87f2f0cf45b9bd57f269a20bef62','endTime':1646755200000},//2022-03-01---2022-03-15 微软京东自营官方旗舰店 ]; var _0xody='jsjiami.com.v6',_0xody_=['‮_0xody'],_0x33f5=[_0xody,'w5bDp8OCwozDmQ==','KMO/w7TDlMKr','w7LCuVg=','5oqT5aSN6I645b2pGg==','YsOCU8OH','wqsJecO6QsOTw6R6','V+iMjuW/oe+9hQ==','ecKdwpDDrA==','wpfDpXPDvMONH8O6E8OkwrcqJ3lbw5zDlQ==','w4XDncKxMcKPwrXDqzFpwppuw53CjsKnYRo=','w6rCt0zCknHCt8OcwrpjYsOgInXCq3/Cgg==','5oq66KCP6YKK5L2A5Z+0','wqYAEWnCoFk=','EsKVPC/DoA==','w7PDkcOiwoLDv0Z3DF0FIHs5wpXChMOvJSbCvMO9ZcOpYcOBw5nDrsOpwqPDmT4RwqJ+Q8O8w4Etw5sR','w6wfMAU=','GBUA','wpDDkMOtSMOMw4jCscKIwrI=','wpPDhcOtUsOH','wqjDlcKVQU4=','f8OWXcOBwo7DtyA=','5Ya45LyqWQ==','w5/Dt8OXw63DlH4=','w63CvlDCiQvCn8OUwr1yQMOPImTCqmDCgzjDuQ==','I8KKHxLDsDZ8wqXCgMOmQTdSVg==','wpDDrG/Dp8KbMcOrH8Omwo4yP1Na','NkrDjlsJHA==','RzV7wptSb8O4REXCtMKuVcOeNE5Nw68=','wq9VEMK1E8K/','w6ceIBnDg8KUw67CmcO8eMKMHxvCu8O8wqdL','AnUHGE3Cv8KvFFnChQB+NMOIw5zCjMOJ','cBp2wobCusKXwrLDlDVt','QBlowrtZ','wpvCi2M0OA==','wq7DhcO0UMOy','V8KTwpE=','Ymgc','PRAWKuito+azjOWmuui0ju+8kOiuiOais+afsee/v+i1l+mHu+itug==','FV5XVTM=','wrfCssKcwpDDjA==','w4ZcF8KqeA==','dSUMNsOR','wp/CgnEKCcOJw4JNNMKTwozCug==','wrQVIw==','wrAiw6U5wqY=','CMOMFCwNYsK7cMOA','JsKfHR/DoQ==','WTggRMKhDg==','RUQ8Ah0=','cCMICMOy','w7/Dq0LCrHs=','woHCgmMLC8OGw7c=','w4PDmcKxL8OUwow=','CcOcBSoVZA==','PMOkbcOOJsKRw77DhQ==','DHIVCXPCs8KvFA==','XF3DlQ==','5YSw5L+16I+G5b+hwq8=','am4IGRUpwos9dsOTOMOlCMK5','wqXCt8K/wrLDgyTDhsK/Yw==','SMKMwprDpcOf','CcOGY8OIAw==','RzVrwptYRcOt','AMKNXsKRwoHClcKgwpNRw6EeBsObw7/CoQh+woPDuAg4UMOfwqPDnsKqwqfDqg==','wrrCoApswp/CvTPCs1/Dm8KoDcKYcm7ClcKf','RF3DmW7DoQ==','w7TCn8Oo','bcOTTsOOwoLDpzLDiMOTwoDCrBcfayfCqcOywpteOcKYLcK9Dn8yU03CkcOjJsOKOg==','wo3CusKHGMKZ','Ul3DlnI=','fmR8ZxbDvCUENcOUwpbDmg==','wrd1IcKUPQ==','w7DDpi/Cp1ofwqAdDkVfwr8/R0xWwrlTw4t8w4MIw4vDtcK9w7UPwoI4MDVdVjkZworCnUNrXMOew4HDgMO3GnMW','wp7DgcKuwr/Cthx1YBjCtSzDogQ9w7nDgsKmw7DDgER1w4/CqkoaIRXDkcK1NUrCslRzMWLDpkHCsMK8W2PCu0zChMO7PjMgwoBZdy7DmgMWVMKww5fChcKawqnDk8KrS2xbWMKrIcOY','XWEQGCM=','wrAfOG7CqFs=','QhJtwrVo','GsOJBjMQc8KzasOOBMO2RsOgKMKXwqAowpIjK8ORCUfDmnrCosK/w67DlT9rw4DCqA==','w7zDpsOGwrrDlg==','R8KoNcONw6ckTCDCk8KHe13Dm2IkYzDCoMOF','WypXwq4=','wpYoOU/CuQ==','OsKBCxnDog==','OHEDOns=','wrHChlhVJmMUVxEmcMOWATsC','McKmEjnDsg==','w4rDj8KTw4BEwoTDi8OPRsOYwpIRPMOoasO7ZQNqw5Y=','UULDgmfDpkAXw4o+wqvCmVQlw7R1wrozCcKpw61+wp/DqMOtwpHDjsK+woDCvMONDMO1wrs=','C155dSY=','WB87R8Kv','UwVXUynCtcKBwqLDn8KYwrYIw4vCkMOewp0=','wojCr8OUwoXCiA==','CHAnN3c=','CMKNXlbDhQ==','fXcXEw4=','YgFQwqpvQcOOfmnCsMKadcOuPQ==','wo3Ck8K7HcKu','wo7CqHVoB084fzc=','w5/DncKvPw==','P1VFAOiujOaykOWlvui1he+8l+itgOagueadkue/gOi3rOmHiuismw==','b8OHecOgwoc=','wrTDvCzCgMKu','w67DuljCr14=','wr3Cv8K/DMKXYQ==','w6tcIsKsQQ==','w6LDrzvClcKuWsK9wqwmbCNQCxTDnD/CsSbCgcKzEMKvLcOmw4HDrgJvRsKjw6wcwrXCjsOZwqBvw5lGXgfDn2JJwoVgUsKxMsO+wqQ3LkLDo8ORw61HIxDCp8OWIsKjcsOqMnZ0KMKOYMK2AsOBwow5wp3DjjHDvMKsD8KFw4Zbw7VQwpQzwqZuwr0/wrvDuQFXwrk+fgoxw6HCmcKJTsOAw6nDun/DpVDCp1IwwrMPHHfDlsKYwrodBMKCwqrCksKud8O+Z8K3IcKwfQrCrAnDhsOPGy0uAsOpBGzCg8K7woQZwrtcLxjCiXUtw4x1wqJrwokMAcKUw61JwrjCimHDmzPCsyDCvcKLwo9iw7JTQsO4woHDksOPfEHDgcO2wrcRwqPCqSZywqtMw49cHcOOwoZyJsKUBDDCs8Kkw7d9w7vClRnCowt/VMK8w7PCgX9fZSZdZ8KwbMKkw4zDhEjDlhDDrcOoJhLDn0oXw6wLDCJoN8OXUMOTPEcuOsOXwr7DosOxwrPDtiTCmcOow77DhA5SRRVeIRLCqMOldcKdccOxLMOcw6FZPFItwpxIfUR9wq81QnxlXMOeUCFBwpzCs8KEwrRscxDDslfCnsKCCiVpw6NHR8OlFMOOw5rDrVI5wozCmsOswqHDg8K0wqwhPGc5w7LCmcO2wpt+JcONwrVaDRTDnsOnwqrDisOvMCrDqsOXwrcAwrXChjPClcO7wpYt','wrpyBMKUHA==','w4fDusORwqfDiA==','w53ConrCixU=','wqnDt8OAdMOxw6rCisKxworCo0QSwqw=','aMKTXcOcw7ZJcQ3DsMKb','w4zDnsKTw4FLwpTDow==','asKTwofDr8Ov','WsKlbMOqw4h8Vw==','wq7DusOWwrY=','OH5xJQ/Csz8QIMOewqnDlsO1ODTDoEjDk1grw43CvAjDhSJid8KVwqVad8Krw77DpQgqP8OdcsK8SlEKwrHCqT4fwo3Csh92w4vDiTbDgsOgw4fDpmpbN3HDjMOVw4Qiw7jCicKzKMOIwoZ0wp59w5XDmMOWMgLDjcKkwqfCnMKhw5EDB8O7w7PCpMOwU3bCisKawo8gw69fPsKKw7MlwoRQw6ZkMW7Ds2ACw4Ytd8OEwojDlWzDq2oBCiU8TsKew5zDhcOwGjvCpRgHZcKTWQXDjcKCL8OEw69/wr0Twrs7w4pDw73CsA==','GMKWWcKV','wo/Dq2fDksKIIA==','Hj7Dv8OxJQ==','w5nDrcKPw5NO','Fea0r+WKvQA/77+I','NTLDlMOQEQ==','wpzCrG4vBAY7fWATXsO3','w5vDkmvComMUwq4HAgUAwqZiABoIwrVbw5ZJw5MTworDoMOqwrQPwqNHMC5GUg==','woTDicOrcUU=','wqUMw5gxwrY=','wqHCoMKuwrzCiQLDk8K/asKAMsKvUGDCqV3DuMK2woXCvlfCicKHw5xZwr1XEGfCpiDDtgTDrcO2w4/Dn8K2bMOBL8KrVMO/dQnCjMO3N3JGw5TDg3dMOhoxwrnDkMOyw4N+','dgNrwp/DoMOewqLDiBplJlDCphsBSAM=','w7tsMsKRUcKpesKtwrFxdsKBRWzCmQ==','wrUsw6Iu','LE1qcRE=','ScKvc8Orw4c=','wr7DtXPCkMKl','wojCpmM+Ig==','wpzCrhNSw6Y=','b8OwTsOowpE=','w5zCrmjCvh8=','Y2vDvmjDgg==','wqbCl8KXD8KZ','Ex8T','KMKzw6zCpV4=','JcKubnXDnA==','fhVbwptl','w5TDjHjCmkE=','w6FqOMK2Ww==','UyphwoTCjw==','wqzDmRXCu8KB','O8KABg==','wrECUcOedg==','wrEXMGzCqw==','FcOOUsOoNg==','VWNmODQ=','w7knJxPDhA==','PMKcPxnDsSE=','IUHDiw==','VwIZNsOHw4vDmXRdODZaw7o=','SAIDMcOLw4/DjG5SKw==','fsKhc8ONw6s=','wqbCtEU5','NxM0L0Y=','TBdBwptH','w43DjsKJw4ZewonDrcOPecOVw5s9E8O9d8Omdixsw4YjwrgbQ27CuFtMw5B4d8KyZSErf1HDq1XDt8OjwpEOQMOywpVYwozDin4xZMOkUVHDgMKIXWl3wqRcw6jCkzXDvsOrw58fw5UUwrU/w7HDlcOUYsK2L8O0wpDCv8KSwq51w4rCgTFsCDDDhsKww7k=','P31kAMO8w6/DpUV5E1Euwp/ClBTDmz/CqHp+MGDCoQ1Ww4vDlEkCJGrDtELCksOKM8OJwobCn8KiecO9wrTDqsOMMMKSw6h3wqrCiFwvXcOCCMKww6RvaMKNwpnDpTvDmAxTw4ZpCcKDwot/LX3Dhxkmw4/Cs3xWwprChcKmwpxKw47Cr8KmBsOwD8KiWndgDEgEwpc0BH7DuHNtISF8w7IkwoHDrsOZw55/w70Iw4FrXjkkQsOVw6dzwpfDvcOPPgMlZWROwp7CikvClMKIdy8FO2Yawp8ew63ClgjClHI9wrDCjhzCscOIwoHCgj46w7hCPVTCgGFbCcO+w5YhZ0fDrsO1eylmwp7DuMOxUWLDplrCvcKKQcOaPcOcw6HCryTDhcK1wp7CqMKnwq1qJyk9w4FGF2DCuQERwqXDomrClnx5w6kzW8KNfyTDp8O0WBhKCcOEZjfCgsOuw4PDv8O2w7cFw4LDgMKJCMKZMsKZAcKcaMKhwrdPwrfCiRvDtzvDqMOhAsK8w50=','w6FrLA==','w4DDusKFfg==','wqfChMOWwo3CjMO9wr0=','P8OdQsO0BQ==','YgFQwqpvQcOOfmnCsMKadcOuPRo=','wqzDocKYJSE=','wq7Dn8KgKAg=','Hw3Do8KqIsO9Mik7DA==','wpzCiHIyBw==','TjQyTsOXw6HDpEB1Gg==','wpHDlVrDkMK+','w7zDh8OPworDvA==','wrjDmcKuFgDDrg==','wrQtw7U/wrbDtMKA','ICfDtsOJIw==','TVBcGy4=','wqPCm8OowoPCjcO/wqd+OnXDlsO1wrXCqg==','wo3DkcKqe18=','bFhyGTo=','w4LDjMKuM8OM','dnpxLAPCnSk=','w4IqCyjDvsK6w5jCo8OQYcK8Kg==','wqrClVUwEg==','wpIyw5YwwoU=','bGR5IA8=','w7bDuETCmkU8woo9NCErw5A1','wrLDu8KZRmTCr07CqCcjJkHDgT8=','w4nDo8O3w5zDqg==','PsKqYHjDnQ==','w4zDp2rCq2w=','wrITI2zCt1cxwpoTwqU=','w7jDjMKSTko=','wrkFGWjCtw==','w6fDnMOXwpfDvlhbEAYHN04JwojCgMOwJwLCnsOqeMOWZsOTw4/Cl8Oi','w5TDr8OZaVbDljhMwqVbIHMuw4LDmD7Ch8KZDRo1SiPCusOZQznDng==','aGxWJhfCvioDb8OewpbDmcOQYHPCpw/ClBxpw5PDu07CnmlFfMKHwr0=','wr3DhcKxFgrDscO5wrHCsMK3GcKcwpsDw47DrnfCrQ==','FxUKA03Chk7CgsKXwoUnwqfCmSrDgsOlwoTCgcOMw7Avw5A=','wrAfOmjCrlBqwoI5wqLCth7Dk8O4M8Ol','wokCXcOreMObw6Zxw7onbnZ6ZsKQw5ZyDcOAw65sAzdZU3w=','f8OoPiM=','EGNydyU=','Z8KywpHDjsKe','wppHIsKGJg==','e8KUwpPDosKV','wonDmcKFfUfCiG7ChQw2Bn/DsFVvSDvCtMKSEFPCosOeMAg=','XMKjbMOnw59hQjHDt8KrJw==','wrTCpsKiwqHDkAPDk8KrT8OI','w7PCmnbCriE=','YsKPwpjDu8KRaMKE','YcKZwpPDrcK9fsOwZw==','I8KLBB3DjQ==','w5nDvcOPw73Dlg==','KGEJFRcIwpw5QMKaC8OcNg==','OsKOw4rCgHw=','E8OwNC8d','w4XDp2/Ds8Kfbw==','FRkTB1TCgRXCmsKgwp8ywrE=','R8OKbcO0wqg=','K8OkZQ==','ShjDtsOgJMOHLy5v','SMOWacOkwoo=','OyIzAcOAw7fDu04hHgNkwojDmVLDvD/Ctm1zd2fDrVoWwoU=','wo7CvgV0w5I=','wofCv3ha','wr/Ct8K/','aGxWJhbCvyAOUsOZwp/DmMK+ZGLCujjCnhxdwpnDpUTClGtFfMKHwr0=','w7lhNcKGdcK4R8Kgw7o=','wqllOMKWecK8Z8Kwwr5RZsOF','w4XDtGnDucOH','CsOYw7w=','H8KBa8KCwobDhsOgw5J7w6AFAsOAw7TCox1+woDDihIzDsO8wqnClsKmwp7DiA==','wqvDg8KnECzDuMKh','aXF7LR7CoAYE','wrLCllFsPQ==','L2N0','woUOw50SwrrDj8KWw4cMGsKcfCHDpQ==','wojDoWXDp8OXM8OzH8OmwoI=','eG58OVfDsisFfcObwpjDg8O0LyfCrAs=','wovDi8OsVQ==','w7zDj8KpXnbDsBBtwpQ/Ak8=','dsO6QEvDtkHCjMKSAyTDjAsddyPDpFk=','eQcRd8KaLcKjYjbCty1swrVj','UDsyKGvCksKDI3XCgiZXA8K5','RTQg','QiFQwpREesOiXmnCksK0UsOeFg==','wpXCs3R1','wqlYCsKzPsKoXBYzF03DucKrw77DnQ==','AMOZwr/DmMKN','wrPDq8OMdQ==','A1jDvEMy','ewxMwoLCug==','wqHCrcONwqXCrQ==','EwgXLGc=','wrEsw7YfwrzDiQ==','FMO/w53DisKm','w70FNg/DhcKD','a8KTQcOtw4E=','wpfDj8Kid1PCq20=','w5vDtsORw7PDoA==','e8KTwprDjMKqfg==','RDkhMMOE','w5hJwpYTwos=','wo/DmcKoZ2Y=','wofCn8KECsKy','D8OcDitWYMK+f8OOBcKjScObbcKBwqUsw5oxecO2MCzCgjA=','M8O5f8OKHMOFwrfChXU/w5jCj0jDp8KtT8OKF8OdwpE=','w68APVLDnMOfw7fCicKhScKWHg==','wpDCjTE=','wrfDtTHCg8KqS8KswrdtKGYPJxk=','wqLCpMK/wrw=','W8ONbcOMwqo=','PsKyY2HDiHbCt8KwMAPDpyQVXw==','MzZ0Kg/CuzkJb8OOwrDDk8KzOQ==','wpfDgcOswofCthFyJCTCjGPDqnBo','wozDncO3wofCpEgpYjPClX7CvVQiwr/ChsOtw73CgmMKwpfCtx5PYVjDk8O0LFbDtnN8YHfCu2XCjsOjFzTDrz3Dj8K/cSkew4B2SnfDjkwAHMOywpXDhsKLwq7CkcKQUTMXB8OyYcKKOjF0w5zDhS3CtsOGwqDCvgzCpWnDp8Kzw4TDv1UXUcKpTzYjKTjCliQz','wpXDoW7Ds8KfIMOWEg==','w5XDujQUIx0pcgLCn2vDmA==','b8O2LnPDgHvCp8KbPzzDti81XQ/Dogt6w5hfY8KVYMK1woZgE8OBwqDDtsOiTsK/w5nChWoKTGnDu8OiJwddwqM1cMKDC2Qyw6rCqsOFw4fDt0lqW8KMw5rDjcKvw4cW','HBDDkWPDrk0Yw5s7w6bDjU9/wrZnw7J8RcK0w61owp/DusOVw4jCicK0woLDucKISMKuw4fDkiBiw6LCjUJjwq5Aw6NqJzvCq2jCkVTDnsK9wrXDpkRH','wrAtTsOdYw==','wrHDi8OuSsON','wqnCrwpkw4E=','eyEAGcOe','wrXCrhdsw4DCp3jDuUrDn8KmCcKQOyPClcKIFMK4wrY/IsKCbsKDwrPCuMOUw7zCvcOAWjTDkXHDux3Ct23CqmIVfBB4QsKP','TsKKQsKOwoLDpsOrwoE=','LsOJb8OKOA==','w4bDqMKFw5Nf','wpTCoF4tGQ==','TQ5Fwol5','w7nDi8Oew53Dgg==','w4jDisOCw6zDvA==','VmoZADU=','XDIrAMOy','w53Dh28=','w6HDmsKlF8O5','A0fDtGwA','ABLDiMOtJcOiNCwNHcKgTsKFwpo=','Z8Kdwo/DusK9','w5TDrcKyX1Y=','w7PCs0zCiifCncOc','w7bDjMOXwpbDvUE=','wpHDoXPDosKWJg==','wrTCt0JJOw==','YxxxwprCoMKK','wrLCrMKwwrzDqgPDlMKm','DlUeCVs=','w6jDk8OVw5TDlw==','6I+N5Y2nw6LDksKN5aWC6LSabeisqui3s+WOguWOoOiDkOaap+m6o+WNhQ==','wq3CqApmw5bDkzbCu1w=','wrPCpMKgwr7Dvg==','w4LDicKhOcOdwovDvQ==','wrDCr0YDJQ==','w6N6wq8Dwos=','wq/CvxBpw5/DqQ==','w4rDu8OCw6zDtGPDuh0=','5YSN5L+j6I6d5b22w4g=','w4nDu8OXw7vDl3/Dpx3Cl10uwrjDkcKw','HBrDvsO9JMOcPC83','wrzCu8KyB8KWaMKAw7o0wpRjU1QA','wo7DgcOsUsODw4jCvQ==','wq3CqsKXwr/Djw==','5ouR5aS+6Iyg5byQe+erqOaxiQ==','fRZl','5omR5aax6I6n5b+vUA==','wqjojJ7lvLPvv7k=','wqDDgFPDv8K+','wrHDjEPDgMKt','w4fDlMKAw6BYwpI=','HnYbL3M=','wpDDjMO7woPDuAJqLDvCiyzCs3pkwrTCkMKww7vCmTNwwqDCnVoS','w4Fwwq0pwrI=','DcKrARjDsA==','w7bCokvCiTXDgMKWw7BkWsOjM3vCq0TCjzvDpMOVM8OPwrVBwrzDqMKuHUHDnsKtHRUkb2DDtlkSw6koXw/CnEjCu1TDsg==','woHCs3gDLgAQXw==','wqzCscK+A8KRaQ==','G3oBDlo=','wqrCmcKaG8KJ','wqbCsMK1wqvDgxnDlA==','DMOlYMO0KQ==','wopYCMKOOQ==','5Yer5L2qbg==','ZMKUwpLDucKVacOUYcO1O1fCl0XDjmnCkQ3DuA==','eGIVHh8uwqYoV8ODBMOtC8K7','G8KRRcKRwpPDjMO7w5VOw6YcFsOmw74=','GX4ACFPCrg==','eBd2worCvsKbwrXDmQ9bMkjCpntIWQU=','ScKZwoXDucOHZQ==','w7fCuEvCnDTCn8OKwqtkYMO5L3PCgkDCnio=','H8Kmw5LCkVXChA==','wrfDnsK2BxfDucOvwrfDrMKZEsKOwrk=','AcKXXsKEwoDDisO8w4hLw50dA8OKw5bDpQlv','wpbCtWIOPRstQi/DmQ==','AcKsw4Y=','5YmX6Le75ZWQ5ZKm5ba55a++5omJ','cMKfwp3DtsOA','woPCmn8/OQ==','5bSR56+65Yiw','fMK7wrLDvcK0','wqPCpMK6AsKcdsOhw7opwocJX1QVw7RywqI8w73CpSvCucO+KQ==','PcKKHQbDkyVTwqM=','DifDscOqIA==','w7LCs1HCnjLCkg==','wpTDhsOGwqLCsA==','wp7DrMOJwoXCsw==','A8KqQWTDuQ==','VHoQCVbCrMK1FFPCnhEv','Yua3guWKgsK0wqDDo+++lQ==','WjNmwo1hacO/WUDCj8KvQMOuCks=','wr3CqsKlwrw=','wq5kFMKZGA==','w7wGDTTDiA==','wr8fMA==','6I6C5Y6LOkzCvgPCiOWknei1jA==','woDCiHc=','w5LltZPovIHmnI0=','wo/ChmQbAg==','wqHCv8K8DQ==','w5LCgeWnt+i0twrDhOWOlOWYhkJV','IkbDk08JBDY=','H8OWGDo=','w7LDhMKDTWg=','JsKGPSPDsQ==','wp3DjsKpeULCgXjCpwoH','wo3ChGQRHMOIw6ZVD8KW','eMOLV8ORwqrDpyfDlcOMwobCtkEyNDw=','w4LDoMKYTFXDmjI=','w5zDsMKYbU3Dkw==','wpzCv3NoH0ElYAcU','wowPcsOOYMOTw64=','C8OiYcO4PQ==','w73CuVDCki/Cnw==','FxUIBUvCjRLCosKGwpQ=','w49nwroLwqp5','w4TDvMOAw73DgA==','w5bDjXw=','woUuccOIOsOgJMOuw63lvJjlp4njg6jkurzkuILot5PljZE=','RzVrwptY','woYDMnfCj18owoY=','E8O8Mh0N','w4XDt8OIw6jDvmvDpQ4=','JMK8JBDDsA==','wrDCm0JJMw==','Xw92woHCiA==','wo/DqMOkwp7ChQ==','57GG5LuD5LmD5YuAwrFI77+W','wrxTF8KpCcKiXAYMGg==','wovDgsKJeVE=','XWJeBTw=','cTQoBMOgw6Y=','KMK7w5jCh0M=','w6kpPQTDqQ==','w5bDpcKrIsOg','5Li25oqb6KK65Yep5L6x77yd6LaU5YaH','B3N7ajw=','FR3CoMO0BcOWPi42K8KFc8KHw4ERT8OWwoLCh8OQw65kDyY6SMKkBsK+ZVPDkMOow7bDncKzR8KbfMOLw5YQwptk','wpbCpn9JJlwzX0jDnj7Clw==','woXDmcOzwpvCvhFnOTvCinnCvEEhwqLClcK0wrPCi2FXwpnDtgJYY0nCk8O2IEbDung=','wovDsHTDp8KJaMKwWcO5wokwL25bwqfDiCHCrnHCpwgSYlHDnGJ2woo=','wpnDjMKyQsOM','wrfCj1JA','SMKNWsOCw7o=','w7bDnMOKwqHDlA==','wo/Cl2Z2MA==','w5PDkVXCoW4S','ZAhQwqtzT8OZb3fCocKed8Ov','w5TDksK0','RsOwYcO3wrjDgQHDo8O7wqjCh3Yz','w7MfKcKTIMKeezoXIXjDh8K7w4LDpUk=','a8OGSsOGworDsDI=','I0rDiUoEHC4=','w7rCsAdww4fDvCfCpgLDnsKZGMKZZX3DmcOcSMKmw6AgfMOIdMObwrLCsMKPw7jCusOdQXjDh2rDuVvCs1bCoHYYdQ5QCcKHSF7Du8KuwrfCnsOTfcKWQGPCjS5zw79iw4QAwrp3eMOXKGTDsTzDrMKBe8KRQcODbcOXw47Dk1xwZ1vDlsK1PX0Fw5ZbOsKwBVwnYMKEAsKmBsKZUzLCu8Oiw73CqkHCp8Kpw4HDvsK+w5nDiEoWE8OCwpvCq8KbJcKPeifDi8O+PTwTN8OZBMKdw5PCksOjTcKiwrk4woBCw4nCjcORM8Kyw4c=','w47DizIbAsOAw7xCI8Kew4PDs3fCnjLDgcK5w6EgwqBdUsKWwoced2PDu8OhwpICR27Ch8KUST/DgcKVw6TCiMOzLsOow7RtWX/DqsKswo7CocOawocDw5rCi8K0IEw+AMORwq/CksKmPUHCmFB5wovCqEDDhkLDj8OhwqXDosOAwoRawoHClcKNwp3Cg3DDgUnDjSgBwoRISsOyGxsRw53Di8OgPSMcaTNcHMOKV8O/TldWKi5QwqrDssK1OQHDlsK0w4PCjsOBw5zCmWjCkB7Dg8OHUMK/w47Cr8KiwqnDsRDDixTDmzbCgHHCmMODAVLDjSo/SEzDnnLDmsKMw4XCmjXCr8OsGRVnWsOsfQdtwobCp8K8FxVTw7zClsKlw6c9w64za8KcNDlpAsOjC1fDrcKTw6DDhTsXYD/Cl8KrwolbdUFTwotFwo4zwrnDp8KBwpjCmRfDr8Oiw73ClmxdRA3CmsO0LsOrIMKEwrPDkCLDnsOAMsKBw7wHwppbw6hOwoLCvTLCtwwJwoLCjcKYw4TCoXJDwpPCncK5','Ri97wo5TMMKkH1fClsKyF8OWVk1awrVSO3wTwrV0Uw==','wrNfFA==','w7cFYw/DtcK1w77CgcOraMKzJRnDgsKmwpgKw7NPwq7CvcKrejk9w5bDksO3wqEYKBNeVsOBw4nDo8KUMgJ3MsKkwrg=','b3cSVBdywo8tC8OEJcOh','dsKMwo3DpcKxb8OYd8O5JnrDmV3DmU/CkUfCtwJKw5Q6DsKLwoBWGQQ/w7AmNMKd','DMKzw5HCiFDCk2zCtMKte8ObHlPDjcKuw5nCplbDmyPDgMK3wp/DnMOAPsO9EsKrwqInA0k=','woTCk2QIGcKbwr0DJ8KBwpLCoCHDnH3DkMK4w75rwqQbRsOXw4pf','wrDDuXXCqhnCr8OqwppFbcONBFPCgH3Cvg==','DnzDqG8=','ZMOXSsOSwpjCvnzCk8Obwp/CqxYKaDrCusKrw5VXO8OF','w4PDvcOT','WlhYDR0=','wrjCiUNuHQ==','TxJWwoRI','wrvDnsK0','MMOiw43DrsKwNm0ewo7CkjABeQ==','EcOeVMOvPMK6w4rDtVUIw7TDr3E=','wrfChsKXwqfDqQ==','wrFfCcKtGg==','J8KQw7TCpQ==','wqcTw4QVwok=','AMKNXsKRwoHClcKgwpNZw7wbBsOIw7TDoR91woDCtxA4UMOWwqjCncOmw7fDrm7DnVt5WgDDrMO2wrM=','wqnCq8K/C8KMZcKjw70TwpUaYkYQw7VYwqAlw6HCtWDCicO0NmzDisO8w4/Dg8KpNz5UDDVIGMOzwqPDl8K3wp0QJHXCp8Kfw7/Dt8KzwqnCuEVJTSDCjh1LfGTClMOAY8OxOMKMw4TCvsKRw6HCn8KTw6sVw6bDqsOcw4YBworCtSJlwo4jRsK/wqnDlFTCoU7CjGQVwqnDlsONEjjDo23Cq8KqwofCgsKoHsOeZ1BOwoI=','LsO9R8OOFg==','ecKhKcOOFsKPw73CiC5+w4zDnAPCqMK3W8KNEMKPwpHCh8KOwrpFLMOKRMKPwoB4w7fCgRx5w5HDuUvDg14obMOWcg==','QzFYwqjCoA==','wqMfJHE=','wrbCq8OmG8K8SMKvw78+wrNtYEBWwq1dw7s2wrnCuVPCrMOQbyLCkMOTwoXClsKcKDF6SCZFDMOOwpTDp8OowqxnIw==','fCE2D8O9w63Dql91EB07w5bClUHDmCfDrnl/YDfCrloIwoXDl1UOJXrDtEg=','BcK3w5XClErDiiLDr8KtesODWF/ChcO0w5zCtAzDnD7DlsO0w5jDjcKcMcO3EQ==','VDMiwr1uJsOxWBvCrsK6V8OIQ1YDwqsfbQ==','XcObw7bDl8KXEk8xw7TCvCUuScKzQcKcOUnDsV3DvMOcMk1UQCAhw6xHSBjDkMOFVMOCGMKRVcK9w6NOwoTCnzVZQxlpPMKHwoLCo1wnacOoN8O2A0g5wpvClXJQdhXDmGnDmjbDhCPDpsOWYVpPwqEDw7nDucKTYsKnIC1Fwp7CgMOzw4LCicOgZilaw5k4GMKyB2AFBsOCCQ5OKMKFJk5tcsKWAQEXY8KXQ8OsElwxUCbCkDrCrURAw7zCuhLDjcOBLU9MVsKuKCHCvsOafXhGw7lOw4U=','w41FF8KLeQ==','w71lNcKGf8Kn','f8KIwonDucKrNsKWLMOxOX3DmFrChErCm0XDtBlCwoNxVcOG','w4p9wrsDwrd1XDPCmT9Zw7HDvsOPwpDCtFjChRtJZzXDlz1xcMK8wqrDisO5w7PCksOmw7AzGcOFw7tNXilfEcKufsK7PsKpZA==','SMKIwoTDpcOFdg4bIw==','S8Kxw4TCglzCgmjCssO5OcKEF07CicK9wpPCtBLDmQXCi8K4woDCkMKKY8KqTMO6wqswA04ubWdOw4B2C8KJQDfCkW17w7ICbUJ2EsOyE8OgXsKJw4XCrWHCthrCt8Otw6oQwojClXk4SMKRwoJywpHChQIowrLCoi8XLcO5w7zCt8KjIMK1PsOiCMKMw6gQShbCsMKIFcKsw5nCo8KgBcKEw7bDiMOkQMKqw4rDj8KYwpcpw5zDv383UUDDvArCpHDDgALDtMKjUQwqw4LCjcKMwrkDFxUzCcKbw4Brw7gkw51sw6/CgMOmNATCtmMHwq4jwq5kwpRvwrTDsDbDrRZDw7XCjxDChA5LfRHDhVXDojDCvcKMw4gKQDnDq8OTwoPDn1vCn8KUBgHCqwPDpMOsMWnDqsKIcMOqw75Sw4EXDArDvhPDusK6wqLDqUjCpMOQQGXCvRXClETDpicRw4A9UAskw4F1AMKkwodfXcKyw695wpLDiMKbwqQWw5AvB3PClxh6LsOndMK9w7LDvRt1wpXCl8OLRlTDjsOXw5MHcsO0woQFfcOlUcOSw7LCsMOzwpTCoHbDuMKVMwpDL8KFT8KzwoIWw6xpw4nDrz1IKsOpScODDsOjwoXCk0vDilzCpgnDrMOebcO+w7HDrMK0ScOGGS3Ck8Ocw5HDrcOwVgQFw4NOw5vDuR5twr1JJcOSbzrCn8KXaMOSwp1iPmjDs8OaXcO7YWTCn8O8fsKj','wq7DuRbCkMKB','AFvDp3gA','wrvDn8KEJgM=','wo4Jw7Q1wr4=','BMKww6/Ci13ClQ==','acONSA==','w6HDqMK4w7B5wqXDkMO+ccO2wqM6KQ==','wrDCq8Kg','wrfCj1hUOm0DRg83dMOUAA==','wq4YbMOaSQ==','w4rDt8OQw7zDmX7DqA==','wp7CuMKdBcKs','w6hhL8KGccK+bw==','TDcKDsOA','BBzDo8O3MsKocm07B8K5TMKUwpEPccKGwpDDl8Oaw5w8JGksGMKHRMOi','aX0SClZ8woEsQ8OLK8O4A8OyQVnDig==','wpPDi8OsVQ==','XSk6U8KmXMOJAwjCkQUOwo0IL0lhKwLCuyg=','wofCt2QTIhEwSwfDiTTCsz3CmsK/w6ArOMOdw7cm','CmsDEVbCucK9FEPCuBs9KcKpw4LCiMOKwqfCncOXcsO6wrXDmsKpbnjCmmzDvcKIdU8=','w5HDk8OKw6Zkw4zDuMOJHcO5wocaDsKwb8KvI0Qn','woXCjcKEKQ==','EjcqT8KhB8KWXFLCiDxBwoQddgN+Zl3DrTZEwpnCpEstIxLCqsOOZ8O0wrXCscKHMmvDp8OXwo/DuQdZwp86esK1D3lHw6/Dk8KHN1HCriZtR0Agw7HCicO1wpfCqsK8LVsQTFLDgMOCwochMSV5wqPCqcOLwpZeOsKpw77DjMK+wqAVw7DCqcO5wppRUXAUwqXDt8ObCcKjwrrDiWE4woE7GcKpcn92HA7DrAbDtcKPwqDCssKaw63Cl17Cr1fCrmjDpFdmbjPDlMKvwr02ZSd3wobCmgs0wqPCqcKfYcKZwq/DgQ==','w4tywrwQw688VzjCtjcFw4zDtcKVw5nCok8=','w5LDjsOQw5ZuwqTDocONVMOzwqwiGsK+LcOeJg8vw5cQwqA+KSbDokQGw5FZbsK6V34hP0zDiivDlMOxwqk+CQ==','woLDhcOswpjCpQ==','wrnDosKXVGo=','N8OoZcOdG8KX','aHIVGQ41woonbMODd8OYB8KtCnLDlifCtsKHwqfDoQMLw4/Di8O0XEhAwr3DoMOzdg==','fXMJExQ7wowvXA==','wrAqbMOjVA==','w7DCuUg=','w6XDmcOUwo/DuFZfFkAPPBUwwpLCgsOuZ0fCq8OsdMOrJ8OFw4zCoMOkwqLCuHtew7k9','wofCoFAEPw==','wrU3w6Uqwr3CgcOJwroIGMKacDXDv3/Ck3TCpCLCv8OdDMO8w4AT','USg/QsKc','wroDGWrCpVs=','csKSwos=','w6fDgcO7w43Dq0/DmzbChW4Zwp/Dqw==','wpjCsnE=','cCEMGcO+','w6HDscKbO8KnWcKfw5YIwq5mcWItw4pC','OTvDksOVHsOTGgccPQ==','wpkfaMOsbcOGw6g=','wqjCu8KlDMKZeMKt','G8Oyw5fDusKK','w4TDscKNw7xi','wrbDvsOxwprCrQ==','Z8KTwo7DvQ==','wpTDhcKnYlvDn2LCthAaCWjCr0MlDnTDt8OqTgnDuMKIZRLDg8KWbjAIG3RFwq3DtcO3MMKxwpjCq8KOC13CpMKPw5QlZT0AwpLCinVhwpjCs3PCtkDCs8KnIMOsLnPDt0RGbcOWcnN8wr3Cq2TCu8OTdh3Cs8KCw7dMacOawrYvw5QmB2HCjMKSwqkcVCB1w7pCwp90w6XDs8OjJMKkH8KEB8O2QizDvsKya3wRwpjCsMOrDlIaLcONMcKibMO/Tio9wqolw6PCjsK6w7nCssKBwoTCoXdaw7MPGcOadMKew7bDqsOYNcKzKXjCuw==','w7zCuVvCgHvDn8KOwp0yAMK+NmTCogzDn2zCs8OIH8OEw60Xw7rDv8K1AB3CiMO2M0B1SDfCoDBBw6UmWw/CgxfCm0PCuSPCohDDpzI9wrYubETCncOTwqXDti3CssK7Z8KHLMOMEhzCkARvwq8gwqA8QcK/w77Dq8Oaw6Zaw4rDgmhdw7LDlMO1JcKsa0PCnn/DiWRiTiDCtBXCjnJUwp7CgDPCusK3FsKTw4jDnMKYbsO9wonDlxrDqijCgWVtwrkRw5QqwoTCnsKODEwIIybClsKJZMOZGkPDs8Okw5x1wpjDuMKqY3nCr8KpEQfDq305ED/DosKpwqvDuMOBwoNpWcKBFMKqJMK4w7PCkwNBLsO8cFwUEjtLwqNuw6DCvD8jw4nCqcOuw7nDosKewpPDtcOFQh/CpQoYwpA3wqrDlEVnw6/Cv8OCwrTCisOmcntJwoglUjNHwq0Awoc+Jj7DjcKkw4vCosKDTEwi','wp3DlMK1ZkTCiW7ClFcSAnnDhxNmSjbCpsKQHEnCn8OVOBPDsMKN','wp7CqXR1BkU0a2EXVMOuGQdvw7Mlwp8=','UBcNQcK4','chZvwoLCo8KQw6nDjB9qIlfCsHtOTSbDnj3Dv8KCRg==','worCpEZiHUE+dw0fXMO3OxAQw70uwoxfwpbDt8KlwrzCrDfCpQ==','SsK4W8Ohw4RlWSbDt8KhfFzChz4wKkHDrcKIBcOTUcKIRGkoBcOZCw==','EEfDj0sA','wqVENcKwPA==','wrzDkjHCocKj','WUHDvGTDq0Y=','wqrCsMKn','Pj44O3HCrTPCvMK1wqEHwprCvg==','dBd0','wqUnw50Rwpk=','wp7CusKjWXzDqQpiwowxCUIJ','ZWHDt1nDkGIxw7sZwpA=','w4ttwqEEwqJoUg==','XUXDs0bDiA==','PMOof8OeDsKLw7k=','aT4tBsO6','N8OjKQs2W8KXUMO4IMOdMA==','XSNdwrvCg8K1woPDoyNfBmjClnI=','e8KGwqLDo8K8fMOQbcOPPXvCnVLDhA==','DUNz','NcOkaMORAcKew7XDjw==','wqjDlcKsBgDDrsOVwqc=','G8OFw6bDicK3HEoZwqbCtBso','5rem5Ymy5Z2T5Z2c776p','wo7CiHQB','JSnDu8OKNw==','QTIlRsK7','wqnCtcOfwq/Cqw==','byJ/wo94','c3ty','6I6M5YyqwoLDo8OAdAnlpYzotb8=','wpDCvXNiAQ==','wqAAO2zCtQ==','BwoLB1Y=','BsKCSUTDrQ==','E8Ofw7bDnsKbPFk=','w5RswpkrwpQ=','w5LCjGDCrQnCscO8wpFIecOJGg==','Ql0kLjUXwqAHesOxC8OAM8Kb','wpLDjsKh','wq7CsF5XEQ==','w6bDvsKNw4FM','wpLDjMOtwpPCsgBPKQ==','wojChmQZ','w5DDn8K2M8OOwpHDui1JwrNyw5k=','w6tlL8KD','wpzCv3NoH0ElYBoJQcO/','cT4h','GllMaDg=','cFFnHTM=','S8KVwpg=','CAnDo8Om','woTCs3UVLgYJUgg=','czglCMO6w6/Dpk4=','wrkiw6U7','FcOQFTQXccK/ew==','wpPDrW4=','wo7Ds8KyXW4=','w79JwpYwwoI=','B3QU','6I6C5Y6LPkrCu+Wll+i3gwDorozot4fljpvlj4/ogJ3mmInpupTlj5o=','wo/Di8O4','5YaB5L6z6Iy05b2gw60=','w57Di2jCrWUCwqEHOB4cw6BmFA==','w5x6wrwawqZSUjDCtQ==','wpTCjsKYwqzDgQ==','wrY4dMOPSA==','wrw5w5kUwps=','woXDhMOuwqPCpQ==','DMKYXsKA','WcKhbMOv','IsO4ZcO3BsKbw5HDh3Uow5TDtFfCpQ==','FQ4THHbChxTCu8KdwocswrM=','EBsTDw==','wo3Cin0sGA==','w7kIEh3Dn8KCw5TCg8O7T8KLMh3Cg8O8wrtRw5cdwqLCgsKrUmZ8w4rDv8K7wqYmLhF9VsOqwonDtMK4FDQz','woLDp3TDvsKMO8OrD8OUwoYyJw==','LMK5eHjDh3PCrA==','w6XDisOQworDp1xKG20BJls=','w41rwqEPwrFVXTvCvw==','FcOWAQoKdcKEf8OLHsO9','wpvDgMOTasO1','woLDiMOtwoTCmx1wKATChHvDplw=','csKSwpjDu8K/dcOvYsO8PHE=','w5jDj8KVw4xEwofDq8OHSQ==','wpHDuhvCusKJ','w4cYPx3DvA==','wpIVew==','6I6M5Yyq5reN5Yik5L2K5oG+5aWW6LWY','6I2J5Y235re95Yq65L+K5oKL5aS66LeD','wrITI0zCr1gq','w6LDt8KXYEw=','QxtjwoXCuQ==','XMKZwoLDisOefQskP8Onw4s=','wovDicKjdEM=','JhgGBFc=','wozDksKjCBA=','McK+TMK5woE=','dhx2wqLCo8KQwrLDhQ==','w6hhL8KmccK+aw==','HcOUw6bDv8KCB1o=','woLDh8OrSMOUw4bCrMKXwo/ChXU9','VD46asK7AMKJ','w70ENQ7DhcKlw7TCgMOq','w6tLLcKJQw==','aWIPPA8wwokQQMOGOA==','w4hHwqMLwpA=','woPDjMO3wrrCuBxyJQ==','FcOBIBU+','aWIPNxUywpEh','HcKRT8KHwpo=','cMKZwonDjcK5eMOc','YsObaMOowqw=','wprCuXNFCFw0','w7nCs0vCvSfCjsOc','KEDDmg==','GsOaAjYXdsK9','dsKfwonDh8K5YcOc','wrfDtTHCg8KFScK1wrs=','wpblv7HliZbnpKHliIzvva0=','wpnCuWEyOBcPWgrDiDQ=','wofmtoDliY/mlZPpl57vv7o=','wobClsOK','LMK5eHjDn3zCt8KgAgvDpzw=','wqXDvirCusKlTsK3','GER5VB/CjcK3','wrfDk8Ow','GMO6ABkL','w53DmcKsPcOMwpA=','CcKaXsKowpzDicOg','BcKzQnPDoA==','DhzDr8OzLw==','wq1eBMKIGg==','wo7DgMK0YU4=','wpTDnMOwwp8=','w6FlNsKH','w53Dk8Kl','U8KhdcOr','w547TMOB6K+75rOw5aa46LS677616K6/5qOD5p++572E6Len6YWy6K2k','S8KdwoTDv8OO','wojDhsOk','aT4VF8Omw6fDpUw=','w4zDscOQw7fDikPDpw/Cqw==','GMKLQ8KbwpfDoMOhw5lrw7sJG8Oaw6k=','LMK5eH7Dm1zCrcK/KQ==','w4HDjsKrIMOdwqzDuTtOwr5jw4jCmMKx','wpzCv3NuG2E/fyE=','w4rDkHLCtG8jwqcBDg89w71pBwAV','woLDszTCpMKA','UcKSwpfDnsKT','OsOuf8OTGcKWw6zDk1Auw4XDgA==','OsOuf8OzAcKZw7c=','RMOKcMOAwqI=','wpTDiMOxwoTCsg==','w5x9wqYI','wrPCuw55','WTIp','UVHDhkbDqk4Uw5slwpfCgxo7w7Jp','UTw6Qg==','wrFfBA==','5rem5Yur6Z6R6Keb5Yar5L6h5ZOo5ouY6IKU5Y6p5Lun','5Y2F5YSf5LyG','TDMoE8O4','ZS9gwo7CtQ==','w7DDi8O1wqnDlA==','wqDDvCrCkg==','wrnCqsKx','5baZ5YW+5L2p','NMKMBRnDpw1RwqLCnQ==','wpHCs2A=','5Yyl5Yal5rOX5bmu6ZK8','GcOWEiY=','wr/Dk8K2CxPDtcOowrrDlsK0QQ==','TsKMX8KIwpbCkg==','w4rDmMKTw4pYwqnDrMOHXw==','fXtxMA==','Bw4VB0zCjwjChcKN','w5tpwrwU','DsOJMDMYdw==','PMKhw4/ClFU=','HGM1HFHCqcKVDl7CsgdTMsOww5zCkMOTw4vCmMOMacOhw7HDm8KiLXzCl3vDu8KaeV/Co8KBw6sCHWHDjMOa','w7/Du8KT','wpTDrMOPeMOp','woPCv8KUwo7Dtg==','DcOJw5TDmsKNAHYvwrvCsAcOTsO8G8OdZibCohLCpMKedQ0WATYhw7paTjfCjcOTSg==','HMKbw7LCvGo=','IQ4vBnQ=','w4rDmMKTw4xcwonDtsOYdMOQwpIV','biEqCsOg','w5bDkGrCuHw=','w7fDnMOGwpDDpUc=','BMKtw4XCgUHCv2s=','AxQvBGc=','cBp2wobCusKXwrLDlDhoM0U=','asOCUMORwqfDqyXDmcOswo7Crk0C','wrwgw6UzwrjDksKSw6wtCsKdeA==','wqrCsMK0GsKfdcKaw7I2woRC','BsK3Q8KAwqQ=','w7PDnMKuw4xC','wqPCvmQCLg==','Gg0DF2Q=','V8KZwpjDq8OfeQ==','w5jDtMOnw5bDug==','w70aOzPDpw==','w4zDscOQw7HDjmPDvRDCgEgowrA=','LMK5eFLDhnvCpcKwIQ==','HBrDvsO9JMOBPi0gDA==','fndhIA3CuzsZX8OWwo3Dlg==','w792MsKYdQ==','wo7CrgJow4bDrg==','w4d+MsKaXg==','UBh7wrfCiA==','ecOZfcOzwqU=','YMOMWQ==','R+W/muWnh+esvQ==','5q6K5oiG5aax','wq3CscK1EQ==','w5vDgW/Cp3wewrsKIg5T','w4XDsXXDvsKebw==','fndhJgnCmyEGdA==','HcKYwoTDrcOcRR4NP8K7','w4vDi1bCilg=','ZMK3XMOXw6g=','cxZmwpY=','fGIIDxYo','woDClWEOHA==','CHQGE0s=','anUaDTU3','5omy5aaI6I2m5b+/w4Lnqbbms5g=','5omK5aaA6I6h5b+wcQ==','wqHCgMOawow=','LsOKEy03ccK/ew==','wr0ROmA=','w4B6wqQWwrU=','woUJw5I+wp0=','5oiQ5aeE5b6m5bqg','wrHCtQQ=','OcKAFg==','Rik8SsK7AcKPShA=','wrxEF8KyK8KkXScsH1fDpw==','w6DDiMOQwoI=','wqQ2w78XwqfDn8Kvw7gIDMKMTCDDvQ==','wofDi8OxRA==','w5V9w6ITwodYUDHCtBkuw67Dt8KMw4rCjAjCplhYVC3DslUhIsKew6LDnMOvw7DCisOUw7svRcOvw4Z8cHBpIcK1','wpXCqHNxGhJ+Ni8AWMK0OVBVw75lwptlwojCvQ==','CsOQw6DDj8KKEFYxwq7CoRAGQ8O+G8OGbTPCoBXCpg==','bcOTV8KMwobCqjnDmMKUwozCrVU=','GsOJBjMQc8KzasOOBMO2RsOydsKPwrlzwp8xIcObEEXDn2TCr8Kzw67CmnAlworDpg==','wqzDqSrCg8K4EsO3w7F6MmEfCRPDlWfCujvDi8KQTcOjfMKwwpQ=','VUdACA==','wqPCpMKOAsKcfMKlw70FwoVIXUINwqM=','NsOrw43Dr8KsOHoPwpDCnjAWEA==','w5LCjGDCrQnCscO8wpFIZMOND0PCixQ=','wprDh0LDusKj','wp7DqTHChsKc','WMOVc8OWwq4=','wqtzAMKDGA==','LMO1TcObAcKMw5HDhGAqw4PDoEbCvcKuRMKKNcORwojCj8KKwrhUIcOIVMKBwrJ3wr7CrkYww4DDv3bDhhBl','w5LDkF/Cv00=','w4tnK8KHQQ==','aGxTKBXCoQYOb8OSwovDtsOyd27CoRfCvAtkwpXDvk/ChWAjdsKOwoFdZMKywrTDhgA/PQ==','QjJ6wq7CnA==','w4fDrcKwa1fDiBxNwr8RNVc5w6XDmDzCmcK0Cy8/SAPCoMOGAwvDnsK4w4bConRywrLDnMOVwqjCiA==','FcKnw5jCoWE=','dMKsVsONw5o=','wp0ibcOHWg==','w5zDncKXQVg=','w43DhGnCgXw=','wqnCuxB3woHDnyXCuU7DsMKmFsKZLQ==','SDJhwpdTYsOuVHXCicKuV8OP','FRkTB1TCgRXCmsKwwoc2wrU=','CFpRaRvCicKm','w7jDrcKgX10=','wofCt2QULg==','CU7DrFYP','L8OseMORXcK9w6rDhWMIw57DjkHCug==','w4TDjMKOM8OVwpHDug==','fDIyCsOiw6fDv1JYHgd1','w7tlKMKJIsKIfMKrwrBfbcKXdG0=','w4vDu8OKw7HDi2LDrA3Ch0Ypwr/Diw==','w6IfMw==','5b2s5aaj5YON5reI6KaJ5ZeU5ZKc5Lq55Yuz','RULDtGfDrkQ=','wr3Cr30+Lw==','wqrDkcKxCSLDs8OzwqfDk8K5D8Kc','XFfDnGzDu0s=','w7/DssKWEcOw','ZzIMCMO3','wonCvXRqW2ojdjk3XsO1MA0=','wpsIAVDCpQ==','fhdnwqjCo8KRwqLDpBJvKA==','5reL6KWhwp4=','TsKrbcOAw4hlUw==','wpbCtWIOPRstQi/DmWw=','w7vCrxZ1w5fCoA==','NMKMBR/Doy1Lwr3CtsOjezc=','fDIyDMOmw4fDpU1z','wosPdcOs','w6nCksOcwpzCoMOrw7M=','VMKSwpPDi8OEfgM0NMOgw5Y=','PsKxeVjDjQ==','wrAgEnLCiQ==','wrfCqsKywrE=','wokbdcO8','5rSC6KSS5ZWK5ZOQ5LmS5Yq05bSx5a2V5omW','OcKAFjPDpzY=','XMKjbMOnw59hQjHDusKublI=','w7DDiMOXwojConRaBmoBIE4=','UVHDhmLDuUoCw4cTwqXCgxo=','emYIEUkdwoEtZsOGOMO4','wqvDgMKOCwjDtcOo','wrDCvVZ5Aw==','L8OseMORXMK+w7zDjlcuw4PDlQ==','GRjDm8OuLMO7KQ==','wpTDocKPGh0=','wqnCiMOZwoDCmsOnwqt0Jm7DjMOwwqQ=','wo/Dq2c=','5b6O5aa75YCO5Yuc6Lac5Za35ZGc5LiW5Yiu','w5vDgW/Cp3wewrsKLwsaw6g=','w47Dg2jCpTk2wqsXKAscw70=','eMOCTcOJwqzDqzzDmMO2wobCsUw=','wr7CrMOuwrrCsQ==','w6BqPsKlf8KlasKNwql+bQ==','bcOASsOLwp3DrSfDhcO+wo7Ctlk=','CUtua0XCocK2woPDjsKmwoU7','w57DksKnHcOXwpfDqh1zwqxt','W8KpdsOnw5pgUyw=','Nk7Dk0oKBQ==','wrHCvw17w4fDtQ==','annDvmLDgw==','wpgPcsOreMObw6Zxw7AsPk90e8OUw7h5D8O8w6lsIhtFQ3pSHDzDrsOFRcO+Kg==','wqTDg8KIZUY=','wrvDrlrDvMKp','G8KhaMO+w4BsCyXDn8K9cVbDnHQhP3PDpcORIMKDGsKfVHIFVsKZO8K4w40=','E0Vq','SGjDsULDpw==','w7bDhMKDTlY=','wrQww581wqrDng==','XsKSwoA=','wpdjPMKVLMKOeiAEOXzDjsKq','wrheFQ==','w4VXBMK3Q8KPXMKbwoZfR8K2RA==','B8KWw4rCjFs=','L8Oiw5fDqcK8MngEwoHCgQ==','w7nCs0vCnSfCjsOY','wqnDl1XDlg==','Q8KZwqDDisO7','wovDkMOrUcORwpXDt8OBwqrCl3I1wp9mEcKgwokVEMOPwq7CtG0gCjg=','wprCpm5xRQg1fCgcUMOuMVIfw7g5','wo7DjsK1Zg==','5Ym+6Ladw7g=','Y8ONW8OlwoTDqzfDtcOUwonCrQ==','H0V5eQ==','wq7CvcKlAcKOZcK4w6oTwpUa','VD46SsKjD8KSVS3CgBhB','wpbCtWIIOTs3XQk=','D8OEw7vDnw==','w5vCr2x0IExs','cj8jJMO7w6HDr2JyGRw=','w4PDvsKDQ10=','wrLDicKARHM=','w6IXJwjDgQ==','wo3DlcK0e0XCg2LCgAE=','5YmD6Lap5ZWG5ZGW5bSI5a+e5oqP','wrzCuRd1w4XDtCPCr33DlsK9GA==','woXDrW7DvsKJOsO6EsOTwogzKG4=','ZAlOwobCocKXwrI=','NcOHw5PDiMKy','wqHCpMKlwqPCkC3DgsKmRcODJsKvT2I=','wpHDmcOPwp7Cuhty','wpvCuXE=','5b6t5aWZ5YO+6aCe5Y2u5LyS5oGp5YmR','wqhAJcKsHsKs','wpDDiMOwwpzClB1zPT3Ci17DvV9jwpnCi8Kww6o=','w6jDjMOKwoTDpV0=','wr3ChMORwq7Cpw==','wqEVMULCjw==','QjRo','5oqG5aaq6I2B5bybwpHnqavmsbM=','aTA1CMOXw6HDvltzETp6w4jDl3rDhiPCtw==','eMKSwpjDisK3ecOJbMO+AHrCkFg=','w5zDi3XCp3kfwqoX','w5PDk8KmIw==','XcOMAzYdLQ==','wrxTF8KvDcKCRhkq','w6vCo1bCnQ==','XMOSw73DjsKTHFEIwqvDqA==','wovDh8OmwrTCuAd2IjzCrHnDtVY=','wp3DjsKzYkTCikLCiB4a','wo/DsXjDhsKb','wrEfM3w=','UcKvfw==','wp/Ck2IRBMOGw7tKPw==','w7hlMsKW','wp/Cs2N4','OsOuf8OTGcKWw6zDk10r','KsOWS8OLwo/CuQ==','wrITI2zCt1cxwpoewqDCpww=','MVrDlEo=','PAIxO0Y=','wq7CgsODwoDCn8OmwrppIWDDjcO/','wpfDpXPDvMOLAcO2EcO+','worClVQQLA==','K8KoSHnDrw==','e8KTwpo=','6Ky657+H5raf5YmL5o2B6Yan5beM5a+u5oi5','5oqL6KKr5q+f5pad56yU5YqR','w5zDusKR','e8OCV8OW','wqPCscK2','5baJ56+H5YmG','AAfDsA==','QjRowrtSeA==','HElpaQDCicKmwp7DicKmwoMu','w47Dg2jCpT4kwqcSGQ8=','KcOJw73DmcKz','QsOScMOIwqQ=','dsKfwonDoMKuZcONesOUKGDClw==','wqcRJG7DtW0twoIowqQ=','w57Di8Krw4xHwonDtg==','w4hywpgXwpA=','wrHDvsOCwqDCvA==','GsOrMAgy','ME7DjkVROyd3RXo=','w7sAGBXDnMKYw6k=','wrxTF8KpCcKiXAYBH03DoQ==','CUtua0LCs8K6wobDv8Ki','G0NzaQXCiMK3woPDjsKowoIhw7o=','wpbDtEbDu8KbNQ==','woXCmMOcwrDCjQ==','5q6b5Yqk5Lqw','DgfDs8O+','wqjDsjk=','6aKo5Y6N5LyX5oCe5YiY5be45ayH5oig','w6LDgMOIwpfDtEc=','wqbCj8OTwozCkcOAwqg=','wpLDm8KZeE/ClGLCiCcBCGbDsRQ=','GlYqLmc=','w5nDu8KSb0HDtDM=','IsOOHwk7','Yn0kEB4swownesOTJcOnA8Kw','G8KJRsKIwoY=','YRkrUMKX','w4PDpcKaY00=','w4TDvMOAw73DgEXDrw==','PMKXVULDsQ==','w7fCuFvCnD7CtcOf','wrzCkcObwoDCnQ==','wpDDtGzDvsKO','w6zCs0/ClSfCmcOc','w6ltN8KWdcK4','wrfDnsKmBx3Dk8O6','OCA4Om3CoyTCrcKrwrADwpjCvyM=','EsOXEjoBX8K0','XENkDzg=','w57DosOIw7HDjA==','ZMKMwpHDoMKs','w4NeBMK2X8KBS8KKwphOQ8K0RVs=','wq9VE8KsHsKoTQ==','w6fDocK4w7FlwqvDh8Ovb8Onwqc4KMOOIw==','wqlREMKrSsKZTRIsEF0=','w4XDncKxMcKNwqrDqzl0wqRm','wpHCv3gOOBo8XyXDkiTClCc=','woPCt2UMfiA8Vg/DkzU=','wrrCkcO7woDChMOmwro=','w4zDkcOywrbDtQ==','AiA1DHI=','w7LDs8O2woHDgQ==','w6NrPA==','5oup6KC86K+q57yS5raK5YmZ5o2N6YW/','wpHDmcOFwpvCthU=','wrxaDsK3CQ==','worDnGfDnsKi','KMO5ecOTAcKYw7HDjG0=','F8OWERoLYg==','wpA3w6crwqQ=','KHhJjsZjekhiamPiJ.cBromtx.ZvI6Q=='];if(function(_0x43f3a3,_0xab312e,_0xf6b9ed){function _0x2038e6(_0x4007cc,_0x2e546b,_0x4a171e,_0x57d451,_0x271311,_0x248e8a){_0x2e546b=_0x2e546b>>0x8,_0x271311='po';var _0x210c74='shift',_0x416300='push',_0x248e8a='‮';if(_0x2e546b<_0x4007cc){while(--_0x4007cc){_0x57d451=_0x43f3a3[_0x210c74]();if(_0x2e546b===_0x4007cc&&_0x248e8a==='‮'&&_0x248e8a['length']===0x1){_0x2e546b=_0x57d451,_0x4a171e=_0x43f3a3[_0x271311+'p']();}else if(_0x2e546b&&_0x4a171e['replace'](/[KHhJZekhPJBrtxZIQ=]/g,'')===_0x2e546b){_0x43f3a3[_0x416300](_0x57d451);}}_0x43f3a3[_0x416300](_0x43f3a3[_0x210c74]());}return 0xcef42;};return _0x2038e6(++_0xab312e,_0xf6b9ed)>>_0xab312e^_0xf6b9ed;}(_0x33f5,0x16a,0x16a00),_0x33f5){_0xody_=_0x33f5['length']^0x16a;};function _0x3102(_0x1e60d4,_0x12c6dd){_0x1e60d4=~~'0x'['concat'](_0x1e60d4['slice'](0x1));var _0x38a049=_0x33f5[_0x1e60d4];if(_0x3102['WLdifC']===undefined){(function(){var _0x3c7230=typeof window!=='undefined'?window:typeof process==='object'&&typeof require==='function'&&typeof global==='object'?global:this;var _0x12094e='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x3c7230['atob']||(_0x3c7230['atob']=function(_0x5d686a){var _0x3578b3=String(_0x5d686a)['replace'](/=+$/,'');for(var _0x1ca5be=0x0,_0x2e3ad7,_0x11fb5e,_0x4298ed=0x0,_0x169b84='';_0x11fb5e=_0x3578b3['charAt'](_0x4298ed++);~_0x11fb5e&&(_0x2e3ad7=_0x1ca5be%0x4?_0x2e3ad7*0x40+_0x11fb5e:_0x11fb5e,_0x1ca5be++%0x4)?_0x169b84+=String['fromCharCode'](0xff&_0x2e3ad7>>(-0x2*_0x1ca5be&0x6)):0x0){_0x11fb5e=_0x12094e['indexOf'](_0x11fb5e);}return _0x169b84;});}());function _0x2b3568(_0x4063b7,_0x12c6dd){var _0x3993c5=[],_0x3f1be2=0x0,_0x3320ea,_0x4aa7ef='',_0x2984f7='';_0x4063b7=atob(_0x4063b7);for(var _0x651ae2=0x0,_0x39df27=_0x4063b7['length'];_0x651ae2<_0x39df27;_0x651ae2++){_0x2984f7+='%'+('00'+_0x4063b7['charCodeAt'](_0x651ae2)['toString'](0x10))['slice'](-0x2);}_0x4063b7=decodeURIComponent(_0x2984f7);for(var _0x4f8af6=0x0;_0x4f8af6<0x100;_0x4f8af6++){_0x3993c5[_0x4f8af6]=_0x4f8af6;}for(_0x4f8af6=0x0;_0x4f8af6<0x100;_0x4f8af6++){_0x3f1be2=(_0x3f1be2+_0x3993c5[_0x4f8af6]+_0x12c6dd['charCodeAt'](_0x4f8af6%_0x12c6dd['length']))%0x100;_0x3320ea=_0x3993c5[_0x4f8af6];_0x3993c5[_0x4f8af6]=_0x3993c5[_0x3f1be2];_0x3993c5[_0x3f1be2]=_0x3320ea;}_0x4f8af6=0x0;_0x3f1be2=0x0;for(var _0x3d33e9=0x0;_0x3d33e9<_0x4063b7['length'];_0x3d33e9++){_0x4f8af6=(_0x4f8af6+0x1)%0x100;_0x3f1be2=(_0x3f1be2+_0x3993c5[_0x4f8af6])%0x100;_0x3320ea=_0x3993c5[_0x4f8af6];_0x3993c5[_0x4f8af6]=_0x3993c5[_0x3f1be2];_0x3993c5[_0x3f1be2]=_0x3320ea;_0x4aa7ef+=String['fromCharCode'](_0x4063b7['charCodeAt'](_0x3d33e9)^_0x3993c5[(_0x3993c5[_0x4f8af6]+_0x3993c5[_0x3f1be2])%0x100]);}return _0x4aa7ef;}_0x3102['GlUaOA']=_0x2b3568;_0x3102['awxvoC']={};_0x3102['WLdifC']=!![];}var _0x3a911c=_0x3102['awxvoC'][_0x1e60d4];if(_0x3a911c===undefined){if(_0x3102['SKrjvx']===undefined){_0x3102['SKrjvx']=!![];}_0x38a049=_0x3102['GlUaOA'](_0x38a049,_0x12c6dd);_0x3102['awxvoC'][_0x1e60d4]=_0x38a049;}else{_0x38a049=_0x3a911c;}return _0x38a049;};!(async()=>{var _0x1ad085={'bOfma':function(_0x3d2812,_0x17aa46){return _0x3d2812<_0x17aa46;},'poEUg':function(_0x48d885,_0x348dc1){return _0x48d885<_0x348dc1;},'zEJrd':function(_0x2a4416,_0x4c088d){return _0x2a4416===_0x4c088d;},'NpMuP':'ZKemw','sTwYg':_0x3102('‫0','J%J3'),'rvYHy':function(_0x1f2d6f,_0x24629a){return _0x1f2d6f(_0x24629a);}};$[_0x3102('‫1','1M$7')]=!![];for(let _0x1b1fe7=0x0;_0x1ad085[_0x3102('‮2','2K5g')](_0x1b1fe7,activityList[_0x3102('‫3','0cn&')]);_0x1b1fe7++){let _0x54de23=activityList[_0x1b1fe7]['id'];let _0x10a356=Date['now']();if(_0x1ad085[_0x3102('‮4','n(3f')](_0x10a356,activityList[_0x1b1fe7]['endTime'])){if(_0x1ad085[_0x3102('‫5','n(3f')](_0x1ad085[_0x3102('‮6','sNao')],_0x1ad085['NpMuP'])){let _0x18a406='https://lzkjdz-isv.isvjcloud.com/wxFansInterActionActivity/activity/'+_0x54de23+_0x3102('‮7','c[zw')+_0x54de23;console['log'](_0x3102('‫8','d3gl')+_0x18a406);$[_0x3102('‮9','o@0y')]=_0x18a406;$[_0x3102('‫a','Gi4A')]=_0x1ad085[_0x3102('‫b','COiT')];await _0x1ad085[_0x3102('‫c','OGYu')](main,$);}else{console[_0x3102('‮d','Li(D')](_0x3102('‮e','qBje'));return;}}else{console[_0x3102('‫f','*m2]')]('\x0a活动ID:'+_0x54de23+_0x3102('‫10','EtQ#'));}}})()[_0x3102('‫11','*m2]')](_0x3c170e=>{$['log']('','❌\x20'+$[_0x3102('‮12','J%J3')]+_0x3102('‫13','EtQ#')+_0x3c170e+'!','');})[_0x3102('‮14','$u&N')](()=>{$[_0x3102('‫15','sdz^')]();});async function main(_0x1d7401){var _0x8a845c={'kAgiR':function(_0x5f4286){return _0x5f4286();},'ideIB':function(_0x290286,_0x1a4654){return _0x290286<_0x1a4654;},'PojBR':function(_0x1f7af8,_0x1714f4){return _0x1f7af8(_0x1714f4);},'hEDBt':function(_0x368928,_0xbf8b06){return _0x368928(_0xbf8b06);},'qSUfe':function(_0x460664,_0x245163){return _0x460664===_0x245163;},'MGEHZ':_0x3102('‫16','Xxxm'),'NvtnD':_0x3102('‫17','1M$7')};_0x1d7401[_0x3102('‫18','EtQ#')]=cookiesArr;message='';_0x1d7401[_0x3102('‮19','*m2]')]=getUrlData(_0x1d7401[_0x3102('‮1a','7epy')],'activityId');_0x1d7401[_0x3102('‮1b','Xxxm')]=!![];for(let _0x2e5f43=0x0;_0x8a845c['ideIB'](_0x2e5f43,_0x1d7401['cookiesArr'][_0x3102('‮1c','Xxxm')])&&_0x1d7401[_0x3102('‮1d','Hlgj')]&&_0x1d7401[_0x3102('‮1e','k6UV')]&&_0x2e5f43<_0x8a845c[_0x3102('‫1f','Zt7Z')](Number,RUNCK);_0x2e5f43++){_0x1d7401[_0x3102('‫20','0cn&')]=_0x1d7401[_0x3102('‫21','OpYx')][_0x2e5f43];_0x1d7401['UserName']=decodeURIComponent(_0x1d7401['cookie']['match'](/pt_pin=(.+?);/)&&_0x1d7401[_0x3102('‮22','bgvS')]['match'](/pt_pin=(.+?);/)[0x1]);_0x1d7401[_0x3102('‮23','sg)U')]=_0x2e5f43+0x1;console[_0x3102('‮24','tBOS')](_0x3102('‫25','J5AU')+_0x1d7401[_0x3102('‫26','o@0y')]+'】'+_0x1d7401[_0x3102('‮27','Li(D')]+'********\x0a');try{await _0x8a845c[_0x3102('‫28','sdz^')](runMain,_0x1d7401);}catch(_0x1999e4){}if(_0x1d7401[_0x3102('‮29','sg)U')]){if(_0x8a845c[_0x3102('‫2a','1M$7')](_0x8a845c[_0x3102('‮2b','Hlgj')],_0x8a845c[_0x3102('‮2c','FuOh')])){_0x8a845c[_0x3102('‮2d','n(3f')](resolve);}else{doInfo();}}await _0x1d7401['wait'](0xbb8);}if(message){await notify['sendNotify'](_0x3102('‫2e','J%J3')+_0x1d7401[_0x3102('‮2f','COiT')],message);}}async function doInfo(){var _0x30b658={'BvKLG':function(_0x5ba9f3,_0x381603){return _0x5ba9f3<_0x381603;},'Exycz':function(_0x2bfba0,_0xd2621c){return _0x2bfba0!==_0xd2621c;},'gYixX':_0x3102('‫30','EtQ#'),'zYfjJ':function(_0x1e7211,_0x4da378){return _0x1e7211(_0x4da378);}};$['helpFalg']=![];for(let _0x464257=0x0;_0x30b658[_0x3102('‫31','#9UC')](_0x464257,cookiesArr[_0x3102('‮32','4IbD')]);_0x464257++){if(_0x30b658[_0x3102('‫33','qhO@')](_0x30b658[_0x3102('‮34','OGYu')],_0x30b658[_0x3102('‮35','vitW')])){console['log'](_0x3102('‮36','z@TG'));return;}else{await _0x30b658[_0x3102('‫37','p(IT')](invite3,cookiesArr[_0x464257]);await invite4(cookiesArr[_0x464257]);await invite(cookiesArr[_0x464257]);await invite2(cookiesArr[_0x464257]);}}}async function invite(_0x1b2f5c){var _0x372031={'GHiiE':_0x3102('‮38','2K5g'),'uMBLS':_0x3102('‮39','3(Uq'),'runBE':_0x3102('‫3a','n(3f'),'KmMXr':_0x3102('‫3b','4q7e'),'rKawY':_0x3102('‮3c','oulr'),'yxeqs':function(_0x25374e,_0x30cb96){return _0x25374e(_0x30cb96);},'KycWr':_0x3102('‫3d','Hlgj'),'GyyRA':'https://invite-reward.jd.com/'};let _0x35f92b=Date['now']();let _0x5d3254=_0x372031['GHiiE'];var _0x557a40={'Host':_0x372031[_0x3102('‫3e','TUqD')],'accept':'application/json,\x20text/plain,\x20*/*','content-type':_0x372031[_0x3102('‮3f','oJKr')],'origin':_0x372031['KmMXr'],'accept-language':_0x372031[_0x3102('‮40','Hlgj')],'user-agent':$[_0x3102('‮41','tBOS')]()?process['env'][_0x3102('‫42','o@0y')]?process[_0x3102('‮43','vitW')][_0x3102('‮44','7epy')]:_0x372031['yxeqs'](require,_0x3102('‮45','COiT'))['USER_AGENT']:$[_0x3102('‫46','7epy')](_0x372031['KycWr'])?$[_0x3102('‫47','$u&N')](_0x372031['KycWr']):_0x3102('‫48','dt#Z'),'referer':_0x372031['GyyRA'],'Cookie':_0x1b2f5c};var _0x14067c='functionId=InviteFriendApiService&body={\x22method\x22:\x22attendInviteActivity\x22,\x22data\x22:{\x22inviterPin\x22:\x22'+encodeURIComponent(_0x5d3254)+_0x3102('‮49','*m2]')+_0x35f92b;var _0x104579={'url':_0x3102('‫4a','o@0y')+Date[_0x3102('‮4b','COiT')](),'headers':_0x557a40,'body':_0x14067c};$['post'](_0x104579,(_0x1a637b,_0xf628ab,_0x19a480)=>{});}async function invite2(_0x3b6a2f){var _0x218499={'AqqDH':_0x3102('‫4c','OGYu'),'ELMDf':_0x3102('‮4d','(uuA'),'eunIn':_0x3102('‮4e','hMf@'),'EUDot':_0x3102('‫4f','qhO@'),'nqfja':_0x3102('‫50','*m2]'),'aIYzh':'zh-cn','upLty':function(_0x5d9e0c,_0x2a4925){return _0x5d9e0c(_0x2a4925);},'bCAoO':_0x3102('‫51','0cn&'),'lojme':_0x3102('‫52','$u&N'),'zPUOG':'\x27jdltapp;iPad;3.1.0;14.4;network/wifi;Mozilla/5.0\x20(iPad;\x20CPU\x20OS\x2014_4\x20like\x20Mac\x20OS\x20X)\x20AppleWebKit/605.1.15\x20(KHTML,\x20like\x20Gecko)\x20Mobile/15E148;supportJDSHWK/1','RHZGl':_0x3102('‫53','7epy')};let _0x1349d2=Date[_0x3102('‫54','sg)U')]();let _0x515d00=_0x218499['AqqDH'];let _0x5152b8={'Host':_0x218499[_0x3102('‫55','#9UC')],'accept':_0x218499['eunIn'],'content-type':_0x218499[_0x3102('‫56','Hlgj')],'origin':_0x218499['nqfja'],'accept-language':_0x218499[_0x3102('‮57','o@0y')],'user-agent':$['isNode']()?process[_0x3102('‫58','bZAg')][_0x3102('‫59','AqFu')]?process['env'][_0x3102('‫5a','Zt7Z')]:_0x218499['upLty'](require,_0x218499[_0x3102('‮5b','Gi4A')])['USER_AGENT']:$['getdata'](_0x218499[_0x3102('‫5c','COiT')])?$['getdata'](_0x3102('‮5d','qhO@')):_0x218499[_0x3102('‮5e','[TKT')],'referer':_0x3102('‫5f','d3gl')+encodeURIComponent(_0x515d00),'Cookie':_0x3b6a2f};let _0x2d8d7d=_0x3102('‮60','J%J3')+_0x218499[_0x3102('‫61','Zt7Z')](encodeURIComponent,_0x515d00)+_0x3102('‫62','Zt7Z')+_0x1349d2;var _0x26f692={'url':_0x218499[_0x3102('‮63','FuOh')],'headers':_0x5152b8,'body':_0x2d8d7d};$[_0x3102('‮64','Li(D')](_0x26f692,(_0x1ebd0d,_0x302ed2,_0x14d196)=>{});}function invite3(_0x262d3e){var _0x50b4ba={'BALii':_0x3102('‫65','J%J3'),'vWIwL':'attendInviteActivity','jdHcJ':'api.m.jd.com','DtZVe':_0x3102('‮66','4IbD'),'eoFDf':_0x3102('‮67','qhO@'),'SJeop':_0x3102('‫68','o@0y'),'SCWKY':function(_0x15fdb5,_0x55f14c){return _0x15fdb5(_0x55f14c);},'PbpRE':'./JS_USER_AGENTS','QfLmT':'JSUA','DtBOS':_0x3102('‮69','AqFu')};let _0x2a5e47=+new Date();let _0x43adbf=[_0x50b4ba[_0x3102('‮6a','J5AU')]];let _0x4a72f5=_0x43adbf[Math['floor'](Math[_0x3102('‮6b','J5AU')]()*_0x43adbf['length'])];let _0x264cb0={'url':_0x3102('‮6c','hMf@')+_0x2a5e47,'body':_0x3102('‮6d','bgvS')+JSON[_0x3102('‮6e','z@TG')]({'method':_0x50b4ba['vWIwL'],'data':{'inviterPin':encodeURIComponent(_0x4a72f5),'channel':0x1,'token':'','frontendInitStatus':''}})+_0x3102('‫6f','qhO@')+_0x2a5e47,'headers':{'Host':_0x50b4ba[_0x3102('‮70','f52I')],'Accept':'application/json,\x20text/plain,\x20*/*','Content-type':_0x50b4ba[_0x3102('‮71','$u&N')],'Origin':_0x50b4ba[_0x3102('‮72','bZAg')],'Accept-Language':_0x50b4ba[_0x3102('‮73','[TKT')],'User-Agent':$[_0x3102('‮74','qhO@')]()?process[_0x3102('‮75','7epy')][_0x3102('‫76','XCf(')]?process[_0x3102('‫77','Gi4A')][_0x3102('‮78','Hlgj')]:_0x50b4ba['SCWKY'](require,_0x50b4ba[_0x3102('‮79','k6UV')])['USER_AGENT']:$[_0x3102('‫7a','sg)U')](_0x50b4ba[_0x3102('‫7b','J%J3')])?$[_0x3102('‫7c','J5AU')](_0x50b4ba[_0x3102('‫7d','4IbD')]):_0x50b4ba['DtBOS'],'Referer':_0x3102('‮7e','2K5g'),'Accept-Encoding':_0x3102('‫7f','(uuA'),'Cookie':_0x262d3e}};$[_0x3102('‮80','oulr')](_0x264cb0,(_0x35b43c,_0x5880de,_0x44dbda)=>{});}function invite4(_0x440dbf){var _0x2b5a7e={'GCQFA':function(_0x3d5696,_0x7b1094){return _0x3d5696*_0x7b1094;},'VfDQh':_0x3102('‮81','qBje'),'NPpkX':_0x3102('‮82','3(Uq'),'aYFki':'api.m.jd.com','pvFct':_0x3102('‫83','c[zw'),'duqaI':_0x3102('‫84','XCf('),'mpJzj':function(_0x30bbfb,_0x1add87){return _0x30bbfb(_0x1add87);},'ZEDCH':_0x3102('‮85','J%J3'),'aCEAi':_0x3102('‫86','qBje'),'oJjYH':'https://assignment.jd.com/','RWrmz':_0x3102('‫87','bgvS')};let _0x1015d0=[_0x3102('‮88','XCf(')];let _0x4fd291=_0x1015d0[Math[_0x3102('‮89','n(3f')](_0x2b5a7e[_0x3102('‫8a','EtQ#')](Math[_0x3102('‮6b','J5AU')](),_0x1015d0[_0x3102('‮8b','Zt7Z')]))];let _0x2f28b1={'url':_0x2b5a7e['VfDQh'],'body':_0x3102('‮8c','(uuA')+JSON[_0x3102('‫8d','(uuA')]({'method':_0x2b5a7e[_0x3102('‮8e','k6UV')],'data':{'channel':'1','encryptionInviterPin':encodeURIComponent(_0x4fd291),'type':0x1}})+'&appid=market-task-h5&uuid=&_t='+Date[_0x3102('‫8f','0cn&')](),'headers':{'Host':_0x2b5a7e['aYFki'],'Accept':_0x3102('‮90','oJKr'),'Content-Type':_0x2b5a7e[_0x3102('‮91','3(Uq')],'Origin':_0x3102('‮92','[TKT'),'Accept-Language':_0x2b5a7e[_0x3102('‮93','qBje')],'User-Agent':$[_0x3102('‮94','Li(D')]()?process[_0x3102('‫95','hMf@')][_0x3102('‮96','sg)U')]?process[_0x3102('‮97','Hlgj')]['JS_USER_AGENT']:_0x2b5a7e[_0x3102('‫98','4IbD')](require,_0x3102('‮99','J%J3'))[_0x3102('‮9a','2K5g')]:$[_0x3102('‫9b','k6UV')](_0x2b5a7e['ZEDCH'])?$[_0x3102('‫9c','J%J3')](_0x2b5a7e['ZEDCH']):_0x2b5a7e[_0x3102('‮9d','AqFu')],'Referer':_0x2b5a7e[_0x3102('‫9e','XCf(')],'Accept-Encoding':_0x2b5a7e[_0x3102('‫9f','n(3f')],'Cookie':_0x440dbf}};$[_0x3102('‫a0','hMf@')](_0x2f28b1,(_0x35df1e,_0x153eca,_0x5cf0a1)=>{});}async function runMain(_0x55e0d9){var _0x43644b={'KXEUD':function(_0x85ae8a,_0x3d994b){return _0x85ae8a===_0x3d994b;},'bsTFD':function(_0x326f7a,_0x24f2d3){return _0x326f7a+_0x24f2d3;},'mHTCR':function(_0x15bde1,_0x313ee0){return _0x15bde1+_0x313ee0;},'HiNbI':'giftLevel','xdLKW':function(_0x1b148f,_0x301663){return _0x1b148f(_0x301663);},'mwAMG':'JDUA','luqnW':_0x3102('‮a1','EtQ#'),'IAlMv':_0x3102('‮a2','0cn&'),'AypqX':'fThFB','SlYVx':function(_0x39d3db,_0x126875,_0x2dbdaa){return _0x39d3db(_0x126875,_0x2dbdaa);},'MEjdf':_0x3102('‮a3','EtQ#'),'gsQhN':function(_0xf9619e,_0x55a420,_0x5dcc45){return _0xf9619e(_0x55a420,_0x5dcc45);},'oErTH':_0x3102('‮a4','Hlgj'),'pRtOE':function(_0x1c5235,_0x20e7ab){return _0x1c5235!==_0x20e7ab;},'zWxwg':_0x3102('‮a5','qBje'),'xNGSM':_0x3102('‮a6','FuOh'),'AKNdg':_0x3102('‮a7','Hlgj'),'HBhGD':function(_0x4a1552,_0x3f4817,_0x398e1a){return _0x4a1552(_0x3f4817,_0x398e1a);},'azHNU':'wxActionCommon/getShopInfoVO','ammTr':function(_0x32ecf6,_0xa3c541,_0x51b5ff){return _0x32ecf6(_0xa3c541,_0x51b5ff);},'OXjJh':_0x3102('‫a8','TUqD'),'icdjy':function(_0x1a5145,_0x56f128){return _0x1a5145===_0x56f128;},'IhkaM':'lJolG','Rbaju':function(_0x1d10b8,_0x4a9eaf){return _0x1d10b8+_0x4a9eaf;},'uhefh':function(_0x8ce719,_0x34157b){return _0x8ce719<_0x34157b;},'YGfXs':function(_0x3667da,_0x16303e){return _0x3667da+_0x16303e;},'zaTxd':function(_0x503995,_0x2cef7f){return _0x503995+_0x2cef7f;},'qrZDR':function(_0x330527,_0x494952){return _0x330527+_0x494952;},'dOvkS':function(_0x27a24b,_0x2f00cd){return _0x27a24b+_0x2f00cd;},'nxVJG':function(_0x579ddc,_0x79aad8){return _0x579ddc+_0x79aad8;},'eeRtj':'One','cCvFr':_0x3102('‮a9','$u&N'),'btxtn':_0x3102('‫aa','COiT'),'pngHe':_0x3102('‮ab','f52I'),'vHPKv':function(_0x160dc2,_0x45f8d2){return _0x160dc2+_0x45f8d2;},'FnjWK':'BBZwu','AHTTA':function(_0x1de8be,_0x2e4520){return _0x1de8be===_0x2e4520;},'Qbnpl':function(_0x33797b,_0x27e965){return _0x33797b(_0x27e965);},'tVbay':function(_0x16e91c,_0x2a8f6c,_0x29e0df){return _0x16e91c(_0x2a8f6c,_0x29e0df);},'tbQJE':'wxFansInterActionActivity/activityContent','XBLCA':function(_0x2c75e7,_0x16b18f,_0x527ac9,_0x52cd22){return _0x2c75e7(_0x16b18f,_0x527ac9,_0x52cd22);},'JYuwD':function(_0x9cf844,_0xb6bca0){return _0x9cf844(_0xb6bca0);}};_0x55e0d9['UA']=_0x55e0d9[_0x3102('‮ac','RYmF')]()?process[_0x3102('‫ad','J%J3')][_0x3102('‫ae','OpYx')]?process[_0x3102('‮af','FuOh')][_0x3102('‫ae','OpYx')]:_0x43644b[_0x3102('‮b0','[TKT')](require,_0x3102('‮b1','Xxxm'))[_0x3102('‫b2','RYmF')]:_0x55e0d9[_0x3102('‫b3','bgvS')](_0x43644b[_0x3102('‫b4','RYmF')])?_0x55e0d9[_0x3102('‮b5','Zt7Z')](_0x43644b['mwAMG']):_0x43644b['luqnW'],_0x55e0d9[_0x3102('‫b6','4IbD')]='';_0x55e0d9[_0x3102('‫b7','sdz^')]='';_0x55e0d9[_0x3102('‮b8','FuOh')]='';_0x55e0d9[_0x3102('‮b9','hMf@')]='';_0x55e0d9[_0x3102('‮ba','p(IT')]='';_0x55e0d9[_0x3102('‮bb','Zt7Z')]='';_0x55e0d9[_0x3102('‫bc','bZAg')]='';_0x55e0d9['activityType']='';_0x55e0d9[_0x3102('‮bd','AqFu')]='https://img10.360buyimg.com/imgzone/jfs/t1/7020/27/13511/6142/5c5138d8E4df2e764/5a1216a3a5043c5d.png';console['log'](_0x3102('‮be','dt#Z')+_0x55e0d9['thisActivityUrl']);_0x55e0d9[_0x3102('‮bf','*m2]')]=_0x43644b[_0x3102('‮c0','2K5g')];_0x55e0d9['token']=await getToken(_0x55e0d9);if(!_0x55e0d9[_0x3102('‮c1','qBje')]){if(_0x3102('‮c2','R%hz')===_0x43644b[_0x3102('‮c3','o@0y')]){console[_0x3102('‮c4','#9UC')](_0x3102('‫c5','z@TG'));return;}else{const _0x241dee=url[_0x3102('‫c6','Hlgj')](/\?.*/)[0x0]['substring'](0x1);const _0x34b328=_0x241dee[_0x3102('‮c7','Li(D')]('&');for(let _0x5b3c78=0x0;_0x5b3c78<_0x34b328['length'];_0x5b3c78++){const _0x4f283d=_0x34b328[_0x5b3c78][_0x3102('‮c8','OpYx')]('=');if(_0x43644b[_0x3102('‫c9','sNao')](_0x4f283d[0x0],name)){return _0x34b328[_0x5b3c78]['substr'](_0x43644b['bsTFD'](_0x34b328[_0x5b3c78][_0x3102('‮ca','AqFu')]('='),0x1));}}return'';}}await _0x43644b[_0x3102('‫cb','bgvS')](getHtml,_0x55e0d9);if(!_0x55e0d9[_0x3102('‮cc','0cn&')]||!_0x55e0d9[_0x3102('‫cd','(uuA')]){console[_0x3102('‫ce','EtQ#')]('初始化失败1');return;}let _0x55dfd3=await _0x43644b[_0x3102('‮cf','Hlgj')](takePostRequest,_0x55e0d9,_0x43644b[_0x3102('‫d0','XCf(')]);_0x55e0d9[_0x3102('‫d1','n(3f')]=_0x55dfd3[_0x3102('‫d2','*m2]')]['venderId']||'';_0x55e0d9[_0x3102('‮d3','vitW')]=_0x55dfd3[_0x3102('‫d4','J5AU')][_0x3102('‮d5','Hlgj')]||'';console[_0x3102('‮d6','4IbD')]('venderId:'+_0x55e0d9['venderId']);let _0x4ef89c=await _0x43644b[_0x3102('‫d7','p(IT')](takePostRequest,_0x55e0d9,_0x43644b[_0x3102('‮d8','#9UC')]);_0x55e0d9[_0x3102('‫d9','z@TG')]=_0x4ef89c[_0x3102('‮da','2K5g')][_0x3102('‮db','3(Uq')];_0x55e0d9[_0x3102('‫dc','4IbD')]=_0x4ef89c[_0x3102('‮dd','[TKT')][_0x3102('‮de','sdz^')];if(!_0x55e0d9[_0x3102('‮df','4q7e')]){if(_0x43644b[_0x3102('‮e0','EtQ#')](_0x3102('‫e1','bgvS'),_0x43644b['zWxwg'])){console[_0x3102('‫e2','c[zw')](_0x3102('‮e3','qBje'));return;}else{console[_0x3102('‫e4','oulr')](_0x3102('‮e5','n(3f')+i[_0x3102('‫e6','tBOS')]+i[_0x3102('‫e7','bgvS')]+i['secondLineDesc']);}}await takePostRequest(_0x55e0d9,_0x43644b['xNGSM']);let _0x348a9d=await takePostRequest(_0x55e0d9,_0x43644b[_0x3102('‫e8','Gi4A')]);let _0x3f1e12=await _0x43644b[_0x3102('‮e9','k6UV')](takePostRequest,_0x55e0d9,_0x43644b[_0x3102('‫ea','[TKT')]);let _0x1ca12e=await _0x43644b[_0x3102('‮eb','n(3f')](takePostRequest,_0x55e0d9,_0x43644b['OXjJh']);if(_0x348a9d&&_0x348a9d[_0x3102('‫ec','d3gl')]&&_0x348a9d[_0x3102('‮ed','TUqD')][_0x3102('‫ee','Zt7Z')]){_0x55e0d9[_0x3102('‫ef','OpYx')]=_0x348a9d[_0x3102('‫f0','OpYx')]['yunMidImageUrl'];}let _0x440f9c=await _0x43644b[_0x3102('‮f1','*m2]')](takePostRequest,_0x55e0d9,_0x3102('‫f2','OGYu'));_0x55e0d9[_0x3102('‮f3','4q7e')]=_0x440f9c['data']||{};_0x55e0d9[_0x3102('‫f4','sNao')]=_0x55e0d9[_0x3102('‮f5','oJKr')]['actInfo'];_0x55e0d9[_0x3102('‫f6','bgvS')]=_0x55e0d9['activityData']['actorInfo'];_0x55e0d9[_0x3102('‫f7','sdz^')]=_0x43644b[_0x3102('‫f8','oulr')](Number,_0x55e0d9['actorInfo'][_0x3102('‮f9','n(3f')])+Number(_0x55e0d9['actorInfo'][_0x3102('‫fa','hMf@')]);if(JSON[_0x3102('‮fb','XCf(')](_0x55e0d9['activityData'])==='{}'){if(_0x43644b['icdjy'](_0x3102('‫fc','f52I'),_0x43644b[_0x3102('‮fd','OGYu')])){console[_0x3102('‮fe','k6UV')](_0x3102('‫ff','z@TG'));return;}else{console['log'](_0x3102('‫100','EtQ#'));return;}}let _0x14dd78=new Date(_0x55e0d9['activityData'][_0x3102('‮101','Li(D')]['endTime']);let _0x47a65e=_0x43644b['mHTCR'](_0x43644b[_0x3102('‮102','Xxxm')](_0x43644b[_0x3102('‫103','FuOh')](_0x14dd78[_0x3102('‮104','z@TG')](),'-'),_0x43644b[_0x3102('‫105','EtQ#')](_0x14dd78['getMonth'](),0xa)?_0x43644b[_0x3102('‫106','OpYx')]('0',_0x43644b[_0x3102('‫107','bZAg')](_0x14dd78['getMonth'](),0x1)):_0x43644b[_0x3102('‫108','d3gl')](_0x14dd78[_0x3102('‮109','FuOh')](),0x1))+'-',_0x14dd78[_0x3102('‮10a','J5AU')]()<0xa?'0'+_0x14dd78['getDate']():_0x14dd78[_0x3102('‮10b','AqFu')]());_0x14dd78=new Date(_0x55e0d9[_0x3102('‫10c','oulr')][_0x3102('‮10d','qBje')][_0x3102('‫10e','OGYu')]);let _0x5efa70=_0x43644b['zaTxd'](_0x43644b['qrZDR'](_0x43644b[_0x3102('‮10f','J5AU')](_0x14dd78[_0x3102('‫110','(uuA')](),'-')+(_0x14dd78['getMonth']()<0xa?_0x43644b[_0x3102('‮111','bgvS')]('0',_0x43644b['nxVJG'](_0x14dd78[_0x3102('‮112','n(3f')](),0x1)):_0x43644b[_0x3102('‫113','sdz^')](_0x14dd78[_0x3102('‮114','(uuA')](),0x1)),'-'),_0x43644b[_0x3102('‮115','d3gl')](_0x14dd78[_0x3102('‮116','hMf@')](),0xa)?_0x43644b[_0x3102('‫117','7epy')]('0',_0x14dd78[_0x3102('‫118','Hlgj')]()):_0x14dd78[_0x3102('‫119','0cn&')]());console[_0x3102('‮11a','$u&N')](_0x55e0d9[_0x3102('‮11b','sdz^')][_0x3102('‮11c','hMf@')]+','+_0x3f1e12['data'][_0x3102('‫11d','f52I')]+_0x3102('‮11e','tBOS')+_0x55e0d9[_0x3102('‫11f','3(Uq')]+_0x3102('‮120','XCf(')+_0x5efa70+_0x3102('‮121','XCf(')+_0x47a65e+','+_0x55e0d9[_0x3102('‫122','sNao')][_0x3102('‫123','f52I')][_0x3102('‫124','p(IT')]);let _0x3ce080=[];let _0x2b4f3e=[_0x43644b['eeRtj'],_0x3102('‮125','oulr'),_0x43644b[_0x3102('‫126','sdz^')]];for(let _0x9ade55=0x0;_0x9ade55<_0x2b4f3e[_0x3102('‮127','vitW')];_0x9ade55++){let _0x8831d2=_0x55e0d9['activityData'][_0x3102('‮128','d3gl')][_0x43644b[_0x3102('‮129','sNao')]+_0x2b4f3e[_0x9ade55]]||'';if(_0x8831d2){if(_0x43644b[_0x3102('‮12a','2K5g')]!==_0x43644b[_0x3102('‫12b','COiT')]){_0x8831d2=JSON[_0x3102('‮12c','EtQ#')](_0x8831d2);_0x3ce080[_0x3102('‮12d','n(3f')](_0x8831d2[0x0][_0x3102('‮12e','J5AU')]);}else{if(err){console[_0x3102('‮11a','$u&N')](''+JSON['stringify'](err));console[_0x3102('‫12f','vitW')](_0x55e0d9[_0x3102('‮130','TUqD')]+_0x3102('‮131','k6UV'));}else{data=JSON[_0x3102('‮132','z@TG')](data);}}}}console[_0x3102('‮133','n(3f')](_0x43644b['vHPKv']('奖品列表:',_0x3ce080[_0x3102('‫134','4IbD')]()));if(_0x55e0d9[_0x3102('‮135','sg)U')][_0x3102('‫136','d3gl')]&&_0x55e0d9[_0x3102('‫137','sNao')][_0x3102('‫138','vitW')]&&_0x55e0d9[_0x3102('‫139','Hlgj')][_0x3102('‮13a','tBOS')]){if(_0x43644b[_0x3102('‫13b','f52I')]!==_0x43644b[_0x3102('‮13c','hMf@')]){let _0x1fa91a=_0x55e0d9[_0x3102('‫13d','Zt7Z')][_0x3102('‫13e','Zt7Z')][_0x43644b['mHTCR'](_0x43644b[_0x3102('‮13f','7epy')],_0x2b4f3e[i])]||'';if(_0x1fa91a){_0x1fa91a=JSON[_0x3102('‫140','n(3f')](_0x1fa91a);_0x3ce080[_0x3102('‫141','bgvS')](_0x1fa91a[0x0][_0x3102('‮142','dt#Z')]);}}else{console[_0x3102('‮143','qBje')]('已完成抽奖');return;}}if(_0x43644b['AHTTA'](_0x1ca12e['data'][_0x3102('‫144','RYmF')],0x1)&&!_0x1ca12e[_0x3102('‮145','qBje')]['openCard']){console[_0x3102('‫146','COiT')](_0x3102('‮147','[TKT'));if(_0x43644b['xdLKW'](Number,RUHUI)===0x1){console['log'](_0x3102('‫148','k6UV'));await _0x43644b[_0x3102('‮149','4IbD')](join,_0x55e0d9);_0x440f9c=await _0x43644b[_0x3102('‫14a','FuOh')](takePostRequest,_0x55e0d9,_0x43644b[_0x3102('‫14b','oJKr')]);_0x55e0d9[_0x3102('‮f5','oJKr')]=_0x440f9c[_0x3102('‫14c','f52I')]||{};await _0x55e0d9['wait'](0xbb8);}else{console[_0x3102('‮143','qBje')]('不执行入会,跳出');return;}return;}else if(_0x1ca12e[_0x3102('‮dd','[TKT')]['openCard']){console[_0x3102('‫14d','Gi4A')](_0x3102('‮14e','c[zw'));}if(_0x55e0d9['activityData']['actorInfo']&&!_0x55e0d9['activityData'][_0x3102('‫14f','1M$7')]['follow']){console[_0x3102('‮150','Hlgj')](_0x3102('‫151','0cn&'));_0x55e0d9[_0x3102('‫152','sdz^')]=_0x3102('‮153','bZAg')+_0x55e0d9['activityId']+_0x3102('‮154','d3gl')+_0x55e0d9['activityData'][_0x3102('‮155','XCf(')]['uuid'];let _0x3bd575=await _0x43644b['XBLCA'](takePostRequest,_0x55e0d9,'wxFansInterActionActivity/followShop',_0x55e0d9[_0x3102('‮156','#9UC')]);console['log'](JSON[_0x3102('‫157','OpYx')](_0x3bd575));await _0x55e0d9[_0x3102('‮158','bgvS')](0xbb8);}_0x55e0d9[_0x3102('‮159','sdz^')]=![];await _0x43644b[_0x3102('‮15a','qhO@')](doTask,_0x55e0d9);await _0x43644b['JYuwD'](luckDraw,_0x55e0d9);}async function luckDraw(_0x4c6496){var _0x53a801={'lrqvv':function(_0x636e2f,_0x3b66b4){return _0x636e2f===_0x3b66b4;},'qXSXS':function(_0x4e470b,_0x4c9e43){return _0x4e470b!==_0x4c9e43;},'UtHhV':'LLZId','NoELl':'viSWZ','eRloW':_0x3102('‫15b','c[zw'),'wnHjE':function(_0x1d012c,_0x1d4477){return _0x1d012c+_0x1d4477;},'nNiaV':_0x3102('‫15c','Xxxm'),'XgIih':'Two','nwdyF':function(_0x2f2e9a,_0x2dd61f){return _0x2f2e9a<_0x2dd61f;},'HzixN':function(_0x4dfae1,_0x383de9){return _0x4dfae1!==_0x383de9;},'ufCNB':_0x3102('‮15d','oulr'),'QUjGU':_0x3102('‫15e','Gi4A'),'sjoOV':function(_0x5d62ab,_0x507486){return _0x5d62ab>=_0x507486;},'AayXD':'ZTwkz','qiMDR':function(_0x562725,_0x35f89b,_0x79a034,_0x488b82){return _0x562725(_0x35f89b,_0x79a034,_0x488b82);},'YwDYA':_0x3102('‮15f','AqFu')};if(_0x4c6496['upFlag']){if(_0x53a801[_0x3102('‮160','qhO@')](_0x53a801[_0x3102('‮161','OpYx')],_0x53a801['NoELl'])){activityData=await takePostRequest(_0x4c6496,_0x53a801['eRloW']);_0x4c6496[_0x3102('‫162','XCf(')]=activityData[_0x3102('‫d4','J5AU')]||{};await _0x4c6496['wait'](0xbb8);}else{const _0x3b4eb0=vars[i][_0x3102('‮163','4IbD')]('=');if(_0x53a801[_0x3102('‫164','tBOS')](_0x3b4eb0[0x0],name)){return vars[i][_0x3102('‫165','oJKr')](vars[i][_0x3102('‮166','qhO@')]('=')+0x1);}}}let _0xf7a07c=_0x53a801[_0x3102('‫167','OpYx')](Number(_0x4c6496[_0x3102('‫168','FuOh')]['actorInfo'][_0x3102('‫169','7epy')]),Number(_0x4c6496[_0x3102('‫16a','[TKT')][_0x3102('‫f6','bgvS')][_0x3102('‮16b','J%J3')]));let _0x1fa8df=[_0x53a801[_0x3102('‮16c','d3gl')],_0x53a801[_0x3102('‮16d','XCf(')],_0x3102('‮16e','3(Uq')];let _0x3694f5={'One':'01','Two':'02','Three':'03'};for(let _0x10cbe9=0x0;_0x53a801[_0x3102('‫16f','OpYx')](_0x10cbe9,_0x1fa8df[_0x3102('‫170','z@TG')]);_0x10cbe9++){if(_0x53a801['HzixN'](_0x53a801[_0x3102('‮171','sg)U')],_0x53a801['QUjGU'])){if(_0x53a801[_0x3102('‫172','OGYu')](_0xf7a07c,_0x4c6496[_0x3102('‮173','sg)U')][_0x3102('‫174','sNao')][_0x3102('‫175','2K5g')+_0x1fa8df[_0x10cbe9]])&&_0x4c6496[_0x3102('‮176','#9UC')][_0x3102('‮135','sg)U')][_0x3102('‮177','J5AU')+_0x1fa8df[_0x10cbe9]+_0x3102('‮178','dt#Z')]===![]){if(_0x53a801[_0x3102('‮179','J5AU')](_0x53a801[_0x3102('‫17a','FuOh')],_0x3102('‮17b','7epy'))){console[_0x3102('‫17c','7epy')](_0x3102('‫17d','sNao')+Number(_0x3694f5[_0x1fa8df[_0x10cbe9]])+_0x3102('‮17e','XCf('));_0x4c6496[_0x3102('‮17f','J%J3')]=_0x3102('‫180','tBOS')+_0x4c6496['activityId']+_0x3102('‫181','4q7e')+_0x4c6496[_0x3102('‫162','XCf(')][_0x3102('‮182','#9UC')]['uuid']+_0x3102('‫183','z@TG')+_0x3694f5[_0x1fa8df[_0x10cbe9]];let _0x56a425=await _0x53a801[_0x3102('‫184','tBOS')](takePostRequest,_0x4c6496,_0x53a801[_0x3102('‫185','TUqD')],_0x4c6496[_0x3102('‫186','FuOh')]);if(_0x56a425[_0x3102('‮187','(uuA')]&&_0x53a801[_0x3102('‮188','*m2]')](_0x56a425[_0x3102('‫189','c[zw')],0x0)){let _0x3be5d9=_0x56a425['data'];if(!_0x3be5d9[_0x3102('‮18a','(uuA')]){console['log'](_0x3102('‫18b','J%J3'));}else{console['log'](_0x3102('‮18c','3(Uq')+_0x3be5d9[_0x3102('‫18d','R%hz')]);message+=_0x4c6496[_0x3102('‮18e','sdz^')]+',获得:'+(_0x3be5d9[_0x3102('‮18f','Li(D')]||'未知')+'\x0a';}}else{if(_0x53a801[_0x3102('‫190','bgvS')](_0x3102('‫191','[TKT'),'XJCdS')){console['log'](_0x3102('‮192','sg)U'));}else{console[_0x3102('‮193','dt#Z')]('已完成抽奖');return;}}console[_0x3102('‮194','1M$7')](JSON[_0x3102('‫195','qBje')](_0x56a425));await _0x4c6496['wait'](0xbb8);}else{_0x4c6496[_0x3102('‫196','COiT')]=useInfo[_0x3102('‮197','oJKr')][_0x3102('‮198','[TKT')];}}}else{_0x4c6496[_0x3102('‫199','oulr')]();}}}async function doTask(_0x3ed92d){var _0xc20637={'fxIHp':_0x3102('‫19a','bgvS'),'ZKLiL':_0x3102('‮19b','Hlgj'),'ZbNwm':_0x3102('‮19c','AqFu'),'XjZkS':function(_0x2d68b5,_0xd1baca){return _0x2d68b5(_0xd1baca);},'iGdby':_0x3102('‫19d','7epy'),'lMDca':_0x3102('‮19e','sdz^'),'teqjC':_0x3102('‮66','4IbD'),'xZCIh':_0x3102('‮19f','f52I'),'FQuDo':'zh-CN,zh-Hans;q=0.9','RNRQg':function(_0x35095e,_0x1d8663){return _0x35095e(_0x1d8663);},'jUkhb':'./JS_USER_AGENTS','oYQYE':_0x3102('‮1a0','#9UC'),'xeVFP':'\x27jdltapp;iPad;3.1.0;14.4;network/wifi;Mozilla/5.0\x20(iPad;\x20CPU\x20OS\x2014_4\x20like\x20Mac\x20OS\x20X)\x20AppleWebKit/605.1.15\x20(KHTML,\x20like\x20Gecko)\x20Mobile/15E148;supportJDSHWK/1','qMYSX':function(_0x4cf7aa,_0x3dfcaf){return _0x4cf7aa>_0x3dfcaf;},'YwiVB':_0x3102('‮1a1','J%J3'),'TDesB':function(_0x35c60e,_0x3ba9b4){return _0x35c60e+_0x3ba9b4;},'Xcook':_0x3102('‫1a2','AqFu'),'CWqFC':_0x3102('‮1a3','0cn&'),'VtSSe':function(_0xb6ea31,_0x4418df){return _0xb6ea31==_0x4418df;},'cXqOV':function(_0x475f62,_0x15a3f1){return _0x475f62!==_0x15a3f1;},'lHaKa':'wFQPM','wfrOv':_0x3102('‮1a4','4q7e'),'HxVUd':function(_0x36a551,_0x4202e4){return _0x36a551===_0x4202e4;},'IvEAR':_0x3102('‮1a5','f52I'),'MaQxj':function(_0x41c6f2,_0x257b0b){return _0x41c6f2(_0x257b0b);},'JykYd':function(_0x444fdf,_0x5259e1){return _0x444fdf<_0x5259e1;},'vQgSE':function(_0x5d14af,_0x34f4dd){return _0x5d14af!==_0x34f4dd;},'NNTKH':_0x3102('‫1a6','7epy'),'zcJkc':'RbXTc','cPEwH':function(_0x37887a,_0x537cb2,_0x4c4d65,_0x403878){return _0x37887a(_0x537cb2,_0x4c4d65,_0x403878);},'VXIvV':'wxFansInterActionActivity/doBrowGoodsTask','ctyrh':function(_0x3ed905,_0x55c9e5){return _0x3ed905-_0x55c9e5;},'JQMxx':function(_0x895ede,_0xf84860){return _0x895ede(_0xf84860);},'rqQtg':_0x3102('‫1a7','COiT'),'ooeAJ':'SuBoq','LhFVX':function(_0xd6e015,_0x2c23b1,_0x18c08a,_0x3ffd41){return _0xd6e015(_0x2c23b1,_0x18c08a,_0x3ffd41);},'lgstp':_0x3102('‮1a8','Zt7Z'),'skBek':function(_0x24e342,_0x51b9ff){return _0x24e342!==_0x51b9ff;},'OvAsQ':function(_0x3ba6b1,_0x2c009e){return _0x3ba6b1(_0x2c009e);},'rvTPk':function(_0x5cb859,_0x49de05){return _0x5cb859>_0x49de05;},'refGN':'wkzIf','luxQa':function(_0x423556,_0x2f4928,_0x28d8cb,_0x3d7203){return _0x423556(_0x2f4928,_0x28d8cb,_0x3d7203);},'iKGOy':function(_0x2186cf,_0x4fa833){return _0x2186cf!==_0x4fa833;},'frDhF':'jblhm','ajmwv':function(_0x5d34be,_0x121eaf,_0x4a9e89,_0x5e8e94){return _0x5d34be(_0x121eaf,_0x4a9e89,_0x5e8e94);},'CCxAw':'wxFansInterActionActivity/doSign','SknvR':_0x3102('‫1a9','tBOS'),'abMOz':'UfyrK','NqNjO':'ovsKf','dzMwS':function(_0x3be998,_0x406901){return _0x3be998!==_0x406901;},'UWAWk':_0x3102('‮1aa','J5AU'),'aRFWK':'UlTIV','DSTgE':_0x3102('‮1ab','#9UC'),'vZRbP':_0x3102('‫1ac','FuOh'),'iXgIX':_0x3102('‫1ad','Xxxm'),'Mtvqj':function(_0x5f4550,_0x3280e9){return _0x5f4550!==_0x3280e9;},'RNfoH':_0x3102('‫1ae','qhO@'),'cKNsy':function(_0xe01a3e,_0x449680){return _0xe01a3e!==_0x449680;},'kLxDp':'EWLSc','GzMYu':function(_0x398a21,_0x177634,_0x4f6971,_0x264467){return _0x398a21(_0x177634,_0x4f6971,_0x264467);},'nBgEy':function(_0xef03fe,_0x54942c){return _0xef03fe===_0x54942c;},'wlsLR':'xMmLv','MakqP':_0x3102('‫1af','TUqD')};let _0x48d4bd=0x0;if(_0x3ed92d[_0x3102('‫16a','[TKT')]['task2BrowGoods']){if(_0xc20637[_0x3102('‮1b0','k6UV')](_0xc20637[_0x3102('‮1b1','Xxxm')],_0xc20637[_0x3102('‮1b2','tBOS')])){if(_0xc20637['cXqOV'](_0x3ed92d['activityData'][_0x3102('‫1b3','dt#Z')][_0x3102('‫1b4','o@0y')],_0x3ed92d[_0x3102('‫1b5','OpYx')]['task2BrowGoods'][_0x3102('‫1b6','p(IT')])){if(_0xc20637[_0x3102('‫1b7','Xxxm')]('JFzYZ',_0xc20637['IvEAR'])){data=JSON[_0x3102('‫1b8','3(Uq')](data);}else{_0x48d4bd=_0xc20637[_0x3102('‮1b9','$u&N')](Number,_0x3ed92d['activityData'][_0x3102('‮1ba','Zt7Z')][_0x3102('‫1bb','vitW')])-Number(_0x3ed92d[_0x3102('‫1bc','4IbD')][_0x3102('‮1bd','J5AU')][_0x3102('‫1be','sg)U')]);console[_0x3102('‮1bf','OGYu')](_0x3102('‮1c0','2K5g'));_0x3ed92d[_0x3102('‮1c1','RYmF')]=!![];for(let _0x2ce9ec=0x0;_0xc20637[_0x3102('‮1c2','3(Uq')](_0x2ce9ec,_0x3ed92d['activityData']['task2BrowGoods'][_0x3102('‫1c3','bZAg')][_0x3102('‫1c4','RYmF')])&&_0x48d4bd>0x0;_0x2ce9ec++){if(_0xc20637['vQgSE'](_0xc20637[_0x3102('‫1c5','vitW')],_0xc20637[_0x3102('‫1c6','4IbD')])){_0x3ed92d['oneGoodInfo']=_0x3ed92d['activityData'][_0x3102('‫1c7','Hlgj')]['taskGoodList'][_0x2ce9ec];if(_0xc20637[_0x3102('‮1c8','Li(D')](_0x3ed92d[_0x3102('‫1c9','FuOh')]['finished'],![])){console['log'](_0x3102('‮1ca','oJKr')+(_0x3ed92d['oneGoodInfo'][_0x3102('‫1cb','TUqD')]||''));_0x3ed92d['body']=_0x3102('‫1cc','3(Uq')+_0x3ed92d['activityId']+_0x3102('‮1cd','dt#Z')+_0x3ed92d[_0x3102('‮1ce','1M$7')][_0x3102('‫1cf','4IbD')][_0x3102('‫1d0','k6UV')]+_0x3102('‮1d1','R%hz')+_0x3ed92d[_0x3102('‮1d2','z@TG')][_0x3102('‮1d3','sNao')];let _0x2ca9ba=await _0xc20637[_0x3102('‮1d4','Li(D')](takePostRequest,_0x3ed92d,_0xc20637['VXIvV'],_0x3ed92d[_0x3102('‫1d5','Gi4A')]);console[_0x3102('‮1bf','OGYu')](JSON['stringify'](_0x2ca9ba));await _0x3ed92d[_0x3102('‫1d6','k6UV')](0xbb8);_0x48d4bd--;}}else{return;}}}}else{console['log'](_0x3102('‮1d7','sNao'));}}else{_0x3ed92d[_0x3102('‮1d8','1M$7')](e,resp);}}if(_0x3ed92d['activityData']['task3AddCart']){if(_0x3ed92d[_0x3102('‮1d9','TUqD')][_0x3102('‫1da','oJKr')]['finishedCount']!==_0x3ed92d[_0x3102('‫1db','RYmF')][_0x3102('‮1dc','(uuA')][_0x3102('‮1dd','bZAg')]){_0x48d4bd=_0xc20637['ctyrh'](_0xc20637[_0x3102('‫1de','Hlgj')](Number,_0x3ed92d[_0x3102('‫16a','[TKT')][_0x3102('‮1df','Zt7Z')][_0x3102('‫1e0','2K5g')]),_0xc20637[_0x3102('‮1e1','bZAg')](Number,_0x3ed92d[_0x3102('‮f3','4q7e')]['task3AddCart'][_0x3102('‮1e2','R%hz')]));console[_0x3102('‮1e3','4q7e')](_0x3102('‫1e4','OGYu'));_0x3ed92d['upFlag']=!![];for(let _0x3f79b2=0x0;_0xc20637['JykYd'](_0x3f79b2,_0x3ed92d[_0x3102('‮1e5','tBOS')][_0x3102('‫1e6','tBOS')][_0x3102('‫1e7','7epy')][_0x3102('‮127','vitW')])&&_0xc20637[_0x3102('‮1e8','R%hz')](_0x48d4bd,0x0);_0x3f79b2++){_0x3ed92d[_0x3102('‮1e9','J5AU')]=_0x3ed92d[_0x3102('‫1ea','7epy')][_0x3102('‮1eb','p(IT')]['taskGoodList'][_0x3f79b2];if(_0x3ed92d[_0x3102('‮1ec','vitW')][_0x3102('‮1ed','TUqD')]===![]){if(_0xc20637['HxVUd'](_0xc20637['rqQtg'],_0xc20637['ooeAJ'])){let _0x36f1df=[_0xc20637['fxIHp']];let _0x51b20c=_0x36f1df[Math['floor'](Math[_0x3102('‮1ee','$u&N')]()*_0x36f1df[_0x3102('‫1ef','dt#Z')])];let _0x5b3794={'url':_0xc20637[_0x3102('‮1f0','RYmF')],'body':_0x3102('‫1f1','k6UV')+JSON[_0x3102('‮fb','XCf(')]({'method':_0xc20637[_0x3102('‫1f2','EtQ#')],'data':{'channel':'1','encryptionInviterPin':_0xc20637[_0x3102('‮1f3','4q7e')](encodeURIComponent,_0x51b20c),'type':0x1}})+_0x3102('‫1f4','TUqD')+Date[_0x3102('‫1f5','p(IT')](),'headers':{'Host':_0xc20637['iGdby'],'Accept':_0xc20637['lMDca'],'Content-Type':_0xc20637['teqjC'],'Origin':_0xc20637[_0x3102('‮1f6','RYmF')],'Accept-Language':_0xc20637[_0x3102('‮1f7','Xxxm')],'User-Agent':_0x3ed92d[_0x3102('‮1f8','[TKT')]()?process[_0x3102('‮1f9','z@TG')][_0x3102('‮1fa','COiT')]?process[_0x3102('‫1fb','COiT')][_0x3102('‫1fc','J5AU')]:_0xc20637['RNRQg'](require,_0xc20637[_0x3102('‮1fd','qhO@')])[_0x3102('‫1fe','AqFu')]:_0x3ed92d['getdata'](_0xc20637['oYQYE'])?_0x3ed92d[_0x3102('‫1ff','0cn&')](_0x3102('‮200','4q7e')):_0xc20637[_0x3102('‫201','z@TG')],'Referer':_0x3102('‮202','oulr'),'Accept-Encoding':_0x3102('‮203','Hlgj'),'Cookie':cookie}};_0x3ed92d[_0x3102('‫204','EtQ#')](_0x5b3794,(_0x55d9dd,_0x153687,_0x496e6d)=>{});}else{console[_0x3102('‫17c','7epy')](_0x3102('‫205','bZAg')+(_0x3ed92d[_0x3102('‮206','7epy')]['skuName']||''));_0x3ed92d[_0x3102('‫207','p(IT')]=_0x3102('‮208','J%J3')+_0x3ed92d['activityId']+'&uuid='+_0x3ed92d[_0x3102('‫209','qBje')][_0x3102('‫20a','3(Uq')][_0x3102('‮20b','AqFu')]+_0x3102('‮20c','Hlgj')+_0x3ed92d[_0x3102('‫20d','4IbD')][_0x3102('‮20e','Xxxm')];let _0x2ca9ba=await _0xc20637[_0x3102('‫20f','EtQ#')](takePostRequest,_0x3ed92d,_0xc20637[_0x3102('‮210','OGYu')],_0x3ed92d['body']);console['log'](JSON[_0x3102('‫211','EtQ#')](_0x2ca9ba));await _0x3ed92d['wait'](0xbb8);_0x48d4bd--;}}}}else{console['log'](_0x3102('‫212','4q7e'));}}if(_0x3ed92d['activityData']['task6GetCoupon']){if(_0xc20637['skBek'](_0x3ed92d[_0x3102('‫213','dt#Z')]['task6GetCoupon'][_0x3102('‮214','4q7e')],_0x3ed92d['activityData']['task6GetCoupon'][_0x3102('‮215','FuOh')])){_0x48d4bd=_0xc20637[_0x3102('‫216','AqFu')](Number,_0x3ed92d[_0x3102('‫213','dt#Z')][_0x3102('‮217','Gi4A')][_0x3102('‫218','n(3f')])-Number(_0x3ed92d['activityData']['task6GetCoupon']['finishedCount']);console[_0x3102('‮219','3(Uq')](_0x3102('‮21a','sg)U'));_0x3ed92d[_0x3102('‫21b','COiT')]=!![];for(let _0x4e8080=0x0;_0x4e8080<_0x3ed92d['activityData'][_0x3102('‮217','Gi4A')][_0x3102('‫21c','n(3f')][_0x3102('‫21d','oJKr')]&&_0xc20637['rvTPk'](_0x48d4bd,0x0);_0x4e8080++){if(_0xc20637['skBek'](_0xc20637[_0x3102('‫21e','R%hz')],_0xc20637[_0x3102('‫21f','Li(D')])){console[_0x3102('‮220','o@0y')](_0x3102('‮221','z@TG'));}else{_0x3ed92d['oneCouponInfo']=_0x3ed92d['activityData']['task6GetCoupon'][_0x3102('‮222','4IbD')][_0x4e8080];if(_0xc20637['HxVUd'](_0x3ed92d[_0x3102('‫223','hMf@')][_0x3102('‮224','tBOS')],![])){_0x3ed92d[_0x3102('‫225','vitW')]='activityId='+_0x3ed92d['activityId']+_0x3102('‮226','sdz^')+_0x3ed92d[_0x3102('‫209','qBje')][_0x3102('‫227','COiT')][_0x3102('‫228','0cn&')]+_0x3102('‮229','AqFu')+_0x3ed92d[_0x3102('‫22a','n(3f')][_0x3102('‮22b','EtQ#')]['couponId'];let _0x2ca9ba=await _0xc20637[_0x3102('‮22c','4q7e')](takePostRequest,_0x3ed92d,'wxFansInterActionActivity/doGetCouponTask',_0x3ed92d[_0x3102('‫22d','Li(D')]);console[_0x3102('‮22e','TUqD')](JSON[_0x3102('‮22f','*m2]')](_0x2ca9ba));await _0x3ed92d[_0x3102('‮230','J5AU')](0xbb8);_0x48d4bd--;}}}}else{console[_0x3102('‮193','dt#Z')]('领取优惠券已完成');}}_0x3ed92d[_0x3102('‫231','Hlgj')]='activityId='+_0x3ed92d[_0x3102('‮232','Zt7Z')]+_0x3102('‫233','7epy')+_0x3ed92d[_0x3102('‫234','Li(D')]['actorInfo'][_0x3102('‫235','$u&N')];if(_0x3ed92d['activityData']['task1Sign']&&_0xc20637[_0x3102('‫236','OpYx')](_0x3ed92d[_0x3102('‫237','R%hz')][_0x3102('‫238','4q7e')]['finishedCount'],0x0)){if(_0xc20637['iKGOy'](_0xc20637[_0x3102('‫239','*m2]')],_0xc20637[_0x3102('‫23a','sNao')])){console[_0x3102('‮23b','hMf@')](_0x3102('‫23c','oJKr'));}else{console[_0x3102('‮133','n(3f')](_0x3102('‮23d','*m2]'));let _0x593d75=await _0xc20637['ajmwv'](takePostRequest,_0x3ed92d,_0xc20637['CCxAw'],_0x3ed92d['body']);console[_0x3102('‮23e','Xxxm')](JSON['stringify'](_0x593d75));await _0x3ed92d[_0x3102('‮23f','7epy')](0xbb8);_0x3ed92d['upFlag']=!![];}}else{if(_0xc20637['iKGOy'](_0xc20637['SknvR'],_0xc20637['abMOz'])){console[_0x3102('‫240','J%J3')](_0x3102('‫241','sdz^'));}else{console[_0x3102('‫242','2K5g')](data);_0x3ed92d[_0x3102('‫243','o@0y')](e,resp);}}if(_0x3ed92d[_0x3102('‫244','p(IT')][_0x3102('‫245','tBOS')]){if(_0x3102('‮246','AqFu')!==_0xc20637[_0x3102('‫247','7epy')]){if(_0x3ed92d[_0x3102('‮248','hMf@')][_0x3102('‮249','Li(D')]['finishedCount']!==_0x3ed92d[_0x3102('‫1bc','4IbD')][_0x3102('‫245','tBOS')][_0x3102('‫24a','XCf(')]){if(_0xc20637[_0x3102('‫24b','bgvS')](_0xc20637[_0x3102('‫24c','n(3f')],_0xc20637[_0x3102('‮24d','sdz^')])){_0x48d4bd=_0xc20637['ctyrh'](Number(_0x3ed92d[_0x3102('‮248','hMf@')][_0x3102('‫24e','$u&N')][_0x3102('‫24f','OGYu')]),Number(_0x3ed92d[_0x3102('‮250','COiT')][_0x3102('‫251','p(IT')][_0x3102('‮252','p(IT')]));console[_0x3102('‮133','n(3f')]('开始做分享任务');_0x3ed92d[_0x3102('‮253','4q7e')]=!![];for(let _0x22e61c=0x0;_0xc20637[_0x3102('‮254','R%hz')](_0x22e61c,_0x48d4bd);_0x22e61c++){console['log']('执行第'+_0xc20637['TDesB'](_0x22e61c,0x1)+_0x3102('‮255','tBOS'));let _0x593d75=await takePostRequest(_0x3ed92d,_0xc20637['DSTgE'],_0x3ed92d[_0x3102('‮256','2K5g')]);console[_0x3102('‮22e','TUqD')](JSON['stringify'](_0x593d75));await _0x3ed92d[_0x3102('‮158','bgvS')](0xbb8);}}else{console[_0x3102('‫257','f52I')](_0x3102('‮258','o@0y'));}}else{console['log']('分享任务已完成');}}else{let _0x34bcc2=setcookie[_0x3102('‮259','oJKr')](_0x53633f=>_0x53633f[_0x3102('‮25a','R%hz')](_0x3102('‫25b','EtQ#'))!==-0x1)[0x0];if(_0x34bcc2&&_0xc20637[_0x3102('‫25c','c[zw')](_0x34bcc2[_0x3102('‮25d','Xxxm')](_0xc20637[_0x3102('‮25e','sdz^')]),-0x1)){_0x3ed92d[_0x3102('‮25f','(uuA')]=_0x34bcc2[_0x3102('‮260','d3gl')](';')&&_0xc20637[_0x3102('‮261','qBje')](_0x34bcc2[_0x3102('‮262','Xxxm')](';')[0x0],';')||'';}let _0x478d33=setcookie['filter'](_0x3efdb2=>_0x3efdb2[_0x3102('‫263','sg)U')](_0x3102('‫b7','sdz^'))!==-0x1)[0x0];if(_0x478d33&&_0xc20637[_0x3102('‮264','sNao')](_0x478d33[_0x3102('‮265','0cn&')]('LZ_TOKEN_KEY='),-0x1)){let _0x57bb7e=_0x478d33[_0x3102('‮266','R%hz')](';')&&_0x478d33[_0x3102('‮267','4q7e')](';')[0x0]||'';_0x3ed92d['LZ_TOKEN_KEY']=_0x57bb7e[_0x3102('‫268','0cn&')](_0xc20637['Xcook'],'');}let _0x436111=setcookie[_0x3102('‫269','J5AU')](_0x5a0e4b=>_0x5a0e4b[_0x3102('‫26a','bZAg')](_0x3102('‫26b','OpYx'))!==-0x1)[0x0];if(_0x436111&&_0x436111[_0x3102('‫26c','sdz^')](_0xc20637[_0x3102('‮26d','#9UC')])>-0x1){let _0x105d05=_0x436111[_0x3102('‫26e','sg)U')](';')&&_0x436111[_0x3102('‫26f','hMf@')](';')[0x0]||'';_0x3ed92d[_0x3102('‫270','J5AU')]=_0x105d05[_0x3102('‫271','COiT')](_0x3102('‫272','XCf('),'');}}}if(_0x3ed92d['activityData'][_0x3102('‫273','COiT')]){if(_0xc20637['dzMwS'](_0x3ed92d[_0x3102('‫162','XCf(')][_0x3102('‫274','vitW')][_0x3102('‮275','3(Uq')],_0x3ed92d[_0x3102('‫234','Li(D')][_0x3102('‮276','3(Uq')][_0x3102('‮277','R%hz')])){if(_0xc20637[_0x3102('‮278','oJKr')](_0xc20637[_0x3102('‮279','OpYx')],_0xc20637[_0x3102('‮27a','oJKr')])){console[_0x3102('‫27b','J5AU')](_0x3102('‫27c','OGYu'));_0x3ed92d[_0x3102('‫27d','n(3f')]=!![];let _0x103167=await _0xc20637[_0x3102('‮27e','COiT')](takePostRequest,_0x3ed92d,_0xc20637[_0x3102('‮27f','4q7e')],_0x3ed92d['body']);console['log'](JSON[_0x3102('‫280','Zt7Z')](_0x103167));await _0x3ed92d['wait'](0xbb8);}else{_0x3ed92d[_0x3102('‫281','sdz^')](e,resp);}}else{if(_0xc20637[_0x3102('‮282','[TKT')](_0xc20637[_0x3102('‫283','oJKr')],_0xc20637[_0x3102('‮284','AqFu')])){console[_0x3102('‫285','0cn&')](_0x3102('‫286','o@0y')+drawDetail[_0x3102('‮287','7epy')]);message+=_0x3ed92d[_0x3102('‫288','k6UV')]+_0x3102('‮289','sdz^')+(drawDetail[_0x3102('‮28a','hMf@')]||'未知')+'\x0a';}else{console[_0x3102('‮23b','hMf@')]('设置活动提醒已完成');}}}if(_0x3ed92d[_0x3102('‫1bc','4IbD')][_0x3102('‫28b','4q7e')]){if(_0x3ed92d[_0x3102('‫237','R%hz')][_0x3102('‫28c','vitW')]['finishedCount']!==_0x3ed92d['activityData'][_0x3102('‫28d','0cn&')]['upLimit']){if(_0xc20637['cKNsy']('bJFZc',_0xc20637['kLxDp'])){console[_0x3102('‮fe','k6UV')](_0x3102('‮28e','[TKT'));_0x3ed92d[_0x3102('‫28f','Li(D')]=!![];let _0x414ad1=await _0xc20637[_0x3102('‮290','1M$7')](takePostRequest,_0x3ed92d,_0x3102('‫291','oJKr'),_0x3ed92d[_0x3102('‮292','OGYu')]);console[_0x3102('‫293','OpYx')](JSON[_0x3102('‫294','oulr')](_0x414ad1));await _0x3ed92d[_0x3102('‮158','bgvS')](0xbb8);}else{data=JSON[_0x3102('‮295','oulr')](data);if(_0xc20637[_0x3102('‫296','EtQ#')](data[_0x3102('‮297','7epy')],!![])){console['log'](_0x3102('‮298','COiT')+(data[_0x3102('‫299','sg)U')][_0x3102('‮29a','0cn&')][_0x3102('‮29b','1M$7')]||''));_0x3ed92d[_0x3102('‮29c','4q7e')]=data[_0x3102('‫29d','$u&N')][_0x3102('‫29e','o@0y')]&&data['result'][_0x3102('‫29e','o@0y')][0x0]&&data[_0x3102('‫29f','COiT')][_0x3102('‫2a0','OGYu')][0x0]['interestsInfo']&&data['result'][_0x3102('‫2a1','c[zw')][0x0]['interestsInfo'][_0x3102('‮2a2','FuOh')]||'';}}}else{if(_0xc20637[_0x3102('‮2a3','o@0y')](_0xc20637[_0x3102('‮2a4','*m2]')],_0xc20637[_0x3102('‮2a5','oulr')])){console[_0x3102('‫2a6','z@TG')](''+JSON['stringify'](err));console[_0x3102('‮2a7','(uuA')](_0x3ed92d['name']+_0x3102('‮2a8','4IbD'));}else{console['log']('逛会场已完成');}}}}function getUrlData(_0x30527b,_0x1ffbc9){var _0x5b3428={'IXLHh':function(_0x1ae4e8,_0x5a9222){return _0x1ae4e8!==_0x5a9222;},'MxFRq':_0x3102('‫2a9','p(IT'),'KCGxg':function(_0x3d6662,_0x697338){return _0x3d6662===_0x697338;},'mrNkf':'aTQZJ','EIYbq':_0x3102('‮2aa','Gi4A'),'CICAB':function(_0x468e21,_0x56b241){return _0x468e21===_0x56b241;},'RKhrl':function(_0x2b697e,_0x482982){return _0x2b697e+_0x482982;}};if(_0x5b3428[_0x3102('‫2ab','J5AU')](typeof URL,'undefined')){if(_0x3102('‫2ac','4IbD')===_0x5b3428['MxFRq']){let _0x5e91ce=new URL(_0x30527b);let _0x125f7a=_0x5e91ce[_0x3102('‫2ad','*m2]')][_0x3102('‫2ae','Li(D')](_0x1ffbc9);return _0x125f7a?_0x125f7a:'';}else{let _0x2b5314=new URL(_0x30527b);let _0x341eaa=_0x2b5314['searchParams']['get'](_0x1ffbc9);return _0x341eaa?_0x341eaa:'';}}else{const _0x5d26c7=_0x30527b[_0x3102('‫2af','[TKT')](/\?.*/)[0x0][_0x3102('‮2b0','sdz^')](0x1);const _0x55d630=_0x5d26c7[_0x3102('‫2b1','1M$7')]('&');for(let _0xc8d89b=0x0;_0xc8d89b<_0x55d630[_0x3102('‫2b2','qBje')];_0xc8d89b++){if(_0x5b3428[_0x3102('‮2b3','(uuA')](_0x5b3428[_0x3102('‫2b4','4IbD')],_0x5b3428[_0x3102('‮2b5','tBOS')])){$[_0x3102('‮133','n(3f')](_0x125f7a[_0x3102('‮2b6','*m2]')]);if(_0x125f7a[_0x3102('‫2b7','vitW')]&&_0x125f7a[_0x3102('‮2b8','sdz^')][_0x3102('‫2b9','Zt7Z')]){for(let _0x541c4e of _0x125f7a[_0x3102('‮187','(uuA')]['giftInfo'][_0x3102('‫2ba','c[zw')]){console[_0x3102('‮2bb','RYmF')](_0x3102('‮2bc','1M$7')+_0x541c4e[_0x3102('‮2bd','(uuA')]+_0x541c4e[_0x3102('‮2be','Gi4A')]+_0x541c4e['secondLineDesc']);}}}else{const _0x45bb27=_0x55d630[_0xc8d89b][_0x3102('‫2bf','z@TG')]('=');if(_0x5b3428['CICAB'](_0x45bb27[0x0],_0x1ffbc9)){return _0x55d630[_0xc8d89b]['substr'](_0x5b3428[_0x3102('‮2c0','Zt7Z')](_0x55d630[_0xc8d89b][_0x3102('‮2c1','o@0y')]('='),0x1));}}}return'';}}async function getToken(_0x266088){var _0x1dca80={'lIbKH':function(_0x258d23,_0x5af71c){return _0x258d23(_0x5af71c);},'xObYG':_0x3102('‫2c2','d3gl'),'NSlFB':_0x3102('‮2c3','dt#Z'),'hYziv':function(_0x1f764c,_0x5ef667){return _0x1f764c===_0x5ef667;},'gDzbg':'RCMKm','EXnJx':'nrWmw','onzow':function(_0x3870ab,_0xccb91d){return _0x3870ab!==_0xccb91d;},'qJtMS':'BcVYX','SjpGD':_0x3102('‮2c4','RYmF'),'BdVpa':'https://api.m.jd.com/client.action?functionId=isvObfuscator','jEBTB':_0x3102('‮2c5','bZAg'),'SfkbY':_0x3102('‮2c6','7epy')};let _0xcf8d6f={'url':_0x1dca80[_0x3102('‮2c7','J%J3')],'body':_0x266088[_0x3102('‮2c8','RYmF')],'headers':{'Host':_0x3102('‫2c9','#9UC'),'accept':_0x1dca80[_0x3102('‫2ca','COiT')],'user-agent':_0x3102('‮2cb','tBOS'),'accept-language':_0x3102('‮2cc','n(3f'),'content-type':_0x1dca80[_0x3102('‮2cd','(uuA')],'Cookie':_0x266088[_0x3102('‮2ce','Li(D')]}};return new Promise(_0x4af005=>{var _0x17438f={'dIcOg':'yu7sDDcldBJVg53L5e1xVvA+83L/sWpkWyh/yXCX0UU=','jwQMn':function(_0x23f996,_0x44e923){return _0x1dca80[_0x3102('‫2cf','o@0y')](_0x23f996,_0x44e923);},'znOvb':_0x3102('‮2d0','sdz^'),'vtduP':_0x1dca80[_0x3102('‮2d1','oJKr')],'mBudz':_0x3102('‮2d2','TUqD'),'nDiua':_0x3102('‮2d3','FuOh'),'GNcla':_0x1dca80['NSlFB'],'ckTJH':function(_0xd4667b,_0x40b4c6){return _0x1dca80['hYziv'](_0xd4667b,_0x40b4c6);},'sVrec':_0x1dca80['gDzbg'],'YIrwk':_0x1dca80[_0x3102('‫2d4','Li(D')],'pOCpk':function(_0x46a2ce,_0x5ac330){return _0x1dca80[_0x3102('‫2d5','1M$7')](_0x46a2ce,_0x5ac330);},'rVhvd':_0x1dca80['qJtMS'],'YZCWP':function(_0x11df4c,_0x196a6e){return _0x11df4c(_0x196a6e);},'sgpzE':_0x1dca80[_0x3102('‫2d6','c[zw')]};_0x266088['post'](_0xcf8d6f,async(_0x255122,_0x4cfe3c,_0x556923)=>{var _0x57a1a5={'BMjuV':_0x3102('‫2d7','Hlgj'),'TXCaT':_0x17438f[_0x3102('‮2d8','1M$7')],'RqLlM':_0x3102('‫2d9','XCf('),'dXyNQ':function(_0x5b5f13,_0x179575){return _0x17438f['jwQMn'](_0x5b5f13,_0x179575);},'IkjNl':_0x3102('‮2da','RYmF'),'gBgTc':_0x17438f['znOvb'],'CSuDY':_0x17438f[_0x3102('‮2db','p(IT')],'CtErS':_0x17438f[_0x3102('‮2dc','qBje')],'errcx':_0x3102('‮2dd','p(IT'),'QoqcD':_0x17438f['nDiua'],'hJkzr':_0x17438f[_0x3102('‫2de','R%hz')]};if(_0x17438f[_0x3102('‫2df','c[zw')](_0x3102('‮2e0','sNao'),_0x17438f['sVrec'])){let _0x4280e0=LZTOKENVALUE['split'](';')&&LZTOKENVALUE[_0x3102('‮2e1','(uuA')](';')[0x0]||'';_0x266088[_0x3102('‫2e2','o@0y')]=_0x4280e0['replace'](_0x57a1a5[_0x3102('‫2e3','J%J3')],'');}else{try{if(_0x255122){console[_0x3102('‮24','tBOS')](''+JSON[_0x3102('‮2e4','Hlgj')](_0x255122));console[_0x3102('‮193','dt#Z')](_0x266088[_0x3102('‫2e5','vitW')]+_0x3102('‮2e6','#9UC'));}else{if(_0x3102('‮2e7','7epy')!==_0x17438f['YIrwk']){_0x556923=JSON[_0x3102('‫2e8','f52I')](_0x556923);}else{let _0x1185f4=+new Date();let _0x16abb3=[_0x57a1a5[_0x3102('‮2e9','tBOS')]];let _0x537abd=_0x16abb3[Math['floor'](Math[_0x3102('‮2ea','J%J3')]()*_0x16abb3[_0x3102('‮8b','Zt7Z')])];let _0x2191f1={'url':'https://api.m.jd.com/?t='+_0x1185f4,'body':_0x3102('‮6d','bgvS')+JSON[_0x3102('‫280','Zt7Z')]({'method':_0x57a1a5['RqLlM'],'data':{'inviterPin':_0x57a1a5[_0x3102('‮2eb','J5AU')](encodeURIComponent,_0x537abd),'channel':0x1,'token':'','frontendInitStatus':''}})+_0x3102('‫2ec','f52I')+_0x1185f4,'headers':{'Host':_0x3102('‮39','3(Uq'),'Accept':_0x57a1a5['IkjNl'],'Content-type':_0x57a1a5[_0x3102('‫2ed','COiT')],'Origin':_0x57a1a5[_0x3102('‫2ee','oJKr')],'Accept-Language':_0x57a1a5[_0x3102('‮2ef','0cn&')],'User-Agent':_0x266088['isNode']()?process[_0x3102('‫1fb','COiT')][_0x3102('‫2f0','oulr')]?process['env']['JS_USER_AGENT']:require(_0x57a1a5['errcx'])[_0x3102('‫2f1','TUqD')]:_0x266088[_0x3102('‫2f2','XCf(')](_0x57a1a5[_0x3102('‮2f3','z@TG')])?_0x266088[_0x3102('‫2f4','TUqD')](_0x3102('‮2f5','n(3f')):_0x3102('‫2f6','#9UC'),'Referer':'https://invite-reward.jd.com/','Accept-Encoding':_0x57a1a5['hJkzr'],'Cookie':cookie}};_0x266088[_0x3102('‮2f7','d3gl')](_0x2191f1,(_0x46b0b6,_0x1198cf,_0x17bb3f)=>{});}}}catch(_0xa689e8){_0x266088[_0x3102('‮2f8','4q7e')](_0xa689e8,_0x4cfe3c);}finally{if(_0x17438f['pOCpk'](_0x17438f[_0x3102('‫2f9','2K5g')],_0x17438f[_0x3102('‫2fa','XCf(')])){console[_0x3102('‫f','*m2]')](_0x3102('‮2fb','#9UC')+activityId+',已过期');}else{_0x17438f[_0x3102('‫2fc','2K5g')](_0x4af005,_0x556923[_0x17438f['sgpzE']]||'');}}}});});}async function getHtml(_0x120e05){var _0x3d6c0f={'OxMVz':'yu7sDDcldBJVg53L5e1xVvA+83L/sWpkWyh/yXCX0UU=','bggij':_0x3102('‫2fd','Hlgj'),'NCYRY':_0x3102('‮2fe','tBOS'),'JwsqO':'application/x-www-form-urlencoded','wWsou':_0x3102('‫2c2','d3gl'),'qrssg':_0x3102('‮2ff','EtQ#'),'CakCB':_0x3102('‮200','4q7e'),'CiSAd':'\x27jdltapp;iPad;3.1.0;14.4;network/wifi;Mozilla/5.0\x20(iPad;\x20CPU\x20OS\x2014_4\x20like\x20Mac\x20OS\x20X)\x20AppleWebKit/605.1.15\x20(KHTML,\x20like\x20Gecko)\x20Mobile/15E148;supportJDSHWK/1','bLNeg':'https://invite-reward.jd.com/','cSpJz':function(_0x187630){return _0x187630();},'BxWGY':function(_0x110475,_0x5db4a8){return _0x110475(_0x5db4a8);},'SYLcM':function(_0x572cd6,_0x2a69d0){return _0x572cd6===_0x2a69d0;},'QtNeK':_0x3102('‫300','[TKT'),'XnkgF':function(_0x3a355a,_0x100f38){return _0x3a355a!==_0x100f38;},'Qgwqg':_0x3102('‫301','Gi4A'),'dAsFH':_0x3102('‫302','FuOh'),'AtpNU':'keep-alive'};let _0x36f29b={'url':_0x120e05[_0x3102('‫303','J5AU')],'headers':{'Host':_0x120e05[_0x3102('‫304','[TKT')],'Accept':_0x3d6c0f[_0x3102('‫305','p(IT')],'Cookie':'IsvToken='+_0x120e05[_0x3102('‮306','TUqD')]+';'+_0x120e05['cookie'],'User-Agent':_0x120e05['UA'],'Accept-Language':_0x3102('‫307','f52I'),'Accept-Encoding':_0x3d6c0f[_0x3102('‮308','*m2]')],'Connection':_0x3d6c0f[_0x3102('‮309','dt#Z')]}};return new Promise(_0x45c351=>{var _0x134c7c={'MYzgH':function(_0x540ef6){return _0x3d6c0f[_0x3102('‮30a','7epy')](_0x540ef6);},'BSckC':function(_0x69097b,_0x516d8c){return _0x3d6c0f[_0x3102('‮30b','0cn&')](_0x69097b,_0x516d8c);},'HrRry':function(_0x399b04,_0x47890b){return _0x3d6c0f[_0x3102('‫30c','RYmF')](_0x399b04,_0x47890b);},'EpMAg':_0x3d6c0f['QtNeK'],'htbdu':function(_0x515259,_0xa78f51,_0x2548ef){return _0x515259(_0xa78f51,_0x2548ef);},'PNTeE':function(_0x1fcb38,_0x32e8af){return _0x1fcb38!==_0x32e8af;},'nncTK':'PLUMx','hDKHJ':function(_0x3a5d71,_0x18a0f5){return _0x3a5d71(_0x18a0f5);}};if(_0x3d6c0f['XnkgF'](_0x3102('‮30d','J%J3'),'tqcMB')){_0x120e05[_0x3102('‮30e','OpYx')](_0x36f29b,(_0x14c447,_0x2f5c26,_0x264fe3)=>{if(_0x134c7c['HrRry'](_0x134c7c[_0x3102('‫30f','qhO@')],'GyKkx')){_0x134c7c['MYzgH'](doInfo);}else{try{_0x134c7c[_0x3102('‫310','sNao')](dealCK,_0x120e05,_0x2f5c26);}catch(_0xde2d1){if(_0x134c7c[_0x3102('‮311','o@0y')](_0x134c7c[_0x3102('‫312','tBOS')],_0x134c7c[_0x3102('‮313','J5AU')])){_0x134c7c[_0x3102('‮314','FuOh')](_0x45c351,_0x264fe3);}else{_0x120e05['logErr'](_0xde2d1,_0x2f5c26);}}finally{_0x134c7c[_0x3102('‮315','f52I')](_0x45c351,_0x264fe3);}}});}else{let _0x18adee=Date[_0x3102('‮316','1M$7')]();let _0x4f2716=_0x3d6c0f[_0x3102('‮317','k6UV')];var _0x593c58={'Host':_0x3d6c0f[_0x3102('‫318','Li(D')],'accept':_0x3d6c0f[_0x3102('‫319','Zt7Z')],'content-type':_0x3d6c0f[_0x3102('‫31a','#9UC')],'origin':_0x3d6c0f[_0x3102('‮31b','OGYu')],'accept-language':_0x3d6c0f['qrssg'],'user-agent':_0x120e05[_0x3102('‮31c','1M$7')]()?process[_0x3102('‫1fb','COiT')]['JS_USER_AGENT']?process[_0x3102('‮31d','$u&N')][_0x3102('‫31e','4IbD')]:require('./JS_USER_AGENTS')[_0x3102('‫31f','4IbD')]:_0x120e05['getdata'](_0x3d6c0f[_0x3102('‮320','TUqD')])?_0x120e05[_0x3102('‫1ff','0cn&')](_0x3102('‮321','*m2]')):_0x3d6c0f[_0x3102('‫322','OpYx')],'referer':_0x3d6c0f[_0x3102('‮323','o@0y')],'Cookie':thisCookie};var _0x123fb6=_0x3102('‮324','XCf(')+encodeURIComponent(_0x4f2716)+_0x3102('‮325','4IbD')+_0x18adee;var _0x2e7b29={'url':'https://api.m.jd.com/?t='+Date[_0x3102('‮326','J5AU')](),'headers':_0x593c58,'body':_0x123fb6};_0x120e05[_0x3102('‮327','Xxxm')](_0x2e7b29,(_0x440254,_0x3dd84d,_0x43d589)=>{});}});}function dealCK(_0x53e38f,_0x2b6585){var _0x264d55={'vEqef':'token','rQZGD':function(_0x2b14c7,_0x4f1ca8){return _0x2b14c7===_0x4f1ca8;},'pobJm':_0x3102('‫328','R%hz'),'xnkim':_0x3102('‮329','Zt7Z'),'LOaNb':function(_0xa60e23,_0x41b998){return _0xa60e23>_0x41b998;},'RDIRU':'lz_jdpin_token=','sLgPA':function(_0x21c218,_0x1b3c75){return _0x21c218+_0x1b3c75;},'FrEHx':function(_0x512bc1,_0x53026a){return _0x512bc1>_0x53026a;},'OqGjK':'LZ_TOKEN_KEY=','dqSDR':_0x3102('‮32a','o@0y')};if(_0x264d55[_0x3102('‮32b','bZAg')](_0x2b6585,undefined)){return;}let _0x3b6f22=_0x2b6585[_0x264d55[_0x3102('‫32c','bZAg')]][_0x3102('‮32d','2K5g')]||_0x2b6585[_0x264d55[_0x3102('‮32e','*m2]')]][_0x3102('‫32f','4IbD')]||'';if(_0x3b6f22){if(_0x264d55[_0x3102('‫330','4q7e')](_0x264d55[_0x3102('‮331','oJKr')],_0x264d55['xnkim'])){let _0x4f31a8=_0x3b6f22[_0x3102('‫332','bZAg')](_0x3bf95d=>_0x3bf95d[_0x3102('‫333','[TKT')]('lz_jdpin_token')!==-0x1)[0x0];if(_0x4f31a8&&_0x264d55[_0x3102('‫334','2K5g')](_0x4f31a8[_0x3102('‮166','qhO@')](_0x264d55[_0x3102('‮335','#9UC')]),-0x1)){_0x53e38f[_0x3102('‮336','R%hz')]=_0x4f31a8[_0x3102('‫337','EtQ#')](';')&&_0x264d55[_0x3102('‮338','#9UC')](_0x4f31a8[_0x3102('‫339','vitW')](';')[0x0],';')||'';}let _0x18bef9=_0x3b6f22['filter'](_0x22e993=>_0x22e993[_0x3102('‫33a','#9UC')](_0x3102('‫33b','OGYu'))!==-0x1)[0x0];if(_0x18bef9&&_0x264d55[_0x3102('‫33c','*m2]')](_0x18bef9['indexOf'](_0x264d55[_0x3102('‮33d','[TKT')]),-0x1)){let _0x2db698=_0x18bef9['split'](';')&&_0x18bef9[_0x3102('‫33e','#9UC')](';')[0x0]||'';_0x53e38f['LZ_TOKEN_KEY']=_0x2db698['replace'](_0x3102('‫33f','tBOS'),'');}let _0x31d34d=_0x3b6f22['filter'](_0x290f2a=>_0x290f2a['indexOf'](_0x3102('‫340','EtQ#'))!==-0x1)[0x0];if(_0x31d34d&&_0x31d34d['indexOf'](_0x264d55[_0x3102('‮341','sg)U')])>-0x1){let _0x3dc3ac=_0x31d34d['split'](';')&&_0x31d34d[_0x3102('‫342','sNao')](';')[0x0]||'';_0x53e38f['LZ_TOKEN_VALUE']=_0x3dc3ac['replace']('LZ_TOKEN_VALUE=','');}}else{resolve(data[_0x264d55[_0x3102('‫343','tBOS')]]||'');}}}async function takePostRequest(_0xedb1c5,_0x184edd,_0x15c7a4='activityId='+_0xedb1c5[_0x3102('‮344','Li(D')]+'&pin='+encodeURIComponent(_0xedb1c5['pin'])){var _0x11b81f={'nLzLD':function(_0x9fc5b2,_0x55c51f){return _0x9fc5b2+_0x55c51f;},'grpBE':function(_0x30b791,_0x51f6c5,_0x1f3a6d){return _0x30b791(_0x51f6c5,_0x1f3a6d);},'nNOqE':_0x3102('‮345','Xxxm'),'vdukX':function(_0x486fb3,_0x3edf82){return _0x486fb3(_0x3edf82);},'GwAmW':function(_0x2c1471,_0x2fd87c){return _0x2c1471===_0x2fd87c;},'MDlzT':_0x3102('‮346','Li(D'),'mIowS':_0x3102('‫347','oJKr'),'pNlGF':_0x3102('‮348','Xxxm'),'WbHNj':'wxCommonInfo/initActInfo','GwAFY':_0x3102('‮349','#9UC'),'lhnkM':'wxCollectCard/shopInfo','mLIWg':_0x3102('‮34a','bZAg'),'WMkdE':_0x3102('‮34b','OpYx'),'hIBpd':_0x3102('‫34c','Li(D'),'KiSVC':function(_0x391d48,_0x267218){return _0x391d48(_0x267218);},'DuWFa':function(_0x1d76b8,_0x119e9a){return _0x1d76b8(_0x119e9a);},'Sdfha':_0x3102('‮34d','k6UV'),'OJVmT':_0x3102('‫34e','sNao')};let _0x4a96ac='https://'+_0xedb1c5['host']+'/'+_0x184edd;switch(_0x184edd){case _0x11b81f[_0x3102('‫34f','p(IT')]:case _0x11b81f[_0x3102('‫350','hMf@')]:case _0x11b81f['WbHNj']:case _0x11b81f[_0x3102('‫351','COiT')]:case _0x11b81f[_0x3102('‫352','hMf@')]:case _0x3102('‮353','EtQ#'):_0x15c7a4=_0x3102('‮354','TUqD')+_0xedb1c5[_0x3102('‫355','Gi4A')];break;case _0x11b81f[_0x3102('‮356','0cn&')]:_0x15c7a4=_0x3102('‮357','hMf@')+_0xedb1c5[_0x3102('‮358','hMf@')]+'&token='+_0x11b81f[_0x3102('‫359','1M$7')](encodeURIComponent,_0xedb1c5[_0x3102('‮35a','sg)U')])+_0x3102('‫35b','(uuA');break;case _0x11b81f[_0x3102('‮35c','qhO@')]:case _0x11b81f[_0x3102('‮35d','sdz^')]:_0x15c7a4='venderId='+_0xedb1c5['venderId']+_0x3102('‮35e','4q7e')+_0xedb1c5[_0x3102('‮35f','OpYx')]+'&pin='+_0x11b81f[_0x3102('‫360','7epy')](encodeURIComponent,_0xedb1c5[_0x3102('‮361','Zt7Z')])+'&activityId='+_0xedb1c5['activityId']+_0x3102('‫362','2K5g')+_0x11b81f[_0x3102('‫363','7epy')](encodeURIComponent,_0xedb1c5['thisActivityUrl'])+_0x3102('‮364','4IbD');break;case _0x11b81f[_0x3102('‫365','dt#Z')]:_0x15c7a4=_0x3102('‫366','3(Uq')+encodeURIComponent(_0xedb1c5[_0x3102('‮367','J%J3')]);break;case _0x3102('‮368','#9UC'):_0x15c7a4=_0x3102('‫369','J5AU')+_0xedb1c5[_0x3102('‫bc','bZAg')]+_0x3102('‫36a','J5AU')+_0xedb1c5['activityId']+_0x3102('‮36b','4q7e')+encodeURIComponent(_0xedb1c5[_0x3102('‮36c','AqFu')]);break;case _0x3102('‮36d','d3gl'):_0x15c7a4=_0x3102('‮36e','bZAg')+_0xedb1c5[_0x3102('‮36f','#9UC')];break;case _0x11b81f[_0x3102('‮370','Hlgj')]:_0x15c7a4=_0x3102('‫371','4IbD');break;}const _0x31cf31={'X-Requested-With':_0x3102('‮372','[TKT'),'Connection':_0x3102('‫373','4q7e'),'Accept-Encoding':_0x3102('‫374','#9UC'),'Content-Type':'application/x-www-form-urlencoded','Origin':'https://'+_0xedb1c5[_0x3102('‫375','oulr')],'User-Agent':_0xedb1c5['UA'],'Cookie':_0xedb1c5['cookie']+'\x20LZ_TOKEN_KEY='+_0xedb1c5[_0x3102('‮376','Xxxm')]+_0x3102('‮377','sNao')+_0xedb1c5[_0x3102('‮378','qBje')]+_0x3102('‫379','c[zw')+_0xedb1c5[_0x3102('‮37a','qBje')]+';\x20'+_0xedb1c5[_0x3102('‫37b','o@0y')],'Host':_0xedb1c5[_0x3102('‮37c','Hlgj')],'Referer':_0xedb1c5[_0x3102('‫37d','COiT')],'Accept-Language':_0x3102('‮37e','AqFu'),'Accept':'application/json'};let _0x231938={'url':_0x4a96ac,'method':_0x3102('‮37f','oulr'),'headers':_0x31cf31,'body':_0x15c7a4};return new Promise(async _0x4102f0=>{if(_0x11b81f[_0x3102('‮380','$u&N')](_0x3102('‮381','FuOh'),_0x11b81f['MDlzT'])){_0xedb1c5[_0x3102('‮327','Xxxm')](_0x231938,(_0x150450,_0x5ca279,_0x2c21e0)=>{var _0x32c434={'VSYch':function(_0x3aae4b,_0x5e47dd){return _0x11b81f[_0x3102('‮382','R%hz')](_0x3aae4b,_0x5e47dd);}};try{_0x11b81f[_0x3102('‫383','OpYx')](dealCK,_0xedb1c5,_0x5ca279);if(_0x2c21e0){_0x2c21e0=JSON['parse'](_0x2c21e0);}}catch(_0x153b5c){console[_0x3102('‫e4','oulr')](_0x2c21e0);_0xedb1c5[_0x3102('‫384','[TKT')](_0x153b5c,_0x5ca279);}finally{if(_0x11b81f['nNOqE']!==_0x11b81f[_0x3102('‮385','AqFu')]){return vars[i][_0x3102('‫386','OGYu')](_0x32c434[_0x3102('‫387','TUqD')](vars[i][_0x3102('‮388','EtQ#')]('='),0x1));}else{_0x11b81f[_0x3102('‮389','sg)U')](_0x4102f0,_0x2c21e0);}}});}else{_0xedb1c5[_0x3102('‮38a','hMf@')](e,resp);}});}async function join(_0x2f16af){var _0x1201b0={'RHCWW':function(_0x4673e1,_0x33a53d,_0x3689da){return _0x4673e1(_0x33a53d,_0x3689da);},'umhRL':function(_0xbf82ba,_0x334d92){return _0xbf82ba(_0x334d92);},'uDdpW':function(_0x38c2d8,_0x36d67c){return _0x38c2d8===_0x36d67c;},'mSbvu':function(_0x151f18,_0x274bc3){return _0x151f18==_0x274bc3;},'xGNUs':_0x3102('‫38b','4IbD'),'TYzEz':function(_0x54487f,_0x24d134){return _0x54487f==_0x24d134;},'yQcdp':_0x3102('‫38c','bgvS'),'SpQJD':'OricF','eXftD':_0x3102('‫38d','EtQ#'),'Ufbvn':_0x3102('‫38e','J%J3'),'XmbzO':function(_0x28de84,_0x14fec4){return _0x28de84(_0x14fec4);},'NKycZ':function(_0x5d28ea,_0x3ae8ef){return _0x5d28ea===_0x3ae8ef;},'WnSnA':function(_0x594152,_0x3b9fcd){return _0x594152(_0x3b9fcd);},'NWRUo':_0x3102('‮38f','sdz^'),'Roqko':_0x3102('‫390','Zt7Z'),'tuixr':_0x3102('‫391','OGYu'),'Qctld':_0x3102('‫392','tBOS'),'fpFzJ':'application/x-www-form-urlencoded'};_0x2f16af[_0x3102('‮393','f52I')]='';await _0x2f16af[_0x3102('‫394','Gi4A')](0x3e8);await _0x1201b0[_0x3102('‫395','7epy')](getshopactivityId,_0x2f16af);let _0x2b4b3d='';if(_0x2f16af[_0x3102('‫396','sNao')])_0x2b4b3d=_0x3102('‮397','#9UC')+_0x2f16af[_0x3102('‮398','n(3f')];let _0x54ac48={'url':_0x3102('‮399','n(3f')+_0x2f16af[_0x3102('‫39a','4q7e')]+_0x3102('‫39b','3(Uq')+_0x2f16af['venderId']+_0x3102('‫39c','sNao')+_0x2b4b3d+_0x3102('‫39d','RYmF'),'headers':{'Content-Type':_0x1201b0[_0x3102('‮39e','k6UV')],'Origin':_0x1201b0[_0x3102('‫39f','oulr')],'Host':_0x1201b0[_0x3102('‫3a0','dt#Z')],'accept':_0x1201b0['Qctld'],'User-Agent':_0x2f16af['UA'],'content-type':_0x1201b0[_0x3102('‮3a1','4IbD')],'Referer':_0x3102('‮3a2','dt#Z')+_0x2f16af['venderId']+_0x3102('‮3a3','d3gl')+_0x2f16af['venderId'],'Cookie':_0x2f16af['cookie']}};return new Promise(async _0x5b01d1=>{var _0x5f4f12={'nQYgY':function(_0x108cd4,_0x4ca18e){return _0x1201b0[_0x3102('‫3a4','Zt7Z')](_0x108cd4,_0x4ca18e);},'dxDUo':function(_0x3ce091,_0x4c977c){return _0x1201b0[_0x3102('‮3a5','XCf(')](_0x3ce091,_0x4c977c);},'gqSOb':_0x1201b0[_0x3102('‫3a6','*m2]')],'EAqLo':_0x3102('‮3a7','o@0y'),'favvX':function(_0x4d3cc0,_0x48ad83){return _0x1201b0[_0x3102('‮3a8','sg)U')](_0x4d3cc0,_0x48ad83);},'GyPdn':_0x1201b0['yQcdp'],'OrzcH':_0x1201b0['SpQJD'],'XiOMk':_0x1201b0[_0x3102('‫3a9','sg)U')],'xoAwi':_0x1201b0['Ufbvn'],'CDShD':function(_0x1a721e,_0x536acd){return _0x1201b0[_0x3102('‮3aa','(uuA')](_0x1a721e,_0x536acd);}};if(_0x1201b0['NKycZ']('Acmcf',_0x3102('‫3ab','4IbD'))){_0x2f16af[_0x3102('‫3ac','tBOS')](_0x54ac48,async(_0x2f49ce,_0x29a456,_0x2f8f06)=>{try{if(_0x5f4f12['nQYgY'](_0x3102('‮3ad','vitW'),_0x3102('‫3ae','$u&N'))){_0x2f16af[_0x3102('‮3af','2K5g')]=lzjdpintoken['split'](';')&&lzjdpintoken['split'](';')[0x0]+';'||'';}else{_0x2f8f06=JSON[_0x3102('‮3b0','hMf@')](_0x2f8f06);if(_0x5f4f12[_0x3102('‫3b1','Xxxm')](_0x2f8f06['success'],!![])){_0x2f16af[_0x3102('‮150','Hlgj')](_0x2f8f06[_0x3102('‮3b2','0cn&')]);if(_0x2f8f06[_0x3102('‫3b3','oJKr')]&&_0x2f8f06[_0x3102('‮3b4','4q7e')]['giftInfo']){if(_0x3102('‫3b5','Hlgj')!==_0x5f4f12['gqSOb']){for(let _0x302a28 of _0x2f8f06[_0x3102('‫3b6','FuOh')]['giftInfo'][_0x3102('‫3b7','Gi4A')]){if(_0x3102('‮3b8','c[zw')===_0x5f4f12[_0x3102('‮3b9','sg)U')]){console[_0x3102('‮2a7','(uuA')](_0x3102('‫3ba','AqFu'));return;}else{console['log']('入会获得:'+_0x302a28['discountString']+_0x302a28[_0x3102('‫3bb','dt#Z')]+_0x302a28['secondLineDesc']);}}}else{console[_0x3102('‮133','n(3f')]('初始化失败1');return;}}}else if(_0x5f4f12[_0x3102('‮3bc','Gi4A')](_0x2f8f06[_0x3102('‫3bd','vitW')],![])){if(_0x5f4f12[_0x3102('‫3be','3(Uq')]===_0x5f4f12[_0x3102('‮3bf','bgvS')]){for(let _0x30598f of _0x2f8f06[_0x3102('‫3c0','dt#Z')]['giftInfo'][_0x3102('‫3c1','sg)U')]){console[_0x3102('‮150','Hlgj')](_0x3102('‮3c2','d3gl')+_0x30598f[_0x3102('‫3c3','sg)U')]+_0x30598f[_0x3102('‫3c4','2K5g')]+_0x30598f[_0x3102('‫3c5','J%J3')]);}}else{_0x2f16af[_0x3102('‮d','Li(D')](_0x2f8f06[_0x3102('‫3c6','oulr')]);}}}}catch(_0x1a83f8){_0x2f16af['logErr'](_0x1a83f8,_0x29a456);}finally{if(_0x5f4f12['nQYgY'](_0x5f4f12['XiOMk'],_0x5f4f12[_0x3102('‫3c7','Gi4A')])){let _0x1d4fb5=drawInfo[_0x3102('‮da','2K5g')];if(!_0x1d4fb5['drawOk']){console['log'](_0x3102('‫3c8','2K5g'));}else{console[_0x3102('‫3c9','FuOh')](_0x3102('‫3ca','*m2]')+_0x1d4fb5[_0x3102('‫18d','R%hz')]);message+=_0x2f16af['UserName']+_0x3102('‫3cb','oJKr')+(_0x1d4fb5['name']||'未知')+'\x0a';}}else{_0x5f4f12[_0x3102('‮3cc','4q7e')](_0x5b01d1,_0x2f8f06);}}});}else{try{_0x1201b0[_0x3102('‫3cd','4q7e')](dealCK,_0x2f16af,resp);}catch(_0x51bfc3){_0x2f16af[_0x3102('‫3ce','XCf(')](_0x51bfc3,resp);}finally{_0x1201b0[_0x3102('‮3cf','c[zw')](_0x5b01d1,data);}}});}async function getshopactivityId(_0x3d4ef8){var _0x4fd5a4={'eGKsq':function(_0xb45864,_0x115d1a){return _0xb45864==_0x115d1a;},'Kckzk':function(_0x480cd9,_0x36312a){return _0x480cd9!==_0x36312a;},'tLiXr':'qJUin','kGOtl':function(_0x1e050e){return _0x1e050e();},'mxxIq':_0x3102('‮3d0','n(3f'),'XDpne':'api.m.jd.com','fhxng':'application/x-www-form-urlencoded'};let _0x47b97c={'url':'https://api.m.jd.com/client.action?appid=jd_shop_member&functionId=getShopOpenCardInfo&body=%7B%22venderId%22%3A%22'+_0x3d4ef8['venderId']+'%22%2C%22channel%22%3A401%7D&client=H5&clientVersion=9.2.0&uuid=88888','headers':{'Content-Type':_0x4fd5a4[_0x3102('‮3d1','bgvS')],'Origin':'https://api.m.jd.com','Host':_0x4fd5a4[_0x3102('‮3d2','1M$7')],'accept':'*/*','User-Agent':_0x3d4ef8['UA'],'content-type':_0x4fd5a4['fhxng'],'Referer':_0x3102('‫3d3','0cn&')+_0x3d4ef8['venderId']+'&shopId='+_0x3d4ef8[_0x3102('‮3d4','3(Uq')],'Cookie':_0x3d4ef8[_0x3102('‫3d5','J%J3')]}};return new Promise(_0x3d4ab0=>{_0x3d4ef8['get'](_0x47b97c,async(_0xc216be,_0xac7dcb,_0xf4bbe4)=>{try{_0xf4bbe4=JSON[_0x3102('‮3d6','c[zw')](_0xf4bbe4);if(_0x4fd5a4[_0x3102('‫3d7','J%J3')](_0xf4bbe4[_0x3102('‫3d8','Gi4A')],!![])){if(_0x3102('‮3d9','Zt7Z')===_0x3102('‮3da','COiT')){console['log'](_0x3102('‮3db','OGYu')+(_0xf4bbe4['result'][_0x3102('‮3dc','hMf@')][_0x3102('‫3dd','(uuA')]||''));_0x3d4ef8[_0x3102('‫3de','d3gl')]=_0xf4bbe4[_0x3102('‮3df','c[zw')][_0x3102('‫3e0','FuOh')]&&_0xf4bbe4[_0x3102('‮3e1','z@TG')][_0x3102('‮3e2','0cn&')][0x0]&&_0xf4bbe4[_0x3102('‫3e3','qhO@')]['interestsRuleList'][0x0][_0x3102('‮3e4','bZAg')]&&_0xf4bbe4[_0x3102('‮3b4','4q7e')][_0x3102('‫3e5','d3gl')][0x0]['interestsInfo'][_0x3102('‫3e6','3(Uq')]||'';}else{console[_0x3102('‮3e7','qhO@')](_0x3102('‮3e8','3(Uq'));}}}catch(_0x5b0ac4){_0x3d4ef8[_0x3102('‮2f8','4q7e')](_0x5b0ac4,_0xac7dcb);}finally{if(_0x4fd5a4[_0x3102('‮3e9','z@TG')](_0x4fd5a4['tLiXr'],_0x4fd5a4[_0x3102('‫3ea','3(Uq')])){console[_0x3102('‫240','J%J3')](_0x3102('‮3eb','4q7e'));}else{_0x4fd5a4[_0x3102('‫3ec','hMf@')](_0x3d4ab0);}}});});};_0xody='jsjiami.com.v6'; // prettier-ignore diff --git a/jd_fcdyj.js b/jd_fcdyj.js new file mode 100644 index 00000000..fee95461 --- /dev/null +++ b/jd_fcdyj.js @@ -0,0 +1,353 @@ +/* +活动入口: 京东极速版-我的-发财大赢家 + * / + * 基于温某人大佬的脚本修改 + * 助力逻辑:优先助力互助码环境变量,中午10点之后再给我助力 + * TG交流群:https://t.me/jd_zero205 + * TG通知频道:https://t.me/jd_zero205_tz + * / +https://raw.githubusercontent.com/Wenmoux/scripts/master/jd/jd_fcdyj.js +已支持IOS双京东账号, Node.js支持N个京东账号 +脚本兼容: QuantumultX, Surge, Loon, 小火箭,JSBox, Node.js +============Quantumultx=============== +[task_local] +#发财大赢家 +1 6-22/3 * * * https://raw.githubusercontent.com/Wenmoux/scripts/master/jd/jd_fcdyj.js, tag=新潮品牌狂欢, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/Color/jd.png, enabled=true + +================Loon============== +[Script] +cron "1 6-22/3 * * *" script-path=https://raw.githubusercontent.com/Wenmoux/scripts/master/jd/jd_fcdyj.js tag=翻翻乐 + +===============Surge================= +发财大赢家 = type=cron,cronexp="1 6-22/3 * * *",wake-system=1,timeout=3600,script-path=https://raw.githubusercontent.com/Wenmoux/scripts/master/jd/jd_fcdyj.js + +============小火箭========= +发财大赢家 = type=cron,script-path=https://raw.githubusercontent.com/Wenmoux/scripts/master/jd/jd_fcdyj.js, cronexpr="1 6-22/3 * * *", timeout=3600, enable=true + */ +const $ = new Env('发财大赢家助力'); +//Node.js用户请在jdCookie.js处填写京东ck; +const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; +const dyjCode = $.isNode() ? (process.env.dyjCode ? process.env.dyjCode : null) : null //邀请码变量,不支持多账号,格式:redEnvelopeId@markedPin +//IOS等用户直接用NobyDa的jd cookie +let cookiesArr = [], + cookie = ''; +if ($.isNode()) { + Object.keys(jdCookieNode).forEach((item) => { + cookiesArr.push(jdCookieNode[item]) + }) + if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => { }; +} else { + cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item); +} +const JD_API_HOST = `https://api.m.jd.com`; +!(async () => { + if (!cookiesArr[0]) { + $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', { + "open-url": "https://bean.m.jd.com/bean/signIndex.action" + }); + return; + } + console.log(`\n发财大赢家助力逻辑:优先助力填写的互助码环境变量,中午10点之后再给我助力\n`) + message = '' + $.linkid = "90EjWgTAckcluhnXn5JTdw" + //开红包查询 + for (let i = 0; i < cookiesArr.length; i++) { + cookie = cookiesArr[i]; + $.helptype = 1 + $.canDraw = false + $.canWx = true + $.rewardType = 2 + $.hotFlag = false; + if (cookie) { + $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]) + $.index = i + 1; + $.isLogin = true; + $.message = `【京东账号${$.index}】${$.UserName}\n` + console.log(`\n******开始【京东账号${$.index}】${$.nickName || $.UserName}*********\n`); + } + if (!dyjCode) { + await open() + if ($.hotFlag) continue; + console.log(`\n环境变量中没有检测到助力码,开始获取【京东账号${$.index}】助力码\n`) + await getid() + } else { + dyjStr = dyjCode.split("@") + if (dyjStr[0]) { + $.rid = dyjStr[0] + $.inviter = dyjStr[1] + $.canRun = true + console.log(`\n检测到您已填助力码${$.rid},开始助力\n`) + await help($.rid, $.inviter, 1) + if (!$.canRun) { + continue; + } + await $.wait(1000) + await help($.rid, $.inviter, 2) + } + } + if (new Date().getHours() >= 10) { + await getAuthorShareCode() + if ($.authorCode && $.authorCode.length) { + console.log(`\n${$.UserName} 去助力【zero205】\n`) + for (let j = 0; j < $.authorCode.length; j++) { + let item = $.authorCode[j]; + await help(item.redEnvelopeId, item.inviter, 1) + await $.wait(1000) + await help(item.redEnvelopeId, item.inviter, 2) + } + + } + } + console.log(`\n******查询【京东账号${$.index}】${$.nickName || $.UserName}红包情况******\n`); + await getinfo() + if ($.canDraw) { + await getrewardIndex() + if ($.canWx) { + await exchange() + } + await $.wait(1000) + } + } +})() + .catch((e) => { + $.log('', `❌ ${$.name}, 失败! 原因: ${e}!`, '') + }) + .finally(() => { + $.done(); + }) + +async function exchange() { + return new Promise(async (resolve) => { + let options = taskUrl("exchange", `{"linkId":"${$.linkid}", "rewardType":${$.rewardType}}`) + $.get(options, async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`); + console.log(`${$.name} API请求失败,请检查网路重试`); + } else { + data = JSON.parse(data); + if (data.success && data.data) { + if (data.data.chatEnvelopeVo.status == 50053 || data.data.chatEnvelopeVo.status == 50059) { + console.log(`【京东账号${$.index}】${data.data.chatEnvelopeVo.message} ,尝试兑换红包...`) + $.rewardType = 1 + await exchange() + } + } else { + console.log(`【京东账号${$.index}】提现成功`) + } + } + } catch (e) { + $.logErr(e, resp); + } finally { + resolve(); + } + }); + }); +} + +function open() { + return new Promise(async (resolve) => { + let options = taskUrl("openRedEnvelopeInteract", `{"linkId":"${$.linkid}"}`) + $.get(options, async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`); + console.log(`${$.name} API请求失败,请检查网路重试`); + } else { + data = JSON.parse(data); + if (data.code === 16020) { + $.hotFlag = true + console.log(data.errMsg); + } + } + } catch (e) { + $.logErr(e, resp); + } finally { + resolve(); + } + }); + }); +} + +function getid() { + return new Promise(async (resolve) => { + let options = taskUrl("redEnvelopeInteractHome", `{"linkId":"${$.linkid}","redEnvelopeId":"","inviter":"","helpType":""}`) + $.get(options, async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`); + console.log(`${$.name} API请求失败,请检查网路重试`); + } else { + data = JSON.parse(data); + // console.log(data.data.state) + if (data.data.state !== 0) { + if (data.success && data.data) { + console.log(`\n【京东账号${$.index}(${$.nickName || $.UserName})的助力码】${data.data.redEnvelopeId}@${data.data.markedPin}`) + } else { + console.log(data) + } + } else { + console.log(`【京东账号${$.index}】为黑号,跳过`) + } + } + } catch (e) { + $.logErr(e, resp); + } finally { + resolve(); + } + }); + }); +} + +function getinfo() { + return new Promise(async (resolve) => { + let options = taskUrl("redEnvelopeInteractHome", `{"linkId":"${$.linkid}","redEnvelopeId":"","inviter":"","helpType":""}`) + $.get(options, async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`); + console.log(`${$.name} API请求失败,请检查网路重试`); + } else { + data = JSON.parse(data); + if (data.data.state !== 0) { + if (data.success && data.data) { + if (data.data.state === 3) { + console.log("今日已成功兑换") + $.canDraw = false + } else if (data.data.state === 6 || data.data.state === 4) { + $.canDraw = true + } else { + console.log(`当前余额:${data.data.amount} 元,还需 ${data.data.needAmount} 元`) + $.canDraw = false + } + } + } else { + $.canDraw = false + console.log(`【京东账号${$.index}】为黑号,跳过`) + } + } + } catch (e) { + $.logErr(e, resp); + } finally { + resolve(); + } + }); + }); +} + +function getrewardIndex() { + return new Promise(async (resolve) => { + let options = taskUrl("rewardIndex", `{"linkId":"${$.linkid}"}`) + $.get(options, async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`); + console.log(`${$.name} API请求失败,请检查网路重试`); + } else { + console.log(data) + data = JSON.parse(data); + if (data.success && data.data) { + if (data.data.haveHelpNum === 10) { + console.log(`\n【京东账号${$.index}】已满足微信提现要求,开始提现\n`) + $.canWx = true + } + } else { + console.log(`当前已有 ${data.data.haveHelpNum} 人助力,还需 ${data.data.diffNum} 人`) + $.canWx = false + } + } + } catch (e) { + $.logErr(e, resp); + } finally { + resolve(); + } + }); + }); +} + +function help(rid, inviter, type) { + return new Promise(async (resolve) => { + let options = taskUrl("openRedEnvelopeInteract", `{"linkId":"${$.linkid}","redEnvelopeId":"${rid}","inviter":"${inviter}","helpType":"${type}"}`) + $.get(options, async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`); + console.log(`${$.name} API请求失败,请检查网路重试`); + } else { + data = JSON.parse(data); + if (data.data && data.data.helpResult) { + console.log(JSON.stringify(data.data.helpResult)) + if (data.data.helpResult.code === 16005 || data.data.helpResult.code === 16007) { + $.needhelp = false + $.canDraw = true + } else if (data.data.helpResult.code === 16011) { + $.needhelp = false + } + } else { + console.log(JSON.stringify(data)) + console.log(`【京东账号${$.UserName}】为黑号,跳过助力`) + $.canRun = false + } + } + } catch (e) { + $.logErr(e, resp); + } finally { + resolve(); + } + }); + }); +} + +function getAuthorShareCode() { + return new Promise(resolve => { + $.get({ + url: "https://raw.fastgit.org/zero205/updateTeam/main/shareCodes/dyj.json", + headers: { + "User-Agent": "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 Edg/87.0.4280.88" + } + }, async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`); + console.log(`${$.name} API请求失败,请检查网路重试`); + } else { + $.authorCode = JSON.parse(data); + } + } catch (e) { + $.logErr(e, resp) + } finally { + resolve(); + } + }) + }) +} +function taskUrl(function_id, body) { + return { + url: `${JD_API_HOST}/?functionId=${function_id}&body=${encodeURIComponent(body)}&t=${Date.now()}&appid=activities_platform&clientVersion=3.5.2`, + headers: { + "Accept": "*/*", + "Accept-Encoding": "gzip, deflate, br", + "Accept-Language": "zh-cn", + "Connection": "keep-alive", + "Content-Type": "application/x-www-form-urlencoded", + "Host": "api.m.jd.com", + "Referer": "https://618redpacket.jd.com/?activityId=DA4SkG7NXupA9sksI00L0g&channel=wjicon&sid=0a1ec8fa2455796af69028f8410996aw&un_area=1_2803_2829_0", + "Cookie": cookie, + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdltapp;android;3.5.6;9;8363532363230343238303836333-43D2468336563316936636265356;network/wifi;model/MI 8;addressid/2688971613;aid/059b2009dc5afb88;oaid/665d225a3f96764;osVer/28;appBuild/1656;psn/gB6yf l3bIcXHm 4uTHuFZIigUClYKza5OsTPc6vgTc=|932;psq/11;adk/;ads/;pap/JA2020_3112531|3.5.6|ANDROID 9;osv/9;pv/712.12;jdv/0|direct|-|none|-|1613884468974|1613884552;ref/HomeFragment;partner/xiaomi;apprpd/Home_Main;eufv/1;Mozilla/5.0 (Linux; Android 9; MI 8 Build/PKQ1-wesley_iui-19.08.25; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045513 Mobile Safari/537.36"), + } + } +} + +function jsonParse(str) { + if (typeof str == "string") { + try { + return JSON.parse(str); + } catch (e) { + console.log(e); + $.msg($.name, '', '请勿随意在BoxJs输入框修改内容\n建议通过脚本去获取cookie') + return []; + } + } +} +// prettier-ignore +function Env(t, e) { "undefined" != typeof process && JSON.stringify(process.env).indexOf("GITHUB") > -1 && process.exit(0); class s { constructor(t) { this.env = t } send(t, e = "GET") { t = "string" == typeof t ? { url: t } : t; let s = this.get; return "POST" === e && (s = this.post), new Promise((e, i) => { s.call(this, t, (t, s, r) => { t ? i(t) : e(s) }) }) } get(t) { return this.send.call(this.env, t) } post(t) { return this.send.call(this.env, t, "POST") } } return new class { constructor(t, e) { this.name = t, this.http = new s(this), this.data = null, this.dataFile = "box.dat", this.logs = [], this.isMute = !1, this.isNeedRewrite = !1, this.logSeparator = "\n", this.startTime = (new Date).getTime(), Object.assign(this, e), this.log("", `🔔${this.name}, 开始!`) } isNode() { return "undefined" != typeof module && !!module.exports } isQuanX() { return "undefined" != typeof $task } isSurge() { return "undefined" != typeof $httpClient && "undefined" == typeof $loon } isLoon() { return "undefined" != typeof $loon } toObj(t, e = null) { try { return JSON.parse(t) } catch { return e } } toStr(t, e = null) { try { return JSON.stringify(t) } catch { return e } } getjson(t, e) { let s = e; const i = this.getdata(t); if (i) try { s = JSON.parse(this.getdata(t)) } catch { } return s } setjson(t, e) { try { return this.setdata(JSON.stringify(t), e) } catch { return !1 } } getScript(t) { return new Promise(e => { this.get({ url: t }, (t, s, i) => e(i)) }) } runScript(t, e) { return new Promise(s => { let i = this.getdata("@chavy_boxjs_userCfgs.httpapi"); i = i ? i.replace(/\n/g, "").trim() : i; let r = this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout"); r = r ? 1 * r : 20, r = e && e.timeout ? e.timeout : r; const [o, h] = i.split("@"), n = { url: `http://${h}/v1/scripting/evaluate`, body: { script_text: t, mock_type: "cron", timeout: r }, headers: { "X-Key": o, Accept: "*/*" } }; this.post(n, (t, e, i) => s(i)) }).catch(t => this.logErr(t)) } loaddata() { if (!this.isNode()) return {}; { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e); if (!s && !i) return {}; { const i = s ? t : e; try { return JSON.parse(this.fs.readFileSync(i)) } catch (t) { return {} } } } } writedata() { if (this.isNode()) { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e), r = JSON.stringify(this.data); s ? this.fs.writeFileSync(t, r) : i ? this.fs.writeFileSync(e, r) : this.fs.writeFileSync(t, r) } } lodash_get(t, e, s) { const i = e.replace(/\[(\d+)\]/g, ".$1").split("."); let r = t; for (const t of i) if (r = Object(r)[t], void 0 === r) return s; return r } lodash_set(t, e, s) { return Object(t) !== t ? t : (Array.isArray(e) || (e = e.toString().match(/[^.[\]]+/g) || []), e.slice(0, -1).reduce((t, s, i) => Object(t[s]) === t[s] ? t[s] : t[s] = Math.abs(e[i + 1]) >> 0 == +e[i + 1] ? [] : {}, t)[e[e.length - 1]] = s, t) } getdata(t) { let e = this.getval(t); if (/^@/.test(t)) { const [, s, i] = /^@(.*?)\.(.*?)$/.exec(t), r = s ? this.getval(s) : ""; if (r) try { const t = JSON.parse(r); e = t ? this.lodash_get(t, i, "") : e } catch (t) { e = "" } } return e } setdata(t, e) { let s = !1; if (/^@/.test(e)) { const [, i, r] = /^@(.*?)\.(.*?)$/.exec(e), o = this.getval(i), h = i ? "null" === o ? null : o || "{}" : "{}"; try { const e = JSON.parse(h); this.lodash_set(e, r, t), s = this.setval(JSON.stringify(e), i) } catch (e) { const o = {}; this.lodash_set(o, r, t), s = this.setval(JSON.stringify(o), i) } } else s = this.setval(t, e); return s } getval(t) { return this.isSurge() || this.isLoon() ? $persistentStore.read(t) : this.isQuanX() ? $prefs.valueForKey(t) : this.isNode() ? (this.data = this.loaddata(), this.data[t]) : this.data && this.data[t] || null } setval(t, e) { return this.isSurge() || this.isLoon() ? $persistentStore.write(t, e) : this.isQuanX() ? $prefs.setValueForKey(t, e) : this.isNode() ? (this.data = this.loaddata(), this.data[e] = t, this.writedata(), !0) : this.data && this.data[e] || null } initGotEnv(t) { this.got = this.got ? this.got : require("got"), this.cktough = this.cktough ? this.cktough : require("tough-cookie"), this.ckjar = this.ckjar ? this.ckjar : new this.cktough.CookieJar, t && (t.headers = t.headers ? t.headers : {}, void 0 === t.headers.Cookie && void 0 === t.cookieJar && (t.cookieJar = this.ckjar)) } get(t, e = (() => { })) { t.headers && (delete t.headers["Content-Type"], delete t.headers["Content-Length"]), this.isSurge() || this.isLoon() ? (this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.get(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) })) : this.isQuanX() ? (this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t))) : this.isNode() && (this.initGotEnv(t), this.got(t).on("redirect", (t, e) => { try { if (t.headers["set-cookie"]) { const s = t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString(); s && this.ckjar.setCookieSync(s, null), e.cookieJar = this.ckjar } } catch (t) { this.logErr(t) } }).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) })) } post(t, e = (() => { })) { if (t.body && t.headers && !t.headers["Content-Type"] && (t.headers["Content-Type"] = "application/x-www-form-urlencoded"), t.headers && delete t.headers["Content-Length"], this.isSurge() || this.isLoon()) this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.post(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) }); else if (this.isQuanX()) t.method = "POST", this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t)); else if (this.isNode()) { this.initGotEnv(t); const { url: s, ...i } = t; this.got.post(s, i).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) }) } } time(t, e = null) { const s = e ? new Date(e) : new Date; let i = { "M+": s.getMonth() + 1, "d+": s.getDate(), "H+": s.getHours(), "m+": s.getMinutes(), "s+": s.getSeconds(), "q+": Math.floor((s.getMonth() + 3) / 3), S: s.getMilliseconds() }; /(y+)/.test(t) && (t = t.replace(RegExp.$1, (s.getFullYear() + "").substr(4 - RegExp.$1.length))); for (let e in i) new RegExp("(" + e + ")").test(t) && (t = t.replace(RegExp.$1, 1 == RegExp.$1.length ? i[e] : ("00" + i[e]).substr(("" + i[e]).length))); return t } msg(e = t, s = "", i = "", r) { const o = t => { if (!t) return t; if ("string" == typeof t) return this.isLoon() ? t : this.isQuanX() ? { "open-url": t } : this.isSurge() ? { url: t } : void 0; if ("object" == typeof t) { if (this.isLoon()) { let e = t.openUrl || t.url || t["open-url"], s = t.mediaUrl || t["media-url"]; return { openUrl: e, mediaUrl: s } } if (this.isQuanX()) { let e = t["open-url"] || t.url || t.openUrl, s = t["media-url"] || t.mediaUrl; return { "open-url": e, "media-url": s } } if (this.isSurge()) { let e = t.url || t.openUrl || t["open-url"]; return { url: e } } } }; if (this.isMute || (this.isSurge() || this.isLoon() ? $notification.post(e, s, i, o(r)) : this.isQuanX() && $notify(e, s, i, o(r))), !this.isMuteLog) { let t = ["", "==============📣系统通知📣=============="]; t.push(e), s && t.push(s), i && t.push(i), console.log(t.join("\n")), this.logs = this.logs.concat(t) } } log(...t) { t.length > 0 && (this.logs = [...this.logs, ...t]), console.log(t.join(this.logSeparator)) } logErr(t, e) { const s = !this.isSurge() && !this.isQuanX() && !this.isLoon(); s ? this.log("", `❗️${this.name}, 错误!`, t.stack) : this.log("", `❗️${this.name}, 错误!`, t) } wait(t) { return new Promise(e => setTimeout(e, t)) } done(t = {}) { const e = (new Date).getTime(), s = (e - this.startTime) / 1e3; this.log("", `🔔${this.name}, 结束! 🕛 ${s} 秒`), this.log(), (this.isSurge() || this.isQuanX() || this.isLoon()) && $done(t) } }(t, e) } diff --git a/jd_health_plant.py b/jd_health_plant.py new file mode 100644 index 00000000..06ada231 --- /dev/null +++ b/jd_health_plant.py @@ -0,0 +1,606 @@ +#!/bin/env python3 +# -*- coding: utf-8 -* +''' +感谢Curtin提供的其他脚本供我参考 +感谢aburd ch大佬的指导 +项目名称:jd_health_plant.py +Author: 一风一扬 +功能:健康社区-种植园自动任务 +Date: 2022-1-4 +cron: 23 11,13,21 * * * jd_health_plant.py +new Env('京东健康社区-种植园自动任务'); + + +活动入口:20:/#1DouT0KAaKuqv% + +教程:该活动与京东的ck通用,但是变量我还是独立出来。 + +青龙变量填写export plant_cookie="xxxx" + +多账号用&隔开,例如export plant_cookie="xxxx&xxxx" + + +青龙变量export charge_targe_id = 'xxxx',表示需要充能的id,单账号可以先填写export charge_targe_id = '11111',运行一次脚本 +日志输出会有charge_targe_id,然后再重新修改export charge_targe_id = 'xxxxxx'。多个账号也一样,如果2个账号export charge_targe_id = '11111&11111' +3个账号export charge_targe_id = '11111&11111&11111',以此类推。 +注意:charge_targe_id和ck位置要对应。而且你有多少个账号,就得填多少个charge_targe_id,首次11111填写时,为5位数。 +例如export plant_cookie="xxxx&xxxx&xxx",那export charge_targe_id = "11111&11111&11111",也要写满3个id,这样才能保证所有账号都能跑 + +''' + + + +######################################################以下代码请不要乱改###################################### + +UserAgent = '' +cookie = '' +account = '' +charge_targe_id = '' +cookies = [] +charge_targe_ids = '' + +import requests +import time,datetime +import requests,re,os,sys,random,json +from urllib.parse import quote, unquote +import threading +import urllib3 +#urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) + +requests.packages.urllib3.disable_warnings() + + + + +today = datetime.datetime.now().strftime('%Y-%m-%d') +tomorrow=(datetime.datetime.now() + datetime.timedelta(days=1)).strftime('%Y-%m-%d') + +nowtime = datetime.datetime.now ().strftime ('%Y-%m-%d %H:%M:%S.%f8') + +time1 = '21:00:00.00000000' +time2 = '22:00:00.00000000' + +flag_time1 = '{} {}'.format (today, time1) +flag_time2 = '{} {}'.format (today, time2) + + + + +pwd = os.path.dirname(os.path.abspath(__file__)) + os.sep +path = pwd + "env.sh" + +sid = ''.join (random.sample ('123456789abcdef123456789abcdef123456789abcdef123456789abcdef', 32)) + +sid_ck = ''.join (random.sample ('123456789abcdef123456789abcdef123456789abcdef123456789abcdefABCDEFGHIJKLMNOPQRSTUVWXYZ', 43)) + + + +def printT(s): + print("[{0}]: {1}".format(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), s)) + sys.stdout.flush() + +def getEnvs(label): + try: + if label == 'True' or label == 'yes' or label == 'true' or label == 'Yes': + return True + elif label == 'False' or label == 'no' or label == 'false' or label == 'No': + return False + except: + pass + try: + if '.' in label: + return float(label) + elif '&' in label: + return label.split('&') + elif '@' in label: + return label.split('@') + else: + return int(label) + except: + return label + +# 获取v4环境 特殊处理 +try: + with open(v4f, 'r', encoding='utf-8') as v4f: + v4Env = v4f.read() + r = re.compile(r'^export\s(.*?)=[\'\"]?([\w\.\-@#&=_,\[\]\{\}\(\)]{1,})+[\'\"]{0,1}$', + re.M | re.S | re.I) + r = r.findall(v4Env) + curenv = locals() + for i in r: + if i[0] != 'JD_COOKIE': + curenv[i[0]] = getEnvs(i[1]) +except: + pass + +############# 在pycharm测试ql环境用,实际用下面的代码运行 ######### +# with open(path, "r+", encoding="utf-8") as f: +# ck = f.read() +# if "JD_COOKIE" in ck: +# r = re.compile (r"pt_key=.*?pt_pin=.*?;", re.M | re.S | re.I) +# cookies = r.findall (ck) +# # print(cookies) +# # cookies = cookies[0] +# # print(cookies) +# # cookies = cookies.split ('&') +# printT ("已获取并使用ck环境 Cookie") +####################################################################### + + +if "plant_cookie" in os.environ: + if len (os.environ["plant_cookie"]) == 1: + is_ck = int(os.environ["plant_cookie"]) + cookie1 = os.environ["JD_COOKIE"].split('&') + cookie = cookie1[is_ck-1] + printT ("已获取并使用Env环境cookie") + elif len (os.environ["plant_cookie"]) > 1: + cookies1 = [] + cookies1 = os.environ["JD_COOKIE"] + cookies1 = cookies1.split ('&') + is_ck = os.environ["plant_cookie"].split('&') + for i in is_ck: + cookies.append(cookies1[int(i)-1]) + printT ("已获取并使用Env环境plant_cookies") +else: + if cookie == '': + printT ("变量plant_cookie未填写") + exit (0) + +if "charge_targe_id" in os.environ: + if len (os.environ["charge_targe_id"]) > 8: + charge_targe_ids = os.environ["charge_targe_id"] + charge_targe_ids = charge_targe_ids.split ('&') + else: + charge_targe_id = os.environ["charge_targe_id"] + printT (f"已获取并使用Env环境 charge_targe_id={charge_targe_id}") +else: + printT("变量charge_targe_id未填写,无法充能") + + + +def userAgent(): + """ + 随机生成一个UA + :return: jdapp;iPhone;9.4.8;14.3;xxxx;network/wifi;ADID/201EDE7F-5111-49E8-9F0D-CCF9677CD6FE;supportApplePay/0;hasUPPay/0;hasOCPay/0;model/iPhone13,4;addressid/2455696156;supportBestPay/0;appBuild/167629;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1 + """ + if not UserAgent: + uuid = ''.join(random.sample('123456789abcdef123456789abcdef123456789abcdef123456789abcdef', 40)) + addressid = ''.join(random.sample('1234567898647', 10)) + iosVer = ''.join( + random.sample(["14.5.1", "14.4", "14.3", "14.2", "14.1", "14.0.1", "13.7", "13.1.2", "13.1.1"], 1)) + iosV = iosVer.replace('.', '_') + iPhone = ''.join(random.sample(["8", "9", "10", "11", "12", "13"], 1)) + ADID = ''.join(random.sample('0987654321ABCDEF', 8)) + '-' + ''.join( + random.sample('0987654321ABCDEF', 4)) + '-' + ''.join(random.sample('0987654321ABCDEF', 4)) + '-' + ''.join( + random.sample('0987654321ABCDEF', 4)) + '-' + ''.join(random.sample('0987654321ABCDEF', 12)) + return f'jdapp;iPhone;10.0.4;{iosVer};{uuid};network/wifi;ADID/{ADID};supportApplePay/0;hasUPPay/0;hasOCPay/0;model/iPhone{iPhone},1;addressid/{addressid};supportBestPay/0;appBuild/167629;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS {iosV} like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1' + else: + return UserAgent + +## 获取通知服务 +class msg(object): + def __init__(self, m=''): + self.str_msg = m + self.message() + def message(self): + global msg_info + printT(self.str_msg) + try: + msg_info = "{}\n{}".format(msg_info, self.str_msg) + except: + msg_info = "{}".format(self.str_msg) + sys.stdout.flush() #这代码的作用就是刷新缓冲区。 + # 当我们打印一些字符时,并不是调用print函数后就立即打印的。一般会先将字符送到缓冲区,然后再打印。 + # 这就存在一个问题,如果你想等时间间隔的打印一些字符,但由于缓冲区没满,不会打印。就需要采取一些手段。如每次打印后强行刷新缓冲区。 + def getsendNotify(self, a=0): + if a == 0: + a += 1 + try: + url = 'https://gitee.com/curtinlv/Public/raw/master/sendNotify.py' + response = requests.get(url) + if 'curtinlv' in response.text: + with open('sendNotify.py', "w+", encoding="utf-8") as f: + f.write(response.text) + else: + if a < 5: + a += 1 + return self.getsendNotify(a) + else: + pass + except: + if a < 5: + a += 1 + return self.getsendNotify(a) + else: + pass + def main(self): + global send + cur_path = os.path.abspath(os.path.dirname(__file__)) + sys.path.append(cur_path) + if os.path.exists(cur_path + "/sendNotify.py"): + try: + from sendNotify import send + except: + self.getsendNotify() + try: + from sendNotify import send + except: + printT("加载通知服务失败~") + else: + self.getsendNotify() + try: + from sendNotify import send + except: + printT("加载通知服务失败~") + ################### +msg().main() + +def setName(cookie): + try: + r = re.compile(r"pt_pin=(.*?);") #指定一个规则:查找pt_pin=与;之前的所有字符,但pt_pin=与;不复制。r"" 的作用是去除转义字符. + userName = r.findall(cookie) #查找pt_pin=与;之前的所有字符,并复制给r,其中pt_pin=与;不复制。 + #print (userName) + userName = unquote(userName[0]) #r.findall(cookie)赋值是list列表,这个赋值为字符串 + #print(userName) + return userName + except Exception as e: + print(e,"cookie格式有误!") + exit(2) + +#获取ck +def get_ck(token,sid_ck,account): + try: + url = 'https://api.m.jd.com/client.action?functionId=isvObfuscator' + headers = { + # 'Connection': 'keep-alive', + 'accept': '*/*', + "cookie": f"{token}", + 'host': 'api.m.jd.com', + # 'User-Agent': 'jdapp;iPhone;9.4.8;14.3;809409cbd5bb8a0fa8fff41378c1afe91b8075ad;network/wifi;ADID/201EDE7F-5111-49E8-9F0D-CCF9677CD6FE;supportApplePay/0;hasUPPay/0;hasOCPay/0;model/iPhone13,4;addressid/2455696156;supportBestPay/0;appBuild/167629;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1', + 'user-Agent': userAgent (), + 'accept-Encoding': 'gzip, deflate, br', + 'accept-Language': 'zh-Hans-CN;q=1', + "content-type":"application/x-www-form-urlencoded", + # "content-length":"1348", + } + timestamp = int (round (time.time () * 1000)) + timestamp1 = int(timestamp / 1000) + data =r'body=%7B%22url%22%3A%22https%3A%5C/%5C/xinruismzd-isv.isvjcloud.com%22%2C%22id%22%3A%22%22%7D&build=167922&client=apple&clientVersion=10.3.2&d_brand=apple&d_model=iPhone12%2C1&ef=1&eid=eidI4a9081236as4w7JpXa5zRZuwROIEo3ORpcOyassXhjPBIXtrtbjusqCxeW3E1fOtHUlGhZUCur1Q1iocDze1pQ9jBDGfQs8UXxMCTz02fk0RIHpB&ep=%7B%22ciphertype%22%3A5%2C%22cipher%22%3A%7B%22screen%22%3A%22ENS4AtO3EJS%3D%22%2C%22wifiBssid%22%3A%22' + f"{sid_ck}" + r'%3D%22%2C%22osVersion%22%3A%22CJUkCK%3D%3D%22%2C%22area%22%3A%22CJvpCJY1DV80ENY2XzK%3D%22%2C%22openudid%22%3A%22Ytq3YtKyDzO5CJuyZtu4CWSyZtC0Ytc1CJLsDwC5YwO0YtS5CNrsCK%3D%3D%22%2C%22uuid%22%3A%22aQf1ZRdxb2r4ovZ1EJZhcxYlVNZSZz09%22%7D%2C%22ts%22%3A1642002985%2C%22hdid%22%3A%22JM9F1ywUPwflvMIpYPok0tt5k9kW4ArJEU3lfLhxBqw%3D%22%2C%22version%22%3A%221.0.3%22%2C%22appname%22%3A%22com.360buy.jdmobile%22%2C%22ridx%22%3A-1%7D&ext=%7B%22prstate%22%3A%220%22%2C%22pvcStu%22%3A%221%22%7D&isBackground=N&joycious=88&lang=zh_CN&networkType=wifi&networklibtype=JDNetworkBaseAF&partner=apple&rfs=0000&scope=01&sign=946db60626658b250cf47aafb6f67691&st=1642002999847&sv=112&uemps=0-0&uts=0f31TVRjBSu3kkqwe7t25AkQCKuzV3pz8JrojVuU0630g%2BkZigs9kTwRghT26sE72/e92RRKan/%2B9SRjIJYCLuhew91djUwnIY47k31Rwne/U1fOHHr9FmR31X03JKJjwao/EC1gy4fj7PV1Co0ZOjiCMTscFo/8id2r8pCHYMZcaeH3yPTLq1MyFF3o3nkStM/993MbC9zim7imw8b1Fg%3D%3D' + # data = '{"token":"AAFh3ANjADAPSunyKSzXTA-UDxrs3Tn9hoy92x4sWmVB0Kv9ey-gAMEdJaSDWLWtnMX8lqLujBo","source":"01"}' + # print(data) + response = requests.post (url=url, verify=False, headers=headers,data=data) + result = response.json () + # print(result) + access_token = result['token'] + # print(access_token) + return access_token + except Exception as e: + msg("账号【{0}】获取ck失败,cookie过期".format(account)) + +#获取Authorization +def get_Authorization(access_token,account): + try: + url = 'https://xinruismzd-isv.isvjcloud.com/api/auth' + headers = { + 'Connection': 'keep-alive', + 'Accept': 'application/json, text/plain, */*', + "Authorization": 'Bearer undefined', + 'Referer': 'https://xinruismzd-isv.isvjcloud.com/healthy-plant2021/logined_jd/', + 'Host': 'xinruismzd-isv.isvjcloud.com', + # 'User-Agent': 'jdapp;iPhone;9.4.8;14.3;809409cbd5bb8a0fa8fff41378c1afe91b8075ad;network/wifi;ADID/201EDE7F-5111-49E8-9F0D-CCF9677CD6FE;supportApplePay/0;hasUPPay/0;hasOCPay/0;model/iPhone13,4;addressid/2455696156;supportBestPay/0;appBuild/167629;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1', + 'User-Agent': userAgent (), + 'Accept-Encoding': 'gzip, deflate, br', + 'Accept-Language': 'zh-CN,zh-Hans;q=0.9', + "Origin":"https://xinruismzd-isv.isvjcloud.com", + "Content-Type":"application/json;charset=utf-8", + + } + data = '{"token":"'+ f"{access_token}" + r'","source":"01"}' + # print(data) + response = requests.post (url=url, verify=False, headers=headers,data=data) + result = response.json () + # print(result) + access_token = result['access_token'] + access_token = r"Bearer " + access_token + # print(access_token) + return access_token + except Exception as e: + msg("账号【{0}】获取Authorization失败,活动火爆,请稍后再试".format(account)) + +#获取已种植的信息 +def get_planted_info(cookies,sid,account): + name_list = [] + planted_id_list = [] + url = 'https://xinruismzd-isv.isvjcloud.com/api/get_home_info' + headers = { + 'Connection': 'keep-alive', + 'Accept': 'application/json, text/plain, */*', + "Authorization": cookies, + 'Referer': f'https://xinruismzd-isv.isvjcloud.com/healthy-plant2021/?channel=ddjkicon&sid={sid}&un_area=19_1655_4866_0', + 'Host': 'xinruismzd-isv.isvjcloud.com', + # 'User-Agent': 'jdapp;iPhone;9.4.8;14.3;809409cbd5bb8a0fa8fff41378c1afe91b8075ad;network/wifi;ADID/201EDE7F-5111-49E8-9F0D-CCF9677CD6FE;supportApplePay/0;hasUPPay/0;hasOCPay/0;model/iPhone13,4;addressid/2455696156;supportBestPay/0;appBuild/167629;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1', + 'User-Agent': userAgent (), + 'Accept-Encoding': 'gzip, deflate, br', + 'Accept-Language': 'zh-CN,zh-Hans;q=0.9' + } + response = requests.get (url=url, verify=False, headers=headers) + result = response.json () + # print(result) + planted_list = result['plant'] + # print(planted_list) + for i in range (len (planted_list)): + try: + name = result['plant'][f'{i+1}']['data']['name'] + planted_id = result['plant'][f'{i+1}']['data']['id'] + print(f"【账号{account}】所种植的",f"【{name}】","充能ID为:",planted_id) + name_list.append(name) + planted_id_list.append(planted_id) + except Exception as e: + pass + print('\n\n') + + +#获取早睡打卡 +def get_sleep(cookies,sid): + url = 'https://xinruismzd-isv.isvjcloud.com/api/get_task' + headers = { + 'Connection': 'keep-alive', + 'Accept': 'application/json, text/plain, */*', + "Authorization": cookies, + 'Referer': f'https://xinruismzd-isv.isvjcloud.com/healthy-plant2021/?channel=ddjkicon&sid={sid}&un_area=19_1655_4866_0', + 'Host': 'xinruismzd-isv.isvjcloud.com', + # 'User-Agent': 'jdapp;iPhone;9.4.8;14.3;809409cbd5bb8a0fa8fff41378c1afe91b8075ad;network/wifi;ADID/201EDE7F-5111-49E8-9F0D-CCF9677CD6FE;supportApplePay/0;hasUPPay/0;hasOCPay/0;model/iPhone13,4;addressid/2455696156;supportBestPay/0;appBuild/167629;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1', + 'User-Agent': userAgent (), + 'Accept-Encoding': 'gzip, deflate, br', + 'Accept-Language': 'zh-CN,zh-Hans;q=0.9' + } + response = requests.get (url=url, verify=False, headers=headers) + result = response.json () + # print(result) + taskToken_list = result['result']['taskVos'] + for i in range (len (taskToken_list)): + try: + taskName = taskToken_list[i]['taskName'] + taskId = taskToken_list[i]['taskId'] + if "早睡" in taskName: + taskToken = taskToken_list[i]['threeMealInfoVos'][0]['taskToken'] + return taskName,taskId,taskToken + except Exception as e: + print (e) + + +#获取任务信息 +def get_task(cookies,sid,account): + try: + taskName_list = [] + taskId_list = [] + taskToken_list = [] + url = 'https://xinruismzd-isv.isvjcloud.com/api/get_task' + headers = { + 'Connection': 'keep-alive', + 'Accept': 'application/json, text/plain, */*', + "Authorization":cookies, + 'Referer': f'https://xinruismzd-isv.isvjcloud.com/healthy-plant2021/?channel=ddjkicon&sid={sid}&un_area=19_1655_4866_0', + 'Host': 'xinruismzd-isv.isvjcloud.com', + # 'User-Agent': 'jdapp;iPhone;9.4.8;14.3;809409cbd5bb8a0fa8fff41378c1afe91b8075ad;network/wifi;ADID/201EDE7F-5111-49E8-9F0D-CCF9677CD6FE;supportApplePay/0;hasUPPay/0;hasOCPay/0;model/iPhone13,4;addressid/2455696156;supportBestPay/0;appBuild/167629;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1', + 'User-Agent': userAgent (), + 'Accept-Encoding': 'gzip, deflate, br', + 'Accept-Language': 'zh-CN,zh-Hans;q=0.9' + } + response = requests.get(url=url, verify=False, headers=headers) + result = response.json() + # print(result) + task_list = result['result']['taskVos'] + # print(task_list) + for i in range (len (task_list)): + try: + taskName = task_list[i]['taskName'] + taskId = task_list[i]['taskId'] + taskToken = task_list[i]['shoppingActivityVos'][0]['taskToken'] + taskName_list.append(taskName) + taskId_list.append(taskId) + taskToken_list.append(taskToken) + except Exception as e: + print(e) + # print(taskName_list, taskId_list, taskToken_list) + return taskName_list, taskId_list, taskToken_list + except Exception as e: + print (e) + msg("【账号{0}】浏览任务已全部完成".format(account)) + return '', '', '' + +#获取加购任务信息 +def get_task2(cookies,sid,account): + try: + taskToken_list = [] + url = 'https://xinruismzd-isv.isvjcloud.com/api/get_task' + headers = { + 'Connection': 'keep-alive', + 'Accept': 'application/json, text/plain, */*', + "Authorization":cookies, + 'Referer': f'https://xinruismzd-isv.isvjcloud.com/healthy-plant2021/?channel=ddjkicon&sid={sid}&un_area=19_1655_4866_0', + 'Host': 'xinruismzd-isv.isvjcloud.com', + # 'User-Agent': 'jdapp;iPhone;9.4.8;14.3;809409cbd5bb8a0fa8fff41378c1afe91b8075ad;network/wifi;ADID/201EDE7F-5111-49E8-9F0D-CCF9677CD6FE;supportApplePay/0;hasUPPay/0;hasOCPay/0;model/iPhone13,4;addressid/2455696156;supportBestPay/0;appBuild/167629;jdSupportDarkMode/0;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1', + 'User-Agent': userAgent (), + 'Accept-Encoding': 'gzip, deflate, br', + 'Accept-Language': 'zh-CN,zh-Hans;q=0.9' + } + response = requests.get(url=url, verify=False, headers=headers) + result = response.json() + # print(result) + taskName = result['result']['taskVos'][0]['taskName'] + taskId = result['result']['taskVos'][0]['taskId'] + task_list = result['result']['taskVos'][0]['productInfoVos'] + # print(task_list) + for i in range (len (task_list)): + try: + taskToken = task_list[i]['taskToken'] + taskToken_list.append(taskToken) + except Exception as e: + pass + # print(taskName, taskId, taskToken_list) + return taskName, taskId, taskToken_list + except Exception as e: + print (e) + msg("【账号{0}】加购任务已全部完成".format(account)) + return '','','' + +#做任务 +def do_task(cookies,taskName,taskId,taskToken,sid,account): + try: + url = 'https://xinruismzd-isv.isvjcloud.com/api/do_task' + url1 = 'https://xinruismzd-isv.isvjcloud.com/api/catch_task' + headers = { + 'Connection': 'keep-alive', + 'Accept': 'application/json, text/plain, */*', + "Content-Type":"application/json", + "Authorization":cookies, + 'Referer': f'https://xinruismzd-isv.isvjcloud.com/healthy-plant2021/?channel=ddjkicon&sid={sid}&un_area=19_1655_4866_0', + 'Host': 'xinruismzd-isv.isvjcloud.com', + # 'User-Agent': 'jdapp;iPhone;10.3.0;;;M/5.0;appBuild/167903;jdSupportDarkMode/0;ef/1;ep/%7B%22ciphertype%22%3A5%2C%22cipher%22%3A%7B%22ud%22%3A%22Ytq3YtKyDzO5CJuyZtu4CWSyZtC0Ytc1CJLsDwC5YwO0YtS5CNrsCK%3D%3D%22%2C%22sv%22%3A%22CJUkCK%3D%3D%22%2C%22iad%22%3A%22%22%7D%2C%22ts%22%3A1641370097%2C%22hdid%22%3A%22JM9F1ywUPwflvMIpYPok0tt5k9kW4ArJEU3lfLhxBqw%3D%22%2C%22version%22%3A%221.0.3%22%2C%22appname%22%3A%22com.360buy.jdmobile%22%2C%22ridx%22%3A-1%7D;Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1;', + 'User-Agent': userAgent (), + 'Accept-Encoding': 'gzip, deflate, br', + 'Accept-Language': 'zh-CN,zh-Hans;q=0.9', + # "Cookie":"__jd_ref_cls=Mnpm_ComponentApplied; mba_muid=16410448680341440020208.1480.1641370098735; mba_sid=1480.10; __jda=60969652.16410448680341440020208.1641044868.1641357628.1641370076.6; __jdb=60969652.3.16410448680341440020208|6.1641370076; __jdc=60969652; __jdv=60969652%7Ckong%7Ct_1000170135%7Ctuiguang%7Cnotset%7C1641349527806; pre_seq=8; pre_session=b87b02719192f981b2f34b7510b6c9ba4b2908b0|3687; jd-healthy-plantation=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC94aW5ydWlzbXpkLWlzdi5pc3ZqY2xvdWQuY29tXC9hcGlcL2F1dGgiLCJpYXQiOjE2NDEzNTU0NzksImV4cCI6MTY0MTM5ODY3OSwibmJmIjoxNjQxMzU1NDc5LCJqdGkiOiJTcGdZbU1HeU50c084c0Z2Iiwic3ViIjoiNWF1aVRrdlZRVl9icDQ3T0EtVmRQMVFOR3FQcEhMXzUtLU5XdGs5TUhPYyIsInBydiI6IjIzYmQ1Yzg5NDlmNjAwYWRiMzllNzAxYzQwMDg3MmRiN2E1OTc2ZjcifQ.cfuKGTSrCfBX2qxrTdcW2ME3ASBbTo-DCFRwHWoPiDg" + "Origin":"https://xinruismzd-isv.isvjcloud.com", + # "Content-Length":"124", + } + data = r'{"taskToken":"' +f"{taskToken}" +r'","task_id":' + f"{taskId}" + r',"task_type":9,"task_name":"' + f"{taskName}" + r'"}' + res = requests.post(url=url1, verify=False, headers=headers,data=data.encode()) + # print(res.status_code) + if res.status_code == 200: + msg("正在执行任务,请稍等10秒") + time.sleep(10) + response = requests.post(url=url, verify=False, headers=headers,data=data.encode()) #data中有汉字,需要encode为utf-8 + result = response.json() + print(result) + score = result['score'] + msg ("执行任务【{0}】成功,获取【{1}】能量".format (taskName,score)) + except Exception as e: + print(e) + +#做任务 +def do_task2(cookies,taskName,taskId,taskToken,sid,account): + try: + url = 'https://xinruismzd-isv.isvjcloud.com/api/do_task' + headers = { + 'Connection': 'keep-alive', + 'Accept': 'application/json, text/plain, */*', + "Content-Type":"application/json", + "Authorization":cookies, + 'Referer': f'https://xinruismzd-isv.isvjcloud.com/healthy-plant2021/?channel=ddjkicon&sid={sid}&un_area=19_1655_4866_0', + 'Host': 'xinruismzd-isv.isvjcloud.com', + # 'User-Agent': 'jdapp;iPhone;10.3.0;;;M/5.0;appBuild/167903;jdSupportDarkMode/0;ef/1;ep/%7B%22ciphertype%22%3A5%2C%22cipher%22%3A%7B%22ud%22%3A%22Ytq3YtKyDzO5CJuyZtu4CWSyZtC0Ytc1CJLsDwC5YwO0YtS5CNrsCK%3D%3D%22%2C%22sv%22%3A%22CJUkCK%3D%3D%22%2C%22iad%22%3A%22%22%7D%2C%22ts%22%3A1641370097%2C%22hdid%22%3A%22JM9F1ywUPwflvMIpYPok0tt5k9kW4ArJEU3lfLhxBqw%3D%22%2C%22version%22%3A%221.0.3%22%2C%22appname%22%3A%22com.360buy.jdmobile%22%2C%22ridx%22%3A-1%7D;Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1;', + 'User-Agent': userAgent (), + 'Accept-Encoding': 'gzip, deflate, br', + 'Accept-Language': 'zh-CN,zh-Hans;q=0.9', + # "Cookie":"__jd_ref_cls=Mnpm_ComponentApplied; mba_muid=16410448680341440020208.1480.1641370098735; mba_sid=1480.10; __jda=60969652.16410448680341440020208.1641044868.1641357628.1641370076.6; __jdb=60969652.3.16410448680341440020208|6.1641370076; __jdc=60969652; __jdv=60969652%7Ckong%7Ct_1000170135%7Ctuiguang%7Cnotset%7C1641349527806; pre_seq=8; pre_session=b87b02719192f981b2f34b7510b6c9ba4b2908b0|3687; jd-healthy-plantation=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC94aW5ydWlzbXpkLWlzdi5pc3ZqY2xvdWQuY29tXC9hcGlcL2F1dGgiLCJpYXQiOjE2NDEzNTU0NzksImV4cCI6MTY0MTM5ODY3OSwibmJmIjoxNjQxMzU1NDc5LCJqdGkiOiJTcGdZbU1HeU50c084c0Z2Iiwic3ViIjoiNWF1aVRrdlZRVl9icDQ3T0EtVmRQMVFOR3FQcEhMXzUtLU5XdGs5TUhPYyIsInBydiI6IjIzYmQ1Yzg5NDlmNjAwYWRiMzllNzAxYzQwMDg3MmRiN2E1OTc2ZjcifQ.cfuKGTSrCfBX2qxrTdcW2ME3ASBbTo-DCFRwHWoPiDg" + "Origin":"https://xinruismzd-isv.isvjcloud.com", + # "Content-Length":"124", + } + data = r'{"taskToken":"' +f"{taskToken}" +r'","task_id":' + f"{taskId}" + r',"task_type":9,"task_name":"' + f"{taskName}" + r'"}' + time.sleep(1) + response = requests.post(url=url, verify=False, headers=headers,data=data.encode()) #data中有汉字,需要encode为utf-8 + result = response.json() + # print(result) + score = result['score'] + msg ("执行任务【{0}】成功,获取【{1}】能量".format (taskName,score)) + except Exception as e: + print(e) + + +#充能 +def charge(charge_targe_id,cookies,sid,account): + try: + url = 'https://xinruismzd-isv.isvjcloud.com/api/add_growth_value' + headers = { + 'Connection': 'keep-alive', + 'Accept': 'application/json, text/plain, */*', + "Content-Type":"application/json", + "Authorization":cookies, + 'Referer': f'https://xinruismzd-isv.isvjcloud.com/healthy-plant2021/?channel=ddjkicon&sid={sid}&un_area=19_1655_4866_0', + 'Host': 'xinruismzd-isv.isvjcloud.com', + # 'User-Agent': 'jdapp;iPhone;10.3.0;;;M/5.0;appBuild/167903;jdSupportDarkMode/0;ef/1;ep/%7B%22ciphertype%22%3A5%2C%22cipher%22%3A%7B%22ud%22%3A%22Ytq3YtKyDzO5CJuyZtu4CWSyZtC0Ytc1CJLsDwC5YwO0YtS5CNrsCK%3D%3D%22%2C%22sv%22%3A%22CJUkCK%3D%3D%22%2C%22iad%22%3A%22%22%7D%2C%22ts%22%3A1641370097%2C%22hdid%22%3A%22JM9F1ywUPwflvMIpYPok0tt5k9kW4ArJEU3lfLhxBqw%3D%22%2C%22version%22%3A%221.0.3%22%2C%22appname%22%3A%22com.360buy.jdmobile%22%2C%22ridx%22%3A-1%7D;Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1;', + 'User-Agent': userAgent (), + 'Accept-Encoding': 'gzip, deflate, br', + 'Accept-Language': 'zh-CN,zh-Hans;q=0.9', + # "Cookie":"__jd_ref_cls=Mnpm_ComponentApplied; mba_muid=16410448680341440020208.1480.1641370098735; mba_sid=1480.10; __jda=60969652.16410448680341440020208.1641044868.1641357628.1641370076.6; __jdb=60969652.3.16410448680341440020208|6.1641370076; __jdc=60969652; __jdv=60969652%7Ckong%7Ct_1000170135%7Ctuiguang%7Cnotset%7C1641349527806; pre_seq=8; pre_session=b87b02719192f981b2f34b7510b6c9ba4b2908b0|3687; jd-healthy-plantation=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC94aW5ydWlzbXpkLWlzdi5pc3ZqY2xvdWQuY29tXC9hcGlcL2F1dGgiLCJpYXQiOjE2NDEzNTU0NzksImV4cCI6MTY0MTM5ODY3OSwibmJmIjoxNjQxMzU1NDc5LCJqdGkiOiJTcGdZbU1HeU50c084c0Z2Iiwic3ViIjoiNWF1aVRrdlZRVl9icDQ3T0EtVmRQMVFOR3FQcEhMXzUtLU5XdGs5TUhPYyIsInBydiI6IjIzYmQ1Yzg5NDlmNjAwYWRiMzllNzAxYzQwMDg3MmRiN2E1OTc2ZjcifQ.cfuKGTSrCfBX2qxrTdcW2ME3ASBbTo-DCFRwHWoPiDg" + "Origin":"https://xinruismzd-isv.isvjcloud.com", + # "Content-Length":"124", + } + data = r'{"plant_id":' + f"{charge_targe_id}" + r'}' + for i in range(10): + response = requests.post(url=url, verify=False, headers=headers,data=data.encode()) #data中有汉字,需要encode为utf-8 + result = response.json() + print(result) + user_coins = result['user_coins'] #剩余能量 + coins = result['plant_info']['coins'] #消耗能量 + msg ("充能成功,消耗【{0}】能量,剩余能量【{1}】".format (coins,user_coins)) + time.sleep(2) + + except Exception as e: + # print(e) + message = result['message'] + if "充值次数达到上限" in message: + msg("账号【{0}】充能次数已达上限10次".format(account)) + + +def start(): + global cookie,cookies,charge_targe_id + print (f"\n【准备开始...】\n") + nowtime = datetime.datetime.now ().strftime ('%Y-%m-%d %H:%M:%S.%f8') + if cookie != '': + account = setName (cookie) + msg ("★★★★★正在账号{}的任务★★★★★".format (account)) + access_token = get_ck(cookie,sid_ck,account) + cookie = get_Authorization (access_token, account) + get_planted_info (cookie, sid,account) + if nowtime > flag_time1 and nowtime < flag_time2: + taskName,taskId,taskToken = get_sleep (cookie,sid) + do_task(cookie,taskName,taskId,taskToken,sid,account) + charge(charge_targe_id,cookie,sid,account) + else: + taskName_list,taskId_list,taskToken_list = get_task (cookie,sid,account) + for i,j,k in zip(taskName_list,taskId_list,taskToken_list): + do_task(cookie,i,j,k,sid,account) + taskName, taskId, taskToken_list = get_task2(cookie,sid,account) + for i in taskToken_list: + do_task2 (cookie, taskName, taskId, i, sid,account) + charge(charge_targe_id,cookie,sid, account) + elif cookies != '': + for cookie, charge_targe_id in zip (cookies, charge_targe_ids): + account = setName (cookie) + access_token = get_ck (cookie, sid_ck, account) + cookie = get_Authorization (access_token, account) + get_planted_info (cookie, sid,account) + for cookie,charge_targe_id in zip(cookies,charge_targe_ids): + try: + account = setName (cookie) + msg ("★★★★★正在账号{}的任务★★★★★".format (account)) + access_token = get_ck (cookie, sid_ck,account) + cookie = get_Authorization (access_token, account) + get_planted_info (cookie,sid,account) + if nowtime > flag_time1 and nowtime < flag_time2: + taskName, taskId, taskToken = get_sleep (cookie,sid) + do_task (cookie, taskName, taskId, taskToken, sid,account) + else: + taskName_list, taskId_list, taskToken_list = get_task (cookie, sid,account) + for i, j, k in zip (taskName_list, taskId_list, taskToken_list): + do_task (cookie, i, j, k, sid,account) + taskName, taskId, taskToken_list = get_task2 (cookie,sid, account) + for i in taskToken_list: + do_task2 (cookie, taskName, taskId, i, sid,account) + + except Exception as e: + pass + charge (charge_targe_id, cookie, sid, account) + else: + printT("请检查变量plant_cookie是否已填写") + +if __name__ == '__main__': + printT("京东健康社区-种植园") + start () + if '成熟' in msg_info: + send ("京东健康社区-种植园", msg_info) + if '成功' in msg_info: + send ("京东健康社区-种植园", msg_info) diff --git a/backUp/jd_jxlhb.js b/jd_jxlhb.js similarity index 100% rename from backUp/jd_jxlhb.js rename to jd_jxlhb.js diff --git a/jd_live.js b/jd_live.js index 3b560a49..f3e638ee 100644 --- a/jd_live.js +++ b/jd_live.js @@ -286,8 +286,13 @@ function getSign(functionId, body) { client: "apple", clientVersion: "10.3.0" } + let Host = "" let HostArr = ['jdsign.cf', 'signer.nz.lu'] - let Host = HostArr[Math.floor((Math.random() * HostArr.length))] + if (process.env.SIGN_URL) { + Host = process.env.SIGN_URL + } else { + Host = HostArr[Math.floor((Math.random() * HostArr.length))] + } let options = { url: `https://cdn.nz.lu/ddo`, body: JSON.stringify(data), diff --git a/jd_nzmh.js b/jd_nzmh.js new file mode 100644 index 00000000..d3ffafc3 --- /dev/null +++ b/jd_nzmh.js @@ -0,0 +1,293 @@ +/* +女装盲盒 +活动时间:2021-3-1至2021-3-31 +活动地址:https://anmp.jd.com/babelDiy/Zeus/3z12ngsd27UR1KfRqdMrMSSg3uxg/index.html +活动入口:京东app-女装馆-赢京豆 +已支持IOS双京东账号,Node.js支持N个京东账号 +脚本兼容: QuantumultX, Surge, Loon, JSBox, Node.js +============Quantumultx=============== +[task_local] +#女装盲盒 +35 1,23 * * * https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_nzmh.js, tag=女装盲盒, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/Color/jd.png, enabled=true + +================Loon============== +[Script] +cron "35 1,23 * * *" script-path=https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_nzmh.js,tag=女装盲盒 + +===============Surge================= +女装盲盒 = type=cron,cronexp="35 1,23 * * *",wake-system=1,timeout=3600,script-path=https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_nzmh.js + +============小火箭========= +女装盲盒 = type=cron,script-path=https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_nzmh.js, cronexpr="35 1,23 * * *", timeout=3600, enable=true + */ +const $ = new Env('女装盲盒抽京豆'); +const notify = $.isNode() ? require('./sendNotify') : ''; +const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; +//Node.js用户请在jdCookie.js处填写京东ck; +//IOS等用户直接用NobyDa的jd cookie +let cookiesArr = [], cookie = '', message; +if ($.isNode()) { + Object.keys(jdCookieNode).forEach((item) => { + cookiesArr.push(jdCookieNode[item]) + }) + if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => { }; +} else { + cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item); +} +!(async () => { + if (!cookiesArr[0]) { + $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/', { "open-url": "https://bean.m.jd.com/" }); + return; + } + console.log('女装盲盒\n' + + '活动时间:2021-3-1至2021-3-31\n' + + '活动地址:https://anmp.jd.com/babelDiy/Zeus/3z12ngsd27UR1KfRqdMrMSSg3uxg/index.html'); + for (let i = 0; i < cookiesArr.length; i++) { + if (cookiesArr[i]) { + cookie = cookiesArr[i]; + $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]) + $.index = i + 1; + $.isLogin = true; + $.nickName = ''; + $.beans = 0 + message = ''; + await TotalBean(); + console.log(`\n******开始【京东账号${$.index}】${$.nickName || $.UserName}*********\n`); + if (!$.isLogin) { + $.msg($.name, `【提示】cookie已失效`, `京东账号${$.index} ${$.nickName || $.UserName}\n请重新登录获取\nhttps://bean.m.jd.com/`, { "open-url": "https://bean.m.jd.com/" }); + if ($.isNode()) { + await notify.sendNotify(`${$.name}cookie已失效 - ${$.UserName}`, `京东账号${$.index} ${$.UserName}\n请重新登录获取cookie`); + } + continue + } + try { + await jdMh('https://anmp.jd.com/babelDiy/Zeus/3z12ngsd27UR1KfRqdMrMSSg3uxg/index.html') + } catch (e) { + $.logErr(e) + } + } + } +})() + .catch((e) => { + $.log('', `❌ ${$.name}, 失败! 原因: ${e}!`, '') + }) + .finally(() => { + $.done(); + }) + +async function jdMh(url) { + try { + await getInfo(url) + await getUserInfo() + await draw() + while ($.userInfo.bless >= $.userInfo.cost_bless_one_time) { + await draw() + await getUserInfo() + await $.wait(500) + } + // await showMsg(); + } catch (e) { + $.logErr(e) + } +} + +function showMsg() { + return new Promise(resolve => { + if ($.beans) { + message += `本次运行获得${$.beans}京豆` + $.msg($.name, '', `京东账号${$.index}${$.nickName}\n${message}`); + } + resolve() + }) +} + +function getInfo(url) { + // console.log(`url:${url}`) + return new Promise(resolve => { + $.get({ + url, + headers: { + Cookie: cookie + } + }, (err, resp, data) => { + try { + $.info = JSON.parse(data.match(/var snsConfig = (.*)/)[1]) + $.prize = JSON.parse($.info.prize) + resolve() + } catch (e) { + console.log(e) + } + }) + }) +} + +function getUserInfo() { + return new Promise(resolve => { + $.get(taskUrl('query'), async (err, resp, data) => { + try { + if (err) { + console.log(`${err},${jsonParse(resp.body)['message']}`) + console.log(`${$.name} API请求失败,请检查网路重试`) + } else { + $.userInfo = JSON.parse(data.match(/query\((.*)\n/)[1]).data + // console.log(`您的好友助力码为${$.userInfo.shareid}`) + console.log(`当前幸运值:${$.userInfo.bless}`) + for (let task of $.info.config.tasks) { + if (!$.userInfo.complete_task_list.includes(task['_id'])) { + console.log(`去做任务${task['_id']}`) + await doTask(task['_id']) + await $.wait(500) + } + } + } + } catch (e) { + $.logErr(e, resp) + } finally { + resolve(data); + } + }) + }) +} + +function doTask(taskId) { + let body = `task_bless=10&taskid=${taskId}` + return new Promise(resolve => { + $.get(taskUrl('completeTask', body), async (err, resp, data) => { + try { + if (err) { + console.log(`${err},${jsonParse(resp.body)['message']}`) + console.log(`${$.name} API请求失败,请检查网路重试`) + } else { + data = JSON.parse(data.match(/query\((.*)\n/)[1]) + if (data.errcode === 8004) { + console.log(`任务完成失败,无效任务ID`) + } else { + if (data.data.complete_task_list.includes(taskId)) { + console.log(`任务完成成功,当前幸运值${data.data.curbless}`) + $.userInfo.bless = data.data.curbless + } + } + } + } catch (e) { + $.logErr(e, resp) + } finally { + resolve(data); + } + }) + }) +} + +function draw() { + return new Promise(resolve => { + $.get(taskUrl('draw'), async (err, resp, data) => { + try { + if (err) { + console.log(`${err},${jsonParse(resp.body)['message']}`) + console.log(`${$.name} API请求失败,请检查网路重试`) + } else { + data = JSON.parse(data.match(/query\((.*)\n/)[1]) + if (data.data && data.data.drawflag) { + if ($.prize.filter(vo => vo.prizeLevel === data.data.level).length > 0) { + console.log(`获得${$.prize.filter(vo => vo.prizeLevel === data.data.level)[0].prizename}`) + $.beans += $.prize.filter(vo => vo.prizeLevel === data.data.level)[0].beansPerNum + } else { + console.log(`抽奖 未中奖`) + } + } + } + } catch (e) { + $.logErr(e, resp) + } finally { + resolve(data); + } + }) + }) +} + +function taskUrl(function_id, body = '') { + body = `activeid=${$.info.activeId}&token=${$.info.actToken}&sceneval=2&shareid=&_=${new Date().getTime()}&callback=query&${body}` + return { + url: `https://wq.jd.com/activet2/piggybank/${function_id}?${body}`, + headers: { + 'Host': 'wq.jd.com', + 'Accept': 'application/json', + 'Accept-Language': 'zh-cn', + 'Content-Type': 'application/json;charset=utf-8', + 'Origin': 'wq.jd.com', + 'User-Agent': 'JD4iPhone/167490 (iPhone; iOS 14.2; Scale/3.00)', + 'Referer': `https://anmp.jd.com/babelDiy/Zeus/xKACpgVjVJM7zPKbd5AGCij5yV9/index.html?wxAppName=jd`, + 'Cookie': cookie + } + } +} + +function TotalBean() { + return new Promise(async resolve => { + const options = { + "url": `https://wq.jd.com/user/info/QueryJDUserInfo?sceneval=2`, + "headers": { + "Accept": "application/json,text/plain, */*", + "Content-Type": "application/x-www-form-urlencoded", + "Accept-Encoding": "gzip, deflate, br", + "Accept-Language": "zh-cn", + "Connection": "keep-alive", + "Cookie": cookie, + "Referer": "https://wqs.jd.com/my/jingdou/my.shtml?sceneval=2", + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1") + } + } + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`) + console.log(`${$.name} API请求失败,请检查网路重试`) + } else { + if (data) { + data = JSON.parse(data); + if (data['retcode'] === 13) { + $.isLogin = false; //cookie过期 + return + } + if (data['retcode'] === 0) { + $.nickName = (data['base'] && data['base'].nickname) || $.UserName; + } else { + $.nickName = $.UserName + } + } else { + console.log(`京东服务器返回空数据`) + } + } + } catch (e) { + $.logErr(e, resp) + } finally { + resolve(); + } + }) + }) +} + +function safeGet(data) { + try { + if (typeof JSON.parse(data) == "object") { + return true; + } + } catch (e) { + console.log(e); + console.log(`京东服务器访问数据为空,请检查自身设备网络情况`); + return false; + } +} + +function jsonParse(str) { + if (typeof str == "string") { + try { + return JSON.parse(str); + } catch (e) { + console.log(e); + $.msg($.name, '', '不要在BoxJS手动复制粘贴修改cookie') + return []; + } + } +} +// prettier-ignore +function Env(t, e) { class s { constructor(t) { this.env = t } send(t, e = "GET") { t = "string" == typeof t ? { url: t } : t; let s = this.get; return "POST" === e && (s = this.post), new Promise((e, i) => { s.call(this, t, (t, s, r) => { t ? i(t) : e(s) }) }) } get(t) { return this.send.call(this.env, t) } post(t) { return this.send.call(this.env, t, "POST") } } return new class { constructor(t, e) { this.name = t, this.http = new s(this), this.data = null, this.dataFile = "box.dat", this.logs = [], this.isMute = !1, this.isNeedRewrite = !1, this.logSeparator = "\n", this.startTime = (new Date).getTime(), Object.assign(this, e), this.log("", `\ud83d\udd14${this.name}, \u5f00\u59cb!`) } isNode() { return "undefined" != typeof module && !!module.exports } isQuanX() { return "undefined" != typeof $task } isSurge() { return "undefined" != typeof $httpClient && "undefined" == typeof $loon } isLoon() { return "undefined" != typeof $loon } toObj(t, e = null) { try { return JSON.parse(t) } catch { return e } } toStr(t, e = null) { try { return JSON.stringify(t) } catch { return e } } getjson(t, e) { let s = e; const i = this.getdata(t); if (i) try { s = JSON.parse(this.getdata(t)) } catch { } return s } setjson(t, e) { try { return this.setdata(JSON.stringify(t), e) } catch { return !1 } } getScript(t) { return new Promise(e => { this.get({ url: t }, (t, s, i) => e(i)) }) } runScript(t, e) { return new Promise(s => { let i = this.getdata("@chavy_boxjs_userCfgs.httpapi"); i = i ? i.replace(/\n/g, "").trim() : i; let r = this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout"); r = r ? 1 * r : 20, r = e && e.timeout ? e.timeout : r; const [o, h] = i.split("@"), a = { url: `http://${h}/v1/scripting/evaluate`, body: { script_text: t, mock_type: "cron", timeout: r }, headers: { "X-Key": o, Accept: "*/*" } }; this.post(a, (t, e, i) => s(i)) }).catch(t => this.logErr(t)) } loaddata() { if (!this.isNode()) return {}; { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e); if (!s && !i) return {}; { const i = s ? t : e; try { return JSON.parse(this.fs.readFileSync(i)) } catch (t) { return {} } } } } writedata() { if (this.isNode()) { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e), r = JSON.stringify(this.data); s ? this.fs.writeFileSync(t, r) : i ? this.fs.writeFileSync(e, r) : this.fs.writeFileSync(t, r) } } lodash_get(t, e, s) { const i = e.replace(/\[(\d+)\]/g, ".$1").split("."); let r = t; for (const t of i) if (r = Object(r)[t], void 0 === r) return s; return r } lodash_set(t, e, s) { return Object(t) !== t ? t : (Array.isArray(e) || (e = e.toString().match(/[^.[\]]+/g) || []), e.slice(0, -1).reduce((t, s, i) => Object(t[s]) === t[s] ? t[s] : t[s] = Math.abs(e[i + 1]) >> 0 == +e[i + 1] ? [] : {}, t)[e[e.length - 1]] = s, t) } getdata(t) { let e = this.getval(t); if (/^@/.test(t)) { const [, s, i] = /^@(.*?)\.(.*?)$/.exec(t), r = s ? this.getval(s) : ""; if (r) try { const t = JSON.parse(r); e = t ? this.lodash_get(t, i, "") : e } catch (t) { e = "" } } return e } setdata(t, e) { let s = !1; if (/^@/.test(e)) { const [, i, r] = /^@(.*?)\.(.*?)$/.exec(e), o = this.getval(i), h = i ? "null" === o ? null : o || "{}" : "{}"; try { const e = JSON.parse(h); this.lodash_set(e, r, t), s = this.setval(JSON.stringify(e), i) } catch (e) { const o = {}; this.lodash_set(o, r, t), s = this.setval(JSON.stringify(o), i) } } else s = this.setval(t, e); return s } getval(t) { return this.isSurge() || this.isLoon() ? $persistentStore.read(t) : this.isQuanX() ? $prefs.valueForKey(t) : this.isNode() ? (this.data = this.loaddata(), this.data[t]) : this.data && this.data[t] || null } setval(t, e) { return this.isSurge() || this.isLoon() ? $persistentStore.write(t, e) : this.isQuanX() ? $prefs.setValueForKey(t, e) : this.isNode() ? (this.data = this.loaddata(), this.data[e] = t, this.writedata(), !0) : this.data && this.data[e] || null } initGotEnv(t) { this.got = this.got ? this.got : require("got"), this.cktough = this.cktough ? this.cktough : require("tough-cookie"), this.ckjar = this.ckjar ? this.ckjar : new this.cktough.CookieJar, t && (t.headers = t.headers ? t.headers : {}, void 0 === t.headers.Cookie && void 0 === t.cookieJar && (t.cookieJar = this.ckjar)) } get(t, e = (() => { })) { t.headers && (delete t.headers["Content-Type"], delete t.headers["Content-Length"]), this.isSurge() || this.isLoon() ? (this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.get(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) })) : this.isQuanX() ? (this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t))) : this.isNode() && (this.initGotEnv(t), this.got(t).on("redirect", (t, e) => { try { if (t.headers["set-cookie"]) { const s = t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString(); this.ckjar.setCookieSync(s, null), e.cookieJar = this.ckjar } } catch (t) { this.logErr(t) } }).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) })) } post(t, e = (() => { })) { if (t.body && t.headers && !t.headers["Content-Type"] && (t.headers["Content-Type"] = "application/x-www-form-urlencoded"), t.headers && delete t.headers["Content-Length"], this.isSurge() || this.isLoon()) this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.post(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) }); else if (this.isQuanX()) t.method = "POST", this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t)); else if (this.isNode()) { this.initGotEnv(t); const { url: s, ...i } = t; this.got.post(s, i).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) }) } } time(t) { let e = { "M+": (new Date).getMonth() + 1, "d+": (new Date).getDate(), "H+": (new Date).getHours(), "m+": (new Date).getMinutes(), "s+": (new Date).getSeconds(), "q+": Math.floor(((new Date).getMonth() + 3) / 3), S: (new Date).getMilliseconds() }; /(y+)/.test(t) && (t = t.replace(RegExp.$1, ((new Date).getFullYear() + "").substr(4 - RegExp.$1.length))); for (let s in e) new RegExp("(" + s + ")").test(t) && (t = t.replace(RegExp.$1, 1 == RegExp.$1.length ? e[s] : ("00" + e[s]).substr(("" + e[s]).length))); return t } msg(e = t, s = "", i = "", r) { const o = t => { if (!t) return t; if ("string" == typeof t) return this.isLoon() ? t : this.isQuanX() ? { "open-url": t } : this.isSurge() ? { url: t } : void 0; if ("object" == typeof t) { if (this.isLoon()) { let e = t.openUrl || t.url || t["open-url"], s = t.mediaUrl || t["media-url"]; return { openUrl: e, mediaUrl: s } } if (this.isQuanX()) { let e = t["open-url"] || t.url || t.openUrl, s = t["media-url"] || t.mediaUrl; return { "open-url": e, "media-url": s } } if (this.isSurge()) { let e = t.url || t.openUrl || t["open-url"]; return { url: e } } } }; this.isMute || (this.isSurge() || this.isLoon() ? $notification.post(e, s, i, o(r)) : this.isQuanX() && $notify(e, s, i, o(r))); let h = ["", "==============\ud83d\udce3\u7cfb\u7edf\u901a\u77e5\ud83d\udce3=============="]; h.push(e), s && h.push(s), i && h.push(i), console.log(h.join("\n")), this.logs = this.logs.concat(h) } log(...t) { t.length > 0 && (this.logs = [...this.logs, ...t]), console.log(t.join(this.logSeparator)) } logErr(t, e) { const s = !this.isSurge() && !this.isQuanX() && !this.isLoon(); s ? this.log("", `\u2757\ufe0f${this.name}, \u9519\u8bef!`, t.stack) : this.log("", `\u2757\ufe0f${this.name}, \u9519\u8bef!`, t) } wait(t) { return new Promise(e => setTimeout(e, t)) } done(t = {}) { const e = (new Date).getTime(), s = (e - this.startTime) / 1e3; this.log("", `\ud83d\udd14${this.name}, \u7ed3\u675f! \ud83d\udd5b ${s} \u79d2`), this.log(), (this.isSurge() || this.isQuanX() || this.isLoon()) && $done(t) } }(t, e) } \ No newline at end of file diff --git a/jd_pigPet.js b/jd_pigPet.js index e7fee223..ffc2162d 100644 --- a/jd_pigPet.js +++ b/jd_pigPet.js @@ -46,12 +46,12 @@ if ($.isNode()) { } if (process.env.PIGPETSHARECODE) { shareId = process.env.PIGPETSHARECODE - } else{ + } else { let res = await getAuthorShareCode('https://raw.githubusercontent.com/zero205/updateTeam/main/shareCodes/pigPet.json') if (!res) { res = await getAuthorShareCode('https://raw.fastgit.org/zero205/updateTeam/main/shareCodes/pigPet.json') } - if (res){ + if (res) { shareId = res[Math.floor((Math.random() * res.length))]; } } diff --git a/jd_plusLottery.js b/jd_plusLottery.js new file mode 100644 index 00000000..83601170 --- /dev/null +++ b/jd_plusLottery.js @@ -0,0 +1,226 @@ +/* +已支持IOS双京东账号,Node.js支持N个京东账号 +脚本兼容: QuantumultX, Surge, Loon, JSBox, Node.js +============Quantumultx=============== +[task_local] +#逛PLUS抽京豆 +18 1 * * * https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_plusLottery.js, tag=逛PLUS抽京豆, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/Color/jd.png, enabled=true + +================Loon============== +[Script] +cron "18 1 * * *" script-path=https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_plusLottery.js,tag=逛PLUS抽京豆 + +===============Surge================= +逛PLUS抽京豆 = type=cron,cronexp="18 1 * * *",wake-system=1,timeout=3600,script-path=https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_plusLottery.js + +============小火箭========= +逛PLUS抽京豆 = type=cron,script-path=https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_plusLottery.js, cronexpr="18 1 * * *", timeout=3600, enable=true +*/ +const $ = new Env('逛PLUS抽京豆'); +const notify = $.isNode() ? require('./sendNotify') : ''; +//Node.js用户请在jdCookie.js处填写京东ck; +const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; +//IOS等用户直接用NobyDa的jd cookie +let cookiesArr = [], cookie = '', message; +if ($.isNode()) { + Object.keys(jdCookieNode).forEach((item) => { + cookiesArr.push(jdCookieNode[item]) + }) + if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => {}; +} else { + cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item); +} +!(async () => { + if (!cookiesArr[0]) { + $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', {"open-url": "https://bean.m.jd.com/bean/signIndex.action"}); + return; + } + for (let i = 0; i < cookiesArr.length; i++) { + if (cookiesArr[i]) { + cookie = cookiesArr[i]; + $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]) + $.index = i + 1; + $.isLogin = true; + $.nickName = ''; + message = ''; + await TotalBean(); + console.log(`\n******开始【京东账号${$.index}】${$.nickName || $.UserName}*********\n`); + if (!$.isLogin) { + $.msg($.name, `【提示】cookie已失效`, `京东账号${$.index} ${$.nickName || $.UserName}\n请重新登录获取\nhttps://bean.m.jd.com/bean/signIndex.action`, {"open-url": "https://bean.m.jd.com/bean/signIndex.action"}); + + if ($.isNode()) { + await notify.sendNotify(`${$.name}cookie已失效 - ${$.UserName}`, `京东账号${$.index} ${$.UserName}\n请重新登录获取cookie`); + } + continue + } + await main() + } + } +})() + .catch((e) => { + $.log('', `❌ ${$.name}, 失败! 原因: ${e}!`, '') + }) + .finally(() => { + $.done(); + }) + +async function main() { + let encryptAssignmentId, exchangeRate, scoreExchangeId + let queryInteractiveInfo = await doApi("queryInteractiveInfo", {"encryptProjectId":"U13AR7JM6UNr2okmamEig7TD4Ef","ext":{"rewardEncryptAssignmentId":null,"needNum":50},"sourceCode":"aceaceqingzhan"}) + for (let key of Object.keys(queryInteractiveInfo.assignmentList)) { + let vo = queryInteractiveInfo.assignmentList[key] + if (vo.userVerificationInfo.userQulification) { + if ([1].includes(vo.assignmentType)) { + console.log(`去做【${vo.assignmentName}】`) + if (vo.ext[vo.ext.extraType][0].status !== 2) { + let doInteractiveAssignment = await doApi("doInteractiveAssignment", {"encryptProjectId":"U13AR7JM6UNr2okmamEig7TD4Ef","encryptAssignmentId":vo.encryptAssignmentId,"itemId":vo.ext[vo.ext.extraType][0].itemId,"sourceCode":"aceaceqingzhan"}) + if (doInteractiveAssignment.subCode === "0") { + for (let key of Object.keys(doInteractiveAssignment.rewardsInfo.successRewards)) { + let successRewards = doInteractiveAssignment.rewardsInfo.successRewards[key] + console.log(`${doInteractiveAssignment.msg},获得${successRewards.quantityDetails[0].quantity}${successRewards.quantityDetails[0].rewardName}`) + } + } else { + console.log(JSON.stringify(doInteractiveAssignment)); + } + await $.wait(2000) + } else { + console.log(`任务已完成`); + } + } else if (vo.assignmentType === 30) { + encryptAssignmentId = vo.encryptAssignmentId; + exchangeRate = vo.exchangeRate + scoreExchangeId = vo.scoreExchangeId + } + } else { + console.log(`您不是PLUS会员,无法参与此活动`) + return + } + } + let queryInteractiveRewardInfo = await doApi("queryInteractiveRewardInfo", {"encryptProjectId":"U13AR7JM6UNr2okmamEig7TD4Ef","ext":{"detailEncryptAssignmentIds":[],"needExchangeRestScore":1,"detailTypeFlag":"1"},"sourceCode":"aceaceqingzhan"}) + let lotteryNum, usedScore + if (queryInteractiveRewardInfo.subCode === "0") { + usedScore = queryInteractiveRewardInfo.exchangeRestScoreMap[scoreExchangeId] + lotteryNum = Math.floor(usedScore / exchangeRate) + console.log(`\n可以抽奖${lotteryNum}次`) + for (let i = lotteryNum; i > 0; i--) { + let doInteractiveAssignment = await doApi("doInteractiveAssignment", {"encryptProjectId":"U13AR7JM6UNr2okmamEig7TD4Ef","encryptAssignmentId":encryptAssignmentId,"completionFlag":true,"ext":{"exchangeNum":1},"sourceCode":"aceaceqingzhan"}) + if (doInteractiveAssignment.subCode === "0") { + for (let key of Object.keys(doInteractiveAssignment.rewardsInfo.successRewards)) { + let successRewards = doInteractiveAssignment.rewardsInfo.successRewards[key] + if (key === "3") { + console.log(`获得${successRewards[0].quantity}京豆`); + } else { + console.log(JSON.stringify(doInteractiveAssignment)); + } + } + } else { + console.log(JSON.stringify(doInteractiveAssignment)); + } + await $.wait(2000) + } + } +} + +function doApi(functionId, body) { + return new Promise(resolve=> { + let options = { + url: `https://api.m.jd.com/client.action?functionId=${functionId}`, + body: `appid=babelh5&body=${encodeURIComponent(JSON.stringify(body))}&sign=11&t=${Date.now()}`, + headers: { + "Host": "api.m.jd.com", + "Accept": "*/*", + "Content-Type": "application/x-www-form-urlencoded", + "Origin": "https://prodev.m.jd.com", + "Accept-Language": "zh-CN,zh-Hans;q=0.9", + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), + "Referer": "https://prodev.m.jd.com/", + "Accept-Encoding": "gzip, deflate, br", + "Cookie": cookie + } + } + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log(JSON.stringify(err)) + console.log(`${$.name} ${functionId} API请求失败,请检查网路重试`); + resolve() + } else { + if (safeGet(data)) { + data = JSON.parse(data) + } + } + } catch (e) { + $.logErr(e, resp); + resolve() + } finally { + resolve(data) + } + }) + }) +} + +function TotalBean() { + return new Promise(async resolve => { + const options = { + url: "https://wq.jd.com/user_new/info/GetJDUserInfoUnion?sceneval=2", + headers: { + Host: "wq.jd.com", + Accept: "*/*", + Connection: "keep-alive", + Cookie: cookie, + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), + "Accept-Language": "zh-cn", + "Referer": "https://home.m.jd.com/myJd/newhome.action?sceneval=2&ufc=&", + "Accept-Encoding": "gzip, deflate, br" + } + } + $.get(options, (err, resp, data) => { + try { + if (err) { + $.logErr(err) + } else { + if (data) { + data = JSON.parse(data); + if (data['retcode'] === 1001) { + $.isLogin = false; //cookie过期 + return; + } + if (data['retcode'] === 0 && data.data && data.data.hasOwnProperty("userInfo")) { + $.nickName = data.data.userInfo.baseInfo.nickname; + } + } else { + console.log('京东服务器返回空数据'); + } + } + } catch (e) { + $.logErr(e) + } finally { + resolve(); + } + }) + }) +} +function safeGet(data) { + try { + if (typeof JSON.parse(data) == "object") { + return true; + } + } catch (e) { + console.log(e); + console.log(`京东服务器访问数据为空,请检查自身设备网络情况`); + return false; + } +} +function jsonParse(str) { + if (typeof str == "string") { + try { + return JSON.parse(str); + } catch (e) { + console.log(e); + $.msg($.name, '', '请勿随意在BoxJs输入框修改内容\n建议通过脚本去获取cookie') + return []; + } + } +} +// prettier-ignore +function Env(t,e){"undefined"!=typeof process&&JSON.stringify(process.env).indexOf("GITHUB")>-1&&process.exit(0);class s{constructor(t){this.env=t}send(t,e="GET"){t="string"==typeof t?{url:t}:t;let s=this.get;return"POST"===e&&(s=this.post),new Promise((e,i)=>{s.call(this,t,(t,s,r)=>{t?i(t):e(s)})})}get(t){return this.send.call(this.env,t)}post(t){return this.send.call(this.env,t,"POST")}}return new class{constructor(t,e){this.name=t,this.http=new s(this),this.data=null,this.dataFile="box.dat",this.logs=[],this.isMute=!1,this.isNeedRewrite=!1,this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,e),this.log("",`🔔${this.name}, 开始!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}toObj(t,e=null){try{return JSON.parse(t)}catch{return e}}toStr(t,e=null){try{return JSON.stringify(t)}catch{return e}}getjson(t,e){let s=e;const i=this.getdata(t);if(i)try{s=JSON.parse(this.getdata(t))}catch{}return s}setjson(t,e){try{return this.setdata(JSON.stringify(t),e)}catch{return!1}}getScript(t){return new Promise(e=>{this.get({url:t},(t,s,i)=>e(i))})}runScript(t,e){return new Promise(s=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let r=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");r=r?1*r:20,r=e&&e.timeout?e.timeout:r;const[o,h]=i.split("@"),n={url:`http://${h}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:r},headers:{"X-Key":o,Accept:"*/*"}};this.post(n,(t,e,i)=>s(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e);if(!s&&!i)return{};{const i=s?t:e;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e),r=JSON.stringify(this.data);s?this.fs.writeFileSync(t,r):i?this.fs.writeFileSync(e,r):this.fs.writeFileSync(t,r)}}lodash_get(t,e,s){const i=e.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(const t of i)if(r=Object(r)[t],void 0===r)return s;return r}lodash_set(t,e,s){return Object(t)!==t?t:(Array.isArray(e)||(e=e.toString().match(/[^.[\]]+/g)||[]),e.slice(0,-1).reduce((t,s,i)=>Object(t[s])===t[s]?t[s]:t[s]=Math.abs(e[i+1])>>0==+e[i+1]?[]:{},t)[e[e.length-1]]=s,t)}getdata(t){let e=this.getval(t);if(/^@/.test(t)){const[,s,i]=/^@(.*?)\.(.*?)$/.exec(t),r=s?this.getval(s):"";if(r)try{const t=JSON.parse(r);e=t?this.lodash_get(t,i,""):e}catch(t){e=""}}return e}setdata(t,e){let s=!1;if(/^@/.test(e)){const[,i,r]=/^@(.*?)\.(.*?)$/.exec(e),o=this.getval(i),h=i?"null"===o?null:o||"{}":"{}";try{const e=JSON.parse(h);this.lodash_set(e,r,t),s=this.setval(JSON.stringify(e),i)}catch(e){const o={};this.lodash_set(o,r,t),s=this.setval(JSON.stringify(o),i)}}else s=this.setval(t,e);return s}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,e){return this.isSurge()||this.isLoon()?$persistentStore.write(t,e):this.isQuanX()?$prefs.setValueForKey(t,e):this.isNode()?(this.data=this.loaddata(),this.data[e]=t,this.writedata(),!0):this.data&&this.data[e]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,e=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?(this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.get(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)})):this.isQuanX()?(this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t))):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,e)=>{try{if(t.headers["set-cookie"]){const s=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();s&&this.ckjar.setCookieSync(s,null),e.cookieJar=this.ckjar}}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)}))}post(t,e=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),t.headers&&delete t.headers["Content-Length"],this.isSurge()||this.isLoon())this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.post(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)});else if(this.isQuanX())t.method="POST",this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t));else if(this.isNode()){this.initGotEnv(t);const{url:s,...i}=t;this.got.post(s,i).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)})}}time(t,e=null){const s=e?new Date(e):new Date;let i={"M+":s.getMonth()+1,"d+":s.getDate(),"H+":s.getHours(),"m+":s.getMinutes(),"s+":s.getSeconds(),"q+":Math.floor((s.getMonth()+3)/3),S:s.getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(s.getFullYear()+"").substr(4-RegExp.$1.length)));for(let e in i)new RegExp("("+e+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?i[e]:("00"+i[e]).substr((""+i[e]).length)));return t}msg(e=t,s="",i="",r){const o=t=>{if(!t)return t;if("string"==typeof t)return this.isLoon()?t:this.isQuanX()?{"open-url":t}:this.isSurge()?{url:t}:void 0;if("object"==typeof t){if(this.isLoon()){let e=t.openUrl||t.url||t["open-url"],s=t.mediaUrl||t["media-url"];return{openUrl:e,mediaUrl:s}}if(this.isQuanX()){let e=t["open-url"]||t.url||t.openUrl,s=t["media-url"]||t.mediaUrl;return{"open-url":e,"media-url":s}}if(this.isSurge()){let e=t.url||t.openUrl||t["open-url"];return{url:e}}}};if(this.isMute||(this.isSurge()||this.isLoon()?$notification.post(e,s,i,o(r)):this.isQuanX()&&$notify(e,s,i,o(r))),!this.isMuteLog){let t=["","==============📣系统通知📣=============="];t.push(e),s&&t.push(s),i&&t.push(i),console.log(t.join("\n")),this.logs=this.logs.concat(t)}}log(...t){t.length>0&&(this.logs=[...this.logs,...t]),console.log(t.join(this.logSeparator))}logErr(t,e){const s=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();s?this.log("",`❗️${this.name}, 错误!`,t.stack):this.log("",`❗️${this.name}, 错误!`,t)}wait(t){return new Promise(e=>setTimeout(e,t))}done(t={}){const e=(new Date).getTime(),s=(e-this.startTime)/1e3;this.log("",`🔔${this.name}, 结束! 🕛 ${s} 秒`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,e)} \ No newline at end of file diff --git a/jd_sign_graphics.js b/jd_sign_graphics.js index 5454dec5..6843c29a 100644 --- a/jd_sign_graphics.js +++ b/jd_sign_graphics.js @@ -17,8 +17,6 @@ const validatorCount = process.env.JDJR_validator_Count ? process.env.JDJR_valid const PNG = require('png-js'); const https = require('https'); const stream = require('stream'); -const { promisify } = require('util'); -const pipelineAsync = promisify(stream.pipeline); const zlib = require('zlib'); const vm = require('vm'); @@ -721,10 +719,11 @@ class JDJRValidator { let res = response; if (res.headers['content-encoding'] === 'gzip') { const unzipStream = new stream.PassThrough(); - pipelineAsync( + stream.pipeline( response, zlib.createGunzip(), unzipStream, + reject, ); res = unzipStream; } diff --git a/backUp/jd_speed_redpocke.js b/jd_speed_redpocke.js similarity index 61% rename from backUp/jd_speed_redpocke.js rename to jd_speed_redpocke.js index 63bac04f..95970eae 100644 --- a/backUp/jd_speed_redpocke.js +++ b/jd_speed_redpocke.js @@ -1,9 +1,6 @@ /* 京东极速版红包 自动提现微信现金 -更新时间:2021-5-31 -活动时间:2021-4-6至2021-5-30 -活动地址:https://prodev.m.jd.com/jdlite/active/31U4T6S4PbcK83HyLPioeCWrD63j/index.html 活动入口:京东极速版-领红包 已支持IOS双京东账号,Node.js支持N个京东账号 脚本兼容: QuantumultX, Surge, Loon, JSBox, Node.js @@ -24,12 +21,12 @@ cron "20 0,22 * * *" script-path=https://gitee.com/lxk0301/jd_scripts/raw/master */ const $ = new Env('京东极速版红包'); - const notify = $.isNode() ? require('./sendNotify') : ''; //Node.js用户请在jdCookie.js处填写京东ck; const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; let cookiesArr = [], cookie = '', message; -const linkIds = ["7ya6o83WSbNhrbYJqsMfFA","Eu7-E0CUzqYyhZJo9d3YkQ"]; +const linkIds = ["Eu7-E0CUzqYyhZJo9d3YkQ"]; +const codeIds = ["AEIIwA6L3k8ePzU3fXDzg8sPlLyAUpJKplSENnlQTGA", "AghrnocwyBzh_6aDh3BPmS5acIv86eToUuynlVFt-GU", "VqFbegTWUP9DJrZBj0UUJw"][Math.floor((Math.random() * 3))]; const signLinkId = '9WA12jYGulArzWS7vcrwhw'; let linkId @@ -37,7 +34,7 @@ if ($.isNode()) { Object.keys(jdCookieNode).forEach((item) => { cookiesArr.push(jdCookieNode[item]) }) - if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => {}; + if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => { }; if (JSON.stringify(process.env).indexOf('GITHUB') > -1) process.exit(0); } else { cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item); @@ -45,7 +42,7 @@ if ($.isNode()) { !(async () => { if (!cookiesArr[0]) { - $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', {"open-url": "https://bean.m.jd.com/bean/signIndex.action"}); + $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', { "open-url": "https://bean.m.jd.com/bean/signIndex.action" }); return; } for (let i = 0; i < cookiesArr.length; i++) { @@ -60,7 +57,7 @@ if ($.isNode()) { await TotalBean(); console.log(`\n******开始【京东账号${$.index}】${$.nickName || $.UserName}*********\n`); if (!$.isLogin) { - $.msg($.name, `【提示】cookie已失效`, `京东账号${$.index} ${$.nickName || $.UserName}\n请重新登录获取\nhttps://bean.m.jd.com/bean/signIndex.action`, {"open-url": "https://bean.m.jd.com/bean/signIndex.action"}); + $.msg($.name, `【提示】cookie已失效`, `京东账号${$.index} ${$.nickName || $.UserName}\n请重新登录获取\nhttps://bean.m.jd.com/bean/signIndex.action`, { "open-url": "https://bean.m.jd.com/bean/signIndex.action" }); if ($.isNode()) { await notify.sendNotify(`${$.name}cookie已失效 - ${$.UserName}`, `京东账号${$.index} ${$.UserName}\n请重新登录获取cookie`); @@ -74,21 +71,21 @@ if ($.isNode()) { } } })() - .catch((e) => { - $.log('', `❌ ${$.name}, 失败! 原因: ${e}!`, '') - }) - .finally(() => { - $.done(); - }) + .catch((e) => { + $.log('', `❌ ${$.name}, 失败! 原因: ${e}!`, '') + }) + .finally(() => { + $.done(); + }) async function jsRedPacket() { try { await invite2(); -// await sign();//极速版签到提现 + // await sign();//极速版签到提现 await reward_query(); - for (let i = 0; i < 5; ++i) { + for (let i = 0; i < 3; ++i) { await redPacket();//开红包 - await $.wait(1000) + await $.wait(2000) } await getPacketList();//领红包提现 await signPrizeDetailList(); @@ -135,7 +132,7 @@ function showMsg() { } async function sign() { return new Promise(resolve => { - const body = {"linkId":signLinkId,"serviceName":"dayDaySignGetRedEnvelopeSignService","business":1}; + const body = { "linkId": signLinkId, "serviceName": "dayDaySignGetRedEnvelopeSignService", "business": 1 }; const options = { url: `https://api.m.jd.com`, body: `functionId=apSignIn_day&body=${escape(JSON.stringify(body))}&_t=${+new Date()}&appid=activities_platform`, @@ -183,7 +180,7 @@ async function sign() { function reward_query() { return new Promise(resolve => { $.get(taskGetUrl("spring_reward_query", { - "inviter": "7057MkYN_M4C3K_QNqU2YQ", + "inviter": `"${codeIds}"`, linkId }), async (err, resp, data) => { try { @@ -210,39 +207,39 @@ function reward_query() { } async function redPacket() { return new Promise(resolve => { - $.get(taskGetUrl("spring_reward_receive",{"inviter": "7057MkYN_M4C3K_QNqU2YQ",linkId}), - async (err, resp, data) => { - try { - if (err) { - console.log(`${JSON.stringify(err)}`) - console.log(`${$.name} API请求失败,请检查网路重试`) - } else { - if (safeGet(data)) { - data = JSON.parse(data); - if (data.code === 0) { - if (data.data.received.prizeType !== 1) { - message += `获得${data.data.received.prizeDesc}\n` - console.log(`获得${data.data.received.prizeDesc}`) - } else { - console.log("获得优惠券") - } + $.get(taskGetUrl("spring_reward_receive", { "inviter": `"${codeIds}"`, linkId }), + async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`) + console.log(`${$.name} API请求失败,请检查网路重试`) + } else { + if (safeGet(data)) { + data = JSON.parse(data); + if (data.code === 0) { + if (data.data.received.prizeType !== 1) { + message += `获得${data.data.received.prizeDesc}\n` + console.log(`获得${data.data.received.prizeDesc}`) } else { - console.log(data.errMsg) + console.log("获得优惠券") } + } else { + console.log(data.errMsg) } } - } catch (e) { - $.logErr(e, resp) - } finally { - resolve(data); } - }) + } catch (e) { + $.logErr(e, resp) + } finally { + resolve(data); + } + }) }) } function getPacketList() { return new Promise(resolve => { - $.get(taskGetUrl("spring_reward_list",{"pageNum":1,"pageSize":100,linkId,"inviter":"7057MkYN_M4C3K_QNqU2YQ"}), async (err, resp, data) => { + $.get(taskGetUrl("spring_reward_list", { "pageNum": 1, "pageSize": 100, linkId, "inviter": `"${codeIds}"` }), async (err, resp, data) => { try { if (err) { console.log(`${JSON.stringify(err)}`) @@ -251,11 +248,11 @@ function getPacketList() { if (safeGet(data)) { data = JSON.parse(data); if (data.code === 0) { - for(let item of data.data.items.filter(vo => vo.prizeType===4)){ - if(item.state===0){ + for (let item of data.data.items.filter(vo => vo.prizeType === 4)) { + if (item.state === 0) { console.log(`去提现${item.amount}微信现金`) message += `提现${item.amount}微信现金,` - await cashOut(item.id,item.poolBaseId,item.prizeGroupId,item.prizeBaseId) + await cashOut(item.id, item.poolBaseId, item.prizeGroupId, item.prizeBaseId) } } } else { @@ -273,7 +270,7 @@ function getPacketList() { } function signPrizeDetailList() { return new Promise(resolve => { - const body = {"linkId":signLinkId,"serviceName":"dayDaySignGetRedEnvelopeSignService","business":1,"pageSize":20,"page":1}; + const body = { "linkId": signLinkId, "serviceName": "dayDaySignGetRedEnvelopeSignService", "business": 1, "pageSize": 20, "page": 1 }; const options = { url: `https://api.m.jd.com`, body: `functionId=signPrizeDetailList&body=${escape(JSON.stringify(body))}&_t=${+new Date()}&appid=activities_platform`, @@ -380,7 +377,7 @@ function apCashWithDraw(id, poolBaseId, prizeGroupId, prizeBaseId) { }) }) } -function cashOut(id,poolBaseId,prizeGroupId,prizeBaseId,) { +function cashOut(id, poolBaseId, prizeGroupId, prizeBaseId,) { let body = { "businessSource": "SPRING_FESTIVAL_RED_ENVELOPE", "base": { @@ -395,7 +392,7 @@ function cashOut(id,poolBaseId,prizeGroupId,prizeBaseId,) { "inviter": "" } return new Promise(resolve => { - $.post(taskPostUrl("apCashWithDraw",body), async (err, resp, data) => { + $.post(taskPostUrl("apCashWithDraw", body), async (err, resp, data) => { try { if (err) { console.log(`${JSON.stringify(err)}`) @@ -530,4 +527,4 @@ function jsonParse(str) { } } // prettier-ignore -function Env(t,e){"undefined"!=typeof process&&JSON.stringify(process.env).indexOf("GITHUB")>-1&&process.exit(0);class s{constructor(t){this.env=t}send(t,e="GET"){t="string"==typeof t?{url:t}:t;let s=this.get;return"POST"===e&&(s=this.post),new Promise((e,i)=>{s.call(this,t,(t,s,r)=>{t?i(t):e(s)})})}get(t){return this.send.call(this.env,t)}post(t){return this.send.call(this.env,t,"POST")}}return new class{constructor(t,e){this.name=t,this.http=new s(this),this.data=null,this.dataFile="box.dat",this.logs=[],this.isMute=!1,this.isNeedRewrite=!1,this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,e),this.log("",`🔔${this.name}, 开始!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}toObj(t,e=null){try{return JSON.parse(t)}catch{return e}}toStr(t,e=null){try{return JSON.stringify(t)}catch{return e}}getjson(t,e){let s=e;const i=this.getdata(t);if(i)try{s=JSON.parse(this.getdata(t))}catch{}return s}setjson(t,e){try{return this.setdata(JSON.stringify(t),e)}catch{return!1}}getScript(t){return new Promise(e=>{this.get({url:t},(t,s,i)=>e(i))})}runScript(t,e){return new Promise(s=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let r=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");r=r?1*r:20,r=e&&e.timeout?e.timeout:r;const[o,h]=i.split("@"),n={url:`http://${h}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:r},headers:{"X-Key":o,Accept:"*/*"}};this.post(n,(t,e,i)=>s(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e);if(!s&&!i)return{};{const i=s?t:e;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e),r=JSON.stringify(this.data);s?this.fs.writeFileSync(t,r):i?this.fs.writeFileSync(e,r):this.fs.writeFileSync(t,r)}}lodash_get(t,e,s){const i=e.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(const t of i)if(r=Object(r)[t],void 0===r)return s;return r}lodash_set(t,e,s){return Object(t)!==t?t:(Array.isArray(e)||(e=e.toString().match(/[^.[\]]+/g)||[]),e.slice(0,-1).reduce((t,s,i)=>Object(t[s])===t[s]?t[s]:t[s]=Math.abs(e[i+1])>>0==+e[i+1]?[]:{},t)[e[e.length-1]]=s,t)}getdata(t){let e=this.getval(t);if(/^@/.test(t)){const[,s,i]=/^@(.*?)\.(.*?)$/.exec(t),r=s?this.getval(s):"";if(r)try{const t=JSON.parse(r);e=t?this.lodash_get(t,i,""):e}catch(t){e=""}}return e}setdata(t,e){let s=!1;if(/^@/.test(e)){const[,i,r]=/^@(.*?)\.(.*?)$/.exec(e),o=this.getval(i),h=i?"null"===o?null:o||"{}":"{}";try{const e=JSON.parse(h);this.lodash_set(e,r,t),s=this.setval(JSON.stringify(e),i)}catch(e){const o={};this.lodash_set(o,r,t),s=this.setval(JSON.stringify(o),i)}}else s=this.setval(t,e);return s}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,e){return this.isSurge()||this.isLoon()?$persistentStore.write(t,e):this.isQuanX()?$prefs.setValueForKey(t,e):this.isNode()?(this.data=this.loaddata(),this.data[e]=t,this.writedata(),!0):this.data&&this.data[e]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,e=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?(this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.get(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)})):this.isQuanX()?(this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t))):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,e)=>{try{if(t.headers["set-cookie"]){const s=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();s&&this.ckjar.setCookieSync(s,null),e.cookieJar=this.ckjar}}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)}))}post(t,e=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),t.headers&&delete t.headers["Content-Length"],this.isSurge()||this.isLoon())this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.post(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)});else if(this.isQuanX())t.method="POST",this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t));else if(this.isNode()){this.initGotEnv(t);const{url:s,...i}=t;this.got.post(s,i).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)})}}time(t,e=null){const s=e?new Date(e):new Date;let i={"M+":s.getMonth()+1,"d+":s.getDate(),"H+":s.getHours(),"m+":s.getMinutes(),"s+":s.getSeconds(),"q+":Math.floor((s.getMonth()+3)/3),S:s.getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(s.getFullYear()+"").substr(4-RegExp.$1.length)));for(let e in i)new RegExp("("+e+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?i[e]:("00"+i[e]).substr((""+i[e]).length)));return t}msg(e=t,s="",i="",r){const o=t=>{if(!t)return t;if("string"==typeof t)return this.isLoon()?t:this.isQuanX()?{"open-url":t}:this.isSurge()?{url:t}:void 0;if("object"==typeof t){if(this.isLoon()){let e=t.openUrl||t.url||t["open-url"],s=t.mediaUrl||t["media-url"];return{openUrl:e,mediaUrl:s}}if(this.isQuanX()){let e=t["open-url"]||t.url||t.openUrl,s=t["media-url"]||t.mediaUrl;return{"open-url":e,"media-url":s}}if(this.isSurge()){let e=t.url||t.openUrl||t["open-url"];return{url:e}}}};if(this.isMute||(this.isSurge()||this.isLoon()?$notification.post(e,s,i,o(r)):this.isQuanX()&&$notify(e,s,i,o(r))),!this.isMuteLog){let t=["","==============📣系统通知📣=============="];t.push(e),s&&t.push(s),i&&t.push(i),console.log(t.join("\n")),this.logs=this.logs.concat(t)}}log(...t){t.length>0&&(this.logs=[...this.logs,...t]),console.log(t.join(this.logSeparator))}logErr(t,e){const s=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();s?this.log("",`❗️${this.name}, 错误!`,t.stack):this.log("",`❗️${this.name}, 错误!`,t)}wait(t){return new Promise(e=>setTimeout(e,t))}done(t={}){const e=(new Date).getTime(),s=(e-this.startTime)/1e3;this.log("",`🔔${this.name}, 结束! 🕛 ${s} 秒`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,e)} +function Env(t, e) { "undefined" != typeof process && JSON.stringify(process.env).indexOf("GITHUB") > -1 && process.exit(0); class s { constructor(t) { this.env = t } send(t, e = "GET") { t = "string" == typeof t ? { url: t } : t; let s = this.get; return "POST" === e && (s = this.post), new Promise((e, i) => { s.call(this, t, (t, s, r) => { t ? i(t) : e(s) }) }) } get(t) { return this.send.call(this.env, t) } post(t) { return this.send.call(this.env, t, "POST") } } return new class { constructor(t, e) { this.name = t, this.http = new s(this), this.data = null, this.dataFile = "box.dat", this.logs = [], this.isMute = !1, this.isNeedRewrite = !1, this.logSeparator = "\n", this.startTime = (new Date).getTime(), Object.assign(this, e), this.log("", `🔔${this.name}, 开始!`) } isNode() { return "undefined" != typeof module && !!module.exports } isQuanX() { return "undefined" != typeof $task } isSurge() { return "undefined" != typeof $httpClient && "undefined" == typeof $loon } isLoon() { return "undefined" != typeof $loon } toObj(t, e = null) { try { return JSON.parse(t) } catch { return e } } toStr(t, e = null) { try { return JSON.stringify(t) } catch { return e } } getjson(t, e) { let s = e; const i = this.getdata(t); if (i) try { s = JSON.parse(this.getdata(t)) } catch { } return s } setjson(t, e) { try { return this.setdata(JSON.stringify(t), e) } catch { return !1 } } getScript(t) { return new Promise(e => { this.get({ url: t }, (t, s, i) => e(i)) }) } runScript(t, e) { return new Promise(s => { let i = this.getdata("@chavy_boxjs_userCfgs.httpapi"); i = i ? i.replace(/\n/g, "").trim() : i; let r = this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout"); r = r ? 1 * r : 20, r = e && e.timeout ? e.timeout : r; const [o, h] = i.split("@"), n = { url: `http://${h}/v1/scripting/evaluate`, body: { script_text: t, mock_type: "cron", timeout: r }, headers: { "X-Key": o, Accept: "*/*" } }; this.post(n, (t, e, i) => s(i)) }).catch(t => this.logErr(t)) } loaddata() { if (!this.isNode()) return {}; { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e); if (!s && !i) return {}; { const i = s ? t : e; try { return JSON.parse(this.fs.readFileSync(i)) } catch (t) { return {} } } } } writedata() { if (this.isNode()) { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e), r = JSON.stringify(this.data); s ? this.fs.writeFileSync(t, r) : i ? this.fs.writeFileSync(e, r) : this.fs.writeFileSync(t, r) } } lodash_get(t, e, s) { const i = e.replace(/\[(\d+)\]/g, ".$1").split("."); let r = t; for (const t of i) if (r = Object(r)[t], void 0 === r) return s; return r } lodash_set(t, e, s) { return Object(t) !== t ? t : (Array.isArray(e) || (e = e.toString().match(/[^.[\]]+/g) || []), e.slice(0, -1).reduce((t, s, i) => Object(t[s]) === t[s] ? t[s] : t[s] = Math.abs(e[i + 1]) >> 0 == +e[i + 1] ? [] : {}, t)[e[e.length - 1]] = s, t) } getdata(t) { let e = this.getval(t); if (/^@/.test(t)) { const [, s, i] = /^@(.*?)\.(.*?)$/.exec(t), r = s ? this.getval(s) : ""; if (r) try { const t = JSON.parse(r); e = t ? this.lodash_get(t, i, "") : e } catch (t) { e = "" } } return e } setdata(t, e) { let s = !1; if (/^@/.test(e)) { const [, i, r] = /^@(.*?)\.(.*?)$/.exec(e), o = this.getval(i), h = i ? "null" === o ? null : o || "{}" : "{}"; try { const e = JSON.parse(h); this.lodash_set(e, r, t), s = this.setval(JSON.stringify(e), i) } catch (e) { const o = {}; this.lodash_set(o, r, t), s = this.setval(JSON.stringify(o), i) } } else s = this.setval(t, e); return s } getval(t) { return this.isSurge() || this.isLoon() ? $persistentStore.read(t) : this.isQuanX() ? $prefs.valueForKey(t) : this.isNode() ? (this.data = this.loaddata(), this.data[t]) : this.data && this.data[t] || null } setval(t, e) { return this.isSurge() || this.isLoon() ? $persistentStore.write(t, e) : this.isQuanX() ? $prefs.setValueForKey(t, e) : this.isNode() ? (this.data = this.loaddata(), this.data[e] = t, this.writedata(), !0) : this.data && this.data[e] || null } initGotEnv(t) { this.got = this.got ? this.got : require("got"), this.cktough = this.cktough ? this.cktough : require("tough-cookie"), this.ckjar = this.ckjar ? this.ckjar : new this.cktough.CookieJar, t && (t.headers = t.headers ? t.headers : {}, void 0 === t.headers.Cookie && void 0 === t.cookieJar && (t.cookieJar = this.ckjar)) } get(t, e = (() => { })) { t.headers && (delete t.headers["Content-Type"], delete t.headers["Content-Length"]), this.isSurge() || this.isLoon() ? (this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.get(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) })) : this.isQuanX() ? (this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t))) : this.isNode() && (this.initGotEnv(t), this.got(t).on("redirect", (t, e) => { try { if (t.headers["set-cookie"]) { const s = t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString(); s && this.ckjar.setCookieSync(s, null), e.cookieJar = this.ckjar } } catch (t) { this.logErr(t) } }).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) })) } post(t, e = (() => { })) { if (t.body && t.headers && !t.headers["Content-Type"] && (t.headers["Content-Type"] = "application/x-www-form-urlencoded"), t.headers && delete t.headers["Content-Length"], this.isSurge() || this.isLoon()) this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.post(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) }); else if (this.isQuanX()) t.method = "POST", this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t)); else if (this.isNode()) { this.initGotEnv(t); const { url: s, ...i } = t; this.got.post(s, i).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) }) } } time(t, e = null) { const s = e ? new Date(e) : new Date; let i = { "M+": s.getMonth() + 1, "d+": s.getDate(), "H+": s.getHours(), "m+": s.getMinutes(), "s+": s.getSeconds(), "q+": Math.floor((s.getMonth() + 3) / 3), S: s.getMilliseconds() }; /(y+)/.test(t) && (t = t.replace(RegExp.$1, (s.getFullYear() + "").substr(4 - RegExp.$1.length))); for (let e in i) new RegExp("(" + e + ")").test(t) && (t = t.replace(RegExp.$1, 1 == RegExp.$1.length ? i[e] : ("00" + i[e]).substr(("" + i[e]).length))); return t } msg(e = t, s = "", i = "", r) { const o = t => { if (!t) return t; if ("string" == typeof t) return this.isLoon() ? t : this.isQuanX() ? { "open-url": t } : this.isSurge() ? { url: t } : void 0; if ("object" == typeof t) { if (this.isLoon()) { let e = t.openUrl || t.url || t["open-url"], s = t.mediaUrl || t["media-url"]; return { openUrl: e, mediaUrl: s } } if (this.isQuanX()) { let e = t["open-url"] || t.url || t.openUrl, s = t["media-url"] || t.mediaUrl; return { "open-url": e, "media-url": s } } if (this.isSurge()) { let e = t.url || t.openUrl || t["open-url"]; return { url: e } } } }; if (this.isMute || (this.isSurge() || this.isLoon() ? $notification.post(e, s, i, o(r)) : this.isQuanX() && $notify(e, s, i, o(r))), !this.isMuteLog) { let t = ["", "==============📣系统通知📣=============="]; t.push(e), s && t.push(s), i && t.push(i), console.log(t.join("\n")), this.logs = this.logs.concat(t) } } log(...t) { t.length > 0 && (this.logs = [...this.logs, ...t]), console.log(t.join(this.logSeparator)) } logErr(t, e) { const s = !this.isSurge() && !this.isQuanX() && !this.isLoon(); s ? this.log("", `❗️${this.name}, 错误!`, t.stack) : this.log("", `❗️${this.name}, 错误!`, t) } wait(t) { return new Promise(e => setTimeout(e, t)) } done(t = {}) { const e = (new Date).getTime(), s = (e - this.startTime) / 1e3; this.log("", `🔔${this.name}, 结束! 🕛 ${s} 秒`), this.log(), (this.isSurge() || this.isQuanX() || this.isLoon()) && $done(t) } }(t, e) } diff --git a/jd_speed_sign.js b/jd_speed_sign.js index 80871220..128a060e 100644 --- a/jd_speed_sign.js +++ b/jd_speed_sign.js @@ -798,8 +798,9 @@ function taskGetUrl(function_id, body) { function invite2() { let inviterId = [ "/eNHdfn6fP+TFwVda3ipjWwvTFqeKBZaRG38adWABKk=", - "Sev6JWjut6GyaEHJIWpSQQ==" - ][Math.floor((Math.random() * 2))] + "Sev6JWjut6GyaEHJIWpSQQ==", + "Cg7WMrLsk/PPSHaOd9q2ULzDByNly0QecJ4K7QiZhLk=" + ][Math.floor((Math.random() * 3))] let headers = { 'Host': 'api.m.jd.com', 'accept': 'application/json, text/plain, */*', @@ -829,10 +830,9 @@ function invite() { "/eNHdfn6fP+TFwVda3ipjWwvTFqeKBZaRG38adWABKk=", "R+eeS9UrTadw7yIF7ubkxBOARQK0BNXiQLVF0TyAf4Q=", "Cg7WMrLsk/PPSHaOd9q2ULzDByNly0QecJ4K7QiZhLk=", - "4OAzIinjvoFYHDImve1/VA==", "N0xw0OCPJTUt8xzWZPWs3w==", "Sev6JWjut6GyaEHJIWpSQQ==" - ][Math.floor((Math.random() * 6))] + ][Math.floor((Math.random() * 5))] var headers = { 'Host': 'api.m.jd.com', 'accept': 'application/json, text/plain, */*', diff --git a/jd_tyt.js b/jd_tyt.js index 80213b39..495b2bc8 100644 --- a/jd_tyt.js +++ b/jd_tyt.js @@ -16,6 +16,7 @@ const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; //IOS等用户直接用NobyDa的jd cookie let cookiesArr = [], cookie = ''; let tytpacketId = ''; +let actId = "49f40d2f40b3470e8d6c39aa4866c7ff"; // if (process.env.tytpacketId) { // tytpacketId = process.env.tytpacketId; // } @@ -41,7 +42,7 @@ const JD_API_HOST = 'https://api.m.jd.com/client.action'; $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', { "open-url": "https://bean.m.jd.com/bean/signIndex.action" }); return; } - console.log(`\n******北京时间15点后会助力【zero205】,介意请勿运行******\n`); + console.log(`\n******北京时间12点后会助力【zero205】,介意请勿运行******\n`); for (let i = 0; i < cookiesArr.length; i++) { if (cookiesArr[i]) { cookie = cookiesArr[i]; @@ -77,7 +78,7 @@ const JD_API_HOST = 'https://api.m.jd.com/client.action'; } } // nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset() * 60 * 1000 + 8 * 60 * 60 * 1000) - if (new Date().getHours() >= 15) { + if (new Date().getHours() >= 12) { await getAuthorShareCode() if ($.authorCode && $.authorCode.length) { for (let i = 0; i < cookiesArr.length; i++) { @@ -106,7 +107,7 @@ function initateCoinDozer() { return new Promise(async (resolve) => { let options = { url: `https://api.m.jd.com/?t=1623066557140`, - body: `functionId=initiateCoinDozer&body={"actId":"d5a8c7198ee54de093d2adb04089d3ec","channel":"coin_dozer","antiToken":"ec14brrjlsu8u4lhmia162581607334284f3~NmZeSyVEbFNSd3V7dldUAH92AwhlRHpTBiUjb35DFm5vLUROOBEzLUF7G28iAAFBKBgVFA1EPwIVKDclGENXbm8iVlQiAwpTTx1lKSsTCG5vfmsaDUR6LUEnG29%2BPU8LLyAADWQFNUgHcnZ4dlhZC3khBAxhUDIVBnJzf3dZC0M7LENkc0oKUwoyKhFmWzEQOTZCXQ1Eei1BKTQ5GENXbm80Qks5ATkdB28tKWoCAl8RZhtkcxY4LUF7G29rPU8eEWZHTA1EbC1BKTM5NBJXbm9oaxohDwpTWR1lf3RNWR56aAcUYUpvRD9jOm9oQwhWKTdQGmtEZgQXcWVhZgIeEHdmRQsmBSESWyAsISMVAkcvN0BeIlNlFgouLiQzFFpRI3VWUD0KdF1BImV3ZlQHXnU1UEFoADUYFCcvLCgQW0h8cgUNaVdgQVRydHl1BxpadWYbGjUVOFNZYzQ0NRkcRy59FRRzDyVTWWN2b2hDB1suZg0aaF9vSEE8%7C~1626269234856~1~20201218~eyJ2aXdlIjoiMCIsImJhaW4iOnsiaWMiOiIwIiwibGUiOiI3NSIsImN0IjoiaSIsImR0IjoiMiJ9fQ%3D%3D~2~472~tix5%7Cgw57a%3B554ci-6n%2C81%2C%2C%3B751r-%2C%2C%2C%3B358-6o%2C81%2C3t%2Cj%3Bb53-6o%2C81%2C3t%2Cj%3B050-6o%2C81%2C3t%2Cj%3Bdoei%3A%2C1%2C186%2C186%2C0%2C0%2C9%2C22%2C3%2C15%3Bdmei%3A%2C1%2C302%2C0%2C-2%2C0%2C-2%2C0%2C-2%2C0%3Bemc%3A%2C5%3A1%3Bemmm%3A%3Bemcf%3A%2C5%3A1%3Bivli%3A%3Biivl%3A%3Bivcvj%3A%3Bscvje%3A%3Bewhi%3A%2C5%3A187-46%3B1626269222397%2C1626269234855%2C0%2C1%2C6%2C6%2C0%2C1%2C0%2C0%2C0%3Ba3bp","referer":"-1","frontendInitStatus":"s"}&appid=megatron&client=android&clientVersion=9&t=1626269234860&networkType=wifi&eid=eidAecfa8121c7s1QgSzJyiJRFuXovji/QEn20IEtJ8WEfBsxVlLBBlDx1NDeWXp7i+1qklWZQtVP/M+tndxJj/uR/SSHj2G7vN0F2lfP0e9ux8UHlNC&fp=-1&frontendInitStatus=s&uuid=8363532363230343238303836333-43D2468336563316936636265356&osVersion=9&d_brand=Xiaomi&d_model=MI 8&agent=-1&pageClickKey=-1&screen=393*818&platform=3&lang=zh_CN&eu=8363532363230343238303836333&fv=43D2468336563316936636265356`, + body: `functionId=initiateCoinDozer&body={"actId":"${actId}","channel":"coin_dozer","antiToken":"ec14brrjlsu8u4lhmia162581607334284f3~NmZeSyVEbFNSd3V7dldUAH92AwhlRHpTBiUjb35DFm5vLUROOBEzLUF7G28iAAFBKBgVFA1EPwIVKDclGENXbm8iVlQiAwpTTx1lKSsTCG5vfmsaDUR6LUEnG29%2BPU8LLyAADWQFNUgHcnZ4dlhZC3khBAxhUDIVBnJzf3dZC0M7LENkc0oKUwoyKhFmWzEQOTZCXQ1Eei1BKTQ5GENXbm80Qks5ATkdB28tKWoCAl8RZhtkcxY4LUF7G29rPU8eEWZHTA1EbC1BKTM5NBJXbm9oaxohDwpTWR1lf3RNWR56aAcUYUpvRD9jOm9oQwhWKTdQGmtEZgQXcWVhZgIeEHdmRQsmBSESWyAsISMVAkcvN0BeIlNlFgouLiQzFFpRI3VWUD0KdF1BImV3ZlQHXnU1UEFoADUYFCcvLCgQW0h8cgUNaVdgQVRydHl1BxpadWYbGjUVOFNZYzQ0NRkcRy59FRRzDyVTWWN2b2hDB1suZg0aaF9vSEE8%7C~1626269234856~1~20201218~eyJ2aXdlIjoiMCIsImJhaW4iOnsiaWMiOiIwIiwibGUiOiI3NSIsImN0IjoiaSIsImR0IjoiMiJ9fQ%3D%3D~2~472~tix5%7Cgw57a%3B554ci-6n%2C81%2C%2C%3B751r-%2C%2C%2C%3B358-6o%2C81%2C3t%2Cj%3Bb53-6o%2C81%2C3t%2Cj%3B050-6o%2C81%2C3t%2Cj%3Bdoei%3A%2C1%2C186%2C186%2C0%2C0%2C9%2C22%2C3%2C15%3Bdmei%3A%2C1%2C302%2C0%2C-2%2C0%2C-2%2C0%2C-2%2C0%3Bemc%3A%2C5%3A1%3Bemmm%3A%3Bemcf%3A%2C5%3A1%3Bivli%3A%3Biivl%3A%3Bivcvj%3A%3Bscvje%3A%3Bewhi%3A%2C5%3A187-46%3B1626269222397%2C1626269234855%2C0%2C1%2C6%2C6%2C0%2C1%2C0%2C0%2C0%3Ba3bp","referer":"-1","frontendInitStatus":"s"}&appid=megatron&client=android&clientVersion=9&t=1626269234860&networkType=wifi&eid=eidAecfa8121c7s1QgSzJyiJRFuXovji/QEn20IEtJ8WEfBsxVlLBBlDx1NDeWXp7i+1qklWZQtVP/M+tndxJj/uR/SSHj2G7vN0F2lfP0e9ux8UHlNC&fp=-1&frontendInitStatus=s&uuid=8363532363230343238303836333-43D2468336563316936636265356&osVersion=9&d_brand=Xiaomi&d_model=MI 8&agent=-1&pageClickKey=-1&screen=393*818&platform=3&lang=zh_CN&eu=8363532363230343238303836333&fv=43D2468336563316936636265356`, headers: { "Origin": "https://pushgold.jd.com", "Host": "api.m.jd.com", @@ -141,7 +142,7 @@ function tythelp(tytpacketId) { return new Promise(async (resolve) => { let options = { url: `https://api.m.jd.com/?t=1623066557140`, - body: `functionId=helpCoinDozer&appid=station-soa-h5&client=H5&clientVersion=1.0.0&t=1623120183787&body={"actId":"d5a8c7198ee54de093d2adb04089d3ec","channel":"coin_dozer","antiToken":"mmkajtm9eqonssy6xoi1623119406463ic84~NmZeSyVEbFNSd3V+dVNdA3pxAABkRHpTBiUjb35DFm5vLUROOBEzLUF7G28iAAFBKBgVFA1EPwIVKDclGENXbm8iVlQiAwpTTx1lKSsTCG5vfmsaDUR6LUEnG29+PU9ReSdSWTNTNxICI3V0dlYOV3p0Bwg3UW9IVnd+KSdUC1E3KQFkc0oKUwoyKhFmWzEQOTZCXQ1Eei1BKTQ5GENXbm80Qks5ATkdB28tKWoCAl8RZhtkcxY4LUF7G29rPU8eEWZHTA1EbC1BKTM5NBJXbm9oaxohDwpTWR1lf3RNWR56aAcUYUpnQFcdZTBmTU9XKSBEX3NcdEEFMDdvaEMOQW9+FV82CDAUAXhzfTEDXV07I0VUZx49F1MucyosBwIHeTFSDycPIlNPYyRvfkMDQCwiBFo1VWFHBzsuPnVZB185dQEKYlZkRFR3cnVxUAFFf3QVFHMCJR9Be2U3MwkVQC8nWBp9RD8CQXtlfGZNT1gkJxUCc19vSFpjOg==|~1623120183785~1~20201218~eyJ2aXdlIjoiMCIsImJhaW4iOnt9fQ==~2~281~1pl4|5563f-70,aa,,;751e-,,,;359-70,aa,40,u;b512-70,aa,40,u;058-70,aa,40,u;doei:,1,0,0,0,0,1000,-1000,1000,-1000;dmei:,1,0,0,1000,-1000,1000,-1000,1000,-1000;emc:,5:1;emmm:;emcf:,5:1;ivli:;iivl:;ivcvj:;scvje:;ewhi:,5:197-49;1623120175774,1623120183784,0,1,5,5,0,1,0,0,0;u5ge","referer":"-1","frontendInitStatus":"s","packetId":"${tytpacketId}","helperStatus":"0"}&_ste=1&_stk=appid,body,client,clientVersion,functionId,t&h5st=20210608104303790;8489907903583162;10005;tk01w89681aa9a8nZDdIanIyWnVuWFLK4gnqY+05WKcPY3NWU2dcfa73B7PBM7ufJEN0U+4MyHW5N2mT/RNMq72ycJxH;7e6b956f1a8a71b269a0038bbb4abd24bcfb834a88910818cf1bdfc55b7b96e5`, + body: `functionId=helpCoinDozer&appid=station-soa-h5&client=H5&clientVersion=1.0.0&t=1623120183787&body={"actId":"${actId}","channel":"coin_dozer","antiToken":"mmkajtm9eqonssy6xoi1623119406463ic84~NmZeSyVEbFNSd3V+dVNdA3pxAABkRHpTBiUjb35DFm5vLUROOBEzLUF7G28iAAFBKBgVFA1EPwIVKDclGENXbm8iVlQiAwpTTx1lKSsTCG5vfmsaDUR6LUEnG29+PU9ReSdSWTNTNxICI3V0dlYOV3p0Bwg3UW9IVnd+KSdUC1E3KQFkc0oKUwoyKhFmWzEQOTZCXQ1Eei1BKTQ5GENXbm80Qks5ATkdB28tKWoCAl8RZhtkcxY4LUF7G29rPU8eEWZHTA1EbC1BKTM5NBJXbm9oaxohDwpTWR1lf3RNWR56aAcUYUpnQFcdZTBmTU9XKSBEX3NcdEEFMDdvaEMOQW9+FV82CDAUAXhzfTEDXV07I0VUZx49F1MucyosBwIHeTFSDycPIlNPYyRvfkMDQCwiBFo1VWFHBzsuPnVZB185dQEKYlZkRFR3cnVxUAFFf3QVFHMCJR9Be2U3MwkVQC8nWBp9RD8CQXtlfGZNT1gkJxUCc19vSFpjOg==|~1623120183785~1~20201218~eyJ2aXdlIjoiMCIsImJhaW4iOnt9fQ==~2~281~1pl4|5563f-70,aa,,;751e-,,,;359-70,aa,40,u;b512-70,aa,40,u;058-70,aa,40,u;doei:,1,0,0,0,0,1000,-1000,1000,-1000;dmei:,1,0,0,1000,-1000,1000,-1000,1000,-1000;emc:,5:1;emmm:;emcf:,5:1;ivli:;iivl:;ivcvj:;scvje:;ewhi:,5:197-49;1623120175774,1623120183784,0,1,5,5,0,1,0,0,0;u5ge","referer":"-1","frontendInitStatus":"s","packetId":"${tytpacketId}","helperStatus":"0"}&_ste=1&_stk=appid,body,client,clientVersion,functionId,t&h5st=20210608104303790;8489907903583162;10005;tk01w89681aa9a8nZDdIanIyWnVuWFLK4gnqY+05WKcPY3NWU2dcfa73B7PBM7ufJEN0U+4MyHW5N2mT/RNMq72ycJxH;7e6b956f1a8a71b269a0038bbb4abd24bcfb834a88910818cf1bdfc55b7b96e5`, headers: { "Origin": "https://pushgold.jd.com", "Host": "api.m.jd.com", @@ -174,7 +175,7 @@ function coinDozerBackFlow() { return new Promise(async (resolve) => { let options = { url: `https://api.m.jd.com/?t=1623066557140`, - body: `functionId=coinDozerBackFlow&body={"actId":"d5a8c7198ee54de093d2adb04089d3ec","channel":"coin_dozer","antiToken":"","referer":"-1","frontendInitStatus":"s"}&appid=megatron&client=android&clientVersion=9&t=1627920132339&networkType=wifi&eid=eidAecfa8121c7s1QgSzJyiJRFuXovji/QEn20IEtJ8WEfBsxVlLBBlDx1NDeWXp7i+1qklWZQtVP/M+tndxJj/uR/SSHj2G7vN0F2lfP0e9ux8UHlNC&fp=-1&frontendInitStatus=s&uuid=8363532363230343238303836333-43D2468336563316936636265356&osVersion=9&d_brand=Xiaomi&d_model=MI 8&agent=-1&pageClickKey=-1&screen=393*818&platform=3&lang=zh_CN&eu=8363532363230343238303836333&fv=43D2468336563316936636265356`, + body: `functionId=coinDozerBackFlow&body={"actId":"${actId}","channel":"coin_dozer","antiToken":"","referer":"-1","frontendInitStatus":"s"}&appid=megatron&client=android&clientVersion=9&t=1627920132339&networkType=wifi&eid=eidAecfa8121c7s1QgSzJyiJRFuXovji/QEn20IEtJ8WEfBsxVlLBBlDx1NDeWXp7i+1qklWZQtVP/M+tndxJj/uR/SSHj2G7vN0F2lfP0e9ux8UHlNC&fp=-1&frontendInitStatus=s&uuid=8363532363230343238303836333-43D2468336563316936636265356&osVersion=9&d_brand=Xiaomi&d_model=MI 8&agent=-1&pageClickKey=-1&screen=393*818&platform=3&lang=zh_CN&eu=8363532363230343238303836333&fv=43D2468336563316936636265356`, headers: { "Origin": "https://pushgold.jd.com", "Host": "api.m.jd.com", @@ -206,7 +207,7 @@ function helpCoinDozer(tytpacketId) { return new Promise(async (resolve) => { let options = { url: `https://api.m.jd.com/?t=1623066557140`, - body: `functionId=helpCoinDozer&appid=station-soa-h5&client=H5&clientVersion=1.0.0&t=1627922761739&body={"actId":"d5a8c7198ee54de093d2adb04089d3ec","channel":"coin_dozer","antiToken":"d75b37qfowsfn740mp41627921383808x5a4~NmZeSyVEbFNSd3V6fVNfBX9wDwliRHpTBiUjb35DFm5vLUROOBEzLUF7G28iAAFBKBgVFA1EPwIVKDclGENXbm8iVlQiAwpTTx1lKSsTCG5vfmsaDUR6LUEnG29%2BPU8HeCVVCDQHNElTeHB7fVFVUyhyDlllU2cXUSJ3LCdWWlR7fU1kc0oKUwoyKhFmWzEQOTZCXQ1Eei1BKTQ5GENXbm80Qks5ATkdB28tKWoCAl8RZhtkcxY4LUF7G29rPU8eEWZHTA1EbC1BKTM5NBJXbm9oaxohDwpTWR1lf3RNWR56aAcUYUpvQD9jOm9oQwhWKTdQGmtEZkcKNWVhZgIeEHdmQU0kUGYfVjclKTUFFF17KVsLJRYwGVU1InUrCBUCfXFPC2MTdF1BImV3ZlMKQSk%2BDg8wAT5DBDdzPj0KXlB8cgUPaFRnQltyf31zGQBcdGYbGjUVOFNZYy4vNhlUUS43FRRzDyVTWWN2b2hDB1suZg0aaF9vSEE8%7C~1627922761730~1~20201218~eyJ2aXdlIjoiMCIsImJhaW4iOnsiaWMiOiIxIiwibGUiOiI5NSIsImN0IjoiaSIsImR0IjoiaSJ9fQ%3D%3D~4~475~siip%7C554yw-7f%2C85%2C%2C%3B753j-%2C%2C%2C%3B356-7f%2C85%2C4k%2Cn%3Bb58-7f%2C85%2C4k%2Cn%3B050-7f%2C85%2C4k%2Cn%3Bgw13b%3Bgwji5%3B552py-6q%2C83%2C%2C%3B752r-%2C%2C%2C%3Bb5a-6r%2C83%2Cm%2C-1%3Bbd1-6r%2C83%2Cm%2C-1%3B051-6r%2C83%2Cm%2C-1%3Bdoei%3A%2C1%2C647%2C647%2C0%2C0%2C-11%2C19%2C-12%2C33%3Bdmei%3A%2C1%2C898%2C0%2C-7%2C1%2C-7%2C1%2C-7%2C1%3Bemc%3A%2C5%3A2%2Cd%3A1%3Bemmm%3A%3Bemcf%3A%2C5%3A2%2Cd%3A1%2C5%3A0%3Bivli%3A%3Biivl%3A%3Bivcvj%3A%3Bscvje%3A%3Bewhi%3A%2C5%3A187-46%3B1627922724803%2C1627922761727%2C0%2C1%2C12%2C12%2C0%2C3%2C0%2C0%2C0%3Bw1rv","referer":"-1","frontendInitStatus":"s","packetId":"${tytpacketId}"}&_ste=1&_stk=appid,body,client,clientVersion,functionId,t&h5st=20210803004601741%3B9832466289341162%3B10005%3Btk01wb2581ba2a8ndXcyN0dBc2lmOdBKB2j6AmZhqiMBL1xbV3unOkVbDl2xKYdsB%2ByLyUDNYeOBhsA4b316%2B1cdS2VW%3Bc7520ffaa8ad8d7cdb6b593d33aa37079c3d6a678a12ad5fb40aa1cde0787363`, + body: `functionId=helpCoinDozer&appid=station-soa-h5&client=H5&clientVersion=1.0.0&t=1627922761739&body={"actId":"${actId}","channel":"coin_dozer","antiToken":"d75b37qfowsfn740mp41627921383808x5a4~NmZeSyVEbFNSd3V6fVNfBX9wDwliRHpTBiUjb35DFm5vLUROOBEzLUF7G28iAAFBKBgVFA1EPwIVKDclGENXbm8iVlQiAwpTTx1lKSsTCG5vfmsaDUR6LUEnG29%2BPU8HeCVVCDQHNElTeHB7fVFVUyhyDlllU2cXUSJ3LCdWWlR7fU1kc0oKUwoyKhFmWzEQOTZCXQ1Eei1BKTQ5GENXbm80Qks5ATkdB28tKWoCAl8RZhtkcxY4LUF7G29rPU8eEWZHTA1EbC1BKTM5NBJXbm9oaxohDwpTWR1lf3RNWR56aAcUYUpvQD9jOm9oQwhWKTdQGmtEZkcKNWVhZgIeEHdmQU0kUGYfVjclKTUFFF17KVsLJRYwGVU1InUrCBUCfXFPC2MTdF1BImV3ZlMKQSk%2BDg8wAT5DBDdzPj0KXlB8cgUPaFRnQltyf31zGQBcdGYbGjUVOFNZYy4vNhlUUS43FRRzDyVTWWN2b2hDB1suZg0aaF9vSEE8%7C~1627922761730~1~20201218~eyJ2aXdlIjoiMCIsImJhaW4iOnsiaWMiOiIxIiwibGUiOiI5NSIsImN0IjoiaSIsImR0IjoiaSJ9fQ%3D%3D~4~475~siip%7C554yw-7f%2C85%2C%2C%3B753j-%2C%2C%2C%3B356-7f%2C85%2C4k%2Cn%3Bb58-7f%2C85%2C4k%2Cn%3B050-7f%2C85%2C4k%2Cn%3Bgw13b%3Bgwji5%3B552py-6q%2C83%2C%2C%3B752r-%2C%2C%2C%3Bb5a-6r%2C83%2Cm%2C-1%3Bbd1-6r%2C83%2Cm%2C-1%3B051-6r%2C83%2Cm%2C-1%3Bdoei%3A%2C1%2C647%2C647%2C0%2C0%2C-11%2C19%2C-12%2C33%3Bdmei%3A%2C1%2C898%2C0%2C-7%2C1%2C-7%2C1%2C-7%2C1%3Bemc%3A%2C5%3A2%2Cd%3A1%3Bemmm%3A%3Bemcf%3A%2C5%3A2%2Cd%3A1%2C5%3A0%3Bivli%3A%3Biivl%3A%3Bivcvj%3A%3Bscvje%3A%3Bewhi%3A%2C5%3A187-46%3B1627922724803%2C1627922761727%2C0%2C1%2C12%2C12%2C0%2C3%2C0%2C0%2C0%3Bw1rv","referer":"-1","frontendInitStatus":"s","packetId":"${tytpacketId}"}&_ste=1&_stk=appid,body,client,clientVersion,functionId,t&h5st=20210803004601741%3B9832466289341162%3B10005%3Btk01wb2581ba2a8ndXcyN0dBc2lmOdBKB2j6AmZhqiMBL1xbV3unOkVbDl2xKYdsB%2ByLyUDNYeOBhsA4b316%2B1cdS2VW%3Bc7520ffaa8ad8d7cdb6b593d33aa37079c3d6a678a12ad5fb40aa1cde0787363`, headers: { "Origin": "https://pushgold.jd.com", "Host": "api.m.jd.com", @@ -238,7 +239,7 @@ function getCoinDozerInfo() { return new Promise(async (resolve) => { let options = { url: `https://api.m.jd.com/?t=1623066557140`, - body: `functionId=getCoinDozerInfo&body={"actId":"d5a8c7198ee54de093d2adb04089d3ec","channel":"coin_dozer","antiToken":"","referer":"-1","frontendInitStatus":""}&appid=megatron&client=android&clientVersion=9&t=1626269713293&networkType=4g&eid=&fp=&frontendInitStatus=&uuid=8363532363230343238303836333-43D2468336563316936636265356&osVersion=9&d_brand=&d_model=&agent=-1&pageClickKey=-1&screen=393*818&platform=3&lang=zh_CN&eu=8363532363230343238303836333&fv=43D2468336563316936636265356`, + body: `functionId=getCoinDozerInfo&body={"actId":"${actId}","channel":"coin_dozer","antiToken":"","referer":"-1","frontendInitStatus":""}&appid=megatron&client=android&clientVersion=9&t=1626269713293&networkType=4g&eid=&fp=&frontendInitStatus=&uuid=8363532363230343238303836333-43D2468336563316936636265356&osVersion=9&d_brand=&d_model=&agent=-1&pageClickKey=-1&screen=393*818&platform=3&lang=zh_CN&eu=8363532363230343238303836333&fv=43D2468336563316936636265356`, headers: { "Origin": "https://pushgold.jd.com", "Host": "api.m.jd.com", @@ -255,6 +256,7 @@ function getCoinDozerInfo() { data = JSON.parse(data); if (data.code == 0 && data.data.sponsorActivityInfo.packetId) { console.log(`【京东账号${$.index}的推一推邀请码】${data.data.sponsorActivityInfo.packetId}\n`) + console.log(`已推【${data.data.sponsorActivityInfo.dismantledAmount}】元\n`) packetId = data.data.sponsorActivityInfo.packetId } else { console.log(`【京东账号${$.index}】获取助力码失败\n`) diff --git a/jd_unsubscribe.js b/jd_unsubscribe.js index 257c4ee6..ceab6708 100644 --- a/jd_unsubscribe.js +++ b/jd_unsubscribe.js @@ -212,12 +212,16 @@ function favCommQueryFilter(){ url: `https://wq.jd.com/fav/comm/FavCommQueryFilter?cp=1&pageSize=${args_xh.goodPageSize}&category=0&promote=0&cutPrice=0&coupon=0&stock=0&sceneval=2`, headers: { "Cookie": cookie, - "User-Agent": "jdapp;iPhone;10.3.4;;;M/5.0;appBuild/167945;jdSupportDarkMode/1;;;Mozilla/5.0 (iPhone; CPU iPhone OS 15_2_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1;", + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), "Referer": "https://wqs.jd.com/" }, } $.get(option, async(err, resp, data) => { try{ + if(data.indexOf("Authorization") !== -1){ + console.log("获取数据失败,401 Authorization Required,可能是User-Agent的问题") + return; + } data = JSON.parse(getSubstr(data, "try{(", ");}catch(e){}")); if(data.iRet === '0'){ $.goodsTotalNum = parseInt(data.totalNum); @@ -253,12 +257,16 @@ function favCommBatchDel(){ url: `https://wq.jd.com/fav/comm/FavCommBatchDel?commId=${$.commIdList}&sceneval=2&g_login_type=1`, headers: { "Cookie": cookie, - "User-Agent": "jdapp;iPhone;10.3.4;;;M/5.0;appBuild/167945;jdSupportDarkMode/1;;;Mozilla/5.0 (iPhone; CPU iPhone OS 15_2_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1;", + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), "Referer": "https://wqs.jd.com/" }, } $.get(option, (err, resp, data) => { try{ + if(data.indexOf("Authorization") !== -1){ + console.log("获取数据失败,401 Authorization Required,可能是User-Agent的问题") + return; + } data = JSON.parse(data); if(data.iRet === "0" && data.errMsg === "success"){ console.log(`成功取消收藏商品:${$.unsubscribeGoodsNum}个\n`) @@ -282,12 +290,16 @@ function queryShopFavList(){ url: `https://wq.jd.com/fav/shop/QueryShopFavList?cp=1&pageSize=${args_xh.shopPageSize}&sceneval=2&g_login_type=1&callback=jsonpCBKA`, headers: { "Cookie": cookie, - "User-Agent": "jdapp;iPhone;10.3.4;;;M/5.0;appBuild/167945;jdSupportDarkMode/1;;;Mozilla/5.0 (iPhone; CPU iPhone OS 15_2_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1;", + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), "Referer": "https://wqs.jd.com/" }, } $.get(option, (err, resp, data) => { try{ + if(data.indexOf("Authorization") !== -1){ + console.log("获取数据失败,401 Authorization Required,可能是User-Agent的问题") + return; + } data = JSON.parse(getSubstr(data, "try{jsonpCBKA(", ");}catch(e){}")); if(data.iRet === '0'){ $.shopsTotalNum = parseInt(data.totalNum); @@ -325,12 +337,16 @@ function batchunfollow(){ url: `https://wq.jd.com/fav/shop/batchunfollow?shopId=${$.shopIdList}&sceneval=2&g_login_type=1`, headers: { "Cookie": cookie, - "User-Agent": "jdapp;iPhone;10.3.4;;;M/5.0;appBuild/167945;jdSupportDarkMode/1;;;Mozilla/5.0 (iPhone; CPU iPhone OS 15_2_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1;", + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), "Referer": "https://wqs.jd.com/" }, } $.get(option, (err, resp, data) => { try{ + if(data.indexOf("Authorization") !== -1){ + console.log("获取数据失败,401 Authorization Required,可能是User-Agent的问题") + return; + } data = JSON.parse(data); if(data.iRet === "0"){ console.log(`已成功取消关注店铺:${$.unsubscribeShopsNum}个\n`) diff --git a/jd_wish.js b/jd_wish.js index 1df2e12c..e0297a1c 100644 --- a/jd_wish.js +++ b/jd_wish.js @@ -25,8 +25,8 @@ let message = '', allMessage = ''; //IOS等用户直接用NobyDa的jd cookie let cookiesArr = [], cookie = ''; const JD_API_HOST = 'https://api.m.jd.com/client.action'; -let appIdArr = ["1EFRQwA","1GFNRxq8","1GVFUx6g", "1E1xZy6s", "1GVJWyqg","1GFRRyqo"]; -let appNameArr = ["疯狂砸金蛋","新年宠粉","JOY年味之旅","PLUS生活特权", "虎娃迎福","过新潮年"]; +let appIdArr = ['1EFZWxKqP','1EFRQwA','1FFVQyqw','1E1xZy6s']; +let appNameArr = ['RedmiK50新品来袭','疯狂砸金蛋','1111点心动','PLUS生活特权']; let appId, appName; $.shareCode = []; if ($.isNode()) { diff --git a/jd_zjb.js b/jd_zjb.js index 1326a5d3..815f300a 100644 --- a/jd_zjb.js +++ b/jd_zjb.js @@ -63,7 +63,7 @@ const JD_API_HOST = 'https://api.m.jd.com/client.action'; if (InviterPin.length != 0) { await help() } else { - await help2("zero205",Math.random() > 0.5 ? "%2FeNHdfn6fP%2BTFwVda3ipjWwvTFqeKBZaRG38adWABKk%3D" : "Sev6JWjut6GyaEHJIWpSQQ%3D%3D") + await help2() } } } @@ -135,8 +135,13 @@ function help() { }); } -function help2(name,code) { +function help2() { return new Promise(async (resolve) => { + let code = [ + "%2FeNHdfn6fP%2BTFwVda3ipjWwvTFqeKBZaRG38adWABKk%3D", + "Sev6JWjut6GyaEHJIWpSQQ%3D%3D", + "Cg7WMrLsk%2FPPSHaOd9q2ULzDByNly0QecJ4K7QiZhLk%3D" + ][Math.floor((Math.random() * 3))] let options = { url: `https://api.m.jd.com`, body: `functionId=TaskInviteService&body={"method":"participateInviteTask","data":{"channel":"1","encryptionInviterPin":"${code}","type":1}}&appid=market-task-h5&uuid=7303439343432346-7356431353233311&eu=7303439343432341&fv=7356431353233321&_t=1623475839367`, @@ -152,7 +157,7 @@ function help2(name,code) { try { const reust = JSON.parse(data) if (reust.code === 0) { - $.log(`赚金币助力【${name}】成功,感谢!`) + $.log(`赚金币助力【zero205】成功,感谢!`) } else console.log(reust.message) } catch (e) { diff --git a/jx_sign.js b/jx_sign.js index 66858433..3cbcd5e6 100644 --- a/jx_sign.js +++ b/jx_sign.js @@ -201,10 +201,13 @@ async function main(help = true) { // 查询信息 function signhb(type = 1) { - let body = ''; - if ($.signhb_source === '5') body = `type=0&signhb_source=${$.signhb_source}&smp=&ispp=1&tk=` + let functionId = 'signhb/query', body = ''; + if ($.signhb_source === '5') { + functionId = 'signhb/query_jxpp' + body = `type=0&signhb_source=${$.signhb_source}&smp=&ispp=1&tk=` + } return new Promise((resolve) => { - $.get(taskUrl("signhb/query", body), async (err, resp, data) => { + $.get(taskUrl(functionId, body), async (err, resp, data) => { try { if (err) { console.log(JSON.stringify(err)); @@ -285,8 +288,16 @@ function signhb(type = 1) { // 签到 助力 function helpSignhb(smp = '') { + let functionId, body; + if ($.signhb_source === '5') { + functionId = 'signhb/query_jxpp' + body = `type=1&signhb_source=${$.signhb_source}&smp=&ispp=1&tk=` + } else { + functionId = 'signhb/query' + body = `type=1&signhb_source=${$.signhb_source}&smp=${smp}&ispp=0&tk=` + } return new Promise((resolve) => { - $.get(taskUrl("signhb/query", `type=1&signhb_source=${$.signhb_source}&smp=${smp}&ispp=1&tk=`), async (err, resp, data) => { + $.get(taskUrl(functionId, body), async (err, resp, data) => { try { if (err) { console.log(JSON.stringify(err)) @@ -319,14 +330,16 @@ function helpSignhb(smp = '') { // 任务 function dotask(task) { - let body; + let functionId, body; if ($.signhb_source === '5') { + functionId = 'signhb/dotask_jxpp' body = `task=${task}&signhb_source=${$.signhb_source}&ispp=1&sqactive=${$.sqactive}&tk=` } else { - body = `task=${task}&signhb_source=${$.signhb_source}&ispp=1&tk=` + functionId = 'signhb/dotask' + body = `task=${task}&signhb_source=${$.signhb_source}&ispp=0&sqactive=&tk=` } return new Promise((resolve) => { - $.get(taskUrl("signhb/dotask", body), async (err, resp, data) => { + $.get(taskUrl(functionId, body), async (err, resp, data) => { try { if (err) { console.log(JSON.stringify(err)); @@ -353,14 +366,16 @@ function dotask(task) { // 宝箱 function bxdraw() { - let body; + let functionId, body; if ($.signhb_source === '5') { + functionId = "signhb/bxdraw_jxpp" body = `ispp=1&sqactive=${$.sqactive}&tk=` } else { - body = `ispp=1&tk=` + functionId = "signhb/bxdraw" + body = `ispp=0&sqactive=&tk=` } return new Promise((resolve) => { - $.get(taskUrl("signhb/bxdraw", body), async (err, resp, data) => { + $.get(taskUrl(functionId, body), async (err, resp, data) => { try { if (err) { console.log(JSON.stringify(err)); diff --git a/ql.js b/ql.js index 802d1a65..31e48833 100644 --- a/ql.js +++ b/ql.js @@ -6,7 +6,14 @@ const { readFile } = require('fs/promises'); const path = require('path'); const qlDir = '/ql'; -const authFile = path.join(qlDir, 'config/auth.json'); +const fs = require('fs'); +let Fileexists = fs.existsSync('/ql/data/config/auth.json'); +let authFile=""; +if (Fileexists) + authFile="/ql/data/config/auth.json" +else + authFile="/ql/config/auth.json" +//const authFile = path.join(qlDir, 'config/auth.json'); const api = got.extend({ prefixUrl: 'http://127.0.0.1:5600', @@ -18,7 +25,7 @@ async function getToken() { return authConfig.token; } -module.exports.getEnvs = async () => { +module.exports.getEnvs = async () => { const token = await getToken(); const body = await api({ url: 'api/envs', diff --git a/sendNotify.js b/sendNotify.js index 090ff269..7bd13bda 100644 --- a/sendNotify.js +++ b/sendNotify.js @@ -9,25 +9,20 @@ * @param params 某些推送通知方式点击弹窗可跳转, 例:{ url: 'https://abc.com' } * @param author 作者仓库等信息 例:`本通知 By:https://github.com/whyour/qinglong` */ - +//详细说明参考 https://github.com/ccwav/QLScript2. const querystring = require('querystring'); +const exec = require('child_process').exec; const $ = new Env(); const timeout = 15000; //超时时间(单位毫秒) -// =======================================gotify通知设置区域============================================== -//gotify_url 填写gotify地址,如https://push.example.de:8080 -//gotify_token 填写gotify的消息应用token -//gotify_priority 填写推送消息优先级,默认为0 -let GOTIFY_URL = ''; -let GOTIFY_TOKEN = ''; -let GOTIFY_PRIORITY = 0; +console.log("加载sendNotify,当前版本: 20220327"); // =======================================go-cqhttp通知设置区域=========================================== //gobot_url 填写请求地址http://127.0.0.1/send_private_msg //gobot_token 填写在go-cqhttp文件设置的访问密钥 //gobot_qq 填写推送到个人QQ或者QQ群号 //go-cqhttp相关API https://docs.go-cqhttp.org/api -let GOBOT_URL = ''; // 推送到个人QQ: http://127.0.0.1/send_private_msg 群:http://127.0.0.1/send_group_msg +let GOBOT_URL = ''; // 推送到个人QQ: http://127.0.0.1/send_private_msg 群:http://127.0.0.1/send_group_msg let GOBOT_TOKEN = ''; //访问密钥 -let GOBOT_QQ = ''; // 如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群 +let GOBOT_QQ = ''; // 如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群 // =======================================微信server酱通知设置区域=========================================== //此处填你申请的SCKEY. @@ -69,13 +64,13 @@ let QYWX_KEY = ''; // =======================================企业微信应用消息通知设置区域=========================================== /* - 此处填你企业微信应用消息的值(详见文档 https://work.weixin.qq.com/api/doc/90000/90135/90236) - 环境变量名 QYWX_AM依次填入 corpid,corpsecret,touser(注:多个成员ID使用|隔开),agentid,消息类型(选填,不填默认文本消息类型) - 注意用,号隔开(英文输入法的逗号),例如:wwcff56746d9adwers,B-791548lnzXBE6_BWfxdf3kSTMJr9vFEPKAbh6WERQ,mingcheng,1000001,2COXgjH2UIfERF2zxrtUOKgQ9XklUqMdGSWLBoW_lSDAdafat - 可选推送消息类型(推荐使用图文消息(mpnews)): - - 文本卡片消息: 0 (数字零) - - 文本消息: 1 (数字一) - - 图文消息(mpnews): 素材库图片id, 可查看此教程(http://note.youdao.com/s/HMiudGkb)或者(https://note.youdao.com/ynoteshare1/index.html?id=1a0c8aff284ad28cbd011b29b3ad0191&type=note) +此处填你企业微信应用消息的值(详见文档 https://work.weixin.qq.com/api/doc/90000/90135/90236) +环境变量名 QYWX_AM依次填入 corpid,corpsecret,touser(注:多个成员ID使用|隔开),agentid,消息类型(选填,不填默认文本消息类型) +注意用,号隔开(英文输入法的逗号),例如:wwcff56746d9adwers,B-791548lnzXBE6_BWfxdf3kSTMJr9vFEPKAbh6WERQ,mingcheng,1000001,2COXgjH2UIfERF2zxrtUOKgQ9XklUqMdGSWLBoW_lSDAdafat +可选推送消息类型(推荐使用图文消息(mpnews)): +- 文本卡片消息: 0 (数字零) +- 文本消息: 1 (数字一) +- 图文消息(mpnews): 素材库图片id, 可查看此教程(http://note.youdao.com/s/HMiudGkb)或者(https://note.youdao.com/ynoteshare1/index.html?id=1a0c8aff284ad28cbd011b29b3ad0191&type=note) */ let QYWX_AM = ''; @@ -89,103 +84,33 @@ let IGOT_PUSH_KEY = ''; //PUSH_PLUS_USER: 一对多推送的“群组编码”(一对多推送下面->您的群组(如无则新建)->群组编码,如果您是创建群组人。也需点击“查看二维码”扫描绑定,否则不能接受群组消息推送) let PUSH_PLUS_TOKEN = ''; let PUSH_PLUS_USER = ''; +let PUSH_PLUS_TOKEN_hxtrip = ''; +let PUSH_PLUS_USER_hxtrip = ''; -//==========================云端环境变量的判断与接收========================= -if (process.env.GOTIFY_URL) { - GOTIFY_URL = process.env.GOTIFY_URL; -} -if (process.env.GOTIFY_TOKEN) { - GOTIFY_TOKEN = process.env.GOTIFY_TOKEN; -} -if (process.env.GOTIFY_PRIORITY) { - GOTIFY_PRIORITY = process.env.GOTIFY_PRIORITY; -} - -if (process.env.GOBOT_URL) { - GOBOT_URL = process.env.GOBOT_URL; -} -if (process.env.GOBOT_TOKEN) { - GOBOT_TOKEN = process.env.GOBOT_TOKEN; -} -if (process.env.GOBOT_QQ) { - GOBOT_QQ = process.env.GOBOT_QQ; -} - -if (process.env.PUSH_KEY) { - SCKEY = process.env.PUSH_KEY; -} - -if (process.env.QQ_SKEY) { - QQ_SKEY = process.env.QQ_SKEY; -} - -if (process.env.QQ_MODE) { - QQ_MODE = process.env.QQ_MODE; -} - -if (process.env.BARK_PUSH) { - if ( - process.env.BARK_PUSH.indexOf('https') > -1 || - process.env.BARK_PUSH.indexOf('http') > -1 - ) { - //兼容BARK自建用户 - BARK_PUSH = process.env.BARK_PUSH; - } else { - BARK_PUSH = `https://api.day.app/${process.env.BARK_PUSH}`; - } - if (process.env.BARK_SOUND) { - BARK_SOUND = process.env.BARK_SOUND; - } - if (process.env.BARK_GROUP) { - BARK_GROUP = process.env.BARK_GROUP; - } -} else { - if ( - BARK_PUSH && - BARK_PUSH.indexOf('https') === -1 && - BARK_PUSH.indexOf('http') === -1 - ) { - //兼容BARK本地用户只填写设备码的情况 - BARK_PUSH = `https://api.day.app/${BARK_PUSH}`; - } -} -if (process.env.TG_BOT_TOKEN) { - TG_BOT_TOKEN = process.env.TG_BOT_TOKEN; -} -if (process.env.TG_USER_ID) { - TG_USER_ID = process.env.TG_USER_ID; -} -if (process.env.TG_PROXY_AUTH) TG_PROXY_AUTH = process.env.TG_PROXY_AUTH; -if (process.env.TG_PROXY_HOST) TG_PROXY_HOST = process.env.TG_PROXY_HOST; -if (process.env.TG_PROXY_PORT) TG_PROXY_PORT = process.env.TG_PROXY_PORT; -if (process.env.TG_API_HOST) TG_API_HOST = process.env.TG_API_HOST; - -if (process.env.DD_BOT_TOKEN) { - DD_BOT_TOKEN = process.env.DD_BOT_TOKEN; - if (process.env.DD_BOT_SECRET) { - DD_BOT_SECRET = process.env.DD_BOT_SECRET; - } -} - -if (process.env.QYWX_KEY) { - QYWX_KEY = process.env.QYWX_KEY; -} +// ======================================= WxPusher 通知设置区域 =========================================== +// 此处填你申请的 appToken. 官方文档:https://wxpusher.zjiecode.com/docs +// WP_APP_TOKEN 可在管理台查看: https://wxpusher.zjiecode.com/admin/main/app/appToken +// WP_TOPICIDS 群发, 发送目标的 topicId, 以 ; 分隔! 使用 WP_UIDS 单发的时候, 可以不传 +// WP_UIDS 发送目标的 uid, 以 ; 分隔。注意 WP_UIDS 和 WP_TOPICIDS 可以同时填写, 也可以只填写一个。 +// WP_URL 原文链接, 可选参数 +let WP_APP_TOKEN = ""; +let WP_TOPICIDS = ""; +let WP_UIDS = ""; +let WP_URL = ""; -if (process.env.QYWX_AM) { - QYWX_AM = process.env.QYWX_AM; +let WP_APP_TOKEN_ONE = ""; +if (process.env.WP_APP_TOKEN_ONE) { + WP_APP_TOKEN_ONE = process.env.WP_APP_TOKEN_ONE; } +let WP_UIDS_ONE = ""; -if (process.env.IGOT_PUSH_KEY) { - IGOT_PUSH_KEY = process.env.IGOT_PUSH_KEY; -} - -if (process.env.PUSH_PLUS_TOKEN) { - PUSH_PLUS_TOKEN = process.env.PUSH_PLUS_TOKEN; -} -if (process.env.PUSH_PLUS_USER) { - PUSH_PLUS_USER = process.env.PUSH_PLUS_USER; -} -//==========================云端环境变量的判断与接收========================= +// =======================================gotify通知设置区域============================================== +//gotify_url 填写gotify地址,如https://push.example.de:8080 +//gotify_token 填写gotify的消息应用token +//gotify_priority 填写推送消息优先级,默认为0 +let GOTIFY_URL = ''; +let GOTIFY_TOKEN = ''; +let GOTIFY_PRIORITY = 0; /** * sendNotify 推送通知功能 @@ -195,677 +120,1918 @@ if (process.env.PUSH_PLUS_USER) { * @param author 作者仓库等信息 例:`本通知 By:https://github.com/whyour/qinglong` * @returns {Promise} */ -async function sendNotify( - text, - desp, - params = {'TG交流群':'https://t.me/jd_zero_205'}, - author = '\n\n请更新拉库命令:https://github.com/zero205/JD_tencent_scf/tree/main', -) { - let no_notify = process.env.no_notify - if (no_notify) { - no_notify = process.env.no_notify.split('&') - if (module.parent.filename) { - const script_name = module.parent.filename.split('/').slice(-1)[0] - if (no_notify.some(key_word => { - const flag = script_name.includes(key_word) - if (flag) { - console.log(`${script_name}含有关键字${key_word},不推送`) - } - return flag - })) { - return - } - } - } - //提供6种通知 - desp += author; //增加作者信息,防止被贩卖等 - await Promise.all([ - serverNotify(text, desp), //微信server酱 - pushPlusNotify(text, desp), //pushplus(推送加) - ]); - //由于上述两种微信通知需点击进去才能查看到详情,故text(标题内容)携带了账号序号以及昵称信息,方便不点击也可知道是哪个京东哪个活动 - text = text.match(/.*?(?=\s?-)/g) ? text.match(/.*?(?=\s?-)/g)[0] : text; - await Promise.all([ - BarkNotify(text, desp, params), //iOS Bark APP - tgBotNotify(text, desp), //telegram 机器人 - ddBotNotify(text, desp), //钉钉机器人 - qywxBotNotify(text, desp), //企业微信机器人 - qywxamNotify(text, desp), //企业微信应用消息推送 - iGotNotify(text, desp, params), //iGot - gobotNotify(text, desp),//go-cqhttp - gotifyNotify(text, desp),//gotify - ]); +let PushErrorTime = 0; +let strTitle = ""; +let ShowRemarkType = "1"; +let Notify_NoCKFalse = "false"; +let Notify_NoLoginSuccess = "false"; +let UseGroupNotify = 1; +const { + getEnvs, + DisableCk, + getEnvByPtPin +} = require('./ql'); +const fs = require('fs'); +let isnewql = fs.existsSync('/ql/data/config/auth.json'); +let strCKFile=""; +let strUidFile =""; +if(isnewql){ + strCKFile = '/ql/data/scripts/CKName_cache.json'; + strUidFile = '/ql/data/scripts/CK_WxPusherUid.json'; +}else{ + strCKFile = '/ql/scripts/CKName_cache.json'; + strUidFile = '/ql/scripts/CK_WxPusherUid.json'; } + -function gotifyNotify(text, desp) { - return new Promise((resolve) => { - if (GOTIFY_URL && GOTIFY_TOKEN) { - const options = { - url: `${GOTIFY_URL}/message?token=${GOTIFY_TOKEN}`, - body: `title=${encodeURIComponent(text)}&message=${encodeURIComponent(desp)}&priority=${GOTIFY_PRIORITY}`, - headers: { - 'Content-Type': 'application/x-www-form-urlencoded', - } - }; - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log('gotify发送通知调用API失败!!\n'); - console.log(err); - } else { - data = JSON.parse(data); - if (data.id) { - console.log('gotify发送通知消息成功🎉\n'); - } else { - console.log(`${data.message}\n`); - } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(); - } - }); - } else { - resolve(); +let Fileexists = fs.existsSync(strCKFile); +let TempCK = []; +if (Fileexists) { + console.log("检测到别名缓存文件CKName_cache.json,载入..."); + TempCK = fs.readFileSync(strCKFile, 'utf-8'); + if (TempCK) { + TempCK = TempCK.toString(); + TempCK = JSON.parse(TempCK); } - }); } -function gobotNotify(text, desp, time = 2100) { - return new Promise((resolve) => { - if (GOBOT_URL) { - const options = { - url: `${GOBOT_URL}?access_token=${GOBOT_TOKEN}&${GOBOT_QQ}`, - json: {message:`${text}\n${desp}`}, - headers: { - 'Content-Type': 'application/json', - }, - timeout, - }; - setTimeout(() => { - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log('发送go-cqhttp通知调用API失败!!\n'); - console.log(err); - } else { - data = JSON.parse(data); - if (data.retcode === 0) { - console.log('go-cqhttp发送通知消息成功🎉\n'); - } else if (data.retcode === 100) { - console.log(`go-cqhttp发送通知消息异常: ${data.errmsg}\n`); - } else { - console.log( - `go-cqhttp发送通知消息异常\n${JSON.stringify(data)}`, - ); - } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(data); - } - }); - }, time); - } else { - resolve(); +let UidFileexists = fs.existsSync(strUidFile); +let TempCKUid = []; +if (UidFileexists) { + console.log("检测到一对一Uid文件WxPusherUid.json,载入..."); + TempCKUid = fs.readFileSync(strUidFile, 'utf-8'); + if (TempCKUid) { + TempCKUid = TempCKUid.toString(); + TempCKUid = JSON.parse(TempCKUid); } - }); } -function serverNotify(text, desp, time = 2100) { - return new Promise((resolve) => { - if (SCKEY) { - //微信server酱推送通知一个\n不会换行,需要两个\n才能换行,故做此替换 - desp = desp.replace(/[\n\r]/g, '\n\n'); - const options = { - url: SCKEY.includes('SCT') - ? `https://sctapi.ftqq.com/${SCKEY}.send` - : `https://sc.ftqq.com/${SCKEY}.send`, - body: `text=${text}&desp=${desp}`, - headers: { - 'Content-Type': 'application/x-www-form-urlencoded', - }, - timeout, - }; - setTimeout(() => { - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log('发送通知调用API失败!!\n'); - console.log(err); - } else { - data = JSON.parse(data); - //server酱和Server酱·Turbo版的返回json格式不太一样 - if (data.errno === 0 || data.data.errno === 0) { - console.log('server酱发送通知消息成功🎉\n'); - } else if (data.errno === 1024) { - // 一分钟内发送相同的内容会触发 - console.log(`server酱发送通知消息异常: ${data.errmsg}\n`); - } else { - console.log( - `server酱发送通知消息异常\n${JSON.stringify(data)}`, - ); - } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(data); - } - }); - }, time); - } else { - resolve(); - } - }); +let tempAddCK = {}; +let boolneedUpdate = false; +let strCustom = ""; +let strCustomArr = []; +let strCustomTempArr = []; +let Notify_CKTask = ""; +let Notify_SkipText = []; +let isLogin = false; +if (process.env.NOTIFY_SHOWNAMETYPE) { + ShowRemarkType = process.env.NOTIFY_SHOWNAMETYPE; + if (ShowRemarkType == "2") + console.log("检测到显示备注名称,格式为: 京东别名(备注)"); + if (ShowRemarkType == "3") + console.log("检测到显示备注名称,格式为: 京东账号(备注)"); + if (ShowRemarkType == "4") + console.log("检测到显示备注名称,格式为: 备注"); } +async function sendNotify(text, desp, params = {}, author = '\n\n本通知 By ccwav Mod', strsummary = "") { + console.log(`开始发送通知...`); + + //NOTIFY_FILTERBYFILE代码来自Ca11back. + if (process.env.NOTIFY_FILTERBYFILE) { + var no_notify = process.env.NOTIFY_FILTERBYFILE.split('&'); + if (module.parent.filename) { + const script_name = module.parent.filename.split('/').slice(-1)[0]; + if (no_notify.some(key_word => { + const flag = script_name.includes(key_word); + if (flag) { + console.log(`${script_name}含有关键字${key_word},不推送`); + } + return flag; + })) { + return; + } + } + } + + try { + //Reset 变量 + UseGroupNotify = 1; + strTitle = ""; + GOBOT_URL = ''; + GOBOT_TOKEN = ''; + GOBOT_QQ = ''; + SCKEY = ''; + BARK_PUSH = ''; + BARK_SOUND = ''; + BARK_GROUP = 'QingLong'; + TG_BOT_TOKEN = ''; + TG_USER_ID = ''; + TG_PROXY_HOST = ''; + TG_PROXY_PORT = ''; + TG_PROXY_AUTH = ''; + TG_API_HOST = 'api.telegram.org'; + DD_BOT_TOKEN = ''; + DD_BOT_SECRET = ''; + QYWX_KEY = ''; + QYWX_AM = ''; + IGOT_PUSH_KEY = ''; + PUSH_PLUS_TOKEN = ''; + PUSH_PLUS_USER = ''; + PUSH_PLUS_TOKEN_hxtrip = ''; + PUSH_PLUS_USER_hxtrip = ''; + Notify_CKTask = ""; + Notify_SkipText = []; -function CoolPush(text, desp) { - return new Promise((resolve) => { - if (QQ_SKEY) { - let options = { - url: `https://push.xuthus.cc/${QQ_MODE}/${QQ_SKEY}`, - headers: { - 'Content-Type': 'application/json', - }, - }; - - // 已知敏感词 - text = text.replace(/京豆/g, '豆豆'); - desp = desp.replace(/京豆/g, ''); - desp = desp.replace(/🐶/g, ''); - desp = desp.replace(/红包/g, 'H包'); - - switch (QQ_MODE) { - case 'email': - options.json = { - t: text, - c: desp, - }; - break; - default: - options.body = `${text}\n\n${desp}`; - } - - let pushMode = function (t) { - switch (t) { - case 'send': - return '个人'; - case 'group': - return 'QQ群'; - case 'wx': - return '微信'; - case 'ww': - return '企业微信'; - case 'email': - return '邮件'; - default: - return '未知方式'; - } - }; + //变量开关 + var Use_serverNotify = true; + var Use_pushPlusNotify = true; + var Use_BarkNotify = true; + var Use_tgBotNotify = true; + var Use_ddBotNotify = true; + var Use_qywxBotNotify = true; + var Use_qywxamNotify = true; + var Use_iGotNotify = true; + var Use_gobotNotify = true; + var Use_pushPlushxtripNotify = true; + var Use_WxPusher = true; + var strtext = text; + var strdesp = desp; + if (process.env.NOTIFY_NOCKFALSE) { + Notify_NoCKFalse = process.env.NOTIFY_NOCKFALSE; + } + if (process.env.NOTIFY_NOLOGINSUCCESS) { + Notify_NoLoginSuccess = process.env.NOTIFY_NOLOGINSUCCESS; + } + if (process.env.NOTIFY_CKTASK) { + Notify_CKTask = process.env.NOTIFY_CKTASK; + } - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log(`发送${pushMode(QQ_MODE)}通知调用API失败!!\n`); - console.log(err); - } else { - data = JSON.parse(data); - if (data.code === 200) { - console.log(`酷推发送${pushMode(QQ_MODE)}通知消息成功🎉\n`); - } else if (data.code === 400) { - console.log( - `QQ酷推(Cool Push)发送${pushMode(QQ_MODE)}推送失败:${ - data.msg - }\n`, - ); - } else if (data.code === 503) { - console.log(`QQ酷推出错,${data.message}:${data.data}\n`); - } else { - console.log(`酷推推送异常: ${JSON.stringify(data)}`); + if (process.env.NOTIFY_SKIP_TEXT && desp) { + Notify_SkipText = process.env.NOTIFY_SKIP_TEXT.split('&'); + if (Notify_SkipText.length > 0) { + for (var Templ in Notify_SkipText) { + if (desp.indexOf(Notify_SkipText[Templ]) != -1) { + console.log("检测内容到内容存在屏蔽推送的关键字(" + Notify_SkipText[Templ] + "),将跳过推送..."); + return; + } + } } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(data); } - }); - } else { - resolve(); - } - }); -} -function BarkNotify(text, desp, params = {}) { - return new Promise(resolve => { - if (BARK_PUSH) { - const index = BARK_PUSH.lastIndexOf('/') + 1 - const url = BARK_PUSH.substr(0,index)+"push" - const device_key = BARK_PUSH.substr(index) - params['Group'] = `${BARK_GROUP}`; - const options = { - url, - json:{ - device_key, - title: text, - body:desp, - sound:BARK_SOUND, - group:BARK_GROUP, - ext_params:params - }, - headers: { - 'Content-Type': 'application/json; charset=utf-8' - }, - timeout - } - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log('Bark APP发送通知调用API失败!!\n') - console.log(err); - } else { - data = JSON.parse(data); - if (data.code === 200) { - console.log('Bark APP发送通知消息成功🎉\n') - } else { - console.log(`${data.message}\n`); + if (text.indexOf("cookie已失效") != -1 || desp.indexOf("重新登录获取") != -1 || text == "Ninja 运行通知") { + + if (Notify_CKTask) { + console.log("触发CK脚本,开始执行...."); + Notify_CKTask = "task " + Notify_CKTask + " now"; + await exec(Notify_CKTask, function (error, stdout, stderr) { + console.log(error, stdout, stderr) + }); } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(); } - }) - } else { - console.log('您未提供Bark的APP推送BARK_PUSH,取消Bark推送消息通知🚫\n'); - resolve() - } - }) -} + if (process.env.NOTIFY_AUTOCHECKCK == "true") { + if (text.indexOf("cookie已失效") != -1 || desp.indexOf("重新登录获取") != -1) { + console.log(`捕获CK过期通知,开始尝试处理...`); + var strPtPin = await GetPtPin(text); + var strdecPtPin = decodeURIComponent(strPtPin); + var llHaderror = false; -function tgBotNotify(text, desp) { - return new Promise((resolve) => { - if (TG_BOT_TOKEN && TG_USER_ID) { - const options = { - url: `https://${TG_API_HOST}/bot${TG_BOT_TOKEN}/sendMessage`, - body: `chat_id=${TG_USER_ID}&text=${text}\n\n${desp}&disable_web_page_preview=true`, - headers: { - 'Content-Type': 'application/x-www-form-urlencoded', - }, - timeout, - }; - if (TG_PROXY_HOST && TG_PROXY_PORT) { - const tunnel = require('tunnel'); - const agent = { - https: tunnel.httpsOverHttp({ - proxy: { - host: TG_PROXY_HOST, - port: TG_PROXY_PORT * 1, - proxyAuth: TG_PROXY_AUTH, - }, - }), - }; - Object.assign(options, { agent }); - } - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log('telegram发送通知消息失败!!\n'); - console.log(err); - } else { - data = JSON.parse(data); - if (data.ok) { - console.log('Telegram发送通知消息成功🎉。\n'); - } else if (data.error_code === 400) { - console.log( - '请主动给bot发送一条消息并检查接收用户ID是否正确。\n', - ); - } else if (data.error_code === 401) { - console.log('Telegram bot token 填写错误。\n'); + if (strPtPin) { + var temptest = await getEnvByPtPin(strdecPtPin); + if (temptest) { + if (temptest.status == 0) { + isLogin = true; + await isLoginByX1a0He(temptest.value); + if (!isLogin) { + var tempid = 0; + if (temptest._id) { + tempid = temptest._id; + } + if (temptest.id) { + tempid =temptest.id; + } + const DisableCkBody = await DisableCk(tempid); + strPtPin = temptest.value; + strPtPin = (strPtPin.match(/pt_pin=([^; ]+)(?=;?)/) && strPtPin.match(/pt_pin=([^; ]+)(?=;?)/)[1]); + var strAllNotify = ""; + var MessageUserGp2 = ""; + var MessageUserGp3 = ""; + var MessageUserGp4 = ""; + + var userIndex2 = -1; + var userIndex3 = -1; + var userIndex4 = -1; + + var strNotifyOneTemp = ""; + if ($.isNode() && process.env.BEANCHANGE_USERGP2) { + MessageUserGp2 = process.env.BEANCHANGE_USERGP2 ? process.env.BEANCHANGE_USERGP2.split('&') : []; + } + + if ($.isNode() && process.env.BEANCHANGE_USERGP3) { + MessageUserGp3 = process.env.BEANCHANGE_USERGP3 ? process.env.BEANCHANGE_USERGP3.split('&') : []; + } + + if ($.isNode() && process.env.BEANCHANGE_USERGP4) { + MessageUserGp4 = process.env.BEANCHANGE_USERGP4 ? process.env.BEANCHANGE_USERGP4.split('&') : []; + } + + if (MessageUserGp4) { + userIndex4 = MessageUserGp4.findIndex((item) => item === strPtPin); + + } + if (MessageUserGp2) { + userIndex2 = MessageUserGp2.findIndex((item) => item === strPtPin); + } + if (MessageUserGp3) { + userIndex3 = MessageUserGp3.findIndex((item) => item === strPtPin); + } + + if (userIndex2 != -1) { + console.log(`该账号属于分组2`); + text = "京东CK检测#2"; + } + if (userIndex3 != -1) { + console.log(`该账号属于分组3`); + text = "京东CK检测#3"; + } + if (userIndex4 != -1) { + console.log(`该账号属于分组4`); + text = "京东CK检测#4"; + } + if (userIndex4 == -1 && userIndex2 == -1 && userIndex3 == -1) { + text = "京东CK检测"; + } + if (process.env.CHECKCK_ALLNOTIFY) { + strAllNotify = process.env.CHECKCK_ALLNOTIFY; + /* if (strTempNotify.length > 0) { + for (var TempNotifyl in strTempNotify) { + strAllNotify += strTempNotify[TempNotifyl] + '\n'; + } + }*/ + console.log(`检测到设定了温馨提示,将在推送信息中置顶显示...`); + strAllNotify = `\n【✨✨✨✨温馨提示✨✨✨✨】\n` + strAllNotify; + console.log(strAllNotify); + } + + if (DisableCkBody.code == 200) { + console.log(`京东账号` + strdecPtPin + `已失效,自动禁用成功!\n`); + + strNotifyOneTemp = `京东账号: ` + strdecPtPin + ` 已失效,自动禁用成功!\n如果要继续挂机,请联系管理员重新登录账号,账号有效期为30天.`; + strNotifyOneTemp += "\n任务标题:" + strtext; + if (strAllNotify) + strNotifyOneTemp += `\n` + strAllNotify; + desp = strNotifyOneTemp; + if (WP_APP_TOKEN_ONE) { + await sendNotifybyWxPucher(`账号过期下线通知`, strNotifyOneTemp, strdecPtPin); + } + + } else { + console.log(`京东账号` + strPtPin + `已失效,自动禁用失败!\n`); + strNotifyOneTemp = `京东账号: ` + strdecPtPin + ` 已失效!\n如果要继续挂机,请联系管理员重新登录账号,账号有效期为30天.`; + strNotifyOneTemp += "\n任务标题:" + strtext; + if (strAllNotify) + strNotifyOneTemp += `\n` + strAllNotify; + desp = strNotifyOneTemp; + if (WP_APP_TOKEN_ONE) { + await sendNotifybyWxPucher(`账号过期下线通知`, strNotifyOneTemp, strdecPtPin); + } + } + } else { + console.log(`该CK已经检测没有有效,跳过通知...`); + llHaderror = true; + } + } else { + console.log(`该CK已经禁用不需要处理`); + llHaderror = true; + } + + } + + } else { + console.log(`CK过期通知处理失败...`); + } + if (llHaderror) + return; } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(data); } - }); - } else { - resolve(); - } - }); -} -function ddBotNotify(text, desp) { - return new Promise((resolve) => { - const options = { - url: `https://oapi.dingtalk.com/robot/send?access_token=${DD_BOT_TOKEN}`, - json: { - msgtype: 'text', - text: { - content: ` ${text}\n\n${desp}`, - }, - }, - headers: { - 'Content-Type': 'application/json', - }, - timeout, - }; - if (DD_BOT_TOKEN && DD_BOT_SECRET) { - const crypto = require('crypto'); - const dateNow = Date.now(); - const hmac = crypto.createHmac('sha256', DD_BOT_SECRET); - hmac.update(`${dateNow}\n${DD_BOT_SECRET}`); - const result = encodeURIComponent(hmac.digest('base64')); - options.url = `${options.url}×tamp=${dateNow}&sign=${result}`; - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log('钉钉发送通知消息失败!!\n'); - console.log(err); - } else { - data = JSON.parse(data); - if (data.errcode === 0) { - console.log('钉钉发送通知消息成功🎉。\n'); - } else { - console.log(`${data.errmsg}\n`); + if (strtext.indexOf("cookie已失效") != -1 || strdesp.indexOf("重新登录获取") != -1 || strtext == "Ninja 运行通知") { + if (Notify_NoCKFalse == "true" && text != "Ninja 运行通知") { + console.log(`检测到NOTIFY_NOCKFALSE变量为true,不发送ck失效通知...`); + return; } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(data); } - }); - } else if (DD_BOT_TOKEN) { - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log('钉钉发送通知消息失败!!\n'); - console.log(err); - } else { - data = JSON.parse(data); - if (data.errcode === 0) { - console.log('钉钉发送通知消息完成。\n'); + + //检查黑名单屏蔽通知 + const notifySkipList = process.env.NOTIFY_SKIP_LIST ? process.env.NOTIFY_SKIP_LIST.split('&') : []; + let titleIndex = notifySkipList.findIndex((item) => item === text); + + if (titleIndex !== -1) { + console.log(`${text} 在推送黑名单中,已跳过推送`); + return; + } + + if (text.indexOf("已可领取") != -1) { + if (text.indexOf("农场") != -1) { + strTitle = "东东农场领取"; } else { - console.log(`${data.errmsg}\n`); + strTitle = "东东萌宠领取"; } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(data); } - }); - } else { - resolve(); - } - }); -} + if (text.indexOf("汪汪乐园养joy") != -1) { + strTitle = "汪汪乐园养joy领取"; + } -function qywxBotNotify(text, desp) { - return new Promise((resolve) => { - const options = { - url: `https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=${QYWX_KEY}`, - json: { - msgtype: 'text', - text: { - content: ` ${text}\n\n${desp}`, - }, - }, - headers: { - 'Content-Type': 'application/json', - }, - timeout, - }; - if (QYWX_KEY) { - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log('企业微信发送通知消息失败!!\n'); - console.log(err); - } else { - data = JSON.parse(data); - if (data.errcode === 0) { - console.log('企业微信发送通知消息成功🎉。\n'); - } else { - console.log(`${data.errmsg}\n`); + if (text == "京喜工厂") { + if (desp.indexOf("元造进行兑换") != -1) { + strTitle = "京喜工厂领取"; } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(data); } - }); - } else { - resolve(); - } - }); -} -function ChangeUserId(desp) { - const QYWX_AM_AY = QYWX_AM.split(','); - if (QYWX_AM_AY[2]) { - const userIdTmp = QYWX_AM_AY[2].split('|'); - let userId = ''; - for (let i = 0; i < userIdTmp.length; i++) { - const count = '账号' + (i + 1); - const count2 = '签到号 ' + (i + 1); - if (desp.match(count2)) { - userId = userIdTmp[i]; - } - } - if (!userId) userId = QYWX_AM_AY[2]; - return userId; - } else { - return '@all'; - } -} + if (text.indexOf("任务") != -1 && (text.indexOf("新增") != -1 || text.indexOf("删除") != -1)) { + strTitle = "脚本任务更新"; + } + if (strTitle) { + const notifyRemindList = process.env.NOTIFY_NOREMIND ? process.env.NOTIFY_NOREMIND.split('&') : []; + titleIndex = notifyRemindList.findIndex((item) => item === strTitle); -function qywxamNotify(text, desp) { - return new Promise((resolve) => { - if (QYWX_AM) { - const QYWX_AM_AY = QYWX_AM.split(','); - const options_accesstoken = { - url: `https://qyapi.weixin.qq.com/cgi-bin/gettoken`, - json: { - corpid: `${QYWX_AM_AY[0]}`, - corpsecret: `${QYWX_AM_AY[1]}`, - }, - headers: { - 'Content-Type': 'application/json', - }, - timeout, - }; - $.post(options_accesstoken, (err, resp, data) => { - html = desp.replace(/\n/g, '
'); - var json = JSON.parse(data); - accesstoken = json.access_token; - let options; - - switch (QYWX_AM_AY[4]) { - case '0': - options = { - msgtype: 'textcard', - textcard: { - title: `${text}`, - description: `${desp}`, - url: 'https://github.com/whyour/qinglong', - btntxt: '更多', - }, - }; - break; + if (titleIndex !== -1) { + console.log(`${text} 在领取信息黑名单中,已跳过推送`); + return; + } - case '1': - options = { - msgtype: 'text', - text: { - content: `${text}\n\n${desp}`, - }, - }; - break; + } else { + strTitle = text; + } - default: - options = { - msgtype: 'mpnews', - mpnews: { - articles: [ - { - title: `${text}`, - thumb_media_id: `${QYWX_AM_AY[4]}`, - author: `智能助手`, - content_source_url: ``, - content: `${html}`, - digest: `${desp}`, - }, - ], - }, - }; + if (Notify_NoLoginSuccess == "true") { + if (desp.indexOf("登陆成功") != -1) { + console.log(`登陆成功不推送`); + return; + } } - if (!QYWX_AM_AY[4]) { - //如不提供第四个参数,则默认进行文本消息类型推送 - options = { - msgtype: 'text', - text: { - content: `${text}\n\n${desp}`, - }, - }; - } - options = { - url: `https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=${accesstoken}`, - json: { - touser: `${ChangeUserId(desp)}`, - agentid: `${QYWX_AM_AY[3]}`, - safe: '0', - ...options, - }, - headers: { - 'Content-Type': 'application/json', - }, - }; - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log( - '成员ID:' + - ChangeUserId(desp) + - '企业微信应用消息发送通知消息失败!!\n', - ); - console.log(err); - } else { - data = JSON.parse(data); - if (data.errcode === 0) { - console.log( - '成员ID:' + - ChangeUserId(desp) + - '企业微信应用消息发送通知消息成功🎉。\n', - ); - } else { - console.log(`${data.errmsg}\n`); - } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(data); - } - }); - }); - } else { - resolve(); + if (strTitle == "汪汪乐园养joy领取" && WP_APP_TOKEN_ONE) { + console.log(`捕获汪汪乐园养joy领取通知,开始尝试一对一推送...`); + var strPtPin = await GetPtPin(text); + var strdecPtPin = decodeURIComponent(strPtPin); + if (strPtPin) { + await sendNotifybyWxPucher("汪汪乐园领取通知", `【京东账号】${strdecPtPin}\n当前等级: 30\n已自动领取最高等级奖励\n请前往京东极速版APP查看使用优惠券\n活动入口:京东极速版APP->我的->优惠券->京券`, strdecPtPin); + } + } + + console.log("通知标题: " + strTitle); + + //检查脚本名称是否需要通知到Group2,Group2读取原环境配置的变量名后加2的值.例如: QYWX_AM2 + const notifyGroup2List = process.env.NOTIFY_GROUP2_LIST ? process.env.NOTIFY_GROUP2_LIST.split('&') : []; + const titleIndex2 = notifyGroup2List.findIndex((item) => item === strTitle); + const notifyGroup3List = process.env.NOTIFY_GROUP3_LIST ? process.env.NOTIFY_GROUP3_LIST.split('&') : []; + const titleIndexGp3 = notifyGroup3List.findIndex((item) => item === strTitle); + const notifyGroup4List = process.env.NOTIFY_GROUP4_LIST ? process.env.NOTIFY_GROUP4_LIST.split('&') : []; + const titleIndexGp4 = notifyGroup4List.findIndex((item) => item === strTitle); + const notifyGroup5List = process.env.NOTIFY_GROUP5_LIST ? process.env.NOTIFY_GROUP5_LIST.split('&') : []; + const titleIndexGp5 = notifyGroup5List.findIndex((item) => item === strTitle); + const notifyGroup6List = process.env.NOTIFY_GROUP6_LIST ? process.env.NOTIFY_GROUP6_LIST.split('&') : []; + const titleIndexGp6 = notifyGroup6List.findIndex((item) => item === strTitle); + const notifyGroup7List = process.env.NOTIFY_GROUP7_LIST ? process.env.NOTIFY_GROUP7_LIST.split('&') : []; + const titleIndexGp7 = notifyGroup7List.findIndex((item) => item === strTitle); + + if (titleIndex2 !== -1) { + console.log(`${strTitle} 在群组2推送名单中,初始化群组推送`); + UseGroupNotify = 2; + } + if (titleIndexGp3 !== -1) { + console.log(`${strTitle} 在群组3推送名单中,初始化群组推送`); + UseGroupNotify = 3; + } + if (titleIndexGp4 !== -1) { + console.log(`${strTitle} 在群组4推送名单中,初始化群组推送`); + UseGroupNotify = 4; + } + if (titleIndexGp5 !== -1) { + console.log(`${strTitle} 在群组5推送名单中,初始化群组推送`); + UseGroupNotify = 5; + } + if (titleIndexGp6 !== -1) { + console.log(`${strTitle} 在群组6推送名单中,初始化群组推送`); + UseGroupNotify = 6; + } + if (titleIndexGp7 !== -1) { + console.log(`${strTitle} 在群组7推送名单中,初始化群组推送`); + UseGroupNotify = 7; + } + if (process.env.NOTIFY_CUSTOMNOTIFY) { + strCustom = process.env.NOTIFY_CUSTOMNOTIFY; + } + if (strCustom) { + strCustomArr = strCustom.replace(/^\[|\]$/g, "").split(","); + strCustomTempArr = []; + for (var Tempj in strCustomArr) { + strCustomTempArr = strCustomArr[Tempj].split("&"); + if (strCustomTempArr.length > 1) { + if (strTitle == strCustomTempArr[0]) { + console.log("检测到自定义设定,开始执行配置..."); + if (strCustomTempArr[1] == "组1") { + console.log("自定义设定强制使用组1配置通知..."); + UseGroupNotify = 1; + } + if (strCustomTempArr[1] == "组2") { + console.log("自定义设定强制使用组2配置通知..."); + UseGroupNotify = 2; + } + if (strCustomTempArr[1] == "组3") { + console.log("自定义设定强制使用组3配置通知..."); + UseGroupNotify = 3; + } + if (strCustomTempArr[1] == "组4") { + console.log("自定义设定强制使用组4配置通知..."); + UseGroupNotify = 4; + } + if (strCustomTempArr[1] == "组5") { + console.log("自定义设定强制使用组5配置通知..."); + UseGroupNotify = 5; + } + if (strCustomTempArr[1] == "组6") { + console.log("自定义设定强制使用组6配置通知..."); + UseGroupNotify = 6; + } + if (strCustomTempArr[1] == "组7") { + console.log("自定义设定强制使用组6配置通知..."); + UseGroupNotify = 7; + } + if (strCustomTempArr.length > 2) { + console.log("关闭所有通知变量..."); + Use_serverNotify = false; + Use_pushPlusNotify = false; + Use_pushPlushxtripNotify = false; + Use_BarkNotify = false; + Use_tgBotNotify = false; + Use_ddBotNotify = false; + Use_qywxBotNotify = false; + Use_qywxamNotify = false; + Use_iGotNotify = false; + Use_gobotNotify = false; + + for (let Tempk = 2; Tempk < strCustomTempArr.length; Tempk++) { + var strTrmp = strCustomTempArr[Tempk]; + switch (strTrmp) { + case "Server酱": + Use_serverNotify = true; + console.log("自定义设定启用Server酱进行通知..."); + break; + case "pushplus": + Use_pushPlusNotify = true; + console.log("自定义设定启用pushplus(推送加)进行通知..."); + break; + case "pushplushxtrip": + Use_pushPlushxtripNotify = true; + console.log("自定义设定启用pushplus_hxtrip(推送加)进行通知..."); + break; + case "Bark": + Use_BarkNotify = true; + console.log("自定义设定启用Bark进行通知..."); + break; + case "TG机器人": + Use_tgBotNotify = true; + console.log("自定义设定启用telegram机器人进行通知..."); + break; + case "钉钉": + Use_ddBotNotify = true; + console.log("自定义设定启用钉钉机器人进行通知..."); + break; + case "企业微信机器人": + Use_qywxBotNotify = true; + console.log("自定义设定启用企业微信机器人进行通知..."); + break; + case "企业微信应用消息": + Use_qywxamNotify = true; + console.log("自定义设定启用企业微信应用消息进行通知..."); + break; + case "iGotNotify": + Use_iGotNotify = true; + console.log("自定义设定启用iGot进行通知..."); + break; + case "gobotNotify": + Use_gobotNotify = true; + console.log("自定义设定启用go-cqhttp进行通知..."); + break; + case "WxPusher": + Use_WxPusher = true; + console.log("自定义设定启用WxPusher进行通知..."); + break; + + } + } + + } + } + } + } + + } + + //console.log("UseGroup2 :"+UseGroup2); + //console.log("UseGroup3 :"+UseGroup3); + + + switch (UseGroupNotify) { + case 1: + if (process.env.GOBOT_URL && Use_gobotNotify) { + GOBOT_URL = process.env.GOBOT_URL; + } + if (process.env.GOBOT_TOKEN && Use_gobotNotify) { + GOBOT_TOKEN = process.env.GOBOT_TOKEN; + } + if (process.env.GOBOT_QQ && Use_gobotNotify) { + GOBOT_QQ = process.env.GOBOT_QQ; + } + + if (process.env.PUSH_KEY && Use_serverNotify) { + SCKEY = process.env.PUSH_KEY; + } + + if (process.env.WP_APP_TOKEN && Use_WxPusher) { + WP_APP_TOKEN = process.env.WP_APP_TOKEN; + } + + if (process.env.WP_TOPICIDS && Use_WxPusher) { + WP_TOPICIDS = process.env.WP_TOPICIDS; + } + + if (process.env.WP_UIDS && Use_WxPusher) { + WP_UIDS = process.env.WP_UIDS; + } + + if (process.env.WP_URL && Use_WxPusher) { + WP_URL = process.env.WP_URL; + } + if (process.env.BARK_PUSH && Use_BarkNotify) { + if (process.env.BARK_PUSH.indexOf('https') > -1 || process.env.BARK_PUSH.indexOf('http') > -1) { + //兼容BARK自建用户 + BARK_PUSH = process.env.BARK_PUSH; + } else { + BARK_PUSH = `https://api.day.app/${process.env.BARK_PUSH}`; + } + if (process.env.BARK_SOUND) { + BARK_SOUND = process.env.BARK_SOUND; + } + if (process.env.BARK_GROUP) { + BARK_GROUP = process.env.BARK_GROUP; + } + } else { + if (BARK_PUSH && BARK_PUSH.indexOf('https') === -1 && BARK_PUSH.indexOf('http') === -1 && Use_BarkNotify) { + //兼容BARK本地用户只填写设备码的情况 + BARK_PUSH = `https://api.day.app/${BARK_PUSH}`; + } + } + if (process.env.TG_BOT_TOKEN && Use_tgBotNotify) { + TG_BOT_TOKEN = process.env.TG_BOT_TOKEN; + } + if (process.env.TG_USER_ID && Use_tgBotNotify) { + TG_USER_ID = process.env.TG_USER_ID; + } + if (process.env.TG_PROXY_AUTH && Use_tgBotNotify) + TG_PROXY_AUTH = process.env.TG_PROXY_AUTH; + if (process.env.TG_PROXY_HOST && Use_tgBotNotify) + TG_PROXY_HOST = process.env.TG_PROXY_HOST; + if (process.env.TG_PROXY_PORT && Use_tgBotNotify) + TG_PROXY_PORT = process.env.TG_PROXY_PORT; + if (process.env.TG_API_HOST && Use_tgBotNotify) + TG_API_HOST = process.env.TG_API_HOST; + + if (process.env.DD_BOT_TOKEN && Use_ddBotNotify) { + DD_BOT_TOKEN = process.env.DD_BOT_TOKEN; + if (process.env.DD_BOT_SECRET) { + DD_BOT_SECRET = process.env.DD_BOT_SECRET; + } + } + + if (process.env.QYWX_KEY && Use_qywxBotNotify) { + QYWX_KEY = process.env.QYWX_KEY; + } + + if (process.env.QYWX_AM && Use_qywxamNotify) { + QYWX_AM = process.env.QYWX_AM; + } + + if (process.env.IGOT_PUSH_KEY && Use_iGotNotify) { + IGOT_PUSH_KEY = process.env.IGOT_PUSH_KEY; + } + + if (process.env.PUSH_PLUS_TOKEN && Use_pushPlusNotify) { + PUSH_PLUS_TOKEN = process.env.PUSH_PLUS_TOKEN; + } + if (process.env.PUSH_PLUS_USER && Use_pushPlusNotify) { + PUSH_PLUS_USER = process.env.PUSH_PLUS_USER; + } + + if (process.env.PUSH_PLUS_TOKEN_hxtrip && Use_pushPlushxtripNotify) { + PUSH_PLUS_TOKEN_hxtrip = process.env.PUSH_PLUS_TOKEN_hxtrip; + } + if (process.env.PUSH_PLUS_USER_hxtrip && Use_pushPlushxtripNotify) { + PUSH_PLUS_USER_hxtrip = process.env.PUSH_PLUS_USER_hxtrip; + } + if (process.env.GOTIFY_URL) { + GOTIFY_URL = process.env.GOTIFY_URL; + } + if (process.env.GOTIFY_TOKEN) { + GOTIFY_TOKEN = process.env.GOTIFY_TOKEN; + } + if (process.env.GOTIFY_PRIORITY) { + GOTIFY_PRIORITY = process.env.GOTIFY_PRIORITY; + } + + break; + + case 2: + //==========================第二套环境变量赋值========================= + + if (process.env.GOBOT_URL2 && Use_gobotNotify) { + GOBOT_URL = process.env.GOBOT_URL2; + } + if (process.env.GOBOT_TOKEN2 && Use_gobotNotify) { + GOBOT_TOKEN = process.env.GOBOT_TOKEN2; + } + if (process.env.GOBOT_QQ2 && Use_gobotNotify) { + GOBOT_QQ = process.env.GOBOT_QQ2; + } + + if (process.env.PUSH_KEY2 && Use_serverNotify) { + SCKEY = process.env.PUSH_KEY2; + } + + if (process.env.WP_APP_TOKEN2 && Use_WxPusher) { + WP_APP_TOKEN = process.env.WP_APP_TOKEN2; + } + + if (process.env.WP_TOPICIDS2 && Use_WxPusher) { + WP_TOPICIDS = process.env.WP_TOPICIDS2; + } + + if (process.env.WP_UIDS2 && Use_WxPusher) { + WP_UIDS = process.env.WP_UIDS2; + } + + if (process.env.WP_URL2 && Use_WxPusher) { + WP_URL = process.env.WP_URL2; + } + if (process.env.BARK_PUSH2 && Use_BarkNotify) { + if (process.env.BARK_PUSH2.indexOf('https') > -1 || process.env.BARK_PUSH2.indexOf('http') > -1) { + //兼容BARK自建用户 + BARK_PUSH = process.env.BARK_PUSH2; + } else { + BARK_PUSH = `https://api.day.app/${process.env.BARK_PUSH2}`; + } + if (process.env.BARK_SOUND2) { + BARK_SOUND = process.env.BARK_SOUND2; + } + if (process.env.BARK_GROUP2) { + BARK_GROUP = process.env.BARK_GROUP2; + } + } + if (process.env.TG_BOT_TOKEN2 && Use_tgBotNotify) { + TG_BOT_TOKEN = process.env.TG_BOT_TOKEN2; + } + if (process.env.TG_USER_ID2 && Use_tgBotNotify) { + TG_USER_ID = process.env.TG_USER_ID2; + } + if (process.env.TG_PROXY_AUTH2 && Use_tgBotNotify) + TG_PROXY_AUTH = process.env.TG_PROXY_AUTH2; + if (process.env.TG_PROXY_HOST2 && Use_tgBotNotify) + TG_PROXY_HOST = process.env.TG_PROXY_HOST2; + if (process.env.TG_PROXY_PORT2 && Use_tgBotNotify) + TG_PROXY_PORT = process.env.TG_PROXY_PORT2; + if (process.env.TG_API_HOST2 && Use_tgBotNotify) + TG_API_HOST = process.env.TG_API_HOST2; + + if (process.env.DD_BOT_TOKEN2 && Use_ddBotNotify) { + DD_BOT_TOKEN = process.env.DD_BOT_TOKEN2; + if (process.env.DD_BOT_SECRET2) { + DD_BOT_SECRET = process.env.DD_BOT_SECRET2; + } + } + + if (process.env.QYWX_KEY2 && Use_qywxBotNotify) { + QYWX_KEY = process.env.QYWX_KEY2; + } + + if (process.env.QYWX_AM2 && Use_qywxamNotify) { + QYWX_AM = process.env.QYWX_AM2; + } + + if (process.env.IGOT_PUSH_KEY2 && Use_iGotNotify) { + IGOT_PUSH_KEY = process.env.IGOT_PUSH_KEY2; + } + + if (process.env.PUSH_PLUS_TOKEN2 && Use_pushPlusNotify) { + PUSH_PLUS_TOKEN = process.env.PUSH_PLUS_TOKEN2; + } + if (process.env.PUSH_PLUS_USER2 && Use_pushPlusNotify) { + PUSH_PLUS_USER = process.env.PUSH_PLUS_USER2; + } + + if (process.env.PUSH_PLUS_TOKEN_hxtrip2 && Use_pushPlushxtripNotify) { + PUSH_PLUS_TOKEN_hxtrip = process.env.PUSH_PLUS_TOKEN_hxtrip2; + } + if (process.env.PUSH_PLUS_USER_hxtrip2 && Use_pushPlushxtripNotify) { + PUSH_PLUS_USER_hxtrip = process.env.PUSH_PLUS_USER_hxtrip2; + } + if (process.env.GOTIFY_URL2) { + GOTIFY_URL = process.env.GOTIFY_URL2; + } + if (process.env.GOTIFY_TOKEN2) { + GOTIFY_TOKEN = process.env.GOTIFY_TOKEN2; + } + if (process.env.GOTIFY_PRIORITY2) { + GOTIFY_PRIORITY = process.env.GOTIFY_PRIORITY2; + } + break; + + case 3: + //==========================第三套环境变量赋值========================= + + if (process.env.GOBOT_URL3 && Use_gobotNotify) { + GOBOT_URL = process.env.GOBOT_URL3; + } + if (process.env.GOBOT_TOKEN3 && Use_gobotNotify) { + GOBOT_TOKEN = process.env.GOBOT_TOKEN3; + } + if (process.env.GOBOT_QQ3 && Use_gobotNotify) { + GOBOT_QQ = process.env.GOBOT_QQ3; + } + + if (process.env.PUSH_KEY3 && Use_serverNotify) { + SCKEY = process.env.PUSH_KEY3; + } + + if (process.env.WP_APP_TOKEN3 && Use_WxPusher) { + WP_APP_TOKEN = process.env.WP_APP_TOKEN3; + } + + if (process.env.WP_TOPICIDS3 && Use_WxPusher) { + WP_TOPICIDS = process.env.WP_TOPICIDS3; + } + + if (process.env.WP_UIDS3 && Use_WxPusher) { + WP_UIDS = process.env.WP_UIDS3; + } + + if (process.env.WP_URL3 && Use_WxPusher) { + WP_URL = process.env.WP_URL3; + } + + if (process.env.BARK_PUSH3 && Use_BarkNotify) { + if (process.env.BARK_PUSH3.indexOf('https') > -1 || process.env.BARK_PUSH3.indexOf('http') > -1) { + //兼容BARK自建用户 + BARK_PUSH = process.env.BARK_PUSH3; + } else { + BARK_PUSH = `https://api.day.app/${process.env.BARK_PUSH3}`; + } + if (process.env.BARK_SOUND3) { + BARK_SOUND = process.env.BARK_SOUND3; + } + if (process.env.BARK_GROUP3) { + BARK_GROUP = process.env.BARK_GROUP3; + } + } + if (process.env.TG_BOT_TOKEN3 && Use_tgBotNotify) { + TG_BOT_TOKEN = process.env.TG_BOT_TOKEN3; + } + if (process.env.TG_USER_ID3 && Use_tgBotNotify) { + TG_USER_ID = process.env.TG_USER_ID3; + } + if (process.env.TG_PROXY_AUTH3 && Use_tgBotNotify) + TG_PROXY_AUTH = process.env.TG_PROXY_AUTH3; + if (process.env.TG_PROXY_HOST3 && Use_tgBotNotify) + TG_PROXY_HOST = process.env.TG_PROXY_HOST3; + if (process.env.TG_PROXY_PORT3 && Use_tgBotNotify) + TG_PROXY_PORT = process.env.TG_PROXY_PORT3; + if (process.env.TG_API_HOST3 && Use_tgBotNotify) + TG_API_HOST = process.env.TG_API_HOST3; + + if (process.env.DD_BOT_TOKEN3 && Use_ddBotNotify) { + DD_BOT_TOKEN = process.env.DD_BOT_TOKEN3; + if (process.env.DD_BOT_SECRET3) { + DD_BOT_SECRET = process.env.DD_BOT_SECRET3; + } + } + + if (process.env.QYWX_KEY3 && Use_qywxBotNotify) { + QYWX_KEY = process.env.QYWX_KEY3; + } + + if (process.env.QYWX_AM3 && Use_qywxamNotify) { + QYWX_AM = process.env.QYWX_AM3; + } + + if (process.env.IGOT_PUSH_KEY3 && Use_iGotNotify) { + IGOT_PUSH_KEY = process.env.IGOT_PUSH_KEY3; + } + + if (process.env.PUSH_PLUS_TOKEN3 && Use_pushPlusNotify) { + PUSH_PLUS_TOKEN = process.env.PUSH_PLUS_TOKEN3; + } + if (process.env.PUSH_PLUS_USER3 && Use_pushPlusNotify) { + PUSH_PLUS_USER = process.env.PUSH_PLUS_USER3; + } + + if (process.env.PUSH_PLUS_TOKEN_hxtrip3 && Use_pushPlushxtripNotify) { + PUSH_PLUS_TOKEN_hxtrip = process.env.PUSH_PLUS_TOKEN_hxtrip3; + } + if (process.env.PUSH_PLUS_USER_hxtrip3 && Use_pushPlushxtripNotify) { + PUSH_PLUS_USER_hxtrip = process.env.PUSH_PLUS_USER_hxtrip3; + } + if (process.env.GOTIFY_URL3) { + GOTIFY_URL = process.env.GOTIFY_URL3; + } + if (process.env.GOTIFY_TOKEN3) { + GOTIFY_TOKEN = process.env.GOTIFY_TOKEN3; + } + if (process.env.GOTIFY_PRIORITY3) { + GOTIFY_PRIORITY = process.env.GOTIFY_PRIORITY3; + } + break; + + case 4: + //==========================第四套环境变量赋值========================= + + if (process.env.GOBOT_URL4 && Use_gobotNotify) { + GOBOT_URL = process.env.GOBOT_URL4; + } + if (process.env.GOBOT_TOKEN4 && Use_gobotNotify) { + GOBOT_TOKEN = process.env.GOBOT_TOKEN4; + } + if (process.env.GOBOT_QQ4 && Use_gobotNotify) { + GOBOT_QQ = process.env.GOBOT_QQ4; + } + + if (process.env.PUSH_KEY4 && Use_serverNotify) { + SCKEY = process.env.PUSH_KEY4; + } + + if (process.env.WP_APP_TOKEN4 && Use_WxPusher) { + WP_APP_TOKEN = process.env.WP_APP_TOKEN4; + } + + if (process.env.WP_TOPICIDS4 && Use_WxPusher) { + WP_TOPICIDS = process.env.WP_TOPICIDS4; + } + + if (process.env.WP_UIDS4 && Use_WxPusher) { + WP_UIDS = process.env.WP_UIDS4; + } + + if (process.env.WP_URL4 && Use_WxPusher) { + WP_URL = process.env.WP_URL4; + } + + if (process.env.BARK_PUSH4 && Use_BarkNotify) { + if (process.env.BARK_PUSH4.indexOf('https') > -1 || process.env.BARK_PUSH4.indexOf('http') > -1) { + //兼容BARK自建用户 + BARK_PUSH = process.env.BARK_PUSH4; + } else { + BARK_PUSH = `https://api.day.app/${process.env.BARK_PUSH4}`; + } + if (process.env.BARK_SOUND4) { + BARK_SOUND = process.env.BARK_SOUND4; + } + if (process.env.BARK_GROUP4) { + BARK_GROUP = process.env.BARK_GROUP4; + } + } + if (process.env.TG_BOT_TOKEN4 && Use_tgBotNotify) { + TG_BOT_TOKEN = process.env.TG_BOT_TOKEN4; + } + if (process.env.TG_USER_ID4 && Use_tgBotNotify) { + TG_USER_ID = process.env.TG_USER_ID4; + } + if (process.env.TG_PROXY_AUTH4 && Use_tgBotNotify) + TG_PROXY_AUTH = process.env.TG_PROXY_AUTH4; + if (process.env.TG_PROXY_HOST4 && Use_tgBotNotify) + TG_PROXY_HOST = process.env.TG_PROXY_HOST4; + if (process.env.TG_PROXY_PORT4 && Use_tgBotNotify) + TG_PROXY_PORT = process.env.TG_PROXY_PORT4; + if (process.env.TG_API_HOST4 && Use_tgBotNotify) + TG_API_HOST = process.env.TG_API_HOST4; + + if (process.env.DD_BOT_TOKEN4 && Use_ddBotNotify) { + DD_BOT_TOKEN = process.env.DD_BOT_TOKEN4; + if (process.env.DD_BOT_SECRET4) { + DD_BOT_SECRET = process.env.DD_BOT_SECRET4; + } + } + + if (process.env.QYWX_KEY4 && Use_qywxBotNotify) { + QYWX_KEY = process.env.QYWX_KEY4; + } + + if (process.env.QYWX_AM4 && Use_qywxamNotify) { + QYWX_AM = process.env.QYWX_AM4; + } + + if (process.env.IGOT_PUSH_KEY4 && Use_iGotNotify) { + IGOT_PUSH_KEY = process.env.IGOT_PUSH_KEY4; + } + + if (process.env.PUSH_PLUS_TOKEN4 && Use_pushPlusNotify) { + PUSH_PLUS_TOKEN = process.env.PUSH_PLUS_TOKEN4; + } + if (process.env.PUSH_PLUS_USER4 && Use_pushPlusNotify) { + PUSH_PLUS_USER = process.env.PUSH_PLUS_USER4; + } + + if (process.env.PUSH_PLUS_TOKEN_hxtrip4 && Use_pushPlushxtripNotify) { + PUSH_PLUS_TOKEN_hxtrip = process.env.PUSH_PLUS_TOKEN_hxtrip4; + } + if (process.env.PUSH_PLUS_USER_hxtrip4 && Use_pushPlushxtripNotify) { + PUSH_PLUS_USER_hxtrip = process.env.PUSH_PLUS_USER_hxtrip4; + } + if (process.env.GOTIFY_URL4) { + GOTIFY_URL = process.env.GOTIFY_URL4; + } + if (process.env.GOTIFY_TOKEN4) { + GOTIFY_TOKEN = process.env.GOTIFY_TOKEN4; + } + if (process.env.GOTIFY_PRIORITY4) { + GOTIFY_PRIORITY = process.env.GOTIFY_PRIORITY4; + } + break; + + case 5: + //==========================第五套环境变量赋值========================= + + if (process.env.GOBOT_URL5 && Use_gobotNotify) { + GOBOT_URL = process.env.GOBOT_URL5; + } + if (process.env.GOBOT_TOKEN5 && Use_gobotNotify) { + GOBOT_TOKEN = process.env.GOBOT_TOKEN5; + } + if (process.env.GOBOT_QQ5 && Use_gobotNotify) { + GOBOT_QQ = process.env.GOBOT_QQ5; + } + + if (process.env.PUSH_KEY5 && Use_serverNotify) { + SCKEY = process.env.PUSH_KEY5; + } + + if (process.env.WP_APP_TOKEN5 && Use_WxPusher) { + WP_APP_TOKEN = process.env.WP_APP_TOKEN5; + } + + if (process.env.WP_TOPICIDS5 && Use_WxPusher) { + WP_TOPICIDS = process.env.WP_TOPICIDS5; + } + + if (process.env.WP_UIDS5 && Use_WxPusher) { + WP_UIDS = process.env.WP_UIDS5; + } + + if (process.env.WP_URL5 && Use_WxPusher) { + WP_URL = process.env.WP_URL5; + } + if (process.env.BARK_PUSH5 && Use_BarkNotify) { + if (process.env.BARK_PUSH5.indexOf('https') > -1 || process.env.BARK_PUSH5.indexOf('http') > -1) { + //兼容BARK自建用户 + BARK_PUSH = process.env.BARK_PUSH5; + } else { + BARK_PUSH = `https://api.day.app/${process.env.BARK_PUSH5}`; + } + if (process.env.BARK_SOUND5) { + BARK_SOUND = process.env.BARK_SOUND5; + } + if (process.env.BARK_GROUP5) { + BARK_GROUP = process.env.BARK_GROUP5; + } + } + if (process.env.TG_BOT_TOKEN5 && Use_tgBotNotify) { + TG_BOT_TOKEN = process.env.TG_BOT_TOKEN5; + } + if (process.env.TG_USER_ID5 && Use_tgBotNotify) { + TG_USER_ID = process.env.TG_USER_ID5; + } + if (process.env.TG_PROXY_AUTH5 && Use_tgBotNotify) + TG_PROXY_AUTH = process.env.TG_PROXY_AUTH5; + if (process.env.TG_PROXY_HOST5 && Use_tgBotNotify) + TG_PROXY_HOST = process.env.TG_PROXY_HOST5; + if (process.env.TG_PROXY_PORT5 && Use_tgBotNotify) + TG_PROXY_PORT = process.env.TG_PROXY_PORT5; + if (process.env.TG_API_HOST5 && Use_tgBotNotify) + TG_API_HOST = process.env.TG_API_HOST5; + + if (process.env.DD_BOT_TOKEN5 && Use_ddBotNotify) { + DD_BOT_TOKEN = process.env.DD_BOT_TOKEN5; + if (process.env.DD_BOT_SECRET5) { + DD_BOT_SECRET = process.env.DD_BOT_SECRET5; + } + } + + if (process.env.QYWX_KEY5 && Use_qywxBotNotify) { + QYWX_KEY = process.env.QYWX_KEY5; + } + + if (process.env.QYWX_AM5 && Use_qywxamNotify) { + QYWX_AM = process.env.QYWX_AM5; + } + + if (process.env.IGOT_PUSH_KEY5 && Use_iGotNotify) { + IGOT_PUSH_KEY = process.env.IGOT_PUSH_KEY5; + } + + if (process.env.PUSH_PLUS_TOKEN5 && Use_pushPlusNotify) { + PUSH_PLUS_TOKEN = process.env.PUSH_PLUS_TOKEN5; + } + if (process.env.PUSH_PLUS_USER5 && Use_pushPlusNotify) { + PUSH_PLUS_USER = process.env.PUSH_PLUS_USER5; + } + + if (process.env.PUSH_PLUS_TOKEN_hxtrip5 && Use_pushPlushxtripNotify) { + PUSH_PLUS_TOKEN_hxtrip = process.env.PUSH_PLUS_TOKEN_hxtrip5; + } + if (process.env.PUSH_PLUS_USER_hxtrip5 && Use_pushPlushxtripNotify) { + PUSH_PLUS_USER_hxtrip = process.env.PUSH_PLUS_USER_hxtrip5; + } + if (process.env.GOTIFY_URL5) { + GOTIFY_URL = process.env.GOTIFY_URL5; + } + if (process.env.GOTIFY_TOKEN5) { + GOTIFY_TOKEN = process.env.GOTIFY_TOKEN5; + } + if (process.env.GOTIFY_PRIORITY5) { + GOTIFY_PRIORITY = process.env.GOTIFY_PRIORITY5; + } + break; + + case 6: + //==========================第六套环境变量赋值========================= + + if (process.env.GOBOT_URL6 && Use_gobotNotify) { + GOBOT_URL = process.env.GOBOT_URL6; + } + if (process.env.GOBOT_TOKEN6 && Use_gobotNotify) { + GOBOT_TOKEN = process.env.GOBOT_TOKEN6; + } + if (process.env.GOBOT_QQ6 && Use_gobotNotify) { + GOBOT_QQ = process.env.GOBOT_QQ6; + } + + if (process.env.PUSH_KEY6 && Use_serverNotify) { + SCKEY = process.env.PUSH_KEY6; + } + + if (process.env.WP_APP_TOKEN6 && Use_WxPusher) { + WP_APP_TOKEN = process.env.WP_APP_TOKEN6; + } + + if (process.env.WP_TOPICIDS6 && Use_WxPusher) { + WP_TOPICIDS = process.env.WP_TOPICIDS6; + } + + if (process.env.WP_UIDS6 && Use_WxPusher) { + WP_UIDS = process.env.WP_UIDS6; + } + + if (process.env.WP_URL6 && Use_WxPusher) { + WP_URL = process.env.WP_URL6; + } + if (process.env.BARK_PUSH6 && Use_BarkNotify) { + if (process.env.BARK_PUSH6.indexOf('https') > -1 || process.env.BARK_PUSH6.indexOf('http') > -1) { + //兼容BARK自建用户 + BARK_PUSH = process.env.BARK_PUSH6; + } else { + BARK_PUSH = `https://api.day.app/${process.env.BARK_PUSH6}`; + } + if (process.env.BARK_SOUND6) { + BARK_SOUND = process.env.BARK_SOUND6; + } + if (process.env.BARK_GROUP6) { + BARK_GROUP = process.env.BARK_GROUP6; + } + } + if (process.env.TG_BOT_TOKEN6 && Use_tgBotNotify) { + TG_BOT_TOKEN = process.env.TG_BOT_TOKEN6; + } + if (process.env.TG_USER_ID6 && Use_tgBotNotify) { + TG_USER_ID = process.env.TG_USER_ID6; + } + if (process.env.TG_PROXY_AUTH6 && Use_tgBotNotify) + TG_PROXY_AUTH = process.env.TG_PROXY_AUTH6; + if (process.env.TG_PROXY_HOST6 && Use_tgBotNotify) + TG_PROXY_HOST = process.env.TG_PROXY_HOST6; + if (process.env.TG_PROXY_PORT6 && Use_tgBotNotify) + TG_PROXY_PORT = process.env.TG_PROXY_PORT6; + if (process.env.TG_API_HOST6 && Use_tgBotNotify) + TG_API_HOST = process.env.TG_API_HOST6; + + if (process.env.DD_BOT_TOKEN6 && Use_ddBotNotify) { + DD_BOT_TOKEN = process.env.DD_BOT_TOKEN6; + if (process.env.DD_BOT_SECRET6) { + DD_BOT_SECRET = process.env.DD_BOT_SECRET6; + } + } + + if (process.env.QYWX_KEY6 && Use_qywxBotNotify) { + QYWX_KEY = process.env.QYWX_KEY6; + } + + if (process.env.QYWX_AM6 && Use_qywxamNotify) { + QYWX_AM = process.env.QYWX_AM6; + } + + if (process.env.IGOT_PUSH_KEY6 && Use_iGotNotify) { + IGOT_PUSH_KEY = process.env.IGOT_PUSH_KEY6; + } + + if (process.env.PUSH_PLUS_TOKEN6 && Use_pushPlusNotify) { + PUSH_PLUS_TOKEN = process.env.PUSH_PLUS_TOKEN6; + } + if (process.env.PUSH_PLUS_USER6 && Use_pushPlusNotify) { + PUSH_PLUS_USER = process.env.PUSH_PLUS_USER6; + } + + if (process.env.PUSH_PLUS_TOKEN_hxtrip6 && Use_pushPlushxtripNotify) { + PUSH_PLUS_TOKEN_hxtrip = process.env.PUSH_PLUS_TOKEN_hxtrip6; + } + if (process.env.PUSH_PLUS_USER_hxtrip6 && Use_pushPlushxtripNotify) { + PUSH_PLUS_USER_hxtrip = process.env.PUSH_PLUS_USER_hxtrip6; + } + if (process.env.GOTIFY_URL6) { + GOTIFY_URL = process.env.GOTIFY_URL6; + } + if (process.env.GOTIFY_TOKEN6) { + GOTIFY_TOKEN = process.env.GOTIFY_TOKEN6; + } + if (process.env.GOTIFY_PRIORITY6) { + GOTIFY_PRIORITY = process.env.GOTIFY_PRIORITY6; + } + break; + + case 7: + //==========================第七套环境变量赋值========================= + + if (process.env.GOBOT_URL7 && Use_gobotNotify) { + GOBOT_URL = process.env.GOBOT_URL7; + } + if (process.env.GOBOT_TOKEN7 && Use_gobotNotify) { + GOBOT_TOKEN = process.env.GOBOT_TOKEN7; + } + if (process.env.GOBOT_QQ7 && Use_gobotNotify) { + GOBOT_QQ = process.env.GOBOT_QQ7; + } + + if (process.env.PUSH_KEY7 && Use_serverNotify) { + SCKEY = process.env.PUSH_KEY7; + } + + if (process.env.WP_APP_TOKEN7 && Use_WxPusher) { + WP_APP_TOKEN = process.env.WP_APP_TOKEN7; + } + + if (process.env.WP_TOPICIDS7 && Use_WxPusher) { + WP_TOPICIDS = process.env.WP_TOPICIDS7; + } + + if (process.env.WP_UIDS7 && Use_WxPusher) { + WP_UIDS = process.env.WP_UIDS7; + } + + if (process.env.WP_URL7 && Use_WxPusher) { + WP_URL = process.env.WP_URL7; + } + if (process.env.BARK_PUSH7 && Use_BarkNotify) { + if (process.env.BARK_PUSH7.indexOf('https') > -1 || process.env.BARK_PUSH7.indexOf('http') > -1) { + //兼容BARK自建用户 + BARK_PUSH = process.env.BARK_PUSH7; + } else { + BARK_PUSH = `https://api.day.app/${process.env.BARK_PUSH7}`; + } + if (process.env.BARK_SOUND7) { + BARK_SOUND = process.env.BARK_SOUND7; + } + if (process.env.BARK_GROUP7) { + BARK_GROUP = process.env.BARK_GROUP7; + } + } + if (process.env.TG_BOT_TOKEN7 && Use_tgBotNotify) { + TG_BOT_TOKEN = process.env.TG_BOT_TOKEN7; + } + if (process.env.TG_USER_ID7 && Use_tgBotNotify) { + TG_USER_ID = process.env.TG_USER_ID7; + } + if (process.env.TG_PROXY_AUTH7 && Use_tgBotNotify) + TG_PROXY_AUTH = process.env.TG_PROXY_AUTH7; + if (process.env.TG_PROXY_HOST7 && Use_tgBotNotify) + TG_PROXY_HOST = process.env.TG_PROXY_HOST7; + if (process.env.TG_PROXY_PORT7 && Use_tgBotNotify) + TG_PROXY_PORT = process.env.TG_PROXY_PORT7; + if (process.env.TG_API_HOST7 && Use_tgBotNotify) + TG_API_HOST = process.env.TG_API_HOST7; + + if (process.env.DD_BOT_TOKEN7 && Use_ddBotNotify) { + DD_BOT_TOKEN = process.env.DD_BOT_TOKEN7; + if (process.env.DD_BOT_SECRET7) { + DD_BOT_SECRET = process.env.DD_BOT_SECRET7; + } + } + + if (process.env.QYWX_KEY7 && Use_qywxBotNotify) { + QYWX_KEY = process.env.QYWX_KEY7; + } + + if (process.env.QYWX_AM7 && Use_qywxamNotify) { + QYWX_AM = process.env.QYWX_AM7; + } + + if (process.env.IGOT_PUSH_KEY7 && Use_iGotNotify) { + IGOT_PUSH_KEY = process.env.IGOT_PUSH_KEY7; + } + + if (process.env.PUSH_PLUS_TOKEN7 && Use_pushPlusNotify) { + PUSH_PLUS_TOKEN = process.env.PUSH_PLUS_TOKEN7; + } + if (process.env.PUSH_PLUS_USER7 && Use_pushPlusNotify) { + PUSH_PLUS_USER = process.env.PUSH_PLUS_USER7; + } + + if (process.env.PUSH_PLUS_TOKEN_hxtrip7 && Use_pushPlushxtripNotify) { + PUSH_PLUS_TOKEN_hxtrip = process.env.PUSH_PLUS_TOKEN_hxtrip7; + } + if (process.env.PUSH_PLUS_USER_hxtrip7 && Use_pushPlushxtripNotify) { + PUSH_PLUS_USER_hxtrip = process.env.PUSH_PLUS_USER_hxtrip7; + } + if (process.env.GOTIFY_URL7) { + GOTIFY_URL = process.env.GOTIFY_URL7; + } + if (process.env.GOTIFY_TOKEN7) { + GOTIFY_TOKEN = process.env.GOTIFY_TOKEN7; + } + if (process.env.GOTIFY_PRIORITY7) { + GOTIFY_PRIORITY = process.env.GOTIFY_PRIORITY7; + } + break; + } + + //检查是否在不使用Remark进行名称替换的名单 + const notifySkipRemarkList = process.env.NOTIFY_SKIP_NAMETYPELIST ? process.env.NOTIFY_SKIP_NAMETYPELIST.split('&') : []; + const titleIndex3 = notifySkipRemarkList.findIndex((item) => item === strTitle); + + if (text == "京东到家果园互助码:") { + ShowRemarkType = "1"; + if (desp) { + var arrTemp = desp.split(","); + var allCode = ""; + for (let k = 0; k < arrTemp.length; k++) { + if (arrTemp[k]) { + if (arrTemp[k].substring(0, 1) != "@") + allCode += arrTemp[k] + ","; + } + } + + if (allCode) { + desp += '\n' + '\n' + "ccwav格式化后的互助码:" + '\n' + allCode; + } + } + } + + if (ShowRemarkType != "1" && titleIndex3 == -1) { + console.log("sendNotify正在处理账号Remark....."); + //开始读取青龙变量列表 + const envs = await getEnvs(); + if (envs[0]) { + var strTempdesp = []; + var strAllNotify = ""; + if (text == "京东资产变动" || text == "京东资产变动#2" || text == "京东资产变动#3" || text == "京东资产变动#4") { + strTempdesp = desp.split('🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏'); + if (strTempdesp.length == 2) { + strAllNotify = strTempdesp[0]; + desp = strTempdesp[1]; + } + + } + + for (let i = 0; i < envs.length; i++) { + cookie = envs[i].value; + $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]); + $.Remark = getRemark(envs[i].remarks); + $.nickName = ""; + $.FoundnickName = ""; + $.FoundPin = ""; + //判断有没有Remark,没有搞个屁,有的继续 + if ($.Remark) { + //先查找缓存文件中有没有这个账号,有的话直接读取别名 + if (envs[i].status == 0) { + if (TempCK) { + for (let j = 0; j < TempCK.length; j++) { + if (TempCK[j].pt_pin == $.UserName) { + $.FoundPin = TempCK[j].pt_pin; + $.nickName = TempCK[j].nickName; + } + } + } + if (!$.FoundPin) { + //缓存文件中有没有这个账号,调用京东接口获取别名,并更新缓存文件 + console.log($.UserName + "好像是新账号,尝试获取别名....."); + await GetnickName(); + if (!$.nickName) { + console.log("别名获取失败,尝试调用另一个接口获取别名....."); + await GetnickName2(); + } + if ($.nickName) { + console.log("好像是新账号,从接口获取别名" + $.nickName); + } else { + console.log($.UserName + "该账号没有别名....."); + } + tempAddCK = { + "pt_pin": $.UserName, + "nickName": $.nickName + }; + TempCK.push(tempAddCK); + //标识,需要更新缓存文件 + boolneedUpdate = true; + } + } + + $.nickName = $.nickName || $.UserName; + + //开始替换内容中的名字 + if (ShowRemarkType == "2") { + $.Remark = $.nickName + "(" + $.Remark + ")"; + } + if (ShowRemarkType == "3") { + $.Remark = $.UserName + "(" + $.Remark + ")"; + } + + try { + //额外处理1,nickName包含星号 + $.nickName = $.nickName.replace(new RegExp(`[*]`, 'gm'), "[*]"); + text = text.replace(new RegExp(`${$.UserName}|${$.nickName}`, 'gm'), $.Remark); + if (text == "京东资产变动" || text == "京东资产变动#2" || text == "京东资产变动#3" || text == "京东资产变动#4") { + var Tempinfo = ""; + if(envs[i].created) + Tempinfo=getQLinfo(cookie, envs[i].created, envs[i].timestamp, envs[i].remarks); + else + Tempinfo=getQLinfo(cookie, envs[i].createdAt, envs[i].timestamp, envs[i].remarks); + if (Tempinfo) { + $.Remark += Tempinfo; + } + } + + desp = desp.replace(new RegExp(`${$.UserName}|${$.nickName}`, 'gm'), $.Remark); + strsummary = strsummary.replace(new RegExp(`${$.UserName}|${$.nickName}`, 'gm'), $.Remark); + //额外处理2,nickName不包含星号,但是确实是手机号 + var tempname = $.UserName; + if (tempname.length == 13 && tempname.substring(8)) { + tempname = tempname.substring(0, 3) + "[*][*][*][*][*]" + tempname.substring(8); + //console.log("额外处理2:"+tempname); + text = text.replace(new RegExp(tempname, 'gm'), $.Remark); + desp = desp.replace(new RegExp(tempname, 'gm'), $.Remark); + strsummary = strsummary.replace(new RegExp(tempname, 'gm'), $.Remark); + } + + } catch (err) { + console.log("替换出错了"); + console.log("Debug Name1 :" + $.UserName); + console.log("Debug Name2 :" + $.nickName); + console.log("Debug Remark :" + $.Remark); + } + + //console.log($.nickName+$.Remark); + + } + + } + + } + console.log("处理完成,开始发送通知..."); + if (strAllNotify) { + desp = strAllNotify + "\n" + desp; + } + } + } catch (error) { + console.error(error); + } + + if (boolneedUpdate) { + var str = JSON.stringify(TempCK, null, 2); + fs.writeFile(strCKFile, str, function (err) { + if (err) { + console.log(err); + console.log("更新CKName_cache.json失败!"); + } else { + console.log("缓存文件CKName_cache.json更新成功!"); + } + }) + } + + //提供6种通知 + desp = buildLastDesp(desp, author) + + await serverNotify(text, desp); //微信server酱 + + if (PUSH_PLUS_TOKEN_hxtrip) { + console.log("hxtrip TOKEN :" + PUSH_PLUS_TOKEN_hxtrip); + } + if (PUSH_PLUS_USER_hxtrip) { + console.log("hxtrip USER :" + PUSH_PLUS_USER_hxtrip); + } + PushErrorTime = 0; + await pushPlusNotifyhxtrip(text, desp); //pushplushxtrip(推送加) + if (PushErrorTime > 0) { + console.log("等待1分钟后重试....."); + await $.wait(60000); + await pushPlusNotifyhxtrip(text, desp); + } + + if (PUSH_PLUS_TOKEN) { + console.log("PUSH_PLUS TOKEN :" + PUSH_PLUS_TOKEN); + } + if (PUSH_PLUS_USER) { + console.log("PUSH_PLUS USER :" + PUSH_PLUS_USER); + } + PushErrorTime = 0; + await pushPlusNotify(text, desp); //pushplus(推送加) + if (PushErrorTime > 0) { + console.log("等待1分钟后重试....."); + await $.wait(60000); + await pushPlusNotify(text, desp); //pushplus(推送加) + } + if (PushErrorTime > 0) { + console.log("等待1分钟后重试....."); + await $.wait(60000); + await pushPlusNotify(text, desp); //pushplus(推送加) + } - }); + + //由于上述两种微信通知需点击进去才能查看到详情,故text(标题内容)携带了账号序号以及昵称信息,方便不点击也可知道是哪个京东哪个活动 + text = text.match(/.*?(?=\s?-)/g) ? text.match(/.*?(?=\s?-)/g)[0] : text; + await Promise.all([ + BarkNotify(text, desp, params), //iOS Bark APP + tgBotNotify(text, desp), //telegram 机器人 + ddBotNotify(text, desp), //钉钉机器人 + qywxBotNotify(text, desp), //企业微信机器人 + qywxamNotify(text, desp, strsummary), //企业微信应用消息推送 + iGotNotify(text, desp, params), //iGot + gobotNotify(text, desp), //go-cqhttp + gotifyNotify(text, desp), //gotify + wxpusherNotify(text, desp) // wxpusher + ]); } -function iGotNotify(text, desp, params = {}) { - return new Promise((resolve) => { - if (IGOT_PUSH_KEY) { - // 校验传入的IGOT_PUSH_KEY是否有效 - const IGOT_PUSH_KEY_REGX = new RegExp('^[a-zA-Z0-9]{24}$'); - if (!IGOT_PUSH_KEY_REGX.test(IGOT_PUSH_KEY)) { - console.log('您所提供的IGOT_PUSH_KEY无效\n'); - resolve(); - return; - } - const options = { - url: `https://push.hellyw.com/${IGOT_PUSH_KEY.toLowerCase()}`, - body: `title=${text}&content=${desp}&${querystring.stringify(params)}`, - headers: { - 'Content-Type': 'application/x-www-form-urlencoded', - }, - timeout, - }; - $.post(options, (err, resp, data) => { - try { - if (err) { - console.log('发送通知调用API失败!!\n'); - console.log(err); - } else { - if (typeof data === 'string') data = JSON.parse(data); - if (data.ret === 0) { - console.log('iGot发送通知消息成功🎉\n'); - } else { - console.log(`iGot发送通知消息失败:${data.errMsg}\n`); +function getuuid(strRemark, PtPin) { + var strTempuuid = ""; + if (strRemark) { + var Tempindex = strRemark.indexOf("@@"); + if (Tempindex != -1) { + console.log(PtPin + ": 检测到NVJDC的一对一格式,瑞思拜~!"); + var TempRemarkList = strRemark.split("@@"); + for (let j = 1; j < TempRemarkList.length; j++) { + if (TempRemarkList[j]) { + if (TempRemarkList[j].length > 4) { + if (TempRemarkList[j].substring(0, 4) == "UID_") { + strTempuuid = TempRemarkList[j]; + break; + } + } + } } - } - } catch (e) { - $.logErr(e, resp); - } finally { - resolve(data); + if (!strTempuuid) { + console.log("检索资料失败..."); + } + } + } + if (!strTempuuid && TempCKUid) { + console.log("正在从CK_WxPusherUid文件中检索资料..."); + for (let j = 0; j < TempCKUid.length; j++) { + if (PtPin == decodeURIComponent(TempCKUid[j].pt_pin)) { + strTempuuid = TempCKUid[j].Uid; + break; + } + } + } + return strTempuuid; +} + +function getQLinfo(strCK, intcreated, strTimestamp, strRemark) { + var strCheckCK = strCK.match(/pt_key=([^; ]+)(?=;?)/) && strCK.match(/pt_key=([^; ]+)(?=;?)/)[1]; + var strPtPin = decodeURIComponent(strCK.match(/pt_pin=([^; ]+)(?=;?)/) && strCK.match(/pt_pin=([^; ]+)(?=;?)/)[1]); + var strReturn = ""; + if (strCheckCK.substring(0, 3) == "AAJ") { + var DateCreated = new Date(intcreated); + var DateTimestamp = new Date(strTimestamp); + var DateToday = new Date(); + if (strRemark) { + var Tempindex = strRemark.indexOf("@@"); + if (Tempindex != -1) { + //console.log(strPtPin + ": 检测到NVJDC的备注格式,尝试获取登录时间,瑞思拜~!"); + var TempRemarkList = strRemark.split("@@"); + for (let j = 1; j < TempRemarkList.length; j++) { + if (TempRemarkList[j]) { + if (TempRemarkList[j].length == 13) { + DateTimestamp = new Date(parseInt(TempRemarkList[j])); + //console.log(strPtPin + ": 获取登录时间成功:" + GetDateTime(DateTimestamp)); + break; + } + } + } + } + } + + //过期时间 + var UseDay = Math.ceil((DateToday.getTime() - DateCreated.getTime()) / 86400000); + var LogoutDay = 30 - Math.ceil((DateToday.getTime() - DateTimestamp.getTime()) / 86400000); + if (LogoutDay < 1) { + strReturn = "\n【登录信息】总挂机" + UseDay + "天(账号即将到期,请重登续期)" + } else { + strReturn = "\n【登录信息】总挂机" + UseDay + "天(有效期约剩" + LogoutDay + "天)" + } + + } + return strReturn +} + +function getRemark(strRemark) { + if (strRemark) { + var Tempindex = strRemark.indexOf("@@"); + if (Tempindex != -1) { + var TempRemarkList = strRemark.split("@@"); + return TempRemarkList[0].trim(); + } else { + //这是为了处理ninjia的remark格式 + strRemark = strRemark.replace("remark=", ""); + strRemark = strRemark.replace(";", ""); + return strRemark.trim(); } - }); } else { - resolve(); + return ""; } - }); } -function pushPlusNotify(text, desp) { - return new Promise((resolve) => { - if (PUSH_PLUS_TOKEN) { - desp = desp.replace(/[\n\r]/g, '
'); // 默认为html, 不支持plaintext - const body = { - token: `${PUSH_PLUS_TOKEN}`, - title: `${text}`, - content: `${desp}`, - topic: `${PUSH_PLUS_USER}`, - }; +async function sendNotifybyWxPucher(text, desp, PtPin, author = '\n\n本通知 By ccwav Mod', strsummary = "") { + + try { + var Uid = ""; + var UserRemark = ""; + var strTempdesp = []; + var strAllNotify = ""; + if (text == "京东资产变动") { + strTempdesp = desp.split('🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏🎏'); + if (strTempdesp.length == 2) { + strAllNotify = strTempdesp[0]; + desp = strTempdesp[1]; + } + + } + + if (WP_APP_TOKEN_ONE) { + var tempEnv = await getEnvByPtPin(PtPin); + if (tempEnv) { + cookie = tempEnv.value; + Uid = getuuid(tempEnv.remarks, PtPin); + UserRemark = getRemark(tempEnv.remarks); + + if (Uid) { + console.log("查询到Uid :" + Uid); + WP_UIDS_ONE = Uid; + console.log("正在发送一对一通知,请稍后..."); + + if (text == "京东资产变动") { + try { + $.nickName = ""; + $.FoundPin = ""; + $.UserName = PtPin; + if (tempEnv.status == 0) { + if (TempCK) { + for (let j = 0; j < TempCK.length; j++) { + if (TempCK[j].pt_pin == $.UserName) { + $.FoundPin = TempCK[j].pt_pin; + $.nickName = TempCK[j].nickName; + } + } + } + if (!$.FoundPin) { + //缓存文件中有没有这个账号,调用京东接口获取别名,并更新缓存文件 + console.log($.UserName + "好像是新账号,尝试获取别名....."); + await GetnickName(); + if (!$.nickName) { + console.log("别名获取失败,尝试调用另一个接口获取别名....."); + await GetnickName2(); + } + } + } + + $.nickName = $.nickName || $.UserName; + + //额外处理1,nickName包含星号 + $.nickName = $.nickName.replace(new RegExp(`[*]`, 'gm'), "[*]"); + + var Tempinfo = ""; + if(tempEnv.created) + Tempinfo=getQLinfo(cookie, tempEnv.created, tempEnv.timestamp, tempEnv.remarks); + else + Tempinfo=getQLinfo(cookie, tempEnv.createdAt, tempEnv.timestamp, tempEnv.remarks); + + if (Tempinfo) { + Tempinfo = $.nickName + Tempinfo; + desp = desp.replace(new RegExp(`${$.UserName}|${$.nickName}`, 'gm'), Tempinfo); + } + + //额外处理2,nickName不包含星号,但是确实是手机号 + var tempname = $.UserName; + if (tempname.length == 13 && tempname.substring(8)) { + tempname = tempname.substring(0, 3) + "[*][*][*][*][*]" + tempname.substring(8); + desp = desp.replace(new RegExp(tempname, 'gm'), $.Remark); + } + + } catch (err) { + console.log("替换出错了"); + console.log("Debug Name1 :" + $.UserName); + console.log("Debug Name2 :" + $.nickName); + console.log("Debug Remark :" + $.Remark); + } + } + if (UserRemark) { + text = text + " (" + UserRemark + ")"; + } + console.log("处理完成,开始发送通知..."); + desp = buildLastDesp(desp, author); + if (strAllNotify) { + desp = strAllNotify + "\n" + desp; + } + await wxpusherNotifyByOne(text, desp, strsummary); + } else { + console.log("未查询到用户的Uid,取消一对一通知发送..."); + } + } + } else { + console.log("变量WP_APP_TOKEN_ONE未配置WxPusher的appToken, 取消发送..."); + + } + } catch (error) { + console.error(error); + } + +} + +async function GetPtPin(text) { + try { + const TempList = text.split('- '); + if (TempList.length > 1) { + var strNickName = TempList[TempList.length - 1]; + var strPtPin = ""; + console.log(`捕获别名:` + strNickName); + if (TempCK) { + for (let j = 0; j < TempCK.length; j++) { + if (TempCK[j].nickName == strNickName) { + strPtPin = TempCK[j].pt_pin; + break; + } + if (TempCK[j].pt_pin == strNickName) { + strPtPin = TempCK[j].pt_pin; + break; + } + } + if (strPtPin) { + console.log(`反查PtPin成功:` + strPtPin); + return strPtPin; + } else { + console.log(`别名反查PtPin失败: 1.用户更改了别名 2.可能是新用户,别名缓存还没有。`); + return ""; + } + } + } else { + console.log(`标题格式无法捕获别名...`); + return ""; + } + } catch (error) { + console.error(error); + return ""; + } + +} + +async function isLoginByX1a0He(cookie) { + return new Promise((resolve) => { + const options = { + url: 'https://plogin.m.jd.com/cgi-bin/ml/islogin', + headers: { + "Cookie": cookie, + "referer": "https://h5.m.jd.com/", + "User-Agent": "jdapp;iPhone;10.1.2;15.0;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", + }, + } + $.get(options, (err, resp, data) => { + try { + if (data) { + data = JSON.parse(data); + if (data.islogin === "1") { + console.log(`使用X1a0He写的接口加强检测: Cookie有效\n`) + } else if (data.islogin === "0") { + isLogin = false; + console.log(`使用X1a0He写的接口加强检测: Cookie无效\n`) + } else { + console.log(`使用X1a0He写的接口加强检测: 未知返回,不作变更...\n`) + } + } + } catch (e) { + console.log(e); + } + finally { + resolve(); + } + }); + }); +} + +function gotifyNotify(text, desp) { + return new Promise((resolve) => { + if (GOTIFY_URL && GOTIFY_TOKEN) { + const options = { + url: `${GOTIFY_URL}/message?token=${GOTIFY_TOKEN}`, + body: `title=${encodeURIComponent(text)}&message=${encodeURIComponent(desp)}&priority=${GOTIFY_PRIORITY}`, + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + } + }; + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log('gotify发送通知调用API失败!!\n'); + console.log(err); + } else { + data = JSON.parse(data); + if (data.id) { + console.log('gotify发送通知消息成功🎉\n'); + } else { + console.log(`${data.message}\n`); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(); + } + }); + } else { + resolve(); + } + }); +} + +function gobotNotify(text, desp, time = 2100) { + return new Promise((resolve) => { + if (GOBOT_URL) { + const options = { + url: `${GOBOT_URL}?access_token=${GOBOT_TOKEN}&${GOBOT_QQ}`, + json: { + message: `${text}\n${desp}` + }, + headers: { + 'Content-Type': 'application/json', + }, + timeout, + }; + setTimeout(() => { + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log('发送go-cqhttp通知调用API失败!!\n'); + console.log(err); + } else { + data = JSON.parse(data); + if (data.retcode === 0) { + console.log('go-cqhttp发送通知消息成功🎉\n'); + } else if (data.retcode === 100) { + console.log(`go-cqhttp发送通知消息异常: ${data.errmsg}\n`); + } else { + console.log(`go-cqhttp发送通知消息异常\n${JSON.stringify(data)}`); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + }, time); + } else { + resolve(); + } + }); +} + +function serverNotify(text, desp, time = 2100) { + return new Promise((resolve) => { + if (SCKEY) { + //微信server酱推送通知一个\n不会换行,需要两个\n才能换行,故做此替换 + desp = desp.replace(/[\n\r]/g, '\n\n'); + const options = { + url: SCKEY.includes('SCT') ? `https://sctapi.ftqq.com/${SCKEY}.send` : `https://sc.ftqq.com/${SCKEY}.send`, + body: `text=${text}&desp=${desp}`, + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + }, + timeout, + }; + setTimeout(() => { + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log('发送通知调用API失败!!\n'); + console.log(err); + } else { + data = JSON.parse(data); + //server酱和Server酱·Turbo版的返回json格式不太一样 + if (data.errno === 0 || data.data.errno === 0) { + console.log('server酱发送通知消息成功🎉\n'); + } else if (data.errno === 1024) { + // 一分钟内发送相同的内容会触发 + console.log(`server酱发送通知消息异常: ${data.errmsg}\n`); + } else { + console.log(`server酱发送通知消息异常\n${JSON.stringify(data)}`); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + }, time); + } else { + resolve(); + } + }); +} + +function BarkNotify(text, desp, params = {}) { + return new Promise((resolve) => { + if (BARK_PUSH) { + const options = { + url: `${BARK_PUSH}/${encodeURIComponent(text)}/${encodeURIComponent( + desp + )}?sound=${BARK_SOUND}&group=${BARK_GROUP}&${querystring.stringify(params)}`, + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + }, + timeout, + }; + $.get(options, (err, resp, data) => { + try { + if (err) { + console.log('Bark APP发送通知调用API失败!!\n'); + console.log(err); + } else { + data = JSON.parse(data); + if (data.code === 200) { + console.log('Bark APP发送通知消息成功🎉\n'); + } else { + console.log(`${data.message}\n`); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(); + } + }); + } else { + resolve(); + } + }); +} + +function tgBotNotify(text, desp) { + return new Promise(resolve => { + if (TG_BOT_TOKEN && TG_USER_ID) { const options = { - url: `https://www.pushplus.plus/send`, - body: JSON.stringify(body), + url: `https://${TG_API_HOST}/bot${TG_BOT_TOKEN}/sendMessage`, + json: { + chat_id: `${TG_USER_ID}`, + text: `${text}\n\n${desp}`, + disable_web_page_preview:true, + }, headers: { - 'Content-Type': ' application/json', + 'Content-Type': 'application/json', }, - timeout, - }; + timeout + } + if (TG_PROXY_HOST && TG_PROXY_PORT) { + const tunnel = require("tunnel"); + const agent = { + https: tunnel.httpsOverHttp({ + proxy: { + host: TG_PROXY_HOST, + port: TG_PROXY_PORT * 1, + proxyAuth: TG_PROXY_AUTH + } + }) + } + Object.assign(options, {agent}) + } $.post(options, (err, resp, data) => { try { if (err) { - console.log( - `push+发送${ - PUSH_PLUS_USER ? '一对多' : '一对一' - }通知消息失败!!\n`, - ); + console.log('telegram发送通知消息失败!!\n') console.log(err); } else { data = JSON.parse(data); - if (data.code === 200) { - console.log( - `push+发送${ - PUSH_PLUS_USER ? '一对多' : '一对一' - }通知消息完成。\n`, - ); - } else { - console.log( - `push+发送${ - PUSH_PLUS_USER ? '一对多' : '一对一' - }通知消息失败:${data.msg}\n`, - ); + if (data.ok) { + console.log('Telegram发送通知消息成功�。\n') + } else if (data.error_code === 400) { + console.log('请主动给bot发送一条消息并检查接收用户ID是否正确。\n') + } else if (data.error_code === 401) { + console.log('Telegram bot token 填写错误。\n') } } } catch (e) { @@ -873,17 +2039,954 @@ function pushPlusNotify(text, desp) { } finally { resolve(data); } - }); + }) + } else { + resolve() + } + }) +} + +function ddBotNotify(text, desp) { + return new Promise((resolve) => { + const options = { + url: `https://oapi.dingtalk.com/robot/send?access_token=${DD_BOT_TOKEN}`, + json: { + msgtype: 'text', + text: { + content: ` ${text}\n\n${desp}`, + }, + }, + headers: { + 'Content-Type': 'application/json', + }, + timeout, + }; + if (DD_BOT_TOKEN && DD_BOT_SECRET) { + const crypto = require('crypto'); + const dateNow = Date.now(); + const hmac = crypto.createHmac('sha256', DD_BOT_SECRET); + hmac.update(`${dateNow}\n${DD_BOT_SECRET}`); + const result = encodeURIComponent(hmac.digest('base64')); + options.url = `${options.url}×tamp=${dateNow}&sign=${result}`; + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log('钉钉发送通知消息失败!!\n'); + console.log(err); + } else { + data = JSON.parse(data); + if (data.errcode === 0) { + console.log('钉钉发送通知消息成功🎉。\n'); + } else { + console.log(`${data.errmsg}\n`); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + } else if (DD_BOT_TOKEN) { + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log('钉钉发送通知消息失败!!\n'); + console.log(err); + } else { + data = JSON.parse(data); + if (data.errcode === 0) { + console.log('钉钉发送通知消息完成。\n'); + } else { + console.log(`${data.errmsg}\n`); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + } else { + resolve(); + } + }); +} + +function qywxBotNotify(text, desp) { + return new Promise((resolve) => { + const options = { + url: `https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=${QYWX_KEY}`, + json: { + msgtype: 'text', + text: { + content: ` ${text}\n\n${desp}`, + }, + }, + headers: { + 'Content-Type': 'application/json', + }, + timeout, + }; + if (QYWX_KEY) { + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log('企业微信发送通知消息失败!!\n'); + console.log(err); + } else { + data = JSON.parse(data); + if (data.errcode === 0) { + console.log('企业微信发送通知消息成功🎉。\n'); + } else { + console.log(`${data.errmsg}\n`); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + } else { + resolve(); + } + }); +} + +function buildLastDesp(desp, author = '') { + author = process.env.NOTIFY_AUTHOR || author; + if (process.env.NOTIFY_AUTHOR_BLANK || !author) { + return desp.trim(); + } else { + if (!author.match(/本通知 By/)) { + author = `\n\n本通知 By ${author}` + } + return desp.trim() + author + "\n通知时间: " + GetDateTime(new Date()); + } +} + +function ChangeUserId(desp) { + const QYWX_AM_AY = QYWX_AM.split(','); + if (QYWX_AM_AY[2]) { + const userIdTmp = QYWX_AM_AY[2].split('|'); + let userId = ''; + for (let i = 0; i < userIdTmp.length; i++) { + const count = '账号' + (i + 1); + const count2 = '签到号 ' + (i + 1); + if (desp.match(count2)) { + userId = userIdTmp[i]; + } + } + if (!userId) + userId = QYWX_AM_AY[2]; + return userId; } else { - resolve(); + return '@all'; } - }); +} + +function qywxamNotify(text, desp, strsummary = "") { + return new Promise((resolve) => { + if (QYWX_AM) { + const QYWX_AM_AY = QYWX_AM.split(','); + const options_accesstoken = { + url: `https://qyapi.weixin.qq.com/cgi-bin/gettoken`, + json: { + corpid: `${QYWX_AM_AY[0]}`, + corpsecret: `${QYWX_AM_AY[1]}`, + }, + headers: { + 'Content-Type': 'application/json', + }, + timeout, + }; + $.post(options_accesstoken, (err, resp, data) => { + html = desp.replace(/\n/g, '
'); + html = `${html}`; + if (strsummary == "") { + strsummary = desp; + } + var json = JSON.parse(data); + accesstoken = json.access_token; + let options; + + switch (QYWX_AM_AY[4]) { + case '0': + options = { + msgtype: 'textcard', + textcard: { + title: `${text}`, + description: `${strsummary}`, + url: 'https://github.com/whyour/qinglong', + btntxt: '更多', + }, + }; + break; + + case '1': + options = { + msgtype: 'text', + text: { + content: `${text}\n\n${desp}`, + }, + }; + break; + + default: + options = { + msgtype: 'mpnews', + mpnews: { + articles: [{ + title: `${text}`, + thumb_media_id: `${QYWX_AM_AY[4]}`, + author: `智能助手`, + content_source_url: ``, + content: `${html}`, + digest: `${strsummary}`, + }, ], + }, + }; + } + if (!QYWX_AM_AY[4]) { + //如不提供第四个参数,则默认进行文本消息类型推送 + options = { + msgtype: 'text', + text: { + content: `${text}\n\n${desp}`, + }, + }; + } + options = { + url: `https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=${accesstoken}`, + json: { + touser: `${ChangeUserId(desp)}`, + agentid: `${QYWX_AM_AY[3]}`, + safe: '0', + ...options, + }, + headers: { + 'Content-Type': 'application/json', + }, + }; + + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log('成员ID:' + ChangeUserId(desp) + '企业微信应用消息发送通知消息失败!!\n'); + console.log(err); + } else { + data = JSON.parse(data); + if (data.errcode === 0) { + console.log('成员ID:' + ChangeUserId(desp) + '企业微信应用消息发送通知消息成功🎉。\n'); + } else { + console.log(`${data.errmsg}\n`); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + }); + } else { + resolve(); + } + }); +} + +function iGotNotify(text, desp, params = {}) { + return new Promise((resolve) => { + if (IGOT_PUSH_KEY) { + // 校验传入的IGOT_PUSH_KEY是否有效 + const IGOT_PUSH_KEY_REGX = new RegExp('^[a-zA-Z0-9]{24}$'); + if (!IGOT_PUSH_KEY_REGX.test(IGOT_PUSH_KEY)) { + console.log('您所提供的IGOT_PUSH_KEY无效\n'); + resolve(); + return; + } + const options = { + url: `https://push.hellyw.com/${IGOT_PUSH_KEY.toLowerCase()}`, + body: `title=${text}&content=${desp}&${querystring.stringify(params)}`, + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + }, + timeout, + }; + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log('发送通知调用API失败!!\n'); + console.log(err); + } else { + if (typeof data === 'string') + data = JSON.parse(data); + if (data.ret === 0) { + console.log('iGot发送通知消息成功🎉\n'); + } else { + console.log(`iGot发送通知消息失败:${data.errMsg}\n`); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + } else { + resolve(); + } + }); +} +function pushPlusNotifyhxtrip(text, desp) { + return new Promise((resolve) => { + if (PUSH_PLUS_TOKEN_hxtrip) { + //desp = `${desp}`; + + desp = desp.replace(/[\n\r]/g, '
'); // 默认为html, 不支持plaintext + const body = { + token: `${PUSH_PLUS_TOKEN_hxtrip}`, + title: `${text}`, + content: `${desp}`, + topic: `${PUSH_PLUS_USER_hxtrip}`, + }; + const options = { + url: `http://pushplus.hxtrip.com/send`, + body: JSON.stringify(body), + headers: { + 'Content-Type': ' application/json', + }, + timeout, + }; + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log(`hxtrip push+发送${PUSH_PLUS_USER_hxtrip ? '一对多' : '一对一'}通知消息失败!!\n`); + PushErrorTime += 1; + console.log(err); + } else { + if (data.indexOf("200") > -1) { + console.log(`hxtrip push+发送${PUSH_PLUS_USER_hxtrip ? '一对多' : '一对一'}通知消息完成。\n`); + PushErrorTime = 0; + } else { + console.log(`hxtrip push+发送${PUSH_PLUS_USER_hxtrip ? '一对多' : '一对一'}通知消息失败:${data}\n`); + PushErrorTime += 1; + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + } else { + resolve(); + } + }); +} + +function pushPlusNotify(text, desp) { + return new Promise((resolve) => { + if (PUSH_PLUS_TOKEN) { + + //desp = `${desp}`; + + desp = desp.replace(/[\n\r]/g, '
'); // 默认为html, 不支持plaintext + const body = { + token: `${PUSH_PLUS_TOKEN}`, + title: `${text}`, + content: `${desp}`, + topic: `${PUSH_PLUS_USER}`, + }; + const options = { + url: `https://www.pushplus.plus/send`, + body: JSON.stringify(body), + headers: { + 'Content-Type': ' application/json', + }, + timeout, + }; + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log(`push+发送${PUSH_PLUS_USER ? '一对多' : '一对一'}通知消息失败!!\n`); + PushErrorTime += 1; + console.log(err); + } else { + data = JSON.parse(data); + if (data.code === 200) { + console.log(`push+发送${PUSH_PLUS_USER ? '一对多' : '一对一'}通知消息完成。\n`); + PushErrorTime = 0; + } else { + console.log(`push+发送${PUSH_PLUS_USER ? '一对多' : '一对一'}通知消息失败:${data.msg}\n`); + PushErrorTime += 1; + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + } else { + resolve(); + } + }); +} +function wxpusherNotifyByOne(text, desp, strsummary = "") { + return new Promise((resolve) => { + if (WP_APP_TOKEN_ONE) { + var WPURL = ""; + if (strsummary) { + strsummary = text + "\n" + strsummary; + } else { + strsummary = text + "\n" + desp; + } + + if (strsummary.length > 96) { + strsummary = strsummary.substring(0, 95) + "..."; + } + let uids = []; + for (let i of WP_UIDS_ONE.split(";")) { + if (i.length != 0) + uids.push(i); + }; + let topicIds = []; + + //desp = `${desp}`; + desp = desp.replace(/[\n\r]/g, '
'); // 默认为html, 不支持plaintext + desp = `
+
+
+

+ ${text} +

+
+
+
+
+

+ 📢 +

+
+
+
+
+
+

+ ${desp} +

+
+
+
`; + + const body = { + appToken: `${WP_APP_TOKEN_ONE}`, + content: `${desp}`, + summary: `${strsummary}`, + contentType: 2, + topicIds: topicIds, + uids: uids, + url: `${WPURL}`, + }; + const options = { + url: `http://wxpusher.zjiecode.com/api/send/message`, + body: JSON.stringify(body), + headers: { + "Content-Type": "application/json", + }, + timeout, + }; + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log("WxPusher 发送通知调用 API 失败!!\n"); + console.log(err); + } else { + data = JSON.parse(data); + if (data.code === 1000) { + console.log("WxPusher 发送通知消息成功!\n"); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + } else { + resolve(); + } + }); +} + +function wxpusherNotify(text, desp) { + return new Promise((resolve) => { + if (WP_APP_TOKEN) { + let uids = []; + for (let i of WP_UIDS.split(";")) { + if (i.length != 0) + uids.push(i); + }; + let topicIds = []; + for (let i of WP_TOPICIDS.split(";")) { + if (i.length != 0) + topicIds.push(i); + }; + desp = `${text}\n\n${desp}`; + desp = desp.replace(/[\n\r]/g, '
'); // 默认为html, 不支持plaintext + const body = { + appToken: `${WP_APP_TOKEN}`, + content: `${text}\n\n${desp}`, + summary: `${text}`, + contentType: 2, + topicIds: topicIds, + uids: uids, + url: `${WP_URL}`, + }; + const options = { + url: `http://wxpusher.zjiecode.com/api/send/message`, + body: JSON.stringify(body), + headers: { + "Content-Type": "application/json", + }, + timeout, + }; + $.post(options, (err, resp, data) => { + try { + if (err) { + console.log("WxPusher 发送通知调用 API 失败!!\n"); + console.log(err); + } else { + data = JSON.parse(data); + if (data.code === 1000) { + console.log("WxPusher 发送通知消息成功!\n"); + } + } + } catch (e) { + $.logErr(e, resp); + } + finally { + resolve(data); + } + }); + } else { + resolve(); + } + }); +} + +function GetDateTime(date) { + + var timeString = ""; + + var timeString = date.getFullYear() + "-"; + if ((date.getMonth() + 1) < 10) + timeString += "0" + (date.getMonth() + 1) + "-"; + else + timeString += (date.getMonth() + 1) + "-"; + + if ((date.getDate()) < 10) + timeString += "0" + date.getDate() + " "; + else + timeString += date.getDate() + " "; + + if ((date.getHours()) < 10) + timeString += "0" + date.getHours() + ":"; + else + timeString += date.getHours() + ":"; + + if ((date.getMinutes()) < 10) + timeString += "0" + date.getMinutes() + ":"; + else + timeString += date.getMinutes() + ":"; + + if ((date.getSeconds()) < 10) + timeString += "0" + date.getSeconds(); + else + timeString += date.getSeconds(); + + return timeString; +} + +function GetnickName() { + return new Promise(async resolve => { + const options = { + url: "https://me-api.jd.com/user_new/info/GetJDUserInfoUnion", + headers: { + Host: "me-api.jd.com", + Accept: "*/*", + Connection: "keep-alive", + Cookie: cookie, + "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"), + "Accept-Language": "zh-cn", + "Referer": "https://home.m.jd.com/myJd/newhome.action?sceneval=2&ufc=&", + "Accept-Encoding": "gzip, deflate, br" + } + } + $.get(options, (err, resp, data) => { + try { + if (err) { + $.logErr(err) + } else { + if (data) { + data = JSON.parse(data); + if (data['retcode'] === "1001") { + return; + } + if (data['retcode'] === "0" && data.data && data.data.hasOwnProperty("userInfo")) { + $.nickName = data.data.userInfo.baseInfo.nickname; + } + + } else { + $.log('京东服务器返回空数据'); + } + } + } catch (e) { + $.logErr(e) + } + finally { + resolve(); + } + }) + }) +} + +function GetnickName2() { + return new Promise(async(resolve) => { + const options = { + url: `https://wxapp.m.jd.com/kwxhome/myJd/home.json?&useGuideModule=0&bizId=&brandId=&fromType=wxapp×tamp=${Date.now()}`, + headers: { + Cookie: cookie, + 'content-type': `application/x-www-form-urlencoded`, + Connection: `keep-alive`, + 'Accept-Encoding': `gzip,compress,br,deflate`, + Referer: `https://servicewechat.com/wxa5bf5ee667d91626/161/page-frame.html`, + Host: `wxapp.m.jd.com`, + 'User-Agent': `Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.10(0x18000a2a) NetType/WIFI Language/zh_CN`, + }, + }; + $.post(options, (err, resp, data) => { + try { + if (err) { + $.logErr(err); + } else { + if (data) { + data = JSON.parse(data); + if (!data.user) { + $.isLogin = false; //cookie过期 + return; + } + const userInfo = data.user; + if (userInfo) { + $.nickName = userInfo.petName; + } + } else { + $.log('京东服务器返回空数据'); + } + } + } catch (e) { + $.logErr(e); + } + finally { + resolve(); + } + }); + }); } module.exports = { - sendNotify, - BARK_PUSH, + sendNotify, + sendNotifybyWxPucher, + BARK_PUSH, }; // prettier-ignore -function Env(t,s){return new class{constructor(t,s){this.name=t,this.data=null,this.dataFile="box.dat",this.logs=[],this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,s),this.log("",`\ud83d\udd14${this.name}, \u5f00\u59cb!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}getScript(t){return new Promise(s=>{$.get({url:t},(t,e,i)=>s(i))})}runScript(t,s){return new Promise(e=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let o=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");o=o?1*o:20,o=s&&s.timeout?s.timeout:o;const[h,a]=i.split("@"),r={url:`http://${a}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:o},headers:{"X-Key":h,Accept:"*/*"}};$.post(r,(t,s,i)=>e(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),s=this.path.resolve(process.cwd(),this.dataFile),e=this.fs.existsSync(t),i=!e&&this.fs.existsSync(s);if(!e&&!i)return{};{const i=e?t:s;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),s=this.path.resolve(process.cwd(),this.dataFile),e=this.fs.existsSync(t),i=!e&&this.fs.existsSync(s),o=JSON.stringify(this.data);e?this.fs.writeFileSync(t,o):i?this.fs.writeFileSync(s,o):this.fs.writeFileSync(t,o)}}lodash_get(t,s,e){const i=s.replace(/\[(\d+)\]/g,".$1").split(".");let o=t;for(const t of i)if(o=Object(o)[t],void 0===o)return e;return o}lodash_set(t,s,e){return Object(t)!==t?t:(Array.isArray(s)||(s=s.toString().match(/[^.[\]]+/g)||[]),s.slice(0,-1).reduce((t,e,i)=>Object(t[e])===t[e]?t[e]:t[e]=Math.abs(s[i+1])>>0==+s[i+1]?[]:{},t)[s[s.length-1]]=e,t)}getdata(t){let s=this.getval(t);if(/^@/.test(t)){const[,e,i]=/^@(.*?)\.(.*?)$/.exec(t),o=e?this.getval(e):"";if(o)try{const t=JSON.parse(o);s=t?this.lodash_get(t,i,""):s}catch(t){s=""}}return s}setdata(t,s){let e=!1;if(/^@/.test(s)){const[,i,o]=/^@(.*?)\.(.*?)$/.exec(s),h=this.getval(i),a=i?"null"===h?null:h||"{}":"{}";try{const s=JSON.parse(a);this.lodash_set(s,o,t),e=this.setval(JSON.stringify(s),i)}catch(s){const h={};this.lodash_set(h,o,t),e=this.setval(JSON.stringify(h),i)}}else e=$.setval(t,s);return e}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,s){return this.isSurge()||this.isLoon()?$persistentStore.write(t,s):this.isQuanX()?$prefs.setValueForKey(t,s):this.isNode()?(this.data=this.loaddata(),this.data[s]=t,this.writedata(),!0):this.data&&this.data[s]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,s=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?$httpClient.get(t,(t,e,i)=>{!t&&e&&(e.body=i,e.statusCode=e.status),s(t,e,i)}):this.isQuanX()?$task.fetch(t).then(t=>{const{statusCode:e,statusCode:i,headers:o,body:h}=t;s(null,{status:e,statusCode:i,headers:o,body:h},h)},t=>s(t)):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,s)=>{try{const e=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();this.ckjar.setCookieSync(e,null),s.cookieJar=this.ckjar}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:e,statusCode:i,headers:o,body:h}=t;s(null,{status:e,statusCode:i,headers:o,body:h},h)},t=>s(t)))}post(t,s=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),delete t.headers["Content-Length"],this.isSurge()||this.isLoon())$httpClient.post(t,(t,e,i)=>{!t&&e&&(e.body=i,e.statusCode=e.status),s(t,e,i)});else if(this.isQuanX())t.method="POST",$task.fetch(t).then(t=>{const{statusCode:e,statusCode:i,headers:o,body:h}=t;s(null,{status:e,statusCode:i,headers:o,body:h},h)},t=>s(t));else if(this.isNode()){this.initGotEnv(t);const{url:e,...i}=t;this.got.post(e,i).then(t=>{const{statusCode:e,statusCode:i,headers:o,body:h}=t;s(null,{status:e,statusCode:i,headers:o,body:h},h)},t=>s(t))}}time(t){let s={"M+":(new Date).getMonth()+1,"d+":(new Date).getDate(),"H+":(new Date).getHours(),"m+":(new Date).getMinutes(),"s+":(new Date).getSeconds(),"q+":Math.floor(((new Date).getMonth()+3)/3),S:(new Date).getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,((new Date).getFullYear()+"").substr(4-RegExp.$1.length)));for(let e in s)new RegExp("("+e+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?s[e]:("00"+s[e]).substr((""+s[e]).length)));return t}msg(s=t,e="",i="",o){const h=t=>!t||!this.isLoon()&&this.isSurge()?t:"string"==typeof t?this.isLoon()?t:this.isQuanX()?{"open-url":t}:void 0:"object"==typeof t&&(t["open-url"]||t["media-url"])?this.isLoon()?t["open-url"]:this.isQuanX()?t:void 0:void 0;$.isMute||(this.isSurge()||this.isLoon()?$notification.post(s,e,i,h(o)):this.isQuanX()&&$notify(s,e,i,h(o))),this.logs.push("","==============\ud83d\udce3\u7cfb\u7edf\u901a\u77e5\ud83d\udce3=============="),this.logs.push(s),e&&this.logs.push(e),i&&this.logs.push(i)}log(...t){t.length>0?this.logs=[...this.logs,...t]:console.log(this.logs.join(this.logSeparator))}logErr(t,s){const e=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();e?$.log("",`\u2757\ufe0f${this.name}, \u9519\u8bef!`,t.stack):$.log("",`\u2757\ufe0f${this.name}, \u9519\u8bef!`,t)}wait(t){return new Promise(s=>setTimeout(s,t))}done(t={}){const s=(new Date).getTime(),e=(s-this.startTime)/1e3;this.log("",`\ud83d\udd14${this.name}, \u7ed3\u675f! \ud83d\udd5b ${e} \u79d2`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,s)} +function Env(t, s) { + return new(class { + constructor(t, s) { + (this.name = t), + (this.data = null), + (this.dataFile = 'box.dat'), + (this.logs = []), + (this.logSeparator = '\n'), + (this.startTime = new Date().getTime()), + Object.assign(this, s), + this.log('', `\ud83d\udd14${this.name}, \u5f00\u59cb!`); + } + isNode() { + return 'undefined' != typeof module && !!module.exports; + } + isQuanX() { + return 'undefined' != typeof $task; + } + isSurge() { + return 'undefined' != typeof $httpClient && 'undefined' == typeof $loon; + } + isLoon() { + return 'undefined' != typeof $loon; + } + getScript(t) { + return new Promise((s) => { + $.get({ + url: t + }, (t, e, i) => s(i)); + }); + } + runScript(t, s) { + return new Promise((e) => { + let i = this.getdata('@chavy_boxjs_userCfgs.httpapi'); + i = i ? i.replace(/\n/g, '').trim() : i; + let o = this.getdata('@chavy_boxjs_userCfgs.httpapi_timeout'); + (o = o ? 1 * o : 20), + (o = s && s.timeout ? s.timeout : o); + const[h, a] = i.split('@'), + r = { + url: `http://${a}/v1/scripting/evaluate`, + body: { + script_text: t, + mock_type: 'cron', + timeout: o + }, + headers: { + 'X-Key': h, + Accept: '*/*' + }, + }; + $.post(r, (t, s, i) => e(i)); + }).catch((t) => this.logErr(t)); + } + loaddata() { + if (!this.isNode()) + return {}; { + (this.fs = this.fs ? this.fs : require('fs')), + (this.path = this.path ? this.path : require('path')); + const t = this.path.resolve(this.dataFile), + s = this.path.resolve(process.cwd(), this.dataFile), + e = this.fs.existsSync(t), + i = !e && this.fs.existsSync(s); + if (!e && !i) + return {}; { + const i = e ? t : s; + try { + return JSON.parse(this.fs.readFileSync(i)); + } catch (t) { + return {}; + } + } + } + } + writedata() { + if (this.isNode()) { + (this.fs = this.fs ? this.fs : require('fs')), + (this.path = this.path ? this.path : require('path')); + const t = this.path.resolve(this.dataFile), + s = this.path.resolve(process.cwd(), this.dataFile), + e = this.fs.existsSync(t), + i = !e && this.fs.existsSync(s), + o = JSON.stringify(this.data); + e ? this.fs.writeFileSync(t, o) : i ? this.fs.writeFileSync(s, o) : this.fs.writeFileSync(t, o); + } + } + lodash_get(t, s, e) { + const i = s.replace(/\[(\d+)\]/g, '.$1').split('.'); + let o = t; + for (const t of i) + if (((o = Object(o)[t]), void 0 === o)) + return e; + return o; + } + lodash_set(t, s, e) { + return Object(t) !== t ? t : (Array.isArray(s) || (s = s.toString().match(/[^.[\]]+/g) || []), (s.slice(0, -1).reduce((t, e, i) => (Object(t[e]) === t[e] ? t[e] : (t[e] = Math.abs(s[i + 1]) >> 0 == +s[i + 1] ? [] : {})), t)[s[s.length - 1]] = e), t); + } + getdata(t) { + let s = this.getval(t); + if (/^@/.test(t)) { + const[, e, i] = /^@(.*?)\.(.*?)$/.exec(t), + o = e ? this.getval(e) : ''; + if (o) + try { + const t = JSON.parse(o); + s = t ? this.lodash_get(t, i, '') : s; + } catch (t) { + s = ''; + } + } + return s; + } + setdata(t, s) { + let e = !1; + if (/^@/.test(s)) { + const[, i, o] = /^@(.*?)\.(.*?)$/.exec(s), + h = this.getval(i), + a = i ? ('null' === h ? null : h || '{}') : '{}'; + try { + const s = JSON.parse(a); + this.lodash_set(s, o, t), + (e = this.setval(JSON.stringify(s), i)); + } catch (s) { + const h = {}; + this.lodash_set(h, o, t), + (e = this.setval(JSON.stringify(h), i)); + } + } else + e = $.setval(t, s); + return e; + } + getval(t) { + return this.isSurge() || this.isLoon() ? $persistentStore.read(t) : this.isQuanX() ? $prefs.valueForKey(t) : this.isNode() ? ((this.data = this.loaddata()), this.data[t]) : (this.data && this.data[t]) || null; + } + setval(t, s) { + return this.isSurge() || this.isLoon() ? $persistentStore.write(t, s) : this.isQuanX() ? $prefs.setValueForKey(t, s) : this.isNode() ? ((this.data = this.loaddata()), (this.data[s] = t), this.writedata(), !0) : (this.data && this.data[s]) || null; + } + initGotEnv(t) { + (this.got = this.got ? this.got : require('got')), + (this.cktough = this.cktough ? this.cktough : require('tough-cookie')), + (this.ckjar = this.ckjar ? this.ckjar : new this.cktough.CookieJar()), + t && ((t.headers = t.headers ? t.headers : {}), void 0 === t.headers.Cookie && void 0 === t.cookieJar && (t.cookieJar = this.ckjar)); + } + get(t, s = () => {}) { + t.headers && (delete t.headers['Content-Type'], delete t.headers['Content-Length']), + this.isSurge() || this.isLoon() ? $httpClient.get(t, (t, e, i) => { + !t && e && ((e.body = i), (e.statusCode = e.status)), + s(t, e, i); + }) : this.isQuanX() ? $task.fetch(t).then((t) => { + const { + statusCode: e, + statusCode: i, + headers: o, + body: h + } = t; + s(null, { + status: e, + statusCode: i, + headers: o, + body: h + }, h); + }, (t) => s(t)) : this.isNode() && (this.initGotEnv(t), this.got(t).on('redirect', (t, s) => { + try { + const e = t.headers['set-cookie'].map(this.cktough.Cookie.parse).toString(); + this.ckjar.setCookieSync(e, null), + (s.cookieJar = this.ckjar); + } catch (t) { + this.logErr(t); + } + }).then((t) => { + const { + statusCode: e, + statusCode: i, + headers: o, + body: h + } = t; + s(null, { + status: e, + statusCode: i, + headers: o, + body: h + }, h); + }, (t) => s(t))); + } + post(t, s = () => {}) { + if ((t.body && t.headers && !t.headers['Content-Type'] && (t.headers['Content-Type'] = 'application/x-www-form-urlencoded'), delete t.headers['Content-Length'], this.isSurge() || this.isLoon())) + $httpClient.post(t, (t, e, i) => { + !t && e && ((e.body = i), (e.statusCode = e.status)), + s(t, e, i); + }); + else if (this.isQuanX()) + (t.method = 'POST'), $task.fetch(t).then((t) => { + const { + statusCode: e, + statusCode: i, + headers: o, + body: h + } = t; + s(null, { + status: e, + statusCode: i, + headers: o, + body: h + }, h); + }, (t) => s(t)); + else if (this.isNode()) { + this.initGotEnv(t); + const { + url: e, + ...i + } = t; + this.got.post(e, i).then((t) => { + const { + statusCode: e, + statusCode: i, + headers: o, + body: h + } = t; + s(null, { + status: e, + statusCode: i, + headers: o, + body: h + }, h); + }, (t) => s(t)); + } + } + time(t) { + let s = { + 'M+': new Date().getMonth() + 1, + 'd+': new Date().getDate(), + 'H+': new Date().getHours(), + 'm+': new Date().getMinutes(), + 's+': new Date().getSeconds(), + 'q+': Math.floor((new Date().getMonth() + 3) / 3), + S: new Date().getMilliseconds(), + }; + /(y+)/.test(t) && (t = t.replace(RegExp.$1, (new Date().getFullYear() + '').substr(4 - RegExp.$1.length))); + for (let e in s) + new RegExp('(' + e + ')').test(t) && (t = t.replace(RegExp.$1, 1 == RegExp.$1.length ? s[e] : ('00' + s[e]).substr(('' + s[e]).length))); + return t; + } + msg(s = t, e = '', i = '', o) { + const h = (t) => !t || (!this.isLoon() && this.isSurge()) ? t : 'string' == typeof t ? this.isLoon() ? t : this.isQuanX() ? { + 'open-url': t + } + : void 0 : 'object' == typeof t && (t['open-url'] || t['media-url']) ? this.isLoon() ? t['open-url'] : this.isQuanX() ? t : void 0 : void 0; + $.isMute || (this.isSurge() || this.isLoon() ? $notification.post(s, e, i, h(o)) : this.isQuanX() && $notify(s, e, i, h(o))), + this.logs.push('', '==============\ud83d\udce3\u7cfb\u7edf\u901a\u77e5\ud83d\udce3=============='), + this.logs.push(s), + e && this.logs.push(e), + i && this.logs.push(i); + } + log(...t) { + t.length > 0 ? (this.logs = [...this.logs, ...t]) : console.log(this.logs.join(this.logSeparator)); + } + logErr(t, s) { + const e = !this.isSurge() && !this.isQuanX() && !this.isLoon(); + e ? $.log('', `\u2757\ufe0f${this.name}, \u9519\u8bef!`, t.stack) : $.log('', `\u2757\ufe0f${this.name}, \u9519\u8bef!`, t); + } + wait(t) { + return new Promise((s) => setTimeout(s, t)); + } + done(t = {}) { + const s = new Date().getTime(), + e = (s - this.startTime) / 1e3; + this.log('', `\ud83d\udd14${this.name}, \u7ed3\u675f! \ud83d\udd5b ${e} \u79d2`), + this.log(), + (this.isSurge() || this.isQuanX() || this.isLoon()) && $done(t); + } + })(t, s); +} From 0603fa1730359a3746c38ade74dd962ce2df594b Mon Sep 17 00:00:00 2001 From: MadShen <32738881+MadShen@users.noreply.github.com> Date: Mon, 11 Apr 2022 10:46:46 +0800 Subject: [PATCH 2/2] Update ql.js --- ql.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ql.js b/ql.js index 31e48833..d9995a1c 100644 --- a/ql.js +++ b/ql.js @@ -2,7 +2,7 @@ const got = require('got'); require('dotenv').config(); -const { readFile } = require('fs/promises'); +const { readFile } = require('fs').promises; const path = require('path'); const qlDir = '/ql';