@evomap/evolver 1.91.2 → 1.92.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -7
- package/index.js +150 -71
- package/package.json +2 -1
- package/src/adapters/scripts/_runtimePaths.js +10 -1
- package/src/adapters/scripts/evolver-session-end.js +10 -1
- package/src/canonicalIdentityLock.js +455 -0
- package/src/evolve/guards.js +1 -1
- package/src/evolve/pipeline/collect.js +1 -1
- package/src/evolve/pipeline/dispatch.js +1 -1
- package/src/evolve/pipeline/enrich.js +1 -1
- package/src/evolve/pipeline/hub.js +1 -1
- package/src/evolve/pipeline/select.js +1 -1
- package/src/evolve/pipeline/signals.js +1 -1
- package/src/evolve/utils.js +1 -1
- package/src/evolve.js +1 -1
- package/src/gep/a2aProtocol.js +1 -5175
- package/src/gep/antiAbuseTelemetry.js +1 -233
- package/src/gep/assetStore.js +56 -12
- package/src/gep/autoDistillConv.js +1 -205
- package/src/gep/autoDistillLlm.js +1 -315
- package/src/gep/candidateEval.js +1 -92
- package/src/gep/candidates.js +1 -1
- package/src/gep/contentHash.js +1 -30
- package/src/gep/conversationDistiller.js +1 -270
- package/src/gep/conversationSniffer.js +1 -266
- package/src/gep/crypto.js +1 -93
- package/src/gep/curriculum.js +1 -1
- package/src/gep/deviceId.js +1 -218
- package/src/gep/envFingerprint.js +1 -118
- package/src/gep/epigenetics.js +1 -31
- package/src/gep/execBridge.js +1 -712
- package/src/gep/explore.js +1 -289
- package/src/gep/hash.js +1 -15
- package/src/gep/hubFetch.js +1 -672
- package/src/gep/hubReview.js +1 -212
- package/src/gep/hubSearch.js +1 -544
- package/src/gep/hubVerify.js +1 -306
- package/src/gep/learningSignals.js +1 -1
- package/src/gep/memoryGraph.js +1 -1449
- package/src/gep/memoryGraphAdapter.js +1 -203
- package/src/gep/mutation.js +1 -1
- package/src/gep/narrativeMemory.js +1 -1
- package/src/gep/openPRRegistry.js +1 -205
- package/src/gep/personality.js +1 -1
- package/src/gep/policyCheck.js +1 -599
- package/src/gep/prompt.js +1 -1
- package/src/gep/recallInject.js +1 -409
- package/src/gep/recallVerifier.js +1 -318
- package/src/gep/reflection.js +1 -1
- package/src/gep/savingsCore.js +1 -1
- package/src/gep/schemas/gene.js +2 -0
- package/src/gep/selector.js +1 -1
- package/src/gep/skillDistiller.js +1 -1294
- package/src/gep/solidify.js +1 -1
- package/src/gep/strategy.js +1 -136
- package/src/gep/syncAsset.js +1 -0
- package/src/gep/tokenSavings.js +1 -1
- package/src/gep/trajectoryExport.js +1 -3841
- package/src/gep/workspaceKeychain.js +1 -174
- package/src/proxy/extensions/traceControl.js +1 -123
- package/src/proxy/index.js +136 -8
- package/src/proxy/inject.js +1 -52
- package/src/proxy/lifecycle/manager.js +279 -18
- package/src/proxy/mailbox/state.js +60 -29
- package/src/proxy/trace/extractor.js +1 -2355
- package/src/proxy/trace/usage.js +1 -105
package/src/gep/recallInject.js
CHANGED
|
@@ -1,409 +1 @@
|
|
|
1
|
-
// recallInject.js
|
|
2
|
-
// Harness-agnostic core for "runtime asset injection" (P4-c): when a general
|
|
3
|
-
// agent is about to work on a task, find GEP assets (Hub genes + local genes)
|
|
4
|
-
// that match the task and surface a distilled hint the agent can use.
|
|
5
|
-
//
|
|
6
|
-
// This module is PURE: no stdin/stdout, no process.exit. It is driven by the
|
|
7
|
-
// per-harness hook entrypoint (src/adapters/scripts/evolver-task-recall.js) and
|
|
8
|
-
// is unit-testable in isolation. The entrypoint owns the fail-open latch +
|
|
9
|
-
// watchdog + stdout shape; this module owns the matching/gating/logging.
|
|
10
|
-
//
|
|
11
|
-
// HARD INVARIANTS (do not regress — these are the P4-c scope contract):
|
|
12
|
-
// 1. SEARCH-ONLY. We call fetchSemanticResults (a free GET
|
|
13
|
-
// /a2a/assets/semantic-search) and NEVER hubSearch()/fetchAssetById() —
|
|
14
|
-
// Phase-2 fetch SPENDS CREDITS (hubSearch.js:379 logs "Fetch cost"). The
|
|
15
|
-
// recall path must never spend a credit, in any mode. No money surface.
|
|
16
|
-
// 2. LLM-FREE / NO CHILD PROCESS. We extract signals with ONLY the pure
|
|
17
|
-
// extractors _extractRegex + _extractKeywordScore. We must NOT call
|
|
18
|
-
// extractSignals() — it calls _extractLLM(), a SYNC execFileSync('curl',
|
|
19
|
-
// ['-m','10',...]) that (a) blocks the event loop for up to 10s so the
|
|
20
|
-
// entrypoint watchdog can't fire, and (b) ships a raw-prompt corpus to the
|
|
21
|
-
// Hub. Both are forbidden here.
|
|
22
|
-
// 3. SHADOW-FIRST. In 'shadow' we compute + log what WOULD inject but return
|
|
23
|
-
// inject:false (the entrypoint injects nothing). In 'off' the entrypoint
|
|
24
|
-
// never calls us. Only 'enforce' returns inject:true.
|
|
25
|
-
// 4. HIGH-CONFIDENCE ONLY. Hub rows must clear the similarity HIGH band
|
|
26
|
-
// (>= EVOLVER_RECALL_MIN_SIM, default 0.75). Local genes must have >=1
|
|
27
|
-
// real signal-pattern hit (not bag-of-words noise).
|
|
28
|
-
// 5. NO Hub used_asset_ids / reuse-credit reporting. Attribution is a LOCAL
|
|
29
|
-
// JSONL artifact only (assetCallLog). Promoting it to Hub credit needs a
|
|
30
|
-
// stronger usage signal AND team sign-off (it changes money).
|
|
31
|
-
|
|
32
|
-
const path = require('path');
|
|
33
|
-
|
|
34
|
-
// ---------------------------------------------------------------------------
|
|
35
|
-
// Mode parsing: EVOLVER_RECALL_MODE ∈ off (default) | shadow | enforce.
|
|
36
|
-
// Anything unknown/absent -> off (safest). Mirrors the conv-distill/P3 cadence
|
|
37
|
-
// of a single 3-state env var.
|
|
38
|
-
// ---------------------------------------------------------------------------
|
|
39
|
-
function getMode() {
|
|
40
|
-
const v = String(process.env.EVOLVER_RECALL_MODE || '').toLowerCase().trim();
|
|
41
|
-
return v === 'shadow' || v === 'enforce' ? v : 'off';
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
// Similarity HIGH band. Ported as an in-repo literal from
|
|
45
|
-
// gep-mcp-server/src/searchEnrich.js (SIMILARITY_BAND_HIGH = 0.75) — that file
|
|
46
|
-
// is a separate ESM repo and must NOT be imported. Operator-tunable.
|
|
47
|
-
function getMinSim() {
|
|
48
|
-
const n = Number(process.env.EVOLVER_RECALL_MIN_SIM);
|
|
49
|
-
return Number.isFinite(n) && n > 0 && n <= 1 ? n : 0.75;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// Max assets injected per turn. Default 1 (top hit only) to minimise context
|
|
53
|
-
// pollution; the entrypoint blocks every prompt, so we stay terse.
|
|
54
|
-
function getMaxInject() {
|
|
55
|
-
const n = parseInt(process.env.EVOLVER_RECALL_MAX, 10);
|
|
56
|
-
return Number.isFinite(n) && n > 0 && n <= 10 ? n : 1;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// Hard ceiling on injected text length (defense against a giant nl_summary
|
|
60
|
-
// bloating the agent's context window).
|
|
61
|
-
const INJECT_CHAR_CEILING = 800;
|
|
62
|
-
const SUMMARY_CLIP = 200;
|
|
63
|
-
|
|
64
|
-
// ---------------------------------------------------------------------------
|
|
65
|
-
// LLM-free signal extraction. Uses ONLY the pure extractors. We deliberately
|
|
66
|
-
// do NOT call signals.extractSignals (curl/event-loop-block, see invariant 2)
|
|
67
|
-
// and do NOT call _mergeSignals (it console.log()s to STDOUT — which would
|
|
68
|
-
// corrupt the hook's single-JSON stdout contract; we inline a Set-merge).
|
|
69
|
-
// ---------------------------------------------------------------------------
|
|
70
|
-
function extractSignalsPure(prompt) {
|
|
71
|
-
const corpus = String(prompt || '');
|
|
72
|
-
const lower = corpus.toLowerCase();
|
|
73
|
-
const errorHit = /\b(error|exception|fail(?:ed|ure)?)\b|错误|异常|报错|失败/i.test(lower);
|
|
74
|
-
|
|
75
|
-
let regexSignals = [];
|
|
76
|
-
let scoreSignals = [];
|
|
77
|
-
try {
|
|
78
|
-
const sig = require('./signals');
|
|
79
|
-
regexSignals = sig._extractRegex(corpus, lower, errorHit) || [];
|
|
80
|
-
scoreSignals = sig._extractKeywordScore(lower) || [];
|
|
81
|
-
} catch (_) {
|
|
82
|
-
// signals.js unreachable — degrade to no signals (local/Hub then no-op).
|
|
83
|
-
return [];
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
// Inline Set-merge (do NOT use sig._mergeSignals — it writes to stdout).
|
|
87
|
-
const merged = new Set();
|
|
88
|
-
for (const s of regexSignals) merged.add(s);
|
|
89
|
-
for (const s of scoreSignals) merged.add(s);
|
|
90
|
-
// 'stable_success_plateau' is the extractor's "nothing interesting" default;
|
|
91
|
-
// it carries no task content, so drop it to avoid a noise query.
|
|
92
|
-
merged.delete('stable_success_plateau');
|
|
93
|
-
return Array.from(merged);
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
// The closed-vocabulary extractors above only fire on the evolver's own corpus
|
|
97
|
-
// shapes (errors, specific feature-request phrasings). A normal task prompt
|
|
98
|
-
// ("add retry with backoff to the http client") yields NO closed-vocab signal,
|
|
99
|
-
// so on its own the recall hook would almost never fire for real coding work.
|
|
100
|
-
// Embedding-based semantic search wants the actual task WORDS, so we also add a
|
|
101
|
-
// token projection of the prompt. tokenize() drops stop-words and short tokens;
|
|
102
|
-
// buildSemanticQuery (inside fetchSemanticResults) caps the outgoing query to
|
|
103
|
-
// 12 terms, so this stays a bounded token-projection — never the verbatim
|
|
104
|
-
// prompt. Capped here too as defense-in-depth.
|
|
105
|
-
const MAX_QUERY_TOKENS = 12;
|
|
106
|
-
function buildSignalList(prompt) {
|
|
107
|
-
const coreSignals = extractSignalsPure(prompt);
|
|
108
|
-
let tokens = [];
|
|
109
|
-
try {
|
|
110
|
-
const { tokenize } = require('./selector');
|
|
111
|
-
// De-dup while preserving order, then cap.
|
|
112
|
-
const seen = new Set();
|
|
113
|
-
for (const t of tokenize(prompt)) {
|
|
114
|
-
if (!seen.has(t)) { seen.add(t); tokens.push(t); }
|
|
115
|
-
if (tokens.length >= MAX_QUERY_TOKENS) break;
|
|
116
|
-
}
|
|
117
|
-
} catch (_) { tokens = []; }
|
|
118
|
-
|
|
119
|
-
const merged = new Set();
|
|
120
|
-
for (const s of coreSignals) merged.add(s);
|
|
121
|
-
for (const t of tokens) merged.add(t);
|
|
122
|
-
return Array.from(merged);
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
// ---------------------------------------------------------------------------
|
|
126
|
-
// Hub search — SEARCH-ONLY, credit-free. Returns the rows that clear the HIGH
|
|
127
|
-
// similarity band, best-effort self-suppressed, never spending a credit.
|
|
128
|
-
// ---------------------------------------------------------------------------
|
|
129
|
-
async function searchHub(signalList, timeoutMs) {
|
|
130
|
-
let hs, a2a;
|
|
131
|
-
try {
|
|
132
|
-
hs = require('./hubSearch');
|
|
133
|
-
a2a = require('./a2aProtocol');
|
|
134
|
-
} catch (_) {
|
|
135
|
-
return [];
|
|
136
|
-
}
|
|
137
|
-
// Honor the HUBSEARCH_SEMANTIC kill-switch the same way hubSearch() does:
|
|
138
|
-
// an operator who set it to false/0 to stop semantic Hub traffic must not
|
|
139
|
-
// have this hook keep issuing semantic GETs on every prompt (Bugbot #183
|
|
140
|
-
// medium). When disabled -> no Hub call, local genes only.
|
|
141
|
-
try { if (typeof hs.isSemanticEnabled === 'function' && !hs.isSemanticEnabled()) return []; } catch (_) {}
|
|
142
|
-
// Resolve the Hub URL via a2aProtocol.getHubUrl(), the canonical resolver
|
|
143
|
-
// that honors BOTH A2A_HUB_URL and the legacy EVOMAP_HUB_URL fallback.
|
|
144
|
-
// hubSearch.getHubUrl() reads only A2A_HUB_URL, so a node configured with the
|
|
145
|
-
// legacy var alone would silently skip recall while every other Hub feature
|
|
146
|
-
// (auth, heartbeat, memory) still worked (Bugbot #183 medium). Strip trailing
|
|
147
|
-
// slashes to match hubSearch's own normalization. Fall back to hs.getHubUrl()
|
|
148
|
-
// only if a2a is unavailable.
|
|
149
|
-
let hubUrl = '';
|
|
150
|
-
try {
|
|
151
|
-
hubUrl = (typeof a2a.getHubUrl === 'function' ? a2a.getHubUrl() : hs.getHubUrl()) || '';
|
|
152
|
-
hubUrl = hubUrl.replace(/\/+$/, '');
|
|
153
|
-
} catch (_) { hubUrl = ''; }
|
|
154
|
-
// Air-gapped / no Hub configured -> zero egress, local genes only.
|
|
155
|
-
if (!hubUrl) return [];
|
|
156
|
-
|
|
157
|
-
let headers = {};
|
|
158
|
-
try { headers = a2a.buildHubHeaders(); } catch (_) { headers = {}; }
|
|
159
|
-
|
|
160
|
-
let rows = [];
|
|
161
|
-
try {
|
|
162
|
-
// fetchSemanticResults already owns an AbortController bound to timeoutMs
|
|
163
|
-
// and returns [] on timeout/error/non-200 (hubSearch.js:160). It hits
|
|
164
|
-
// GET /a2a/assets/semantic-search?...&type=Gene -> genes only, no fetch,
|
|
165
|
-
// no credit. The query is a token-trimmed projection of the signals
|
|
166
|
-
// (buildSemanticQuery), NOT the verbatim prompt.
|
|
167
|
-
rows = await hs.fetchSemanticResults(hubUrl, headers, signalList, timeoutMs);
|
|
168
|
-
} catch (_) {
|
|
169
|
-
return [];
|
|
170
|
-
}
|
|
171
|
-
if (!Array.isArray(rows)) return [];
|
|
172
|
-
|
|
173
|
-
const minSim = getMinSim();
|
|
174
|
-
let selfId = '';
|
|
175
|
-
try { selfId = a2a.getNodeId() || ''; } catch (_) { selfId = ''; }
|
|
176
|
-
|
|
177
|
-
const out = [];
|
|
178
|
-
for (const r of rows) {
|
|
179
|
-
if (!r || typeof r !== 'object') continue;
|
|
180
|
-
const sim = Number(r._semantic_similarity);
|
|
181
|
-
if (!Number.isFinite(sim) || sim < minSim) continue; // drop drag-net matches
|
|
182
|
-
// Best-effort self-suppression: only when source_node_id is present (the
|
|
183
|
-
// semantic endpoint often omits it — do NOT treat absence as a hard gate).
|
|
184
|
-
if (selfId && r.source_node_id && r.source_node_id === selfId) continue;
|
|
185
|
-
out.push({
|
|
186
|
-
asset_id: r.asset_id || r.assetId || '',
|
|
187
|
-
source_node_id: r.source_node_id || '',
|
|
188
|
-
chain_id: r.chain_id || '',
|
|
189
|
-
similarity: sim,
|
|
190
|
-
title: r.short_title || r.nl_title || r.name || '',
|
|
191
|
-
summary: r.nl_summary || r.summary || '',
|
|
192
|
-
origin: 'hub',
|
|
193
|
-
});
|
|
194
|
-
}
|
|
195
|
-
return out;
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
// ---------------------------------------------------------------------------
|
|
199
|
-
// Local genes — match against on-disk genes with a real signal-pattern hit.
|
|
200
|
-
// We use the EXPORTED scorers (scoreGene is NOT exported, and selectGene uses
|
|
201
|
-
// Math.random + env I/O so it's unsuitable). Require >=1 pattern hit so we
|
|
202
|
-
// inject only genes whose signals_match actually fire for this task, not
|
|
203
|
-
// bag-of-words near-misses.
|
|
204
|
-
// ---------------------------------------------------------------------------
|
|
205
|
-
function matchLocalGenes(signalList) {
|
|
206
|
-
let genes = [];
|
|
207
|
-
let sel;
|
|
208
|
-
try {
|
|
209
|
-
genes = require('./assetStore').loadGenes() || [];
|
|
210
|
-
sel = require('./selector');
|
|
211
|
-
} catch (_) {
|
|
212
|
-
return [];
|
|
213
|
-
}
|
|
214
|
-
if (!Array.isArray(genes) || genes.length === 0 || !sel) return [];
|
|
215
|
-
|
|
216
|
-
const out = [];
|
|
217
|
-
for (const gene of genes) {
|
|
218
|
-
if (!gene || gene.type !== 'Gene') continue;
|
|
219
|
-
const patterns = Array.isArray(gene.signals_match) ? gene.signals_match : [];
|
|
220
|
-
let hits = 0;
|
|
221
|
-
for (const p of patterns) {
|
|
222
|
-
try { if (sel.matchPatternToSignals(p, signalList)) hits++; } catch (_) { /* skip */ }
|
|
223
|
-
}
|
|
224
|
-
if (hits < 1) continue; // require a real pattern hit, not noise
|
|
225
|
-
let sem = 0;
|
|
226
|
-
try { sem = sel.scoreGeneSemantic(gene, signalList) || 0; } catch (_) { sem = 0; }
|
|
227
|
-
// Many genes (incl. genesis genes) carry no `summary`. Fall back to a terse
|
|
228
|
-
// projection of the strategy/avoid text or the matched signal patterns so
|
|
229
|
-
// the injected line is actionable rather than a dangling "...: " (caught by
|
|
230
|
-
// real-gene E2E where synthetic fixtures had summaries).
|
|
231
|
-
let summary = (gene.summary || '').toString().trim();
|
|
232
|
-
if (!summary && gene.strategy && typeof gene.strategy === 'object') {
|
|
233
|
-
const pieces = [];
|
|
234
|
-
if (Array.isArray(gene.strategy.steps)) pieces.push(gene.strategy.steps.slice(0, 3).join('; '));
|
|
235
|
-
if (typeof gene.strategy.approach === 'string') pieces.push(gene.strategy.approach);
|
|
236
|
-
summary = pieces.filter(Boolean).join(' — ').trim();
|
|
237
|
-
}
|
|
238
|
-
if (!summary) {
|
|
239
|
-
const pats = patterns
|
|
240
|
-
.map(p => String(p).split('|')[0]) // first alias of each multi-lang pattern
|
|
241
|
-
.filter(p => p && !p.startsWith('/'))
|
|
242
|
-
.slice(0, 4);
|
|
243
|
-
if (pats.length) summary = 'matches: ' + pats.join(', ');
|
|
244
|
-
}
|
|
245
|
-
out.push({
|
|
246
|
-
asset_id: gene.asset_id || '',
|
|
247
|
-
source_node_id: gene.source_node_id || gene.author_node_id || '',
|
|
248
|
-
chain_id: gene.chain_id || '',
|
|
249
|
-
// Map local score into a 0..1-ish band for ranking next to Hub similarity.
|
|
250
|
-
// hits dominate; semantic cosine breaks ties.
|
|
251
|
-
similarity: Math.min(1, 0.75 + 0.05 * hits + 0.1 * sem),
|
|
252
|
-
title: gene.id || gene.short_title || '',
|
|
253
|
-
summary,
|
|
254
|
-
origin: 'local',
|
|
255
|
-
_hits: hits,
|
|
256
|
-
});
|
|
257
|
-
}
|
|
258
|
-
return out;
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
// ---------------------------------------------------------------------------
|
|
262
|
-
// Build the injected text. Distilled hint, NOT raw JSON. Each line uses
|
|
263
|
-
// nl_summary/title (always present in list/search responses) — never
|
|
264
|
-
// payload.strategy (often empty for distilled/sybil assets). Hard char ceiling.
|
|
265
|
-
// ---------------------------------------------------------------------------
|
|
266
|
-
// A candidate is "hollow" when it has neither a title nor a summary: there is
|
|
267
|
-
// nothing actionable to render (a dangling "Gene "": " helps no one). Hollow
|
|
268
|
-
// candidates are excluded from BOTH the injected text and the attribution log,
|
|
269
|
-
// so the log can never claim an asset was injected that never appeared in the
|
|
270
|
-
// hook context (Bugbot #183 low: log/inject must agree by construction).
|
|
271
|
-
function isRenderable(d) {
|
|
272
|
-
const title = (d && d.title ? String(d.title) : '').trim();
|
|
273
|
-
const summary = (d && d.summary ? String(d.summary) : '').trim();
|
|
274
|
-
return !!(title || summary);
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
function buildInjectText(decided) {
|
|
278
|
-
const renderable = (decided || []).filter(isRenderable);
|
|
279
|
-
if (!renderable.length) return '';
|
|
280
|
-
const lines = ['[Evolver — relevant prior capability]'];
|
|
281
|
-
let anyPublished = false;
|
|
282
|
-
for (const d of renderable) {
|
|
283
|
-
const title = (d.title || '').toString().slice(0, 80);
|
|
284
|
-
const summary = (d.summary || '').toString().replace(/\s+/g, ' ').trim().slice(0, SUMMARY_CLIP);
|
|
285
|
-
const sim = d.similarity != null ? d.similarity.toFixed(2) : '?';
|
|
286
|
-
const idTag = d.asset_id ? `asset ${d.asset_id}` : 'local, unpublished';
|
|
287
|
-
if (d.asset_id) anyPublished = true;
|
|
288
|
-
lines.push(`- ${title ? `Gene "${title}"` : 'Gene'} (${idTag}, sim ${sim})${summary ? ': ' + summary : ''}`);
|
|
289
|
-
}
|
|
290
|
-
lines.push('A prior distilled approach may fit this task. Adapt it; verify before applying.');
|
|
291
|
-
if (anyPublished) lines.push('To reuse a published asset: `gep_reuse <asset_id>` (or `gep_recall`).');
|
|
292
|
-
const text = lines.join('\n');
|
|
293
|
-
return text.length > INJECT_CHAR_CEILING ? text.slice(0, INJECT_CHAR_CEILING) : text;
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
// ---------------------------------------------------------------------------
|
|
297
|
-
// Local reuse logging. Records WHICH assets were (would be) injected, keyed by
|
|
298
|
-
// a stable run_id derived from the session, so a later Stop hook can correlate
|
|
299
|
-
// "asset injected -> session outcome" LOCALLY. This is correlational/local
|
|
300
|
-
// only — it is NOT Hub credit and must not be promoted to one without sign-off.
|
|
301
|
-
// ---------------------------------------------------------------------------
|
|
302
|
-
function logInjections(decided, mode, runId, signalList) {
|
|
303
|
-
let logAssetCall;
|
|
304
|
-
try { ({ logAssetCall } = require('./assetCallLog')); } catch (_) { return; }
|
|
305
|
-
const action = mode === 'enforce' ? 'asset_inject' : 'asset_inject_shadow';
|
|
306
|
-
for (const d of decided) {
|
|
307
|
-
try {
|
|
308
|
-
logAssetCall({
|
|
309
|
-
run_id: runId,
|
|
310
|
-
action,
|
|
311
|
-
asset_id: d.asset_id || undefined,
|
|
312
|
-
asset_type: 'Gene',
|
|
313
|
-
source_node_id: d.source_node_id || undefined,
|
|
314
|
-
chain_id: d.chain_id || undefined,
|
|
315
|
-
score: d.similarity,
|
|
316
|
-
signals: signalList.slice(0, 8),
|
|
317
|
-
reason: d.origin === 'hub' ? 'hub_semantic_high_band' : 'local_gene_pattern_hit',
|
|
318
|
-
extra: { via: 'task_recall', attribution: 'correlational_local', origin: d.origin },
|
|
319
|
-
});
|
|
320
|
-
} catch (_) { /* logging is best-effort; never block injection */ }
|
|
321
|
-
}
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
// ---------------------------------------------------------------------------
|
|
325
|
-
// Entry point of the core. Returns:
|
|
326
|
-
// { inject: bool, text: string|null, decided: [], dropped: number, signals: [] }
|
|
327
|
-
// inject is true ONLY in enforce mode with >=1 decided asset. In shadow we log
|
|
328
|
-
// but return inject:false. Throwing is acceptable — the hook entrypoint wraps
|
|
329
|
-
// this in try/.catch -> finish({}) (fail-open).
|
|
330
|
-
// ---------------------------------------------------------------------------
|
|
331
|
-
async function recallForTask(opts) {
|
|
332
|
-
const o = opts || {};
|
|
333
|
-
const mode = o.mode || getMode();
|
|
334
|
-
if (mode === 'off') return { inject: false, text: null, decided: [], dropped: 0, signals: [] };
|
|
335
|
-
|
|
336
|
-
const signalList = buildSignalList(o.prompt);
|
|
337
|
-
if (!signalList.length) return { inject: false, text: null, decided: [], dropped: 0, signals: [] };
|
|
338
|
-
|
|
339
|
-
// Do LOCAL gene work (synchronous disk I/O via loadGenes + ranking) BEFORE
|
|
340
|
-
// the Hub await, so it runs while the full budget is available — never after
|
|
341
|
-
// the Hub search has consumed most of the watchdog window (Bugbot #183
|
|
342
|
-
// medium: post-await local work could overrun the watchdog and spuriously
|
|
343
|
-
// skip injection). After the Hub await, only in-memory merge/text/log remain.
|
|
344
|
-
const localRows = matchLocalGenes(signalList);
|
|
345
|
-
|
|
346
|
-
// Bound the Hub call by the time REMAINING until the entrypoint's absolute
|
|
347
|
-
// deadline (passed as deadlineMs, ms-since-epoch), minus a safety margin for
|
|
348
|
-
// the in-memory post-processing + finish(). If too little remains, skip the
|
|
349
|
-
// Hub call (local genes still apply). Falls back to the static timeoutMs when
|
|
350
|
-
// no deadline is supplied (e.g. unit tests / non-hook callers).
|
|
351
|
-
const POST_AWAIT_SAFETY_MS = 150;
|
|
352
|
-
let hubBudget = Number.isFinite(o.timeoutMs) && o.timeoutMs > 0 ? o.timeoutMs : 2000;
|
|
353
|
-
if (Number.isFinite(o.deadlineMs)) {
|
|
354
|
-
const remaining = o.deadlineMs - Date.now() - POST_AWAIT_SAFETY_MS;
|
|
355
|
-
hubBudget = Math.min(hubBudget, remaining);
|
|
356
|
-
}
|
|
357
|
-
|
|
358
|
-
// Hub (search-only, credit-free), only if there's a usable budget left.
|
|
359
|
-
const hubRows = hubBudget >= 300 ? await searchHub(signalList, hubBudget) : [];
|
|
360
|
-
|
|
361
|
-
const seen = new Set();
|
|
362
|
-
const candidates = [];
|
|
363
|
-
let dropped = 0;
|
|
364
|
-
for (const r of [...hubRows, ...localRows]) {
|
|
365
|
-
const key = r.asset_id || `${r.origin}:${r.title}`;
|
|
366
|
-
if (key && seen.has(key)) { dropped++; continue; } // de-dup local vs hub
|
|
367
|
-
if (key) seen.add(key);
|
|
368
|
-
candidates.push(r);
|
|
369
|
-
}
|
|
370
|
-
candidates.sort((a, b) => (b.similarity || 0) - (a.similarity || 0));
|
|
371
|
-
|
|
372
|
-
const topN = candidates.slice(0, getMaxInject());
|
|
373
|
-
dropped += Math.max(0, candidates.length - topN.length);
|
|
374
|
-
|
|
375
|
-
// Filter out hollow candidates ONCE, so the injected text and the attribution
|
|
376
|
-
// log operate on the exact same set — the log can never claim an asset was
|
|
377
|
-
// injected that wasn't rendered into the hook context (Bugbot #183 low).
|
|
378
|
-
const decided = topN.filter(isRenderable);
|
|
379
|
-
dropped += topN.length - decided.length;
|
|
380
|
-
if (!decided.length) return { inject: false, text: null, decided: [], dropped, signals: signalList };
|
|
381
|
-
|
|
382
|
-
const text = buildInjectText(decided);
|
|
383
|
-
if (!text) return { inject: false, text: null, decided: [], dropped, signals: signalList };
|
|
384
|
-
|
|
385
|
-
const runId = o.runId || ('recall:' + (o.sessionId || 'unknown'));
|
|
386
|
-
logInjections(decided, mode, runId, signalList);
|
|
387
|
-
|
|
388
|
-
// SHADOW returns the computed text (for tests/inspection) but inject:false —
|
|
389
|
-
// the entrypoint only injects when inject is true (enforce).
|
|
390
|
-
return {
|
|
391
|
-
inject: mode === 'enforce',
|
|
392
|
-
text,
|
|
393
|
-
decided,
|
|
394
|
-
dropped,
|
|
395
|
-
signals: signalList,
|
|
396
|
-
};
|
|
397
|
-
}
|
|
398
|
-
|
|
399
|
-
module.exports = {
|
|
400
|
-
recallForTask,
|
|
401
|
-
// exported for unit tests:
|
|
402
|
-
getMode,
|
|
403
|
-
getMinSim,
|
|
404
|
-
getMaxInject,
|
|
405
|
-
extractSignalsPure,
|
|
406
|
-
buildSignalList,
|
|
407
|
-
buildInjectText,
|
|
408
|
-
_internals: { searchHub, matchLocalGenes, logInjections },
|
|
409
|
-
};
|
|
1
|
+
const _0x1fd2ac=_0x9525;(function(_0x29f71,_0x47370e){const _0x41a3d0=_0x9525,_0x1067f2=_0x29f71();while(!![]){try{const _0x28bdeb=parseInt(_0x41a3d0(0x272,'\x57\x34\x67\x6d'))/(-0x12bf*0x1+-0x2*0x5d5+0x1e6a)*(-parseInt(_0x41a3d0(0x251,'\x32\x43\x5b\x68'))/(0xcca*0x1+0x7c4+-0x14*0x107))+parseInt(_0x41a3d0(0x2f9,'\x6d\x40\x31\x79'))/(-0x8*0x4a3+-0x3ed+0x2908)*(parseInt(_0x41a3d0(0x303,'\x6b\x74\x69\x35'))/(0x1810+-0x1582+0x5*-0x82))+-parseInt(_0x41a3d0(0x306,'\x35\x74\x6f\x6e'))/(-0x233c+0x6f*0x4+0x1*0x2185)*(-parseInt(_0x41a3d0(0x2e3,'\x5d\x46\x4b\x5a'))/(-0x1b2*-0x14+-0x12f*0x1+-0x20b3))+parseInt(_0x41a3d0(0x1e9,'\x36\x21\x43\x44'))/(0x49*0x36+0xada+-0x1a39)+-parseInt(_0x41a3d0(0x1e0,'\x69\x29\x64\x79'))/(0x991*-0x1+0x2470+-0x1ad7)+parseInt(_0x41a3d0(0x25d,'\x30\x55\x4c\x6d'))/(0xf9d*0x1+-0x15f9+-0x1*-0x665)+-parseInt(_0x41a3d0(0x14a,'\x57\x50\x69\x52'))/(-0x1*0x139d+-0x2183+0x352a)*(parseInt(_0x41a3d0(0x280,'\x29\x7a\x30\x49'))/(0xfd7*-0x1+0x1401*-0x1+0x23e3*0x1));if(_0x28bdeb===_0x47370e)break;else _0x1067f2['push'](_0x1067f2['shift']());}catch(_0x102345){_0x1067f2['push'](_0x1067f2['shift']());}}}(_0x237b,-0x7f1be+0x53e*0x6d+0x9b100));const _0x22be4d=(function(){const _0x14b455=_0x9525,_0x46bcb6={};_0x46bcb6[_0x14b455(0x293,'\x35\x74\x6f\x6e')]=function(_0x59dcdf,_0x489c2c){return _0x59dcdf!=_0x489c2c;},_0x46bcb6[_0x14b455(0x16a,'\x5d\x46\x4b\x5a')]=_0x14b455(0x187,'\x35\x6e\x69\x4b'),_0x46bcb6[_0x14b455(0x2fc,'\x38\x26\x35\x56')]=function(_0x3f0d8b,_0x2e6a92){return _0x3f0d8b+_0x2e6a92;},_0x46bcb6['\x75\x57\x6e\x6b\x59']='\x63\x73\x54\x53\x57';const _0x5b6d22=_0x46bcb6;let _0x4f4281=!![];return function(_0x5d1864,_0x8f59e1){const _0x3c5423=_0x14b455,_0x5f4ebd={'\x6d\x4c\x55\x67\x47':'\x5b\x45\x76\x6f\x6c\x76\x65\x72'+_0x3c5423(0x154,'\x54\x61\x73\x38')+_0x3c5423(0x267,'\x4b\x24\x70\x25')+_0x3c5423(0x18a,'\x61\x46\x6e\x7a')+_0x3c5423(0x207,'\x72\x77\x77\x4c'),'\x75\x54\x42\x66\x6b':function(_0x1266d8,_0x33a075){const _0x4a7e50=_0x3c5423;return _0x5b6d22[_0x4a7e50(0x212,'\x38\x26\x35\x56')](_0x1266d8,_0x33a075);},'\x59\x6a\x57\x44\x73':_0x5b6d22['\x4b\x6d\x6a\x6e\x6e'],'\x76\x7a\x41\x48\x4a':function(_0x3e40fe,_0x3ef182){const _0x4b15cf=_0x3c5423;return _0x5b6d22[_0x4b15cf(0x253,'\x4d\x6e\x30\x38')](_0x3e40fe,_0x3ef182);},'\x4f\x63\x4d\x66\x4f':_0x3c5423(0x1e4,'\x69\x44\x4d\x4f')+_0x3c5423(0x1fe,'\x5e\x40\x6a\x75')+'\x64\x20\x61\x70\x70\x72\x6f\x61'+_0x3c5423(0x265,'\x75\x72\x46\x49')+_0x3c5423(0x19a,'\x5b\x5b\x59\x69')+_0x3c5423(0x2ad,'\x36\x21\x43\x44')+_0x3c5423(0x2c6,'\x73\x4c\x34\x4f')+_0x3c5423(0x309,'\x23\x35\x6a\x5a')+'\x65\x66\x6f\x72\x65\x20\x61\x70'+_0x3c5423(0x25c,'\x38\x26\x35\x56'),'\x57\x4b\x7a\x6e\x55':_0x3c5423(0x278,'\x69\x44\x4d\x4f')+_0x3c5423(0x184,'\x21\x65\x76\x7a')+_0x3c5423(0x230,'\x69\x44\x4d\x4f')+_0x3c5423(0x238,'\x33\x79\x32\x72')+_0x3c5423(0x318,'\x5b\x5b\x59\x69')+'\x61\x73\x73\x65\x74\x5f\x69\x64'+_0x3c5423(0x302,'\x23\x35\x6a\x5a')+_0x3c5423(0x16c,'\x6c\x25\x53\x78')+'\x6c\x6c\x60\x29\x2e','\x41\x58\x4c\x41\x74':function(_0x25df92,_0x459c04){return _0x25df92>_0x459c04;},'\x4b\x74\x6b\x76\x44':function(_0x5462a7,_0xa41502){return _0x5462a7===_0xa41502;},'\x64\x72\x57\x47\x61':_0x5b6d22[_0x3c5423(0x277,'\x32\x43\x5b\x68')]},_0x5bbdd9=_0x4f4281?function(){const _0x2452e4=_0x3c5423;if(_0x5f4ebd[_0x2452e4(0x183,'\x61\x46\x6e\x7a')](_0x2452e4(0x16d,'\x21\x65\x76\x7a'),_0x5f4ebd[_0x2452e4(0x237,'\x72\x77\x77\x4c')])){const _0x55f371=(_0x27dff3||[])['\x66\x69\x6c\x74\x65\x72'](_0x28ecb8);if(!_0x55f371['\x6c\x65\x6e\x67\x74\x68'])return'';const _0x1cb3d4=[_0x5f4ebd['\x6d\x4c\x55\x67\x47']];let _0x49f494=![];for(const _0x5543f8 of _0x55f371){const _0xa19681=(_0x5543f8[_0x2452e4(0x162,'\x6b\x74\x69\x35')]||'')[_0x2452e4(0x14f,'\x75\x72\x46\x49')]()['\x73\x6c\x69\x63\x65'](0x50a*0x7+0x4*-0x407+-0x132a,0x1c2a+-0x1b40+-0x9a),_0x2d8af2=(_0x5543f8[_0x2452e4(0x295,'\x61\x46\x6e\x7a')]||'')[_0x2452e4(0x1b5,'\x79\x5e\x67\x76')]()[_0x2452e4(0x292,'\x73\x4c\x34\x4f')](/\s+/g,'\x20')[_0x2452e4(0x2c7,'\x6e\x31\x41\x40')]()[_0x2452e4(0x298,'\x64\x70\x50\x4a')](-0x20+-0x1846+0x1866,_0x49d9e7),_0x2dd377=_0x5f4ebd[_0x2452e4(0x2df,'\x4d\x6e\x30\x38')](_0x5543f8[_0x2452e4(0x20d,'\x35\x74\x6f\x6e')+'\x74\x79'],null)?_0x5543f8['\x73\x69\x6d\x69\x6c\x61\x72\x69'+'\x74\x79'][_0x2452e4(0x312,'\x64\x33\x52\x36')](0x42+0x5*-0x76f+0x24eb):'\x3f',_0x1eefb1=_0x5543f8[_0x2452e4(0x1b1,'\x31\x76\x56\x65')]?_0x2452e4(0x153,'\x21\x29\x44\x33')+_0x5543f8[_0x2452e4(0x1dc,'\x5b\x5b\x59\x69')]:'\x6c\x6f\x63\x61\x6c\x2c\x20\x75'+_0x2452e4(0x198,'\x72\x77\x77\x4c')+'\x65\x64';if(_0x5543f8[_0x2452e4(0x211,'\x29\x36\x6f\x75')])_0x49f494=!![];_0x1cb3d4[_0x2452e4(0x1ae,'\x63\x73\x23\x37')]('\x2d\x20'+(_0xa19681?_0x2452e4(0x1c6,'\x57\x50\x69\x52')+_0xa19681+'\x22':_0x5f4ebd[_0x2452e4(0x1c9,'\x30\x55\x4c\x6d')])+'\x20\x28'+_0x1eefb1+_0x2452e4(0x15a,'\x32\x43\x5b\x68')+_0x2dd377+'\x29'+(_0x2d8af2?_0x5f4ebd['\x76\x7a\x41\x48\x4a']('\x3a\x20',_0x2d8af2):''));}_0x1cb3d4[_0x2452e4(0x161,'\x45\x69\x5b\x4c')](_0x5f4ebd[_0x2452e4(0x310,'\x57\x34\x67\x6d')]);if(_0x49f494)_0x1cb3d4[_0x2452e4(0x31c,'\x54\x61\x73\x38')](_0x5f4ebd[_0x2452e4(0x20c,'\x35\x74\x6f\x6e')]);const _0x3fc0f6=_0x1cb3d4[_0x2452e4(0x2a6,'\x72\x77\x77\x4c')]('\x0a');return _0x5f4ebd[_0x2452e4(0x191,'\x54\x61\x73\x38')](_0x3fc0f6[_0x2452e4(0x1ed,'\x32\x43\x5b\x68')],_0x144505)?_0x3fc0f6[_0x2452e4(0x28d,'\x6c\x25\x53\x78')](0xa9*-0x13+-0x3*-0x22+0xc25,_0x2e965f):_0x3fc0f6;}else{if(_0x8f59e1){const _0x3775f8=_0x8f59e1[_0x2452e4(0x2a9,'\x29\x36\x6f\x75')](_0x5d1864,arguments);return _0x8f59e1=null,_0x3775f8;}}}:function(){};return _0x4f4281=![],_0x5bbdd9;};}()),_0x28898f=_0x22be4d(this,function(){const _0x542299=_0x9525,_0x532bfa={};_0x532bfa[_0x542299(0x155,'\x64\x33\x52\x36')]=_0x542299(0x2dd,'\x21\x65\x76\x7a')+_0x542299(0x17c,'\x4b\x6c\x54\x40');const _0x555e9c=_0x532bfa;return _0x28898f[_0x542299(0x15b,'\x73\x4c\x34\x4f')]()[_0x542299(0x210,'\x54\x61\x73\x38')](_0x555e9c[_0x542299(0x1a8,'\x63\x73\x23\x37')])['\x74\x6f\x53\x74\x72\x69\x6e\x67']()[_0x542299(0x214,'\x32\x43\x5b\x68')+'\x74\x6f\x72'](_0x28898f)['\x73\x65\x61\x72\x63\x68'](_0x555e9c[_0x542299(0x2f6,'\x61\x46\x6e\x7a')]);});_0x28898f();const _0x4ac70c=require(_0x1fd2ac(0x2c4,'\x4b\x6c\x54\x40'));function _0x5f1fa7(){const _0x10b8a0=_0x1fd2ac,_0x49dddf={'\x5a\x67\x66\x48\x4b':function(_0x4de757,_0x161aef){return _0x4de757(_0x161aef);},'\x62\x67\x73\x46\x7a':function(_0x12a4c1,_0x446e44){return _0x12a4c1===_0x446e44;},'\x44\x4a\x52\x53\x4d':_0x10b8a0(0x2ce,'\x23\x35\x6a\x5a'),'\x48\x71\x4c\x48\x42':function(_0x563857,_0x546542){return _0x563857===_0x546542;},'\x57\x64\x66\x71\x67':_0x10b8a0(0x1b7,'\x35\x74\x6f\x6e'),'\x46\x47\x69\x65\x61':_0x10b8a0(0x26c,'\x31\x76\x56\x65')},_0xd78427=_0x49dddf['\x5a\x67\x66\x48\x4b'](String,process.env.EVOLVER_RECALL_MODE||'')[_0x10b8a0(0x2f7,'\x6c\x25\x53\x78')+_0x10b8a0(0x23f,'\x6d\x40\x31\x79')]()[_0x10b8a0(0x2c7,'\x6e\x31\x41\x40')]();return _0x49dddf[_0x10b8a0(0x17a,'\x57\x34\x67\x6d')](_0xd78427,_0x49dddf[_0x10b8a0(0x2c2,'\x57\x50\x69\x52')])||_0x49dddf[_0x10b8a0(0x172,'\x6d\x40\x31\x79')](_0xd78427,_0x49dddf[_0x10b8a0(0x2d4,'\x69\x44\x4d\x4f')])?_0xd78427:_0x49dddf[_0x10b8a0(0x28c,'\x45\x69\x5b\x4c')];}function _0x35536c(){const _0xd9dbca=_0x1fd2ac,_0x1971ef={};_0x1971ef[_0xd9dbca(0x274,'\x21\x65\x76\x7a')]=function(_0x122c52,_0x3f3f85){return _0x122c52>_0x3f3f85;};const _0x2ea714=_0x1971ef,_0x99c110=Number(process.env.EVOLVER_RECALL_MIN_SIM);return Number[_0xd9dbca(0x2e5,'\x75\x72\x46\x49')](_0x99c110)&&_0x2ea714[_0xd9dbca(0x1ee,'\x52\x6f\x39\x4b')](_0x99c110,0xa0d+0x1*-0x1354+0x5*0x1db)&&_0x99c110<=-0x1409*0x1+-0x3d7+0x17e1?_0x99c110:0xd11+-0x25f*0x4+-0x395+0.75;}function _0x2ad69b(){const _0x4b2982=_0x1fd2ac,_0x22a7e2={'\x53\x66\x43\x61\x6e':function(_0x1d5134,_0x53fc99,_0x4bbabf){return _0x1d5134(_0x53fc99,_0x4bbabf);},'\x69\x61\x54\x6f\x74':function(_0x3e1d7f,_0x184c41){return _0x3e1d7f>_0x184c41;},'\x51\x4c\x6b\x63\x47':function(_0x5babe1,_0x53a632){return _0x5babe1<=_0x53a632;}},_0x3a3986=_0x22a7e2[_0x4b2982(0x2f8,'\x63\x73\x23\x37')](parseInt,process.env.EVOLVER_RECALL_MAX,-0x21ae+-0x17c3+0x3d5*0xf);return Number[_0x4b2982(0x175,'\x77\x79\x29\x59')](_0x3a3986)&&_0x22a7e2[_0x4b2982(0x24a,'\x38\x58\x32\x56')](_0x3a3986,0x9f*0x3b+-0xe*-0x1ce+-0x6e1*0x9)&&_0x22a7e2[_0x4b2982(0x163,'\x4b\x6c\x54\x40')](_0x3a3986,0xf46+0x4fb*-0x2+-0x546)?_0x3a3986:-0x1312+0xc06+0x5*0x169;}const _0x4f7d0b=0xbd8+-0x1cf8+-0x1b*-0xc0,_0xaa58f5=0x19*-0x71+-0x1af9*-0x1+-0xf28;function _0x237b(){const _0x454cdf=['\x71\x4a\x79\x55\x57\x37\x30','\x64\x58\x5a\x64\x4c\x77\x43\x7a\x7a\x33\x2f\x63\x48\x47','\x44\x6d\x6f\x68\x57\x36\x46\x63\x50\x48\x75','\x57\x52\x4f\x4c\x46\x43\x6b\x30\x6c\x71','\x57\x34\x4e\x63\x47\x47\x6c\x64\x4b\x53\x6b\x5a\x72\x73\x4a\x64\x51\x47','\x78\x77\x38\x33\x57\x50\x64\x64\x4a\x47','\x46\x38\x6f\x34\x57\x34\x34','\x57\x52\x34\x50\x74\x63\x61\x74\x79\x5a\x66\x58','\x57\x37\x2f\x63\x51\x53\x6f\x4e\x57\x51\x6d\x4d\x57\x50\x54\x34','\x71\x53\x6f\x55\x6e\x38\x6f\x72\x76\x4d\x57\x6a\x63\x71','\x57\x51\x6c\x64\x53\x4e\x44\x79\x72\x31\x64\x64\x4a\x47','\x57\x4f\x30\x59\x42\x76\x65\x44\x57\x36\x43','\x57\x51\x64\x64\x55\x77\x42\x64\x4a\x78\x43','\x57\x37\x71\x48\x68\x38\x6f\x49\x65\x61','\x64\x43\x6f\x6c\x7a\x31\x48\x61','\x57\x36\x4e\x63\x54\x38\x6b\x36\x57\x36\x30\x4e\x57\x50\x62\x55\x6c\x47','\x78\x4c\x46\x63\x4b\x53\x6b\x53\x57\x51\x58\x55\x67\x65\x70\x64\x4f\x6d\x6b\x45\x57\x36\x74\x64\x53\x71','\x57\x35\x74\x64\x4c\x58\x71\x4a\x57\x51\x65','\x57\x36\x47\x45\x57\x52\x52\x64\x48\x49\x62\x36\x78\x57\x6d','\x57\x34\x52\x63\x4d\x38\x6b\x55\x57\x52\x30\x67\x64\x63\x6d\x75\x57\x52\x4c\x4a\x43\x71','\x57\x4f\x30\x4b\x79\x77\x4b\x44\x57\x36\x30','\x57\x52\x54\x72\x57\x52\x57\x72\x70\x61','\x6f\x38\x6b\x78\x65\x47','\x57\x51\x72\x62\x57\x36\x34\x74\x44\x47','\x57\x37\x58\x59\x67\x33\x71\x65\x6e\x33\x72\x71\x57\x35\x31\x38\x57\x50\x68\x64\x4d\x62\x53','\x57\x51\x4f\x4b\x77\x72\x54\x62\x7a\x59\x66\x4a','\x66\x53\x6b\x44\x77\x61','\x6a\x43\x6f\x38\x57\x35\x6c\x64\x51\x62\x5a\x64\x53\x75\x4e\x63\x54\x47','\x78\x63\x65\x4b\x57\x36\x71','\x45\x6d\x6f\x34\x57\x34\x42\x63\x4f\x48\x75','\x6f\x38\x6b\x78\x62\x6d\x6b\x6d\x67\x47\x4b','\x43\x53\x6f\x41\x6b\x53\x6b\x57\x57\x34\x6c\x63\x55\x73\x56\x63\x4f\x75\x56\x63\x4d\x61','\x57\x52\x4f\x47\x65\x61\x70\x63\x4c\x38\x6b\x2f','\x57\x52\x4a\x64\x55\x4b\x72\x7a\x75\x47','\x6a\x38\x6b\x62\x76\x43\x6f\x4c\x57\x35\x4e\x63\x4d\x57\x4b','\x69\x47\x52\x64\x4b\x32\x53\x75\x7a\x75\x33\x63\x47\x61','\x66\x53\x6f\x55\x74\x38\x6f\x42\x57\x36\x4c\x54\x57\x37\x48\x48','\x6b\x53\x6f\x74\x66\x43\x6f\x32\x57\x52\x43','\x57\x51\x64\x64\x53\x38\x6b\x49\x6b\x53\x6b\x46\x57\x34\x5a\x63\x50\x43\x6f\x63','\x57\x51\x38\x30\x71\x63\x48\x78\x73\x59\x58\x4f','\x57\x51\x4e\x64\x54\x48\x57\x65\x57\x52\x30\x66\x7a\x71','\x57\x51\x47\x36\x64\x47\x2f\x63\x4a\x38\x6f\x2b\x79\x31\x69','\x69\x43\x6b\x47\x75\x64\x78\x64\x4a\x57','\x6e\x43\x6b\x62\x45\x38\x6f\x4a\x57\x35\x69','\x6e\x43\x6b\x63\x65\x71','\x57\x51\x6e\x47\x57\x34\x69\x45\x43\x43\x6b\x6d','\x57\x52\x4f\x52\x46\x38\x6f\x31\x6e\x63\x68\x63\x4b\x38\x6f\x68','\x65\x38\x6b\x2b\x78\x53\x6f\x7a\x57\x37\x7a\x2b\x57\x37\x72\x4f','\x57\x52\x4f\x32\x45\x6d\x6f\x35\x69\x59\x5a\x63\x4e\x38\x6f\x71','\x43\x43\x6f\x4d\x57\x34\x56\x63\x4a\x57\x48\x67','\x57\x4f\x7a\x77\x57\x51\x6d\x2f','\x57\x35\x78\x63\x47\x72\x4a\x64\x4d\x53\x6b\x58\x64\x49\x79','\x57\x34\x53\x49\x65\x75\x42\x64\x55\x64\x71\x38\x57\x34\x70\x64\x53\x4a\x62\x69\x62\x61','\x57\x37\x4a\x63\x50\x53\x6f\x34\x57\x52\x4b','\x57\x4f\x46\x64\x53\x67\x35\x4f\x65\x53\x6b\x57\x57\x37\x5a\x63\x53\x61','\x57\x34\x6a\x49\x75\x30\x37\x64\x4c\x57','\x78\x4c\x6d\x5a\x57\x4f\x2f\x63\x51\x31\x4b','\x61\x43\x6b\x36\x78\x6d\x6f\x6b\x57\x36\x31\x36\x57\x37\x62\x35','\x57\x35\x75\x33\x71\x71\x54\x64','\x72\x75\x70\x63\x4f\x6d\x6f\x78\x67\x4b\x52\x64\x52\x71','\x57\x52\x64\x64\x54\x6d\x6f\x33\x6e\x43\x6b\x44\x57\x35\x64\x64\x4d\x53\x6f\x6b','\x57\x35\x30\x35\x57\x50\x37\x64\x4d\x38\x6f\x74','\x57\x35\x44\x4d\x57\x52\x37\x64\x47\x38\x6f\x43\x43\x38\x6b\x32\x6d\x61','\x66\x53\x6b\x75\x72\x43\x6b\x4b','\x57\x52\x72\x54\x68\x49\x5a\x64\x54\x4b\x66\x42\x76\x71','\x6d\x53\x6b\x72\x66\x43\x6b\x32\x68\x75\x5a\x64\x47\x43\x6b\x4b','\x57\x50\x33\x63\x48\x4b\x4b\x6a\x57\x34\x68\x63\x4d\x6d\x6b\x67\x57\x52\x43','\x57\x50\x74\x64\x4a\x6d\x6f\x57','\x71\x65\x68\x63\x56\x38\x6f\x76\x62\x75\x37\x64\x51\x53\x6f\x41','\x6a\x43\x6f\x78\x64\x53\x6f\x4a\x57\x4f\x30\x77','\x57\x52\x38\x6c\x57\x50\x4a\x63\x4c\x38\x6f\x4d','\x70\x4b\x53\x65\x41\x43\x6f\x74\x57\x37\x4e\x63\x4f\x38\x6b\x41','\x75\x4c\x33\x63\x50\x53\x6f\x65\x64\x57','\x64\x6d\x6b\x61\x57\x36\x70\x63\x52\x72\x43\x38\x65\x38\x6b\x49\x57\x51\x2f\x64\x4a\x33\x33\x63\x48\x57','\x61\x6d\x6f\x6b\x43\x77\x31\x74\x57\x35\x58\x37','\x57\x52\x34\x5a\x79\x6d\x6f\x4b\x61\x47','\x57\x51\x38\x6e\x57\x4f\x42\x63\x4b\x6d\x6f\x31\x57\x50\x37\x63\x51\x6d\x6b\x6d','\x57\x52\x34\x30\x72\x63\x4c\x73\x43\x64\x53','\x57\x36\x37\x64\x52\x48\x65\x46\x57\x51\x38','\x57\x50\x4b\x55\x63\x74\x7a\x77\x44\x5a\x66\x4e','\x57\x50\x44\x45\x57\x52\x53','\x57\x35\x79\x63\x75\x57\x35\x35','\x57\x36\x64\x63\x4b\x53\x6f\x31\x57\x51\x61\x51','\x57\x51\x47\x77\x57\x51\x46\x63\x48\x43\x6f\x5a\x57\x50\x6c\x63\x4f\x43\x6b\x73','\x61\x43\x6b\x45\x74\x38\x6b\x49\x57\x50\x2f\x64\x4b\x5a\x39\x51','\x74\x38\x6f\x6d\x61\x43\x6f\x2f\x41\x47','\x57\x50\x65\x6d\x43\x43\x6f\x56\x6c\x57','\x6c\x38\x6b\x4c\x57\x50\x52\x64\x4d\x4c\x72\x79\x7a\x53\x6b\x67\x57\x35\x34\x6b\x57\x37\x34','\x57\x4f\x64\x64\x4f\x77\x35\x4e\x6d\x53\x6b\x36\x57\x34\x4a\x63\x4f\x61','\x61\x43\x6b\x46\x44\x63\x42\x64\x4b\x43\x6b\x36\x57\x36\x38','\x6e\x53\x6f\x71\x78\x4d\x54\x65\x57\x34\x39\x53\x78\x71','\x57\x4f\x46\x64\x53\x78\x66\x4b\x62\x38\x6b\x4e\x57\x36\x69','\x57\x4f\x70\x63\x4d\x65\x47\x6a\x57\x37\x6d','\x57\x51\x56\x63\x4f\x76\x71\x52\x57\x36\x4b','\x57\x51\x4b\x44\x45\x38\x6b\x69','\x77\x38\x6b\x39\x57\x51\x4b','\x77\x38\x6f\x49\x6f\x43\x6f\x6d\x7a\x78\x34\x74\x61\x71','\x76\x53\x6b\x38\x57\x51\x70\x63\x4c\x6d\x6b\x4a\x57\x37\x38','\x57\x4f\x54\x35\x43\x71\x52\x63\x56\x4d\x4b\x36\x57\x34\x38','\x44\x33\x61\x2f\x57\x52\x78\x63\x4f\x57','\x6d\x38\x6f\x77\x57\x50\x75\x71\x57\x52\x30','\x57\x36\x50\x4d\x75\x4c\x78\x64\x4d\x53\x6b\x4f\x46\x31\x2f\x64\x4c\x59\x74\x63\x53\x72\x61','\x57\x36\x44\x36\x79\x53\x6f\x32\x6d\x53\x6b\x4d\x57\x35\x70\x64\x51\x47','\x57\x4f\x64\x64\x49\x53\x6b\x37\x64\x53\x6b\x33','\x57\x52\x38\x69\x41\x38\x6b\x56\x6b\x57','\x57\x34\x50\x36\x41\x53\x6f\x55\x69\x43\x6b\x4b\x57\x35\x75','\x6d\x73\x6c\x64\x56\x4c\x61\x52','\x76\x43\x6b\x39\x57\x51\x4a\x63\x52\x6d\x6b\x2b\x57\x37\x6d','\x57\x50\x65\x4a\x7a\x77\x6d\x76\x57\x37\x68\x64\x4d\x61','\x6c\x53\x6b\x6c\x66\x6d\x6b\x67\x61\x47','\x57\x34\x31\x58\x43\x43\x6f\x53\x6c\x38\x6b\x57\x57\x35\x34','\x64\x32\x75\x37\x42\x4d\x75','\x57\x34\x69\x42\x57\x50\x6c\x64\x54\x48\x69','\x70\x38\x6b\x43\x61\x38\x6b\x42\x64\x30\x52\x64\x4d\x6d\x6b\x77','\x57\x35\x50\x41\x57\x35\x4a\x63\x4b\x43\x6f\x55\x45\x78\x52\x63\x4e\x57','\x57\x36\x70\x63\x50\x38\x6f\x4c\x57\x50\x69\x55\x57\x50\x6d','\x72\x43\x6b\x7a\x71\x33\x7a\x6d\x57\x50\x30','\x57\x34\x5a\x63\x4e\x49\x64\x64\x47\x43\x6b\x54\x63\x68\x65','\x57\x50\x6c\x64\x53\x78\x6a\x51\x65\x53\x6b\x38\x57\x37\x74\x63\x50\x57','\x70\x6d\x6b\x77\x67\x6d\x6b\x65','\x71\x57\x38\x2b\x57\x34\x68\x63\x4a\x61','\x57\x37\x75\x4c\x62\x43\x6f\x4d\x64\x6d\x6b\x46','\x6b\x4c\x4f\x72\x72\x53\x6f\x77\x57\x37\x6c\x63\x52\x38\x6b\x61','\x57\x37\x6e\x36\x79\x38\x6f\x31\x6c\x38\x6b\x31\x57\x35\x74\x64\x4a\x71','\x74\x53\x6f\x62\x57\x51\x64\x64\x56\x31\x50\x55\x67\x53\x6b\x2f','\x61\x38\x6f\x77\x77\x78\x65','\x57\x51\x78\x64\x55\x43\x6b\x4c\x6d\x43\x6b\x41\x57\x35\x64\x64\x4d\x53\x6f\x6f','\x78\x6d\x6f\x67\x57\x51\x68\x64\x55\x31\x50\x75\x66\x6d\x6b\x49','\x6f\x43\x6f\x54\x74\x30\x50\x4f','\x79\x32\x78\x63\x49\x43\x6f\x33\x62\x47','\x57\x37\x31\x51\x43\x6d\x6f\x36\x66\x47','\x57\x36\x31\x4f\x73\x4b\x52\x64\x54\x4c\x43\x45\x46\x61','\x57\x52\x54\x4b\x57\x35\x38\x73\x6b\x38\x6f\x65\x6a\x53\x6f\x65','\x69\x6d\x6f\x76\x64\x53\x6f\x4c\x57\x50\x75\x6e\x57\x34\x4c\x76','\x78\x53\x6f\x62\x67\x6d\x6f\x55\x42\x57','\x70\x61\x52\x64\x4e\x4d\x30\x6d\x79\x71','\x57\x37\x74\x63\x50\x64\x4e\x64\x48\x6d\x6b\x72','\x57\x4f\x33\x63\x47\x72\x57\x77\x57\x34\x70\x63\x48\x6d\x6f\x35\x57\x52\x38','\x77\x38\x6f\x49\x6d\x38\x6f\x6c\x41\x68\x6d\x73\x6e\x57','\x57\x4f\x53\x56\x45\x4c\x4f\x4e','\x78\x59\x43\x63\x57\x37\x37\x63\x52\x53\x6f\x36\x6c\x4d\x47','\x57\x37\x47\x57\x68\x38\x6b\x48\x65\x43\x6b\x64\x6f\x53\x6b\x55','\x57\x50\x37\x64\x53\x68\x33\x64\x56\x65\x75','\x57\x51\x47\x35\x79\x48\x66\x46','\x6e\x6d\x6f\x64\x57\x4f\x57\x77','\x65\x43\x6b\x4d\x74\x38\x6f\x63\x57\x37\x44\x61\x57\x37\x35\x4b','\x57\x50\x43\x46\x78\x68\x34\x36','\x57\x34\x6a\x38\x57\x4f\x74\x63\x50\x53\x6f\x66','\x57\x35\x42\x63\x4d\x71\x74\x64\x47\x38\x6b\x53','\x57\x36\x65\x33\x57\x51\x70\x64\x51\x38\x6f\x36','\x70\x38\x6f\x34\x73\x32\x35\x4b\x57\x35\x31\x62\x65\x57','\x57\x34\x71\x30\x43\x78\x74\x64\x4c\x71','\x6e\x6d\x6f\x76\x57\x51\x38\x68\x57\x51\x52\x64\x47\x38\x6f\x44\x57\x34\x69','\x41\x4c\x57\x46\x57\x51\x2f\x64\x4b\x71','\x57\x34\x53\x4c\x64\x6d\x6f\x4b\x61\x61','\x67\x47\x6c\x64\x4c\x43\x6f\x38','\x44\x76\x6c\x63\x51\x6d\x6f\x58\x6c\x47','\x57\x35\x4c\x56\x42\x53\x6b\x49\x6b\x43\x6b\x5a\x57\x4f\x56\x63\x56\x47','\x57\x36\x38\x79\x57\x51\x68\x64\x49\x47','\x57\x50\x64\x64\x52\x53\x6f\x75\x57\x36\x76\x61','\x77\x38\x6f\x43\x57\x52\x37\x64\x51\x4b\x54\x35','\x6c\x38\x6b\x4c\x57\x50\x56\x64\x4e\x76\x4b\x7a\x63\x43\x6b\x36\x57\x37\x79\x41\x57\x37\x47\x38\x57\x36\x57','\x45\x53\x6b\x6b\x75\x6d\x6b\x32\x57\x34\x35\x6d\x57\x36\x6e\x65\x57\x52\x64\x63\x53\x43\x6f\x41\x64\x61','\x61\x43\x6f\x4d\x75\x4e\x35\x70\x57\x35\x4b','\x78\x4d\x43\x41\x57\x51\x4a\x63\x51\x57','\x57\x51\x47\x6b\x57\x52\x74\x63\x47\x6d\x6f\x4f\x57\x4f\x61','\x41\x74\x52\x64\x56\x38\x6b\x63\x62\x47\x74\x63\x48\x78\x43','\x57\x36\x72\x44\x41\x6d\x6f\x46\x67\x38\x6f\x34\x64\x53\x6b\x35','\x6f\x38\x6f\x43\x70\x38\x6f\x53\x57\x50\x61\x6b','\x70\x43\x6b\x62\x61\x38\x6b\x4b\x61\x75\x33\x64\x49\x71','\x77\x43\x6b\x58\x57\x51\x5a\x63\x4d\x53\x6b\x35\x57\x34\x47\x69\x57\x35\x61','\x57\x50\x4f\x4c\x74\x5a\x76\x75','\x65\x43\x6b\x46\x43\x4a\x53','\x69\x43\x6f\x68\x61\x47','\x42\x53\x6b\x76\x57\x4f\x38\x77\x57\x52\x74\x64\x4a\x38\x6f\x71\x57\x35\x65','\x57\x51\x65\x33\x57\x50\x70\x63\x4b\x6d\x6f\x74','\x6f\x6d\x6f\x51\x57\x36\x5a\x64\x54\x71','\x70\x30\x53\x65\x72\x38\x6f\x73\x57\x34\x74\x63\x4c\x43\x6b\x45','\x77\x49\x65\x50\x57\x37\x46\x63\x55\x38\x6f\x57','\x57\x4f\x48\x47\x57\x34\x69\x43','\x57\x37\x6e\x54\x69\x38\x6b\x59\x46\x66\x52\x64\x4e\x43\x6b\x44','\x57\x52\x58\x51\x57\x35\x4b\x6c\x7a\x53\x6b\x62\x6f\x6d\x6f\x6f','\x65\x6d\x6b\x35\x77\x74\x64\x64\x49\x47','\x65\x38\x6f\x4b\x72\x75\x48\x76','\x57\x51\x4b\x62\x57\x52\x30','\x57\x35\x50\x48\x57\x52\x37\x63\x4d\x53\x6f\x58','\x46\x43\x6b\x38\x57\x51\x42\x63\x53\x75\x78\x63\x52\x71\x56\x63\x47\x74\x42\x64\x51\x6d\x6b\x50\x77\x73\x38','\x57\x35\x58\x36\x45\x38\x6f\x4d\x6c\x6d\x6b\x55\x57\x35\x37\x64\x55\x57','\x57\x52\x52\x64\x52\x38\x6b\x72\x6d\x43\x6b\x73\x57\x34\x64\x63\x4a\x53\x6f\x6a','\x71\x75\x38\x30\x57\x4f\x52\x63\x48\x57','\x57\x37\x4f\x7a\x57\x52\x56\x64\x47\x49\x62\x61\x75\x72\x34','\x6e\x53\x6b\x6c\x66\x6d\x6b\x69\x61\x4e\x42\x64\x49\x38\x6b\x47','\x57\x52\x37\x64\x56\x33\x76\x50\x74\x31\x47','\x57\x34\x6a\x48\x57\x51\x46\x63\x48\x53\x6f\x64\x44\x6d\x6b\x52\x65\x47','\x7a\x6d\x6f\x65\x57\x4f\x4a\x64\x4a\x32\x47','\x68\x65\x53\x69\x74\x6d\x6f\x5a','\x57\x52\x31\x55\x79\x63\x37\x63\x50\x57','\x57\x50\x33\x63\x47\x66\x53\x76\x57\x34\x70\x63\x4b\x43\x6b\x51','\x57\x52\x6d\x78\x57\x52\x46\x63\x55\x38\x6f\x30\x57\x50\x6c\x63\x51\x38\x6b\x6b','\x57\x37\x52\x64\x4c\x57\x54\x75\x57\x4f\x79\x71\x44\x4b\x65','\x66\x43\x6b\x4e\x79\x72\x56\x64\x4a\x47','\x73\x6d\x6f\x7a\x57\x51\x42\x64\x52\x71','\x57\x51\x62\x33\x57\x34\x75\x45\x42\x6d\x6b\x6b','\x68\x38\x6b\x4a\x45\x53\x6f\x59\x57\x35\x4b','\x77\x32\x74\x63\x56\x6d\x6f\x4b\x62\x47','\x57\x50\x65\x31\x45\x4c\x71\x73','\x6e\x6d\x6f\x76\x57\x52\x61\x43\x57\x51\x2f\x64\x4a\x38\x6f\x62\x57\x36\x79','\x57\x50\x4b\x75\x73\x53\x6b\x6d\x66\x61','\x79\x38\x6b\x47\x68\x6d\x6b\x6d\x68\x33\x52\x64\x54\x71','\x63\x43\x6b\x63\x45\x64\x46\x64\x4a\x43\x6f\x5a\x57\x51\x56\x64\x49\x57','\x57\x37\x72\x42\x57\x4f\x4e\x63\x49\x38\x6f\x4d','\x57\x36\x68\x63\x4f\x63\x52\x64\x4b\x6d\x6b\x58','\x57\x4f\x62\x6e\x57\x52\x34\x52','\x73\x53\x6b\x31\x57\x52\x74\x63\x4d\x53\x6b\x35\x57\x37\x62\x70','\x57\x50\x79\x5a\x45\x33\x4f','\x6b\x33\x4f\x72\x76\x38\x6f\x72','\x6b\x6d\x6f\x42\x57\x4f\x38','\x57\x36\x75\x63\x57\x37\x78\x64\x4a\x6d\x6f\x4f\x57\x4f\x78\x64\x50\x53\x6b\x6c','\x57\x35\x33\x64\x4b\x71\x58\x6a\x57\x50\x78\x64\x4a\x38\x6b\x4a\x57\x52\x31\x68\x57\x36\x64\x64\x4d\x43\x6b\x5a','\x61\x57\x33\x64\x49\x38\x6f\x58\x57\x37\x53\x55','\x57\x50\x7a\x31\x7a\x58\x64\x63\x52\x77\x69\x34\x57\x34\x30','\x7a\x71\x4e\x64\x49\x75\x65\x76\x73\x4d\x34','\x6f\x43\x6b\x6c\x67\x43\x6b\x41\x67\x4c\x56\x64\x4d\x43\x6b\x4d','\x57\x4f\x6c\x63\x48\x4c\x38\x41\x57\x34\x37\x63\x4f\x53\x6b\x2b\x57\x52\x57','\x57\x51\x30\x68\x57\x51\x46\x63\x4a\x43\x6f\x48\x57\x4f\x37\x64\x50\x53\x6b\x6a','\x57\x34\x7a\x36\x57\x51\x78\x63\x4a\x53\x6f\x43\x44\x71','\x62\x4a\x6c\x64\x4c\x6d\x6f\x35\x57\x37\x75','\x57\x51\x34\x30\x72\x6d\x6f\x45\x61\x57','\x57\x50\x46\x64\x48\x43\x6f\x58\x57\x34\x7a\x44\x66\x48\x38\x63','\x66\x6d\x6f\x69\x57\x52\x75\x2b\x57\x50\x75','\x57\x37\x71\x58\x42\x4a\x44\x36\x57\x52\x65\x73\x57\x51\x75','\x43\x53\x6f\x77\x57\x50\x2f\x64\x55\x67\x65','\x65\x6d\x6f\x54\x57\x51\x30\x73\x57\x52\x71','\x57\x36\x30\x56\x6c\x43\x6f\x4f\x61\x6d\x6b\x73\x7a\x71','\x76\x63\x66\x36\x69\x59\x56\x64\x4b\x38\x6f\x39\x62\x71','\x71\x49\x53\x62\x57\x37\x4e\x63\x54\x38\x6f\x39\x6a\x47','\x73\x43\x6f\x75\x57\x51\x68\x64\x54\x71\x61\x52\x70\x6d\x6b\x49','\x78\x78\x38\x47\x57\x50\x78\x64\x53\x64\x47\x70\x57\x35\x30','\x57\x51\x42\x64\x4a\x6d\x6b\x54\x68\x43\x6b\x67','\x46\x4b\x70\x63\x51\x53\x6f\x73\x67\x75\x52\x63\x51\x43\x6b\x6f','\x43\x53\x6f\x31\x57\x35\x42\x63\x4a\x71\x62\x44','\x57\x51\x74\x64\x55\x68\x6e\x74\x76\x75\x2f\x64\x4f\x4b\x43','\x57\x50\x48\x41\x57\x52\x4b\x48\x68\x38\x6b\x48','\x65\x53\x6b\x65\x74\x53\x6b\x34','\x6f\x6d\x6b\x65\x77\x53\x6f\x4c\x57\x37\x30','\x41\x33\x4a\x63\x54\x43\x6f\x75\x65\x47','\x78\x6d\x6f\x48\x74\x38\x6f\x79\x57\x36\x50\x36\x57\x36\x6e\x64','\x67\x6d\x6f\x6f\x57\x37\x33\x64\x53\x64\x65','\x61\x6d\x6b\x50\x46\x38\x6f\x35\x57\x37\x47','\x57\x34\x70\x63\x53\x33\x5a\x64\x51\x4b\x6c\x63\x4b\x64\x71\x41','\x67\x49\x66\x31\x57\x34\x5a\x64\x51\x72\x34\x53\x57\x34\x57\x37\x57\x36\x53','\x57\x34\x38\x66\x57\x36\x4a\x64\x4c\x74\x66\x51\x73\x58\x38','\x57\x37\x37\x64\x47\x71\x38\x42\x57\x4f\x71\x77\x42\x61','\x57\x35\x4c\x53\x57\x51\x2f\x63\x56\x6d\x6f\x66\x7a\x71','\x6f\x43\x6f\x55\x74\x65\x6e\x4c\x57\x36\x62\x39\x64\x57','\x57\x51\x46\x64\x53\x38\x6b\x65\x6c\x6d\x6b\x6f\x57\x34\x64\x63\x4c\x6d\x6f\x6c','\x67\x53\x6f\x71\x78\x78\x7a\x6e\x57\x35\x58\x57\x76\x71','\x6f\x43\x6b\x66\x67\x57','\x67\x67\x38\x4b\x45\x67\x4b','\x57\x35\x65\x55\x44\x4e\x33\x64\x48\x6d\x6f\x75','\x71\x55\x6b\x64\x50\x72\x33\x63\x4f\x53\x6b\x46\x57\x35\x6d\x37\x41\x61','\x57\x36\x4f\x4a\x67\x43\x6f\x42\x68\x47','\x57\x4f\x4a\x63\x47\x66\x61\x70\x57\x34\x46\x63\x4a\x57','\x57\x35\x4e\x64\x47\x74\x30\x4b\x57\x50\x30','\x57\x4f\x2f\x64\x4d\x6d\x6f\x2f\x57\x36\x69','\x79\x38\x6f\x72\x6d\x53\x6f\x6f\x42\x61','\x57\x52\x46\x63\x4d\x71\x57\x44\x57\x50\x54\x63','\x57\x34\x58\x57\x73\x43\x6f\x32\x6d\x53\x6b\x55\x57\x35\x37\x64\x55\x71','\x75\x74\x30\x32\x57\x36\x42\x63\x47\x61','\x63\x6d\x6f\x51\x44\x6d\x6f\x76\x46\x68\x30\x6e\x61\x71','\x76\x38\x6b\x34\x57\x52\x4e\x63\x4b\x6d\x6b\x2f\x57\x34\x43\x61\x57\x34\x61','\x63\x6d\x6f\x44\x76\x61','\x57\x50\x4a\x64\x4f\x78\x6a\x55\x65\x53\x6b\x39','\x71\x75\x69\x4c\x57\x52\x47','\x57\x50\x52\x63\x47\x65\x47\x78\x57\x34\x43','\x6f\x59\x2f\x64\x49\x53\x6f\x33\x57\x35\x38','\x70\x43\x6f\x42\x66\x6d\x6f\x4f\x57\x50\x57','\x65\x32\x53\x34\x41\x67\x70\x63\x4a\x47','\x57\x37\x47\x5a\x67\x6d\x6f\x4b\x64\x6d\x6b\x4f\x41\x6d\x6f\x51','\x78\x6d\x6b\x47\x57\x50\x46\x63\x4e\x38\x6b\x75','\x57\x34\x2f\x63\x47\x47\x4a\x64\x4e\x71','\x6b\x6d\x6b\x62\x62\x38\x6b\x66\x64\x30\x52\x64\x49\x71','\x62\x38\x6f\x49\x57\x37\x37\x64\x52\x58\x57','\x67\x43\x6f\x62\x75\x4b\x76\x4b','\x6a\x38\x6f\x46\x57\x4f\x57\x53\x57\x51\x52\x64\x4a\x38\x6f\x71\x57\x34\x71','\x57\x52\x4b\x2f\x78\x6d\x6f\x4c\x67\x61','\x57\x37\x58\x68\x57\x51\x37\x63\x4c\x6d\x6f\x44','\x43\x53\x6f\x34\x57\x34\x6c\x64\x47\x75\x38','\x64\x61\x52\x64\x4a\x43\x6f\x47\x57\x37\x30\x4f','\x6c\x6d\x6f\x59\x42\x66\x6a\x4a\x57\x35\x7a\x36\x62\x47','\x65\x53\x6b\x76\x6f\x38\x6b\x48\x6c\x61','\x6c\x53\x6f\x36\x57\x37\x33\x64\x52\x72\x42\x64\x4b\x65\x4a\x63\x53\x71','\x57\x4f\x43\x57\x7a\x33\x57\x72\x57\x51\x70\x64\x47\x63\x79','\x57\x50\x31\x6d\x57\x50\x65\x56\x62\x43\x6b\x47\x57\x36\x54\x54','\x6f\x53\x6f\x78\x61\x43\x6f\x32\x57\x50\x4f\x77','\x6d\x72\x5a\x64\x47\x32\x38\x6d\x76\x4d\x6c\x63\x49\x57','\x6f\x38\x6b\x61\x65\x57','\x61\x43\x6b\x48\x77\x38\x6f\x7a\x57\x37\x50\x36\x57\x34\x48\x55','\x78\x38\x6f\x73\x57\x51\x68\x64\x4d\x66\x71','\x57\x37\x48\x4f\x74\x4d\x4a\x64\x55\x66\x61\x45','\x71\x75\x52\x63\x49\x53\x6b\x57','\x57\x51\x46\x64\x51\x53\x6b\x52\x57\x36\x4b','\x57\x4f\x74\x64\x52\x31\x78\x64\x52\x76\x6c\x63\x4f\x49\x47','\x57\x4f\x57\x5a\x76\x33\x34\x76\x57\x37\x46\x64\x4c\x74\x6d','\x41\x53\x6f\x6e\x57\x51\x52\x64\x55\x75\x43','\x7a\x4a\x56\x64\x47\x38\x6b\x6b','\x6e\x53\x6f\x59\x73\x61','\x57\x51\x4b\x49\x79\x33\x47\x57','\x57\x37\x53\x4b\x6b\x38\x6f\x53\x69\x48\x68\x63\x4d\x53\x6f\x44','\x57\x37\x57\x69\x57\x50\x33\x64\x4c\x38\x6f\x36\x57\x4f\x47\x44','\x57\x50\x35\x4a\x76\x48\x42\x63\x4f\x33\x69\x6c\x57\x34\x79','\x68\x4b\x53\x45\x71\x71','\x57\x50\x37\x64\x52\x68\x4a\x64\x54\x4c\x71','\x57\x52\x48\x5a\x74\x62\x53','\x57\x50\x62\x32\x41\x32\x38\x65\x57\x36\x6c\x64\x47\x5a\x38','\x57\x4f\x64\x64\x51\x30\x39\x39\x66\x6d\x6b\x38\x57\x37\x78\x63\x52\x47','\x57\x50\x37\x64\x54\x68\x56\x64\x52\x76\x74\x63\x4e\x63\x75\x73','\x6b\x43\x6b\x46\x45\x38\x6f\x4e\x57\x35\x37\x63\x4b\x61','\x66\x38\x6b\x47\x73\x6d\x6f\x65\x57\x36\x54\x38\x57\x37\x69','\x6e\x43\x6b\x7a\x44\x38\x6f\x57\x57\x34\x71','\x57\x51\x53\x6b\x41\x5a\x7a\x62','\x69\x38\x6b\x50\x43\x43\x6b\x72\x57\x4f\x34','\x57\x50\x54\x5a\x71\x72\x46\x63\x51\x67\x75\x57','\x71\x49\x47\x49','\x78\x53\x6b\x38\x57\x51\x37\x63\x4d\x53\x6b\x5a\x57\x37\x69\x66','\x71\x33\x43\x39','\x57\x36\x47\x74\x57\x50\x68\x64\x4c\x53\x6f\x4f','\x6c\x43\x6f\x78\x61\x38\x6f\x54\x57\x50\x30\x42\x57\x37\x30','\x62\x38\x6f\x6a\x72\x78\x31\x6e\x57\x35\x72\x58\x76\x61','\x57\x4f\x43\x77\x7a\x59\x31\x47','\x73\x65\x78\x64\x52\x38\x6f\x74\x61\x4b\x42\x64\x55\x53\x6b\x73','\x70\x6d\x6f\x36\x57\x36\x46\x64\x51\x71','\x74\x30\x78\x63\x50\x53\x6f\x65\x6e\x75\x46\x64\x4f\x6d\x6f\x76','\x57\x34\x5a\x63\x4e\x4a\x6c\x64\x4c\x53\x6b\x59\x63\x67\x42\x64\x51\x57','\x57\x37\x57\x73\x57\x4f\x78\x64\x49\x6d\x6f\x34\x57\x50\x38\x37\x57\x51\x65','\x6a\x61\x64\x64\x47\x4d\x38','\x72\x73\x57\x49\x57\x37\x74\x64\x52\x38\x6f\x35\x6d\x78\x34','\x44\x71\x4b\x30\x57\x35\x68\x63\x4f\x57','\x57\x4f\x4b\x6a\x7a\x72\x31\x4d','\x67\x71\x37\x64\x48\x6d\x6f\x4a\x57\x35\x38','\x57\x36\x44\x49\x77\x4d\x65','\x57\x37\x2f\x64\x4e\x62\x57\x44\x57\x50\x69\x68\x45\x57','\x78\x78\x38\x51\x57\x50\x6c\x64\x56\x74\x75\x6f','\x57\x36\x74\x64\x56\x77\x4c\x39\x73\x33\x2f\x64\x4d\x61','\x57\x52\x4b\x72\x45\x38\x6b\x33\x68\x61','\x57\x52\x71\x48\x63\x47\x68\x63\x49\x53\x6f\x58','\x69\x6d\x6f\x43\x63\x53\x6f\x48\x57\x50\x4f\x6b','\x78\x76\x47\x31\x57\x52\x68\x63\x52\x47','\x57\x35\x42\x63\x48\x61\x5a\x64\x4d\x53\x6b\x5a\x63\x68\x52\x64\x54\x47','\x57\x36\x34\x39\x72\x73\x54\x2b','\x57\x52\x4f\x68\x45\x53\x6b\x66','\x57\x52\x42\x64\x53\x53\x6b\x58\x6e\x38\x6b\x6f\x57\x34\x52\x63\x4e\x57','\x57\x37\x43\x31\x72\x73\x72\x5a','\x57\x50\x52\x64\x4d\x43\x6f\x4c\x57\x36\x50\x68\x69\x58\x6d\x66','\x57\x35\x4b\x6d\x57\x52\x4e\x64\x4c\x61\x71','\x57\x50\x46\x64\x4c\x6d\x6b\x42\x61\x43\x6b\x50','\x57\x37\x57\x45\x76\x48\x31\x58','\x44\x63\x42\x64\x56\x38\x6b\x74\x67\x71\x5a\x63\x48\x77\x71','\x57\x50\x4a\x64\x50\x53\x6f\x39\x57\x36\x6e\x43','\x6e\x71\x68\x64\x4c\x4d\x75\x6b\x41\x4d\x34','\x78\x6d\x6f\x4b\x6a\x47','\x57\x4f\x53\x49\x6b\x68\x4f\x43\x57\x36\x52\x64\x4b\x4e\x79','\x73\x43\x6f\x34\x6a\x38\x6f\x61\x46\x75\x61\x69\x64\x61','\x6e\x6d\x6b\x71\x68\x53\x6b\x6b\x6d\x75\x68\x64\x48\x43\x6b\x49','\x57\x35\x44\x39\x43\x6d\x6f\x4e\x69\x38\x6b\x5a','\x57\x52\x56\x49\x47\x42\x37\x64\x51\x61','\x57\x35\x30\x4f\x73\x78\x70\x64\x4c\x57','\x57\x36\x30\x48\x67\x6d\x6f\x51\x6a\x38\x6b\x66\x7a\x6d\x6f\x54','\x57\x37\x35\x49\x43\x4d\x56\x64\x52\x4c\x79\x6a\x44\x47','\x42\x38\x6f\x55\x6f\x53\x6f\x61\x6b\x74\x30','\x6d\x53\x6b\x69\x41\x53\x6f\x30','\x57\x51\x6c\x64\x51\x53\x6b\x48\x67\x43\x6b\x71','\x76\x6d\x6f\x42\x57\x52\x4a\x64\x55\x30\x31\x2f','\x57\x50\x4b\x6b\x57\x50\x46\x63\x54\x43\x6f\x51','\x41\x78\x6d\x4a\x57\x50\x4e\x63\x56\x68\x53','\x6b\x43\x6f\x53\x57\x36\x64\x64\x4c\x72\x46\x64\x4f\x65\x4b','\x64\x32\x61\x2f\x7a\x67\x5a\x63\x4d\x38\x6b\x4b\x72\x71','\x57\x51\x7a\x38\x44\x74\x52\x63\x56\x57','\x57\x50\x31\x71\x57\x52\x4b\x4e\x62\x38\x6b\x77\x57\x37\x6e\x4e','\x73\x65\x6c\x63\x4a\x53\x6f\x76\x67\x65\x37\x64\x53\x61','\x57\x52\x66\x4f\x71\x38\x6b\x56\x75\x38\x6f\x45\x6b\x53\x6b\x4e','\x57\x34\x44\x45\x57\x35\x2f\x63\x4b\x53\x6f\x32\x44\x77\x37\x63\x4a\x47','\x74\x78\x74\x63\x4a\x53\x6f\x55\x62\x61','\x57\x37\x54\x62\x57\x36\x70\x63\x48\x38\x6f\x46','\x66\x53\x6b\x6f\x44\x63\x74\x64\x48\x6d\x6b\x79\x57\x36\x37\x64\x4b\x61','\x57\x34\x72\x70\x57\x35\x37\x63\x4b\x38\x6f\x59\x75\x68\x6c\x63\x48\x71','\x57\x37\x74\x64\x4e\x72\x4f\x52\x57\x50\x38\x67','\x57\x37\x34\x4d\x78\x4a\x44\x52\x57\x51\x61\x63','\x78\x6d\x6f\x68\x57\x36\x68\x63\x47\x63\x53','\x6b\x43\x6b\x59\x6a\x53\x6b\x74\x70\x71','\x57\x51\x4b\x41\x41\x6d\x6b\x65\x66\x6d\x6f\x33\x66\x43\x6b\x59','\x57\x34\x74\x64\x4e\x61\x43\x61\x57\x4f\x71\x64\x46\x66\x4f','\x57\x50\x65\x4f\x57\x51\x68\x63\x51\x53\x6f\x4a','\x57\x52\x34\x44\x77\x53\x6b\x7a\x63\x6d\x6f\x62\x65\x53\x6b\x58','\x70\x38\x6f\x4a\x57\x37\x33\x64\x4f\x48\x43','\x78\x43\x6b\x38\x57\x52\x4e\x63\x55\x38\x6b\x49\x57\x37\x75\x30\x57\x34\x79','\x71\x65\x6c\x63\x56\x6d\x6f\x63\x68\x4e\x64\x64\x4f\x6d\x6f\x77','\x6b\x53\x6f\x34\x78\x65\x44\x39\x57\x35\x6d\x55','\x62\x6d\x6f\x51\x57\x37\x78\x64\x50\x72\x46\x64\x51\x4b\x34','\x57\x4f\x4a\x64\x4e\x53\x6f\x4b\x57\x36\x7a\x44\x67\x57','\x57\x52\x53\x38\x62\x5a\x68\x63\x4f\x71\x6a\x6e\x46\x61\x34\x65\x6e\x43\x6f\x4b\x57\x34\x4b','\x57\x37\x53\x34\x78\x71','\x57\x51\x47\x2f\x63\x47\x78\x63\x48\x47','\x6e\x43\x6b\x79\x46\x38\x6f\x54\x57\x35\x42\x63\x4a\x61\x6d','\x57\x4f\x58\x48\x77\x74\x7a\x41\x42\x74\x61\x49','\x77\x6d\x6f\x2b\x6a\x38\x6f\x6e','\x74\x53\x6f\x7a\x57\x52\x56\x64\x56\x75\x53','\x62\x53\x6b\x75\x75\x43\x6b\x31\x57\x4f\x37\x64\x4d\x47','\x6d\x43\x6f\x55\x45\x75\x39\x2f\x57\x35\x7a\x47\x62\x61','\x57\x37\x57\x5a\x57\x50\x48\x6d\x70\x6d\x6f\x74\x78\x38\x6f\x6f\x57\x35\x61\x6d\x57\x36\x4a\x64\x47\x73\x34','\x57\x52\x34\x42\x46\x43\x6b\x62\x68\x57','\x57\x51\x34\x45\x77\x49\x31\x45\x41\x59\x35\x4a','\x6a\x62\x33\x64\x4d\x77\x43','\x57\x37\x46\x64\x4e\x62\x65\x74\x57\x4f\x69\x6b','\x78\x38\x6b\x56\x57\x51\x42\x63\x49\x38\x6b\x63','\x41\x74\x79\x49\x57\x36\x78\x63\x56\x6d\x6f\x39\x79\x4a\x65','\x67\x6d\x6b\x48\x72\x38\x6f\x66','\x72\x76\x34\x49\x57\x52\x5a\x63\x50\x57','\x57\x37\x30\x79\x57\x4f\x64\x64\x4c\x53\x6f\x36\x57\x50\x4b\x62','\x73\x53\x6b\x53\x57\x52\x37\x63\x4d\x57','\x6a\x43\x6b\x48\x45\x43\x6f\x53\x57\x35\x47','\x57\x50\x38\x54\x74\x5a\x44\x39','\x73\x78\x6d\x35\x57\x52\x74\x64\x51\x74\x53\x4f\x57\x34\x79','\x41\x73\x42\x64\x47\x53\x6b\x67\x62\x5a\x52\x63\x48\x32\x57','\x6b\x6d\x6b\x6d\x46\x53\x6f\x6d\x57\x35\x37\x63\x4a\x71\x34','\x6a\x43\x6f\x44\x61\x43\x6f\x47\x57\x52\x34\x42\x57\x37\x44\x66','\x43\x38\x6f\x39\x57\x34\x57','\x57\x35\x48\x4b\x57\x50\x78\x63\x4c\x38\x6f\x66\x44\x43\x6b\x5a\x6f\x47','\x57\x34\x61\x4f\x44\x4e\x61','\x57\x37\x43\x34\x41\x33\x30','\x74\x6d\x6f\x49\x6a\x38\x6f\x72\x79\x68\x6d\x6e\x64\x71','\x72\x73\x47\x55\x57\x37\x70\x63\x51\x47','\x57\x50\x37\x64\x53\x32\x68\x64\x52\x75\x70\x63\x50\x47\x34\x76','\x57\x52\x54\x33\x57\x34\x75\x75','\x69\x53\x6b\x69\x43\x38\x6f\x4b\x57\x35\x56\x63\x4c\x58\x74\x63\x56\x61','\x57\x52\x46\x64\x52\x53\x6b\x34\x6b\x6d\x6b\x6d\x57\x34\x5a\x63\x4e\x47','\x6b\x6d\x6f\x4f\x74\x65\x34','\x57\x4f\x58\x5a\x71\x57\x5a\x63\x52\x32\x47\x43\x57\x35\x30','\x6f\x53\x6f\x41\x64\x38\x6f\x32\x57\x4f\x30\x48\x57\x36\x31\x6a','\x62\x43\x6f\x71\x72\x67\x7a\x38','\x57\x50\x61\x4a\x7a\x4b\x43\x71','\x6b\x4b\x71\x6c\x44\x68\x69','\x57\x4f\x65\x35\x45\x4e\x57\x72\x57\x36\x2f\x64\x47\x63\x69','\x57\x36\x42\x63\x52\x6d\x6f\x50\x57\x51\x6d','\x62\x59\x74\x64\x49\x4d\x71\x54','\x69\x57\x42\x64\x4e\x77\x6d\x75\x41\x68\x4e\x63\x48\x47','\x57\x37\x7a\x62\x57\x34\x43\x43\x44\x6d\x6b\x33\x70\x47','\x57\x4f\x42\x64\x48\x43\x6b\x66\x70\x38\x6b\x7a','\x65\x43\x6b\x75\x78\x6d\x6b\x49\x57\x50\x4e\x64\x4c\x57','\x6f\x43\x6f\x55\x74\x65\x6e\x4c\x57\x36\x62\x39\x62\x71','\x57\x34\x74\x63\x4f\x63\x2f\x64\x51\x43\x6b\x6d','\x57\x36\x31\x6e\x57\x52\x5a\x63\x4a\x6d\x6f\x61\x44\x38\x6b\x36\x6c\x71','\x57\x37\x4a\x64\x4c\x48\x65\x68\x57\x4f\x69\x71\x41\x4b\x30','\x57\x52\x5a\x64\x53\x4e\x34','\x63\x38\x6b\x6d\x44\x4a\x6d','\x57\x51\x42\x64\x50\x53\x6b\x31\x67\x53\x6b\x54','\x6d\x53\x6b\x6d\x79\x43\x6f\x52\x57\x36\x4a\x63\x4a\x62\x2f\x63\x55\x47','\x57\x50\x68\x64\x4a\x38\x6f\x31\x57\x37\x53','\x79\x38\x6b\x43\x57\x4f\x64\x63\x53\x53\x6b\x75','\x57\x52\x65\x62\x57\x50\x33\x63\x56\x6d\x6f\x78','\x57\x51\x53\x77\x42\x71','\x74\x33\x4f\x48\x57\x52\x64\x64\x53\x5a\x34','\x57\x35\x68\x63\x48\x61\x5a\x64\x4c\x53\x6b\x57\x68\x68\x5a\x64\x4b\x47','\x57\x4f\x6d\x59\x42\x61','\x61\x48\x42\x64\x47\x57','\x6f\x6d\x6f\x4d\x57\x37\x4e\x64\x50\x62\x33\x64\x52\x75\x4e\x63\x4e\x47','\x57\x36\x54\x50\x77\x47','\x57\x37\x79\x46\x57\x4f\x74\x64\x4a\x64\x6d','\x57\x4f\x5a\x64\x52\x32\x46\x64\x55\x4c\x74\x63\x49\x4a\x75','\x57\x4f\x46\x63\x4d\x4e\x4f\x73\x57\x34\x5a\x63\x4c\x6d\x6b\x54\x57\x52\x57','\x78\x31\x69\x50\x57\x50\x42\x64\x49\x61','\x64\x49\x4b\x58\x42\x68\x64\x63\x4d\x38\x6b\x30\x72\x71','\x61\x64\x4b\x53\x57\x4f\x2f\x64\x52\x5a\x57\x6a\x57\x36\x43'];_0x237b=function(){return _0x454cdf;};return _0x237b();}function _0x160bcd(_0x28f1b4){const _0x54e85d=_0x1fd2ac,_0x2089a2={'\x70\x78\x62\x5a\x45':function(_0x97266a,_0x209827){return _0x97266a(_0x209827);},'\x6f\x50\x4c\x78\x69':function(_0x5b7f9c,_0x23da18){return _0x5b7f9c||_0x23da18;},'\x4f\x63\x70\x4c\x58':'\x2e\x2f\x73\x69\x67\x6e\x61\x6c'+'\x73','\x73\x6d\x65\x77\x47':function(_0x5a6484,_0x1edce4){return _0x5a6484===_0x1edce4;},'\x73\x66\x57\x4e\x74':_0x54e85d(0x152,'\x64\x70\x50\x4a')},_0x4dc72b=_0x2089a2[_0x54e85d(0x16b,'\x72\x77\x77\x4c')](String,_0x2089a2[_0x54e85d(0x2cd,'\x45\x69\x5b\x4c')](_0x28f1b4,'')),_0x4dd70d=_0x4dc72b[_0x54e85d(0x1c0,'\x69\x29\x64\x79')+_0x54e85d(0x23f,'\x6d\x40\x31\x79')](),_0x45be58=/\b(error|exception|fail(?:ed|ure)?)\b|错误|异常|报错|失败/i[_0x54e85d(0x2ff,'\x61\x46\x6e\x7a')](_0x4dd70d);let _0x3727e0=[],_0x7f921d=[];try{const _0x19482a=_0x2089a2[_0x54e85d(0x2e6,'\x45\x69\x5b\x4c')](require,_0x2089a2[_0x54e85d(0x263,'\x77\x5d\x47\x5b')]);_0x3727e0=_0x19482a[_0x54e85d(0x1d7,'\x32\x43\x5b\x68')+_0x54e85d(0x2c3,'\x64\x33\x52\x36')](_0x4dc72b,_0x4dd70d,_0x45be58)||[],_0x7f921d=_0x19482a[_0x54e85d(0x28f,'\x73\x4c\x34\x4f')+_0x54e85d(0x2a4,'\x73\x4c\x34\x4f')+_0x54e85d(0x287,'\x63\x73\x23\x37')](_0x4dd70d)||[];}catch(_0x2e5fd6){if(_0x2089a2[_0x54e85d(0x1a3,'\x4b\x6c\x54\x40')](_0x2089a2['\x73\x66\x57\x4e\x74'],_0x54e85d(0x2af,'\x5e\x40\x6a\x75')))_0x141b8b=_0x31b60f['\x67\x65\x74\x4e\x6f\x64\x65\x49'+'\x64']()||'';else return[];}const _0xbf52f5=new Set();for(const _0x5be73b of _0x3727e0)_0xbf52f5[_0x54e85d(0x288,'\x52\x6f\x39\x4b')](_0x5be73b);for(const _0x2f1c4c of _0x7f921d)_0xbf52f5['\x61\x64\x64'](_0x2f1c4c);return _0xbf52f5[_0x54e85d(0x1e7,'\x54\x61\x73\x38')](_0x54e85d(0x2a3,'\x35\x6e\x69\x4b')+_0x54e85d(0x31a,'\x38\x58\x32\x56')+_0x54e85d(0x319,'\x29\x7a\x30\x49')),Array[_0x54e85d(0x2a0,'\x6d\x40\x31\x79')](_0xbf52f5);}const _0x12f090=0x86a+-0x18f4+0x1096;function _0x9525(_0x21c808,_0x239747){_0x21c808=_0x21c808-(-0x17fc+0x1*0x1043+0x8fd);const _0x2f2728=_0x237b();let _0x1bc14f=_0x2f2728[_0x21c808];if(_0x9525['\x73\x79\x45\x52\x73\x51']===undefined){var _0x559a0e=function(_0x5ed3d4){const _0x1d75ce='\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x2b\x2f\x3d';let _0x15cfb1='',_0x22119d='',_0x254137=_0x15cfb1+_0x559a0e,_0x4ed8ea=(''+function(){return-0x26b*0xd+0x181a+0x755;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(0xbff+0xc87+-0x1*0x1885);for(let _0x1e1bb4=0x14b*0x1a+0x1273+-0x1*0x3411,_0x45ee08,_0x244f2b,_0x521a31=0x1bd*0x7+-0x2*-0x911+-0x1e4d;_0x244f2b=_0x5ed3d4['\x63\x68\x61\x72\x41\x74'](_0x521a31++);~_0x244f2b&&(_0x45ee08=_0x1e1bb4%(0x9*0x37+-0x239a+-0x1*-0x21af)?_0x45ee08*(0x24ca+0xef+0xb5*-0x35)+_0x244f2b:_0x244f2b,_0x1e1bb4++%(-0x1*-0x605+0x254b+0xad3*-0x4))?_0x15cfb1+=_0x4ed8ea||_0x254137['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x521a31+(-0x95*-0x40+0x1867*0x1+-0x3d9d*0x1))-(-0x1f7f+-0x2021+0x3faa)!==-0x72d+-0x1aaf+0xc5*0x2c?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](0x11b0+-0x1ffa+-0x1*-0xf49&_0x45ee08>>(-(-0x1008*0x1+-0x261e+-0x4*-0xd8a)*_0x1e1bb4&-0x111a+0xedb+-0x1*-0x245)):_0x1e1bb4:0x19*0xe5+-0x22c0+-0x3*-0x421){_0x244f2b=_0x1d75ce['\x69\x6e\x64\x65\x78\x4f\x66'](_0x244f2b);}for(let _0x1a9f79=0x824+0x1b7e+-0x23a2,_0x49c72b=_0x15cfb1['\x6c\x65\x6e\x67\x74\x68'];_0x1a9f79<_0x49c72b;_0x1a9f79++){_0x22119d+='\x25'+('\x30\x30'+_0x15cfb1['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1a9f79)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0x1cf6+0x5*-0x77e+0x1*0x427c))['\x73\x6c\x69\x63\x65'](-(0x9d*0x18+0x288+-0x113e));}return decodeURIComponent(_0x22119d);};const _0x167c83=function(_0x20cf63,_0x276a26){let _0x12bc5d=[],_0x25f331=0x1*-0x107+-0x41*0x59+0x2f4*0x8,_0x5eda77,_0x2f9498='';_0x20cf63=_0x559a0e(_0x20cf63);let _0x20918e;for(_0x20918e=-0x6*0x580+-0x1259*-0x2+0x3b2*-0x1;_0x20918e<-0x1898+-0x1195+-0x1*-0x2b2d;_0x20918e++){_0x12bc5d[_0x20918e]=_0x20918e;}for(_0x20918e=-0x1027+-0xcaf*0x1+0xe6b*0x2;_0x20918e<-0x2596*0x1+0x787+0x1f0f*0x1;_0x20918e++){_0x25f331=(_0x25f331+_0x12bc5d[_0x20918e]+_0x276a26['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x20918e%_0x276a26['\x6c\x65\x6e\x67\x74\x68']))%(0x12a*-0x19+0x2f*0xc3+-0x1*0x5b3),_0x5eda77=_0x12bc5d[_0x20918e],_0x12bc5d[_0x20918e]=_0x12bc5d[_0x25f331],_0x12bc5d[_0x25f331]=_0x5eda77;}_0x20918e=-0x20e4+-0x10b7+0x53*0x99,_0x25f331=0x1*-0x16b7+-0x1074+0x272b;for(let _0x207174=0x2ce+-0xc27*-0x1+-0x223*0x7;_0x207174<_0x20cf63['\x6c\x65\x6e\x67\x74\x68'];_0x207174++){_0x20918e=(_0x20918e+(-0x4b*-0x4d+0x15*-0x16a+0x724))%(0xed0+0xb0d+-0x18dd),_0x25f331=(_0x25f331+_0x12bc5d[_0x20918e])%(0xb*0x358+0x1f3c*-0x1+-0x48c),_0x5eda77=_0x12bc5d[_0x20918e],_0x12bc5d[_0x20918e]=_0x12bc5d[_0x25f331],_0x12bc5d[_0x25f331]=_0x5eda77,_0x2f9498+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x20cf63['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x207174)^_0x12bc5d[(_0x12bc5d[_0x20918e]+_0x12bc5d[_0x25f331])%(-0xa7*-0x2f+0x93d+-0x26e6)]);}return _0x2f9498;};_0x9525['\x42\x73\x6f\x4d\x6f\x78']=_0x167c83,_0x9525['\x52\x58\x59\x4b\x48\x54']={},_0x9525['\x73\x79\x45\x52\x73\x51']=!![];}const _0xbbd89f=_0x2f2728[-0x27*0x41+-0xea9+0x1890],_0x49193d=_0x21c808+_0xbbd89f,_0x822b51=_0x9525['\x52\x58\x59\x4b\x48\x54'][_0x49193d];if(!_0x822b51){if(_0x9525['\x48\x6c\x70\x79\x4e\x74']===undefined){const _0x71f8a3=function(_0x5662a3){this['\x45\x53\x76\x71\x6e\x5a']=_0x5662a3,this['\x55\x41\x55\x4a\x70\x45']=[-0x13b3+0x51*-0x47+-0x86f*-0x5,-0x10ce+0x306*-0x2+0x16da,-0x3*0x3ee+-0xc69*0x1+-0x5*-0x4d7],this['\x57\x6d\x4f\x65\x73\x41']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x48\x4b\x4a\x4c\x45\x64']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x52\x49\x49\x7a\x4c\x6b']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x71f8a3['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x67\x64\x4b\x41\x49\x7a']=function(){const _0x3580=new RegExp(this['\x48\x4b\x4a\x4c\x45\x64']+this['\x52\x49\x49\x7a\x4c\x6b']),_0x5a8014=_0x3580['\x74\x65\x73\x74'](this['\x57\x6d\x4f\x65\x73\x41']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x55\x41\x55\x4a\x70\x45'][0x2114+0x1*-0x5b2+-0x1b61]:--this['\x55\x41\x55\x4a\x70\x45'][0x23be+-0x662+0xeae*-0x2];return this['\x78\x6e\x6f\x53\x4a\x71'](_0x5a8014);},_0x71f8a3['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x78\x6e\x6f\x53\x4a\x71']=function(_0x180502){if(!Boolean(~_0x180502))return _0x180502;return this['\x43\x41\x50\x4f\x65\x54'](this['\x45\x53\x76\x71\x6e\x5a']);},_0x71f8a3['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x43\x41\x50\x4f\x65\x54']=function(_0x76a3c2){for(let _0x32dce0=0x12*-0x132+0xe9*0x1e+0x2e5*-0x2,_0x29f418=this['\x55\x41\x55\x4a\x70\x45']['\x6c\x65\x6e\x67\x74\x68'];_0x32dce0<_0x29f418;_0x32dce0++){this['\x55\x41\x55\x4a\x70\x45']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x29f418=this['\x55\x41\x55\x4a\x70\x45']['\x6c\x65\x6e\x67\x74\x68'];}return _0x76a3c2(this['\x55\x41\x55\x4a\x70\x45'][0x5*0x5a7+0x536+-0x2179]);},(''+function(){return-0x518+-0x5b8+0xad0;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0x102*-0x1d+-0x4*-0x178+-0x2319)&&new _0x71f8a3(_0x9525)['\x67\x64\x4b\x41\x49\x7a'](),_0x9525['\x48\x6c\x70\x79\x4e\x74']=!![];}_0x1bc14f=_0x9525['\x42\x73\x6f\x4d\x6f\x78'](_0x1bc14f,_0x239747),_0x9525['\x52\x58\x59\x4b\x48\x54'][_0x49193d]=_0x1bc14f;}else _0x1bc14f=_0x822b51;return _0x1bc14f;}function _0x43cecb(_0x430c01){const _0x211139=_0x1fd2ac,_0x144e8d={'\x51\x49\x58\x77\x4e':function(_0x42d315,_0x1aeca3){return _0x42d315(_0x1aeca3);},'\x66\x4a\x67\x5a\x6a':'\x2e\x2f\x73\x65\x6c\x65\x63\x74'+'\x6f\x72','\x6a\x53\x45\x4e\x74':function(_0x22589e,_0x43fcb3){return _0x22589e===_0x43fcb3;},'\x63\x4c\x6b\x6c\x6f':_0x211139(0x2aa,'\x5b\x5b\x59\x69')},_0x59d9b3=_0x144e8d[_0x211139(0x2b1,'\x38\x26\x35\x56')](_0x160bcd,_0x430c01);let _0x16e4a9=[];try{const {tokenize:_0x4eb7c2}=_0x144e8d['\x51\x49\x58\x77\x4e'](require,_0x144e8d[_0x211139(0x1b4,'\x77\x5d\x47\x5b')]),_0x209944=new Set();for(const _0x48f7e6 of _0x4eb7c2(_0x430c01)){!_0x209944[_0x211139(0x301,'\x6c\x25\x53\x78')](_0x48f7e6)&&(_0x144e8d[_0x211139(0x22b,'\x29\x7a\x30\x49')](_0x144e8d[_0x211139(0x1b6,'\x31\x76\x56\x65')],_0x144e8d[_0x211139(0x1f4,'\x41\x72\x30\x4b')])?(_0x209944[_0x211139(0x21c,'\x63\x73\x23\x37')](_0x48f7e6),_0x16e4a9['\x70\x75\x73\x68'](_0x48f7e6)):_0x315851='');if(_0x16e4a9[_0x211139(0x31b,'\x77\x79\x29\x59')]>=_0x12f090)break;}}catch(_0x4fe70e){_0x16e4a9=[];}const _0x2feae8=new Set();for(const _0x4dc510 of _0x59d9b3)_0x2feae8[_0x211139(0x222,'\x69\x29\x64\x79')](_0x4dc510);for(const _0x245612 of _0x16e4a9)_0x2feae8[_0x211139(0x15f,'\x72\x77\x77\x4c')](_0x245612);return Array[_0x211139(0x181,'\x79\x5e\x67\x76')](_0x2feae8);}async function _0x15071f(_0x363e1a,_0x3e8444){const _0x27f3dd=_0x1fd2ac,_0x216a74={'\x4a\x49\x7a\x73\x78':function(_0x1db191,_0xc4cfb5){return _0x1db191(_0xc4cfb5);},'\x4f\x4b\x57\x50\x66':function(_0x1c13c4,_0x3f98a3){return _0x1c13c4===_0x3f98a3;},'\x52\x6c\x66\x73\x4e':_0x27f3dd(0x220,'\x4b\x6c\x54\x40'),'\x66\x79\x5a\x6c\x43':_0x27f3dd(0x26a,'\x6d\x40\x31\x79')+_0x27f3dd(0x1bb,'\x6d\x40\x31\x79')+_0x27f3dd(0x2cc,'\x72\x77\x77\x4c'),'\x64\x69\x4d\x73\x61':_0x27f3dd(0x27d,'\x54\x61\x73\x38')+_0x27f3dd(0x1f7,'\x79\x5e\x67\x76')+_0x27f3dd(0x279,'\x77\x79\x29\x59'),'\x50\x57\x51\x61\x6c':function(_0x5591d7,_0x54c48c){return _0x5591d7!==_0x54c48c;},'\x6f\x41\x63\x58\x51':_0x27f3dd(0x2a1,'\x63\x69\x76\x38'),'\x67\x47\x55\x5a\x63':_0x27f3dd(0x2d0,'\x63\x73\x23\x37')+_0x27f3dd(0x296,'\x6d\x40\x31\x79'),'\x56\x4d\x59\x79\x72':_0x27f3dd(0x29f,'\x72\x39\x74\x54'),'\x71\x66\x6e\x4c\x41':_0x27f3dd(0x144,'\x72\x6d\x6a\x4f'),'\x67\x79\x71\x76\x4f':function(_0x34aa3e,_0x18c6e2){return _0x34aa3e===_0x18c6e2;},'\x7a\x55\x46\x74\x54':_0x27f3dd(0x1cf,'\x72\x26\x31\x21'),'\x42\x66\x71\x73\x50':_0x27f3dd(0x290,'\x75\x72\x46\x49'),'\x6d\x71\x74\x72\x51':_0x27f3dd(0x1c5,'\x23\x35\x6a\x5a'),'\x4a\x4f\x64\x77\x71':function(_0x2cf9ff){return _0x2cf9ff();},'\x6a\x63\x48\x58\x50':_0x27f3dd(0x1bc,'\x73\x4c\x34\x4f')};let _0x52e349,_0x44f123;try{_0x216a74[_0x27f3dd(0x311,'\x6c\x25\x53\x78')](_0x27f3dd(0x27a,'\x77\x5d\x47\x5b'),_0x216a74['\x6f\x41\x63\x58\x51'])?(_0x52e349=_0x216a74[_0x27f3dd(0x145,'\x5b\x5b\x59\x69')](require,_0x27f3dd(0x149,'\x45\x5d\x77\x41')+_0x27f3dd(0x2e1,'\x23\x35\x6a\x5a')),_0x44f123=require(_0x216a74[_0x27f3dd(0x27e,'\x5e\x40\x6a\x75')])):_0x17d905={};}catch(_0x45a836){return[];}try{if(typeof _0x52e349[_0x27f3dd(0x2cf,'\x79\x5e\x67\x76')+_0x27f3dd(0x2b5,'\x63\x69\x76\x38')+'\x64']===_0x216a74['\x56\x4d\x59\x79\x72']&&!_0x52e349[_0x27f3dd(0x19d,'\x38\x26\x35\x56')+_0x27f3dd(0x305,'\x30\x55\x4c\x6d')+'\x64']())return[];}catch(_0x20a585){}let _0x55e4a2='';try{_0x55e4a2=(typeof _0x44f123[_0x27f3dd(0x1db,'\x52\x6f\x39\x4b')+'\x6c']===_0x216a74[_0x27f3dd(0x209,'\x64\x70\x50\x4a')]?_0x44f123[_0x27f3dd(0x1f6,'\x57\x50\x69\x52')+'\x6c']():_0x52e349[_0x27f3dd(0x2bf,'\x29\x36\x6f\x75')+'\x6c']())||'',_0x55e4a2=_0x55e4a2[_0x27f3dd(0x1f2,'\x30\x72\x6a\x77')](/\/+$/,'');}catch(_0x4545ab){if(_0x27f3dd(0x1d8,'\x23\x35\x6a\x5a')!==_0x216a74['\x71\x66\x6e\x4c\x41'])try{_0x216a74[_0x27f3dd(0x27f,'\x21\x65\x76\x7a')](_0x5ed3d4,{'\x72\x75\x6e\x5f\x69\x64':_0x1d75ce,'\x61\x63\x74\x69\x6f\x6e':_0x15cfb1,'\x61\x73\x73\x65\x74\x5f\x69\x64':_0x22119d[_0x27f3dd(0x177,'\x35\x74\x6f\x6e')]||_0x254137,'\x61\x73\x73\x65\x74\x5f\x74\x79\x70\x65':'\x47\x65\x6e\x65','\x73\x6f\x75\x72\x63\x65\x5f\x6e\x6f\x64\x65\x5f\x69\x64':_0x4ed8ea[_0x27f3dd(0x2de,'\x36\x21\x43\x44')+_0x27f3dd(0x294,'\x52\x6f\x39\x4b')]||_0x1e1bb4,'\x63\x68\x61\x69\x6e\x5f\x69\x64':_0x45ee08[_0x27f3dd(0x2d3,'\x52\x6f\x39\x4b')]||_0x244f2b,'\x73\x63\x6f\x72\x65':_0x521a31['\x73\x69\x6d\x69\x6c\x61\x72\x69'+'\x74\x79'],'\x73\x69\x67\x6e\x61\x6c\x73':_0x1a9f79[_0x27f3dd(0x254,'\x41\x72\x30\x4b')](-0x181a+-0x9f5+0x220f*0x1,-0x655*-0x4+-0x3b*-0xf+-0x1cc1),'\x72\x65\x61\x73\x6f\x6e':_0x216a74['\x4f\x4b\x57\x50\x66'](_0x49c72b[_0x27f3dd(0x23d,'\x61\x46\x6e\x7a')],_0x216a74[_0x27f3dd(0x1f5,'\x69\x44\x4d\x4f')])?_0x216a74[_0x27f3dd(0x167,'\x52\x6f\x39\x4b')]:_0x27f3dd(0x2e8,'\x6d\x40\x31\x79')+_0x27f3dd(0x17f,'\x61\x46\x6e\x7a')+_0x27f3dd(0x2d1,'\x26\x36\x21\x25'),'\x65\x78\x74\x72\x61':{'\x76\x69\x61':_0x27f3dd(0x1bf,'\x64\x33\x52\x36')+_0x27f3dd(0x1e1,'\x77\x5d\x47\x5b'),'\x61\x74\x74\x72\x69\x62\x75\x74\x69\x6f\x6e':_0x216a74[_0x27f3dd(0x26f,'\x23\x35\x6a\x5a')],'\x6f\x72\x69\x67\x69\x6e':_0x20cf63[_0x27f3dd(0x1a9,'\x43\x65\x6f\x62')]}});}catch(_0x3076b3){}else _0x55e4a2='';}if(!_0x55e4a2)return[];let _0x8e6c52={};try{_0x216a74[_0x27f3dd(0x15c,'\x63\x69\x76\x38')](_0x216a74[_0x27f3dd(0x2d8,'\x23\x35\x6a\x5a')],_0x216a74[_0x27f3dd(0x1b2,'\x6e\x31\x41\x40')])?_0x44b6b3='':_0x8e6c52=_0x44f123[_0x27f3dd(0x173,'\x5d\x46\x4b\x5a')+_0x27f3dd(0x1de,'\x5d\x46\x4b\x5a')]();}catch(_0xeb9c9f){_0x216a74['\x67\x79\x71\x76\x4f'](_0x216a74['\x6d\x71\x74\x72\x51'],_0x216a74[_0x27f3dd(0x285,'\x6b\x74\x69\x35')])?_0x8e6c52={}:(_0x2e1c97[_0x27f3dd(0x178,'\x6d\x40\x31\x79')](_0x1c1f46),_0x12a114[_0x27f3dd(0x1e5,'\x5e\x40\x6a\x75')](_0x34652f));}let _0xe4b6e6=[];try{_0xe4b6e6=await _0x52e349[_0x27f3dd(0x2da,'\x35\x6e\x69\x4b')+_0x27f3dd(0x257,'\x21\x65\x76\x7a')+_0x27f3dd(0x2f2,'\x57\x34\x67\x6d')](_0x55e4a2,_0x8e6c52,_0x363e1a,_0x3e8444);}catch(_0x33d01e){return[];}if(!Array[_0x27f3dd(0x29e,'\x38\x26\x35\x56')](_0xe4b6e6))return[];const _0x123309=_0x216a74[_0x27f3dd(0x16e,'\x4b\x24\x70\x25')](_0x35536c);let _0x678b34='';try{_0x678b34=_0x44f123[_0x27f3dd(0x2ac,'\x69\x29\x64\x79')+'\x64']()||'';}catch(_0x4170e0){_0x678b34='';}const _0x4f90c8=[];for(const _0xb80cf of _0xe4b6e6){if(!_0xb80cf||typeof _0xb80cf!==_0x216a74[_0x27f3dd(0x21b,'\x23\x35\x6a\x5a')])continue;const _0x24df80=Number(_0xb80cf[_0x27f3dd(0x22a,'\x35\x74\x6f\x6e')+_0x27f3dd(0x1eb,'\x69\x44\x4d\x4f')+_0x27f3dd(0x25b,'\x77\x79\x29\x59')]);if(!Number[_0x27f3dd(0x1e8,'\x29\x36\x6f\x75')](_0x24df80)||_0x24df80<_0x123309)continue;if(_0x678b34&&_0xb80cf[_0x27f3dd(0x179,'\x72\x6d\x6a\x4f')+_0x27f3dd(0x234,'\x61\x46\x6e\x7a')]&&_0xb80cf[_0x27f3dd(0x24f,'\x75\x72\x46\x49')+_0x27f3dd(0x1d2,'\x32\x43\x5b\x68')]===_0x678b34)continue;const _0x15b5e9={};_0x15b5e9[_0x27f3dd(0x2e7,'\x6e\x31\x41\x40')]=_0xb80cf['\x61\x73\x73\x65\x74\x5f\x69\x64']||_0xb80cf[_0x27f3dd(0x224,'\x45\x5d\x77\x41')]||'',_0x15b5e9[_0x27f3dd(0x200,'\x45\x5d\x77\x41')+_0x27f3dd(0x2e9,'\x38\x58\x32\x56')]=_0xb80cf[_0x27f3dd(0x26b,'\x6b\x74\x69\x35')+_0x27f3dd(0x14d,'\x4b\x24\x70\x25')]||'',_0x15b5e9[_0x27f3dd(0x2d3,'\x52\x6f\x39\x4b')]=_0xb80cf['\x63\x68\x61\x69\x6e\x5f\x69\x64']||'',_0x15b5e9[_0x27f3dd(0x316,'\x57\x50\x69\x52')+'\x74\x79']=_0x24df80,_0x15b5e9[_0x27f3dd(0x1ad,'\x77\x5d\x47\x5b')]=_0xb80cf[_0x27f3dd(0x18c,'\x45\x5d\x77\x41')+_0x27f3dd(0x243,'\x54\x61\x73\x38')]||_0xb80cf[_0x27f3dd(0x1fb,'\x4b\x24\x70\x25')]||_0xb80cf[_0x27f3dd(0x216,'\x4d\x6e\x30\x38')]||'',_0x15b5e9[_0x27f3dd(0x1e3,'\x41\x72\x30\x4b')]=_0xb80cf['\x6e\x6c\x5f\x73\x75\x6d\x6d\x61'+'\x72\x79']||_0xb80cf['\x73\x75\x6d\x6d\x61\x72\x79']||'',_0x15b5e9[_0x27f3dd(0x2f3,'\x36\x21\x43\x44')]=_0x216a74['\x52\x6c\x66\x73\x4e'],_0x4f90c8[_0x27f3dd(0x204,'\x29\x36\x6f\x75')](_0x15b5e9);}return _0x4f90c8;}function _0xe779c4(_0xaf37b3){const _0x391b76=_0x1fd2ac,_0x204a7c={'\x75\x49\x54\x70\x4e':function(_0x42a9f3,_0x50394e){return _0x42a9f3!=_0x50394e;},'\x7a\x55\x73\x43\x6c':_0x391b76(0x2fa,'\x4d\x6e\x30\x38')+_0x391b76(0x1cd,'\x72\x26\x31\x21')+'\x65\x64','\x75\x7a\x62\x42\x51':_0x391b76(0x189,'\x30\x55\x4c\x6d'),'\x4b\x79\x7a\x6e\x44':function(_0x2e195e,_0x574eb4){return _0x2e195e+_0x574eb4;},'\x6d\x75\x4c\x6b\x67':function(_0x118da5,_0x2747ed){return _0x118da5===_0x2747ed;},'\x43\x4d\x73\x41\x6c':'\x4e\x71\x66\x43\x65','\x4a\x57\x4e\x69\x53':function(_0x2cc799,_0x47505c){return _0x2cc799(_0x47505c);},'\x72\x67\x51\x52\x61':_0x391b76(0x228,'\x57\x50\x69\x52')+_0x391b76(0x19f,'\x35\x74\x6f\x6e'),'\x59\x45\x4d\x41\x43':_0x391b76(0x2d7,'\x6c\x25\x53\x78')+'\x6f\x72','\x41\x51\x66\x6c\x41':function(_0x5d38db,_0x42d68a){return _0x5d38db<_0x42d68a;},'\x66\x6c\x64\x4a\x74':function(_0x34e4f,_0x4ef581){return _0x34e4f===_0x4ef581;},'\x55\x59\x52\x67\x65':_0x391b76(0x165,'\x64\x70\x50\x4a'),'\x65\x78\x4b\x55\x6c':_0x391b76(0x1df,'\x31\x76\x56\x65'),'\x4d\x65\x72\x52\x57':_0x391b76(0x1bd,'\x6e\x31\x41\x40'),'\x66\x4b\x42\x72\x72':function(_0x1ba44f,_0x16de38){return _0x1ba44f+_0x16de38;},'\x70\x4a\x7a\x4d\x6f':function(_0x335510,_0x2a591b){return _0x335510*_0x2a591b;},'\x77\x54\x70\x42\x75':_0x391b76(0x1ab,'\x45\x69\x5b\x4c')};let _0x422e3b=[],_0x454428;try{if(_0x204a7c[_0x391b76(0x223,'\x6e\x31\x41\x40')](_0x204a7c[_0x391b76(0x1a1,'\x63\x69\x76\x38')],_0x204a7c[_0x391b76(0x1a1,'\x63\x69\x76\x38')]))_0x422e3b=_0x204a7c[_0x391b76(0x199,'\x69\x44\x4d\x4f')](require,_0x204a7c[_0x391b76(0x148,'\x72\x6d\x6a\x4f')])[_0x391b76(0x1f9,'\x26\x36\x21\x25')+'\x73']()||[],_0x454428=require(_0x204a7c[_0x391b76(0x21a,'\x52\x6f\x39\x4b')]);else{const _0x1a6366=(_0x47521a[_0x391b76(0x1ea,'\x63\x73\x23\x37')]||'')[_0x391b76(0x275,'\x23\x35\x6a\x5a')]()[_0x391b76(0x2b7,'\x45\x5d\x77\x41')](-0x1*-0x515+-0xe06+0x8f1*0x1,0x16a5+-0x81a+-0xe3b),_0xa6b73b=(_0x323d25[_0x391b76(0x185,'\x30\x72\x6a\x77')]||'')[_0x391b76(0x2c1,'\x6c\x25\x53\x78')]()[_0x391b76(0x169,'\x6d\x40\x31\x79')](/\s+/g,'\x20')[_0x391b76(0x2fd,'\x77\x79\x29\x59')]()['\x73\x6c\x69\x63\x65'](0xf42+-0x1fea+0x8*0x215,_0x338f9b),_0x57186d=_0x204a7c[_0x391b76(0x2bb,'\x61\x46\x6e\x7a')](_0x5b5013['\x73\x69\x6d\x69\x6c\x61\x72\x69'+'\x74\x79'],null)?_0x27e57a[_0x391b76(0x1ac,'\x38\x26\x35\x56')+'\x74\x79'][_0x391b76(0x314,'\x63\x69\x76\x38')](-0x2*0x233+-0x2652+-0x6*-0x71f):'\x3f',_0x331396=_0xa837ca[_0x391b76(0x1ba,'\x5e\x40\x6a\x75')]?_0x391b76(0x247,'\x6d\x40\x31\x79')+_0x4c4deb[_0x391b76(0x1b1,'\x31\x76\x56\x65')]:_0x204a7c[_0x391b76(0x2f5,'\x5b\x5b\x59\x69')];if(_0x516aa3[_0x391b76(0x166,'\x64\x33\x52\x36')])_0x53c987=!![];_0x156d67[_0x391b76(0x1f3,'\x52\x6f\x39\x4b')]('\x2d\x20'+(_0x1a6366?_0x391b76(0x1c1,'\x5e\x40\x6a\x75')+_0x1a6366+'\x22':_0x204a7c[_0x391b76(0x291,'\x63\x73\x23\x37')])+'\x20\x28'+_0x331396+'\x2c\x20\x73\x69\x6d\x20'+_0x57186d+'\x29'+(_0xa6b73b?_0x204a7c[_0x391b76(0x2e0,'\x29\x36\x6f\x75')]('\x3a\x20',_0xa6b73b):''));}}catch(_0x3cd7e9){return[];}if(!Array[_0x391b76(0x17e,'\x45\x5d\x77\x41')](_0x422e3b)||_0x422e3b[_0x391b76(0x28a,'\x52\x6f\x39\x4b')]===0x118e+0x89*-0x1e+0x1*-0x180||!_0x454428)return[];const _0x4d97d7=[];for(const _0x3896b5 of _0x422e3b){if(!_0x3896b5||_0x3896b5[_0x391b76(0x2b9,'\x6c\x25\x53\x78')]!==_0x204a7c[_0x391b76(0x217,'\x75\x72\x46\x49')])continue;const _0x2e2338=Array[_0x391b76(0x273,'\x72\x77\x77\x4c')](_0x3896b5[_0x391b76(0x2b3,'\x5e\x40\x6a\x75')+_0x391b76(0x236,'\x64\x33\x52\x36')])?_0x3896b5['\x73\x69\x67\x6e\x61\x6c\x73\x5f'+_0x391b76(0x1b0,'\x77\x5d\x47\x5b')]:[];let _0x1dd35b=0x1*0x4f+0x119f*0x1+-0x9*0x1fe;for(const _0x3dcc60 of _0x2e2338){try{if(_0x454428[_0x391b76(0x15e,'\x52\x6f\x39\x4b')+_0x391b76(0x281,'\x72\x39\x74\x54')+_0x391b76(0x196,'\x30\x72\x6a\x77')](_0x3dcc60,_0xaf37b3))_0x1dd35b++;}catch(_0x36d7ed){}}if(_0x204a7c['\x41\x51\x66\x6c\x41'](_0x1dd35b,0x7a*0x46+0x427+-0x2582))continue;let _0x51cc95=-0xa18+-0x11cc+0x1be4;try{_0x51cc95=_0x454428[_0x391b76(0x1d0,'\x4d\x6e\x30\x38')+'\x65\x53\x65\x6d\x61\x6e\x74\x69'+'\x63'](_0x3896b5,_0xaf37b3)||-0xc91+-0x1f3*0x2+0x1077;}catch(_0x2f2d3f){_0x51cc95=-0x3d6*0x7+0xec6+0xc14;}let _0x352664=(_0x3896b5[_0x391b76(0x276,'\x69\x44\x4d\x4f')]||'')[_0x391b76(0x171,'\x29\x36\x6f\x75')]()[_0x391b76(0x201,'\x36\x21\x43\x44')]();if(!_0x352664&&_0x3896b5[_0x391b76(0x27c,'\x23\x35\x6a\x5a')]&&_0x204a7c[_0x391b76(0x246,'\x29\x7a\x30\x49')](typeof _0x3896b5[_0x391b76(0x2a5,'\x57\x34\x67\x6d')],_0x204a7c[_0x391b76(0x20f,'\x75\x72\x46\x49')])){const _0x311a51=[];if(Array[_0x391b76(0x1cb,'\x5b\x5b\x59\x69')](_0x3896b5[_0x391b76(0x29b,'\x72\x26\x31\x21')][_0x391b76(0x2bd,'\x38\x26\x35\x56')]))_0x311a51['\x70\x75\x73\x68'](_0x3896b5[_0x391b76(0x262,'\x72\x6d\x6a\x4f')][_0x391b76(0x18f,'\x41\x72\x30\x4b')][_0x391b76(0x1e6,'\x57\x34\x67\x6d')](-0x1222+-0x2*0x1375+0x390c,0x115e+-0xcf*0x2d+0x1308)[_0x391b76(0x168,'\x38\x26\x35\x56')]('\x3b\x20'));if(_0x204a7c[_0x391b76(0x1be,'\x21\x29\x44\x33')](typeof _0x3896b5[_0x391b76(0x23b,'\x6e\x31\x41\x40')][_0x391b76(0x26d,'\x5b\x5b\x59\x69')],_0x204a7c[_0x391b76(0x2b8,'\x69\x44\x4d\x4f')]))_0x311a51[_0x391b76(0x1fc,'\x21\x29\x44\x33')](_0x3896b5[_0x391b76(0x25f,'\x72\x39\x74\x54')][_0x391b76(0x258,'\x72\x6d\x6a\x4f')]);_0x352664=_0x311a51[_0x391b76(0x2c9,'\x57\x34\x67\x6d')](Boolean)['\x6a\x6f\x69\x6e'](_0x204a7c[_0x391b76(0x235,'\x45\x5d\x77\x41')])[_0x391b76(0x158,'\x31\x76\x56\x65')]();}if(!_0x352664){const _0x537374=_0x2e2338[_0x391b76(0x195,'\x57\x50\x69\x52')](_0x4b2774=>String(_0x4b2774)[_0x391b76(0x188,'\x45\x5d\x77\x41')]('\x7c')[0x12dd+-0x963+-0x97a])['\x66\x69\x6c\x74\x65\x72'](_0x1798d4=>_0x1798d4&&!_0x1798d4['\x73\x74\x61\x72\x74\x73\x57\x69'+'\x74\x68']('\x2f'))['\x73\x6c\x69\x63\x65'](0x1504+-0x690+-0xe74,0x10c7*-0x1+-0x885*-0x1+0x846);if(_0x537374[_0x391b76(0x2a2,'\x64\x33\x52\x36')])_0x352664='\x6d\x61\x74\x63\x68\x65\x73\x3a'+'\x20'+_0x537374[_0x391b76(0x1f0,'\x72\x6d\x6a\x4f')]('\x2c\x20');}_0x4d97d7['\x70\x75\x73\x68']({'\x61\x73\x73\x65\x74\x5f\x69\x64':_0x3896b5[_0x391b76(0x211,'\x29\x36\x6f\x75')]||'','\x73\x6f\x75\x72\x63\x65\x5f\x6e\x6f\x64\x65\x5f\x69\x64':_0x3896b5[_0x391b76(0x19e,'\x30\x72\x6a\x77')+_0x391b76(0x29c,'\x33\x79\x32\x72')]||_0x3896b5[_0x391b76(0x186,'\x30\x55\x4c\x6d')+'\x6f\x64\x65\x5f\x69\x64']||'','\x63\x68\x61\x69\x6e\x5f\x69\x64':_0x3896b5[_0x391b76(0x1d6,'\x63\x73\x23\x37')]||'','\x73\x69\x6d\x69\x6c\x61\x72\x69\x74\x79':Math[_0x391b76(0x1fa,'\x29\x7a\x30\x49')](0x5f+-0xc1d*0x1+0x1*0xbbf,_0x204a7c[_0x391b76(0x190,'\x69\x44\x4d\x4f')](0x7b8+-0x13d*0x1+-0x4f*0x15+0.75,(-0x1*0x61d+0x86f*0x2+0xac1*-0x1+0.05)*_0x1dd35b)+_0x204a7c[_0x391b76(0x2f1,'\x4d\x6e\x30\x38')](-0x1c+-0x44+0x1*0x60+0.1,_0x51cc95)),'\x74\x69\x74\x6c\x65':_0x3896b5['\x69\x64']||_0x3896b5[_0x391b76(0x206,'\x26\x36\x21\x25')+_0x391b76(0x193,'\x63\x69\x76\x38')]||'','\x73\x75\x6d\x6d\x61\x72\x79':_0x352664,'\x6f\x72\x69\x67\x69\x6e':_0x204a7c['\x77\x54\x70\x42\x75'],'\x5f\x68\x69\x74\x73':_0x1dd35b});}return _0x4d97d7;}function _0x5cb574(_0xb5fd5e){const _0x4d9933=_0x1fd2ac,_0x514705={'\x78\x6b\x45\x4d\x61':function(_0x5d5761,_0x556c6b){return _0x5d5761(_0x556c6b);},'\x6d\x58\x55\x45\x49':function(_0x56b561,_0x3344cd){return _0x56b561||_0x3344cd;}},_0x3df968=(_0xb5fd5e&&_0xb5fd5e['\x74\x69\x74\x6c\x65']?String(_0xb5fd5e[_0x4d9933(0x2c0,'\x21\x29\x44\x33')]):'')[_0x4d9933(0x229,'\x63\x69\x76\x38')](),_0x577ac0=(_0xb5fd5e&&_0xb5fd5e['\x73\x75\x6d\x6d\x61\x72\x79']?_0x514705['\x78\x6b\x45\x4d\x61'](String,_0xb5fd5e[_0x4d9933(0x295,'\x61\x46\x6e\x7a')]):'')[_0x4d9933(0x2d5,'\x4d\x6e\x30\x38')]();return!!_0x514705['\x6d\x58\x55\x45\x49'](_0x3df968,_0x577ac0);}function _0x220c35(_0x521277){const _0x25ac41=_0x1fd2ac,_0x967b0d={};_0x967b0d[_0x25ac41(0x1b3,'\x75\x72\x46\x49')]=function(_0x2a0bd3,_0xf0b5f2){return _0x2a0bd3!=_0xf0b5f2;},_0x967b0d[_0x25ac41(0x23e,'\x77\x79\x29\x59')]=_0x25ac41(0x22d,'\x38\x26\x35\x56')+'\x6e\x70\x75\x62\x6c\x69\x73\x68'+'\x65\x64',_0x967b0d['\x70\x57\x74\x59\x57']=_0x25ac41(0x2dc,'\x36\x21\x43\x44'),_0x967b0d[_0x25ac41(0x30b,'\x4b\x6c\x54\x40')]=function(_0x3aca0f,_0x2faaaf){return _0x3aca0f+_0x2faaaf;},_0x967b0d[_0x25ac41(0x2c8,'\x31\x76\x56\x65')]=_0x25ac41(0x1e4,'\x69\x44\x4d\x4f')+'\x64\x69\x73\x74\x69\x6c\x6c\x65'+_0x25ac41(0x24d,'\x72\x6d\x6a\x4f')+_0x25ac41(0x2b2,'\x6b\x74\x69\x35')+_0x25ac41(0x1b9,'\x61\x46\x6e\x7a')+_0x25ac41(0x315,'\x57\x34\x67\x6d')+_0x25ac41(0x2b6,'\x64\x33\x52\x36')+_0x25ac41(0x2a7,'\x75\x72\x46\x49')+_0x25ac41(0x174,'\x61\x46\x6e\x7a')+_0x25ac41(0x2fe,'\x52\x6f\x39\x4b'),_0x967b0d['\x74\x74\x4e\x45\x69']=_0x25ac41(0x14b,'\x6e\x31\x41\x40')+_0x25ac41(0x15d,'\x5e\x40\x6a\x75')+_0x25ac41(0x1a0,'\x63\x69\x76\x38')+'\x65\x74\x3a\x20\x60\x67\x65\x70'+_0x25ac41(0x1ef,'\x63\x69\x76\x38')+'\x61\x73\x73\x65\x74\x5f\x69\x64'+_0x25ac41(0x269,'\x69\x29\x64\x79')+_0x25ac41(0x242,'\x69\x44\x4d\x4f')+_0x25ac41(0x16f,'\x29\x7a\x30\x49'),_0x967b0d[_0x25ac41(0x1d4,'\x29\x7a\x30\x49')]=function(_0x4ac00e,_0x54391f){return _0x4ac00e>_0x54391f;};const _0x24439e=_0x967b0d,_0x54e9f0=(_0x521277||[])[_0x25ac41(0x156,'\x6b\x74\x69\x35')](_0x5cb574);if(!_0x54e9f0[_0x25ac41(0x256,'\x36\x21\x43\x44')])return'';const _0x36659a=[_0x25ac41(0x213,'\x4b\x24\x70\x25')+'\x20\u2014\x20\x72\x65\x6c\x65\x76'+_0x25ac41(0x2f0,'\x32\x43\x5b\x68')+_0x25ac41(0x227,'\x64\x70\x50\x4a')+_0x25ac41(0x2e2,'\x4b\x24\x70\x25')];let _0x347450=![];for(const _0x329397 of _0x54e9f0){const _0x499198=(_0x329397[_0x25ac41(0x1f1,'\x45\x69\x5b\x4c')]||'')[_0x25ac41(0x28b,'\x30\x55\x4c\x6d')]()[_0x25ac41(0x1da,'\x5d\x46\x4b\x5a')](0xe*0x1ed+0x1*0xab1+-0x237*0x11,0x19f2+0x1*0xb92+-0x2534),_0x58ad54=(_0x329397[_0x25ac41(0x284,'\x72\x39\x74\x54')]||'')[_0x25ac41(0x1d9,'\x63\x73\x23\x37')]()[_0x25ac41(0x17b,'\x69\x29\x64\x79')](/\s+/g,'\x20')[_0x25ac41(0x1ec,'\x35\x74\x6f\x6e')]()[_0x25ac41(0x28d,'\x6c\x25\x53\x78')](0xae8+-0x1*0x1429+-0x1*-0x941,_0xaa58f5),_0x100051=_0x24439e[_0x25ac41(0x1a2,'\x69\x44\x4d\x4f')](_0x329397[_0x25ac41(0x289,'\x5e\x40\x6a\x75')+'\x74\x79'],null)?_0x329397['\x73\x69\x6d\x69\x6c\x61\x72\x69'+'\x74\x79']['\x74\x6f\x46\x69\x78\x65\x64'](0x56*-0x6d+0xcec*-0x2+0x3e78*0x1):'\x3f',_0xecdf2d=_0x329397['\x61\x73\x73\x65\x74\x5f\x69\x64']?_0x25ac41(0x249,'\x43\x65\x6f\x62')+_0x329397[_0x25ac41(0x259,'\x21\x65\x76\x7a')]:_0x24439e[_0x25ac41(0x23a,'\x32\x43\x5b\x68')];if(_0x329397['\x61\x73\x73\x65\x74\x5f\x69\x64'])_0x347450=!![];_0x36659a[_0x25ac41(0x19b,'\x5d\x46\x4b\x5a')]('\x2d\x20'+(_0x499198?_0x25ac41(0x1c6,'\x57\x50\x69\x52')+_0x499198+'\x22':_0x24439e[_0x25ac41(0x22c,'\x63\x73\x23\x37')])+'\x20\x28'+_0xecdf2d+_0x25ac41(0x29d,'\x72\x77\x77\x4c')+_0x100051+'\x29'+(_0x58ad54?_0x24439e[_0x25ac41(0x27b,'\x33\x79\x32\x72')]('\x3a\x20',_0x58ad54):''));}_0x36659a[_0x25ac41(0x19b,'\x5d\x46\x4b\x5a')](_0x24439e[_0x25ac41(0x240,'\x36\x21\x43\x44')]);if(_0x347450)_0x36659a[_0x25ac41(0x161,'\x45\x69\x5b\x4c')](_0x24439e[_0x25ac41(0x2bc,'\x4b\x24\x70\x25')]);const _0x5c3bd0=_0x36659a[_0x25ac41(0x20b,'\x33\x79\x32\x72')]('\x0a');return _0x24439e[_0x25ac41(0x2fb,'\x4b\x24\x70\x25')](_0x5c3bd0['\x6c\x65\x6e\x67\x74\x68'],_0x4f7d0b)?_0x5c3bd0[_0x25ac41(0x1ff,'\x63\x69\x76\x38')](0xa19+0x255*0xb+-0x23c0,_0x4f7d0b):_0x5c3bd0;}function _0x228f75(_0x58492e,_0x235dfd,_0x556ab2,_0x4e5db5){const _0x4fe7d7=_0x1fd2ac,_0x2a6887={'\x54\x41\x69\x71\x43':function(_0x1b6bad,_0x323a57){return _0x1b6bad<=_0x323a57;},'\x4b\x5a\x66\x6b\x65':function(_0x3d222d,_0x203789){return _0x3d222d(_0x203789);},'\x68\x65\x63\x4a\x7a':_0x4fe7d7(0x18e,'\x72\x6d\x6a\x4f'),'\x52\x44\x6e\x61\x48':_0x4fe7d7(0x14e,'\x29\x36\x6f\x75')+_0x4fe7d7(0x245,'\x63\x69\x76\x38'),'\x45\x4d\x76\x62\x54':'\x61\x73\x73\x65\x74\x5f\x69\x6e'+_0x4fe7d7(0x232,'\x5e\x40\x6a\x75')+'\x64\x6f\x77','\x45\x65\x78\x68\x49':_0x4fe7d7(0x1ce,'\x5b\x5b\x59\x69'),'\x73\x79\x7a\x6c\x52':_0x4fe7d7(0x24e,'\x26\x36\x21\x25'),'\x45\x48\x68\x50\x4b':function(_0x1e58ee,_0x38d6e1){return _0x1e58ee(_0x38d6e1);},'\x54\x72\x49\x4d\x4d':_0x4fe7d7(0x1fd,'\x21\x29\x44\x33'),'\x71\x76\x76\x41\x6c':_0x4fe7d7(0x308,'\x6b\x74\x69\x35')+_0x4fe7d7(0x30f,'\x77\x5d\x47\x5b')+'\x72\x6e\x5f\x68\x69\x74','\x42\x57\x54\x79\x6e':_0x4fe7d7(0x218,'\x41\x72\x30\x4b')+_0x4fe7d7(0x22f,'\x29\x7a\x30\x49'),'\x76\x53\x5a\x49\x4a':_0x4fe7d7(0x20a,'\x61\x46\x6e\x7a')+_0x4fe7d7(0x1ca,'\x77\x79\x29\x59')+_0x4fe7d7(0x151,'\x6d\x40\x31\x79')};let _0x230da0;try{({logAssetCall:_0x230da0}=_0x2a6887[_0x4fe7d7(0x159,'\x5e\x40\x6a\x75')](require,_0x4fe7d7(0x146,'\x72\x6d\x6a\x4f')+_0x4fe7d7(0x21d,'\x57\x50\x69\x52')));}catch(_0x2be86b){return;}const _0x19ae46=_0x235dfd===_0x2a6887['\x68\x65\x63\x4a\x7a']?_0x2a6887[_0x4fe7d7(0x266,'\x30\x72\x6a\x77')]:_0x2a6887['\x45\x4d\x76\x62\x54'];for(const _0x417c8a of _0x58492e){if(_0x2a6887[_0x4fe7d7(0x2ec,'\x35\x6e\x69\x4b')]===_0x2a6887[_0x4fe7d7(0x22e,'\x57\x50\x69\x52')]){const _0x286ef4=_0x320c02(_0x43c7e0.env.EVOLVER_RECALL_MAX,-0x1ea4+-0x25a9+0x4457);return _0x4b04ed[_0x4fe7d7(0x244,'\x5d\x46\x4b\x5a')](_0x286ef4)&&_0x286ef4>-0x1*0x1c4+0x201f+-0x1e5b*0x1&&ORPxMo[_0x4fe7d7(0x147,'\x5d\x46\x4b\x5a')](_0x286ef4,-0xfb0+-0x1dcf+0x2d89)?_0x286ef4:-0x229f*-0x1+-0x235*0x1+-0x2069;}else try{_0x2a6887[_0x4fe7d7(0x286,'\x6b\x74\x69\x35')](_0x230da0,{'\x72\x75\x6e\x5f\x69\x64':_0x556ab2,'\x61\x63\x74\x69\x6f\x6e':_0x19ae46,'\x61\x73\x73\x65\x74\x5f\x69\x64':_0x417c8a[_0x4fe7d7(0x2a8,'\x57\x34\x67\x6d')]||undefined,'\x61\x73\x73\x65\x74\x5f\x74\x79\x70\x65':_0x2a6887[_0x4fe7d7(0x30e,'\x6c\x25\x53\x78')],'\x73\x6f\x75\x72\x63\x65\x5f\x6e\x6f\x64\x65\x5f\x69\x64':_0x417c8a['\x73\x6f\x75\x72\x63\x65\x5f\x6e'+_0x4fe7d7(0x261,'\x45\x69\x5b\x4c')]||undefined,'\x63\x68\x61\x69\x6e\x5f\x69\x64':_0x417c8a[_0x4fe7d7(0x2ba,'\x72\x6d\x6a\x4f')]||undefined,'\x73\x63\x6f\x72\x65':_0x417c8a[_0x4fe7d7(0x150,'\x72\x77\x77\x4c')+'\x74\x79'],'\x73\x69\x67\x6e\x61\x6c\x73':_0x4e5db5[_0x4fe7d7(0x271,'\x5b\x5b\x59\x69')](0x177c+-0x58d*-0x1+0x1d09*-0x1,-0x1b1*-0x7+0x7*-0x584+-0x1*-0x1acd),'\x72\x65\x61\x73\x6f\x6e':_0x417c8a[_0x4fe7d7(0x25a,'\x29\x7a\x30\x49')]===_0x4fe7d7(0x2d6,'\x26\x36\x21\x25')?_0x4fe7d7(0x2ef,'\x23\x35\x6a\x5a')+_0x4fe7d7(0x19c,'\x5b\x5b\x59\x69')+'\x68\x5f\x62\x61\x6e\x64':_0x2a6887[_0x4fe7d7(0x1c3,'\x75\x72\x46\x49')],'\x65\x78\x74\x72\x61':{'\x76\x69\x61':_0x2a6887['\x42\x57\x54\x79\x6e'],'\x61\x74\x74\x72\x69\x62\x75\x74\x69\x6f\x6e':_0x2a6887['\x76\x53\x5a\x49\x4a'],'\x6f\x72\x69\x67\x69\x6e':_0x417c8a[_0x4fe7d7(0x18d,'\x41\x72\x30\x4b')]}});}catch(_0xe65f1e){}}}async function _0x2cf1cd(_0x643629){const _0x630427=_0x1fd2ac,_0x345f70={'\x53\x4f\x6e\x49\x6d':_0x630427(0x1cc,'\x64\x33\x52\x36')+_0x630427(0x17d,'\x33\x79\x32\x72'),'\x54\x63\x67\x56\x44':function(_0xdf3748,_0x49637b){return _0xdf3748||_0x49637b;},'\x75\x50\x7a\x45\x7a':function(_0x53773d){return _0x53773d();},'\x42\x78\x42\x50\x6b':function(_0x2ee6ec,_0x1607d2){return _0x2ee6ec===_0x1607d2;},'\x63\x58\x4b\x59\x4d':function(_0x82e942,_0x486cc0){return _0x82e942(_0x486cc0);},'\x75\x71\x4f\x42\x54':function(_0x3c5e5a,_0x13badb){return _0x3c5e5a>_0x13badb;},'\x69\x79\x72\x54\x53':'\x4a\x4c\x77\x64\x4d','\x59\x4e\x68\x72\x6e':function(_0x241ad4,_0x18a1a2){return _0x241ad4-_0x18a1a2;},'\x73\x56\x51\x7a\x53':function(_0x146889,_0x51c320){return _0x146889>=_0x51c320;},'\x59\x71\x5a\x51\x46':function(_0x1d3c06,_0x24c707){return _0x1d3c06-_0x24c707;},'\x48\x6f\x6d\x4a\x4e':function(_0x36bffe,_0x49df28){return _0x36bffe+_0x49df28;},'\x45\x75\x6a\x78\x56':_0x630427(0x297,'\x73\x4c\x34\x4f'),'\x6e\x4a\x53\x51\x61':function(_0x485dea,_0x2b09fd,_0x3c2330,_0x1db47f,_0x128728){return _0x485dea(_0x2b09fd,_0x3c2330,_0x1db47f,_0x128728);},'\x71\x44\x64\x6a\x54':function(_0x294d8c,_0x266631){return _0x294d8c===_0x266631;},'\x57\x78\x78\x67\x69':_0x630427(0x1af,'\x75\x72\x46\x49')},_0x164ee4=_0x345f70[_0x630427(0x2c5,'\x5b\x5b\x59\x69')](_0x643629,{}),_0x53d177=_0x164ee4[_0x630427(0x1a4,'\x69\x29\x64\x79')]||_0x345f70[_0x630427(0x317,'\x75\x72\x46\x49')](_0x5f1fa7),_0x3fb48e={};_0x3fb48e[_0x630427(0x1c4,'\x57\x34\x67\x6d')]=![],_0x3fb48e[_0x630427(0x1c2,'\x41\x72\x30\x4b')]=null,_0x3fb48e[_0x630427(0x194,'\x52\x6f\x39\x4b')]=[],_0x3fb48e[_0x630427(0x1d3,'\x77\x5d\x47\x5b')]=0x0,_0x3fb48e[_0x630427(0x2ee,'\x6b\x74\x69\x35')]=[];if(_0x345f70[_0x630427(0x2ed,'\x30\x55\x4c\x6d')](_0x53d177,_0x630427(0x255,'\x6d\x40\x31\x79')))return _0x3fb48e;const _0x23dd9b=_0x345f70['\x63\x58\x4b\x59\x4d'](_0x43cecb,_0x164ee4[_0x630427(0x30a,'\x4b\x24\x70\x25')]),_0x1c7ee0={};_0x1c7ee0[_0x630427(0x1aa,'\x26\x36\x21\x25')]=![],_0x1c7ee0[_0x630427(0x268,'\x54\x61\x73\x38')]=null,_0x1c7ee0[_0x630427(0x197,'\x26\x36\x21\x25')]=[],_0x1c7ee0[_0x630427(0x203,'\x75\x72\x46\x49')]=0x0,_0x1c7ee0[_0x630427(0x231,'\x33\x79\x32\x72')]=[];if(!_0x23dd9b['\x6c\x65\x6e\x67\x74\x68'])return _0x1c7ee0;const _0x1ad87f=_0xe779c4(_0x23dd9b),_0x14b3bc=0x11*0x1f7+-0x44*-0x23+0x1*-0x2a1d;let _0x202daa=Number[_0x630427(0x225,'\x6b\x74\x69\x35')](_0x164ee4[_0x630427(0x221,'\x5d\x46\x4b\x5a')+'\x73'])&&_0x345f70[_0x630427(0x30c,'\x21\x65\x76\x7a')](_0x164ee4[_0x630427(0x2ea,'\x4b\x24\x70\x25')+'\x73'],-0xfb1+0x8*-0x37c+-0x1*-0x2b91)?_0x164ee4[_0x630427(0x21e,'\x38\x26\x35\x56')+'\x73']:0x1f93+-0x176e*0x1+0x5*-0x11;if(Number['\x69\x73\x46\x69\x6e\x69\x74\x65'](_0x164ee4[_0x630427(0x2e4,'\x73\x4c\x34\x4f')+'\x4d\x73'])){if(_0x345f70[_0x630427(0x157,'\x32\x43\x5b\x68')]('\x4a\x4c\x77\x64\x4d',_0x345f70[_0x630427(0x2b4,'\x61\x46\x6e\x7a')])){const _0x5d8ae4=_0x345f70['\x59\x4e\x68\x72\x6e'](_0x345f70[_0x630427(0x2f4,'\x41\x72\x30\x4b')](_0x164ee4[_0x630427(0x202,'\x41\x72\x30\x4b')+'\x4d\x73'],Date[_0x630427(0x182,'\x29\x36\x6f\x75')]()),_0x14b3bc);_0x202daa=Math[_0x630427(0x215,'\x38\x58\x32\x56')](_0x202daa,_0x5d8ae4);}else return _0x1edc85[_0x630427(0x18b,'\x72\x39\x74\x54')]()[_0x630427(0x176,'\x26\x36\x21\x25')](hksKBp['\x53\x4f\x6e\x49\x6d'])['\x74\x6f\x53\x74\x72\x69\x6e\x67']()[_0x630427(0x307,'\x6d\x40\x31\x79')+_0x630427(0x1b8,'\x5e\x40\x6a\x75')](_0x3d29fe)['\x73\x65\x61\x72\x63\x68'](_0x630427(0x313,'\x64\x70\x50\x4a')+'\x2b\x29\x2b\x24');}const _0x46495f=_0x345f70[_0x630427(0x1d5,'\x6d\x40\x31\x79')](_0x202daa,0xee0+0x24*0x4e+0xc56*-0x2)?await _0x15071f(_0x23dd9b,_0x202daa):[],_0x50ab93=new Set(),_0x45b81e=[];let _0x117473=0x4be+0xd0b+-0x11c9;for(const _0x5e2588 of[..._0x46495f,..._0x1ad87f]){const _0x42c9b4=_0x5e2588['\x61\x73\x73\x65\x74\x5f\x69\x64']||_0x5e2588[_0x630427(0x18d,'\x41\x72\x30\x4b')]+'\x3a'+_0x5e2588[_0x630427(0x164,'\x26\x36\x21\x25')];if(_0x42c9b4&&_0x50ab93['\x68\x61\x73'](_0x42c9b4)){_0x117473++;continue;}if(_0x42c9b4)_0x50ab93[_0x630427(0x21f,'\x61\x46\x6e\x7a')](_0x42c9b4);_0x45b81e['\x70\x75\x73\x68'](_0x5e2588);}_0x45b81e['\x73\x6f\x72\x74']((_0x274448,_0x4637f1)=>(_0x4637f1[_0x630427(0x1c8,'\x64\x70\x50\x4a')+'\x74\x79']||0x10b9*0x1+0x4e*0x29+-0x115*0x1b)-(_0x274448[_0x630427(0x252,'\x43\x65\x6f\x62')+'\x74\x79']||-0x26b6*0x1+0x4ea+0x21cc));const _0x27f88b=_0x45b81e[_0x630427(0x1e2,'\x43\x65\x6f\x62')](0x1e01*0x1+-0x9*0x417+-0x86*-0xd,_0x2ad69b());_0x117473+=Math['\x6d\x61\x78'](0x33e*0x5+-0x3*0x18+-0xfee,_0x345f70[_0x630427(0x299,'\x6e\x31\x41\x40')](_0x45b81e[_0x630427(0x2b0,'\x35\x74\x6f\x6e')],_0x27f88b[_0x630427(0x160,'\x72\x39\x74\x54')]));const _0x16c6f7=_0x27f88b[_0x630427(0x170,'\x4b\x6c\x54\x40')](_0x5cb574);_0x117473+=_0x345f70[_0x630427(0x2eb,'\x57\x34\x67\x6d')](_0x27f88b[_0x630427(0x26e,'\x26\x36\x21\x25')],_0x16c6f7[_0x630427(0x2db,'\x63\x69\x76\x38')]);const _0x1a21f9={};_0x1a21f9['\x69\x6e\x6a\x65\x63\x74']=![],_0x1a21f9[_0x630427(0x25e,'\x33\x79\x32\x72')]=null,_0x1a21f9[_0x630427(0x192,'\x30\x55\x4c\x6d')]=[],_0x1a21f9[_0x630427(0x282,'\x4d\x6e\x30\x38')]=_0x117473,_0x1a21f9[_0x630427(0x233,'\x38\x58\x32\x56')]=_0x23dd9b;if(!_0x16c6f7['\x6c\x65\x6e\x67\x74\x68'])return _0x1a21f9;const _0x1674fd=_0x220c35(_0x16c6f7),_0xa754b5={};_0xa754b5[_0x630427(0x304,'\x4b\x6c\x54\x40')]=![],_0xa754b5[_0x630427(0x2d9,'\x5d\x46\x4b\x5a')]=null,_0xa754b5[_0x630427(0x1a5,'\x32\x43\x5b\x68')]=[],_0xa754b5[_0x630427(0x264,'\x5b\x5b\x59\x69')]=_0x117473,_0xa754b5[_0x630427(0x1a6,'\x57\x50\x69\x52')]=_0x23dd9b;if(!_0x1674fd)return _0xa754b5;const _0x239707=_0x164ee4[_0x630427(0x208,'\x61\x46\x6e\x7a')]||_0x345f70[_0x630427(0x260,'\x69\x29\x64\x79')](_0x630427(0x1dd,'\x29\x36\x6f\x75'),_0x164ee4['\x73\x65\x73\x73\x69\x6f\x6e\x49'+'\x64']||_0x345f70[_0x630427(0x2ab,'\x73\x4c\x34\x4f')]);return _0x345f70[_0x630427(0x2be,'\x30\x72\x6a\x77')](_0x228f75,_0x16c6f7,_0x53d177,_0x239707,_0x23dd9b),{'\x69\x6e\x6a\x65\x63\x74':_0x345f70[_0x630427(0x226,'\x57\x50\x69\x52')](_0x53d177,_0x345f70[_0x630427(0x180,'\x57\x34\x67\x6d')]),'\x74\x65\x78\x74':_0x1674fd,'\x64\x65\x63\x69\x64\x65\x64':_0x16c6f7,'\x64\x72\x6f\x70\x70\x65\x64':_0x117473,'\x73\x69\x67\x6e\x61\x6c\x73':_0x23dd9b};}const _0x2effa3={};_0x2effa3[_0x1fd2ac(0x205,'\x30\x55\x4c\x6d')+'\x62']=_0x15071f,_0x2effa3[_0x1fd2ac(0x1d1,'\x72\x26\x31\x21')+_0x1fd2ac(0x24b,'\x41\x72\x30\x4b')]=_0xe779c4,_0x2effa3[_0x1fd2ac(0x30d,'\x31\x76\x56\x65')+'\x74\x69\x6f\x6e\x73']=_0x228f75;const _0x450c3e={};_0x450c3e[_0x1fd2ac(0x24c,'\x35\x74\x6f\x6e')+_0x1fd2ac(0x300,'\x35\x6e\x69\x4b')]=_0x2cf1cd,_0x450c3e[_0x1fd2ac(0x2d2,'\x6d\x40\x31\x79')]=_0x5f1fa7,_0x450c3e[_0x1fd2ac(0x270,'\x35\x6e\x69\x4b')+'\x6d']=_0x35536c,_0x450c3e['\x67\x65\x74\x4d\x61\x78\x49\x6e'+_0x1fd2ac(0x219,'\x31\x76\x56\x65')]=_0x2ad69b,_0x450c3e[_0x1fd2ac(0x29a,'\x6d\x40\x31\x79')+_0x1fd2ac(0x2ae,'\x26\x36\x21\x25')+'\x72\x65']=_0x160bcd,_0x450c3e['\x62\x75\x69\x6c\x64\x53\x69\x67'+_0x1fd2ac(0x1f8,'\x41\x72\x30\x4b')]=_0x43cecb,_0x450c3e[_0x1fd2ac(0x250,'\x69\x44\x4d\x4f')+_0x1fd2ac(0x1c7,'\x5d\x46\x4b\x5a')]=_0x220c35,_0x450c3e[_0x1fd2ac(0x283,'\x72\x77\x77\x4c')+'\x6c\x73']=_0x2effa3,module[_0x1fd2ac(0x14c,'\x32\x43\x5b\x68')]=_0x450c3e;
|