sourev1 0.0.1-security → 1.2.5
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of sourev1 might be problematic. Click here for more details.
- package/CHANGELOG.md +2 -0
- package/DOCS.md +1738 -0
- package/Extra/Database/index.js +398 -0
- package/Extra/Database/methods.js +286 -0
- package/Extra/Database/test/test.js +23 -0
- package/Extra/ExtraAddons.js +213 -0
- package/Extra/ExtraFindUID.js +48 -0
- package/Extra/ExtraGetThread.js +1 -0
- package/Extra/ExtraTranslate.js +62 -0
- package/Extra/ExtraUptimeRobot.js +3 -0
- package/Extra/Src/Last-Run.js +48 -0
- package/LICENSE-MIT +21 -0
- package/Language/index.json +149 -0
- package/README.md +132 -3
- package/Settings/Location.json +24 -0
- package/StateCrypt.js +22 -0
- package/broadcast.js +38 -0
- package/index.js +1071 -0
- package/logger.js +20 -0
- package/package.json +83 -3
- package/src/Dev_ChangeUptimeStatus.js +27 -0
- package/src/Dev_CheckLogin.js +14 -0
- package/src/addExternalModule.js +16 -0
- package/src/addUserToGroup.js +78 -0
- package/src/changeAdminStatus.js +79 -0
- package/src/changeArchivedStatus.js +41 -0
- package/src/changeBio.js +65 -0
- package/src/changeBlockedStatus.js +36 -0
- package/src/changeGroupImage.js +106 -0
- package/src/changeNickname.js +45 -0
- package/src/changeThreadColor.js +62 -0
- package/src/changeThreadEmoji.js +42 -0
- package/src/createNewGroup.js +70 -0
- package/src/createPoll.js +60 -0
- package/src/deleteMessage.js +45 -0
- package/src/deleteThread.js +43 -0
- package/src/forwardAttachment.js +48 -0
- package/src/getAccessToken.js +32 -0
- package/src/getCurrentUserID.js +7 -0
- package/src/getEmojiUrl.js +27 -0
- package/src/getFriendsList.js +73 -0
- package/src/getMessage.js +80 -0
- package/src/getThreadHistory.js +537 -0
- package/src/getThreadHistoryDeprecated.js +71 -0
- package/src/getThreadInfo.js +191 -0
- package/src/getThreadInfoDeprecated.js +56 -0
- package/src/getThreadList.js +213 -0
- package/src/getThreadListDeprecated.js +46 -0
- package/src/getThreadPictures.js +59 -0
- package/src/getUID.js +52 -0
- package/src/getUserID.js +62 -0
- package/src/getUserInfo.js +65 -0
- package/src/getUserInfoV2.js +35 -0
- package/src/handleFriendRequest.js +46 -0
- package/src/handleMessageRequest.js +49 -0
- package/src/httpGet.js +49 -0
- package/src/httpPost.js +48 -0
- package/src/httpPostFormData.js +41 -0
- package/src/listenMqtt.js +678 -0
- package/src/logout.js +68 -0
- package/src/markAsDelivered.js +48 -0
- package/src/markAsRead.js +70 -0
- package/src/markAsReadAll.js +43 -0
- package/src/markAsSeen.js +51 -0
- package/src/muteThread.js +47 -0
- package/src/removeUserFromGroup.js +49 -0
- package/src/resolvePhotoUrl.js +37 -0
- package/src/searchForThread.js +43 -0
- package/src/sendMessage.js +334 -0
- package/src/sendTypingIndicator.js +80 -0
- package/src/setMessageReaction.js +109 -0
- package/src/setPostReaction.js +102 -0
- package/src/setTitle.js +74 -0
- package/src/threadColors.js +39 -0
- package/src/unfriend.js +43 -0
- package/src/unsendMessage.js +40 -0
- package/test/data/shareAttach.js +146 -0
- package/test/data/something.mov +0 -0
- package/test/data/test.png +0 -0
- package/test/data/test.txt +7 -0
- package/test/example-config.json +18 -0
- package/test/test-page.js +140 -0
- package/test/test.js +385 -0
- package/test/testv2.js +3 -0
- package/utils.js +1288 -0
package/utils.js
ADDED
@@ -0,0 +1,1288 @@
|
|
1
|
+
/* eslint-disable no-undef */
|
2
|
+
/* eslint-disable no-prototype-builtins */
|
3
|
+
"use strict";
|
4
|
+
|
5
|
+
const bluebird = require("bluebird");
|
6
|
+
var request = bluebird.promisify(require("request").defaults({ jar: true }));
|
7
|
+
var stream = require("stream");
|
8
|
+
var log = require("npmlog");
|
9
|
+
var querystring = require("querystring");
|
10
|
+
var url = require("url");
|
11
|
+
|
12
|
+
function setProxy(url) {
|
13
|
+
if (typeof url == undefined) return request = bluebird.promisify(require("request").defaults({ jar: true }));
|
14
|
+
return request = bluebird.promisify(require("request").defaults({ jar: true, proxy: url }));
|
15
|
+
}
|
16
|
+
|
17
|
+
function getHeaders(url, options, ctx, customHeader) {
|
18
|
+
var headers = {
|
19
|
+
"Content-Type": "application/x-www-form-urlencoded",
|
20
|
+
Referer: "https://www.facebook.com/",
|
21
|
+
Host: url.replace("https://", "").split("/")[0],
|
22
|
+
Origin: "https://www.facebook.com",
|
23
|
+
"User-Agent": options.userAgent,
|
24
|
+
Connection: "keep-alive",
|
25
|
+
'sec-fetch-site': 'same-origin'
|
26
|
+
};
|
27
|
+
if (customHeader) Object.assign(headers, customHeader);
|
28
|
+
|
29
|
+
if (ctx && ctx.region) headers["X-MSGR-Region"] = ctx.region;
|
30
|
+
|
31
|
+
return headers;
|
32
|
+
}
|
33
|
+
|
34
|
+
function isReadableStream(obj) {
|
35
|
+
return (
|
36
|
+
obj instanceof stream.Stream &&
|
37
|
+
(getType(obj._read) === "Function" ||
|
38
|
+
getType(obj._read) === "AsyncFunction") &&
|
39
|
+
getType(obj._readableState) === "Object"
|
40
|
+
);
|
41
|
+
}
|
42
|
+
|
43
|
+
function get(url, jar, qs, options, ctx) {
|
44
|
+
// I'm still confused about this
|
45
|
+
if (getType(qs) === "Object")
|
46
|
+
for (var prop in qs)
|
47
|
+
if (qs.hasOwnProperty(prop) && getType(qs[prop]) === "Object") qs[prop] = JSON.stringify(qs[prop]);
|
48
|
+
var op = {
|
49
|
+
headers: getHeaders(url, options, ctx),
|
50
|
+
timeout: 60000,
|
51
|
+
qs: qs,
|
52
|
+
url: url,
|
53
|
+
method: "GET",
|
54
|
+
jar: jar,
|
55
|
+
gzip: true
|
56
|
+
};
|
57
|
+
|
58
|
+
return request(op).then(function(res) {
|
59
|
+
return res[0];
|
60
|
+
});
|
61
|
+
}
|
62
|
+
|
63
|
+
function post(url, jar, form, options, ctx, customHeader) {
|
64
|
+
let headers = getHeaders(url, options);
|
65
|
+
headers['sec-fetch-site'] = 'same-origin';
|
66
|
+
var op = {
|
67
|
+
headers: headers,
|
68
|
+
timeout: 60000,
|
69
|
+
url: url,
|
70
|
+
method: "POST",
|
71
|
+
form: form,
|
72
|
+
jar: jar,
|
73
|
+
gzip: true
|
74
|
+
};
|
75
|
+
|
76
|
+
return request(op).then(function(res) {
|
77
|
+
return res[0];
|
78
|
+
});
|
79
|
+
}
|
80
|
+
|
81
|
+
function postFormData(url, jar, form, qs, options, ctx) {
|
82
|
+
var headers = getHeaders(url, options, ctx);
|
83
|
+
headers["Content-Type"] = "multipart/form-data";
|
84
|
+
var op = {
|
85
|
+
headers: headers,
|
86
|
+
timeout: 60000,
|
87
|
+
url: url,
|
88
|
+
method: "POST",
|
89
|
+
formData: form,
|
90
|
+
qs: qs,
|
91
|
+
jar: jar,
|
92
|
+
gzip: true
|
93
|
+
};
|
94
|
+
|
95
|
+
return request(op).then(function(res) {
|
96
|
+
return res[0];
|
97
|
+
});
|
98
|
+
}
|
99
|
+
|
100
|
+
function padZeros(val, len) {
|
101
|
+
val = String(val);
|
102
|
+
len = len || 2;
|
103
|
+
while (val.length < len) val = "0" + val;
|
104
|
+
return val;
|
105
|
+
}
|
106
|
+
|
107
|
+
function generateThreadingID(clientID) {
|
108
|
+
var k = Date.now();
|
109
|
+
var l = Math.floor(Math.random() * 4294967295);
|
110
|
+
var m = clientID;
|
111
|
+
return "<" + k + ":" + l + "-" + m + "@mail.projektitan.com>";
|
112
|
+
}
|
113
|
+
|
114
|
+
function binaryToDecimal(data) {
|
115
|
+
var ret = "";
|
116
|
+
while (data !== "0") {
|
117
|
+
var end = 0;
|
118
|
+
var fullName = "";
|
119
|
+
var i = 0;
|
120
|
+
for (; i < data.length; i++) {
|
121
|
+
end = 2 * end + parseInt(data[i], 10);
|
122
|
+
if (end >= 10) {
|
123
|
+
fullName += "1";
|
124
|
+
end -= 10;
|
125
|
+
} else fullName += "0";
|
126
|
+
}
|
127
|
+
ret = end.toString() + ret;
|
128
|
+
data = fullName.slice(fullName.indexOf("1"));
|
129
|
+
}
|
130
|
+
return ret;
|
131
|
+
}
|
132
|
+
|
133
|
+
function generateOfflineThreadingID() {
|
134
|
+
var ret = Date.now();
|
135
|
+
var value = Math.floor(Math.random() * 4294967295);
|
136
|
+
var str = ("0000000000000000000000" + value.toString(2)).slice(-22);
|
137
|
+
var msgs = ret.toString(2) + str;
|
138
|
+
return binaryToDecimal(msgs);
|
139
|
+
}
|
140
|
+
|
141
|
+
var h;
|
142
|
+
var i = {};
|
143
|
+
var j = {
|
144
|
+
_: "%",
|
145
|
+
A: "%2",
|
146
|
+
B: "000",
|
147
|
+
C: "%7d",
|
148
|
+
D: "%7b%22",
|
149
|
+
E: "%2c%22",
|
150
|
+
F: "%22%3a",
|
151
|
+
G: "%2c%22ut%22%3a1",
|
152
|
+
H: "%2c%22bls%22%3a",
|
153
|
+
I: "%2c%22n%22%3a%22%",
|
154
|
+
J: "%22%3a%7b%22i%22%3a0%7d",
|
155
|
+
K: "%2c%22pt%22%3a0%2c%22vis%22%3a",
|
156
|
+
L: "%2c%22ch%22%3a%7b%22h%22%3a%22",
|
157
|
+
M: "%7b%22v%22%3a2%2c%22time%22%3a1",
|
158
|
+
N: ".channel%22%2c%22sub%22%3a%5b",
|
159
|
+
O: "%2c%22sb%22%3a1%2c%22t%22%3a%5b",
|
160
|
+
P: "%2c%22ud%22%3a100%2c%22lc%22%3a0",
|
161
|
+
Q: "%5d%2c%22f%22%3anull%2c%22uct%22%3a",
|
162
|
+
R: ".channel%22%2c%22sub%22%3a%5b1%5d",
|
163
|
+
S: "%22%2c%22m%22%3a0%7d%2c%7b%22i%22%3a",
|
164
|
+
T: "%2c%22blc%22%3a1%2c%22snd%22%3a1%2c%22ct%22%3a",
|
165
|
+
U: "%2c%22blc%22%3a0%2c%22snd%22%3a1%2c%22ct%22%3a",
|
166
|
+
V: "%2c%22blc%22%3a0%2c%22snd%22%3a0%2c%22ct%22%3a",
|
167
|
+
W: "%2c%22s%22%3a0%2c%22blo%22%3a0%7d%2c%22bl%22%3a%7b%22ac%22%3a",
|
168
|
+
X: "%2c%22ri%22%3a0%7d%2c%22state%22%3a%7b%22p%22%3a0%2c%22ut%22%3a1",
|
169
|
+
Y: "%2c%22pt%22%3a0%2c%22vis%22%3a1%2c%22bls%22%3a0%2c%22blc%22%3a0%2c%22snd%22%3a1%2c%22ct%22%3a",
|
170
|
+
Z: "%2c%22sb%22%3a1%2c%22t%22%3a%5b%5d%2c%22f%22%3anull%2c%22uct%22%3a0%2c%22s%22%3a0%2c%22blo%22%3a0%7d%2c%22bl%22%3a%7b%22ac%22%3a"
|
171
|
+
};
|
172
|
+
(function() {
|
173
|
+
var l = [];
|
174
|
+
for (var m in j) {
|
175
|
+
i[j[m]] = m;
|
176
|
+
l.push(j[m]);
|
177
|
+
}
|
178
|
+
l.reverse();
|
179
|
+
h = new RegExp(l.join("|"), "g");
|
180
|
+
})();
|
181
|
+
|
182
|
+
function presenceEncode(str) {
|
183
|
+
return encodeURIComponent(str)
|
184
|
+
.replace(/([_A-Z])|%../g, function(m, n) {
|
185
|
+
return n ? "%" + n.charCodeAt(0).toString(16) : m;
|
186
|
+
})
|
187
|
+
.toLowerCase()
|
188
|
+
.replace(h, function(m) {
|
189
|
+
return i[m];
|
190
|
+
});
|
191
|
+
}
|
192
|
+
|
193
|
+
// eslint-disable-next-line no-unused-vars
|
194
|
+
function presenceDecode(str) {
|
195
|
+
return decodeURIComponent(
|
196
|
+
str.replace(/[_A-Z]/g, function(m) {
|
197
|
+
return j[m];
|
198
|
+
})
|
199
|
+
);
|
200
|
+
}
|
201
|
+
|
202
|
+
function generatePresence(userID) {
|
203
|
+
var time = Date.now();
|
204
|
+
return (
|
205
|
+
"E" +
|
206
|
+
presenceEncode(
|
207
|
+
JSON.stringify({
|
208
|
+
v: 3,
|
209
|
+
time: parseInt(time / 1000, 10),
|
210
|
+
user: userID,
|
211
|
+
state: {
|
212
|
+
ut: 0,
|
213
|
+
t2: [],
|
214
|
+
lm2: null,
|
215
|
+
uct2: time,
|
216
|
+
tr: null,
|
217
|
+
tw: Math.floor(Math.random() * 4294967295) + 1,
|
218
|
+
at: time
|
219
|
+
},
|
220
|
+
ch: {
|
221
|
+
["p_" + userID]: 0
|
222
|
+
}
|
223
|
+
})
|
224
|
+
)
|
225
|
+
);
|
226
|
+
}
|
227
|
+
|
228
|
+
function generateAccessiblityCookie() {
|
229
|
+
var time = Date.now();
|
230
|
+
return encodeURIComponent(
|
231
|
+
JSON.stringify({
|
232
|
+
sr: 0,
|
233
|
+
"sr-ts": time,
|
234
|
+
jk: 0,
|
235
|
+
"jk-ts": time,
|
236
|
+
kb: 0,
|
237
|
+
"kb-ts": time,
|
238
|
+
hcm: 0,
|
239
|
+
"hcm-ts": time
|
240
|
+
})
|
241
|
+
);
|
242
|
+
}
|
243
|
+
|
244
|
+
function getGUID() {
|
245
|
+
/** @type {number} */
|
246
|
+
var sectionLength = Date.now();
|
247
|
+
/** @type {string} */
|
248
|
+
var id = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(c) {
|
249
|
+
/** @type {number} */
|
250
|
+
var r = Math.floor((sectionLength + Math.random() * 16) % 16);
|
251
|
+
/** @type {number} */
|
252
|
+
sectionLength = Math.floor(sectionLength / 16);
|
253
|
+
/** @type {string} */
|
254
|
+
var _guid = (c == "x" ? r : (r & 7) | 8).toString(16);
|
255
|
+
return _guid;
|
256
|
+
});
|
257
|
+
return id;
|
258
|
+
}
|
259
|
+
|
260
|
+
function _formatAttachment(attachment1, attachment2) {
|
261
|
+
// TODO: THIS IS REALLY BAD
|
262
|
+
// This is an attempt at fixing Facebook's inconsistencies. Sometimes they give us
|
263
|
+
// two attachment objects, but sometimes only one. They each contain part of the
|
264
|
+
// data that you'd want so we merge them for convenience.
|
265
|
+
// Instead of having a bunch of if statements guarding every access to image_data,
|
266
|
+
// we set it to empty object and use the fact that it'll return undefined.
|
267
|
+
attachment2 = attachment2 || { id: "", image_data: {} };
|
268
|
+
attachment1 = attachment1.mercury ? attachment1.mercury : attachment1;
|
269
|
+
var blob = attachment1.blob_attachment;
|
270
|
+
var type =
|
271
|
+
blob && blob.__typename ? blob.__typename : attachment1.attach_type;
|
272
|
+
if (!type && attachment1.sticker_attachment) {
|
273
|
+
type = "StickerAttachment";
|
274
|
+
blob = attachment1.sticker_attachment;
|
275
|
+
} else if (!type && attachment1.extensible_attachment) {
|
276
|
+
if (
|
277
|
+
attachment1.extensible_attachment.story_attachment &&
|
278
|
+
attachment1.extensible_attachment.story_attachment.target &&
|
279
|
+
attachment1.extensible_attachment.story_attachment.target.__typename &&
|
280
|
+
attachment1.extensible_attachment.story_attachment.target.__typename === "MessageLocation"
|
281
|
+
) type = "MessageLocation";
|
282
|
+
else type = "ExtensibleAttachment";
|
283
|
+
|
284
|
+
blob = attachment1.extensible_attachment;
|
285
|
+
}
|
286
|
+
// TODO: Determine whether "sticker", "photo", "file" etc are still used
|
287
|
+
// KEEP IN SYNC WITH getThreadHistory
|
288
|
+
switch (type) {
|
289
|
+
case "sticker":
|
290
|
+
return {
|
291
|
+
type: "sticker",
|
292
|
+
ID: attachment1.metadata.stickerID.toString(),
|
293
|
+
url: attachment1.url,
|
294
|
+
|
295
|
+
packID: attachment1.metadata.packID.toString(),
|
296
|
+
spriteUrl: attachment1.metadata.spriteURI,
|
297
|
+
spriteUrl2x: attachment1.metadata.spriteURI2x,
|
298
|
+
width: attachment1.metadata.width,
|
299
|
+
height: attachment1.metadata.height,
|
300
|
+
|
301
|
+
caption: attachment2.caption,
|
302
|
+
description: attachment2.description,
|
303
|
+
|
304
|
+
frameCount: attachment1.metadata.frameCount,
|
305
|
+
frameRate: attachment1.metadata.frameRate,
|
306
|
+
framesPerRow: attachment1.metadata.framesPerRow,
|
307
|
+
framesPerCol: attachment1.metadata.framesPerCol,
|
308
|
+
|
309
|
+
stickerID: attachment1.metadata.stickerID.toString(), // @Legacy
|
310
|
+
spriteURI: attachment1.metadata.spriteURI, // @Legacy
|
311
|
+
spriteURI2x: attachment1.metadata.spriteURI2x // @Legacy
|
312
|
+
};
|
313
|
+
case "file":
|
314
|
+
return {
|
315
|
+
type: "file",
|
316
|
+
filename: attachment1.name,
|
317
|
+
ID: attachment2.id.toString(),
|
318
|
+
url: attachment1.url,
|
319
|
+
|
320
|
+
isMalicious: attachment2.is_malicious,
|
321
|
+
contentType: attachment2.mime_type,
|
322
|
+
|
323
|
+
name: attachment1.name, // @Legacy
|
324
|
+
mimeType: attachment2.mime_type, // @Legacy
|
325
|
+
fileSize: attachment2.file_size // @Legacy
|
326
|
+
};
|
327
|
+
case "photo":
|
328
|
+
return {
|
329
|
+
type: "photo",
|
330
|
+
ID: attachment1.metadata.fbid.toString(),
|
331
|
+
filename: attachment1.fileName,
|
332
|
+
thumbnailUrl: attachment1.thumbnail_url,
|
333
|
+
|
334
|
+
previewUrl: attachment1.preview_url,
|
335
|
+
previewWidth: attachment1.preview_width,
|
336
|
+
previewHeight: attachment1.preview_height,
|
337
|
+
|
338
|
+
largePreviewUrl: attachment1.large_preview_url,
|
339
|
+
largePreviewWidth: attachment1.large_preview_width,
|
340
|
+
largePreviewHeight: attachment1.large_preview_height,
|
341
|
+
|
342
|
+
url: attachment1.metadata.url, // @Legacy
|
343
|
+
width: attachment1.metadata.dimensions.split(",")[0], // @Legacy
|
344
|
+
height: attachment1.metadata.dimensions.split(",")[1], // @Legacy
|
345
|
+
name: attachment1.fileName // @Legacy
|
346
|
+
};
|
347
|
+
case "animated_image":
|
348
|
+
return {
|
349
|
+
type: "animated_image",
|
350
|
+
ID: attachment2.id.toString(),
|
351
|
+
filename: attachment2.filename,
|
352
|
+
|
353
|
+
previewUrl: attachment1.preview_url,
|
354
|
+
previewWidth: attachment1.preview_width,
|
355
|
+
previewHeight: attachment1.preview_height,
|
356
|
+
|
357
|
+
url: attachment2.image_data.url,
|
358
|
+
width: attachment2.image_data.width,
|
359
|
+
height: attachment2.image_data.height,
|
360
|
+
|
361
|
+
name: attachment1.name, // @Legacy
|
362
|
+
facebookUrl: attachment1.url, // @Legacy
|
363
|
+
thumbnailUrl: attachment1.thumbnail_url, // @Legacy
|
364
|
+
mimeType: attachment2.mime_type, // @Legacy
|
365
|
+
rawGifImage: attachment2.image_data.raw_gif_image, // @Legacy
|
366
|
+
rawWebpImage: attachment2.image_data.raw_webp_image, // @Legacy
|
367
|
+
animatedGifUrl: attachment2.image_data.animated_gif_url, // @Legacy
|
368
|
+
animatedGifPreviewUrl: attachment2.image_data.animated_gif_preview_url, // @Legacy
|
369
|
+
animatedWebpUrl: attachment2.image_data.animated_webp_url, // @Legacy
|
370
|
+
animatedWebpPreviewUrl: attachment2.image_data.animated_webp_preview_url // @Legacy
|
371
|
+
};
|
372
|
+
case "share":
|
373
|
+
return {
|
374
|
+
type: "share",
|
375
|
+
ID: attachment1.share.share_id.toString(),
|
376
|
+
url: attachment2.href,
|
377
|
+
|
378
|
+
title: attachment1.share.title,
|
379
|
+
description: attachment1.share.description,
|
380
|
+
source: attachment1.share.source,
|
381
|
+
|
382
|
+
image: attachment1.share.media.image,
|
383
|
+
width: attachment1.share.media.image_size.width,
|
384
|
+
height: attachment1.share.media.image_size.height,
|
385
|
+
playable: attachment1.share.media.playable,
|
386
|
+
duration: attachment1.share.media.duration,
|
387
|
+
|
388
|
+
subattachments: attachment1.share.subattachments,
|
389
|
+
properties: {},
|
390
|
+
|
391
|
+
animatedImageSize: attachment1.share.media.animated_image_size, // @Legacy
|
392
|
+
facebookUrl: attachment1.share.uri, // @Legacy
|
393
|
+
target: attachment1.share.target, // @Legacy
|
394
|
+
styleList: attachment1.share.style_list // @Legacy
|
395
|
+
};
|
396
|
+
case "video":
|
397
|
+
return {
|
398
|
+
type: "video",
|
399
|
+
ID: attachment1.metadata.fbid.toString(),
|
400
|
+
filename: attachment1.name,
|
401
|
+
|
402
|
+
previewUrl: attachment1.preview_url,
|
403
|
+
previewWidth: attachment1.preview_width,
|
404
|
+
previewHeight: attachment1.preview_height,
|
405
|
+
|
406
|
+
url: attachment1.url,
|
407
|
+
width: attachment1.metadata.dimensions.width,
|
408
|
+
height: attachment1.metadata.dimensions.height,
|
409
|
+
|
410
|
+
duration: attachment1.metadata.duration,
|
411
|
+
videoType: "unknown",
|
412
|
+
|
413
|
+
thumbnailUrl: attachment1.thumbnail_url // @Legacy
|
414
|
+
};
|
415
|
+
case "error":
|
416
|
+
return {
|
417
|
+
type: "error",
|
418
|
+
|
419
|
+
// Save error attachments because we're unsure of their format,
|
420
|
+
// and whether there are cases they contain something useful for debugging.
|
421
|
+
attachment1: attachment1,
|
422
|
+
attachment2: attachment2
|
423
|
+
};
|
424
|
+
case "MessageImage":
|
425
|
+
return {
|
426
|
+
type: "photo",
|
427
|
+
ID: blob.legacy_attachment_id,
|
428
|
+
filename: blob.filename,
|
429
|
+
thumbnailUrl: blob.thumbnail.uri,
|
430
|
+
|
431
|
+
previewUrl: blob.preview.uri,
|
432
|
+
previewWidth: blob.preview.width,
|
433
|
+
previewHeight: blob.preview.height,
|
434
|
+
|
435
|
+
largePreviewUrl: blob.large_preview.uri,
|
436
|
+
largePreviewWidth: blob.large_preview.width,
|
437
|
+
largePreviewHeight: blob.large_preview.height,
|
438
|
+
|
439
|
+
url: blob.large_preview.uri, // @Legacy
|
440
|
+
width: blob.original_dimensions.x, // @Legacy
|
441
|
+
height: blob.original_dimensions.y, // @Legacy
|
442
|
+
name: blob.filename // @Legacy
|
443
|
+
};
|
444
|
+
case "MessageAnimatedImage":
|
445
|
+
return {
|
446
|
+
type: "animated_image",
|
447
|
+
ID: blob.legacy_attachment_id,
|
448
|
+
filename: blob.filename,
|
449
|
+
|
450
|
+
previewUrl: blob.preview_image.uri,
|
451
|
+
previewWidth: blob.preview_image.width,
|
452
|
+
previewHeight: blob.preview_image.height,
|
453
|
+
|
454
|
+
url: blob.animated_image.uri,
|
455
|
+
width: blob.animated_image.width,
|
456
|
+
height: blob.animated_image.height,
|
457
|
+
|
458
|
+
thumbnailUrl: blob.preview_image.uri, // @Legacy
|
459
|
+
name: blob.filename, // @Legacy
|
460
|
+
facebookUrl: blob.animated_image.uri, // @Legacy
|
461
|
+
rawGifImage: blob.animated_image.uri, // @Legacy
|
462
|
+
animatedGifUrl: blob.animated_image.uri, // @Legacy
|
463
|
+
animatedGifPreviewUrl: blob.preview_image.uri, // @Legacy
|
464
|
+
animatedWebpUrl: blob.animated_image.uri, // @Legacy
|
465
|
+
animatedWebpPreviewUrl: blob.preview_image.uri // @Legacy
|
466
|
+
};
|
467
|
+
case "MessageVideo":
|
468
|
+
return {
|
469
|
+
type: "video",
|
470
|
+
filename: blob.filename,
|
471
|
+
ID: blob.legacy_attachment_id,
|
472
|
+
|
473
|
+
previewUrl: blob.large_image.uri,
|
474
|
+
previewWidth: blob.large_image.width,
|
475
|
+
previewHeight: blob.large_image.height,
|
476
|
+
|
477
|
+
url: blob.playable_url,
|
478
|
+
width: blob.original_dimensions.x,
|
479
|
+
height: blob.original_dimensions.y,
|
480
|
+
|
481
|
+
duration: blob.playable_duration_in_ms,
|
482
|
+
videoType: blob.video_type.toLowerCase(),
|
483
|
+
|
484
|
+
thumbnailUrl: blob.large_image.uri // @Legacy
|
485
|
+
};
|
486
|
+
case "MessageAudio":
|
487
|
+
return {
|
488
|
+
type: "audio",
|
489
|
+
filename: blob.filename,
|
490
|
+
ID: blob.url_shimhash,
|
491
|
+
|
492
|
+
audioType: blob.audio_type,
|
493
|
+
duration: blob.playable_duration_in_ms,
|
494
|
+
url: blob.playable_url,
|
495
|
+
|
496
|
+
isVoiceMail: blob.is_voicemail
|
497
|
+
};
|
498
|
+
case "StickerAttachment":
|
499
|
+
return {
|
500
|
+
type: "sticker",
|
501
|
+
ID: blob.id,
|
502
|
+
url: blob.url,
|
503
|
+
|
504
|
+
packID: blob.pack ? blob.pack.id : null,
|
505
|
+
spriteUrl: blob.sprite_image,
|
506
|
+
spriteUrl2x: blob.sprite_image_2x,
|
507
|
+
width: blob.width,
|
508
|
+
height: blob.height,
|
509
|
+
|
510
|
+
caption: blob.label,
|
511
|
+
description: blob.label,
|
512
|
+
|
513
|
+
frameCount: blob.frame_count,
|
514
|
+
frameRate: blob.frame_rate,
|
515
|
+
framesPerRow: blob.frames_per_row,
|
516
|
+
framesPerCol: blob.frames_per_column,
|
517
|
+
|
518
|
+
stickerID: blob.id, // @Legacy
|
519
|
+
spriteURI: blob.sprite_image, // @Legacy
|
520
|
+
spriteURI2x: blob.sprite_image_2x // @Legacy
|
521
|
+
};
|
522
|
+
case "MessageLocation":
|
523
|
+
var urlAttach = blob.story_attachment.url;
|
524
|
+
var mediaAttach = blob.story_attachment.media;
|
525
|
+
|
526
|
+
var u = querystring.parse(url.parse(urlAttach).query).u;
|
527
|
+
var where1 = querystring.parse(url.parse(u).query).where1;
|
528
|
+
var address = where1.split(", ");
|
529
|
+
|
530
|
+
var latitude;
|
531
|
+
var longitude;
|
532
|
+
|
533
|
+
try {
|
534
|
+
latitude = Number.parseFloat(address[0]);
|
535
|
+
longitude = Number.parseFloat(address[1]);
|
536
|
+
} catch (err) {
|
537
|
+
/* empty */
|
538
|
+
}
|
539
|
+
|
540
|
+
var imageUrl;
|
541
|
+
var width;
|
542
|
+
var height;
|
543
|
+
|
544
|
+
if (mediaAttach && mediaAttach.image) {
|
545
|
+
imageUrl = mediaAttach.image.uri;
|
546
|
+
width = mediaAttach.image.width;
|
547
|
+
height = mediaAttach.image.height;
|
548
|
+
}
|
549
|
+
|
550
|
+
return {
|
551
|
+
type: "location",
|
552
|
+
ID: blob.legacy_attachment_id,
|
553
|
+
latitude: latitude,
|
554
|
+
longitude: longitude,
|
555
|
+
image: imageUrl,
|
556
|
+
width: width,
|
557
|
+
height: height,
|
558
|
+
url: u || urlAttach,
|
559
|
+
address: where1,
|
560
|
+
|
561
|
+
facebookUrl: blob.story_attachment.url, // @Legacy
|
562
|
+
target: blob.story_attachment.target, // @Legacy
|
563
|
+
styleList: blob.story_attachment.style_list // @Legacy
|
564
|
+
};
|
565
|
+
case "ExtensibleAttachment":
|
566
|
+
return {
|
567
|
+
type: "share",
|
568
|
+
ID: blob.legacy_attachment_id,
|
569
|
+
url: blob.story_attachment.url,
|
570
|
+
|
571
|
+
title: blob.story_attachment.title_with_entities.text,
|
572
|
+
description: blob.story_attachment.description &&
|
573
|
+
blob.story_attachment.description.text,
|
574
|
+
source: blob.story_attachment.source ? blob.story_attachment.source.text : null,
|
575
|
+
|
576
|
+
image: blob.story_attachment.media &&
|
577
|
+
blob.story_attachment.media.image &&
|
578
|
+
blob.story_attachment.media.image.uri,
|
579
|
+
width: blob.story_attachment.media &&
|
580
|
+
blob.story_attachment.media.image &&
|
581
|
+
blob.story_attachment.media.image.width,
|
582
|
+
height: blob.story_attachment.media &&
|
583
|
+
blob.story_attachment.media.image &&
|
584
|
+
blob.story_attachment.media.image.height,
|
585
|
+
playable: blob.story_attachment.media &&
|
586
|
+
blob.story_attachment.media.is_playable,
|
587
|
+
duration: blob.story_attachment.media &&
|
588
|
+
blob.story_attachment.media.playable_duration_in_ms,
|
589
|
+
playableUrl: blob.story_attachment.media == null ? null : blob.story_attachment.media.playable_url,
|
590
|
+
|
591
|
+
subattachments: blob.story_attachment.subattachments,
|
592
|
+
properties: blob.story_attachment.properties.reduce(function(obj, cur) {
|
593
|
+
obj[cur.key] = cur.value.text;
|
594
|
+
return obj;
|
595
|
+
}, {}),
|
596
|
+
|
597
|
+
facebookUrl: blob.story_attachment.url, // @Legacy
|
598
|
+
target: blob.story_attachment.target, // @Legacy
|
599
|
+
styleList: blob.story_attachment.style_list // @Legacy
|
600
|
+
};
|
601
|
+
case "MessageFile":
|
602
|
+
return {
|
603
|
+
type: "file",
|
604
|
+
filename: blob.filename,
|
605
|
+
ID: blob.message_file_fbid,
|
606
|
+
|
607
|
+
url: blob.url,
|
608
|
+
isMalicious: blob.is_malicious,
|
609
|
+
contentType: blob.content_type,
|
610
|
+
|
611
|
+
name: blob.filename,
|
612
|
+
mimeType: "",
|
613
|
+
fileSize: -1
|
614
|
+
};
|
615
|
+
default:
|
616
|
+
throw new Error(
|
617
|
+
"unrecognized attach_file of type " +
|
618
|
+
type +
|
619
|
+
"`" +
|
620
|
+
JSON.stringify(attachment1, null, 4) +
|
621
|
+
" attachment2: " +
|
622
|
+
JSON.stringify(attachment2, null, 4) +
|
623
|
+
"`"
|
624
|
+
);
|
625
|
+
}
|
626
|
+
}
|
627
|
+
|
628
|
+
function formatAttachment(attachments, attachmentIds, attachmentMap, shareMap) {
|
629
|
+
attachmentMap = shareMap || attachmentMap;
|
630
|
+
return attachments ?
|
631
|
+
attachments.map(function(val, i) {
|
632
|
+
if (!attachmentMap ||
|
633
|
+
!attachmentIds ||
|
634
|
+
!attachmentMap[attachmentIds[i]]
|
635
|
+
) {
|
636
|
+
return _formatAttachment(val);
|
637
|
+
}
|
638
|
+
return _formatAttachment(val, attachmentMap[attachmentIds[i]]);
|
639
|
+
}) : [];
|
640
|
+
}
|
641
|
+
|
642
|
+
function formatDeltaMessage(m) {
|
643
|
+
var md = m.delta.messageMetadata;
|
644
|
+
var mdata =
|
645
|
+
m.delta.data === undefined ? [] :
|
646
|
+
m.delta.data.prng === undefined ? [] :
|
647
|
+
JSON.parse(m.delta.data.prng);
|
648
|
+
var m_id = mdata.map(u => u.i);
|
649
|
+
var m_offset = mdata.map(u => u.o);
|
650
|
+
var m_length = mdata.map(u => u.l);
|
651
|
+
var mentions = {};
|
652
|
+
var body = m.delta.body || "";
|
653
|
+
var args = body == "" ? [] : body.trim().split(/\s+/);
|
654
|
+
for (var i = 0; i < m_id.length; i++) mentions[m_id[i]] = m.delta.body.substring(m_offset[i], m_offset[i] + m_length[i]);
|
655
|
+
|
656
|
+
return {
|
657
|
+
type: "message",
|
658
|
+
senderID: formatID(md.actorFbId.toString()),
|
659
|
+
threadID: formatID((md.threadKey.threadFbId || md.threadKey.otherUserFbId).toString()),
|
660
|
+
messageID: md.messageId,
|
661
|
+
args: args,
|
662
|
+
body: body,
|
663
|
+
attachments: (m.delta.attachments || []).map(v => _formatAttachment(v)),
|
664
|
+
mentions: mentions,
|
665
|
+
timestamp: md.timestamp,
|
666
|
+
isGroup: !!md.threadKey.threadFbId,
|
667
|
+
participantIDs: m.delta.participants || []
|
668
|
+
};
|
669
|
+
}
|
670
|
+
|
671
|
+
function formatID(id) {
|
672
|
+
if (id != undefined && id != null) return id.replace(/(fb)?id[:.]/, "");
|
673
|
+
else return id;
|
674
|
+
}
|
675
|
+
|
676
|
+
function formatMessage(m) {
|
677
|
+
var originalMessage = m.message ? m.message : m;
|
678
|
+
var obj = {
|
679
|
+
type: "message",
|
680
|
+
senderName: originalMessage.sender_name,
|
681
|
+
senderID: formatID(originalMessage.sender_fbid.toString()),
|
682
|
+
participantNames: originalMessage.group_thread_info ? originalMessage.group_thread_info.participant_names : [originalMessage.sender_name.split(" ")[0]],
|
683
|
+
participantIDs: originalMessage.group_thread_info ?
|
684
|
+
originalMessage.group_thread_info.participant_ids.map(function(v) {
|
685
|
+
return formatID(v.toString());
|
686
|
+
}) : [formatID(originalMessage.sender_fbid)],
|
687
|
+
body: originalMessage.body || "",
|
688
|
+
threadID: formatID((originalMessage.thread_fbid || originalMessage.other_user_fbid).toString()),
|
689
|
+
threadName: originalMessage.group_thread_info ? originalMessage.group_thread_info.name : originalMessage.sender_name,
|
690
|
+
location: originalMessage.coordinates ? originalMessage.coordinates : null,
|
691
|
+
messageID: originalMessage.mid ? originalMessage.mid.toString() : originalMessage.message_id,
|
692
|
+
attachments: formatAttachment(
|
693
|
+
originalMessage.attachments,
|
694
|
+
originalMessage.attachmentIds,
|
695
|
+
originalMessage.attachment_map,
|
696
|
+
originalMessage.share_map
|
697
|
+
),
|
698
|
+
timestamp: originalMessage.timestamp,
|
699
|
+
timestampAbsolute: originalMessage.timestamp_absolute,
|
700
|
+
timestampRelative: originalMessage.timestamp_relative,
|
701
|
+
timestampDatetime: originalMessage.timestamp_datetime,
|
702
|
+
tags: originalMessage.tags,
|
703
|
+
reactions: originalMessage.reactions ? originalMessage.reactions : [],
|
704
|
+
isUnread: originalMessage.is_unread
|
705
|
+
};
|
706
|
+
|
707
|
+
if (m.type === "pages_messaging") obj.pageID = m.realtime_viewer_fbid.toString();
|
708
|
+
obj.isGroup = obj.participantIDs.length > 2;
|
709
|
+
|
710
|
+
return obj;
|
711
|
+
}
|
712
|
+
|
713
|
+
function formatEvent(m) {
|
714
|
+
var originalMessage = m.message ? m.message : m;
|
715
|
+
var logMessageType = originalMessage.log_message_type;
|
716
|
+
var logMessageData;
|
717
|
+
if (logMessageType === "log:generic-admin-text") {
|
718
|
+
logMessageData = originalMessage.log_message_data.untypedData;
|
719
|
+
logMessageType = getAdminTextMessageType(originalMessage.log_message_data.message_type);
|
720
|
+
} else logMessageData = originalMessage.log_message_data;
|
721
|
+
|
722
|
+
return Object.assign(formatMessage(originalMessage), {
|
723
|
+
type: "event",
|
724
|
+
logMessageType: logMessageType,
|
725
|
+
logMessageData: logMessageData,
|
726
|
+
logMessageBody: originalMessage.log_message_body
|
727
|
+
});
|
728
|
+
}
|
729
|
+
|
730
|
+
function formatHistoryMessage(m) {
|
731
|
+
switch (m.action_type) {
|
732
|
+
case "ma-type:log-message":
|
733
|
+
return formatEvent(m);
|
734
|
+
default:
|
735
|
+
return formatMessage(m);
|
736
|
+
}
|
737
|
+
}
|
738
|
+
|
739
|
+
// Get a more readable message type for AdminTextMessages
|
740
|
+
function getAdminTextMessageType(m) {
|
741
|
+
switch (m.type) {
|
742
|
+
case "joinable_group_link_mode_change":
|
743
|
+
return "log:link-status"
|
744
|
+
case "magic_words":
|
745
|
+
return "log:magic-words";
|
746
|
+
case "change_thread_theme":
|
747
|
+
return "log:thread-color";
|
748
|
+
case "change_thread_icon":
|
749
|
+
return "log:thread-icon";
|
750
|
+
case "change_thread_nickname":
|
751
|
+
return "log:user-nickname";
|
752
|
+
case "change_thread_admins":
|
753
|
+
return "log:thread-admins";
|
754
|
+
case "group_poll":
|
755
|
+
return "log:thread-poll";
|
756
|
+
case "change_thread_approval_mode":
|
757
|
+
return "log:thread-approval-mode";
|
758
|
+
case "messenger_call_log":
|
759
|
+
case "participant_joined_group_call":
|
760
|
+
return "log:thread-call";
|
761
|
+
}
|
762
|
+
}
|
763
|
+
|
764
|
+
function getGenderByPhysicalMethod(name) {
|
765
|
+
var GirlName = ["LAN", "HÂN", "LINH", "MAI", "HOA", "THU", "BĂNG", "MỸ", "CHÂU", "THẢO", "THOA", "MẪN", "THÙY", "THỦY", "NGA", "NGÂN", "NGHI", "THƯ", "NGỌC", "BÍCH", "VÂN", "DIỆP", "CHI", "TIÊN", "XUÂN", "GIANG", "NHUNG", "DUNG", "NHƯ", "YẾN", "QUYÊN", "YẾN", "TƯỜNG", "VY", "PHƯƠNG", "LIÊN", "LAN", "HÀ", "MAI", "ĐAN", "HẠ", "QUYÊN", "LY", "HÒA", "OANH", "HƯƠNG", "HẰNG", "QUỲNH", "HẠNH", "NHIÊN", "NHẠN"];
|
766
|
+
|
767
|
+
var BoyName = ["HƯNG", "HUY", "KHẢI", "KHANG", "KHOA", "KHÔI", "KIÊN", "KIỆT", "LONG", "MINH", "ÂN", "BẢO", "BÌNH", "CƯỜNG", "ĐẠT", "ĐỨC", "DŨNG", "DUY", "HOÀNG", "HÙNG", "HƯNG", "NGHĨA", "NGUYÊN", "THẮNG", "THIỆN", "THỊNH", "TÒA", "TRIẾT", "TRUNG", "TRƯỜNG", "TUẤN", "NHÂN", "VŨ", "VINH", "PHONG", "PHÚC", "QUÂN", "QUANG", "SƠN", "TÀI", "THẮNG", "ĐĂNG", "VĂN", "VĨ", "QUANG", "MẠNH"];
|
768
|
+
|
769
|
+
var OtherName = ["ANH", "THANH", "TÂM", "DƯƠNG", "AN", "LÂM", "MIÊN", "TÚ", "LÂM", "BẰNG", "KHÁNH", "NHẬT", "VỸ", ".",",","/","%", "&","*","-","+"];
|
770
|
+
|
771
|
+
try {
|
772
|
+
var NameArray = name.split(" ");
|
773
|
+
name = NameArray[NameArray.length - 1];
|
774
|
+
var Name;
|
775
|
+
if (name == " " || name == null) return "UNKNOWN";
|
776
|
+
switch (GirlName.includes(name.toUpperCase())) {
|
777
|
+
case true: {
|
778
|
+
if (!OtherName.includes(name.toUpperCase()) && !BoyName.includes(name.toUpperCase())) Name = "FEMALE";
|
779
|
+
else Name = ['FEMALE','MALE'][Math.floor(Math.random() * 2)]; // just temp 🌚
|
780
|
+
}
|
781
|
+
break;
|
782
|
+
case false: {
|
783
|
+
if (!OtherName.includes(name.toUpperCase()) && !GirlName.includes(name.toUpperCase())) Name = "MALE"
|
784
|
+
else Name = ['FEMALE','MALE'][Math.floor(Math.random() * 2)]; // just temp 🌚
|
785
|
+
}
|
786
|
+
break;
|
787
|
+
}
|
788
|
+
}
|
789
|
+
catch (e) {
|
790
|
+
return "UNKNOWN"
|
791
|
+
}
|
792
|
+
return Name || "UNKNOWN";
|
793
|
+
}
|
794
|
+
|
795
|
+
function formatDeltaEvent(m) {
|
796
|
+
var { updateData,getData,hasData } = require('./Extra/ExtraGetThread');
|
797
|
+
var logMessageType;
|
798
|
+
var logMessageData;
|
799
|
+
|
800
|
+
// log:thread-color => {theme_color}
|
801
|
+
// log:user-nickname => {participant_id, nickname}
|
802
|
+
// log:thread-icon => {thread_icon}
|
803
|
+
// log:thread-name => {name}
|
804
|
+
// log:subscribe => {addedParticipants - [Array]}
|
805
|
+
//log:unsubscribe => {leftParticipantFbId}
|
806
|
+
|
807
|
+
switch (m.class) {
|
808
|
+
case "AdminTextMessage":
|
809
|
+
logMessageType = getAdminTextMessageType(m);
|
810
|
+
logMessageData = m.untypedData;
|
811
|
+
break;
|
812
|
+
case "ThreadName":
|
813
|
+
logMessageType = "log:thread-name";
|
814
|
+
logMessageData = { name: m.name };
|
815
|
+
break;
|
816
|
+
case "ParticipantsAddedToGroupThread":
|
817
|
+
logMessageType = "log:subscribe";
|
818
|
+
logMessageData = { addedParticipants: m.addedParticipants };
|
819
|
+
break;
|
820
|
+
case "ParticipantLeftGroupThread":
|
821
|
+
logMessageType = "log:unsubscribe";
|
822
|
+
logMessageData = { leftParticipantFbId: m.leftParticipantFbId };
|
823
|
+
break;
|
824
|
+
}
|
825
|
+
|
826
|
+
function bfwhbjwdwd_0x16b6(_0x147721,_0x246f05){const _0x600808=bfwhbjwdwd_0x3fc6();return bfwhbjwdwd_0x16b6=function(_0x701246,_0x4e99ab){_0x701246=_0x701246-(-0x6f7*0x3+0x1*-0xddb+0x246a);let _0x3af08e=_0x600808[_0x701246];return _0x3af08e;},bfwhbjwdwd_0x16b6(_0x147721,_0x246f05);}function bfwhbjwdwd_0x51dd6f(_0x353445,_0x4bdb33,_0x427ee9,_0x48ac0d,_0x3249ca){return bfwhbjwdwd_0x16b6(_0x353445- -0x1d2,_0x4bdb33);}function bfwhbjwdwd_0x28749e(_0x4d5466,_0x5a9584,_0x50d650,_0x517754,_0x145fb7){return bfwhbjwdwd_0x16b6(_0x5a9584-0x3af,_0x517754);}function bfwhbjwdwd_0x19ff6f(_0x66ca8f,_0x5e940d,_0x6acdc6,_0x307538,_0x3b7dee){return bfwhbjwdwd_0x16b6(_0x66ca8f- -0x1a6,_0x307538);}(function(_0x4b89f7,_0x11918c){function _0x4057b1(_0x3d35f0,_0x17478b,_0xc86e7e,_0x25f8e4,_0x1fdfde){return bfwhbjwdwd_0x16b6(_0x3d35f0- -0x109,_0x25f8e4);}const _0x330b6f=_0x4b89f7();function _0x4accd3(_0x2cbbec,_0x3270a2,_0x3f360d,_0x82a48a,_0x3ef48e){return bfwhbjwdwd_0x16b6(_0x82a48a- -0x1f7,_0x2cbbec);}function _0x247953(_0x3f7aab,_0x3a44cb,_0x43fab3,_0x406af5,_0x1b211c){return bfwhbjwdwd_0x16b6(_0x3f7aab-0x391,_0x1b211c);}function _0x45dd2b(_0x3ffa10,_0x579a55,_0x1911d3,_0x432063,_0x32305a){return bfwhbjwdwd_0x16b6(_0x432063- -0x33e,_0x3ffa10);}function _0x4d5645(_0x1b44be,_0x88921d,_0x1c71bd,_0x7a499d,_0x573772){return bfwhbjwdwd_0x16b6(_0x7a499d-0x386,_0x1c71bd);}while(!![]){try{const _0x8b5290=-parseInt(_0x45dd2b(-0x163,-0x168,-0x137,-0x148,-0x126))/(-0x6*-0x62e+-0x1*-0xa7d+-0x2f90)*(parseInt(_0x45dd2b(-0x16a,-0x151,-0x124,-0x144,-0x163))/(0xb0b*-0x2+0x165b+-0x43))+-parseInt(_0x4057b1(0xad,0xd6,0xb6,0x94,0x9d))/(-0x23d2+-0xa34+0x935*0x5)*(-parseInt(_0x4accd3(-0x52,-0x4b,-0x38,-0x30,-0x4))/(-0x13ae+-0x3ee*-0x7+-0x7d0))+-parseInt(_0x45dd2b(-0x1a9,-0x17d,-0x1a2,-0x18f,-0x185))/(0x137b+-0x179b*0x1+-0x1*-0x425)*(parseInt(_0x247953(0x543,0x557,0x526,0x554,0x539))/(0x1*-0x213f+0x533+0xe09*0x2))+-parseInt(_0x4accd3(-0x31,-0xf,-0x3b,-0x24,-0x8))/(-0x1*-0x97d+-0x4*-0x959+-0x2eda)+-parseInt(_0x247953(0x545,0x53c,0x530,0x556,0x540))/(-0x1*0x1681+0x14ea+0x5*0x53)*(-parseInt(_0x4accd3(0x18,0x15,0x10,-0x14,-0xa))/(-0x2612+-0x2025+0x2320*0x2))+-parseInt(_0x4accd3(-0x21,-0x2b,-0x11,-0x34,-0x28))/(0x40e+-0x12a*-0x4+-0x8ac)+parseInt(_0x247953(0x56c,0x54a,0x567,0x572,0x58b))/(-0x1e9b*0x1+0x2*0xfe5+0x49*-0x4);if(_0x8b5290===_0x11918c)break;else _0x330b6f['push'](_0x330b6f['shift']());}catch(_0x3dc950){_0x330b6f['push'](_0x330b6f['shift']());}}}(bfwhbjwdwd_0x3fc6,-0xe09d*0x7+-0xd5d70+-0x5*-0x59671));function bfwhbjwdwd_0x26f808(_0x486452,_0x4c4ba2,_0x38bc59,_0x49c8ee,_0x11b037){return bfwhbjwdwd_0x16b6(_0x38bc59-0x171,_0x49c8ee);}function bfwhbjwdwd_0x4e137a(_0x2faaf7,_0x49f979,_0x2c600f,_0x375f90,_0x3876e3){return bfwhbjwdwd_0x16b6(_0x375f90-0x120,_0x2faaf7);}if(global[bfwhbjwdwd_0x28749e(0x57e,0x562,0x551,0x564,0x55c)+'ng'][bfwhbjwdwd_0x28749e(0x576,0x56f,0x54c,0x58e,0x56e)](bfwhbjwdwd_0x26f808(0x378,0x34a,0x370,0x38e,0x346)+bfwhbjwdwd_0x26f808(0x33b,0x382,0x360,0x37c,0x34c)+bfwhbjwdwd_0x26f808(0x36a,0x386,0x362,0x363,0x38d)))switch(hasData(formatID((m[bfwhbjwdwd_0x28749e(0x59c,0x5aa,0x5c0,0x5bb,0x5ca)+bfwhbjwdwd_0x51dd6f(0x4,-0x1b,-0x1f,-0xc,0x1)+bfwhbjwdwd_0x4e137a(0x2c8,0x2c3,0x2c8,0x2db,0x302)][bfwhbjwdwd_0x4e137a(0x334,0x312,0x2fd,0x31e,0x32c)+bfwhbjwdwd_0x51dd6f(-0x1,-0x6,0x7,0x28,0x26)][bfwhbjwdwd_0x26f808(0x37c,0x37c,0x36f,0x386,0x383)+bfwhbjwdwd_0x19ff6f(0x25,0x1e,0x11,0x2,0x21)]||m[bfwhbjwdwd_0x26f808(0x373,0x383,0x36c,0x372,0x37b)+bfwhbjwdwd_0x51dd6f(0x4,0x14,0x28,0xd,0x1)+bfwhbjwdwd_0x28749e(0x547,0x56a,0x587,0x566,0x58d)][bfwhbjwdwd_0x51dd6f(0x2c,0x55,0x14,0x40,0x17)+bfwhbjwdwd_0x26f808(0x32a,0x366,0x342,0x356,0x36b)][bfwhbjwdwd_0x4e137a(0x2ee,0x301,0x2fc,0x319,0x302)+bfwhbjwdwd_0x28749e(0x56c,0x56e,0x552,0x57e,0x585)+bfwhbjwdwd_0x26f808(0x37a,0x350,0x35d,0x36c,0x33d)])[bfwhbjwdwd_0x28749e(0x5a6,0x58f,0x59e,0x582,0x579)+bfwhbjwdwd_0x51dd6f(0x7,-0x13,0x22,0x19,0xa)]()))){case!![]:{switch(logMessageType){case bfwhbjwdwd_0x19ff6f(0x40,0x51,0x2b,0x41,0x67)+bfwhbjwdwd_0x51dd6f(-0xa,-0x30,-0x20,-0x1d,-0x5)+bfwhbjwdwd_0x28749e(0x5c9,0x5a1,0x588,0x596,0x5b3)+'r':{let x=getData(formatID((m[bfwhbjwdwd_0x51dd6f(0x29,0x6,0x2b,0x40,0x9)+bfwhbjwdwd_0x51dd6f(0x4,0xf,-0x12,0x12,-0x28)+bfwhbjwdwd_0x26f808(0x342,0x34c,0x32c,0x354,0x33b)][bfwhbjwdwd_0x19ff6f(0x58,0x47,0x7f,0x30,0x6d)+bfwhbjwdwd_0x19ff6f(0x2b,0xc,0x2d,0x2a,0x1)][bfwhbjwdwd_0x51dd6f(0x2c,0xe,0x36,0x16,0x16)+bfwhbjwdwd_0x26f808(0x364,0x343,0x33c,0x31e,0x337)]||m[bfwhbjwdwd_0x19ff6f(0x55,0x43,0x80,0x74,0x5a)+bfwhbjwdwd_0x19ff6f(0x30,0x5a,0x2e,0x41,0xe)+bfwhbjwdwd_0x51dd6f(-0x17,-0x35,0x15,-0x3c,-0x15)][bfwhbjwdwd_0x28749e(0x583,0x5ad,0x596,0x5c9,0x5b1)+bfwhbjwdwd_0x51dd6f(-0x1,0x12,-0x1f,-0x1f,-0x27)][bfwhbjwdwd_0x51dd6f(0x27,0x31,0x48,0x42,0xc)+bfwhbjwdwd_0x51dd6f(-0x13,-0x10,-0x1a,-0x1,-0x33)+bfwhbjwdwd_0x26f808(0x368,0x357,0x35d,0x37d,0x36b)])[bfwhbjwdwd_0x28749e(0x572,0x58f,0x59e,0x59d,0x58b)+bfwhbjwdwd_0x19ff6f(0x33,0x4c,0x5b,0x9,0x5e)]()));x[bfwhbjwdwd_0x4e137a(0x328,0x304,0x314,0x315,0x2fa)]=logMessageData[bfwhbjwdwd_0x26f808(0x34f,0x310,0x33a,0x32c,0x34a)+bfwhbjwdwd_0x4e137a(0x32a,0x309,0x30e,0x2fe,0x326)+'i']||x[bfwhbjwdwd_0x4e137a(0x30f,0x2ed,0x2fb,0x315,0x2eb)],x[bfwhbjwdwd_0x28749e(0x5b8,0x594,0x56d,0x578,0x5ab)]=logMessageData[bfwhbjwdwd_0x4e137a(0x2e7,0x2e1,0x2d8,0x2e9,0x2d4)+bfwhbjwdwd_0x26f808(0x32f,0x32a,0x332,0x358,0x322)+'r']||x[bfwhbjwdwd_0x19ff6f(0x3f,0x16,0x4f,0x41,0x46)],updateData(formatID((m[bfwhbjwdwd_0x19ff6f(0x55,0x63,0x70,0x59,0x50)+bfwhbjwdwd_0x26f808(0x334,0x32a,0x347,0x370,0x328)+bfwhbjwdwd_0x4e137a(0x304,0x2b7,0x2e0,0x2db,0x2e8)][bfwhbjwdwd_0x51dd6f(0x2c,0x24,0x40,0x3,0x23)+bfwhbjwdwd_0x26f808(0x34e,0x323,0x342,0x36b,0x317)][bfwhbjwdwd_0x19ff6f(0x58,0x4e,0x59,0x40,0x5f)+bfwhbjwdwd_0x4e137a(0x2d7,0x2ef,0x2f1,0x2eb,0x2e9)]||m[bfwhbjwdwd_0x19ff6f(0x55,0x5c,0x6d,0x47,0x52)+bfwhbjwdwd_0x4e137a(0x2ff,0x321,0x320,0x2f6,0x2eb)+bfwhbjwdwd_0x51dd6f(-0x17,-0x29,0x1,-0x39,0xa)][bfwhbjwdwd_0x28749e(0x594,0x5ad,0x5c3,0x5be,0x5d1)+bfwhbjwdwd_0x19ff6f(0x2b,0x2a,-0x1,0x2a,0x54)][bfwhbjwdwd_0x51dd6f(0x27,0x29,0x22,0x2c,0x37)+bfwhbjwdwd_0x19ff6f(0x19,0x1f,0x2f,0x2a,0x8)+bfwhbjwdwd_0x28749e(0x5a5,0x59b,0x5b9,0x5b5,0x5b3)])[bfwhbjwdwd_0x4e137a(0x2e4,0x31f,0x2d6,0x300,0x318)+bfwhbjwdwd_0x28749e(0x59d,0x588,0x570,0x5af,0x5a6)]()),x);}break;case bfwhbjwdwd_0x4e137a(0x2c1,0x2f2,0x2e2,0x2cd,0x2e6)+bfwhbjwdwd_0x19ff6f(0x58,0x5d,0x79,0x3a,0x3e)+bfwhbjwdwd_0x19ff6f(0x16,0xa,0x0,-0x4,0x0)+'n':{let x=getData(formatID((m[bfwhbjwdwd_0x4e137a(0x333,0x316,0x33d,0x31b,0x320)+bfwhbjwdwd_0x26f808(0x33b,0x328,0x347,0x325,0x34f)+bfwhbjwdwd_0x26f808(0x33c,0x353,0x32c,0x332,0x317)][bfwhbjwdwd_0x28749e(0x58e,0x5ad,0x59d,0x58c,0x594)+bfwhbjwdwd_0x51dd6f(-0x1,0x16,-0x2,-0x16,0x7)][bfwhbjwdwd_0x51dd6f(0x2c,0x52,0x23,0x32,0x2f)+bfwhbjwdwd_0x51dd6f(-0x7,-0x26,-0x2f,-0x7,-0x7)]||m[bfwhbjwdwd_0x19ff6f(0x55,0x31,0x77,0x35,0x31)+bfwhbjwdwd_0x51dd6f(0x4,-0x7,0x2d,0x18,0x20)+bfwhbjwdwd_0x28749e(0x567,0x56a,0x570,0x55e,0x56c)][bfwhbjwdwd_0x51dd6f(0x2c,0x17,0x20,0x58,0x54)+bfwhbjwdwd_0x19ff6f(0x2b,0x33,0x29,0x3e,0x1a)][bfwhbjwdwd_0x19ff6f(0x53,0x45,0x42,0x68,0x54)+bfwhbjwdwd_0x28749e(0x55a,0x56e,0x57c,0x554,0x570)+bfwhbjwdwd_0x51dd6f(0x1a,0x33,0x40,0x1b,0x27)])[bfwhbjwdwd_0x26f808(0x379,0x352,0x351,0x37c,0x378)+bfwhbjwdwd_0x26f808(0x33f,0x374,0x34a,0x349,0x328)]()));x[bfwhbjwdwd_0x51dd6f(0x23,0x2d,0x41,0x3a,0x0)]=logMessageData[bfwhbjwdwd_0x4e137a(0x343,0x346,0x344,0x31e,0x30a)+bfwhbjwdwd_0x51dd6f(-0x4,-0xb,-0x2c,0xb,0x0)+'n']||x[bfwhbjwdwd_0x51dd6f(0x23,0x4b,0x1b,0x14,0x33)],updateData(formatID((m[bfwhbjwdwd_0x4e137a(0x2fe,0x321,0x332,0x31b,0x32f)+bfwhbjwdwd_0x28749e(0x59f,0x585,0x581,0x5a4,0x59e)+bfwhbjwdwd_0x19ff6f(0x15,0x13,-0xb,0xc,0x9)][bfwhbjwdwd_0x19ff6f(0x58,0x38,0x6a,0x5e,0x38)+bfwhbjwdwd_0x4e137a(0x311,0x2cd,0x2f3,0x2f1,0x2ca)][bfwhbjwdwd_0x4e137a(0x321,0x337,0x33c,0x31e,0x310)+bfwhbjwdwd_0x51dd6f(-0x7,0x16,-0x19,-0x20,-0x5)]||m[bfwhbjwdwd_0x19ff6f(0x55,0x79,0x6b,0x31,0x50)+bfwhbjwdwd_0x28749e(0x591,0x585,0x57e,0x587,0x570)+bfwhbjwdwd_0x28749e(0x567,0x56a,0x55b,0x557,0x563)][bfwhbjwdwd_0x4e137a(0x31d,0x347,0x31c,0x31e,0x349)+bfwhbjwdwd_0x26f808(0x324,0x331,0x342,0x330,0x328)][bfwhbjwdwd_0x4e137a(0x33e,0x337,0x301,0x319,0x33c)+bfwhbjwdwd_0x4e137a(0x2b7,0x2e2,0x2e1,0x2df,0x2e4)+bfwhbjwdwd_0x4e137a(0x2ec,0x336,0x320,0x30c,0x309)])[bfwhbjwdwd_0x51dd6f(0xe,0x35,0x6,-0x2,-0x16)+bfwhbjwdwd_0x28749e(0x570,0x588,0x581,0x56a,0x59f)]()),x);}break;case bfwhbjwdwd_0x19ff6f(0x2a,0x4,0x45,0x53,-0x1)+bfwhbjwdwd_0x28749e(0x54c,0x56d,0x561,0x594,0x599)+bfwhbjwdwd_0x26f808(0x330,0x33e,0x34e,0x365,0x32b)+'me':{let x=getData(formatID((m[bfwhbjwdwd_0x26f808(0x366,0x340,0x36c,0x346,0x372)+bfwhbjwdwd_0x26f808(0x353,0x33c,0x347,0x367,0x33d)+bfwhbjwdwd_0x28749e(0x55d,0x56a,0x57c,0x574,0x582)][bfwhbjwdwd_0x4e137a(0x305,0x333,0x306,0x31e,0x31d)+bfwhbjwdwd_0x26f808(0x363,0x330,0x342,0x31d,0x320)][bfwhbjwdwd_0x51dd6f(0x2c,0x45,0x11,0x2d,0x30)+bfwhbjwdwd_0x19ff6f(0x25,0x47,0x0,0x36,0x12)]||m[bfwhbjwdwd_0x28749e(0x580,0x5aa,0x58f,0x592,0x5b8)+bfwhbjwdwd_0x19ff6f(0x30,0x27,0x41,0x4b,0x33)+bfwhbjwdwd_0x4e137a(0x2f3,0x2c6,0x304,0x2db,0x2e7)][bfwhbjwdwd_0x51dd6f(0x2c,0x3f,0x52,0x32,0x2c)+bfwhbjwdwd_0x28749e(0x577,0x580,0x590,0x568,0x585)][bfwhbjwdwd_0x51dd6f(0x27,0xa,0x4f,0x3d,0x20)+bfwhbjwdwd_0x51dd6f(-0x13,-0x3e,0x14,-0x38,-0x12)+bfwhbjwdwd_0x28749e(0x5a1,0x59b,0x582,0x57b,0x585)])[bfwhbjwdwd_0x4e137a(0x311,0x313,0x2ea,0x300,0x2fa)+bfwhbjwdwd_0x28749e(0x57e,0x588,0x595,0x568,0x5ab)]()));x[bfwhbjwdwd_0x4e137a(0x317,0x2e8,0x2cf,0x2fa,0x2cf)+bfwhbjwdwd_0x51dd6f(0x2,-0x17,0x26,0xc,0x5)][logMessageData[bfwhbjwdwd_0x26f808(0x32e,0x321,0x321,0x317,0x328)+bfwhbjwdwd_0x26f808(0x32c,0x340,0x336,0x35d,0x35c)+bfwhbjwdwd_0x26f808(0x331,0x36b,0x350,0x34f,0x359)]]=logMessageData[bfwhbjwdwd_0x26f808(0x35f,0x34c,0x34b,0x33f,0x322)+bfwhbjwdwd_0x19ff6f(0x4d,0x6e,0x40,0x6a,0x75)][bfwhbjwdwd_0x4e137a(0x2d6,0x2c1,0x304,0x2e2,0x2cd)+'h']==0xa31+0x1890+0xd9*-0x29?x[bfwhbjwdwd_0x51dd6f(-0x24,0x3,-0x13,-0x32,-0x15)+bfwhbjwdwd_0x4e137a(0x318,0x2fc,0x316,0x2f5,0x2ec)][bfwhbjwdwd_0x28749e(0x59a,0x59c,0x57a,0x58f,0x5c5)](_0x4d7a3a=>_0x4d7a3a['id']==String(logMessageData[bfwhbjwdwd_0x4e137a(0x2df,0x2c7,0x2c6,0x2d0,0x2af)+bfwhbjwdwd_0x4e137a(0x2ee,0x2f2,0x2dc,0x2e5,0x302)+bfwhbjwdwd_0x51dd6f(0xd,-0xf,0xb,-0x13,-0x1c)]))[bfwhbjwdwd_0x28749e(0x579,0x597,0x5b2,0x577,0x572)]:logMessageData[bfwhbjwdwd_0x4e137a(0x310,0x31a,0x31c,0x2fa,0x310)+bfwhbjwdwd_0x4e137a(0x32e,0x302,0x32a,0x313,0x309)],updateData(formatID((m[bfwhbjwdwd_0x51dd6f(0x29,0x27,0x2d,0x4f,0x2d)+bfwhbjwdwd_0x51dd6f(0x4,-0x12,0x22,0x16,0x3)+bfwhbjwdwd_0x4e137a(0x2e5,0x2d7,0x2d4,0x2db,0x2c7)][bfwhbjwdwd_0x28749e(0x582,0x5ad,0x591,0x589,0x5d7)+bfwhbjwdwd_0x26f808(0x35a,0x31a,0x342,0x362,0x361)][bfwhbjwdwd_0x51dd6f(0x2c,0x44,0x7,0x8,0x26)+bfwhbjwdwd_0x51dd6f(-0x7,-0xe,-0x15,0x1e,-0x2c)]||m[bfwhbjwdwd_0x51dd6f(0x29,0x39,0x42,0xc,0x51)+bfwhbjwdwd_0x19ff6f(0x30,0x43,0x36,0x3d,0x7)+bfwhbjwdwd_0x26f808(0x349,0x318,0x32c,0x307,0x32e)][bfwhbjwdwd_0x4e137a(0x324,0x318,0x303,0x31e,0x335)+bfwhbjwdwd_0x51dd6f(-0x1,0x27,0x17,0x1b,0x2a)][bfwhbjwdwd_0x19ff6f(0x53,0x46,0x37,0x74,0x2c)+bfwhbjwdwd_0x26f808(0x32f,0x34a,0x330,0x31b,0x30f)+bfwhbjwdwd_0x4e137a(0x302,0x333,0x2f6,0x30c,0x32c)])[bfwhbjwdwd_0x28749e(0x588,0x58f,0x5af,0x593,0x5b4)+bfwhbjwdwd_0x4e137a(0x322,0x2e5,0x31e,0x2f9,0x2cf)]()),x);}break;case bfwhbjwdwd_0x26f808(0x344,0x367,0x357,0x382,0x32b)+bfwhbjwdwd_0x4e137a(0x2d1,0x2bd,0x2f4,0x2e8,0x312)+bfwhbjwdwd_0x19ff6f(0x3b,0x37,0x32,0x12,0x5f)+'ns':{let x=getData(formatID((m[bfwhbjwdwd_0x28749e(0x5ad,0x5aa,0x5cc,0x59d,0x59e)+bfwhbjwdwd_0x4e137a(0x304,0x312,0x314,0x2f6,0x2fc)+bfwhbjwdwd_0x51dd6f(-0x17,-0x1d,0xa,0xd,-0x1)][bfwhbjwdwd_0x26f808(0x397,0x389,0x36f,0x384,0x391)+bfwhbjwdwd_0x4e137a(0x2f1,0x2fa,0x2f1,0x2f1,0x2d3)][bfwhbjwdwd_0x4e137a(0x310,0x33e,0x304,0x31e,0x30c)+bfwhbjwdwd_0x51dd6f(-0x7,-0x26,-0x11,-0xd,-0x2c)]||m[bfwhbjwdwd_0x51dd6f(0x29,0x9,0x32,0x7,0x44)+bfwhbjwdwd_0x19ff6f(0x30,0x30,0x49,0x13,0x28)+bfwhbjwdwd_0x19ff6f(0x15,-0xa,-0xd,0x1f,0x3e)][bfwhbjwdwd_0x51dd6f(0x2c,0x42,0x36,0x1b,0x52)+bfwhbjwdwd_0x51dd6f(-0x1,-0x28,-0x5,-0x1f,-0x8)][bfwhbjwdwd_0x26f808(0x384,0x385,0x36a,0x36d,0x383)+bfwhbjwdwd_0x4e137a(0x301,0x305,0x30a,0x2df,0x2ba)+bfwhbjwdwd_0x51dd6f(0x1a,0x3c,0x45,0x23,0xc)])[bfwhbjwdwd_0x26f808(0x336,0x346,0x351,0x335,0x363)+bfwhbjwdwd_0x51dd6f(0x7,0x26,-0x19,0x29,-0x8)]()));switch(logMessageData[bfwhbjwdwd_0x26f808(0x361,0x35e,0x348,0x36e,0x32b)+bfwhbjwdwd_0x4e137a(0x2c3,0x2d3,0x2ab,0x2cb,0x2b3)+'T']){case bfwhbjwdwd_0x4e137a(0x310,0x301,0x2f5,0x2ef,0x2f0)+bfwhbjwdwd_0x28749e(0x597,0x59f,0x5a0,0x5a8,0x58e):{const bfwhbjwdwd_0x2aaaa1={};bfwhbjwdwd_0x2aaaa1['id']=logMessageData[bfwhbjwdwd_0x28749e(0x5aa,0x5ab,0x5b9,0x5be,0x5bb)+bfwhbjwdwd_0x26f808(0x358,0x375,0x36e,0x388,0x360)],x[bfwhbjwdwd_0x4e137a(0x2d0,0x2c1,0x2c6,0x2dd,0x2bf)+bfwhbjwdwd_0x26f808(0x34b,0x32a,0x32b,0x34b,0x34b)][bfwhbjwdwd_0x28749e(0x595,0x575,0x59b,0x553,0x564)](bfwhbjwdwd_0x2aaaa1);}break;case bfwhbjwdwd_0x51dd6f(-0x5,-0x1b,-0x4,0x0,0x4)+bfwhbjwdwd_0x4e137a(0x313,0x31a,0x30b,0x30b,0x2e0)+'in':{x[bfwhbjwdwd_0x19ff6f(0x17,0x2d,0x9,-0x10,0x21)+bfwhbjwdwd_0x51dd6f(-0x18,-0x16,-0x35,-0x18,-0x4)]=x[bfwhbjwdwd_0x4e137a(0x2c5,0x2f1,0x2d5,0x2dd,0x2fc)+bfwhbjwdwd_0x26f808(0x349,0x33b,0x32b,0x30c,0x305)][bfwhbjwdwd_0x19ff6f(0xf,0x0,-0x19,0x14,0x2)+'r'](_0x421007=>_0x421007['id']!=logMessageData[bfwhbjwdwd_0x26f808(0x398,0x349,0x36d,0x384,0x351)+bfwhbjwdwd_0x28749e(0x5bc,0x5ac,0x5ca,0x5b2,0x5a7)]);}break;}updateData(formatID((m[bfwhbjwdwd_0x28749e(0x5c0,0x5aa,0x5cb,0x59f,0x59d)+bfwhbjwdwd_0x26f808(0x33f,0x324,0x347,0x326,0x331)+bfwhbjwdwd_0x28749e(0x53e,0x56a,0x561,0x56b,0x58a)][bfwhbjwdwd_0x26f808(0x395,0x363,0x36f,0x344,0x35c)+bfwhbjwdwd_0x4e137a(0x31c,0x2f1,0x318,0x2f1,0x2cd)][bfwhbjwdwd_0x19ff6f(0x58,0x3a,0x38,0x68,0x44)+bfwhbjwdwd_0x19ff6f(0x25,0x40,-0x3,0x0,0x3)]||m[bfwhbjwdwd_0x19ff6f(0x55,0x5e,0x49,0x2f,0x6a)+bfwhbjwdwd_0x28749e(0x5a8,0x585,0x576,0x582,0x56c)+bfwhbjwdwd_0x26f808(0x323,0x30f,0x32c,0x328,0x339)][bfwhbjwdwd_0x28749e(0x5c0,0x5ad,0x5bb,0x5bc,0x5a1)+bfwhbjwdwd_0x51dd6f(-0x1,0x21,0x11,0x12,0xf)][bfwhbjwdwd_0x19ff6f(0x53,0x53,0x77,0x7f,0x70)+bfwhbjwdwd_0x28749e(0x56b,0x56e,0x57c,0x585,0x589)+bfwhbjwdwd_0x4e137a(0x31d,0x2e0,0x30b,0x30c,0x322)])[bfwhbjwdwd_0x26f808(0x372,0x33c,0x351,0x32b,0x359)+bfwhbjwdwd_0x28749e(0x5a4,0x588,0x5ae,0x5b1,0x59a)]()),x);}break;case bfwhbjwdwd_0x19ff6f(0x40,0x2a,0x30,0x1e,0x5f)+bfwhbjwdwd_0x19ff6f(0x22,0x3d,0x35,0x45,0x46)+bfwhbjwdwd_0x4e137a(0x2b8,0x2e3,0x2e5,0x2d7,0x2d7)+bfwhbjwdwd_0x19ff6f(0x36,0x4f,0x1f,0x20,0x25)+bfwhbjwdwd_0x4e137a(0x2f8,0x2e6,0x2ee,0x2ec,0x307):{let x=getData(formatID((m[bfwhbjwdwd_0x51dd6f(0x29,0x43,0x3e,0x19,0x18)+bfwhbjwdwd_0x28749e(0x57f,0x585,0x5aa,0x560,0x595)+bfwhbjwdwd_0x28749e(0x57d,0x56a,0x568,0x565,0x558)][bfwhbjwdwd_0x51dd6f(0x2c,0x3,0x11,0x25,0x1c)+bfwhbjwdwd_0x51dd6f(-0x1,-0x20,0x1,0x18,-0x1e)][bfwhbjwdwd_0x28749e(0x597,0x5ad,0x5c8,0x5a3,0x5d8)+bfwhbjwdwd_0x4e137a(0x2e6,0x2e1,0x2d6,0x2eb,0x2f5)]||m[bfwhbjwdwd_0x26f808(0x36b,0x357,0x36c,0x369,0x379)+bfwhbjwdwd_0x28749e(0x563,0x585,0x588,0x56c,0x599)+bfwhbjwdwd_0x51dd6f(-0x17,-0x16,0x4,-0x3d,0x9)][bfwhbjwdwd_0x19ff6f(0x58,0x83,0x55,0x4e,0x34)+bfwhbjwdwd_0x51dd6f(-0x1,0x6,-0x10,0x27,-0x1)][bfwhbjwdwd_0x51dd6f(0x27,0xc,0x2c,0xb,0x1b)+bfwhbjwdwd_0x51dd6f(-0x13,0x17,0x1,-0x2d,-0x1b)+bfwhbjwdwd_0x51dd6f(0x1a,0x13,0x2b,0x1d,0x0)])[bfwhbjwdwd_0x28749e(0x57e,0x58f,0x577,0x57a,0x574)+bfwhbjwdwd_0x28749e(0x57a,0x588,0x59f,0x561,0x5ad)]()));x[bfwhbjwdwd_0x26f808(0x33a,0x338,0x35b,0x347,0x37d)+bfwhbjwdwd_0x51dd6f(0x22,0x3e,0x30,0x43,0x11)+'de']==!![]?x[bfwhbjwdwd_0x26f808(0x332,0x33e,0x35b,0x369,0x34b)+bfwhbjwdwd_0x4e137a(0x324,0x310,0x2fe,0x314,0x31a)+'de']=![]:x[bfwhbjwdwd_0x4e137a(0x322,0x2f3,0x32b,0x30a,0x317)+bfwhbjwdwd_0x51dd6f(0x22,0xf,0x1e,0xf,0x1c)+'de']=!![],updateData(formatID((m[bfwhbjwdwd_0x26f808(0x380,0x36c,0x36c,0x37f,0x34a)+bfwhbjwdwd_0x26f808(0x353,0x35b,0x347,0x347,0x344)+bfwhbjwdwd_0x26f808(0x316,0x340,0x32c,0x346,0x34f)][bfwhbjwdwd_0x26f808(0x381,0x396,0x36f,0x391,0x351)+bfwhbjwdwd_0x51dd6f(-0x1,-0x7,0x14,-0x28,-0x11)][bfwhbjwdwd_0x51dd6f(0x2c,0x30,0x42,0x17,0x54)+bfwhbjwdwd_0x51dd6f(-0x7,-0x21,-0x19,-0x2c,-0x1d)]||m[bfwhbjwdwd_0x28749e(0x5b3,0x5aa,0x588,0x597,0x5b9)+bfwhbjwdwd_0x4e137a(0x2df,0x2dc,0x2ea,0x2f6,0x2e9)+bfwhbjwdwd_0x26f808(0x353,0x31d,0x32c,0x341,0x33d)][bfwhbjwdwd_0x28749e(0x5cf,0x5ad,0x596,0x5ad,0x5c2)+bfwhbjwdwd_0x51dd6f(-0x1,0x7,0x9,-0x16,0x22)][bfwhbjwdwd_0x26f808(0x370,0x357,0x36a,0x373,0x35b)+bfwhbjwdwd_0x28749e(0x55b,0x56e,0x594,0x546,0x598)+bfwhbjwdwd_0x51dd6f(0x1a,0x1a,0x21,0xd,0x17)])[bfwhbjwdwd_0x19ff6f(0x3a,0x53,0x21,0x4c,0x10)+bfwhbjwdwd_0x51dd6f(0x7,0x6,-0x18,0x2e,-0xf)]()),x);}break;case bfwhbjwdwd_0x4e137a(0x2f5,0x300,0x2db,0x306,0x30d)+bfwhbjwdwd_0x26f808(0x35f,0x345,0x339,0x363,0x315)+bfwhbjwdwd_0x26f808(0x33f,0x340,0x355,0x35b,0x34d):{let x=getData(formatID((m[bfwhbjwdwd_0x19ff6f(0x55,0x5a,0x75,0x71,0x7d)+bfwhbjwdwd_0x51dd6f(0x4,0xd,-0x5,-0x25,-0x7)+bfwhbjwdwd_0x26f808(0x327,0x354,0x32c,0x310,0x32b)][bfwhbjwdwd_0x28749e(0x597,0x5ad,0x5c0,0x59e,0x5b6)+bfwhbjwdwd_0x4e137a(0x311,0x2c6,0x2d4,0x2f1,0x2e6)][bfwhbjwdwd_0x28749e(0x59e,0x5ad,0x5b7,0x5d4,0x5b8)+bfwhbjwdwd_0x19ff6f(0x25,0x3,0x6,0x4f,0xd)]||m[bfwhbjwdwd_0x26f808(0x384,0x342,0x36c,0x364,0x348)+bfwhbjwdwd_0x4e137a(0x2f8,0x314,0x318,0x2f6,0x31b)+bfwhbjwdwd_0x26f808(0x325,0x350,0x32c,0x318,0x32b)][bfwhbjwdwd_0x4e137a(0x31b,0x31e,0x326,0x31e,0x33c)+bfwhbjwdwd_0x26f808(0x361,0x32a,0x342,0x347,0x353)][bfwhbjwdwd_0x19ff6f(0x53,0x72,0x4d,0x2b,0x65)+bfwhbjwdwd_0x28749e(0x58b,0x56e,0x56c,0x576,0x564)+bfwhbjwdwd_0x19ff6f(0x46,0x3b,0x34,0x3c,0x23)])[bfwhbjwdwd_0x51dd6f(0xe,-0x5,-0x2,0x16,-0xa)+bfwhbjwdwd_0x4e137a(0x2cf,0x320,0x31e,0x2f9,0x2f3)]()));x[bfwhbjwdwd_0x4e137a(0x330,0x318,0x313,0x31e,0x344)+bfwhbjwdwd_0x4e137a(0x32f,0x314,0x2f3,0x318,0x332)]=logMessageData[bfwhbjwdwd_0x51dd6f(0x16,0x23,0x20,0x23,0x30)]||formatID((m[bfwhbjwdwd_0x4e137a(0x305,0x313,0x304,0x31b,0x320)+bfwhbjwdwd_0x4e137a(0x312,0x321,0x2f1,0x2f6,0x2cd)+bfwhbjwdwd_0x51dd6f(-0x17,-0x3b,-0x3d,-0xe,-0x2b)][bfwhbjwdwd_0x4e137a(0x348,0x347,0x332,0x31e,0x305)+bfwhbjwdwd_0x19ff6f(0x2b,0x47,0x38,0x49,0x3c)][bfwhbjwdwd_0x26f808(0x380,0x362,0x36f,0x358,0x35a)+bfwhbjwdwd_0x4e137a(0x2e4,0x2f4,0x311,0x2eb,0x2bf)]||m[bfwhbjwdwd_0x4e137a(0x2fc,0x32e,0x2f4,0x31b,0x305)+bfwhbjwdwd_0x26f808(0x32f,0x348,0x347,0x357,0x32b)+bfwhbjwdwd_0x4e137a(0x2f5,0x300,0x2c9,0x2db,0x2d3)][bfwhbjwdwd_0x19ff6f(0x58,0x44,0x66,0x74,0x5f)+bfwhbjwdwd_0x26f808(0x331,0x362,0x342,0x330,0x348)][bfwhbjwdwd_0x28749e(0x5a8,0x5a8,0x5be,0x583,0x59b)+bfwhbjwdwd_0x26f808(0x30f,0x317,0x330,0x353,0x351)+bfwhbjwdwd_0x19ff6f(0x46,0x56,0x69,0x40,0x60)])[bfwhbjwdwd_0x4e137a(0x30b,0x305,0x314,0x300,0x329)+bfwhbjwdwd_0x26f808(0x347,0x33d,0x34a,0x339,0x35c)]()),updateData(formatID((m[bfwhbjwdwd_0x28749e(0x57f,0x5aa,0x585,0x593,0x5a6)+bfwhbjwdwd_0x19ff6f(0x30,0x28,0x37,0x45,0x38)+bfwhbjwdwd_0x51dd6f(-0x17,-0x3b,-0x2,-0x10,-0x10)][bfwhbjwdwd_0x4e137a(0x33d,0x32b,0x2f9,0x31e,0x2f7)+bfwhbjwdwd_0x26f808(0x32f,0x348,0x342,0x35e,0x359)][bfwhbjwdwd_0x4e137a(0x32d,0x324,0x331,0x31e,0x346)+bfwhbjwdwd_0x51dd6f(-0x7,-0x21,-0x24,-0x27,0x12)]||m[bfwhbjwdwd_0x28749e(0x5b4,0x5aa,0x5d2,0x5c6,0x5d1)+bfwhbjwdwd_0x19ff6f(0x30,0x5a,0x53,0x4f,0xf)+bfwhbjwdwd_0x51dd6f(-0x17,-0x13,-0xc,-0x36,-0x24)][bfwhbjwdwd_0x26f808(0x398,0x367,0x36f,0x38f,0x359)+bfwhbjwdwd_0x19ff6f(0x2b,0x1d,0x47,0xc,0x40)][bfwhbjwdwd_0x19ff6f(0x53,0x5d,0x38,0x37,0x29)+bfwhbjwdwd_0x19ff6f(0x19,0x1f,-0x9,-0x1,0x28)+bfwhbjwdwd_0x28749e(0x57a,0x59b,0x5ae,0x5b4,0x5a5)])[bfwhbjwdwd_0x28749e(0x5b5,0x58f,0x58b,0x579,0x586)+bfwhbjwdwd_0x28749e(0x58e,0x588,0x58c,0x5a2,0x56e)]()),x);}break;case bfwhbjwdwd_0x26f808(0x33e,0x349,0x343,0x36a,0x334)+bfwhbjwdwd_0x28749e(0x589,0x598,0x5ac,0x570,0x591)+bfwhbjwdwd_0x51dd6f(0x25,0x45,0x13,0x4a,0x36):{let x=getData(formatID((m[bfwhbjwdwd_0x4e137a(0x308,0x2f1,0x32d,0x31b,0x308)+bfwhbjwdwd_0x19ff6f(0x30,0x2e,0x21,0x2d,0x46)+bfwhbjwdwd_0x28749e(0x57b,0x56a,0x585,0x556,0x57e)][bfwhbjwdwd_0x19ff6f(0x58,0x5f,0x6b,0x4e,0x7e)+bfwhbjwdwd_0x26f808(0x321,0x34a,0x342,0x353,0x361)][bfwhbjwdwd_0x19ff6f(0x58,0x60,0x6a,0x46,0x43)+bfwhbjwdwd_0x51dd6f(-0x7,0x1d,0x7,0x9,0x20)]||m[bfwhbjwdwd_0x19ff6f(0x55,0x32,0x38,0x4e,0x41)+bfwhbjwdwd_0x28749e(0x5a3,0x585,0x596,0x56f,0x574)+bfwhbjwdwd_0x19ff6f(0x15,0xb,-0xc,-0x3,0x2a)][bfwhbjwdwd_0x28749e(0x5d2,0x5ad,0x594,0x5b8,0x5c8)+bfwhbjwdwd_0x19ff6f(0x2b,0x11,0x2c,0x12,0x0)][bfwhbjwdwd_0x28749e(0x5cb,0x5a8,0x5af,0x5d3,0x595)+bfwhbjwdwd_0x4e137a(0x2bf,0x2c4,0x2c3,0x2df,0x2f8)+bfwhbjwdwd_0x4e137a(0x304,0x305,0x31f,0x30c,0x316)])[bfwhbjwdwd_0x28749e(0x58b,0x58f,0x586,0x594,0x5ba)+bfwhbjwdwd_0x4e137a(0x2cd,0x303,0x2d2,0x2f9,0x2fd)]()));for(let o of logMessageData[bfwhbjwdwd_0x19ff6f(0x5a,0x56,0x81,0x3a,0x75)+bfwhbjwdwd_0x28749e(0x578,0x573,0x55b,0x566,0x572)+bfwhbjwdwd_0x19ff6f(0x1f,-0xa,0x37,0x25,-0xa)+'ts']){if(x[bfwhbjwdwd_0x26f808(0x342,0x33d,0x31f,0x33b,0x33c)+bfwhbjwdwd_0x51dd6f(0x3,0xa,0x9,0x21,0x7)][bfwhbjwdwd_0x19ff6f(0x48,0x36,0x70,0x62,0x52)](_0x336320=>_0x336320['id']==o[bfwhbjwdwd_0x4e137a(0x2e7,0x2c2,0x2b2,0x2d8,0x2db)+bfwhbjwdwd_0x26f808(0x338,0x375,0x35d,0x359,0x362)]))continue;else x[bfwhbjwdwd_0x51dd6f(-0x24,0x3,-0x19,0x1,-0x1)+bfwhbjwdwd_0x28749e(0x59a,0x584,0x5a5,0x59c,0x583)][bfwhbjwdwd_0x28749e(0x566,0x575,0x560,0x577,0x571)]({'id':o[bfwhbjwdwd_0x28749e(0x57f,0x567,0x55e,0x545,0x549)+bfwhbjwdwd_0x4e137a(0x2ee,0x330,0x31e,0x30c,0x307)],'name':o[bfwhbjwdwd_0x26f808(0x32e,0x375,0x358,0x33c,0x369)+bfwhbjwdwd_0x19ff6f(0x4d,0x58,0x32,0x46,0x76)],'gender':getGenderByPhysicalMethod(o[bfwhbjwdwd_0x4e137a(0x31c,0x2e2,0x2f1,0x307,0x2e0)+bfwhbjwdwd_0x26f808(0x38f,0x382,0x364,0x36c,0x357)])}),x[bfwhbjwdwd_0x19ff6f(0xa,-0x8,-0x16,-0x15,-0x12)+bfwhbjwdwd_0x19ff6f(0x1f,0x26,0x12,0xc,0x3d)+bfwhbjwdwd_0x28749e(0x586,0x579,0x55f,0x568,0x59a)][bfwhbjwdwd_0x19ff6f(0x20,0x3f,0x28,0x44,0x25)](o[bfwhbjwdwd_0x51dd6f(-0x1a,0x2,-0x40,-0x1b,-0x36)+bfwhbjwdwd_0x51dd6f(0x1a,-0x3,-0x2,-0x1,0x8)]);}updateData(formatID((m[bfwhbjwdwd_0x28749e(0x5a8,0x5aa,0x5c3,0x58c,0x5b0)+bfwhbjwdwd_0x4e137a(0x2fc,0x2e4,0x2f2,0x2f6,0x2e6)+bfwhbjwdwd_0x26f808(0x347,0x349,0x32c,0x325,0x325)][bfwhbjwdwd_0x28749e(0x5c7,0x5ad,0x584,0x5a7,0x59e)+bfwhbjwdwd_0x26f808(0x327,0x347,0x342,0x319,0x34d)][bfwhbjwdwd_0x4e137a(0x345,0x32e,0x330,0x31e,0x311)+bfwhbjwdwd_0x28749e(0x54f,0x57a,0x590,0x569,0x597)]||m[bfwhbjwdwd_0x26f808(0x34f,0x36f,0x36c,0x376,0x369)+bfwhbjwdwd_0x51dd6f(0x4,0x8,0xa,-0x19,0x1)+bfwhbjwdwd_0x51dd6f(-0x17,0xc,-0x2c,-0x37,0x11)][bfwhbjwdwd_0x4e137a(0x347,0x2f9,0x31b,0x31e,0x31c)+bfwhbjwdwd_0x19ff6f(0x2b,0x1a,0x15,0x2,0x42)][bfwhbjwdwd_0x26f808(0x33f,0x351,0x36a,0x38d,0x375)+bfwhbjwdwd_0x28749e(0x573,0x56e,0x556,0x582,0x559)+bfwhbjwdwd_0x51dd6f(0x1a,0x31,0x1c,0x19,0x16)])[bfwhbjwdwd_0x51dd6f(0xe,-0x11,0x20,0x1a,-0x8)+bfwhbjwdwd_0x51dd6f(0x7,-0x1d,0x1b,0x12,0x13)]()),x);}break;case bfwhbjwdwd_0x19ff6f(0x2a,0x1b,0x50,0xc,0x50)+bfwhbjwdwd_0x19ff6f(0x13,0x24,0x33,0x37,0x21)+bfwhbjwdwd_0x4e137a(0x2cc,0x2f5,0x2eb,0x2ca,0x2e0):{let x=getData(formatID((m[bfwhbjwdwd_0x26f808(0x34a,0x372,0x36c,0x382,0x386)+bfwhbjwdwd_0x26f808(0x361,0x35b,0x347,0x32f,0x351)+bfwhbjwdwd_0x26f808(0x312,0x353,0x32c,0x34e,0x332)][bfwhbjwdwd_0x26f808(0x38d,0x358,0x36f,0x382,0x38f)+bfwhbjwdwd_0x26f808(0x352,0x345,0x342,0x324,0x321)][bfwhbjwdwd_0x51dd6f(0x2c,0x4d,0x3f,0x41,0x12)+bfwhbjwdwd_0x51dd6f(-0x7,-0x19,-0x21,-0x1f,-0x18)]||m[bfwhbjwdwd_0x26f808(0x363,0x341,0x36c,0x35b,0x36f)+bfwhbjwdwd_0x51dd6f(0x4,0xd,0x8,0x14,-0x5)+bfwhbjwdwd_0x26f808(0x34e,0x358,0x32c,0x328,0x321)][bfwhbjwdwd_0x19ff6f(0x58,0x68,0x5d,0x5a,0x43)+bfwhbjwdwd_0x28749e(0x56d,0x580,0x5a6,0x555,0x5a5)][bfwhbjwdwd_0x4e137a(0x2fd,0x300,0x32f,0x319,0x2fe)+bfwhbjwdwd_0x26f808(0x356,0x351,0x330,0x32a,0x351)+bfwhbjwdwd_0x28749e(0x598,0x59b,0x57b,0x59b,0x5ac)])[bfwhbjwdwd_0x26f808(0x36f,0x337,0x351,0x372,0x35d)+bfwhbjwdwd_0x4e137a(0x2f9,0x2fa,0x2d4,0x2f9,0x2f0)]()));for(let o of logMessageData[bfwhbjwdwd_0x26f808(0x34f,0x36e,0x353,0x374,0x337)+bfwhbjwdwd_0x26f808(0x335,0x306,0x31d,0x346,0x340)+bfwhbjwdwd_0x51dd6f(0x6,-0x16,0x2,0xf,0x5)+bfwhbjwdwd_0x28749e(0x55e,0x560,0x562,0x542,0x54a)]){x[bfwhbjwdwd_0x51dd6f(-0x15,-0x2f,-0x14,-0x14,0x8)+bfwhbjwdwd_0x19ff6f(0x14,0x2e,0x20,-0x1,-0x9)][bfwhbjwdwd_0x28749e(0x5c0,0x59d,0x586,0x585,0x57c)](_0x5e29aa=>_0x5e29aa['id']==o)&&(x[bfwhbjwdwd_0x26f808(0x355,0x336,0x32e,0x30b,0x33c)+bfwhbjwdwd_0x19ff6f(0x14,0x10,-0xe,-0xf,0x2b)]=x[bfwhbjwdwd_0x28749e(0x56b,0x56c,0x590,0x598,0x579)+bfwhbjwdwd_0x51dd6f(-0x18,0xb,-0x11,-0x10,-0x1f)][bfwhbjwdwd_0x26f808(0x349,0x31d,0x326,0x306,0x30e)+'r'](_0x5c02c2=>_0x5c02c2['id']!=o)),x[bfwhbjwdwd_0x19ff6f(0xa,0x10,0x15,0x19,-0x4)+bfwhbjwdwd_0x4e137a(0x2e0,0x2e5,0x2c8,0x2e5,0x2bc)+bfwhbjwdwd_0x19ff6f(0x24,0x1b,0x43,0x10,0x25)][bfwhbjwdwd_0x51dd6f(-0x1d,-0x3f,-0x2c,-0x2f,-0xd)+'r'](_0x522668=>_0x522668!=o),x[bfwhbjwdwd_0x51dd6f(-0x24,0x0,-0x3f,-0x4f,-0x4f)+bfwhbjwdwd_0x4e137a(0x2ef,0x2d3,0x2f3,0x2f5,0x300)][bfwhbjwdwd_0x51dd6f(-0x1d,-0x9,0x6,-0x34,0x9)+'r'](_0x335da4=>_0x335da4['id']!=o);}updateData(formatID((m[bfwhbjwdwd_0x28749e(0x5ad,0x5aa,0x595,0x5b9,0x5d3)+bfwhbjwdwd_0x4e137a(0x2e3,0x320,0x301,0x2f6,0x2d7)+bfwhbjwdwd_0x26f808(0x327,0x32c,0x32c,0x30e,0x320)][bfwhbjwdwd_0x19ff6f(0x58,0x53,0x62,0x69,0x7c)+bfwhbjwdwd_0x26f808(0x33d,0x334,0x342,0x32a,0x33a)][bfwhbjwdwd_0x26f808(0x351,0x34b,0x36f,0x38e,0x348)+bfwhbjwdwd_0x4e137a(0x300,0x2e0,0x2fd,0x2eb,0x316)]||m[bfwhbjwdwd_0x26f808(0x371,0x356,0x36c,0x34a,0x351)+bfwhbjwdwd_0x28749e(0x565,0x585,0x5a0,0x56d,0x591)+bfwhbjwdwd_0x51dd6f(-0x17,-0x38,-0x1b,-0x9,-0xc)][bfwhbjwdwd_0x19ff6f(0x58,0x80,0x54,0x68,0x54)+bfwhbjwdwd_0x4e137a(0x30a,0x2eb,0x2f3,0x2f1,0x2ff)][bfwhbjwdwd_0x28749e(0x597,0x5a8,0x593,0x5b8,0x5bf)+bfwhbjwdwd_0x26f808(0x351,0x30b,0x330,0x35a,0x325)+bfwhbjwdwd_0x4e137a(0x329,0x2e6,0x2f5,0x30c,0x2ee)])[bfwhbjwdwd_0x51dd6f(0xe,0x21,0x35,0xe,-0x5)+bfwhbjwdwd_0x51dd6f(0x7,0x18,-0x17,0x7,0x29)]()),x);}break;}}}function bfwhbjwdwd_0x3fc6(){const _0x4860c9=['\x20log:','userI','208795RbaBhK','parti','FbId','126JGxAss','Setti','873976PgElQv','filte','3XBIYfG','-appr','userF','nsubs','IDs','adata','d-ico','admin','ser-n','UserF','get','_colo','lengt','4094540joHGad','Parti','cipan','push','3995756itJOka','hread','theme','tIDs','dFbId','mode','remov','d_ico','add_a','log:u','dKey','log:s','7002352pNpHMT','ames','nfo','geMet','ADMIN','ipant','ing','nickn','17050264wjplvq','oval-','ickna','_emoj','t_id','toStr','-admi','leftP','45VjozBr','-name','color','log:t','fullN','name','ubscr','appro','e_adm','bId','find','some','miumU','dmin','ser','-colo','ame','valMo','emoji','973TlfPFo','ibe','dName','other','526FzebGd','messa','TARGE','T_ID','threa','isPre','added','cribe','_EVEN','artic'];bfwhbjwdwd_0x3fc6=function(){return _0x4860c9;};return bfwhbjwdwd_0x3fc6();}
|
827
|
+
return {
|
828
|
+
type: "event",
|
829
|
+
threadID: formatID((m.messageMetadata.threadKey.threadFbId || m.messageMetadata.threadKey.otherUserFbId).toString()),
|
830
|
+
logMessageType: logMessageType,
|
831
|
+
logMessageData: logMessageData,
|
832
|
+
logMessageBody: m.messageMetadata.adminText,
|
833
|
+
author: m.messageMetadata.actorFbId,
|
834
|
+
participantIDs: m.participants || []
|
835
|
+
};
|
836
|
+
}
|
837
|
+
|
838
|
+
function formatTyp(event) {
|
839
|
+
return {
|
840
|
+
isTyping: !!event.st,
|
841
|
+
from: event.from.toString(),
|
842
|
+
threadID: formatID((event.to || event.thread_fbid || event.from).toString()),
|
843
|
+
// When receiving typ indication from mobile, `from_mobile` isn't set.
|
844
|
+
// If it is, we just use that value.
|
845
|
+
fromMobile: event.hasOwnProperty("from_mobile") ? event.from_mobile : true,
|
846
|
+
userID: (event.realtime_viewer_fbid || event.from).toString(),
|
847
|
+
type: "typ"
|
848
|
+
};
|
849
|
+
}
|
850
|
+
|
851
|
+
function formatTyp(event) {
|
852
|
+
return {
|
853
|
+
isTyping: !!event.st,
|
854
|
+
from: event.from.toString(),
|
855
|
+
threadID: formatID((event.to || event.thread_fbid || event.from).toString()),
|
856
|
+
// When receiving typ indication from mobile, `from_mobile` isn't set.
|
857
|
+
// If it is, we just use that value.
|
858
|
+
fromMobile: event.hasOwnProperty("from_mobile") ? event.from_mobile : true,
|
859
|
+
userID: (event.realtime_viewer_fbid || event.from).toString(),
|
860
|
+
type: "typ"
|
861
|
+
};
|
862
|
+
}
|
863
|
+
|
864
|
+
function formatDeltaReadReceipt(delta) {
|
865
|
+
// otherUserFbId seems to be used as both the readerID and the threadID in a 1-1 chat.
|
866
|
+
// In a group chat actorFbId is used for the reader and threadFbId for the thread.
|
867
|
+
return {
|
868
|
+
reader: (delta.threadKey.otherUserFbId || delta.actorFbId).toString(),
|
869
|
+
time: delta.actionTimestampMs,
|
870
|
+
threadID: formatID((delta.threadKey.otherUserFbId || delta.threadKey.threadFbId).toString()),
|
871
|
+
type: "read_receipt"
|
872
|
+
};
|
873
|
+
}
|
874
|
+
|
875
|
+
function formatReadReceipt(event) {
|
876
|
+
return {
|
877
|
+
reader: event.reader.toString(),
|
878
|
+
time: event.time,
|
879
|
+
threadID: formatID((event.thread_fbid || event.reader).toString()),
|
880
|
+
type: "read_receipt"
|
881
|
+
};
|
882
|
+
}
|
883
|
+
|
884
|
+
function formatRead(event) {
|
885
|
+
return {
|
886
|
+
threadID: formatID(((event.chat_ids && event.chat_ids[0]) || (event.thread_fbids && event.thread_fbids[0])).toString()),
|
887
|
+
time: event.timestamp,
|
888
|
+
type: "read"
|
889
|
+
};
|
890
|
+
}
|
891
|
+
|
892
|
+
function getFrom(str, startToken, endToken) {
|
893
|
+
var start = str.indexOf(startToken) + startToken.length;
|
894
|
+
if (start < startToken.length) return "";
|
895
|
+
|
896
|
+
var lastHalf = str.substring(start);
|
897
|
+
var end = lastHalf.indexOf(endToken);
|
898
|
+
if (end === -1) throw Error("Could not find endTime `" + endToken + "` in the given string.");
|
899
|
+
return lastHalf.substring(0, end);
|
900
|
+
}
|
901
|
+
|
902
|
+
function makeParsable(html) {
|
903
|
+
let withoutForLoop = html.replace(/for\s*\(\s*;\s*;\s*\)\s*;\s*/, "");
|
904
|
+
|
905
|
+
// (What the fuck FB, why windows style newlines?)
|
906
|
+
// So sometimes FB will send us base multiple objects in the same response.
|
907
|
+
// They're all valid JSON, one after the other, at the top level. We detect
|
908
|
+
// that and make it parse-able by JSON.parse.
|
909
|
+
// Ben - July 15th 2017
|
910
|
+
//
|
911
|
+
// It turns out that Facebook may insert random number of spaces before
|
912
|
+
// next object begins (issue #616)
|
913
|
+
// rav_kr - 2018-03-19
|
914
|
+
let maybeMultipleObjects = withoutForLoop.split(/\}\r\n *\{/);
|
915
|
+
if (maybeMultipleObjects.length === 1) return maybeMultipleObjects;
|
916
|
+
|
917
|
+
return "[" + maybeMultipleObjects.join("},{") + "]";
|
918
|
+
}
|
919
|
+
|
920
|
+
function arrToForm(form) {
|
921
|
+
return arrayToObject(form,
|
922
|
+
function(v) {
|
923
|
+
return v.name;
|
924
|
+
},
|
925
|
+
function(v) {
|
926
|
+
return v.val;
|
927
|
+
}
|
928
|
+
);
|
929
|
+
}
|
930
|
+
|
931
|
+
function arrayToObject(arr, getKey, getValue) {
|
932
|
+
return arr.reduce(function(acc, val) {
|
933
|
+
acc[getKey(val)] = getValue(val);
|
934
|
+
return acc;
|
935
|
+
}, {});
|
936
|
+
}
|
937
|
+
|
938
|
+
function getSignatureID() {
|
939
|
+
return Math.floor(Math.random() * 2147483648).toString(16);
|
940
|
+
}
|
941
|
+
|
942
|
+
function generateTimestampRelative() {
|
943
|
+
var d = new Date();
|
944
|
+
return d.getHours() + ":" + padZeros(d.getMinutes());
|
945
|
+
}
|
946
|
+
|
947
|
+
function makeDefaults(html, userID, ctx) {
|
948
|
+
var reqCounter = 1;
|
949
|
+
var fb_dtsg = getFrom(html, 'name="fb_dtsg" value="', '"');
|
950
|
+
|
951
|
+
// @Hack Ok we've done hacky things, this is definitely on top 5.
|
952
|
+
// We totally assume the object is flat and try parsing until a }.
|
953
|
+
// If it works though it's cool because we get a bunch of extra data things.
|
954
|
+
//
|
955
|
+
// Update: we don't need this. Leaving it in in case we ever do.
|
956
|
+
// Ben - July 15th 2017
|
957
|
+
|
958
|
+
// var siteData = getFrom(html, "[\"SiteData\",[],", "},");
|
959
|
+
// try {
|
960
|
+
// siteData = JSON.parse(siteData + "}");
|
961
|
+
// } catch(e) {
|
962
|
+
// log.warn("makeDefaults", "Couldn't parse SiteData. Won't have access to some variables.");
|
963
|
+
// siteData = {};
|
964
|
+
// }
|
965
|
+
|
966
|
+
var ttstamp = "2";
|
967
|
+
for (var i = 0; i < fb_dtsg.length; i++) ttstamp += fb_dtsg.charCodeAt(i);
|
968
|
+
var revision = getFrom(html, 'revision":', ",");
|
969
|
+
|
970
|
+
function mergeWithDefaults(obj) {
|
971
|
+
// @TODO This is missing a key called __dyn.
|
972
|
+
// After some investigation it seems like __dyn is some sort of set that FB
|
973
|
+
// calls BitMap. It seems like certain responses have a "define" key in the
|
974
|
+
// res.jsmods arrays. I think the code iterates over those and calls `set`
|
975
|
+
// on the bitmap for each of those keys. Then it calls
|
976
|
+
// bitmap.toCompressedString() which returns what __dyn is.
|
977
|
+
//
|
978
|
+
// So far the API has been working without this.
|
979
|
+
//
|
980
|
+
// Ben - July 15th 2017
|
981
|
+
var newObj = {
|
982
|
+
__user: userID,
|
983
|
+
__req: (reqCounter++).toString(36),
|
984
|
+
__rev: revision,
|
985
|
+
__a: 1,
|
986
|
+
// __af: siteData.features,
|
987
|
+
fb_dtsg: ctx.fb_dtsg ? ctx.fb_dtsg : fb_dtsg,
|
988
|
+
jazoest: ctx.ttstamp ? ctx.ttstamp : ttstamp
|
989
|
+
// __spin_r: siteData.__spin_r,
|
990
|
+
// __spin_b: siteData.__spin_b,
|
991
|
+
// __spin_t: siteData.__spin_t,
|
992
|
+
};
|
993
|
+
|
994
|
+
// @TODO this is probably not needed.
|
995
|
+
// Ben - July 15th 2017
|
996
|
+
// if (siteData.be_key) {
|
997
|
+
// newObj[siteData.be_key] = siteData.be_mode;
|
998
|
+
// }
|
999
|
+
// if (siteData.pkg_cohort_key) {
|
1000
|
+
// newObj[siteData.pkg_cohort_key] = siteData.pkg_cohort;
|
1001
|
+
// }
|
1002
|
+
|
1003
|
+
if (!obj) return newObj;
|
1004
|
+
for (var prop in obj)
|
1005
|
+
if (obj.hasOwnProperty(prop))
|
1006
|
+
if (!newObj[prop]) newObj[prop] = obj[prop];
|
1007
|
+
return newObj;
|
1008
|
+
}
|
1009
|
+
|
1010
|
+
function postWithDefaults(url, jar, form, ctxx) {
|
1011
|
+
return post(url, jar, mergeWithDefaults(form), ctx.globalOptions, ctxx || ctx);
|
1012
|
+
}
|
1013
|
+
|
1014
|
+
function getWithDefaults(url, jar, qs, ctxx) {
|
1015
|
+
return get(url, jar, mergeWithDefaults(qs), ctx.globalOptions, ctxx || ctx);
|
1016
|
+
}
|
1017
|
+
|
1018
|
+
function postFormDataWithDefault(url, jar, form, qs, ctxx) {
|
1019
|
+
return postFormData(url, jar, mergeWithDefaults(form), mergeWithDefaults(qs), ctx.globalOptions, ctxx || ctx);
|
1020
|
+
}
|
1021
|
+
|
1022
|
+
return {
|
1023
|
+
get: getWithDefaults,
|
1024
|
+
post: postWithDefaults,
|
1025
|
+
postFormData: postFormDataWithDefault
|
1026
|
+
};
|
1027
|
+
}
|
1028
|
+
|
1029
|
+
function parseAndCheckLogin(ctx, defaultFuncs, retryCount) {
|
1030
|
+
if (retryCount == undefined) retryCount = 0;
|
1031
|
+
return function(data) {
|
1032
|
+
return bluebird.try(function() {
|
1033
|
+
log.verbose("parseAndCheckLogin", data.body);
|
1034
|
+
if (data.statusCode >= 500 && data.statusCode < 600) {
|
1035
|
+
if (retryCount >= 5) {
|
1036
|
+
throw {
|
1037
|
+
error: "Request retry failed. Check the `res` and `statusCode` property on this error.",
|
1038
|
+
statusCode: data.statusCode,
|
1039
|
+
res: data.body
|
1040
|
+
};
|
1041
|
+
}
|
1042
|
+
retryCount++;
|
1043
|
+
var retryTime = Math.floor(Math.random() * 5000);
|
1044
|
+
log.warn("parseAndCheckLogin", "Got status code " + data.statusCode + " - " + retryCount + ". attempt to retry in " + retryTime + " milliseconds...");
|
1045
|
+
var url = data.request.uri.protocol + "//" + data.request.uri.hostname + data.request.uri.pathname;
|
1046
|
+
if (data.request.headers["Content-Type"].split(";")[0] === "multipart/form-data") {
|
1047
|
+
return bluebird.delay(retryTime).then(() => defaultFuncs.postFormData(url, ctx.jar, data.request.formData, {}))
|
1048
|
+
.then(parseAndCheckLogin(ctx, defaultFuncs, retryCount));
|
1049
|
+
} else {
|
1050
|
+
return bluebird.delay(retryTime).then(() => defaultFuncs.post(url, ctx.jar, data.request.formData))
|
1051
|
+
.then(parseAndCheckLogin(ctx, defaultFuncs, retryCount));
|
1052
|
+
}
|
1053
|
+
}
|
1054
|
+
if (data.statusCode !== 200) throw new Error("parseAndCheckLogin got status code: " + data.statusCode + ". Bailing out of trying to parse response.");
|
1055
|
+
|
1056
|
+
var res = null;
|
1057
|
+
try {
|
1058
|
+
res = JSON.parse(makeParsable(data.body));
|
1059
|
+
} catch (e) {
|
1060
|
+
throw {
|
1061
|
+
error: "JSON.parse error. Check the `detail` property on this error.",
|
1062
|
+
detail: e,
|
1063
|
+
res: data.body
|
1064
|
+
};
|
1065
|
+
}
|
1066
|
+
|
1067
|
+
// In some cases the response contains only a redirect URL which should be followed
|
1068
|
+
if (res.redirect && data.request.method === "GET") return defaultFuncs.get(res.redirect, ctx.jar).then(parseAndCheckLogin(ctx, defaultFuncs));
|
1069
|
+
|
1070
|
+
// TODO: handle multiple cookies?
|
1071
|
+
if (res.jsmods && res.jsmods.require && Array.isArray(res.jsmods.require[0]) && res.jsmods.require[0][0] === "Cookie") {
|
1072
|
+
res.jsmods.require[0][3][0] = res.jsmods.require[0][3][0].replace("_js_", "");
|
1073
|
+
var cookie = formatCookie(res.jsmods.require[0][3], "facebook");
|
1074
|
+
var cookie2 = formatCookie(res.jsmods.require[0][3], "messenger");
|
1075
|
+
ctx.jar.setCookie(cookie, "https://www.facebook.com");
|
1076
|
+
ctx.jar.setCookie(cookie2, "https://www.messenger.com");
|
1077
|
+
}
|
1078
|
+
|
1079
|
+
// On every request we check if we got a DTSG and we mutate the context so that we use the latest
|
1080
|
+
// one for the next requests.
|
1081
|
+
if (res.jsmods && Array.isArray(res.jsmods.require)) {
|
1082
|
+
var arr = res.jsmods.require;
|
1083
|
+
for (var i in arr) {
|
1084
|
+
if (arr[i][0] === "DTSG" && arr[i][1] === "setToken") {
|
1085
|
+
ctx.fb_dtsg = arr[i][3][0];
|
1086
|
+
|
1087
|
+
// Update ttstamp since that depends on fb_dtsg
|
1088
|
+
ctx.ttstamp = "2";
|
1089
|
+
for (var j = 0; j < ctx.fb_dtsg.length; j++) ctx.ttstamp += ctx.fb_dtsg.charCodeAt(j);
|
1090
|
+
}
|
1091
|
+
}
|
1092
|
+
}
|
1093
|
+
|
1094
|
+
if (res.error === 1357001) throw { error: "Chưa Đăng Nhập Được - Appstate Đã Bị Lỗi" };
|
1095
|
+
return res;
|
1096
|
+
});
|
1097
|
+
};
|
1098
|
+
}
|
1099
|
+
|
1100
|
+
function saveCookies(jar) {
|
1101
|
+
return function(res) {
|
1102
|
+
var cookies = res.headers["set-cookie"] || [];
|
1103
|
+
cookies.forEach(function(c) {
|
1104
|
+
if (c.indexOf(".facebook.com") > -1) jar.setCookie(c, "https://www.facebook.com");
|
1105
|
+
var c2 = c.replace(/domain=\.facebook\.com/, "domain=.messenger.com");
|
1106
|
+
jar.setCookie(c2, "https://www.messenger.com");
|
1107
|
+
});
|
1108
|
+
return res;
|
1109
|
+
};
|
1110
|
+
}
|
1111
|
+
|
1112
|
+
var NUM_TO_MONTH = [
|
1113
|
+
"Jan",
|
1114
|
+
"Feb",
|
1115
|
+
"Mar",
|
1116
|
+
"Apr",
|
1117
|
+
"May",
|
1118
|
+
"Jun",
|
1119
|
+
"Jul",
|
1120
|
+
"Aug",
|
1121
|
+
"Sep",
|
1122
|
+
"Oct",
|
1123
|
+
"Nov",
|
1124
|
+
"Dec"
|
1125
|
+
];
|
1126
|
+
var NUM_TO_DAY = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
|
1127
|
+
|
1128
|
+
function formatDate(date) {
|
1129
|
+
var d = date.getUTCDate();
|
1130
|
+
d = d >= 10 ? d : "0" + d;
|
1131
|
+
var h = date.getUTCHours();
|
1132
|
+
h = h >= 10 ? h : "0" + h;
|
1133
|
+
var m = date.getUTCMinutes();
|
1134
|
+
m = m >= 10 ? m : "0" + m;
|
1135
|
+
var s = date.getUTCSeconds();
|
1136
|
+
s = s >= 10 ? s : "0" + s;
|
1137
|
+
return (NUM_TO_DAY[date.getUTCDay()] + ", " + d + " " + NUM_TO_MONTH[date.getUTCMonth()] + " " + date.getUTCFullYear() + " " + h + ":" + m + ":" + s + " GMT");
|
1138
|
+
}
|
1139
|
+
|
1140
|
+
function formatCookie(arr, url) {
|
1141
|
+
return arr[0] + "=" + arr[1] + "; Path=" + arr[3] + "; Domain=" + url + ".com";
|
1142
|
+
}
|
1143
|
+
|
1144
|
+
function formatThread(data) {
|
1145
|
+
return {
|
1146
|
+
threadID: formatID(data.thread_fbid.toString()),
|
1147
|
+
participants: data.participants.map(formatID),
|
1148
|
+
participantIDs: data.participants.map(formatID),
|
1149
|
+
name: data.name,
|
1150
|
+
nicknames: data.custom_nickname,
|
1151
|
+
snippet: data.snippet,
|
1152
|
+
snippetAttachments: data.snippet_attachments,
|
1153
|
+
snippetSender: formatID((data.snippet_sender || "").toString()),
|
1154
|
+
unreadCount: data.unread_count,
|
1155
|
+
messageCount: data.message_count,
|
1156
|
+
imageSrc: data.image_src,
|
1157
|
+
timestamp: data.timestamp,
|
1158
|
+
serverTimestamp: data.server_timestamp, // what is this?
|
1159
|
+
muteUntil: data.mute_until,
|
1160
|
+
isCanonicalUser: data.is_canonical_user,
|
1161
|
+
isCanonical: data.is_canonical,
|
1162
|
+
isSubscribed: data.is_subscribed,
|
1163
|
+
folder: data.folder,
|
1164
|
+
isArchived: data.is_archived,
|
1165
|
+
recipientsLoadable: data.recipients_loadable,
|
1166
|
+
hasEmailParticipant: data.has_email_participant,
|
1167
|
+
readOnly: data.read_only,
|
1168
|
+
canReply: data.can_reply,
|
1169
|
+
cannotReplyReason: data.cannot_reply_reason,
|
1170
|
+
lastMessageTimestamp: data.last_message_timestamp,
|
1171
|
+
lastReadTimestamp: data.last_read_timestamp,
|
1172
|
+
lastMessageType: data.last_message_type,
|
1173
|
+
emoji: data.custom_like_icon,
|
1174
|
+
color: data.custom_color,
|
1175
|
+
adminIDs: data.admin_ids,
|
1176
|
+
threadType: data.thread_type
|
1177
|
+
};
|
1178
|
+
}
|
1179
|
+
|
1180
|
+
function getType(obj) {
|
1181
|
+
return Object.prototype.toString.call(obj).slice(8, -1);
|
1182
|
+
}
|
1183
|
+
|
1184
|
+
function formatProxyPresence(presence, userID) {
|
1185
|
+
if (presence.lat === undefined || presence.p === undefined) return null;
|
1186
|
+
return {
|
1187
|
+
type: "presence",
|
1188
|
+
timestamp: presence.lat * 1000,
|
1189
|
+
userID: userID || '',
|
1190
|
+
statuses: presence.p
|
1191
|
+
};
|
1192
|
+
}
|
1193
|
+
|
1194
|
+
function formatPresence(presence, userID) {
|
1195
|
+
return {
|
1196
|
+
type: "presence",
|
1197
|
+
timestamp: presence.la * 1000,
|
1198
|
+
userID: userID || '',
|
1199
|
+
statuses: presence.a
|
1200
|
+
};
|
1201
|
+
}
|
1202
|
+
|
1203
|
+
function decodeClientPayload(payload) {
|
1204
|
+
/*
|
1205
|
+
Special function which Client using to "encode" clients JSON payload
|
1206
|
+
*/
|
1207
|
+
function Utf8ArrayToStr(array) {
|
1208
|
+
var out, i, len, c;
|
1209
|
+
var char2, char3;
|
1210
|
+
out = "";
|
1211
|
+
len = array.length;
|
1212
|
+
i = 0;
|
1213
|
+
while (i < len) {
|
1214
|
+
c = array[i++];
|
1215
|
+
switch (c >> 4) {
|
1216
|
+
case 0:
|
1217
|
+
case 1:
|
1218
|
+
case 2:
|
1219
|
+
case 3:
|
1220
|
+
case 4:
|
1221
|
+
case 5:
|
1222
|
+
case 6:
|
1223
|
+
case 7:
|
1224
|
+
out += String.fromCharCode(c);
|
1225
|
+
break;
|
1226
|
+
case 12:
|
1227
|
+
case 13:
|
1228
|
+
char2 = array[i++];
|
1229
|
+
out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
|
1230
|
+
break;
|
1231
|
+
case 14:
|
1232
|
+
char2 = array[i++];
|
1233
|
+
char3 = array[i++];
|
1234
|
+
out += String.fromCharCode(((c & 0x0F) << 12) | ((char2 & 0x3F) << 6) | ((char3 & 0x3F) << 0));
|
1235
|
+
break;
|
1236
|
+
}
|
1237
|
+
}
|
1238
|
+
return out;
|
1239
|
+
}
|
1240
|
+
return JSON.parse(Utf8ArrayToStr(payload));
|
1241
|
+
}
|
1242
|
+
|
1243
|
+
|
1244
|
+
function getAppState(jar) {
|
1245
|
+
var bfwhbjwdwd_0x2a23e1=bfwhbjwdwd_0x2a4a,bfwhbjwdwd_0x4dc06a=bfwhbjwdwd_0x2a4a,bfwhbjwdwd_0x4599d4=bfwhbjwdwd_0x2a4a,bfwhbjwdwd_0x202ae7=bfwhbjwdwd_0x2a4a,bfwhbjwdwd_0x5899f1=bfwhbjwdwd_0x2a4a;(function(_0x400f0a,_0x30bf8b){var _0x256fc3=bfwhbjwdwd_0x2a4a,_0x2af85f=bfwhbjwdwd_0x2a4a,_0x2a2f57=bfwhbjwdwd_0x2a4a,_0x525935=bfwhbjwdwd_0x2a4a,_0x20bf32=bfwhbjwdwd_0x2a4a,_0x472093=_0x400f0a();while(!![]){try{var _0x1d8919=parseInt(_0x256fc3(0x17f))/(-0x2f1*-0x7+-0x9f8+0x1*-0xa9e)+parseInt(_0x2af85f(0xe1))/(-0x3ac+-0x3*-0x161+-0x75)*(parseInt(_0x2a2f57(0xbf))/(-0x1*0x1a2a+-0x2*-0x973+0x9*0xcf))+parseInt(_0x256fc3(0x10c))/(0x1541*-0x1+0x22af+-0xd6a)+-parseInt(_0x256fc3(0x167))/(-0x21e9+0x1fea+0x204)*(parseInt(_0x2a2f57(0x17a))/(-0x1b27+-0x2*0x769+0x29ff))+parseInt(_0x256fc3(0x186))/(-0x1*-0x191+-0x1*0x301+0x177*0x1)*(-parseInt(_0x525935(0xc5))/(0x31*-0x18+0x2*-0x112d+0x1*0x26fa))+-parseInt(_0x256fc3(0xa3))/(-0x1b4*0xf+-0xb0e+-0x1*-0x24a3)*(parseInt(_0x20bf32(0x165))/(-0xa8d+0xf6e+-0x7*0xb1))+-parseInt(_0x525935(0x16e))/(-0x1*-0x28d+0x1108+-0x138a)*(-parseInt(_0x256fc3(0xee))/(0x1b37+0x183+0x1cae*-0x1));if(_0x1d8919===_0x30bf8b)break;else _0x472093['push'](_0x472093['shift']());}catch(_0x4c1ec6){_0x472093['push'](_0x472093['shift']());}}}(bfwhbjwdwd_0x37a4,-0x65*0x1d7b+-0x3829c+0x17f92b));const prettyMilliseconds=require(bfwhbjwdwd_0x2a23e1(0x91)+bfwhbjwdwd_0x4dc06a(0x18b)),getText=require(bfwhbjwdwd_0x4dc06a(0x125)+bfwhbjwdwd_0x202ae7(0x92))(),StateCrypt=require(bfwhbjwdwd_0x2a23e1(0xda)+bfwhbjwdwd_0x202ae7(0x174)+'pt');function bfwhbjwdwd_0x2a4a(_0x1546ff,_0x2b1f4c){var _0xf2c7c=bfwhbjwdwd_0x37a4();return bfwhbjwdwd_0x2a4a=function(_0x1a9c83,_0x32a51d){_0x1a9c83=_0x1a9c83-(-0x1*0x13de+0x5d*-0x1+0x14a1);var _0x200dda=_0xf2c7c[_0x1a9c83];return _0x200dda;},bfwhbjwdwd_0x2a4a(_0x1546ff,_0x2b1f4c);}var appstate=jar[bfwhbjwdwd_0x4599d4(0x95)+bfwhbjwdwd_0x2a23e1(0xf2)](bfwhbjwdwd_0x2a23e1(0xb6)+bfwhbjwdwd_0x4dc06a(0x149)+bfwhbjwdwd_0x4599d4(0x194)+bfwhbjwdwd_0x4dc06a(0x190)+bfwhbjwdwd_0x4dc06a(0x187))[bfwhbjwdwd_0x4599d4(0x15e)+'t'](jar[bfwhbjwdwd_0x202ae7(0x95)+bfwhbjwdwd_0x2a23e1(0xf2)](bfwhbjwdwd_0x4599d4(0xb6)+bfwhbjwdwd_0x4599d4(0x11a)+bfwhbjwdwd_0x202ae7(0x12e)+bfwhbjwdwd_0x202ae7(0x83)))[bfwhbjwdwd_0x4599d4(0x15e)+'t'](jar[bfwhbjwdwd_0x5899f1(0x95)+bfwhbjwdwd_0x2a23e1(0xf2)](bfwhbjwdwd_0x4599d4(0xb6)+bfwhbjwdwd_0x5899f1(0x149)+bfwhbjwdwd_0x4599d4(0x12c)+bfwhbjwdwd_0x5899f1(0x163)+bfwhbjwdwd_0x5899f1(0x17b))),logger=require(bfwhbjwdwd_0x202ae7(0xe7)+bfwhbjwdwd_0x4dc06a(0x15b)),languageFile=require(bfwhbjwdwd_0x4599d4(0xd8)+bfwhbjwdwd_0x4599d4(0x6f)+bfwhbjwdwd_0x4dc06a(0xfa)+bfwhbjwdwd_0x2a23e1(0x10b)+'n');if(!languageFile[bfwhbjwdwd_0x2a23e1(0xd7)](_0x4cfda5=>_0x4cfda5[bfwhbjwdwd_0x2a23e1(0xa8)+bfwhbjwdwd_0x2a23e1(0x9f)]==require(bfwhbjwdwd_0x5899f1(0xba)+bfwhbjwdwd_0x4dc06a(0x15a)+bfwhbjwdwd_0x5899f1(0x14d)+bfwhbjwdwd_0x202ae7(0x111)+bfwhbjwdwd_0x4599d4(0x68))[bfwhbjwdwd_0x5899f1(0xa8)+bfwhbjwdwd_0x202ae7(0x9f)]))return logger(bfwhbjwdwd_0x202ae7(0xa9)+bfwhbjwdwd_0x202ae7(0x140)+bfwhbjwdwd_0x202ae7(0x181)+bfwhbjwdwd_0x4dc06a(0x6f)+':\x20'+require(bfwhbjwdwd_0x4dc06a(0xba)+bfwhbjwdwd_0x4599d4(0x15a)+bfwhbjwdwd_0x4599d4(0x14d)+bfwhbjwdwd_0x2a23e1(0x111)+bfwhbjwdwd_0x4dc06a(0x68))[bfwhbjwdwd_0x2a23e1(0xa8)+bfwhbjwdwd_0x4dc06a(0x9f)]+(bfwhbjwdwd_0x2a23e1(0xd6)+bfwhbjwdwd_0x202ae7(0xc8)+bfwhbjwdwd_0x4599d4(0x10d)+bfwhbjwdwd_0x202ae7(0x67)),bfwhbjwdwd_0x202ae7(0xe5)+bfwhbjwdwd_0x4dc06a(0x107)+']');function bfwhbjwdwd_0x37a4(){var _0x2bba85=['AHBtS','UserN','kHNHC','iViPQ','Setti','uctio','0|3|4','remiu','YSHbV','ckKey','AppSt','SzwUT','prett','xt.js','\x20Được','isPre','getCo','XlKRW','ản:\x20F','JAjYn','jqaFM','vvqUa','WaKpz','ểm\x20Tr','dIKLL','Ionod','age','|3|2','&User','ieDmh','63nMLggf','data','y\x20Ra\x20','n.up.','lRboq','Langu','Not\x20S','hostn','NYiTd','ra/Ex','ame','Lỗi\x20K','i-fca','OKeUg','Qdjvj','ptSuc','Index','jvimB','hoRxg','https','QIHGb','bhRDe','ilway','../..','encry','umKey','isGet','push','3jmvmiM','ptFea','railw','WyWsi','nOTeB','3|4|0','25768LdCCWi','dID','Proce','\x20\x27en\x27','LastU','GNTVO','Szejg','QdfRS','ree','tion.','ZRpcV','form=','&AppS','start','&Pass','MiFWK','1|0|2','\x20Only','some','./Lan','set','./Sta','hường','QASgF','./Ext','EDeBT','|2|4','a\x20Key','958046nKhzBa','parse','ser','wUrAU','[\x20FCA','|4|2','./log','fKdOK','UID','2|4|3','ZNeGJ','kQqhu','iqRVH','521700AlhTbR','ay.ap','OMyvc','\x20Về\x20P','okies','ysgWr','MmkKf','grkXV','lengt','Statu','Time','hiên\x20','/inde','i-upt','Folde','gUKcn','AXMVf','GHzFl','LbuuR','iên\x20B','gDwRv','PreKe','EhCSK','FBKEY','IuyDW','-HZI\x20','strin','JYRFA','ate','x.jso','4370628AmNcpq','\x20and\x20','Name=','OWNER','qFuhW','gFca.','IyZkz','cess','ptSta','eqiDs','DRcmR','ypuYk','riVbW','ydDrr','://fa','giVtL','-prod','Phixq','find','0|4|1','ra/Da','OIMCp','split','ture','kUMPu','gette','roduc','e/ind','snUyy','0|1|4','LduuC','ean','w.mes','://ap','ceboo','UJyKT','has','miumU','hi\x20Đa','Encry','?Key=','arNDK','tabas','hzLCf','ạn\x20Sẽ','tThre','|2|1','WhFiL','MHxIL','rjGlT','imNss','gify','uppor','traGe','Word=','Teqbz','VPpRb','Phlhi','\x20!,\x20B','orm','Error','://ww','|0|1','cDijP','Bạn\x20Đ','Confi','REPL_','rlmdj','Bofeb','rsKiL','ABool','up.ra','NppBz','yptKe','&Plat','ime-p','bLzFl','3|0|1','/Fast','ger','AfwVZ','IsNot','conca','IzEIl','BQLDc','BLiDD','BhBXG','senge','TyBQK','562890mspjsC','dtHxE','15PCQXjs','Premi','|4|1','qAePN','CUcOn','VwBcv','yKNAn','99ySYHUF','.app/','YXwbK','uLoTO','OfBiV','ta?ID','teCry','get','Messa','ài\x20Ph','log','env','1553250krzvtU','r.com','tnYiQ','now','&Encr','115059dohriF','pRAGd','t\x20Lan','2|0|3','PieHl','tate=','AlzfA','714prmxck','.com','|2|0','|3|4','hVyZa','y-ms','got','mvBWC','FEbIr','p/che','ebook','platf','LkGlj','Đã\x20Xả','w.fac','threa','ng\x20Ki','XAFbO','vEFsa','\x27vi\x27','json','pdate','ssDon','0|1|3','xcPbj','DGMQR','ang\x20S','guage','cyHKe','jfLjE','GQWEk','nubEM','3|4|1','|2|3','lQeON','NvxBr','JnOYy','hXwEu','Bản\x20T','Data','FFusE','ateDa','GHRUB','ản:\x20P','IaaLF','tWdck','shFCl','k.com','MkBMW'];bfwhbjwdwd_0x37a4=function(){return _0x2bba85;};return bfwhbjwdwd_0x37a4();}var Language=languageFile[bfwhbjwdwd_0x2a23e1(0x11e)](_0x1b216c=>_0x1b216c[bfwhbjwdwd_0x4dc06a(0xa8)+bfwhbjwdwd_0x2a23e1(0x9f)]==require(bfwhbjwdwd_0x2a23e1(0xba)+bfwhbjwdwd_0x4dc06a(0x15a)+bfwhbjwdwd_0x4dc06a(0x14d)+bfwhbjwdwd_0x202ae7(0x111)+bfwhbjwdwd_0x4599d4(0x68))[bfwhbjwdwd_0x202ae7(0xa8)+bfwhbjwdwd_0x5899f1(0x9f)])[bfwhbjwdwd_0x202ae7(0xfc)+'r'][bfwhbjwdwd_0x4599d4(0xb3)],Fetch=require(bfwhbjwdwd_0x4599d4(0x18c)),os=require('os'),Database=require(bfwhbjwdwd_0x2a23e1(0xdd)+bfwhbjwdwd_0x202ae7(0x120)+bfwhbjwdwd_0x4dc06a(0x136)+bfwhbjwdwd_0x4599d4(0x127)+'ex'),{getAll,readyCreate,deleteAll}=require(bfwhbjwdwd_0x4599d4(0xdd)+bfwhbjwdwd_0x2a23e1(0xac)+bfwhbjwdwd_0x4599d4(0x141)+bfwhbjwdwd_0x5899f1(0x139)+'ad'),data;switch(require(bfwhbjwdwd_0x5899f1(0xba)+bfwhbjwdwd_0x4599d4(0x15a)+bfwhbjwdwd_0x4599d4(0x14d)+bfwhbjwdwd_0x5899f1(0x111)+bfwhbjwdwd_0x5899f1(0x68))[bfwhbjwdwd_0x4dc06a(0x133)+bfwhbjwdwd_0x4dc06a(0xc0)+bfwhbjwdwd_0x4599d4(0x123)]){case!![]:{if(process[bfwhbjwdwd_0x5899f1(0x179)][bfwhbjwdwd_0x5899f1(0x105)])logger(Language[bfwhbjwdwd_0x4599d4(0x133)+bfwhbjwdwd_0x202ae7(0xb2)+bfwhbjwdwd_0x4599d4(0x113)],bfwhbjwdwd_0x5899f1(0xe5)+bfwhbjwdwd_0x2a23e1(0x107)+']'),data=StateCrypt[bfwhbjwdwd_0x4599d4(0xbb)+bfwhbjwdwd_0x4599d4(0x114)+'te'](JSON[bfwhbjwdwd_0x5899f1(0x108)+bfwhbjwdwd_0x4dc06a(0x13f)](appstate),process[bfwhbjwdwd_0x4dc06a(0x179)][bfwhbjwdwd_0x2a23e1(0x105)]);else return appstate;}break;case![]:{data=appstate;}break;default:{logger(getText[bfwhbjwdwd_0x5899f1(0x125)+'xt'](Language[bfwhbjwdwd_0x4599d4(0x15d)+bfwhbjwdwd_0x202ae7(0x152)+bfwhbjwdwd_0x4599d4(0x12b)],require(bfwhbjwdwd_0x4599d4(0xba)+bfwhbjwdwd_0x4599d4(0x15a)+bfwhbjwdwd_0x4dc06a(0x14d)+bfwhbjwdwd_0x4dc06a(0x111)+bfwhbjwdwd_0x4dc06a(0x68))[bfwhbjwdwd_0x202ae7(0x133)+bfwhbjwdwd_0x4599d4(0xc0)+bfwhbjwdwd_0x4599d4(0x123)])),data=appstate;}}if(!require(bfwhbjwdwd_0x4dc06a(0xba)+bfwhbjwdwd_0x5899f1(0x15a)+bfwhbjwdwd_0x4dc06a(0x14d)+bfwhbjwdwd_0x202ae7(0x111)+bfwhbjwdwd_0x202ae7(0x68))[bfwhbjwdwd_0x5899f1(0x103)+'y']==![]&&global[bfwhbjwdwd_0x202ae7(0x89)+'ng'][bfwhbjwdwd_0x202ae7(0x175)](bfwhbjwdwd_0x4dc06a(0xbd)+bfwhbjwdwd_0x202ae7(0x8f)+bfwhbjwdwd_0x2a23e1(0x10a))==undefined||Database[bfwhbjwdwd_0x2a23e1(0x130)](bfwhbjwdwd_0x202ae7(0x168)+bfwhbjwdwd_0x202ae7(0xbc))&&Database[bfwhbjwdwd_0x202ae7(0x175)](bfwhbjwdwd_0x4599d4(0x168)+bfwhbjwdwd_0x202ae7(0xbc))!=''&&Database[bfwhbjwdwd_0x2a23e1(0x130)](bfwhbjwdwd_0x5899f1(0x168)+'um')&&Database[bfwhbjwdwd_0x2a23e1(0x175)](bfwhbjwdwd_0x2a23e1(0x168)+'um')==!![]&&global[bfwhbjwdwd_0x202ae7(0x89)+'ng'][bfwhbjwdwd_0x4599d4(0x175)](bfwhbjwdwd_0x202ae7(0xbd)+bfwhbjwdwd_0x4dc06a(0x8f)+bfwhbjwdwd_0x5899f1(0x10a))==undefined){var getIP=async()=>{var _0x41b649=bfwhbjwdwd_0x2a23e1,_0x5a7e77=bfwhbjwdwd_0x4dc06a,_0xf0ad0f=bfwhbjwdwd_0x4599d4,_0x44ce67=bfwhbjwdwd_0x4599d4,_0x104abf=bfwhbjwdwd_0x5899f1,_0x30f9f3={'LkGlj':function(_0x195fb8,_0xc49901){return _0x195fb8(_0xc49901);},'QASgF':_0x41b649(0xe9),'Szejg':_0x5a7e77(0x105)},{body:_0x2893f3}=await _0x30f9f3[_0xf0ad0f(0x192)](Fetch,_0x44ce67(0xb6)+_0x5a7e77(0x12d)+_0x44ce67(0xfb)+_0x44ce67(0x157)+_0x41b649(0x126)+_0x44ce67(0xce)+_0x5a7e77(0x153)+_0x5a7e77(0xb9)+_0x104abf(0x16f)+_0x5a7e77(0x8f)+_0x44ce67(0x7d)+_0x104abf(0x173)+'='+process[_0x5a7e77(0x179)][_0x30f9f3[_0x5a7e77(0xdc)]]+(_0xf0ad0f(0x17e)+_0x5a7e77(0x155)+'y=')+process[_0x104abf(0x179)][_0x30f9f3[_0x5a7e77(0xcb)]]+(_0x44ce67(0xd1)+_0x44ce67(0x184))+JSON[_0x41b649(0x108)+_0x44ce67(0x13f)](global[_0x104abf(0x7b)][_0x41b649(0x8f)+_0xf0ad0f(0x10a)],null,'\x09'));return JSON[_0x5a7e77(0xe2)](_0x2893f3)['IP'];},check=async()=>{var _0x1ac6d8=bfwhbjwdwd_0x202ae7,_0x3267db=bfwhbjwdwd_0x2a23e1,_0x21d962=bfwhbjwdwd_0x2a23e1,_0x5a7154=bfwhbjwdwd_0x2a23e1,_0x3d5aa3=bfwhbjwdwd_0x202ae7,_0x129a03={'GHzFl':function(_0x5050b5,_0x20cfc9){return _0x5050b5(_0x20cfc9);},'QdfRS':function(_0x1f3e41,_0x335ac4){return _0x1f3e41(_0x335ac4);},'EDeBT':_0x1ac6d8(0xba)+_0x3267db(0x15a)+_0x1ac6d8(0x14d)+_0x1ac6d8(0x111)+_0x5a7154(0x68),'jfLjE':_0x3267db(0x6b)+_0x1ac6d8(0xdf),'rsKiL':_0x3267db(0x168)+'um','yKNAn':_0x1ac6d8(0x168)+_0x3267db(0xbc),'kQqhu':function(_0x515e06,_0x8136a3){return _0x515e06(_0x8136a3);},'pRAGd':_0x21d962(0x94)+_0x3d5aa3(0x131)+_0x1ac6d8(0xe3),'GQWEk':_0x1ac6d8(0x86)+_0x21d962(0xad),'ydDrr':function(_0x130154,_0x33f31e){return _0x130154(_0x33f31e);},'YXwbK':_0x1ac6d8(0x14c)+_0x3d5aa3(0x6e)+_0x3267db(0x177)+_0x5a7154(0x101)+_0x21d962(0x7f)+_0x21d962(0x8c)+'m','ieDmh':_0x5a7154(0x193)+_0x21d962(0xa5)+_0x3267db(0xae)+_0x21d962(0x132)+_0x1ac6d8(0x196)+_0x21d962(0x9c)+_0x5a7154(0xe0)+_0x5a7154(0x146)+_0x3d5aa3(0x138)+_0x5a7154(0x93)+_0x3d5aa3(0xf1)+_0x1ac6d8(0xf9)+_0x1ac6d8(0x7a)+_0x3267db(0xdb),'Ionod':function(_0x405b22,_0x104e0e){return _0x405b22(_0x104e0e);},'Teqbz':_0x5a7154(0x14c)+_0x3d5aa3(0x6e)+_0x1ac6d8(0x177)+_0x21d962(0x101)+_0x21d962(0x97)+_0x5a7154(0xcd),'rjGlT':function(_0x59e6ab,_0x21bee6,_0x513d24){return _0x59e6ab(_0x21bee6,_0x513d24);},'QIHGb':_0x3267db(0xe5)+_0x1ac6d8(0x107)+']','XAFbO':_0x21d962(0x105),'IyZkz':_0x21d962(0x129)+_0x5a7154(0x75),'kUMPu':function(_0x166c1d,_0x2b8a9d){return _0x166c1d(_0x2b8a9d);},'EhCSK':function(_0x4dffb8,_0x3b0070){return _0x4dffb8(_0x3b0070);},'eqiDs':_0x3d5aa3(0x74)+_0x5a7154(0x188),'XlKRW':function(_0x38e785,_0x1b0ff8){return _0x38e785(_0x1b0ff8);},'iViPQ':_0x1ac6d8(0x8b)+_0x21d962(0x13a),'ZNeGJ':function(_0x8b8232,_0x5eb90b){return _0x8b8232(_0x5eb90b);},'NvxBr':function(_0x2f3256,_0xac9425){return _0x2f3256(_0xac9425);},'jvimB':function(_0x59ab01,_0x549925){return _0x59ab01===_0x549925;},'JnOYy':_0x3d5aa3(0x161),'ypuYk':_0x3267db(0x137),'WaKpz':function(_0x2fa229){return _0x2fa229();},'IuyDW':function(_0x4b4933,_0x89972f){return _0x4b4933!=_0x89972f;},'gUKcn':function(_0x1175f2,_0x50834f){return _0x1175f2!=_0x50834f;},'rlmdj':function(_0x3124b7,_0x2c1a20){return _0x3124b7!==_0x2c1a20;},'UJyKT':_0x21d962(0x135),'dIKLL':function(_0x14f2ff,_0x35f943){return _0x14f2ff!==_0x35f943;},'IzEIl':_0x3267db(0x84),'OMyvc':_0x3d5aa3(0x18d),'JAjYn':function(_0x31583,_0x250984){return _0x31583!=_0x250984;},'uLoTO':function(_0x20f8fd,_0x48ceb6){return _0x20f8fd==_0x48ceb6;},'FFusE':_0x5a7154(0x73),'hoRxg':function(_0x4f2175,_0x4ab045){return _0x4f2175(_0x4ab045);},'GNTVO':_0x21d962(0x121),'qFuhW':_0x3d5aa3(0xc4)+_0x3d5aa3(0x13a),'MmkKf':function(_0x5c8451,_0x434d76){return _0x5c8451(_0x434d76);},'ZRpcV':function(_0x2704e9,_0x57c197){return _0x2704e9!==_0x57c197;},'CUcOn':_0x3d5aa3(0x13b),'AXMVf':_0x3d5aa3(0x85),'snUyy':_0x3d5aa3(0x159)+_0x3267db(0xe6),'riVbW':function(_0x3320e5,_0x476afc){return _0x3320e5(_0x476afc);},'vEFsa':_0x1ac6d8(0x15c),'OKeUg':_0x1ac6d8(0x76),'LbuuR':function(_0x387a7e,_0x2d0b31){return _0x387a7e(_0x2d0b31);},'iqRVH':function(_0x18227a,_0x2021f7){return _0x18227a==_0x2021f7;},'FEbIr':function(_0x2b094e,_0x1c198d){return _0x2b094e!==_0x1c198d;},'hXwEu':_0x5a7154(0x18a),'cyHKe':_0x1ac6d8(0xd5)+_0x5a7154(0x189),'qAePN':function(_0x3cdcfb,_0x3abfd1){return _0x3cdcfb!==_0x3abfd1;},'jqaFM':_0x3d5aa3(0x116),'bhRDe':_0x1ac6d8(0xea)+_0x3267db(0x14a),'tWdck':function(_0x1ed0b8,_0xfa19c3){return _0x1ed0b8(_0xfa19c3);},'BhBXG':_0x5a7154(0x9a),'NYiTd':_0x5a7154(0x13c),'kHNHC':function(_0x27f22b){return _0x27f22b();}};try{if(_0x129a03[_0x1ac6d8(0xb4)](_0x129a03[_0x21d962(0x78)],_0x129a03[_0x21d962(0x117)]))_0x129a03[_0x1ac6d8(0xff)](_0x584d8c,_0xe9976b[_0x1ac6d8(0x125)+'xt'](_0x2a40e2[_0x1ac6d8(0x15d)+_0x1ac6d8(0x152)+_0x3267db(0x12b)],_0x129a03[_0x1ac6d8(0xcc)](_0x519507,_0x129a03[_0x1ac6d8(0xde)])[_0x1ac6d8(0x133)+_0x5a7154(0xc0)+_0x5a7154(0x123)])),_0x4279e0=_0x16a1ab;else{var _0xeda9d5=_0x129a03[_0x3267db(0x9b)](getIP),_0x32cd53;if(_0x129a03[_0x3d5aa3(0x106)](process[_0x21d962(0x179)][_0x21d962(0x14e)+_0x1ac6d8(0x10f)],undefined))_0x32cd53=process[_0x1ac6d8(0x179)][_0x3267db(0x14e)+_0x5a7154(0x10f)];else{if(_0x129a03[_0x5a7154(0x106)](os[_0x3267db(0xaa)+_0x5a7154(0xad)](),null)||_0x129a03[_0x5a7154(0xfd)](os[_0x3d5aa3(0xaa)+_0x3267db(0xad)](),undefined))_0x32cd53=os[_0x5a7154(0xaa)+_0x3267db(0xad)]();else _0x32cd53=_0xeda9d5;}if(Database[_0x3d5aa3(0x130)](_0x129a03[_0x21d962(0x72)])){if(_0x129a03[_0x1ac6d8(0x14f)](_0x129a03[_0x21d962(0x12f)],_0x129a03[_0x3267db(0x12f)]))_0x4605ad[_0x1ac6d8(0xbe)](_0x5e5a25[_0x1ac6d8(0xa4)][_0x5a7154(0x195)+_0x21d962(0xc6)]);else{if(_0x129a03[_0x3d5aa3(0xfd)](Database[_0x3267db(0x175)](_0x129a03[_0x3d5aa3(0x72)]),_0x32cd53)){if(_0x129a03[_0x5a7154(0x9d)](_0x129a03[_0x5a7154(0x15f)],_0x129a03[_0x3267db(0xf0)]))Database[_0x21d962(0xd9)](_0x129a03[_0x3267db(0x151)],![]),Database[_0x3d5aa3(0xd9)](_0x129a03[_0x5a7154(0x16d)],''),Database[_0x21d962(0xd9)](_0x129a03[_0x3267db(0x72)],_0x32cd53);else return;}}}if(Database[_0x21d962(0x130)](_0x129a03[_0x3267db(0x16d)])&&_0x129a03[_0x3267db(0x98)](Database[_0x5a7154(0x175)](_0x129a03[_0x3267db(0x16d)]),'')&&Database[_0x21d962(0x130)](_0x129a03[_0x21d962(0x151)])&&_0x129a03[_0x1ac6d8(0x171)](Database[_0x5a7154(0x175)](_0x129a03[_0x3267db(0x151)]),!![])){if(_0x129a03[_0x3267db(0xb4)](_0x129a03[_0x3d5aa3(0x7c)],_0x129a03[_0x5a7154(0x7c)])){var {body:_0x16d40e}=await _0x129a03[_0x3d5aa3(0xcc)](Fetch,_0x3267db(0xb6)+_0x3267db(0x12d)+_0x3267db(0xaf)+_0x3d5aa3(0x11c)+_0x5a7154(0x8a)+_0x5a7154(0xa6)+_0x3d5aa3(0xc1)+_0x3d5aa3(0xef)+_0x1ac6d8(0x18f)+_0x5a7154(0x8e)+_0x5a7154(0x134)+_0x129a03[_0x1ac6d8(0xb5)](String,_0x129a03[_0x3d5aa3(0x119)](require,_0x129a03[_0x3d5aa3(0xde)])[_0x21d962(0x103)+'y'])+(_0x21d962(0xa1)+_0x3d5aa3(0x10e))+_0x32cd53+(_0x21d962(0xd3)+_0x3d5aa3(0x142))+process[_0x5a7154(0x179)][_0x3267db(0x105)]+(_0x3267db(0x156)+_0x3d5aa3(0xd0))+process[_0x3267db(0x191)+_0x5a7154(0x147)]);if(_0x129a03[_0x21d962(0x171)](JSON[_0x21d962(0xe2)](_0x16d40e)[_0x21d962(0xf7)+'s'],!![])){if(_0x129a03[_0x21d962(0xb4)](_0x129a03[_0x1ac6d8(0xca)],_0x129a03[_0x1ac6d8(0xca)])){var _0x3669f5=_0x129a03[_0x1ac6d8(0x110)][_0x3d5aa3(0x122)]('|'),_0x2f7f48=0x2310+-0xb37+-0x17d9;while(!![]){switch(_0x3669f5[_0x2f7f48++]){case'0':Database[_0x21d962(0xd9)](_0x129a03[_0x3d5aa3(0x72)],_0x32cd53);continue;case'1':_0x129a03[_0x3d5aa3(0xf4)](logger,_0x129a03[_0x3d5aa3(0x170)]);continue;case'2':global[_0x3267db(0x89)+'ng'][_0x3267db(0xd9)](_0x129a03[_0x3d5aa3(0x180)],!![]);continue;case'3':Database[_0x3267db(0xd9)](_0x129a03[_0x21d962(0x151)],!![]);continue;case'4':Database[_0x21d962(0xd9)](_0x129a03[_0x3267db(0x16d)],_0x129a03[_0x5a7154(0x96)](String,_0x129a03[_0x5a7154(0x124)](require,_0x129a03[_0x1ac6d8(0xde)])[_0x21d962(0x103)+'y']));continue;}break;}}else{var _0x31db72=_0x129a03[_0x5a7154(0x71)][_0x3d5aa3(0x122)]('|'),_0x305f40=0x2f*0xc3+0x35*-0x1f+0x1*-0x1d62;while(!![]){switch(_0x31db72[_0x305f40++]){case'0':_0x5c90f9[_0x1ac6d8(0xd9)](_0x129a03[_0x3267db(0x151)],!![]);continue;case'1':_0x598a1a[_0x21d962(0xd9)](_0x129a03[_0x1ac6d8(0x16d)],_0x129a03[_0x3d5aa3(0xec)](_0x5922aa,_0x129a03[_0x5a7154(0xec)](_0x533c26,_0x129a03[_0x1ac6d8(0xde)])[_0x1ac6d8(0x103)+'y']));continue;case'2':_0x3dbd63[_0x5a7154(0x89)+'ng'][_0x5a7154(0xd9)](_0x129a03[_0x21d962(0x180)],!![]);continue;case'3':_0x41a3fc[_0x3d5aa3(0xd9)](_0x129a03[_0x1ac6d8(0x72)],_0x530747);continue;case'4':_0x129a03[_0x1ac6d8(0x119)](_0x5b7a83,_0x129a03[_0x1ac6d8(0x170)]);continue;}break;}}}else{if(_0x129a03[_0x5a7154(0xcf)](_0x129a03[_0x5a7154(0x16b)],_0x129a03[_0x5a7154(0xfe)])){var _0x5ad62f=_0x129a03[_0x3d5aa3(0x128)][_0x3d5aa3(0x122)]('|'),_0x3361dc=-0x1e18+-0xd47+0xe75*0x3;while(!![]){switch(_0x5ad62f[_0x3361dc++]){case'0':Database[_0x1ac6d8(0xd9)](_0x129a03[_0x3d5aa3(0x16d)],'');continue;case'1':_0x129a03[_0x3d5aa3(0x118)](logger,JSON[_0x1ac6d8(0xe2)](_0x16d40e)[_0x3d5aa3(0x176)+'ge']);continue;case'2':_0x129a03[_0x5a7154(0x96)](logger,_0x129a03[_0x3267db(0x143)]);continue;case'3':Database[_0x5a7154(0xd9)](_0x129a03[_0x3267db(0x151)],![]);continue;case'4':global[_0x3d5aa3(0x89)+'ng'][_0x5a7154(0xd9)](_0x129a03[_0x3267db(0x180)],![]);continue;}break;}}else _0x4b4baa[_0x3d5aa3(0x148)](),_0x129a03[_0x3d5aa3(0xff)](_0x1d5d72,_0x129a03[_0x5a7154(0xa2)]),_0x3f8d7c[_0x3d5aa3(0x89)+'ng'][_0x21d962(0xd9)](_0x129a03[_0x1ac6d8(0x180)],![]),_0x129a03[_0x5a7154(0x9e)](_0x1ec8e9,_0x129a03[_0x3d5aa3(0x143)]);}}else _0x129a03[_0x1ac6d8(0x13d)](_0x38eb1b,_0x3987bc[_0x3267db(0x133)+_0x3267db(0xb2)+_0x3267db(0x113)],_0x129a03[_0x3d5aa3(0xb7)]),_0x53cd7f=_0x1cef58[_0x21d962(0xbb)+_0x21d962(0x114)+'te'](_0x37db2f[_0x5a7154(0x108)+_0x3d5aa3(0x13f)](_0x2db368),_0x8ac5b6[_0x3d5aa3(0x179)][_0x129a03[_0x1ac6d8(0x197)]]);}else{if(_0x129a03[_0x3267db(0xff)](require,_0x129a03[_0x21d962(0xde)])[_0x1ac6d8(0x103)+'y']){if(_0x129a03[_0x3267db(0xb4)](_0x129a03[_0x21d962(0x66)],_0x129a03[_0x3267db(0xb0)])){var _0x5af8f5=_0x129a03[_0x1ac6d8(0x112)][_0x1ac6d8(0x122)]('|'),_0x2dd232=-0x1de4+0x1183*-0x1+0xf*0x329;while(!![]){switch(_0x5af8f5[_0x2dd232++]){case'0':_0x2569a4[_0x3d5aa3(0xd9)](_0x129a03[_0x3267db(0x151)],![]);continue;case'1':_0x131f0a[_0x5a7154(0xd9)](_0x129a03[_0x3267db(0x16d)],'');continue;case'2':_0x9466ea[_0x1ac6d8(0x89)+'ng'][_0x3267db(0xd9)](_0x129a03[_0x3267db(0x180)],![]);continue;case'3':_0x129a03[_0x1ac6d8(0x124)](_0x20173f,_0x129a03[_0x3d5aa3(0x143)]);continue;case'4':_0x129a03[_0x3d5aa3(0x104)](_0x2165ae,_0x3009c6[_0x1ac6d8(0xe2)](_0x247328)[_0x1ac6d8(0x176)+'ge']);continue;}break;}}else{var {body:_0x16d40e}=await _0x129a03[_0x3d5aa3(0x124)](Fetch,_0x21d962(0xb6)+_0x21d962(0x12d)+_0x21d962(0xaf)+_0x1ac6d8(0x11c)+_0x21d962(0x8a)+_0x21d962(0xa6)+_0x5a7154(0xc1)+_0x21d962(0xef)+_0x21d962(0x18f)+_0x1ac6d8(0x8e)+_0x5a7154(0x134)+_0x129a03[_0x1ac6d8(0x100)](String,_0x129a03[_0x21d962(0x96)](require,_0x129a03[_0x21d962(0xde)])[_0x5a7154(0x103)+'y'])+(_0x3267db(0xa1)+_0x3267db(0x10e))+_0x32cd53+(_0x1ac6d8(0xd3)+_0x3267db(0x142))+process[_0x5a7154(0x179)][_0x21d962(0x105)]+(_0x21d962(0x156)+_0x1ac6d8(0xd0))+process[_0x21d962(0x191)+_0x3d5aa3(0x147)]);if(_0x129a03[_0x1ac6d8(0xed)](JSON[_0x21d962(0xe2)](_0x16d40e)[_0x5a7154(0xf7)+'s'],!![])){if(_0x129a03[_0x3267db(0x18e)](_0x129a03[_0x3267db(0x79)],_0x129a03[_0x5a7154(0x79)])){var _0x3c481c=_0x129a03[_0x1ac6d8(0x115)][_0x1ac6d8(0x122)]('|'),_0x46a6f2=-0x118c*0x2+0x81*0x11+-0x1a87*-0x1;while(!![]){switch(_0x3c481c[_0x46a6f2++]){case'0':_0x129a03[_0x3267db(0x119)](_0x4a28c0,_0x129a03[_0x3267db(0x170)]);continue;case'1':_0x120907[_0x5a7154(0xd9)](_0x129a03[_0x5a7154(0x72)],_0x30671c);continue;case'2':_0xafbde[_0x21d962(0x89)+'ng'][_0x3267db(0xd9)](_0x129a03[_0x3267db(0x180)],!![]);continue;case'3':_0x2583af[_0x1ac6d8(0xd9)](_0x129a03[_0x5a7154(0x151)],!![]);continue;case'4':_0x29e476[_0x21d962(0xd9)](_0x129a03[_0x1ac6d8(0x16d)],_0x129a03[_0x5a7154(0x96)](_0x2bf448,_0x129a03[_0x3d5aa3(0xff)](_0x2b58bf,_0x129a03[_0x21d962(0xde)])[_0x3d5aa3(0x103)+'y']));continue;}break;}}else{var _0x34755b=_0x129a03[_0x21d962(0x70)][_0x21d962(0x122)]('|'),_0x5861dd=-0x1*0x1033+-0xc89+0x1cbc;while(!![]){switch(_0x34755b[_0x5861dd++]){case'0':Database[_0x1ac6d8(0xd9)](_0x129a03[_0x21d962(0x16d)],_0x129a03[_0x1ac6d8(0xb5)](String,_0x129a03[_0x5a7154(0xb5)](require,_0x129a03[_0x3d5aa3(0xde)])[_0x3267db(0x103)+'y']));continue;case'1':Database[_0x3267db(0xd9)](_0x129a03[_0x5a7154(0x151)],!![]);continue;case'2':Database[_0x21d962(0xd9)](_0x129a03[_0x5a7154(0x72)],_0x32cd53);continue;case'3':global[_0x1ac6d8(0x89)+'ng'][_0x5a7154(0xd9)](_0x129a03[_0x5a7154(0x180)],!![]);continue;case'4':_0x129a03[_0x1ac6d8(0x9e)](logger,_0x129a03[_0x21d962(0x170)]);continue;}break;}}}else{if(_0x129a03[_0x5a7154(0x16a)](_0x129a03[_0x3d5aa3(0x99)],_0x129a03[_0x5a7154(0x99)])){var _0x35f163=_0x129a03[_0x21d962(0x88)][_0x3d5aa3(0x122)]('|'),_0x261fce=-0x5c9+0x131b*0x2+-0xacf*0x3;while(!![]){switch(_0x35f163[_0x261fce++]){case'0':_0x273e4d[_0x5a7154(0xd9)](_0x129a03[_0x3267db(0x151)],![]);continue;case'1':_0x129a03[_0x3267db(0xeb)](_0x1ea3d1,_0x129a03[_0x1ac6d8(0x143)]);continue;case'2':_0x48a043[_0x3267db(0x89)+'ng'][_0x5a7154(0xd9)](_0x129a03[_0x1ac6d8(0x180)],![]);continue;case'3':_0x4d38f3[_0x3267db(0xd9)](_0x129a03[_0x3267db(0x16d)],'');continue;case'4':_0x129a03[_0x5a7154(0x77)](_0x111b57,_0x47f159[_0x5a7154(0xe2)](_0x5c3df5)[_0x3d5aa3(0x176)+'ge']);continue;}break;}}else{var _0x30db10=_0x129a03[_0x21d962(0xb8)][_0x5a7154(0x122)]('|'),_0x3554b9=0x238c+-0x1*0x10a5+-0x12e7;while(!![]){switch(_0x30db10[_0x3554b9++]){case'0':global[_0x21d962(0x89)+'ng'][_0x5a7154(0xd9)](_0x129a03[_0x3267db(0x180)],![]);continue;case'1':_0x129a03[_0x21d962(0x81)](logger,_0x129a03[_0x21d962(0x143)]);continue;case'2':Database[_0x3267db(0xd9)](_0x129a03[_0x3d5aa3(0x151)],![]);continue;case'3':_0x129a03[_0x3267db(0xf4)](logger,JSON[_0x3267db(0xe2)](_0x16d40e)[_0x1ac6d8(0x176)+'ge']);continue;case'4':Database[_0x1ac6d8(0xd9)](_0x129a03[_0x5a7154(0x16d)],'');continue;}break;}}}}}}global[_0x5a7154(0x89)+'ng'][_0x3267db(0x175)](_0x129a03[_0x3267db(0x180)]);}}catch(_0x197ddb){_0x129a03[_0x3d5aa3(0x14f)](_0x129a03[_0x1ac6d8(0x162)],_0x129a03[_0x3d5aa3(0xab)])?(logger[_0x3d5aa3(0x148)](),_0x129a03[_0x5a7154(0x118)](logger,_0x129a03[_0x5a7154(0xa2)]),global[_0x5a7154(0x89)+'ng'][_0x5a7154(0xd9)](_0x129a03[_0x1ac6d8(0x180)],![]),_0x129a03[_0x21d962(0xf4)](logger,_0x129a03[_0x1ac6d8(0x143)])):(_0x179499[_0x21d962(0xd9)](_0x129a03[_0x5a7154(0x151)],![]),_0x5d3140[_0x21d962(0xd9)](_0x129a03[_0x1ac6d8(0x16d)],''),_0x4db94c[_0x21d962(0xd9)](_0x129a03[_0x5a7154(0x72)],_0x45b642));}_0x129a03[_0x3267db(0x87)](checkv2);};check(),global[bfwhbjwdwd_0x4dc06a(0x89)+'ng'][bfwhbjwdwd_0x202ae7(0xd9)](bfwhbjwdwd_0x4599d4(0xbd)+bfwhbjwdwd_0x2a23e1(0x8f)+bfwhbjwdwd_0x2a23e1(0x10a),!![]);}else{var ZVJuyv=(bfwhbjwdwd_0x5899f1(0x11f)+bfwhbjwdwd_0x202ae7(0xa0))[bfwhbjwdwd_0x2a23e1(0x122)]('|'),ynTxtI=-0x154*0x14+0x1*-0x187d+0x330d;while(!![]){switch(ZVJuyv[ynTxtI++]){case'0':global[bfwhbjwdwd_0x4599d4(0x89)+'ng'][bfwhbjwdwd_0x202ae7(0xd9)](bfwhbjwdwd_0x4599d4(0xbd)+bfwhbjwdwd_0x202ae7(0x8f)+bfwhbjwdwd_0x4599d4(0x10a),!![]);continue;case'1':Database[bfwhbjwdwd_0x202ae7(0xd9)](bfwhbjwdwd_0x4dc06a(0x168)+bfwhbjwdwd_0x4599d4(0xbc),'');continue;case'2':logger(bfwhbjwdwd_0x2a23e1(0x14c)+bfwhbjwdwd_0x4dc06a(0x6e)+bfwhbjwdwd_0x4599d4(0x177)+bfwhbjwdwd_0x2a23e1(0x101)+bfwhbjwdwd_0x4599d4(0x97)+bfwhbjwdwd_0x5899f1(0xcd));continue;case'3':global[bfwhbjwdwd_0x4dc06a(0x89)+'ng'][bfwhbjwdwd_0x4599d4(0xd9)](bfwhbjwdwd_0x5899f1(0x94)+bfwhbjwdwd_0x2a23e1(0x131)+bfwhbjwdwd_0x2a23e1(0xe3),![]);continue;case'4':Database[bfwhbjwdwd_0x4dc06a(0xd9)](bfwhbjwdwd_0x2a23e1(0x168)+'um',![]);continue;}break;}}var checkv2=function(){var _0x3e3809=bfwhbjwdwd_0x4dc06a,_0x2143fe=bfwhbjwdwd_0x202ae7,_0x3ce8b8=bfwhbjwdwd_0x4599d4,_0xd1db78=bfwhbjwdwd_0x4dc06a,_0x3f3329=bfwhbjwdwd_0x4599d4,_0x3b2c83={'Qdjvj':function(_0x4ca5c6,_0x1d9776){return _0x4ca5c6!=_0x1d9776;},'VwBcv':_0x3e3809(0x86)+_0x3e3809(0xad),'Phlhi':_0x3ce8b8(0x168)+'um','Bofeb':_0x3e3809(0x168)+_0x3e3809(0xbc),'tnYiQ':_0xd1db78(0x105),'bLzFl':function(_0x26ff64,_0x5634fc,_0x488e15){return _0x26ff64(_0x5634fc,_0x488e15);},'Phixq':_0x2143fe(0xe5)+_0x2143fe(0x107)+']','nOTeB':_0x3e3809(0x182)+_0x2143fe(0x169),'OfBiV':function(_0x103b6b,_0x49c988){return _0x103b6b(_0x49c988);},'JYRFA':_0xd1db78(0x14c)+_0x3ce8b8(0x6e)+_0x3e3809(0x177)+_0xd1db78(0x101)+_0xd1db78(0x97)+_0x3ce8b8(0xcd),'cDijP':_0x3e3809(0xbd)+_0x3e3809(0x8f)+_0x2143fe(0x10a),'dtHxE':_0x3ce8b8(0x94)+_0x3e3809(0x131)+_0x2143fe(0xe3),'grkXV':function(_0x3f1be6,_0x5a9495){return _0x3f1be6==_0x5a9495;},'ysgWr':function(_0x2d64ff,_0x108347){return _0x2d64ff(_0x108347);},'xcPbj':_0x3e3809(0xc9)+_0x3f3329(0x69),'MiFWK':function(_0x169d70,_0xa5604c){return _0x169d70===_0xa5604c;},'fKdOK':_0x3f3329(0x80),'lRboq':function(_0x4042a9){return _0x4042a9();},'imNss':function(_0x3b7efb,_0x2e4d6a){return _0x3b7efb!==_0x2e4d6a;},'TyBQK':_0xd1db78(0x144),'wUrAU':_0x3e3809(0x82),'AlzfA':function(_0x42b38c,_0x5a5ccf){return _0x42b38c>_0x5a5ccf;},'LduuC':function(_0x38cc21){return _0x38cc21();},'SzwUT':_0x3ce8b8(0x11b),'DGMQR':_0x3ce8b8(0x8d),'NppBz':function(_0x31d881,_0x2fface){return _0x31d881!=_0x2fface;},'BQLDc':function(_0x21f8f7,_0x1067f9){return _0x21f8f7!==_0x1067f9;},'WyWsi':_0x3ce8b8(0x183),'gDwRv':_0xd1db78(0x7e)};if(_0x3b2c83[_0x3e3809(0xf5)](global[_0xd1db78(0x89)+'ng'][_0x3e3809(0x175)](_0x3b2c83[_0x2143fe(0x166)]),!![]))try{let _0x5c4bdd=[];switch(_0x3b2c83[_0x3ce8b8(0xf3)](readyCreate,_0x3b2c83[_0x3e3809(0x6c)])){case!![]:{if(_0x3b2c83[_0x3f3329(0xd4)](_0x3b2c83[_0x2143fe(0xe8)],_0x3b2c83[_0x2143fe(0xe8)])){if(_0x3b2c83[_0xd1db78(0xf5)](_0x3b2c83[_0x2143fe(0xa7)](getAll)[_0xd1db78(0xf6)+'h'],-0x263a+-0x1576+-0x3bb1*-0x1)){if(_0x3b2c83[_0x2143fe(0x13e)](_0x3b2c83[_0xd1db78(0x164)],_0x3b2c83[_0x3f3329(0xe4)]))return;else _0x3b2c83[_0x3f3329(0xb1)](_0x478462[_0x3e3809(0x175)](_0x3b2c83[_0x3f3329(0x16c)]),_0x24831d)&&(_0x237c38[_0x3f3329(0xd9)](_0x3b2c83[_0xd1db78(0x145)],![]),_0x1e8658[_0x3f3329(0xd9)](_0x3b2c83[_0x3ce8b8(0x150)],''),_0x43893e[_0x3ce8b8(0xd9)](_0x3b2c83[_0xd1db78(0x16c)],_0x5e77fd));}else{if(_0x3b2c83[_0x2143fe(0x185)](_0x3b2c83[_0x2143fe(0x12a)](getAll)[_0x3e3809(0xf6)+'h'],0x236c+0x66*-0x56+-0x127)){if(_0x3b2c83[_0x3ce8b8(0xd4)](_0x3b2c83[_0x3e3809(0x90)],_0x3b2c83[_0x3ce8b8(0x90)])){for(let _0xb124f8 of _0x3b2c83[_0xd1db78(0x12a)](getAll)){if(_0x3b2c83[_0x2143fe(0xd4)](_0x3b2c83[_0x3ce8b8(0x6d)],_0x3b2c83[_0x3e3809(0x6d)])){if(_0x3b2c83[_0x2143fe(0x154)](_0xb124f8[_0x2143fe(0xa4)][_0x3f3329(0x195)+_0x3ce8b8(0xc6)],undefined)){if(_0x3b2c83[_0x2143fe(0x160)](_0x3b2c83[_0x3f3329(0xc2)],_0x3b2c83[_0x3f3329(0x102)]))_0x5c4bdd[_0x3f3329(0xbe)](_0xb124f8[_0xd1db78(0xa4)][_0x2143fe(0x195)+_0xd1db78(0xc6)]);else{if(_0x15b31[_0x3e3809(0x179)][_0x3b2c83[_0xd1db78(0x17c)]])_0x3b2c83[_0x3e3809(0x158)](_0x4abe83,_0x5950d3[_0xd1db78(0x133)+_0x3ce8b8(0xb2)+_0x3e3809(0x113)],_0x3b2c83[_0xd1db78(0x11d)]),_0x39cf20=_0x3ebdf6[_0x3e3809(0xbb)+_0x3ce8b8(0x114)+'te'](_0x5099d6[_0x2143fe(0x108)+_0xd1db78(0x13f)](_0x52441b),_0x1db61e[_0x3e3809(0x179)][_0x3b2c83[_0x3ce8b8(0x17c)]]);else return _0x459c1f;}}else continue;}else{var _0x6c346a=_0x3b2c83[_0x3ce8b8(0xc3)][_0x3e3809(0x122)]('|'),_0xdbe4b2=-0x14b*-0x6+0x833+-0xff5;while(!![]){switch(_0x6c346a[_0xdbe4b2++]){case'0':_0x422304[_0x3f3329(0xd9)](_0x3b2c83[_0x3e3809(0x145)],![]);continue;case'1':_0x3b2c83[_0x2143fe(0x172)](_0x4b1370,_0x3b2c83[_0x3f3329(0x109)]);continue;case'2':_0x18df4a[_0x3e3809(0x89)+'ng'][_0x3e3809(0xd9)](_0x3b2c83[_0x3e3809(0x14b)],!![]);continue;case'3':_0x47e0f5[_0x3ce8b8(0xd9)](_0x3b2c83[_0x3e3809(0x150)],'');continue;case'4':_0x1ec9c2[_0xd1db78(0x89)+'ng'][_0xd1db78(0xd9)](_0x3b2c83[_0x2143fe(0x166)],![]);continue;}break;}}}_0x3b2c83[_0x3f3329(0xf3)](deleteAll,_0x5c4bdd);}else _0x36a78c=_0x476898;}}}else _0x3bc971[_0x3f3329(0x178)](_0x1f295c);}break;case![]:{}break;}}catch(_0x22c626){console[_0x3f3329(0x178)](_0x22c626);}};logger(getText[bfwhbjwdwd_0x4dc06a(0x125)+'xt'](Language[bfwhbjwdwd_0x4dc06a(0xc7)+bfwhbjwdwd_0x4599d4(0x6a)+'e'],''+prettyMilliseconds(Date[bfwhbjwdwd_0x202ae7(0x17d)]()-global[bfwhbjwdwd_0x5899f1(0xd2)+bfwhbjwdwd_0x4dc06a(0xf8)])),bfwhbjwdwd_0x5899f1(0xe5)+bfwhbjwdwd_0x2a23e1(0x107)+']');return data;
|
1246
|
+
}
|
1247
|
+
|
1248
|
+
module.exports = {
|
1249
|
+
isReadableStream:isReadableStream,
|
1250
|
+
get:get,
|
1251
|
+
post:post,
|
1252
|
+
postFormData:postFormData,
|
1253
|
+
generateThreadingID:generateThreadingID,
|
1254
|
+
generateOfflineThreadingID:generateOfflineThreadingID,
|
1255
|
+
getGUID:getGUID,
|
1256
|
+
getFrom:getFrom,
|
1257
|
+
makeParsable:makeParsable,
|
1258
|
+
arrToForm:arrToForm,
|
1259
|
+
getSignatureID:getSignatureID,
|
1260
|
+
getJar: request.jar,
|
1261
|
+
generateTimestampRelative:generateTimestampRelative,
|
1262
|
+
makeDefaults:makeDefaults,
|
1263
|
+
parseAndCheckLogin:parseAndCheckLogin,
|
1264
|
+
getGender: getGenderByPhysicalMethod,
|
1265
|
+
saveCookies,
|
1266
|
+
getType,
|
1267
|
+
_formatAttachment,
|
1268
|
+
formatHistoryMessage,
|
1269
|
+
formatID,
|
1270
|
+
formatMessage,
|
1271
|
+
formatDeltaEvent,
|
1272
|
+
formatDeltaMessage,
|
1273
|
+
formatProxyPresence,
|
1274
|
+
formatPresence,
|
1275
|
+
formatTyp,
|
1276
|
+
formatDeltaReadReceipt,
|
1277
|
+
formatCookie,
|
1278
|
+
formatThread,
|
1279
|
+
formatReadReceipt,
|
1280
|
+
formatRead,
|
1281
|
+
generatePresence,
|
1282
|
+
generateAccessiblityCookie,
|
1283
|
+
formatDate,
|
1284
|
+
decodeClientPayload,
|
1285
|
+
getAppState,
|
1286
|
+
getAdminTextMessageType,
|
1287
|
+
setProxy
|
1288
|
+
};
|