@ikenxuan/amagi 3.1.2 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +45 -34
- package/lib/business/bilibili/getdata.js +51 -26
- package/lib/business/bilibili/index.d.ts +1 -0
- package/lib/business/bilibili/index.js +2 -1
- package/lib/business/bilibili/result.js +14 -3
- package/lib/business/bilibili/sign/bv2av.d.ts +2 -0
- package/lib/business/bilibili/sign/bv2av.js +27 -0
- package/lib/business/douyin/getdata.js +12 -8
- package/lib/business/douyin/result.js +12 -3
- package/lib/business/index.d.ts +0 -1
- package/lib/business/index.js +1 -2
- package/lib/model/DataFetchers.d.ts +1 -14
- package/lib/model/DataFetchers.js +2 -18
- package/lib/model/logger.d.ts +14 -0
- package/lib/model/logger.js +13 -2
- package/lib/model/networks.js +3 -2
- package/lib/server/client.d.ts +12 -21
- package/lib/server/client.js +63 -39
- package/lib/test.js +7 -5
- package/lib/types/DataType.d.ts +3 -7
- package/lib/types/DouyinAPIParams.d.ts +4 -2
- package/lib/types/OptionsType.d.ts +0 -14
- package/lib/types/index.d.ts +3 -4
- package/lib/types/index.js +1 -1
- package/package.json +7 -6
- package/lib/business/xiaohongshu/AIP.d.ts +0 -14
- package/lib/business/xiaohongshu/AIP.js +0 -17
- package/lib/business/xiaohongshu/getdata.d.ts +0 -13
- package/lib/business/xiaohongshu/getdata.js +0 -58
- package/lib/business/xiaohongshu/index.d.ts +0 -5
- package/lib/business/xiaohongshu/index.js +0 -6
- package/lib/business/xiaohongshu/result.d.ts +0 -9
- package/lib/business/xiaohongshu/result.js +0 -19
- package/lib/business/xiaohongshu/sign/generateX_S.d.ts +0 -2
- package/lib/business/xiaohongshu/sign/generateX_S.js +0 -207
- package/lib/business/xiaohongshu/sign/generateX_S_Common.d.ts +0 -6
- package/lib/business/xiaohongshu/sign/generateX_S_Common.js +0 -141
- package/lib/business/xiaohongshu/sign/index.d.ts +0 -16
- package/lib/business/xiaohongshu/sign/index.js +0 -29
- package/lib/types/XiaohongshuAPIParams.d.ts +0 -13
- package/lib/types/XiaohongshuAPIParams.js +0 -2
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { XiaohongshuDataOptionsMapKeys } from '../../types/index.js';
|
|
2
|
-
declare class XiaohongshuAPI {
|
|
3
|
-
单个笔记(data: XiaohongshuDataOptionsMapKeys['NoteInfoParams']): XiaoHongShuAPIType;
|
|
4
|
-
}
|
|
5
|
-
interface XiaoHongShuAPIType {
|
|
6
|
-
/** 请求地址 */
|
|
7
|
-
url: string;
|
|
8
|
-
/** 请求方法 */
|
|
9
|
-
method: string;
|
|
10
|
-
/** 请求体 */
|
|
11
|
-
body: any;
|
|
12
|
-
}
|
|
13
|
-
declare const _default: XiaohongshuAPI;
|
|
14
|
-
export default _default;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
class XiaohongshuAPI {
|
|
2
|
-
单个笔记(data) {
|
|
3
|
-
return {
|
|
4
|
-
url: 'https://edith.xiaohongshu.com/api/sns/web/v1/feed',
|
|
5
|
-
method: 'POST',
|
|
6
|
-
body: {
|
|
7
|
-
source_note_id: data.source_note_id,
|
|
8
|
-
image_formats: ['jpg', 'webp', 'avif'],
|
|
9
|
-
extra: { need_body_topic: 1 },
|
|
10
|
-
xsec_source: 'pc_feed',
|
|
11
|
-
xsec_token: data.xsec_token
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
export default new XiaohongshuAPI();
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQUlQLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2J1c2luZXNzL3hpYW9ob25nc2h1L0FJUC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxNQUFNLGNBQWM7SUFDbEIsSUFBSSxDQUFFLElBQXFEO1FBQ3pELE9BQU87WUFDTCxHQUFHLEVBQUUsbURBQW1EO1lBQ3hELE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFO2dCQUNKLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztnQkFDbkMsYUFBYSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7Z0JBQ3RDLEtBQUssRUFBRSxFQUFFLGVBQWUsRUFBRSxDQUFDLEVBQUU7Z0JBQzdCLFdBQVcsRUFBRSxTQUFTO2dCQUN0QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7YUFDNUI7U0FDRixDQUFBO0lBQ0gsQ0FBQztDQUNGO0FBV0QsZUFBZSxJQUFJLGNBQWMsRUFBRSxDQUFBIn0=
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { XiaohongshuDataType, XiaohongshuOptionsType } from '../../types/index.js';
|
|
2
|
-
export default class XiaohongshuData {
|
|
3
|
-
type: any;
|
|
4
|
-
headers: any;
|
|
5
|
-
constructor(type: keyof typeof XiaohongshuDataType, cookie: string);
|
|
6
|
-
GetData(data?: XiaohongshuOptionsType): Promise<any>;
|
|
7
|
-
GlobalGetData(options: {
|
|
8
|
-
url: string;
|
|
9
|
-
method?: string;
|
|
10
|
-
headers?: any;
|
|
11
|
-
body?: any;
|
|
12
|
-
}): Promise<any>;
|
|
13
|
-
}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { XiaohongshuAPI } from '../../business/xiaohongshu/index.js';
|
|
2
|
-
import { Networks, logger } from '../../model/index.js';
|
|
3
|
-
import { XiaohongshuSign } from '../../business/xiaohongshu/index.js';
|
|
4
|
-
export default class XiaohongshuData {
|
|
5
|
-
type;
|
|
6
|
-
headers;
|
|
7
|
-
constructor(type, cookie) {
|
|
8
|
-
this.type = type;
|
|
9
|
-
this.headers = headers;
|
|
10
|
-
this.headers.cookie = cookie;
|
|
11
|
-
}
|
|
12
|
-
async GetData(data = {}) {
|
|
13
|
-
switch (this.type) {
|
|
14
|
-
case "\u5355\u4E2A\u7B14\u8BB0" /* XiaohongshuDataType.单个笔记 */: {
|
|
15
|
-
const API = XiaohongshuAPI.单个笔记({ source_note_id: data.source_note_id, xsec_token: data.xsec_token || 'xsec_token' });
|
|
16
|
-
const xs = XiaohongshuSign.x_s(API.url, this.headers.cookie, API.body);
|
|
17
|
-
const WorkData = await this.GlobalGetData({
|
|
18
|
-
url: API.url,
|
|
19
|
-
method: 'POST',
|
|
20
|
-
headers: {
|
|
21
|
-
...this.headers,
|
|
22
|
-
'x-s': xs,
|
|
23
|
-
'x-b3-traceid': XiaohongshuSign.x_b3_traceid(),
|
|
24
|
-
'x-s-common': XiaohongshuSign.x_s_common({ x_s: xs, cookie: this.headers.cookie }),
|
|
25
|
-
'x-t': Date.now()
|
|
26
|
-
},
|
|
27
|
-
body: API.body
|
|
28
|
-
});
|
|
29
|
-
return WorkData;
|
|
30
|
-
}
|
|
31
|
-
default:
|
|
32
|
-
break;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
async GlobalGetData(options) {
|
|
36
|
-
const result = await new Networks(options).getData();
|
|
37
|
-
if (!result || result === '') {
|
|
38
|
-
logger.error('获取响应数据失败!\n请求类型:' + this.type + '\n请求URL:' + options.url);
|
|
39
|
-
}
|
|
40
|
-
return result;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
const headers = {
|
|
44
|
-
'accept': 'application/json, text/plain, */*',
|
|
45
|
-
'accept-language': 'zh-CN,zh;q=0.9',
|
|
46
|
-
'content-type': 'application/json;charset=UTF-8',
|
|
47
|
-
'origin': 'https://www.xiaohongshu.com',
|
|
48
|
-
'priority': 'u=1, i',
|
|
49
|
-
'referer': 'https://www.xiaohongshu.com/',
|
|
50
|
-
'sec-ch-ua': '"Chromium";v="128", "Not;A=Brand";v="24", "Google Chrome";v="128"',
|
|
51
|
-
'sec-ch-ua-mobile': '?0',
|
|
52
|
-
'sec-ch-ua-platform': '"Windows"',
|
|
53
|
-
'sec-fetch-dest': 'empty',
|
|
54
|
-
'sec-fetch-mode': 'cors',
|
|
55
|
-
'sec-fetch-site': 'same-site',
|
|
56
|
-
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36',
|
|
57
|
-
};
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0ZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idXNpbmVzcy94aWFvaG9uZ3NodS9nZXRkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUUzRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFFNUQsTUFBTSxDQUFDLE9BQU8sT0FBTyxlQUFlO0lBQ2xDLElBQUksQ0FBSztJQUNULE9BQU8sQ0FBSztJQUNaLFlBQWEsSUFBc0MsRUFBRSxNQUFjO1FBQ2pFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtJQUM5QixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBRSxPQUFPLEVBQTRCO1FBQ2hELFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2xCLDhEQUE2QixDQUFDLENBQUMsQ0FBQztnQkFDOUIsTUFBTSxHQUFHLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBd0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsSUFBSSxZQUFZLEVBQUUsQ0FBQyxDQUFBO2dCQUMvSCxNQUFNLEVBQUUsR0FBRyxlQUFlLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUN0RSxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQ3ZDO29CQUNFLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRztvQkFDWixNQUFNLEVBQUUsTUFBTTtvQkFDZCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyxJQUFJLENBQUMsT0FBTzt3QkFDZixLQUFLLEVBQUUsRUFBRTt3QkFDVCxjQUFjLEVBQUUsZUFBZSxDQUFDLFlBQVksRUFBRTt3QkFDOUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO3dCQUNsRixLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRTtxQkFDbEI7b0JBQ0QsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO2lCQUNmLENBQ0YsQ0FBQTtnQkFDRCxPQUFPLFFBQVEsQ0FBQTtZQUNqQixDQUFDO1lBRUQ7Z0JBQ0UsTUFBSztRQUNULENBQUM7SUFFSCxDQUFDO0lBRUQsS0FBSyxDQUFDLGFBQWEsQ0FBRSxPQUFvRTtRQUN2RixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFBO1FBQ3BELElBQUksQ0FBQyxNQUFNLElBQUksTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3pFLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxHQUFHO0lBQ2QsUUFBUSxFQUFFLG1DQUFtQztJQUM3QyxpQkFBaUIsRUFBRSxnQkFBZ0I7SUFDbkMsY0FBYyxFQUFFLGdDQUFnQztJQUNoRCxRQUFRLEVBQUUsNkJBQTZCO0lBQ3ZDLFVBQVUsRUFBRSxRQUFRO0lBQ3BCLFNBQVMsRUFBRSw4QkFBOEI7SUFDekMsV0FBVyxFQUFFLG1FQUFtRTtJQUNoRixrQkFBa0IsRUFBRSxJQUFJO0lBQ3hCLG9CQUFvQixFQUFFLFdBQVc7SUFDakMsZ0JBQWdCLEVBQUUsT0FBTztJQUN6QixnQkFBZ0IsRUFBRSxNQUFNO0lBQ3hCLGdCQUFnQixFQUFFLFdBQVc7SUFDN0IsWUFBWSxFQUFFLGlIQUFpSDtDQUNoSSxDQUFBIn0=
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { XiaohongshuSign } from './sign/index.js';
|
|
2
|
-
import XiaohongshuAPI from './AIP.js';
|
|
3
|
-
import XiaohongshuData from './getdata.js';
|
|
4
|
-
import XiaohongshuResult from './result.js';
|
|
5
|
-
export { XiaohongshuSign, XiaohongshuAPI, XiaohongshuData, XiaohongshuResult };
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYnVzaW5lc3MveGlhb2hvbmdzaHUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUN4QyxPQUFPLGNBQWMsTUFBTSxPQUFPLENBQUE7QUFDbEMsT0FBTyxlQUFlLE1BQU0sV0FBVyxDQUFBO0FBQ3ZDLE9BQU8saUJBQWlCLE1BQU0sVUFBVSxDQUFBO0FBRXhDLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxDQUFBIn0=
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { XiaohongshuDataType, XiaohongshuOptionsType, GetDataResponseType } from '../../types/index.js';
|
|
2
|
-
interface configParams {
|
|
3
|
-
/** 请求数据的类型 */
|
|
4
|
-
type: keyof typeof XiaohongshuDataType;
|
|
5
|
-
/** 小红书用户ck */
|
|
6
|
-
cookie: string;
|
|
7
|
-
}
|
|
8
|
-
export default function XiaohongshuResult(config?: configParams, options?: XiaohongshuOptionsType): Promise<GetDataResponseType>;
|
|
9
|
-
export {};
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { XiaohongshuData } from '../../business/xiaohongshu/index.js';
|
|
2
|
-
export default async function XiaohongshuResult(config = { cookie: '' }, options = {}) {
|
|
3
|
-
let result;
|
|
4
|
-
switch (config.type) {
|
|
5
|
-
case "\u5355\u4E2A\u7B14\u8BB0" /* XiaohongshuDataType.单个笔记 */: {
|
|
6
|
-
result = await new XiaohongshuData(config.type, config.cookie).GetData(options);
|
|
7
|
-
break;
|
|
8
|
-
}
|
|
9
|
-
default:
|
|
10
|
-
result = '';
|
|
11
|
-
break;
|
|
12
|
-
}
|
|
13
|
-
return {
|
|
14
|
-
code: result !== false && result !== '' ? 200 : 503,
|
|
15
|
-
message: result !== false && result !== '' ? 'success' : 'error',
|
|
16
|
-
data: result !== false && result !== '' ? result : null
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2J1c2luZXNzL3hpYW9ob25nc2h1L3Jlc3VsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFRNUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFVBQVUsaUJBQWlCLENBQzdDLFNBQXVCLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBa0IsRUFDckQsVUFBVSxFQUE0QjtJQUV0QyxJQUFJLE1BQVcsQ0FBQTtJQUNmLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3BCLDhEQUE2QixDQUFDLENBQUMsQ0FBQztZQUM5QixNQUFNLEdBQUcsTUFBTSxJQUFJLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUE7WUFDL0UsTUFBSztRQUNQLENBQUM7UUFFRDtZQUNFLE1BQU0sR0FBRyxFQUFFLENBQUE7WUFDWCxNQUFLO0lBQ1QsQ0FBQztJQUNELE9BQU87UUFDTCxJQUFJLEVBQUUsTUFBTSxLQUFLLEtBQUssSUFBSSxNQUFNLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUc7UUFDbkQsT0FBTyxFQUFFLE1BQU0sS0FBSyxLQUFLLElBQUksTUFBTSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPO1FBQ2hFLElBQUksRUFBRSxNQUFNLEtBQUssS0FBSyxJQUFJLE1BQU0sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSTtLQUN4RCxDQUFBO0FBRUgsQ0FBQyJ9
|
|
@@ -1,207 +0,0 @@
|
|
|
1
|
-
import crypto from 'crypto';
|
|
2
|
-
let key = [187050025, 472920585, 186915882, 876157969, 255199502, 806945584, 220596020, 958210835, 757275681,
|
|
3
|
-
940378667, 489892883, 705504304, 354103316, 688857884, 890312192, 219096591, 622400037, 254088489,
|
|
4
|
-
907618332, 52759587, 907877143, 53870614, 839463457, 389417746, 975774727, 372382245, 437136414,
|
|
5
|
-
909246726, 168694017, 473575703, 52697872, 1010440969
|
|
6
|
-
];
|
|
7
|
-
function des(key, message, encrypt, mode, iv, padding) {
|
|
8
|
-
if (encrypt) //如果是加密的话,首先转换编码
|
|
9
|
-
message = unescape(encodeURIComponent(message));
|
|
10
|
-
//declaring this locally speeds things up a bit
|
|
11
|
-
const spfunction1 = new Array(0x1010400, 0, 0x10000, 0x1010404, 0x1010004, 0x10404, 0x4, 0x10000, 0x400, 0x1010400, 0x1010404, 0x400, 0x1000404, 0x1010004, 0x1000000, 0x4, 0x404, 0x1000400, 0x1000400, 0x10400, 0x10400, 0x1010000, 0x1010000, 0x1000404, 0x10004, 0x1000004, 0x1000004, 0x10004, 0, 0x404, 0x10404, 0x1000000, 0x10000, 0x1010404, 0x4, 0x1010000, 0x1010400, 0x1000000, 0x1000000, 0x400, 0x1010004, 0x10000, 0x10400, 0x1000004, 0x400, 0x4, 0x1000404, 0x10404, 0x1010404, 0x10004, 0x1010000, 0x1000404, 0x1000004, 0x404, 0x10404, 0x1010400, 0x404, 0x1000400, 0x1000400, 0, 0x10004, 0x10400, 0, 0x1010004);
|
|
12
|
-
const spfunction2 = new Array(-0x7fef7fe0, -0x7fff8000, 0x8000, 0x108020, 0x100000, 0x20, -0x7fefffe0, -0x7fff7fe0, -0x7fffffe0, -0x7fef7fe0, -0x7fef8000, -0x80000000, -0x7fff8000, 0x100000, 0x20, -0x7fefffe0, 0x108000, 0x100020, -0x7fff7fe0, 0, -0x80000000, 0x8000, 0x108020, -0x7ff00000, 0x100020, -0x7fffffe0, 0, 0x108000, 0x8020, -0x7fef8000, -0x7ff00000, 0x8020, 0, 0x108020, -0x7fefffe0, 0x100000, -0x7fff7fe0, -0x7ff00000, -0x7fef8000, 0x8000, -0x7ff00000, -0x7fff8000, 0x20, -0x7fef7fe0, 0x108020, 0x20, 0x8000, -0x80000000, 0x8020, -0x7fef8000, 0x100000, -0x7fffffe0, 0x100020, -0x7fff7fe0, -0x7fffffe0, 0x100020, 0x108000, 0, -0x7fff8000, 0x8020, -0x80000000, -0x7fefffe0, -0x7fef7fe0, 0x108000);
|
|
13
|
-
const spfunction3 = new Array(0x208, 0x8020200, 0, 0x8020008, 0x8000200, 0, 0x20208, 0x8000200, 0x20008, 0x8000008, 0x8000008, 0x20000, 0x8020208, 0x20008, 0x8020000, 0x208, 0x8000000, 0x8, 0x8020200, 0x200, 0x20200, 0x8020000, 0x8020008, 0x20208, 0x8000208, 0x20200, 0x20000, 0x8000208, 0x8, 0x8020208, 0x200, 0x8000000, 0x8020200, 0x8000000, 0x20008, 0x208, 0x20000, 0x8020200, 0x8000200, 0, 0x200, 0x20008, 0x8020208, 0x8000200, 0x8000008, 0x200, 0, 0x8020008, 0x8000208, 0x20000, 0x8000000, 0x8020208, 0x8, 0x20208, 0x20200, 0x8000008, 0x8020000, 0x8000208, 0x208, 0x8020000, 0x20208, 0x8, 0x8020008, 0x20200);
|
|
14
|
-
const spfunction4 = new Array(0x802001, 0x2081, 0x2081, 0x80, 0x802080, 0x800081, 0x800001, 0x2001, 0, 0x802000, 0x802000, 0x802081, 0x81, 0, 0x800080, 0x800001, 0x1, 0x2000, 0x800000, 0x802001, 0x80, 0x800000, 0x2001, 0x2080, 0x800081, 0x1, 0x2080, 0x800080, 0x2000, 0x802080, 0x802081, 0x81, 0x800080, 0x800001, 0x802000, 0x802081, 0x81, 0, 0, 0x802000, 0x2080, 0x800080, 0x800081, 0x1, 0x802001, 0x2081, 0x2081, 0x80, 0x802081, 0x81, 0x1, 0x2000, 0x800001, 0x2001, 0x802080, 0x800081, 0x2001, 0x2080, 0x800000, 0x802001, 0x80, 0x800000, 0x2000, 0x802080);
|
|
15
|
-
const spfunction5 = new Array(0x100, 0x2080100, 0x2080000, 0x42000100, 0x80000, 0x100, 0x40000000, 0x2080000, 0x40080100, 0x80000, 0x2000100, 0x40080100, 0x42000100, 0x42080000, 0x80100, 0x40000000, 0x2000000, 0x40080000, 0x40080000, 0, 0x40000100, 0x42080100, 0x42080100, 0x2000100, 0x42080000, 0x40000100, 0, 0x42000000, 0x2080100, 0x2000000, 0x42000000, 0x80100, 0x80000, 0x42000100, 0x100, 0x2000000, 0x40000000, 0x2080000, 0x42000100, 0x40080100, 0x2000100, 0x40000000, 0x42080000, 0x2080100, 0x40080100, 0x100, 0x2000000, 0x42080000, 0x42080100, 0x80100, 0x42000000, 0x42080100, 0x2080000, 0, 0x40080000, 0x42000000, 0x80100, 0x2000100, 0x40000100, 0x80000, 0, 0x40080000, 0x2080100, 0x40000100);
|
|
16
|
-
const spfunction6 = new Array(0x20000010, 0x20400000, 0x4000, 0x20404010, 0x20400000, 0x10, 0x20404010, 0x400000, 0x20004000, 0x404010, 0x400000, 0x20000010, 0x400010, 0x20004000, 0x20000000, 0x4010, 0, 0x400010, 0x20004010, 0x4000, 0x404000, 0x20004010, 0x10, 0x20400010, 0x20400010, 0, 0x404010, 0x20404000, 0x4010, 0x404000, 0x20404000, 0x20000000, 0x20004000, 0x10, 0x20400010, 0x404000, 0x20404010, 0x400000, 0x4010, 0x20000010, 0x400000, 0x20004000, 0x20000000, 0x4010, 0x20000010, 0x20404010, 0x404000, 0x20400000, 0x404010, 0x20404000, 0, 0x20400010, 0x10, 0x4000, 0x20400000, 0x404010, 0x4000, 0x400010, 0x20004010, 0, 0x20404000, 0x20000000, 0x400010, 0x20004010);
|
|
17
|
-
const spfunction7 = new Array(0x200000, 0x4200002, 0x4000802, 0, 0x800, 0x4000802, 0x200802, 0x4200800, 0x4200802, 0x200000, 0, 0x4000002, 0x2, 0x4000000, 0x4200002, 0x802, 0x4000800, 0x200802, 0x200002, 0x4000800, 0x4000002, 0x4200000, 0x4200800, 0x200002, 0x4200000, 0x800, 0x802, 0x4200802, 0x200800, 0x2, 0x4000000, 0x200800, 0x4000000, 0x200800, 0x200000, 0x4000802, 0x4000802, 0x4200002, 0x4200002, 0x2, 0x200002, 0x4000000, 0x4000800, 0x200000, 0x4200800, 0x802, 0x200802, 0x4200800, 0x802, 0x4000002, 0x4200802, 0x4200000, 0x200800, 0, 0x2, 0x4200802, 0, 0x200802, 0x4200000, 0x800, 0x4000002, 0x4000800, 0x800, 0x200002);
|
|
18
|
-
const spfunction8 = new Array(0x10001040, 0x1000, 0x40000, 0x10041040, 0x10000000, 0x10001040, 0x40, 0x10000000, 0x40040, 0x10040000, 0x10041040, 0x41000, 0x10041000, 0x41040, 0x1000, 0x40, 0x10040000, 0x10000040, 0x10001000, 0x1040, 0x41000, 0x40040, 0x10040040, 0x10041000, 0x1040, 0, 0, 0x10040040, 0x10000040, 0x10001000, 0x41040, 0x40000, 0x41040, 0x40000, 0x10041000, 0x1000, 0x40, 0x10040040, 0x1000, 0x41040, 0x10001000, 0x40, 0x10000040, 0x10040000, 0x10040040, 0x10000000, 0x40000, 0x10001040, 0, 0x10041040, 0x40040, 0x10000040, 0x10040000, 0x10001000, 0x10001040, 0, 0x10041040, 0x41000, 0x41000, 0x1040, 0x1040, 0x40040, 0x10000000, 0x10041000);
|
|
19
|
-
// create the 16 or 48 subkeys we will need
|
|
20
|
-
// var keys = des_createKeys(key)
|
|
21
|
-
const keys = key;
|
|
22
|
-
let m = 0, i, j, temp, temp2, right1, right2, left, right, looping;
|
|
23
|
-
let cbcleft, cbcleft2, cbcright, cbcright2;
|
|
24
|
-
let endloop, loopinc;
|
|
25
|
-
let len = message.length;
|
|
26
|
-
let chunk = 0;
|
|
27
|
-
//set up the loops for single and triple des
|
|
28
|
-
var iterations = keys.length == 32 ? 3 : 9; //single or triple des
|
|
29
|
-
if (iterations == 3) {
|
|
30
|
-
looping = encrypt ? new Array(0, 32, 2) : new Array(30, -2, -2);
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
looping = encrypt ? new Array(0, 32, 2, 62, 30, -2, 64, 96, 2) : new Array(94, 62, -2, 32, 64, 2, 30, -2, -2);
|
|
34
|
-
}
|
|
35
|
-
//pad the message depending on the padding parameter
|
|
36
|
-
if (padding == 2)
|
|
37
|
-
message += " "; //pad the message with spaces
|
|
38
|
-
else if (padding == 1) {
|
|
39
|
-
if (encrypt) {
|
|
40
|
-
temp = 8 - (len % 8);
|
|
41
|
-
message += String.fromCharCode(temp, temp, temp, temp, temp, temp, temp, temp);
|
|
42
|
-
if (temp === 8)
|
|
43
|
-
len += 8;
|
|
44
|
-
}
|
|
45
|
-
} //PKCS7 padding
|
|
46
|
-
else if (!padding)
|
|
47
|
-
message += "\0\0\0\0\0\0\0\0"; //pad the message out with null bytes
|
|
48
|
-
//store the result here
|
|
49
|
-
var result = "";
|
|
50
|
-
var tempresult = "";
|
|
51
|
-
if (mode == 1) { //CBC mode
|
|
52
|
-
cbcleft = (iv.charCodeAt(m++) << 24) | (iv.charCodeAt(m++) << 16) | (iv.charCodeAt(m++) << 8) | iv.charCodeAt(m++);
|
|
53
|
-
cbcright = (iv.charCodeAt(m++) << 24) | (iv.charCodeAt(m++) << 16) | (iv.charCodeAt(m++) << 8) | iv.charCodeAt(m++);
|
|
54
|
-
m = 0;
|
|
55
|
-
}
|
|
56
|
-
//loop through each 64 bit chunk of the message
|
|
57
|
-
while (m < len) {
|
|
58
|
-
left = (message.charCodeAt(m++) << 24) | (message.charCodeAt(m++) << 16) | (message.charCodeAt(m++) << 8) | message.charCodeAt(m++);
|
|
59
|
-
right = (message.charCodeAt(m++) << 24) | (message.charCodeAt(m++) << 16) | (message.charCodeAt(m++) << 8) | message.charCodeAt(m++);
|
|
60
|
-
//for Cipher Block Chaining mode, xor the message with the previous result
|
|
61
|
-
if (mode == 1) {
|
|
62
|
-
if (encrypt) {
|
|
63
|
-
left ^= cbcleft;
|
|
64
|
-
right ^= cbcright;
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
cbcleft2 = cbcleft;
|
|
68
|
-
cbcright2 = cbcright;
|
|
69
|
-
cbcleft = left;
|
|
70
|
-
cbcright = right;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
//first each 64 but chunk of the message must be permuted according to IP
|
|
74
|
-
temp = ((left >>> 4) ^ right) & 0x0f0f0f0f;
|
|
75
|
-
right ^= temp;
|
|
76
|
-
left ^= (temp << 4);
|
|
77
|
-
temp = ((left >>> 16) ^ right) & 0x0000ffff;
|
|
78
|
-
right ^= temp;
|
|
79
|
-
left ^= (temp << 16);
|
|
80
|
-
temp = ((right >>> 2) ^ left) & 0x33333333;
|
|
81
|
-
left ^= temp;
|
|
82
|
-
right ^= (temp << 2);
|
|
83
|
-
temp = ((right >>> 8) ^ left) & 0x00ff00ff;
|
|
84
|
-
left ^= temp;
|
|
85
|
-
right ^= (temp << 8);
|
|
86
|
-
temp = ((left >>> 1) ^ right) & 0x55555555;
|
|
87
|
-
right ^= temp;
|
|
88
|
-
left ^= (temp << 1);
|
|
89
|
-
left = ((left << 1) | (left >>> 31));
|
|
90
|
-
right = ((right << 1) | (right >>> 31));
|
|
91
|
-
//do this either 1 or 3 times for each chunk of the message
|
|
92
|
-
for (j = 0; j < iterations; j += 3) {
|
|
93
|
-
endloop = looping[j + 1];
|
|
94
|
-
loopinc = looping[j + 2];
|
|
95
|
-
//now go through and perform the encryption or decryption
|
|
96
|
-
for (i = looping[j]; i != endloop; i += loopinc) { //for efficiency
|
|
97
|
-
right1 = right ^ keys[i];
|
|
98
|
-
right2 = ((right >>> 4) | (right << 28)) ^ keys[i + 1];
|
|
99
|
-
//the result is attained by passing these bytes through the S selection functions
|
|
100
|
-
temp = left;
|
|
101
|
-
left = right;
|
|
102
|
-
right = temp ^ (spfunction2[(right1 >>> 24) & 0x3f] | spfunction4[(right1 >>> 16) & 0x3f]
|
|
103
|
-
| spfunction6[(right1 >>> 8) & 0x3f] | spfunction8[right1 & 0x3f]
|
|
104
|
-
| spfunction1[(right2 >>> 24) & 0x3f] | spfunction3[(right2 >>> 16) & 0x3f]
|
|
105
|
-
| spfunction5[(right2 >>> 8) & 0x3f] | spfunction7[right2 & 0x3f]);
|
|
106
|
-
}
|
|
107
|
-
temp = left;
|
|
108
|
-
left = right;
|
|
109
|
-
right = temp; //unreverse left and right
|
|
110
|
-
} //for either 1 or 3 iterations
|
|
111
|
-
//move then each one bit to the right
|
|
112
|
-
left = ((left >>> 1) | (left << 31));
|
|
113
|
-
right = ((right >>> 1) | (right << 31));
|
|
114
|
-
//now perform IP-1, which is IP in the opposite direction
|
|
115
|
-
temp = ((left >>> 1) ^ right) & 0x55555555;
|
|
116
|
-
right ^= temp;
|
|
117
|
-
left ^= (temp << 1);
|
|
118
|
-
temp = ((right >>> 8) ^ left) & 0x00ff00ff;
|
|
119
|
-
left ^= temp;
|
|
120
|
-
right ^= (temp << 8);
|
|
121
|
-
temp = ((right >>> 2) ^ left) & 0x33333333;
|
|
122
|
-
left ^= temp;
|
|
123
|
-
right ^= (temp << 2);
|
|
124
|
-
temp = ((left >>> 16) ^ right) & 0x0000ffff;
|
|
125
|
-
right ^= temp;
|
|
126
|
-
left ^= (temp << 16);
|
|
127
|
-
temp = ((left >>> 4) ^ right) & 0x0f0f0f0f;
|
|
128
|
-
right ^= temp;
|
|
129
|
-
left ^= (temp << 4);
|
|
130
|
-
//for Cipher Block Chaining mode, xor the message with the previous result
|
|
131
|
-
if (mode == 1) {
|
|
132
|
-
if (encrypt) {
|
|
133
|
-
cbcleft = left;
|
|
134
|
-
cbcright = right;
|
|
135
|
-
}
|
|
136
|
-
else {
|
|
137
|
-
left ^= cbcleft2;
|
|
138
|
-
right ^= cbcright2;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
// tempresult += String.fromCharCode((left >>> 24), ((left >>> 16) & 0xff), ((left >>> 8) & 0xff), (left & 0xff), (right >>> 24), ((right >>> 16) & 0xff), ((right >>> 8) & 0xff), (right & 0xff))
|
|
142
|
-
tempresult += String.fromCharCode(left >>> 24);
|
|
143
|
-
tempresult += String.fromCharCode((left >>> 16) & 255);
|
|
144
|
-
tempresult += String.fromCharCode((left >>> 8) & 255);
|
|
145
|
-
tempresult += String.fromCharCode(left & 255);
|
|
146
|
-
tempresult += String.fromCharCode(right >>> 24);
|
|
147
|
-
tempresult += String.fromCharCode((right >>> 16) & 255);
|
|
148
|
-
tempresult += String.fromCharCode((right >>> 8) & 255);
|
|
149
|
-
tempresult += String.fromCharCode(right & 255);
|
|
150
|
-
chunk += 8;
|
|
151
|
-
if (chunk == 512) {
|
|
152
|
-
result += tempresult;
|
|
153
|
-
tempresult = "";
|
|
154
|
-
chunk = 0;
|
|
155
|
-
}
|
|
156
|
-
} //for every 8 characters, or 64 bits in the message
|
|
157
|
-
//return the result as an array
|
|
158
|
-
result += tempresult;
|
|
159
|
-
result = result.replace(/\\0*$/g, "");
|
|
160
|
-
if (!encrypt) { //如果是解密的话,解密结束后对PKCS7 padding进行解码,并转换成utf-8编码
|
|
161
|
-
if (padding === 1) { //PKCS7 padding解码
|
|
162
|
-
let len = result.length, paddingChars = 0;
|
|
163
|
-
len && (paddingChars = result.charCodeAt(len - 1));
|
|
164
|
-
(paddingChars <= 8) && (result = result.substring(0, len - paddingChars));
|
|
165
|
-
}
|
|
166
|
-
//转换成UTF-8编码
|
|
167
|
-
result = decodeURIComponent(escape(result));
|
|
168
|
-
}
|
|
169
|
-
return result;
|
|
170
|
-
} //end of des
|
|
171
|
-
export function getPayload(base64String) {
|
|
172
|
-
let result = '';
|
|
173
|
-
for (let char of des(key, base64String, true, 0, '', 0)) {
|
|
174
|
-
let n = char.charCodeAt(0);
|
|
175
|
-
result += (n >> 4).toString(16);
|
|
176
|
-
result += (n & 15).toString(16);
|
|
177
|
-
}
|
|
178
|
-
return result;
|
|
179
|
-
}
|
|
180
|
-
export function generateX_S(url, cookie, body) {
|
|
181
|
-
const P = new URL(url);
|
|
182
|
-
let extra = '';
|
|
183
|
-
if (body) {
|
|
184
|
-
extra = JSON.stringify(body);
|
|
185
|
-
}
|
|
186
|
-
else {
|
|
187
|
-
extra = '';
|
|
188
|
-
}
|
|
189
|
-
const params = {
|
|
190
|
-
x1: crypto.createHash('md5').update(`url=${P.pathname}${extra}`).digest('hex'), // 直接使用路径部分
|
|
191
|
-
x2: '0|0|0|1|0|0|1|0|0|0|1|0|0|0|0', // 固定值
|
|
192
|
-
x3: cookie.includes('a1=') ? cookie.split('a1=')[1].split(';')[0] : 'undefined', // 从cookie中获取a1
|
|
193
|
-
x4: String(Date.now()) // 当前时间戳
|
|
194
|
-
};
|
|
195
|
-
// 使用 Object.entries 将对象转换为键值对数组,然后使用 join 方法构建查询字符串
|
|
196
|
-
const payloadParts = Object.entries(params).map(([key, value]) => `${key}=${value}`);
|
|
197
|
-
const mergeplst = payloadParts.join(';');
|
|
198
|
-
const origin = {
|
|
199
|
-
signSvn: '55',
|
|
200
|
-
signType: 'x2',
|
|
201
|
-
appId: 'xhs-pc-web',
|
|
202
|
-
signVersion: '1',
|
|
203
|
-
payload: getPayload(mergeplst)
|
|
204
|
-
};
|
|
205
|
-
return 'XYW_' + btoa(JSON.stringify(origin)) + '=';
|
|
206
|
-
}
|
|
207
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVYX1MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYnVzaW5lc3MveGlhb2hvbmdzaHUvc2lnbi9nZW5lcmF0ZVhfUy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUE7QUFFM0IsSUFBSSxHQUFHLEdBQUcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVM7SUFDMUcsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTO0lBQ2pHLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUztJQUMvRixTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsVUFBVTtDQUN0RCxDQUFBO0FBRUQsU0FBUyxHQUFHLENBQUUsR0FBYSxFQUFFLE9BQVksRUFBRSxPQUFnQixFQUFFLElBQXdCLEVBQUUsRUFBVSxFQUFFLE9BQTJCO0lBQzVILElBQUksT0FBTyxFQUFFLGdCQUFnQjtRQUMzQixPQUFPLEdBQUcsUUFBUSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUE7SUFDakQsK0NBQStDO0lBQy9DLE1BQU0sV0FBVyxHQUFHLElBQUksS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQ3JtQixNQUFNLFdBQVcsR0FBRyxJQUFJLEtBQUssQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFDanNCLE1BQU0sV0FBVyxHQUFHLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQ3JtQixNQUFNLFdBQVcsR0FBRyxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUM3aUIsTUFBTSxXQUFXLEdBQUcsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUE7SUFDN3JCLE1BQU0sV0FBVyxHQUFHLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFBO0lBQ2pxQixNQUFNLFdBQVcsR0FBRyxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUNybkIsTUFBTSxXQUFXLEdBQUcsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxV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
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
export function xsCommon(t) {
|
|
2
|
-
const k = {
|
|
3
|
-
s0: 5,
|
|
4
|
-
s1: "",
|
|
5
|
-
x0: "1",
|
|
6
|
-
x1: "3.7.8-2",
|
|
7
|
-
x2: "Windows",
|
|
8
|
-
x3: "xhs-pc-web",
|
|
9
|
-
x4: "4.34.0",
|
|
10
|
-
x5: t.a1, // a1 的值
|
|
11
|
-
x6: t.x_t, // x-t 的值
|
|
12
|
-
x7: t.x_s, // x-s的值
|
|
13
|
-
x8: t.fingerprint, // 浏览器指纹,可以写死
|
|
14
|
-
x9: mrc(''.concat(String(t.x_t)).concat(t.x_s).concat(t.fingerprint)),
|
|
15
|
-
x10: 1
|
|
16
|
-
};
|
|
17
|
-
const utf8 = encodeUtf8(JSON.stringify(k));
|
|
18
|
-
return b64Encode(new Uint8Array(utf8));
|
|
19
|
-
}
|
|
20
|
-
function mrc(e) {
|
|
21
|
-
const ie = [
|
|
22
|
-
0, 1996959894, 3993919788, 2567524794, 124634137, 1886057615, 3915621685,
|
|
23
|
-
2657392035, 249268274, 2044508324, 3772115230, 2547177864, 162941995,
|
|
24
|
-
2125561021, 3887607047, 2428444049, 498536548, 1789927666, 4089016648,
|
|
25
|
-
2227061214, 450548861, 1843258603, 4107580753, 2211677639, 325883990,
|
|
26
|
-
1684777152, 4251122042, 2321926636, 335633487, 1661365465, 4195302755,
|
|
27
|
-
2366115317, 997073096, 1281953886, 3579855332, 2724688242, 1006888145,
|
|
28
|
-
1258607687, 3524101629, 2768942443, 901097722, 1119000684, 3686517206,
|
|
29
|
-
2898065728, 853044451, 1172266101, 3705015759, 2882616665, 651767980,
|
|
30
|
-
1373503546, 3369554304, 3218104598, 565507253, 1454621731, 3485111705,
|
|
31
|
-
3099436303, 671266974, 1594198024, 3322730930, 2970347812, 795835527,
|
|
32
|
-
1483230225, 3244367275, 3060149565, 1994146192, 31158534, 2563907772,
|
|
33
|
-
4023717930, 1907459465, 112637215, 2680153253, 3904427059, 2013776290,
|
|
34
|
-
251722036, 2517215374, 3775830040, 2137656763, 141376813, 2439277719,
|
|
35
|
-
3865271297, 1802195444, 476864866, 2238001368, 4066508878, 1812370925,
|
|
36
|
-
453092731, 2181625025, 4111451223, 1706088902, 314042704, 2344532202,
|
|
37
|
-
4240017532, 1658658271, 366619977, 2362670323, 4224994405, 1303535960,
|
|
38
|
-
984961486, 2747007092, 3569037538, 1256170817, 1037604311, 2765210733,
|
|
39
|
-
3554079995, 1131014506, 879679996, 2909243462, 3663771856, 1141124467,
|
|
40
|
-
855842277, 2852801631, 3708648649, 1342533948, 654459306, 3188396048,
|
|
41
|
-
3373015174, 1466479909, 544179635, 3110523913, 3462522015, 1591671054,
|
|
42
|
-
702138776, 2966460450, 3352799412, 1504918807, 783551873, 3082640443,
|
|
43
|
-
3233442989, 3988292384, 2596254646, 62317068, 1957810842, 3939845945,
|
|
44
|
-
2647816111, 81470997, 1943803523, 3814918930, 2489596804, 225274430,
|
|
45
|
-
2053790376, 3826175755, 2466906013, 167816743, 2097651377, 4027552580,
|
|
46
|
-
2265490386, 503444072, 1762050814, 4150417245, 2154129355, 426522225,
|
|
47
|
-
1852507879, 4275313526, 2312317920, 282753626, 1742555852, 4189708143,
|
|
48
|
-
2394877945, 397917763, 1622183637, 3604390888, 2714866558, 953729732,
|
|
49
|
-
1340076626, 3518719985, 2797360999, 1068828381, 1219638859, 3624741850,
|
|
50
|
-
2936675148, 906185462, 1090812512, 3747672003, 2825379669, 829329135,
|
|
51
|
-
1181335161, 3412177804, 3160834842, 628085408, 1382605366, 3423369109,
|
|
52
|
-
3138078467, 570562233, 1426400815, 3317316542, 2998733608, 733239954,
|
|
53
|
-
1555261956, 3268935591, 3050360625, 752459403, 1541320221, 2607071920,
|
|
54
|
-
3965973030, 1969922972, 40735498, 2617837225, 3943577151, 1913087877,
|
|
55
|
-
83908371, 2512341634, 3803740692, 2075208622, 213261112, 2463272603,
|
|
56
|
-
3855990285, 2094854071, 198958881, 2262029012, 4057260610, 1759359992,
|
|
57
|
-
534414190, 2176718541, 4139329115, 1873836001, 414664567, 2282248934,
|
|
58
|
-
4279200368, 1711684554, 285281116, 2405801727, 4167216745, 1634467795,
|
|
59
|
-
376229701, 2685067896, 3608007406, 1308918612, 956543938, 2808555105,
|
|
60
|
-
3495958263, 1231636301, 1047427035, 2932959818, 3654703836, 1088359270,
|
|
61
|
-
936918000, 2847714899, 3736837829, 1202900863, 817233897, 3183342108,
|
|
62
|
-
3401237130, 1404277552, 615818150, 3134207493, 3453421203, 1423857449,
|
|
63
|
-
601450431, 3009837614, 3294710456, 1567103746, 711928724, 3020668471,
|
|
64
|
-
3272380065, 1510334235, 755167117,
|
|
65
|
-
];
|
|
66
|
-
let o = -1;
|
|
67
|
-
function right_without_sign(num, bit = 0) {
|
|
68
|
-
const val = (num >>> bit) & 0xFFFFFFFF; // 无符号右移,确保32位无符号整数
|
|
69
|
-
const MAX32INT = 4294967295;
|
|
70
|
-
return (val + (MAX32INT + 1)) % (2 * (MAX32INT + 1)) - MAX32INT - 1;
|
|
71
|
-
}
|
|
72
|
-
for (let n = 0; n < 57; n++) {
|
|
73
|
-
o = ie[(o & 255) ^ e.charCodeAt(n)] ^ right_without_sign(o, 8);
|
|
74
|
-
}
|
|
75
|
-
return o ^ -1 ^ 3988292384;
|
|
76
|
-
}
|
|
77
|
-
function encodeUtf8(e) {
|
|
78
|
-
const b = [];
|
|
79
|
-
let m = encodeURIComponent(e);
|
|
80
|
-
m = m.replace(/%20/g, "+") // 替换空格
|
|
81
|
-
.replace(/[!'()*]/g, (char) => `%${char.charCodeAt(0).toString(16).toUpperCase()}`);
|
|
82
|
-
let w = 0;
|
|
83
|
-
while (w < m.length) {
|
|
84
|
-
const T = m[w];
|
|
85
|
-
if (T === "%") {
|
|
86
|
-
const E = m[w + 1] + m[w + 2];
|
|
87
|
-
const S = parseInt(E, 16);
|
|
88
|
-
b.push(S);
|
|
89
|
-
w += 2;
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
b.push(T.charCodeAt(0));
|
|
93
|
-
}
|
|
94
|
-
w += 1;
|
|
95
|
-
}
|
|
96
|
-
return b;
|
|
97
|
-
}
|
|
98
|
-
const lookup = [
|
|
99
|
-
"Z", "m", "s", "e", "r", "b", "B", "o", "H", "Q", "t",
|
|
100
|
-
"N", "P", "+", "w", "O", "c", "z", "a", "/", "L", "p",
|
|
101
|
-
"n", "g", "G", "8", "y", "J", "q", "4", "2", "K", "W",
|
|
102
|
-
"Y", "j", "0", "D", "S", "f", "d", "i", "k", "x", "3",
|
|
103
|
-
"V", "T", "1", "6", "I", "l", "U", "A", "F", "M", "9",
|
|
104
|
-
"7", "h", "E", "C", "v", "u", "R", "X", "5",
|
|
105
|
-
];
|
|
106
|
-
function b64Encode(e) {
|
|
107
|
-
const P = e.length;
|
|
108
|
-
const W = P % 3;
|
|
109
|
-
const U = [];
|
|
110
|
-
const z = 16383;
|
|
111
|
-
let H = 0;
|
|
112
|
-
const Z = P - W;
|
|
113
|
-
while (H < Z) {
|
|
114
|
-
U.push(encodeChunk(e, H, H + z > Z ? Z : H + z));
|
|
115
|
-
H += z;
|
|
116
|
-
}
|
|
117
|
-
if (W === 1) {
|
|
118
|
-
const F = e[P - 1];
|
|
119
|
-
U.push(lookup[F >> 2] + lookup[(F << 4) & 63] + "==");
|
|
120
|
-
}
|
|
121
|
-
else if (W === 2) {
|
|
122
|
-
const F = (e[P - 2] << 8) + e[P - 1];
|
|
123
|
-
U.push(lookup[F >> 10] + lookup[(F >> 4) & 63] + lookup[(F << 2) & 63] + "=");
|
|
124
|
-
}
|
|
125
|
-
return U.join('');
|
|
126
|
-
}
|
|
127
|
-
function encodeChunk(e, t, r) {
|
|
128
|
-
const m = [];
|
|
129
|
-
for (let b = t; b < r; b += 3) {
|
|
130
|
-
const n = (16711680 & (e[b] << 16)) + ((e[b + 1] << 8) & 65280) + (e[b + 2] & 255);
|
|
131
|
-
m.push(tripletToBase64(n));
|
|
132
|
-
}
|
|
133
|
-
return m.join('');
|
|
134
|
-
}
|
|
135
|
-
function tripletToBase64(e) {
|
|
136
|
-
return (lookup[(e >> 18) & 63] +
|
|
137
|
-
lookup[(e >> 12) & 63] +
|
|
138
|
-
lookup[(e >> 6) & 63] +
|
|
139
|
-
lookup[e & 63]);
|
|
140
|
-
}
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVYX1NfQ29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2J1c2luZXNzL3hpYW9ob25nc2h1L3NpZ24vZ2VuZXJhdGVYX1NfQ29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxRQUFRLENBQUUsQ0FBMEQ7SUFDbEYsTUFBTSxDQUFDLEdBQUc7UUFDUixFQUFFLEVBQUUsQ0FBQztRQUNMLEVBQUUsRUFBRSxFQUFFO1FBQ04sRUFBRSxFQUFFLEdBQUc7UUFDUCxFQUFFLEVBQUUsU0FBUztRQUNiLEVBQUUsRUFBRSxTQUFTO1FBQ2IsRUFBRSxFQUFFLFlBQVk7UUFDaEIsRUFBRSxFQUFFLFFBQVE7UUFDWixFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxRQUFRO1FBQ2xCLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFHLFNBQVM7UUFDckIsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsUUFBUTtRQUNuQixFQUFFLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxhQUFhO1FBQ2hDLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3JFLEdBQUcsRUFBRSxDQUFDO0tBQ1AsQ0FBQTtJQUNELE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDMUMsT0FBTyxTQUFTLENBQUMsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtBQUN4QyxDQUFDO0FBRUQsU0FBUyxHQUFHLENBQUUsQ0FBUztJQUNyQixNQUFNLEVBQUUsR0FBYTtRQUNuQixDQUFDLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVO1FBQ3hFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUztRQUNwRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVU7UUFDckUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTO1FBQ3BFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVTtRQUNyRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVU7UUFDckUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVO1FBQ3JFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUztRQUNwRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVU7UUFDckUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTO1FBQ3BFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsVUFBVTtRQUNwRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVU7UUFDckUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVO1FBQ3BFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVTtRQUNyRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVU7UUFDcEUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVO1FBQ3JFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVTtRQUNyRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVU7UUFDckUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVO1FBQ3BFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVTtRQUNyRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVU7UUFDcEUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxVQUFVO1FBQ3BFLFVBQVUsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUztRQUNuRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVU7UUFDckUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTO1FBQ3BFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVTtRQUNyRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVM7UUFDcEUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVO1FBQ3RFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUztRQUNwRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVU7UUFDckUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTO1FBQ3BFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVTtRQUNyRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVU7UUFDcEUsUUFBUSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVO1FBQ25FLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVTtRQUNyRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVU7UUFDcEUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVO1FBQ3JFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVTtRQUNwRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVU7UUFDdEUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVO1FBQ3BFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVTtRQUNyRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVU7UUFDcEUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTO0tBQ2xDLENBQUE7SUFDRCxJQUFJLENBQUMsR0FBVyxDQUFDLENBQUMsQ0FBQTtJQUVsQixTQUFTLGtCQUFrQixDQUFFLEdBQVcsRUFBRSxNQUFjLENBQUM7UUFDdkQsTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLEdBQUcsVUFBVSxDQUFBLENBQUMsbUJBQW1CO1FBQzFELE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQTtRQUMzQixPQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUcsQ0FBQyxDQUFBO0lBQ3JFLENBQUM7SUFFRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDNUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsa0JBQWtCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ2hFLENBQUM7SUFFRCxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUE7QUFDNUIsQ0FBQztBQUVELFNBQVMsVUFBVSxDQUFFLENBQVM7SUFDNUIsTUFBTSxDQUFDLEdBQWEsRUFBRSxDQUFBO0lBQ3RCLElBQUksQ0FBQyxHQUFHLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFBO0lBRTdCLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxPQUFPO1NBQy9CLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBRXJGLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNULE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNwQixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDZCxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNkLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtZQUM3QixNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO1lBQ3pCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDVCxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ1IsQ0FBQzthQUFNLENBQUM7WUFDTixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUN6QixDQUFDO1FBQ0QsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNSLENBQUM7SUFFRCxPQUFPLENBQUMsQ0FBQTtBQUNWLENBQUM7QUFFRCxNQUFNLE1BQU0sR0FBRztJQUNiLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO0lBQ3JELEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO0lBQ3JELEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO0lBQ3JELEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxH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
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
declare class S {
|
|
2
|
-
x_b3_traceid(): string;
|
|
3
|
-
/**
|
|
4
|
-
*
|
|
5
|
-
* @param url 接口地址
|
|
6
|
-
* @param cookie 小红书用户 ck
|
|
7
|
-
* @returns
|
|
8
|
-
*/
|
|
9
|
-
x_s(url: string, cookie: string, body?: any): string;
|
|
10
|
-
x_s_common(data: {
|
|
11
|
-
x_s: string;
|
|
12
|
-
cookie: string;
|
|
13
|
-
}): string;
|
|
14
|
-
}
|
|
15
|
-
export declare const XiaohongshuSign: S;
|
|
16
|
-
export {};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { generateX_S } from './generateX_S.js';
|
|
2
|
-
// @ts-ignore
|
|
3
|
-
import { xsCommon } from './generateX_S_Common.js';
|
|
4
|
-
class S {
|
|
5
|
-
x_b3_traceid() {
|
|
6
|
-
for (var t = "", e = 0; e < 16; e++)
|
|
7
|
-
t += "abcdef0123456789".charAt(Math.floor(16 * Math.random()));
|
|
8
|
-
return t;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
*
|
|
12
|
-
* @param url 接口地址
|
|
13
|
-
* @param cookie 小红书用户 ck
|
|
14
|
-
* @returns
|
|
15
|
-
*/
|
|
16
|
-
x_s(url, cookie, body) {
|
|
17
|
-
return generateX_S(url, cookie, body);
|
|
18
|
-
}
|
|
19
|
-
x_s_common(data) {
|
|
20
|
-
return xsCommon({
|
|
21
|
-
x_t: Date.now(),
|
|
22
|
-
x_s: data.x_s,
|
|
23
|
-
a1: data.cookie.includes('a1=') ? data.cookie.split('a1=')[1].split(';')[0] : 'undefined',
|
|
24
|
-
fingerprint: 'I38rHdgsjopgIvesdVwgIC+oIELmBZ5e3VwXLgFTIxS3bqwErFeexd0ekncAzMFYnqthIhJed9MDKutRI3KsYorWHPtGrbV0P9WfIi/eWc6eYqtyQApPI37ekmR1QL+5Ii6sdnoeSfqYHqwl2qt5B0DoIx+PGDi/sVtkIxdsxuwr4qtiIkrwIi/skcc3I3VvIC7sYuwXq9qtpFveDSJsSPwXIEvsiVtJOPw8BuwfPpdeTDWOIx4VIiu1ZPwbPutXIvlaLb/s3qtxIxes1VwHIkumIkIyejgsY/WTge7eSqte/D7sDcpipedeYrDtIC6eDVw2IENsSqtlnlSuNjVtIvoekqwMgbOe1eY2IESPIhhgQdIUI38PqW88IizuBVwMIvGF4B6sdcNskVwVIC7eWo7sYeSqIk5eTDmY2uwjIhJs6f0s3SgeiVt/c9deYqwCICMyL/0efPwELnOsSVwBI3T2I3kkouw+gVwesBZ/yLOsYeOeVPwyIh7sjg6exmSuIENejlOe3dhkIiJsTVt0IkLdPuwJ2qw0ICvs6qwAIiNs3uw5Ikvsdqt5wuwLoVw7IvrEIxWcGnFD4IvexPtIIhDrIi6eDVwgbmm2Ls5sjjY6IiLoJqtPmVwvIv7exVtf+ree1lJsVrMZIE0s37JskutnpPwHIvKe0qwUIi5eTAubICdeS9oeDVtlIxds6uwTG7QBIEr4IvesxMgeka/ejDesYPtQIiM7ICcDcuwzICIJI33sVzbIy7OsWqw+IhpcbuwFJWesYpKeSuwprVwZIxkAIiqynPwtqPtNIv5sSM5siPt+sVwBICEYLPt1'
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
export const XiaohongshuSign = new S();
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYnVzaW5lc3MveGlhb2hvbmdzaHUvc2lnbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzNDLGFBQWE7QUFDYixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDbEQsTUFBTSxDQUFDO0lBQ0wsWUFBWTtRQUNWLEtBQUssSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEVBQUU7WUFDakMsQ0FBQyxJQUFJLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQ2hFLE9BQU8sQ0FBQyxDQUFBO0lBQ1YsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsR0FBRyxDQUFFLEdBQVcsRUFBRSxNQUFjLEVBQUUsSUFBVTtRQUMxQyxPQUFPLFdBQVcsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBRXZDLENBQUM7SUFFRCxVQUFVLENBQUUsSUFBcUM7UUFDL0MsT0FBTyxRQUFRLENBQUM7WUFDZCxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNmLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXO1lBQ3pGLFdBQVcsRUFBRSw4ekJBQTh6QjtTQUM1MEIsQ0FBQyxDQUFBO0lBQ0osQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUEifQ==
|