@evomap/evolver-core 2.0.0 → 2.0.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.
Files changed (91) hide show
  1. package/dist/algo/antiDistill.js +1 -167
  2. package/dist/algo/bans.js +1 -33
  3. package/dist/algo/candidateAssembly.js +1 -273
  4. package/dist/algo/capabilityCandidates.js +1 -146
  5. package/dist/algo/confidence.js +1 -196
  6. package/dist/algo/conversationSniffer.js +1 -149
  7. package/dist/algo/cycleEngine.js +1 -625
  8. package/dist/algo/cycleFailureClassifier.js +1 -112
  9. package/dist/algo/epigenetics.js +1 -41
  10. package/dist/algo/evolutionEvent.js +1 -24
  11. package/dist/algo/exploration.js +1 -68
  12. package/dist/algo/geneHealth.js +1 -17
  13. package/dist/algo/geneIntake.js +1 -128
  14. package/dist/algo/genePromotion.js +1 -53
  15. package/dist/algo/geneSelection.js +1 -546
  16. package/dist/algo/index.js +1 -22
  17. package/dist/algo/memoryGraph.js +1 -86
  18. package/dist/algo/mutation.js +1 -22
  19. package/dist/algo/orchestrator.js +1 -87
  20. package/dist/algo/publishEligibility.js +1 -52
  21. package/dist/algo/solidify.js +1 -63
  22. package/dist/algo/strategyPresets.js +1 -61
  23. package/dist/algo/ucb1.js +1 -156
  24. package/dist/benchmark/antiGeneBenchmark.js +1 -252
  25. package/dist/benchmark/antiGeneImpact.js +1 -34
  26. package/dist/benchmark/antiGeneRollout.js +1 -269
  27. package/dist/benchmark/benchmark.js +1 -26
  28. package/dist/benchmark/evolutionThesisSolver.js +1 -41
  29. package/dist/benchmark/index.js +1 -7
  30. package/dist/benchmark/selectionFlatAbstention.js +1 -481
  31. package/dist/benchmark/thesis.js +1 -150
  32. package/dist/benchmark/triggerShift.js +1 -106
  33. package/dist/cycle/cycleTimeline.js +1 -74
  34. package/dist/cycle/index.js +1 -2
  35. package/dist/cycle/stateMachine.js +1 -25
  36. package/dist/hub/agentDirectory.js +1 -104
  37. package/dist/hub/assetCallLog.js +1 -195
  38. package/dist/hub/bindings.js +1 -121
  39. package/dist/hub/capability.js +1 -1
  40. package/dist/hub/conversationDistiller.js +1 -264
  41. package/dist/hub/fake.js +1 -70
  42. package/dist/hub/hubReview.js +1 -106
  43. package/dist/hub/index.js +1 -11
  44. package/dist/hub/ingest.js +1 -15
  45. package/dist/hub/questionGenerator.js +1 -408
  46. package/dist/hub/reuseDecision.js +1 -127
  47. package/dist/hub/sanitize.js +1 -322
  48. package/dist/material/boundary.js +1 -14
  49. package/dist/material/consumer.js +1 -55
  50. package/dist/material/emit.js +1 -52
  51. package/dist/material/factory.js +1 -25
  52. package/dist/material/index.js +1 -9
  53. package/dist/material/materialArchive.js +1 -466
  54. package/dist/material/materialStore.js +1 -69
  55. package/dist/material/sampling.js +1 -39
  56. package/dist/material/sources.js +1 -33
  57. package/dist/material/watermark.js +1 -76
  58. package/dist/personality/drift.js +1 -106
  59. package/dist/personality/events.js +1 -37
  60. package/dist/personality/evolveOps.js +1 -93
  61. package/dist/personality/index.js +1 -11
  62. package/dist/personality/mutate.js +1 -39
  63. package/dist/personality/pivot.js +1 -22
  64. package/dist/personality/prompt.js +1 -62
  65. package/dist/personality/riskGate.js +1 -80
  66. package/dist/personality/schema.js +1 -119
  67. package/dist/personality/select.js +1 -71
  68. package/dist/personality/stats.js +1 -82
  69. package/dist/personality/store.js +1 -92
  70. package/dist/schema/common.js +1 -17
  71. package/dist/schema/evolutionGraph.js +1 -187
  72. package/dist/schema/index.js +1 -6
  73. package/dist/schema/material.js +1 -50
  74. package/dist/schema/problem.js +1 -45
  75. package/dist/schema/proofOfWork.js +1 -9
  76. package/dist/schema/signal.js +1 -19
  77. package/dist/signals/curriculum.js +1 -202
  78. package/dist/signals/cycleHistoryFromEvents.js +1 -105
  79. package/dist/signals/expand.js +1 -293
  80. package/dist/signals/extractor.js +1 -82
  81. package/dist/signals/index.js +1 -8
  82. package/dist/signals/metaSignals.js +1 -200
  83. package/dist/signals/signalGate.js +1 -40
  84. package/dist/signals/taskDomain.js +1 -43
  85. package/dist/signals/traceSignals.js +1 -123
  86. package/dist/strategy/constraintAblation.js +1 -2820
  87. package/dist/strategy/constraintAblationPredicates.js +1 -339
  88. package/dist/strategy/experiment.js +1 -63
  89. package/dist/strategy/index.js +1 -3
  90. package/dist/strategy/strategyPoint.js +1 -23
  91. package/package.json +1 -1
@@ -1,200 +1 @@
1
- // Meta-signal vocabulary (ported from v1 src/gep/signals.js analyzeRecentHistory + the meta-signal pass).
2
- // These are HISTORY-DERIVED signals that drive STRATEGY ADAPTATION: when the evolution loop gets stuck
3
- // (repair loops, empty cycles, saturation, failure streaks, high failure ratio) the loop emits signals that
4
- // downstream strategy selection reacts to — e.g. evolution_saturation → steady-state, repair_loop_detected /
5
- // high_failure_ratio → innovate. v2 had only restored plateau→drift (algo/exploration.ts); this restores the
6
- // rest of the vocabulary so the loop can adapt to being stuck instead of spinning.
7
- //
8
- // RECONCILIATION (reuse, don't duplicate):
9
- // - PLATEAU: v1 also emitted plateau_pivot_required/_suggested here from recent outcome scores. v2 already
10
- // owns plateau detection in algo/exploration.ts (detectPlateau over the cycle-outcome stream, which then
11
- // forces drift in gene selection). We DO NOT re-derive plateau here; callers keep using exploration.ts.
12
- // - BAN_GENE: v1 emitted ban_gene:<topGene> on a long failure streak. v2 already owns gene banning in
13
- // algo/bans.ts (bannedGenesFromFailures, signal-overlap based) which drops failing genes from the
14
- // candidate set directly — a stronger mechanism than a soft signal. We DO NOT emit ban_gene here; the
15
- // failure-streak meta-signals below are the strategy-posture half, bans.ts is the candidate-exclusion half.
16
- //
17
- // Pure + deterministic: input is a normalized cycle-history view; no clock / fs / env reads.
18
- const RECENT_WINDOW = 10; // v1: last 10 events
19
- const FREQ_WINDOW = 8; // v1: gene/failure frequency over the last 8
20
- /** Is a record an empty cycle (no real change)? Mirrors v1: meta.empty_cycle || (files===0 && lines===0). */
21
- function isEmptyCycle(r) {
22
- if (r.emptyCycle)
23
- return true;
24
- const br = r.blastRadius;
25
- return !!br && (br.files ?? -1) === 0 && (br.lines ?? -1) === 0;
26
- }
27
- function isFailed(r) {
28
- return r.outcome?.status === 'failed';
29
- }
30
- function isSuccess(r) {
31
- return r.outcome?.status === 'success';
32
- }
33
- /**
34
- * Derive the v1 history counters from a normalized cycle-record window (newest LAST), mirroring v1
35
- * analyzeRecentHistory. Pure + deterministic. Use {@link cycleRecordsFromEvents} to adapt the v2 event log.
36
- */
37
- export function deriveCycleHistory(records) {
38
- const empty = {
39
- consecutiveRepairCount: 0,
40
- emptyCycleCount: 0,
41
- consecutiveEmptyCycles: 0,
42
- consecutiveFailureCount: 0,
43
- consecutiveSuccessCount: 0,
44
- successCycleCount: 0,
45
- recentFailureRatio: 0,
46
- geneFreq: {},
47
- };
48
- if (!Array.isArray(records) || records.length === 0)
49
- return empty;
50
- const recent = records.slice(-RECENT_WINDOW);
51
- const tail = recent.slice(-FREQ_WINDOW);
52
- // Consecutive repair-intent cycles at the tail.
53
- let consecutiveRepairCount = 0;
54
- for (let i = recent.length - 1; i >= 0; i--) {
55
- if (recent[i].intent === 'repair')
56
- consecutiveRepairCount++;
57
- else
58
- break;
59
- }
60
- // Empty cycles within the frequency window + gene frequency.
61
- let emptyCycleCount = 0;
62
- const geneFreq = {};
63
- for (const r of tail) {
64
- if (isEmptyCycle(r))
65
- emptyCycleCount++;
66
- for (const g of r.genesUsed ?? [])
67
- geneFreq[String(g)] = (geneFreq[String(g)] ?? 0) + 1;
68
- }
69
- // Consecutive empty cycles at the tail (saturation).
70
- let consecutiveEmptyCycles = 0;
71
- for (let i = recent.length - 1; i >= 0; i--) {
72
- if (isEmptyCycle(recent[i]))
73
- consecutiveEmptyCycles++;
74
- else
75
- break;
76
- }
77
- // Consecutive failures at the tail. Empty cycles are zero-blast no-ops in v1's history model: even when the
78
- // terminal status is failed, they break the failure streak instead of extending it.
79
- let consecutiveFailureCount = 0;
80
- for (let i = recent.length - 1; i >= 0; i--) {
81
- if (isEmptyCycle(recent[i]))
82
- break;
83
- if (isFailed(recent[i]))
84
- consecutiveFailureCount++;
85
- else
86
- break;
87
- }
88
- // Failure ratio over the frequency window, excluding empty cycles from both numerator and denominator.
89
- let recentFailureCount = 0;
90
- let nonEmptyCycleCount = 0;
91
- for (const r of tail) {
92
- if (isEmptyCycle(r))
93
- continue;
94
- nonEmptyCycleCount++;
95
- if (isFailed(r))
96
- recentFailureCount++;
97
- }
98
- // Consecutive successes at the tail (stable success plateau detection). Empty cycles are zero-blast
99
- // no-ops: like the failure streak, they break the success streak instead of extending it.
100
- let consecutiveSuccessCount = 0;
101
- for (let i = recent.length - 1; i >= 0; i--) {
102
- if (isEmptyCycle(recent[i]))
103
- break;
104
- if (isSuccess(recent[i]))
105
- consecutiveSuccessCount++;
106
- else
107
- break;
108
- }
109
- // Successful cycles within the frequency window (non-empty successes, same caliber as recentFailureRatio).
110
- let successCycleCount = 0;
111
- for (const r of tail) {
112
- if (isEmptyCycle(r))
113
- continue;
114
- if (isSuccess(r))
115
- successCycleCount++;
116
- }
117
- return {
118
- consecutiveRepairCount,
119
- emptyCycleCount,
120
- consecutiveEmptyCycles,
121
- consecutiveFailureCount,
122
- consecutiveSuccessCount,
123
- successCycleCount,
124
- recentFailureRatio: nonEmptyCycleCount > 0 ? recentFailureCount / nonEmptyCycleCount : 0,
125
- geneFreq,
126
- };
127
- }
128
- /**
129
- * Compute the history-derived meta-signal vocabulary from the loop's recent shape (ported v1 signals.js
130
- * ~555-655 for the signals NOT already owned by exploration/bans). The returned signals are MEANT to be
131
- * merged into the cycle's signal set so strategy selection (resolveStrategy) and signal expansion can react.
132
- *
133
- * Ports (thresholds faithful to v1):
134
- * - consecutiveRepairCount >= 3 → repair_loop_detected + force_innovation_after_repair_loop
135
- * - emptyCycleCount >= 4 → empty_cycle_loop_detected
136
- * - consecutiveEmptyCycles >= 5 → force_steady_state + evolution_saturation
137
- * - consecutiveEmptyCycles >= 3 → evolution_saturation (+ explore_opportunity)
138
- * - consecutiveFailureCount>= 3 → consecutive_failure_streak_<N>
139
- * - consecutiveFailureCount>= 5 → failure_loop_detected (ban_gene deferred to algo/bans.ts)
140
- * - recentFailureRatio >= 0.75 → high_failure_ratio + force_innovation_after_repair_loop
141
- *
142
- * Deferred (handled elsewhere, see RECONCILIATION above): plateau_pivot_* → algo/exploration.ts;
143
- * ban_gene:<top> → algo/bans.ts.
144
- */
145
- export function computeMetaSignals(history) {
146
- const signals = [];
147
- // Repair loop: 3+ consecutive repair-intent cycles → push to innovate to break the loop.
148
- if (history.consecutiveRepairCount >= 3) {
149
- signals.push('repair_loop_detected');
150
- signals.push('force_innovation_after_repair_loop');
151
- }
152
- // Empty-cycle loop: many zero-change cycles in the window → the loop is spinning without effect.
153
- if (history.emptyCycleCount >= 4) {
154
- signals.push('empty_cycle_loop_detected');
155
- }
156
- // Saturation (graceful degradation): consecutive empty cycles → steady-state / saturation posture.
157
- if (history.consecutiveEmptyCycles >= 5) {
158
- signals.push('force_steady_state');
159
- signals.push('evolution_saturation');
160
- }
161
- else if (history.consecutiveEmptyCycles >= 3) {
162
- signals.push('evolution_saturation');
163
- }
164
- // Exploration opportunity: when saturated, nudge proactive exploration rather than idling.
165
- if (history.consecutiveEmptyCycles >= 3) {
166
- signals.push('explore_opportunity');
167
- }
168
- // Failure streak awareness: tell the loop "you have failed N times in a row — slow down".
169
- if (history.consecutiveFailureCount >= 3) {
170
- signals.push('consecutive_failure_streak_' + history.consecutiveFailureCount);
171
- if (history.consecutiveFailureCount >= 5) {
172
- signals.push('failure_loop_detected');
173
- // NB: v1 also pushed ban_gene:<topGene> here. v2 defers gene banning to algo/bans.ts
174
- // (bannedGenesFromFailures), which excludes the failing gene from the candidate set directly.
175
- }
176
- }
177
- // High failure ratio in the recent window → break out by innovating.
178
- if (history.recentFailureRatio >= 0.75) {
179
- signals.push('high_failure_ratio');
180
- signals.push('force_innovation_after_repair_loop');
181
- }
182
- // Stable success plateau: 5+ consecutive successes → system is in a stable success plateau.
183
- // This is the SUCCESS counterpart of failure_loop_detected: instead of signaling "stuck failing",
184
- // it signals "consistently succeeding" — the loop should distill WHAT WORKED into reusable genes.
185
- if (history.consecutiveSuccessCount >= 5) {
186
- signals.push('stable_success_plateau');
187
- }
188
- // Issue already resolved: 3+ consecutive successes after a prior failure context suggests
189
- // the problem is solved — downstream can skip redundant repair attempts.
190
- if (history.consecutiveSuccessCount >= 3 && history.recentFailureRatio > 0) {
191
- signals.push('issue_already_resolved');
192
- }
193
- // Self-healed requires the current tail to be successful. Window totals alone would mislabel
194
- // [success, success, failed] as recovered even though the latest outcome is a failure.
195
- if (history.consecutiveSuccessCount > 0 && history.successCycleCount >= 2 && history.recentFailureRatio > 0 && history.recentFailureRatio < 0.5) {
196
- signals.push('openclaw_self_healed');
197
- }
198
- // De-dup while preserving first-seen order.
199
- return [...new Set(signals)];
200
- }
1
+ (function(_0x447350,_0x3573cc){const _0x311ae9=_0x2b91,_0x3e1a5e=_0x447350();while(!![]){try{const _0x46e5ae=parseInt(_0x311ae9(0xfd,'\x31\x45\x6b\x6c'))/(-0x2*-0x805+-0x1fee+-0xd*-0x139)+parseInt(_0x311ae9(0xa8,'\x4e\x72\x67\x50'))/(0x7b5*0x3+0x19cf+-0x30ec)+-parseInt(_0x311ae9(0xb9,'\x64\x73\x25\x47'))/(-0x1d09+-0x1424+0x3130)*(parseInt(_0x311ae9(0x74,'\x55\x59\x44\x40'))/(0x5*0xe3+0x1*-0xb9c+0x731*0x1))+parseInt(_0x311ae9(0xa4,'\x47\x66\x73\x4d'))/(0x37e+-0x26dd+0x2364)+-parseInt(_0x311ae9(0xa3,'\x6f\x75\x68\x6f'))/(0x1*-0xdd2+-0x2588*0x1+0x3360)*(-parseInt(_0x311ae9(0xcf,'\x62\x44\x47\x77'))/(-0xd*0x15f+0x151*0x11+-0x487))+parseInt(_0x311ae9(0x82,'\x25\x35\x36\x44'))/(-0x25+-0x133b+0x1368)+-parseInt(_0x311ae9(0x101,'\x38\x54\x29\x65'))/(0x245d+-0x237f+-0xd5)*(parseInt(_0x311ae9(0xe8,'\x51\x55\x4d\x4b'))/(-0x1040+0x1*0x1f23+-0xed9));if(_0x46e5ae===_0x3573cc)break;else _0x3e1a5e['push'](_0x3e1a5e['shift']());}catch(_0x3cf09f){_0x3e1a5e['push'](_0x3e1a5e['shift']());}}}(_0x28f5,-0x84688+-0x9784a+0x875b*0x2f));const RECENT_WINDOW=-0x20e3+-0x2685+0x725*0xa,FREQ_WINDOW=0x3*-0xb4b+-0xdb1+-0x12*-0x2a5;function isEmptyCycle(_0x2e5525){const _0x3f934e=_0x2b91;if(_0x2e5525['\x65\x6d\x70\x74\x79\x43\x79\x63'+'\x6c\x65'])return!![];const _0x2f8a39=_0x2e5525[_0x3f934e(0xc7,'\x47\x38\x4a\x79')+_0x3f934e(0xea,'\x52\x46\x25\x34')];return!!_0x2f8a39&&(_0x2f8a39[_0x3f934e(0x8a,'\x47\x78\x4e\x5e')]??-(0x1*-0x228d+-0xaa9+0x2d37))===0x941*0x1+-0x2*0x1a8+-0x1fb*0x3&&(_0x2f8a39[_0x3f934e(0xf6,'\x64\x73\x25\x47')]??-(0x1047+-0x1*-0x2109+-0x314f))===-0x1*-0x2441+-0x1be2+-0x85f;}function _0x2b91(_0x200b6b,_0x510482){_0x200b6b=_0x200b6b-(0x2393+0x1e88+-0x2db*0x17);const _0x56b54d=_0x28f5();let _0x1b51a3=_0x56b54d[_0x200b6b];if(_0x2b91['\x54\x7a\x56\x74\x63\x4b']===undefined){var _0xbc2c46=function(_0x571f6f){const _0x358ba2='\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 _0x1fdbe4='',_0x78c4ff='';for(let _0xacc1a=-0x9c2+0x4*-0x5e9+-0x1e*-0x11d,_0x141149,_0x261373,_0x5edd56=-0x10d5+0x11f+0xfb6;_0x261373=_0x571f6f['\x63\x68\x61\x72\x41\x74'](_0x5edd56++);~_0x261373&&(_0x141149=_0xacc1a%(-0x167a+-0x17b3+-0x5*-0x93d)?_0x141149*(0x1869+0x1c6d+-0x3496)+_0x261373:_0x261373,_0xacc1a++%(0x3c+-0x17d*0x13+0x1c0f))?_0x1fdbe4+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](0xcae+-0x1bdc+-0x29*-0x65&_0x141149>>(-(0x11e2+0x1*-0x1392+-0x2*-0xd9)*_0xacc1a&-0x1*-0x1c5d+-0x1cf9+0x12*0x9)):-0x16d*0x13+0x2*-0x7d3+0x2abd){_0x261373=_0x358ba2['\x69\x6e\x64\x65\x78\x4f\x66'](_0x261373);}for(let _0x54a919=0x25bb+0x146+-0x2701,_0x656654=_0x1fdbe4['\x6c\x65\x6e\x67\x74\x68'];_0x54a919<_0x656654;_0x54a919++){_0x78c4ff+='\x25'+('\x30\x30'+_0x1fdbe4['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x54a919)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0x1b46+0x2627+0x27*-0x47))['\x73\x6c\x69\x63\x65'](-(0x1675+0x476+-0x1*0x1ae9));}return decodeURIComponent(_0x78c4ff);};const _0x54b71e=function(_0x1ef9e0,_0x5daf15){let _0x362ff2=[],_0x1af755=-0x17b2+0x4*0x97+0x1556,_0x3f5574,_0x1b5ec7='';_0x1ef9e0=_0xbc2c46(_0x1ef9e0);let _0x584c87;for(_0x584c87=-0x1acd*0x1+0x2616+-0xb49;_0x584c87<0x7e3*0x2+-0x1cf7*-0x1+-0x2bbd;_0x584c87++){_0x362ff2[_0x584c87]=_0x584c87;}for(_0x584c87=-0x531+-0x1630+-0x1b61*-0x1;_0x584c87<-0x489+0xda*0x3+0x6d*0x7;_0x584c87++){_0x1af755=(_0x1af755+_0x362ff2[_0x584c87]+_0x5daf15['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x584c87%_0x5daf15['\x6c\x65\x6e\x67\x74\x68']))%(0x18e0+-0xcf7*-0x1+0x24d7*-0x1),_0x3f5574=_0x362ff2[_0x584c87],_0x362ff2[_0x584c87]=_0x362ff2[_0x1af755],_0x362ff2[_0x1af755]=_0x3f5574;}_0x584c87=0xb1c+0x5*-0x107+-0x5f9,_0x1af755=-0x2*-0x1009+-0x198c+-0xa7*0xa;for(let _0x22ad0d=0xd*0x281+-0x15*0x191+0x8*0xb;_0x22ad0d<_0x1ef9e0['\x6c\x65\x6e\x67\x74\x68'];_0x22ad0d++){_0x584c87=(_0x584c87+(-0x5f3+0x2214+0x3*-0x960))%(0x8ea+-0x167+-0x683),_0x1af755=(_0x1af755+_0x362ff2[_0x584c87])%(0xb*0xb2+-0x1637+-0x1*-0xf91),_0x3f5574=_0x362ff2[_0x584c87],_0x362ff2[_0x584c87]=_0x362ff2[_0x1af755],_0x362ff2[_0x1af755]=_0x3f5574,_0x1b5ec7+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x1ef9e0['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x22ad0d)^_0x362ff2[(_0x362ff2[_0x584c87]+_0x362ff2[_0x1af755])%(0x1*0x957+0x4a3*0x5+0xa82*-0x3)]);}return _0x1b5ec7;};_0x2b91['\x4d\x63\x52\x69\x54\x6b']=_0x54b71e,_0x2b91['\x6a\x55\x41\x7a\x53\x67']={},_0x2b91['\x54\x7a\x56\x74\x63\x4b']=!![];}const _0x465f15=_0x56b54d[-0x16fd+-0x2380+-0x7*-0x85b],_0x5bef22=_0x200b6b+_0x465f15,_0x3cca36=_0x2b91['\x6a\x55\x41\x7a\x53\x67'][_0x5bef22];return!_0x3cca36?(_0x2b91['\x46\x75\x58\x4c\x57\x50']===undefined&&(_0x2b91['\x46\x75\x58\x4c\x57\x50']=!![]),_0x1b51a3=_0x2b91['\x4d\x63\x52\x69\x54\x6b'](_0x1b51a3,_0x510482),_0x2b91['\x6a\x55\x41\x7a\x53\x67'][_0x5bef22]=_0x1b51a3):_0x1b51a3=_0x3cca36,_0x1b51a3;}function isFailed(_0x250852){const _0x12b948=_0x2b91;return _0x250852[_0x12b948(0xe5,'\x4a\x56\x31\x32')]?.[_0x12b948(0x94,'\x25\x35\x36\x44')]===_0x12b948(0xcd,'\x6f\x75\x68\x6f');}function isSuccess(_0x743415){const _0x455ad1=_0x2b91;return _0x743415[_0x455ad1(0x8c,'\x51\x55\x4d\x4b')]?.['\x73\x74\x61\x74\x75\x73']===_0x455ad1(0xd0,'\x38\x54\x29\x65');}function _0x28f5(){const _0x39eaba=['\x57\x34\x71\x34\x76\x66\x56\x63\x54\x43\x6b\x6e\x6b\x62\x75','\x57\x51\x6a\x31\x6d\x43\x6f\x58\x76\x4c\x46\x64\x4e\x49\x43','\x72\x71\x47\x71\x6d\x71\x34\x71\x57\x52\x4e\x63\x51\x71','\x57\x37\x54\x50\x57\x36\x61\x35\x69\x38\x6f\x30\x41\x47\x4b','\x72\x53\x6b\x74\x57\x52\x33\x63\x4e\x61','\x57\x52\x35\x6b\x57\x37\x4c\x57\x45\x43\x6f\x67\x79\x38\x6f\x46','\x57\x37\x70\x64\x53\x75\x68\x63\x4b\x71\x30','\x77\x38\x6b\x67\x57\x36\x5a\x63\x56\x47','\x65\x43\x6b\x63\x57\x50\x64\x64\x49\x72\x42\x64\x4c\x43\x6f\x31\x43\x61','\x57\x52\x39\x73\x57\x50\x70\x63\x53\x38\x6f\x69\x64\x38\x6f\x35\x57\x36\x75','\x57\x36\x79\x36\x61\x38\x6f\x6c\x57\x52\x61','\x45\x43\x6b\x74\x57\x37\x65\x56','\x57\x36\x6a\x50\x67\x66\x31\x43\x57\x36\x66\x4b\x57\x4f\x4f','\x45\x32\x6c\x64\x4c\x38\x6b\x70','\x61\x73\x76\x61\x57\x37\x4f','\x61\x5a\x64\x64\x4c\x38\x6f\x56\x57\x34\x4b\x6a\x57\x51\x4e\x64\x54\x71','\x57\x35\x4e\x63\x47\x6d\x6b\x56\x57\x52\x47','\x57\x52\x78\x64\x54\x53\x6f\x78\x43\x78\x75','\x57\x34\x2f\x63\x53\x38\x6b\x44\x65\x58\x46\x63\x4c\x77\x34\x55\x57\x52\x70\x63\x55\x4b\x42\x64\x52\x64\x57','\x69\x53\x6f\x61\x57\x50\x31\x76\x41\x57','\x44\x6d\x6f\x63\x57\x34\x35\x62\x57\x36\x2f\x63\x4f\x68\x4b\x6a','\x6e\x43\x6b\x68\x57\x36\x4c\x43','\x6e\x38\x6b\x62\x57\x4f\x34\x6e\x57\x34\x79','\x57\x36\x79\x75\x57\x37\x42\x64\x47\x4b\x30','\x57\x52\x42\x63\x49\x38\x6f\x48\x45\x61','\x6a\x53\x6b\x44\x57\x37\x72\x68\x57\x36\x70\x63\x53\x32\x30\x30','\x57\x51\x52\x63\x4d\x38\x6f\x38\x44\x38\x6f\x36\x57\x34\x30','\x57\x52\x69\x64\x57\x4f\x72\x55\x57\x36\x75','\x57\x37\x54\x2f\x63\x76\x31\x57\x57\x36\x62\x41\x57\x4f\x34','\x57\x34\x34\x48\x67\x77\x58\x59\x42\x38\x6b\x74\x57\x37\x68\x64\x47\x43\x6f\x59\x65\x71\x30','\x72\x59\x66\x4c\x57\x34\x7a\x4b\x57\x50\x42\x63\x56\x47','\x68\x49\x62\x64\x57\x37\x31\x67\x57\x51\x68\x63\x55\x4a\x75','\x57\x36\x66\x2f\x57\x36\x38\x6c\x57\x4f\x69\x68\x57\x52\x68\x63\x47\x68\x7a\x52\x57\x36\x44\x43','\x57\x37\x64\x64\x54\x31\x2f\x63\x51\x58\x52\x64\x54\x38\x6b\x70\x57\x51\x79','\x6f\x38\x6f\x46\x57\x51\x35\x77\x57\x36\x75','\x57\x52\x54\x59\x77\x58\x2f\x64\x56\x33\x6c\x63\x4f\x43\x6f\x38','\x57\x51\x6d\x37\x57\x51\x76\x77','\x57\x52\x61\x48\x57\x52\x48\x6e\x57\x35\x6a\x77\x57\x52\x5a\x63\x50\x71','\x57\x51\x44\x4f\x72\x57\x43','\x65\x38\x6f\x35\x57\x51\x72\x48','\x57\x37\x4e\x64\x53\x75\x70\x63\x4b\x71\x30','\x57\x35\x35\x76\x57\x35\x30\x6c\x65\x61','\x67\x43\x6f\x4e\x57\x52\x39\x4e\x79\x75\x6c\x64\x4f\x57','\x57\x34\x4b\x53\x68\x6d\x6f\x6c\x57\x52\x70\x64\x54\x78\x68\x63\x4a\x57','\x57\x4f\x39\x4b\x71\x73\x30\x59\x6c\x47','\x46\x38\x6b\x46\x57\x37\x38\x4c\x42\x75\x78\x63\x4b\x53\x6f\x76','\x57\x50\x4c\x4d\x74\x5a\x75\x59\x6b\x43\x6b\x63\x57\x34\x38','\x43\x63\x39\x34\x76\x6d\x6f\x49\x70\x33\x52\x63\x4e\x61','\x6d\x6d\x6b\x4e\x57\x4f\x44\x37\x61\x53\x6b\x53\x57\x4f\x30\x45','\x57\x4f\x53\x79\x57\x34\x4f\x6b\x57\x35\x78\x64\x47\x6d\x6f\x63\x57\x51\x65','\x57\x51\x61\x36\x57\x52\x44\x6b\x57\x34\x6a\x67','\x57\x4f\x6e\x74\x57\x52\x6c\x64\x50\x61','\x69\x67\x56\x63\x4f\x43\x6f\x7a\x65\x38\x6f\x4d\x57\x4f\x69','\x57\x52\x78\x63\x4a\x43\x6f\x72\x46\x38\x6f\x37\x57\x34\x56\x63\x47\x61','\x69\x43\x6b\x44\x57\x4f\x79\x68\x57\x35\x66\x59\x75\x32\x47','\x57\x34\x68\x63\x4e\x6d\x6b\x37\x57\x52\x4a\x63\x4c\x38\x6b\x44\x41\x6d\x6f\x35','\x6c\x4c\x58\x71\x62\x38\x6b\x64\x42\x38\x6f\x71\x41\x47','\x57\x4f\x39\x62\x57\x36\x50\x4c\x41\x6d\x6f\x6d\x45\x6d\x6f\x75','\x57\x50\x34\x79\x57\x35\x71\x46\x57\x35\x78\x64\x55\x57','\x57\x36\x79\x6d\x57\x4f\x79\x64\x64\x43\x6f\x73\x57\x4f\x76\x78','\x57\x52\x52\x63\x47\x38\x6f\x42\x57\x36\x70\x64\x54\x31\x61\x46\x65\x61','\x57\x50\x64\x64\x50\x6d\x6f\x6c\x72\x76\x46\x64\x49\x57','\x68\x6d\x6f\x53\x57\x52\x76\x47\x57\x34\x4a\x63\x4e\x47','\x43\x4c\x2f\x63\x4b\x43\x6b\x52','\x67\x43\x6b\x78\x57\x4f\x37\x64\x47\x58\x46\x64\x54\x6d\x6f\x5a\x45\x57','\x61\x38\x6b\x6a\x57\x34\x56\x63\x53\x43\x6f\x69\x41\x77\x6d','\x45\x49\x68\x64\x4d\x6d\x6b\x46\x77\x43\x6b\x57\x57\x34\x56\x63\x50\x43\x6b\x71\x71\x6d\x6f\x56\x79\x72\x47','\x75\x6d\x6b\x76\x57\x36\x33\x63\x4b\x43\x6f\x48\x44\x78\x65\x44','\x57\x52\x33\x64\x4a\x6d\x6f\x47\x57\x34\x31\x38\x57\x50\x6c\x63\x52\x38\x6f\x36','\x6a\x38\x6b\x63\x57\x4f\x4b\x44\x57\x34\x7a\x6f\x73\x4e\x6d','\x71\x38\x6f\x4a\x57\x34\x42\x63\x50\x49\x2f\x64\x50\x32\x6d\x76\x57\x37\x37\x63\x50\x73\x52\x64\x50\x71','\x6c\x6d\x6b\x44\x57\x52\x44\x31\x61\x38\x6b\x33\x57\x4f\x53','\x57\x51\x74\x63\x4b\x53\x6f\x5a\x79\x38\x6f\x36\x57\x37\x46\x63\x4c\x43\x6b\x74','\x77\x6d\x6b\x35\x57\x52\x33\x63\x4c\x73\x74\x64\x52\x43\x6b\x44\x57\x52\x34','\x6f\x6d\x6b\x7a\x57\x50\x31\x32\x65\x38\x6b\x39','\x76\x38\x6b\x6b\x57\x51\x56\x63\x4b\x61','\x57\x34\x6d\x56\x75\x4d\x68\x63\x51\x6d\x6b\x6e\x68\x62\x65','\x57\x52\x33\x63\x4d\x53\x6f\x69\x57\x35\x64\x64\x50\x4b\x4b\x72\x66\x57','\x66\x43\x6f\x55\x57\x52\x76\x47\x57\x34\x30','\x57\x50\x76\x6a\x57\x52\x70\x64\x52\x5a\x68\x64\x4c\x76\x2f\x63\x4b\x61','\x6c\x43\x6b\x7a\x57\x50\x34','\x43\x64\x76\x4f\x44\x43\x6f\x59\x64\x4e\x4a\x63\x4a\x71','\x64\x30\x31\x30\x6d\x53\x6b\x4a','\x6b\x6d\x6b\x79\x57\x50\x75\x6c\x57\x37\x58\x46\x78\x4e\x6d','\x57\x51\x5a\x63\x4f\x67\x48\x47\x57\x52\x33\x63\x49\x53\x6f\x49\x74\x71','\x78\x49\x65\x6b\x57\x34\x79\x38\x76\x53\x6b\x34\x57\x35\x76\x63\x57\x34\x33\x64\x47\x6d\x6f\x7a\x44\x47','\x57\x34\x2f\x63\x55\x6d\x6b\x44\x66\x48\x56\x63\x4c\x67\x79\x62\x57\x4f\x74\x63\x53\x65\x70\x64\x4e\x4a\x53','\x57\x51\x76\x4b\x7a\x38\x6f\x65\x57\x34\x35\x4b\x57\x52\x43','\x57\x52\x78\x63\x49\x53\x6f\x5a\x43\x53\x6f\x49\x57\x34\x64\x63\x51\x38\x6b\x65','\x76\x71\x56\x63\x51\x61','\x64\x30\x35\x6e\x57\x50\x30\x64\x6e\x62\x74\x63\x56\x71','\x57\x4f\x5a\x64\x54\x6d\x6f\x77\x73\x47','\x57\x35\x69\x4c\x6b\x53\x6f\x77\x57\x51\x70\x64\x49\x77\x71','\x76\x57\x34\x6e\x70\x61','\x44\x66\x70\x63\x4e\x43\x6b\x47\x6c\x43\x6b\x42\x74\x32\x71','\x70\x53\x6f\x69\x57\x51\x7a\x57\x69\x63\x5a\x64\x4d\x6d\x6f\x31\x57\x34\x70\x64\x51\x30\x53\x6a\x7a\x71','\x57\x50\x6e\x6c\x57\x35\x39\x52\x41\x43\x6f\x6c\x79\x57','\x57\x51\x50\x46\x57\x50\x64\x63\x54\x57','\x42\x30\x64\x63\x4d\x38\x6b\x64\x69\x53\x6b\x67\x7a\x78\x61','\x75\x53\x6b\x42\x57\x37\x47\x31\x43\x77\x4a\x63\x56\x38\x6f\x63','\x65\x6d\x6b\x54\x57\x50\x70\x64\x48\x58\x64\x64\x4c\x6d\x6f\x59\x46\x57','\x42\x38\x6b\x77\x57\x37\x38\x59\x79\x65\x4a\x63\x47\x43\x6f\x75','\x57\x37\x6a\x36\x67\x4c\x66\x44\x57\x34\x31\x78\x57\x50\x75','\x74\x75\x39\x59\x6a\x6d\x6b\x57\x45\x38\x6f\x76\x63\x47','\x57\x51\x48\x63\x44\x47\x47\x49','\x57\x4f\x46\x63\x55\x33\x6e\x7a\x57\x4f\x57','\x71\x68\x39\x56\x6e\x53\x6b\x48\x42\x43\x6f\x73\x68\x57','\x75\x38\x6b\x7a\x57\x37\x74\x63\x49\x43\x6f\x39\x74\x47','\x79\x4d\x70\x64\x4e\x71','\x6a\x43\x6b\x6e\x62\x48\x75\x5a\x63\x62\x61\x42\x6a\x38\x6b\x4a\x57\x51\x70\x63\x4e\x53\x6f\x52','\x6e\x53\x6b\x68\x57\x37\x4c\x78\x57\x36\x70\x63\x4f\x32\x53','\x61\x53\x6f\x6f\x57\x51\x35\x57\x57\x34\x46\x63\x4e\x57','\x57\x35\x6d\x53\x61\x6d\x6f\x41\x57\x52\x6d','\x72\x49\x6a\x52\x75\x53\x6f\x49\x68\x30\x74\x63\x4d\x47','\x57\x35\x34\x31\x57\x36\x57\x34\x57\x34\x4e\x64\x55\x53\x6f\x6a','\x64\x78\x50\x45\x57\x50\x7a\x37','\x68\x76\x64\x63\x4c\x38\x6f\x70\x6d\x57','\x6e\x6d\x6b\x79\x57\x50\x71\x67','\x57\x36\x75\x77\x57\x35\x78\x64\x56\x68\x66\x63','\x57\x37\x44\x32\x57\x36\x53\x4b\x6a\x43\x6f\x37\x46\x47\x4f','\x64\x43\x6b\x62\x57\x51\x70\x64\x49\x72\x68\x64\x4a\x38\x6f\x30','\x57\x50\x30\x63\x57\x34\x53\x62','\x57\x37\x4e\x63\x4c\x74\x70\x63\x54\x43\x6f\x48','\x61\x5a\x76\x64\x57\x37\x6e\x44\x57\x51\x46\x63\x4b\x64\x43','\x57\x36\x75\x43\x57\x35\x74\x64\x51\x31\x50\x6f\x65\x47\x75','\x57\x52\x35\x52\x75\x73\x52\x64\x4a\x77\x42\x63\x53\x6d\x6f\x58','\x57\x50\x4c\x74\x57\x4f\x64\x63\x53\x38\x6f\x63\x64\x47','\x44\x53\x6f\x71\x74\x65\x6e\x49\x42\x4b\x34\x4d','\x6e\x43\x6f\x52\x57\x51\x48\x4f\x41\x31\x57','\x66\x43\x6f\x53\x57\x51\x76\x38\x57\x37\x42\x63\x4d\x64\x76\x4f','\x57\x37\x35\x38\x68\x4e\x31\x63\x57\x36\x6a\x70\x57\x4f\x6d','\x57\x36\x57\x6a\x57\x50\x6d\x6a\x65\x6d\x6f\x47\x57\x4f\x57','\x57\x50\x58\x71\x57\x4f\x4e\x63\x52\x43\x6f\x62','\x46\x43\x6b\x70\x57\x36\x30\x50','\x72\x38\x6b\x49\x57\x50\x39\x58\x7a\x31\x2f\x64\x50\x57\x30','\x57\x34\x33\x63\x4c\x38\x6f\x6b\x6a\x78\x58\x49\x57\x37\x48\x4c','\x57\x52\x68\x64\x4a\x38\x6f\x38','\x57\x4f\x39\x4a\x79\x5a\x79\x59\x6d\x38\x6b\x46','\x57\x52\x61\x49\x57\x52\x6e\x48\x57\x35\x54\x41\x57\x51\x42\x63\x4f\x71','\x71\x53\x6b\x61\x57\x36\x5a\x63\x4f\x38\x6f\x39\x57\x37\x54\x65\x6c\x47','\x69\x6d\x6b\x6b\x57\x36\x50\x79\x57\x36\x4e\x63\x4f\x4e\x30\x46','\x69\x6d\x6b\x65\x57\x37\x76\x79\x57\x37\x70\x63\x50\x68\x65\x56','\x57\x34\x75\x48\x64\x43\x6f\x61\x57\x4f\x4e\x64\x4c\x67\x74\x63\x4d\x47','\x57\x34\x46\x63\x4c\x64\x4e\x63\x4a\x6d\x6f\x71\x57\x52\x4e\x63\x4d\x6d\x6b\x6a','\x77\x53\x6b\x64\x57\x51\x64\x63\x4b\x59\x74\x64\x53\x61','\x57\x36\x44\x2f\x63\x66\x61','\x6f\x76\x72\x64\x66\x53\x6b\x75\x77\x6d\x6f\x56\x41\x61','\x57\x52\x69\x77\x57\x35\x34\x44\x57\x35\x78\x64\x52\x43\x6f\x55\x57\x51\x43','\x57\x37\x50\x70\x78\x43\x6f\x57\x57\x34\x71','\x6e\x76\x44\x68\x62\x38\x6b\x64\x42\x57','\x57\x36\x33\x63\x49\x43\x6b\x37\x57\x50\x47\x34\x57\x35\x2f\x63\x53\x38\x6f\x42\x6a\x48\x64\x63\x49\x38\x6b\x64','\x57\x36\x2f\x64\x52\x76\x5a\x63\x4e\x61','\x67\x63\x7a\x77\x57\x35\x72\x76\x57\x52\x5a\x63\x4f\x59\x34','\x63\x68\x58\x43\x57\x4f\x62\x54\x64\x6d\x6f\x36\x57\x37\x69','\x57\x50\x4c\x39\x75\x63\x30\x2b\x68\x53\x6b\x73\x57\x34\x6d','\x57\x34\x79\x76\x57\x37\x78\x63\x54\x77\x78\x63\x53\x30\x70\x63\x53\x6d\x6b\x49\x64\x31\x71\x59','\x57\x4f\x35\x31\x75\x64\x47\x55\x6c\x57','\x57\x37\x5a\x64\x52\x65\x52\x63\x4b\x61','\x57\x51\x2f\x63\x49\x38\x6f\x48','\x46\x6d\x6f\x63\x57\x51\x38\x64\x57\x52\x74\x64\x51\x63\x30\x6f\x57\x35\x4f\x59\x78\x53\x6f\x6f\x57\x37\x4f','\x57\x51\x65\x32\x57\x52\x54\x39\x44\x6d\x6b\x56\x6b\x4a\x6d\x58\x6a\x43\x6b\x38\x43\x53\x6b\x65','\x44\x4b\x70\x63\x4a\x43\x6b\x54'];_0x28f5=function(){return _0x39eaba;};return _0x28f5();}export function deriveCycleHistory(_0x3ecfc4){const _0x24ce0b=_0x2b91,_0x1715f6={'\x63\x6f\x6e\x73\x65\x63\x75\x74\x69\x76\x65\x52\x65\x70\x61\x69\x72\x43\x6f\x75\x6e\x74':0x0,'\x65\x6d\x70\x74\x79\x43\x79\x63\x6c\x65\x43\x6f\x75\x6e\x74':0x0,'\x63\x6f\x6e\x73\x65\x63\x75\x74\x69\x76\x65\x45\x6d\x70\x74\x79\x43\x79\x63\x6c\x65\x73':0x0,'\x63\x6f\x6e\x73\x65\x63\x75\x74\x69\x76\x65\x46\x61\x69\x6c\x75\x72\x65\x43\x6f\x75\x6e\x74':0x0,'\x63\x6f\x6e\x73\x65\x63\x75\x74\x69\x76\x65\x53\x75\x63\x63\x65\x73\x73\x43\x6f\x75\x6e\x74':0x0,'\x73\x75\x63\x63\x65\x73\x73\x43\x79\x63\x6c\x65\x43\x6f\x75\x6e\x74':0x0,'\x72\x65\x63\x65\x6e\x74\x46\x61\x69\x6c\x75\x72\x65\x52\x61\x74\x69\x6f':0x0,'\x67\x65\x6e\x65\x46\x72\x65\x71':{}};if(!Array[_0x24ce0b(0x96,'\x47\x66\x73\x4d')](_0x3ecfc4)||_0x3ecfc4[_0x24ce0b(0xd8,'\x55\x7a\x29\x73')]===0x22e8+-0x2264+-0x84)return _0x1715f6;const _0x520207=_0x3ecfc4[_0x24ce0b(0xd2,'\x5b\x50\x53\x4b')](-RECENT_WINDOW),_0x1f03d6=_0x520207[_0x24ce0b(0x78,'\x63\x61\x55\x41')](-FREQ_WINDOW);let _0x127b68=0x53b+0x1cd7+-0x2212;for(let _0x1e8fd3=_0x520207[_0x24ce0b(0xf2,'\x28\x5e\x4e\x21')]-(0xd92+-0x1226*0x1+-0x187*-0x3);_0x1e8fd3>=0x229d*0x1+0x1ea+0x2487*-0x1;_0x1e8fd3--){if(_0x24ce0b(0xcb,'\x6a\x67\x73\x47')!==_0x24ce0b(0xdc,'\x72\x23\x51\x41'))_0x251f98[_0x24ce0b(0x86,'\x25\x35\x36\x44')](_0x24ce0b(0xa6,'\x52\x46\x25\x34')+_0x24ce0b(0x92,'\x59\x6b\x23\x52')+'\x74\x69\x6f\x6e');else{if(_0x520207[_0x1e8fd3][_0x24ce0b(0xf7,'\x79\x62\x71\x54')]===_0x24ce0b(0xfe,'\x50\x61\x72\x69'))_0x127b68++;else break;}}let _0x3100a5=0x2232+-0x2*-0x118d+-0x454c;const _0x4b57ff={};for(const _0x6ac36e of _0x1f03d6){if(_0x24ce0b(0xca,'\x50\x61\x72\x69')!==_0x24ce0b(0x75,'\x51\x55\x4d\x4b'))_0x248cd0[_0x24ce0b(0xf9,'\x47\x78\x4e\x5e')](_0x24ce0b(0xbc,'\x4e\x54\x4b\x54')+'\x6f\x6f\x70\x5f\x64\x65\x74\x65'+_0x24ce0b(0xff,'\x47\x78\x4e\x5e')),_0x48b436[_0x24ce0b(0x77,'\x38\x54\x29\x65')](_0x24ce0b(0xb6,'\x6a\x67\x73\x47')+'\x6e\x6f\x76\x61\x74\x69\x6f\x6e'+_0x24ce0b(0xd3,'\x44\x39\x66\x69')+_0x24ce0b(0x98,'\x63\x61\x55\x41')+'\x6f\x70');else{if(isEmptyCycle(_0x6ac36e))_0x3100a5++;for(const _0x420f7b of _0x6ac36e[_0x24ce0b(0xa2,'\x51\x6d\x55\x44')+'\x64']??[])_0x4b57ff[String(_0x420f7b)]=(_0x4b57ff[String(_0x420f7b)]??-0x1411+0x25d3+-0x11c2)+(0x1*0x784+0x4c7+0xf2*-0xd);}}let _0x2ae2b9=-0x1e1a+0xb92+-0x2*-0x944;for(let _0x5c61a2=_0x520207[_0x24ce0b(0x9f,'\x55\x59\x44\x40')]-(0xd3*0x3+-0x172d*0x1+0x14b5);_0x5c61a2>=-0xd9*-0x1e+-0x1*0x1e49+0x4db;_0x5c61a2--){if('\x6d\x56\x64\x77\x42'!==_0x24ce0b(0x7d,'\x25\x35\x36\x44')){if(isEmptyCycle(_0x520207[_0x5c61a2]))_0x2ae2b9++;else break;}else _0xc542d3[_0x24ce0b(0x70,'\x71\x37\x61\x32')](_0x24ce0b(0xe9,'\x5a\x6f\x4b\x7a')+_0x24ce0b(0xf0,'\x5b\x50\x53\x4b')+'\x74\x65'),_0x516e79[_0x24ce0b(0x72,'\x66\x28\x67\x61')](_0x24ce0b(0x90,'\x50\x61\x72\x69')+_0x24ce0b(0xc9,'\x54\x72\x54\x28')+_0x24ce0b(0xbf,'\x74\x26\x76\x38'));}let _0x2b9bf4=-0x192a+0x74a+-0x4*-0x478;for(let _0x5d0b9a=_0x520207['\x6c\x65\x6e\x67\x74\x68']-(-0x1f22+0xc7e+0x12a5);_0x5d0b9a>=0x1*-0xbdd+0x4ca+-0x1*-0x713;_0x5d0b9a--){if(isEmptyCycle(_0x520207[_0x5d0b9a]))break;if(isFailed(_0x520207[_0x5d0b9a]))_0x2b9bf4++;else break;}let _0xb3a415=-0x1ca8+0x161*0x15+-0x4d,_0x5c0239=-0x2163+0x9e*0xe+0x389*0x7;for(const _0x255f68 of _0x1f03d6){if(isEmptyCycle(_0x255f68))continue;_0x5c0239++;if(isFailed(_0x255f68))_0xb3a415++;}let _0x34580d=0x4bf+0x1662+0x1b21*-0x1;for(let _0x3b49d0=_0x520207[_0x24ce0b(0x7c,'\x4c\x57\x58\x62')]-(-0x2059+0xb3*0xb+0x18a9);_0x3b49d0>=-0x26f+-0x5*-0x3fb+-0xd*0x158;_0x3b49d0--){if('\x54\x48\x77\x64\x52'!==_0x24ce0b(0xd6,'\x47\x66\x73\x4d'))_0x1e377a[_0x24ce0b(0x88,'\x25\x6b\x41\x79')]('\x66\x61\x69\x6c\x75\x72\x65\x5f'+_0x24ce0b(0xde,'\x55\x7a\x29\x73')+'\x65\x63\x74\x65\x64');else{if(isEmptyCycle(_0x520207[_0x3b49d0]))break;if(isSuccess(_0x520207[_0x3b49d0]))_0x34580d++;else break;}}let _0x1b315c=0x2*-0x246+-0x1b56+-0x1*-0x1fe2;for(const _0xb3d093 of _0x1f03d6){if(isEmptyCycle(_0xb3d093))continue;if(isSuccess(_0xb3d093))_0x1b315c++;}return{'\x63\x6f\x6e\x73\x65\x63\x75\x74\x69\x76\x65\x52\x65\x70\x61\x69\x72\x43\x6f\x75\x6e\x74':_0x127b68,'\x65\x6d\x70\x74\x79\x43\x79\x63\x6c\x65\x43\x6f\x75\x6e\x74':_0x3100a5,'\x63\x6f\x6e\x73\x65\x63\x75\x74\x69\x76\x65\x45\x6d\x70\x74\x79\x43\x79\x63\x6c\x65\x73':_0x2ae2b9,'\x63\x6f\x6e\x73\x65\x63\x75\x74\x69\x76\x65\x46\x61\x69\x6c\x75\x72\x65\x43\x6f\x75\x6e\x74':_0x2b9bf4,'\x63\x6f\x6e\x73\x65\x63\x75\x74\x69\x76\x65\x53\x75\x63\x63\x65\x73\x73\x43\x6f\x75\x6e\x74':_0x34580d,'\x73\x75\x63\x63\x65\x73\x73\x43\x79\x63\x6c\x65\x43\x6f\x75\x6e\x74':_0x1b315c,'\x72\x65\x63\x65\x6e\x74\x46\x61\x69\x6c\x75\x72\x65\x52\x61\x74\x69\x6f':_0x5c0239>0x1*0xddb+-0xe9*-0x2+-0xfad?_0xb3a415/_0x5c0239:-0x1*-0x6d+0x4*0x752+-0x1db5*0x1,'\x67\x65\x6e\x65\x46\x72\x65\x71':_0x4b57ff};}export function computeMetaSignals(_0xa509fe){const _0x4738cd=_0x2b91,_0x23f6f7=[];_0xa509fe[_0x4738cd(0xa7,'\x63\x61\x55\x41')+_0x4738cd(0xaf,'\x40\x70\x47\x4f')+_0x4738cd(0xd1,'\x5b\x28\x33\x63')]>=-0x4*0x47f+0x2a*0x71+-0x8b&&(_0x23f6f7[_0x4738cd(0xc3,'\x4a\x6e\x23\x45')](_0x4738cd(0xdd,'\x71\x37\x61\x32')+_0x4738cd(0x83,'\x47\x78\x4e\x5e')+_0x4738cd(0x89,'\x5b\x28\x33\x63')),_0x23f6f7[_0x4738cd(0xf3,'\x2a\x6e\x56\x77')](_0x4738cd(0x106,'\x74\x26\x76\x38')+_0x4738cd(0x9e,'\x40\x70\x47\x4f')+'\x5f\x61\x66\x74\x65\x72\x5f\x72'+'\x65\x70\x61\x69\x72\x5f\x6c\x6f'+'\x6f\x70'));_0xa509fe[_0x4738cd(0xf4,'\x79\x62\x71\x54')+'\x6c\x65\x43\x6f\x75\x6e\x74']>=0x73e+-0x3*0x8ad+0x12cd&&('\x48\x6c\x56\x65\x56'!==_0x4738cd(0x84,'\x5b\x28\x33\x63')?_0x23f6f7['\x70\x75\x73\x68'](_0x4738cd(0xa5,'\x6f\x75\x68\x6f')+_0x4738cd(0xec,'\x25\x35\x36\x44')+_0x4738cd(0x109,'\x24\x38\x39\x5e')+'\x64'):(_0x5e416a[_0x4738cd(0x95,'\x31\x45\x6b\x6c')](_0x4738cd(0x99,'\x66\x28\x67\x61')+_0x4738cd(0xb5,'\x63\x61\x55\x41')+'\x69\x6f'),_0x285309[_0x4738cd(0xd7,'\x63\x61\x55\x41')](_0x4738cd(0xb1,'\x31\x45\x6b\x6c')+'\x6e\x6f\x76\x61\x74\x69\x6f\x6e'+_0x4738cd(0xf5,'\x26\x31\x51\x79')+_0x4738cd(0xc8,'\x2a\x6e\x56\x77')+'\x6f\x70')));if(_0xa509fe[_0x4738cd(0xcc,'\x54\x72\x54\x28')+_0x4738cd(0xdf,'\x25\x6b\x41\x79')+_0x4738cd(0xe2,'\x51\x55\x4d\x4b')]>=-0x79c*0x5+0x11*-0x233+0x4b74)_0x23f6f7[_0x4738cd(0xbd,'\x55\x59\x44\x40')](_0x4738cd(0x93,'\x26\x31\x51\x79')+_0x4738cd(0xe3,'\x5b\x28\x33\x63')+'\x74\x65'),_0x23f6f7[_0x4738cd(0x103,'\x79\x24\x4f\x35')](_0x4738cd(0x90,'\x50\x61\x72\x69')+_0x4738cd(0xc6,'\x51\x6d\x55\x44')+_0x4738cd(0xa1,'\x79\x24\x4f\x35'));else _0xa509fe['\x63\x6f\x6e\x73\x65\x63\x75\x74'+_0x4738cd(0xe4,'\x2a\x6e\x56\x77')+'\x43\x79\x63\x6c\x65\x73']>=-0x375+0x1fce+-0x1c56&&_0x23f6f7[_0x4738cd(0xe7,'\x47\x38\x4a\x79')](_0x4738cd(0xef,'\x38\x54\x29\x65')+_0x4738cd(0xab,'\x28\x5e\x4e\x21')+_0x4738cd(0x10f,'\x47\x38\x4a\x79'));if(_0xa509fe[_0x4738cd(0x7b,'\x38\x54\x29\x65')+_0x4738cd(0x71,'\x6f\x31\x47\x70')+_0x4738cd(0xe0,'\x4a\x6e\x23\x45')]>=-0x53f*0x1+0x1e+-0x5e*-0xe){if(_0x4738cd(0x10e,'\x5b\x50\x53\x4b')===_0x4738cd(0xe6,'\x4a\x6e\x23\x45'))_0x23f6f7[_0x4738cd(0x6f,'\x65\x33\x66\x7a')](_0x4738cd(0xee,'\x38\x54\x29\x65')+_0x4738cd(0x81,'\x71\x37\x61\x32')+_0x4738cd(0xb2,'\x63\x61\x55\x41'));else return _0xd5c5c7['\x6f\x75\x74\x63\x6f\x6d\x65']?.[_0x4738cd(0x8e,'\x50\x61\x72\x69')]===_0x4738cd(0xac,'\x59\x6b\x23\x52');}_0xa509fe[_0x4738cd(0xfb,'\x42\x39\x76\x75')+_0x4738cd(0xfa,'\x71\x37\x61\x32')+_0x4738cd(0xbe,'\x5b\x50\x53\x4b')]>=0x7a0+-0x2614+-0x2c5*-0xb&&(_0x4738cd(0xb4,'\x79\x62\x71\x54')===_0x4738cd(0x8b,'\x6a\x2a\x58\x64')?_0x47bb04[_0x4738cd(0x10b,'\x63\x52\x46\x59')](_0x4738cd(0x10d,'\x4a\x6e\x23\x45')+_0x4738cd(0x10c,'\x51\x6d\x55\x44')+_0x4738cd(0xce,'\x65\x33\x66\x7a')):(_0x23f6f7[_0x4738cd(0x95,'\x31\x45\x6b\x6c')]('\x63\x6f\x6e\x73\x65\x63\x75\x74'+'\x69\x76\x65\x5f\x66\x61\x69\x6c'+_0x4738cd(0x104,'\x21\x35\x64\x31')+_0x4738cd(0xbb,'\x38\x54\x45\x43')+_0xa509fe['\x63\x6f\x6e\x73\x65\x63\x75\x74'+_0x4738cd(0xc4,'\x79\x24\x4f\x35')+_0x4738cd(0xa9,'\x59\x6b\x23\x52')]),_0xa509fe[_0x4738cd(0xcc,'\x54\x72\x54\x28')+_0x4738cd(0xc4,'\x79\x24\x4f\x35')+_0x4738cd(0xc2,'\x24\x38\x39\x5e')]>=0x1712+0x9bd*0x4+0x21*-0x1e1&&_0x23f6f7['\x70\x75\x73\x68']('\x66\x61\x69\x6c\x75\x72\x65\x5f'+_0x4738cd(0x85,'\x25\x6b\x41\x79')+_0x4738cd(0xb0,'\x5b\x28\x33\x63'))));if(_0xa509fe[_0x4738cd(0x9a,'\x79\x62\x71\x54')+_0x4738cd(0x105,'\x4b\x42\x25\x49')+'\x69\x6f']>=0x89*0x13+-0x316+-0x715+0.75){if(_0x4738cd(0x73,'\x55\x59\x44\x40')!==_0x4738cd(0x79,'\x55\x7a\x29\x73'))_0x23f6f7[_0x4738cd(0x10b,'\x63\x52\x46\x59')]('\x68\x69\x67\x68\x5f\x66\x61\x69'+_0x4738cd(0x7e,'\x2a\x6e\x56\x77')+'\x69\x6f'),_0x23f6f7[_0x4738cd(0x7a,'\x4c\x57\x58\x62')](_0x4738cd(0xe1,'\x62\x44\x47\x77')+_0x4738cd(0x9b,'\x24\x38\x39\x5e')+_0x4738cd(0xc5,'\x47\x38\x4a\x79')+_0x4738cd(0x9d,'\x4a\x56\x31\x32')+'\x6f\x70');else{if(_0x1ff6e2[_0x4738cd(0xfc,'\x50\x61\x72\x69')+'\x6c\x65'])return!![];const _0x26a0ea=_0x1b2516[_0x4738cd(0xaa,'\x4c\x57\x58\x62')+_0x4738cd(0x100,'\x4c\x57\x58\x62')];return!!_0x26a0ea&&(_0x26a0ea[_0x4738cd(0xd5,'\x42\x39\x76\x75')]??-(0x232a+-0x1bcb+-0x75e))===-0x170a+-0xbe9+0x22f3*0x1&&(_0x26a0ea[_0x4738cd(0x10a,'\x47\x78\x4e\x5e')]??-(-0x1*0xa9f+0x1*0xa0b+0x95))===0x17f3+-0x4a7*-0x4+0x883*-0x5;}}return _0xa509fe[_0x4738cd(0x87,'\x25\x35\x36\x44')+'\x69\x76\x65\x53\x75\x63\x63\x65'+_0x4738cd(0x97,'\x4c\x57\x58\x62')]>=0x45a+-0x14c5*-0x1+-0x7*0x396&&_0x23f6f7['\x70\x75\x73\x68'](_0x4738cd(0xba,'\x4c\x57\x58\x62')+_0x4738cd(0x6e,'\x2a\x6e\x56\x77')+_0x4738cd(0xa0,'\x5b\x28\x33\x63')),_0xa509fe[_0x4738cd(0xfb,'\x42\x39\x76\x75')+'\x69\x76\x65\x53\x75\x63\x63\x65'+_0x4738cd(0xda,'\x51\x6d\x55\x44')]>=-0xb9b+-0x22*0x7f+-0x1c7c*-0x1&&_0xa509fe[_0x4738cd(0xae,'\x21\x35\x64\x31')+_0x4738cd(0x91,'\x44\x39\x66\x69')+'\x69\x6f']>-0x51e+0x1765*-0x1+0x1c83&&_0x23f6f7[_0x4738cd(0x108,'\x28\x5e\x4e\x21')](_0x4738cd(0xed,'\x63\x52\x46\x59')+_0x4738cd(0x8f,'\x47\x38\x4a\x79')+_0x4738cd(0x9c,'\x26\x31\x51\x79')),_0xa509fe[_0x4738cd(0x107,'\x6a\x2a\x58\x64')+_0x4738cd(0xb3,'\x44\x39\x66\x69')+_0x4738cd(0xeb,'\x50\x61\x72\x69')]>-0x2c8+0x743+0x1f*-0x25&&_0xa509fe[_0x4738cd(0xf1,'\x72\x23\x51\x41')+'\x79\x63\x6c\x65\x43\x6f\x75\x6e'+'\x74']>=0x1a9*0x5+-0x134+0xb*-0xa5&&_0xa509fe[_0x4738cd(0xc0,'\x79\x24\x4f\x35')+_0x4738cd(0x8d,'\x5b\x50\x53\x4b')+'\x69\x6f']>-0xbc2+0x2db*-0xd+-0x3*-0x104b&&_0xa509fe['\x72\x65\x63\x65\x6e\x74\x46\x61'+_0x4738cd(0x91,'\x44\x39\x66\x69')+'\x69\x6f']<0x425+0x14b*0x1d+-0x29a4*0x1+0.5&&_0x23f6f7[_0x4738cd(0xdb,'\x26\x31\x51\x79')](_0x4738cd(0xd9,'\x6a\x2a\x58\x64')+'\x5f\x73\x65\x6c\x66\x5f\x68\x65'+_0x4738cd(0xad,'\x28\x5e\x4e\x21')),[...new Set(_0x23f6f7)];}
@@ -1,40 +1 @@
1
- import { createHash } from 'node:crypto';
2
- import { normalizeText } from '../signatures/signatures.js';
3
- const STRENGTH_WEIGHT = { strong: 1.0, agent: 0.8, success: 0.7, weak: 0.4 };
4
- function signatureOf(s) {
5
- return createHash('sha1').update(`${s.kind}\x1f${normalizeText(s.text)}`).digest('hex').slice(0, 16);
6
- }
7
- /** 单信号基础分 = 强度权重 ×(0.7 + 特异度). 特异度: 带 toolName/具体 kind 加成. */
8
- function baseScore(s) {
9
- let specificity = 0;
10
- if (s.toolName)
11
- specificity += 0.2;
12
- if (s.kind !== 'difficulty')
13
- specificity += 0.1;
14
- return STRENGTH_WEIGHT[s.strength] * (0.7 + specificity);
15
- }
16
- /**
17
- * 信号打分 + 去重闸(M4A-3, task 队列前最后一道). 同签名去重并累计 occurrences(持久=更高分),
18
- * 丢弃低分, 截断防低质信号灌爆 task 队列(批注#18).
19
- */
20
- export function signalGate(signals, cfg = {}) {
21
- const minScore = cfg.minScore ?? 0.3;
22
- const maxOutput = cfg.maxOutput ?? 50;
23
- const merged = new Map();
24
- for (const s of signals) {
25
- const sig = signatureOf(s);
26
- const existing = merged.get(sig);
27
- if (existing) {
28
- existing.occurrences += 1;
29
- // 持久信号加成(对数, 边际递减)
30
- existing.score = baseScore(existing) * (1 + Math.min(0.5, Math.log10(existing.occurrences + 1)));
31
- }
32
- else {
33
- merged.set(sig, { ...s, signature: sig, occurrences: 1, score: baseScore(s) });
34
- }
35
- }
36
- return [...merged.values()]
37
- .filter((s) => s.score >= minScore)
38
- .sort((a, b) => b.score - a.score)
39
- .slice(0, maxOutput);
40
- }
1
+ (function(_0x5d4006,_0x95ae7e){const _0x507c9a=_0x4665,_0x58fcb5=_0x5d4006();while(!![]){try{const _0x4c2b27=-parseInt(_0x507c9a(0xd4,'\x46\x75\x44\x6b'))/(-0x173*0xb+-0x1*0x261b+-0x1*-0x360d)+-parseInt(_0x507c9a(0xbb,'\x7a\x79\x4c\x47'))/(-0xf26+0x1fb4+-0x108c)*(parseInt(_0x507c9a(0xd6,'\x26\x66\x56\x39'))/(0x2*-0xb00+0xf92+-0x1*-0x671))+parseInt(_0x507c9a(0xdf,'\x76\x4d\x32\x39'))/(0x1*0x2294+-0xc9b+0x4d*-0x49)+-parseInt(_0x507c9a(0xcb,'\x51\x69\x61\x59'))/(-0x181e+0x5*0x3e+-0x1*-0x16ed)*(parseInt(_0x507c9a(0xc2,'\x41\x55\x7a\x4e'))/(0xa3e+0x134e+0x1d86*-0x1))+parseInt(_0x507c9a(0xdc,'\x47\x51\x5d\x43'))/(-0xade+-0x2052+0x2b37)*(parseInt(_0x507c9a(0xbc,'\x52\x24\x44\x30'))/(0xcb2+0x21b3+-0xb*0x437))+parseInt(_0x507c9a(0xd9,'\x49\x37\x65\x4b'))/(0x2fe+-0x10*0x102+0xd2b)*(-parseInt(_0x507c9a(0xc1,'\x44\x5b\x59\x76'))/(0x1877+-0x6*0xe5+-0x11f*0x11))+parseInt(_0x507c9a(0xd7,'\x7a\x79\x4c\x47'))/(-0x17c2*0x1+-0x101*0x20+-0x8b*-0x67)*(parseInt(_0x507c9a(0xc8,'\x6d\x46\x33\x63'))/(0x600+-0x2c*0xe0+0x1046*0x2));if(_0x4c2b27===_0x95ae7e)break;else _0x58fcb5['push'](_0x58fcb5['shift']());}catch(_0x16e565){_0x58fcb5['push'](_0x58fcb5['shift']());}}}(_0x3f47,0x17*0x5623+0x8dd*-0xbb+0x2f*0x3bf0));import{createHash}from'\x6e\x6f\x64\x65\x3a\x63\x72\x79\x70\x74\x6f';import{normalizeText}from'\x2e\x2e\x2f\x73\x69\x67\x6e\x61\x74\x75\x72\x65\x73\x2f\x73\x69\x67\x6e\x61\x74\x75\x72\x65\x73\x2e\x6a\x73';const STRENGTH_WEIGHT={'\x73\x74\x72\x6f\x6e\x67':0x1,'\x61\x67\x65\x6e\x74':0.8,'\x73\x75\x63\x63\x65\x73\x73':0.7,'\x77\x65\x61\x6b':0.4};function _0x4665(_0x12630e,_0x2bd95a){_0x12630e=_0x12630e-(0x3*-0xa81+-0x1616+-0x3653*-0x1);const _0x5c7a87=_0x3f47();let _0x2dc882=_0x5c7a87[_0x12630e];if(_0x4665['\x6a\x46\x6c\x7a\x4b\x72']===undefined){var _0xfbc11c=function(_0x5d97f6){const _0xc27c65='\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 _0x5eec85='',_0x27ca6d='';for(let _0x3ff70e=-0x25d9+-0x22*-0x21+0xd*0x293,_0x4fb1ef,_0x1e0291,_0x1cd2eb=0x504*0x4+0x39*-0x97+0xd8f;_0x1e0291=_0x5d97f6['\x63\x68\x61\x72\x41\x74'](_0x1cd2eb++);~_0x1e0291&&(_0x4fb1ef=_0x3ff70e%(-0x700+-0x4*0x51a+-0x15f*-0x14)?_0x4fb1ef*(-0x18cb*-0x1+0x1a11+-0x329c)+_0x1e0291:_0x1e0291,_0x3ff70e++%(-0xcc3+-0x1dd5+0xaa7*0x4))?_0x5eec85+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x3a*0x9f+-0x18fe+0x5*0xc67&_0x4fb1ef>>(-(0x16d4+0x489+-0x2f*0x95)*_0x3ff70e&-0x2*-0xea6+0xe3*-0x1+-0x1c63)):-0x7b*0xe+-0x2575*0x1+0x2c2f*0x1){_0x1e0291=_0xc27c65['\x69\x6e\x64\x65\x78\x4f\x66'](_0x1e0291);}for(let _0x568feb=-0x1b3a+0x2587+-0xa4d*0x1,_0x1e73d7=_0x5eec85['\x6c\x65\x6e\x67\x74\x68'];_0x568feb<_0x1e73d7;_0x568feb++){_0x27ca6d+='\x25'+('\x30\x30'+_0x5eec85['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x568feb)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0xb*-0x32b+0x2138+-0x4401))['\x73\x6c\x69\x63\x65'](-(-0xa93*-0x2+0x2*-0x42d+-0x1*0xcca));}return decodeURIComponent(_0x27ca6d);};const _0x429203=function(_0xd3c015,_0xbb3df7){let _0x491ad7=[],_0xdfef73=-0x130*-0x1f+-0x2*-0xcb6+-0x3e3c,_0x5045a2,_0x389d84='';_0xd3c015=_0xfbc11c(_0xd3c015);let _0x451935;for(_0x451935=0x1e51+-0x1*-0x14ca+0x15*-0x26f;_0x451935<0x5*0x3c7+0x159f+-0x2782;_0x451935++){_0x491ad7[_0x451935]=_0x451935;}for(_0x451935=0x490+0x1c43+0x1*-0x20d3;_0x451935<0x2*-0x12f4+0x1*0x4b7+0x2231;_0x451935++){_0xdfef73=(_0xdfef73+_0x491ad7[_0x451935]+_0xbb3df7['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x451935%_0xbb3df7['\x6c\x65\x6e\x67\x74\x68']))%(-0x436+0x20*-0xed+-0x1*-0x22d6),_0x5045a2=_0x491ad7[_0x451935],_0x491ad7[_0x451935]=_0x491ad7[_0xdfef73],_0x491ad7[_0xdfef73]=_0x5045a2;}_0x451935=0x130f+-0x145a+0x14b,_0xdfef73=-0xa9c+0x1*0x423+-0x1*-0x679;for(let _0x213ff6=0x1379+-0x7*0x544+0x1163;_0x213ff6<_0xd3c015['\x6c\x65\x6e\x67\x74\x68'];_0x213ff6++){_0x451935=(_0x451935+(0x2*0x2ce+-0x9e7+0x44c))%(0x10ea*-0x2+-0x1575*-0x1+0xd5f),_0xdfef73=(_0xdfef73+_0x491ad7[_0x451935])%(0x29*0x9e+0x10f*0x1+-0x195d),_0x5045a2=_0x491ad7[_0x451935],_0x491ad7[_0x451935]=_0x491ad7[_0xdfef73],_0x491ad7[_0xdfef73]=_0x5045a2,_0x389d84+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0xd3c015['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x213ff6)^_0x491ad7[(_0x491ad7[_0x451935]+_0x491ad7[_0xdfef73])%(0x4*-0x89b+-0x1*-0x80f+0x1b5d)]);}return _0x389d84;};_0x4665['\x48\x52\x64\x79\x4c\x42']=_0x429203,_0x4665['\x6a\x63\x47\x65\x71\x55']={},_0x4665['\x6a\x46\x6c\x7a\x4b\x72']=!![];}const _0x1686c4=_0x5c7a87[-0x19e0+0x4*0x89f+-0x89c],_0x2820cf=_0x12630e+_0x1686c4,_0x5a9ec7=_0x4665['\x6a\x63\x47\x65\x71\x55'][_0x2820cf];return!_0x5a9ec7?(_0x4665['\x64\x63\x54\x71\x58\x56']===undefined&&(_0x4665['\x64\x63\x54\x71\x58\x56']=!![]),_0x2dc882=_0x4665['\x48\x52\x64\x79\x4c\x42'](_0x2dc882,_0x2bd95a),_0x4665['\x6a\x63\x47\x65\x71\x55'][_0x2820cf]=_0x2dc882):_0x2dc882=_0x5a9ec7,_0x2dc882;}function signatureOf(_0x4c4741){const _0x3cddf2=_0x4665;return createHash(_0x3cddf2(0xcc,'\x7a\x79\x4c\x47'))[_0x3cddf2(0xd8,'\x5a\x44\x21\x2a')](_0x4c4741[_0x3cddf2(0xd1,'\x33\x65\x43\x39')]+'\x1f'+normalizeText(_0x4c4741[_0x3cddf2(0xc9,'\x34\x73\x51\x66')]))[_0x3cddf2(0xd2,'\x62\x4d\x68\x6a')]('\x68\x65\x78')[_0x3cddf2(0xd5,'\x4d\x76\x57\x6c')](-0x14c7+-0x13e5+-0xa2b*-0x4,-0x8*-0x179+-0x4a6*-0x1+-0x105e);}function baseScore(_0x41aa78){const _0x2cf8ac=_0x4665;let _0x4e3cb4=0xa0c+-0x3*0x3ad+0x1*0xfb;if(_0x41aa78[_0x2cf8ac(0xd3,'\x47\x51\x5d\x43')])_0x4e3cb4+=-0x737+0x1*-0x1ff4+0x1*0x272b+0.2;if(_0x41aa78[_0x2cf8ac(0xc3,'\x49\x37\x59\x70')]!==_0x2cf8ac(0xe4,'\x4c\x32\x55\x61')+'\x74\x79')_0x4e3cb4+=0x1*-0x2527+0x3*-0xc6f+0x3b9*0x14+0.1;return STRENGTH_WEIGHT[_0x41aa78[_0x2cf8ac(0xce,'\x4f\x52\x51\x4b')]]*(0x19c6*-0x1+0x4*-0x89b+0x3c32+0.7+_0x4e3cb4);}function _0x3f47(){const _0x4e8bc3=['\x57\x51\x47\x6f\x57\x52\x58\x73\x57\x37\x64\x64\x55\x32\x50\x6a','\x64\x30\x78\x63\x4b\x61','\x57\x51\x34\x30\x70\x63\x2f\x64\x53\x6d\x6b\x33\x57\x34\x47','\x57\x34\x78\x64\x4e\x74\x6c\x63\x4d\x78\x74\x63\x47\x6d\x6b\x46\x57\x50\x6e\x69\x57\x52\x78\x63\x55\x57','\x57\x51\x4c\x62\x6e\x53\x6f\x46','\x69\x6d\x6f\x31\x75\x47','\x57\x34\x6c\x64\x54\x4b\x47\x6e\x57\x36\x53\x6e\x73\x61','\x57\x34\x35\x4b\x57\x36\x46\x64\x49\x47','\x57\x36\x4f\x74\x44\x38\x6b\x7a\x73\x57\x4b\x53\x71\x67\x69\x4c\x57\x34\x56\x64\x47\x57','\x74\x48\x4a\x64\x50\x68\x58\x55\x72\x43\x6f\x66\x70\x61','\x57\x52\x6a\x68\x6c\x43\x6f\x45\x63\x75\x6d\x45\x77\x61','\x74\x61\x6a\x49\x6b\x38\x6b\x47','\x67\x61\x4a\x63\x4c\x38\x6b\x52','\x57\x51\x64\x63\x4f\x77\x65\x6b\x57\x35\x48\x4a','\x73\x71\x38\x6c\x78\x49\x70\x64\x4f\x43\x6b\x52\x57\x36\x79','\x43\x53\x6b\x47\x66\x6d\x6b\x42\x6d\x65\x39\x49\x57\x34\x78\x64\x50\x61\x56\x63\x4c\x6d\x6f\x67','\x57\x52\x71\x62\x57\x52\x7a\x65\x57\x36\x43','\x41\x6d\x6f\x67\x57\x51\x44\x6c\x76\x6d\x6b\x48\x57\x4f\x34','\x57\x4f\x34\x39\x57\x52\x46\x64\x49\x63\x5a\x64\x55\x71\x71\x49\x57\x50\x6a\x64','\x57\x35\x43\x55\x57\x35\x57\x5a\x57\x52\x33\x64\x56\x71','\x77\x68\x5a\x64\x53\x58\x38\x36\x57\x36\x58\x68','\x6e\x74\x56\x64\x47\x47','\x6f\x53\x6b\x35\x57\x37\x54\x39\x44\x67\x62\x6d\x46\x43\x6b\x59\x76\x6d\x6b\x73','\x62\x66\x6a\x73\x62\x66\x56\x64\x49\x6d\x6b\x65\x57\x34\x4a\x63\x52\x32\x52\x63\x4d\x57','\x6c\x53\x6f\x52\x46\x6d\x6f\x41\x6b\x6d\x6f\x49\x57\x37\x2f\x64\x55\x57','\x57\x34\x72\x4c\x57\x52\x37\x64\x52\x74\x43\x44\x79\x78\x70\x63\x51\x43\x6b\x74\x6b\x53\x6f\x6c\x67\x43\x6f\x52','\x70\x6d\x6b\x45\x57\x4f\x4e\x63\x51\x53\x6f\x6a\x57\x34\x37\x63\x54\x43\x6f\x45\x57\x35\x6c\x63\x4f\x53\x6b\x39\x57\x51\x68\x63\x47\x47','\x70\x53\x6f\x54\x57\x4f\x58\x32\x57\x37\x61\x70\x62\x57','\x57\x35\x54\x68\x62\x53\x6f\x54\x57\x51\x53\x64\x72\x53\x6b\x66','\x57\x37\x78\x63\x54\x53\x6b\x76\x57\x34\x54\x65','\x65\x4d\x2f\x64\x54\x57\x47\x6b','\x42\x38\x6f\x47\x57\x4f\x4c\x4b\x57\x37\x65\x69\x6f\x43\x6b\x72','\x7a\x48\x61\x53\x43\x53\x6f\x74','\x57\x4f\x4b\x36\x57\x52\x64\x64\x4a\x68\x2f\x63\x4b\x4d\x69\x4e\x57\x51\x72\x35\x57\x35\x48\x4d\x74\x71','\x57\x4f\x4f\x37\x57\x52\x2f\x64\x49\x78\x4e\x63\x4d\x71\x6d\x48\x57\x51\x4c\x43\x57\x35\x39\x77','\x57\x37\x43\x31\x6a\x5a\x70\x63\x53\x38\x6b\x4a\x57\x50\x42\x63\x4d\x63\x65','\x6d\x6d\x6f\x5a\x74\x53\x6f\x42\x79\x57','\x57\x4f\x70\x63\x51\x53\x6b\x38\x61\x61\x46\x64\x48\x53\x6f\x44\x57\x50\x70\x63\x51\x38\x6b\x52\x57\x50\x68\x63\x51\x38\x6b\x58','\x44\x74\x33\x64\x47\x53\x6b\x6a\x57\x34\x66\x50\x42\x71','\x64\x61\x5a\x64\x52\x57','\x57\x4f\x43\x43\x75\x43\x6b\x69\x57\x37\x35\x75\x64\x43\x6f\x71\x6c\x43\x6b\x49\x57\x35\x4a\x63\x4d\x30\x6c\x64\x52\x61','\x57\x51\x54\x49\x57\x34\x31\x52\x57\x37\x76\x6a\x44\x43\x6f\x42\x43\x43\x6b\x76\x64\x64\x30\x6f','\x57\x36\x6c\x63\x48\x38\x6b\x44\x67\x47','\x57\x37\x74\x63\x53\x6d\x6b\x43'];_0x3f47=function(){return _0x4e8bc3;};return _0x3f47();}export function signalGate(_0x557b9e,_0x29e68b={}){const _0x1fce6a=_0x4665,_0x4be071=_0x29e68b[_0x1fce6a(0xe1,'\x44\x5b\x59\x76')]??-0x1*0xefe+0x48*-0x5c+0x28de+0.3,_0x234a2d=_0x29e68b[_0x1fce6a(0xdd,'\x73\x79\x6d\x4d')+'\x74']??-0x1802+-0x325+0x1b59,_0x3ee9a9=new Map();for(const _0x135994 of _0x557b9e){const _0x4b09f4=signatureOf(_0x135994),_0x53ce4f=_0x3ee9a9[_0x1fce6a(0xc0,'\x72\x72\x52\x69')](_0x4b09f4);_0x53ce4f?(_0x53ce4f[_0x1fce6a(0xcf,'\x34\x73\x51\x66')+_0x1fce6a(0xc6,'\x4c\x6e\x48\x34')]+=0x1d*-0xb6+-0x7a*0xd+0x1ad1,_0x53ce4f['\x73\x63\x6f\x72\x65']=baseScore(_0x53ce4f)*(-0x13*0x1f3+0xd56+-0x29*-0x94+Math[_0x1fce6a(0xc4,'\x6d\x55\x55\x36')](-0x291*0xb+0x6*-0x4ea+-0xf*-0x3d9+0.5,Math[_0x1fce6a(0xe2,'\x6d\x55\x55\x36')](_0x53ce4f[_0x1fce6a(0xc5,'\x4d\x76\x57\x6c')+_0x1fce6a(0xca,'\x46\x75\x44\x6b')]+(-0x22*-0x103+-0x4d3+0xec9*-0x2))))):_0x3ee9a9[_0x1fce6a(0xda,'\x64\x7a\x32\x40')](_0x4b09f4,{..._0x135994,'\x73\x69\x67\x6e\x61\x74\x75\x72\x65':_0x4b09f4,'\x6f\x63\x63\x75\x72\x72\x65\x6e\x63\x65\x73':0x1,'\x73\x63\x6f\x72\x65':baseScore(_0x135994)});}return[..._0x3ee9a9['\x76\x61\x6c\x75\x65\x73']()]['\x66\x69\x6c\x74\x65\x72'](_0x1058bf=>_0x1058bf[_0x1fce6a(0xe3,'\x49\x37\x65\x4b')]>=_0x4be071)['\x73\x6f\x72\x74']((_0x47dcd2,_0x1909c2)=>_0x1909c2[_0x1fce6a(0xbd,'\x46\x75\x44\x6b')]-_0x47dcd2[_0x1fce6a(0xe5,'\x28\x29\x72\x78')])[_0x1fce6a(0xd0,'\x4d\x33\x57\x6f')](-0xbe0+-0x272*0x2+0x10c4,_0x234a2d);}
@@ -1,43 +1 @@
1
- export const TASK_DOMAIN_SIGNAL_PREFIX = 'task_domain:';
2
- const TASK_DOMAIN_SLUG_RE = /^[a-z0-9][a-z0-9-]{0,63}$/;
3
- /** Identify the namespace even when the value is malformed, so it cannot leak into generic matching. */
4
- export function isTaskDomainSignal(raw) {
5
- return raw.trim().toLowerCase().startsWith(TASK_DOMAIN_SIGNAL_PREFIX);
6
- }
7
- /** Remove task-domain tokens from generic matching while preserving their original wire representation elsewhere. */
8
- export function withoutTaskDomainSignals(signals) {
9
- return signals.filter((signal) => !isTaskDomainSignal(signal));
10
- }
11
- /**
12
- * Resolve one canonical task domain from signal tokens. Parsing is order-independent and fail-closed:
13
- * malformed tokens invalidate the whole dimension, and distinct valid slugs are ambiguous.
14
- */
15
- export function resolveTaskDomainSignals(signals) {
16
- const slugs = new Set();
17
- let found = false;
18
- for (const raw of signals) {
19
- const signal = raw.trim();
20
- const lower = signal.toLowerCase();
21
- if (!lower.startsWith(TASK_DOMAIN_SIGNAL_PREFIX))
22
- continue;
23
- found = true;
24
- if (signal !== raw)
25
- return { status: 'invalid' };
26
- const slug = lower.slice(TASK_DOMAIN_SIGNAL_PREFIX.length);
27
- if (!TASK_DOMAIN_SLUG_RE.test(slug))
28
- return { status: 'invalid' };
29
- slugs.add(slug);
30
- }
31
- if (!found)
32
- return { status: 'absent' };
33
- if (slugs.size !== 1)
34
- return { status: 'ambiguous' };
35
- return { status: 'resolved', slug: slugs.values().next().value };
36
- }
37
- /** Emit a canonical wire token. Callers must supply an already-normalized lowercase slug. */
38
- export function taskDomainSignal(slug) {
39
- if (!TASK_DOMAIN_SLUG_RE.test(slug)) {
40
- throw new Error(`invalid task_domain slug: ${slug}`);
41
- }
42
- return `${TASK_DOMAIN_SIGNAL_PREFIX}${slug}`;
43
- }
1
+ const _0x400c70=_0x4cf9;function _0x281e(){const _0x4ac75a=['\x63\x62\x52\x64\x4f\x53\x6f\x47\x57\x52\x34\x2f\x68\x76\x61','\x66\x71\x56\x64\x55\x38\x6f\x4d','\x74\x76\x74\x63\x4b\x6d\x6f\x4d\x57\x50\x58\x50\x57\x51\x47','\x70\x4c\x62\x70\x71\x57','\x76\x4d\x54\x44\x7a\x38\x6f\x57\x57\x50\x5a\x63\x52\x47\x64\x64\x54\x53\x6b\x79\x6c\x58\x5a\x63\x51\x57','\x6f\x53\x6f\x39\x75\x71','\x76\x77\x6e\x78\x7a\x53\x6f\x32\x57\x37\x5a\x64\x52\x4a\x37\x64\x51\x53\x6b\x39\x64\x47','\x57\x37\x50\x59\x57\x36\x4a\x63\x49\x57','\x74\x53\x6b\x42\x57\x52\x74\x63\x4e\x43\x6b\x6f\x57\x37\x4c\x66\x57\x36\x31\x57\x41\x74\x37\x63\x4e\x57','\x57\x50\x72\x49\x57\x34\x56\x63\x50\x62\x61\x51\x57\x51\x64\x64\x48\x47','\x57\x37\x4e\x64\x4a\x53\x6b\x4a\x77\x68\x6e\x47\x57\x51\x47','\x6e\x38\x6f\x55\x57\x51\x4f\x4b\x57\x37\x2f\x63\x48\x65\x61','\x73\x4c\x42\x63\x53\x6d\x6b\x51\x57\x37\x38\x7a\x6f\x65\x56\x63\x53\x6d\x6f\x50\x41\x47','\x57\x37\x4a\x63\x54\x59\x74\x64\x4b\x6d\x6b\x47\x6c\x68\x70\x64\x4b\x72\x38\x59\x57\x52\x68\x63\x56\x61','\x6e\x57\x4a\x64\x51\x6d\x6f\x49\x46\x38\x6f\x2b','\x57\x35\x4e\x63\x4a\x71\x4f\x68\x6a\x66\x48\x48\x73\x61\x6d\x76','\x62\x73\x47\x62','\x6c\x43\x6f\x53\x57\x52\x75\x4d\x57\x37\x79','\x65\x4a\x74\x64\x55\x64\x4f\x34\x57\x37\x52\x64\x47\x6d\x6b\x65\x57\x37\x50\x4d\x78\x67\x69','\x57\x50\x33\x63\x55\x4a\x31\x4a','\x57\x51\x43\x53\x57\x35\x69\x34\x57\x37\x44\x49\x57\x52\x4c\x56\x57\x50\x74\x64\x52\x59\x72\x53\x57\x36\x61','\x6b\x31\x66\x79','\x76\x4d\x50\x71\x70\x38\x6b\x59\x57\x37\x4e\x64\x4d\x48\x74\x64\x4e\x61','\x61\x76\x53\x72\x6b\x31\x6e\x57\x73\x67\x38\x76\x78\x43\x6f\x6e\x57\x50\x43','\x6b\x6d\x6f\x48\x57\x52\x61\x57\x57\x37\x42\x63\x4e\x47','\x61\x43\x6f\x5a\x57\x52\x4c\x32\x57\x35\x76\x38\x6f\x57','\x57\x51\x47\x51\x46\x77\x33\x63\x4a\x63\x2f\x63\x50\x74\x46\x64\x47\x38\x6b\x64\x68\x6d\x6b\x77','\x76\x53\x6f\x73\x57\x4f\x30\x4b\x57\x37\x44\x37\x67\x58\x30','\x46\x53\x6f\x6d\x42\x61\x64\x64\x52\x4c\x31\x55\x44\x4a\x70\x63\x4a\x6d\x6b\x36\x78\x57','\x7a\x53\x6b\x51\x57\x4f\x38\x6d\x44\x4c\x65','\x67\x47\x5a\x64\x53\x6d\x6f\x33\x57\x51\x71\x34','\x75\x57\x7a\x69\x6a\x71','\x46\x4e\x50\x41\x57\x4f\x75\x30','\x69\x53\x6f\x55\x61\x38\x6f\x34\x77\x63\x4f\x69\x57\x35\x64\x64\x4c\x64\x6d','\x57\x52\x4a\x64\x50\x67\x74\x63\x4e\x71','\x61\x66\x34\x73\x46\x48\x65\x77\x73\x32\x69\x50','\x57\x37\x6e\x6a\x57\x51\x6d\x48'];_0x281e=function(){return _0x4ac75a;};return _0x281e();}(function(_0x98939b,_0x565ba1){const _0x192595=_0x4cf9,_0x3b132f=_0x98939b();while(!![]){try{const _0x5c2bc8=-parseInt(_0x192595(0x1f3,'\x26\x50\x62\x4c'))/(0x1bb3*-0x1+-0x1*0xd8d+0x2941)+parseInt(_0x192595(0x214,'\x62\x35\x65\x47'))/(-0x7*0x151+0x2*0x416+0x10d*0x1)*(-parseInt(_0x192595(0x20d,'\x63\x6d\x41\x71'))/(-0x4c*-0x35+0x1*-0x1441+0x488))+parseInt(_0x192595(0x210,'\x48\x75\x41\x51'))/(0x2*0x2b+-0x759+0x101*0x7)+parseInt(_0x192595(0x20a,'\x5b\x44\x6c\x5d'))/(0x3*-0xb2c+-0x1*0xab5+0x1*0x2c3e)*(-parseInt(_0x192595(0x1f2,'\x64\x23\x39\x29'))/(-0x874+-0x962+0x11dc))+parseInt(_0x192595(0x206,'\x57\x4c\x6c\x54'))/(0x408+-0x5c3+0x1c2)+parseInt(_0x192595(0x212,'\x35\x59\x4c\x38'))/(0x5*0x35b+0xb0e+-0x1bcd)+-parseInt(_0x192595(0x20b,'\x39\x76\x7a\x4c'))/(0x691+-0xdbf+0x737);if(_0x5c2bc8===_0x565ba1)break;else _0x3b132f['push'](_0x3b132f['shift']());}catch(_0x2cbf27){_0x3b132f['push'](_0x3b132f['shift']());}}}(_0x281e,-0x2a73*-0xc+0xa1c*0x5e+-0x353a2));export const TASK_DOMAIN_SIGNAL_PREFIX='\x74\x61\x73\x6b\x5f\x64\x6f\x6d'+_0x400c70(0x1f8,'\x40\x38\x78\x4d');const TASK_DOMAIN_SLUG_RE=/^[a-z0-9][a-z0-9-]{0,63}$/;export function isTaskDomainSignal(_0x39bd83){const _0x1bbc60=_0x400c70;return _0x39bd83[_0x1bbc60(0x1fd,'\x78\x32\x6f\x4a')]()['\x74\x6f\x4c\x6f\x77\x65\x72\x43'+_0x1bbc60(0x203,'\x36\x29\x40\x5a')]()[_0x1bbc60(0x1fe,'\x5b\x44\x6c\x5d')+'\x74\x68'](TASK_DOMAIN_SIGNAL_PREFIX);}export function withoutTaskDomainSignals(_0x5df853){const _0x2ddbc5=_0x400c70;return _0x5df853[_0x2ddbc5(0x1f6,'\x59\x26\x49\x54')](_0x19cc2a=>!isTaskDomainSignal(_0x19cc2a));}function _0x4cf9(_0x37b382,_0x1ee90e){_0x37b382=_0x37b382-(0x2574+0x5*-0x392+0x8d4*-0x2);const _0x1d602e=_0x281e();let _0x211d8a=_0x1d602e[_0x37b382];if(_0x4cf9['\x6a\x59\x71\x54\x4a\x76']===undefined){var _0x1fb9cc=function(_0x534cb2){const _0x4e9135='\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 _0x13f9fd='',_0x98939b='';for(let _0x565ba1=0x18ff*-0x1+-0x169d+-0xbe7*-0x4,_0x3b132f,_0x5c2bc8,_0x2cbf27=-0x9*-0x233+0x61*-0x52+0xb47;_0x5c2bc8=_0x534cb2['\x63\x68\x61\x72\x41\x74'](_0x2cbf27++);~_0x5c2bc8&&(_0x3b132f=_0x565ba1%(-0x1*-0x14d+-0x1f78+-0x1e2f*-0x1)?_0x3b132f*(0x2202+0x7*0x47b+-0x411f)+_0x5c2bc8:_0x5c2bc8,_0x565ba1++%(-0x118d+0x1b32+0x9a1*-0x1))?_0x13f9fd+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x14a0+0x3*0x475+0x840*0x1&_0x3b132f>>(-(-0x11f0+-0xc*-0x39+0xf46)*_0x565ba1&-0x5b5*0x1+-0x1bd1+0x218c)):0x22e*0x5+-0x76+0x10*-0xa7){_0x5c2bc8=_0x4e9135['\x69\x6e\x64\x65\x78\x4f\x66'](_0x5c2bc8);}for(let _0x243dbf=-0x2*0x1bc+0x16c+0x20c,_0x242b78=_0x13f9fd['\x6c\x65\x6e\x67\x74\x68'];_0x243dbf<_0x242b78;_0x243dbf++){_0x98939b+='\x25'+('\x30\x30'+_0x13f9fd['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x243dbf)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0x7*-0x13f+0xa7b+-0x1324*0x1))['\x73\x6c\x69\x63\x65'](-(0xe17*-0x1+0x17cb+-0x9b2));}return decodeURIComponent(_0x98939b);};const _0x16f0c1=function(_0x5d9a14,_0x517f84){let _0x20dfd5=[],_0x45c1f5=0x143*0xb+0x1*0x2e9+0x133*-0xe,_0x4fb664,_0x50817e='';_0x5d9a14=_0x1fb9cc(_0x5d9a14);let _0x33b780;for(_0x33b780=-0x14c2+-0x2*0x4b2+0x1e26;_0x33b780<0x4a2+0x195f*-0x1+0x15bd;_0x33b780++){_0x20dfd5[_0x33b780]=_0x33b780;}for(_0x33b780=0x196f*0x1+-0x1782+0x1*-0x1ed;_0x33b780<0x106c*0x1+0x3*0x399+-0x1a37*0x1;_0x33b780++){_0x45c1f5=(_0x45c1f5+_0x20dfd5[_0x33b780]+_0x517f84['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x33b780%_0x517f84['\x6c\x65\x6e\x67\x74\x68']))%(0x1e42*0x1+0x166c+-0x1b9*0x1e),_0x4fb664=_0x20dfd5[_0x33b780],_0x20dfd5[_0x33b780]=_0x20dfd5[_0x45c1f5],_0x20dfd5[_0x45c1f5]=_0x4fb664;}_0x33b780=0xd8d*-0x1+0x1746+-0x9b9,_0x45c1f5=-0x7*0x151+0x2*0x416+0x10b*0x1;for(let _0xc969c1=-0x4c*-0x35+0x1*-0x1441+0x485;_0xc969c1<_0x5d9a14['\x6c\x65\x6e\x67\x74\x68'];_0xc969c1++){_0x33b780=(_0x33b780+(0x2*0x2b+-0x759+0x382*0x2))%(0x3*-0xb2c+-0x1*0xab5+0x1*0x2d39),_0x45c1f5=(_0x45c1f5+_0x20dfd5[_0x33b780])%(-0x874+-0x962+0x12d6),_0x4fb664=_0x20dfd5[_0x33b780],_0x20dfd5[_0x33b780]=_0x20dfd5[_0x45c1f5],_0x20dfd5[_0x45c1f5]=_0x4fb664,_0x50817e+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x5d9a14['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0xc969c1)^_0x20dfd5[(_0x20dfd5[_0x33b780]+_0x20dfd5[_0x45c1f5])%(0x408+-0x5c3+0x2bb)]);}return _0x50817e;};_0x4cf9['\x6d\x44\x5a\x54\x50\x67']=_0x16f0c1,_0x4cf9['\x52\x66\x6f\x64\x68\x78']={},_0x4cf9['\x6a\x59\x71\x54\x4a\x76']=!![];}const _0x43a906=_0x1d602e[0x5*0x35b+0xb0e+-0x1bd5],_0x54f23d=_0x37b382+_0x43a906,_0x5d63e7=_0x4cf9['\x52\x66\x6f\x64\x68\x78'][_0x54f23d];return!_0x5d63e7?(_0x4cf9['\x4a\x77\x59\x55\x7a\x62']===undefined&&(_0x4cf9['\x4a\x77\x59\x55\x7a\x62']=!![]),_0x211d8a=_0x4cf9['\x6d\x44\x5a\x54\x50\x67'](_0x211d8a,_0x1ee90e),_0x4cf9['\x52\x66\x6f\x64\x68\x78'][_0x54f23d]=_0x211d8a):_0x211d8a=_0x5d63e7,_0x211d8a;}export function resolveTaskDomainSignals(_0x32f336){const _0x1af26e=_0x400c70,_0x1a84ea=new Set();let _0x336837=![];for(const _0x1d321c of _0x32f336){const _0x2c179b=_0x1d321c[_0x1af26e(0x205,'\x25\x46\x42\x28')](),_0x28b972=_0x2c179b['\x74\x6f\x4c\x6f\x77\x65\x72\x43'+_0x1af26e(0x20e,'\x62\x35\x65\x47')]();if(!_0x28b972['\x73\x74\x61\x72\x74\x73\x57\x69'+'\x74\x68'](TASK_DOMAIN_SIGNAL_PREFIX))continue;_0x336837=!![];if(_0x2c179b!==_0x1d321c)return{'\x73\x74\x61\x74\x75\x73':_0x1af26e(0x200,'\x74\x58\x6f\x34')};const _0xdbd4d8=_0x28b972[_0x1af26e(0x20f,'\x7a\x26\x63\x51')](TASK_DOMAIN_SIGNAL_PREFIX[_0x1af26e(0x20c,'\x58\x6d\x36\x54')]);if(!TASK_DOMAIN_SLUG_RE[_0x1af26e(0x201,'\x48\x77\x4d\x4b')](_0xdbd4d8))return{'\x73\x74\x61\x74\x75\x73':_0x1af26e(0x209,'\x7a\x26\x63\x51')};_0x1a84ea[_0x1af26e(0x213,'\x48\x77\x4d\x4b')](_0xdbd4d8);}if(!_0x336837)return{'\x73\x74\x61\x74\x75\x73':_0x1af26e(0x1f7,'\x5b\x44\x6c\x5d')};if(_0x1a84ea[_0x1af26e(0x211,'\x6b\x6b\x2a\x37')]!==0x23b1+-0x44b*-0x9+0x1*-0x4a53)return{'\x73\x74\x61\x74\x75\x73':'\x61\x6d\x62\x69\x67\x75\x6f\x75'+'\x73'};return{'\x73\x74\x61\x74\x75\x73':_0x1af26e(0x207,'\x43\x79\x41\x4c'),'\x73\x6c\x75\x67':_0x1a84ea[_0x1af26e(0x216,'\x7a\x26\x63\x51')]()[_0x1af26e(0x1ff,'\x5b\x44\x6c\x5d')]()[_0x1af26e(0x1f9,'\x4b\x52\x30\x2a')]};}export function taskDomainSignal(_0x4ba3fd){const _0x4ef8af=_0x400c70;if(!TASK_DOMAIN_SLUG_RE[_0x4ef8af(0x1fb,'\x39\x76\x7a\x4c')](_0x4ba3fd))throw new Error('\x69\x6e\x76\x61\x6c\x69\x64\x20'+'\x74\x61\x73\x6b\x5f\x64\x6f\x6d'+_0x4ef8af(0x1f4,'\x64\x23\x39\x29')+'\x3a\x20'+_0x4ba3fd);return''+TASK_DOMAIN_SIGNAL_PREFIX+_0x4ba3fd;}
@@ -1,123 +1 @@
1
- // Signal extraction from the LLM proxy's per-turn trace records (the `llm-trace-*.jsonl` files written by
2
- // the proxy's JsonlTraceSink). Trace records are TURN METADATA — models, tier decision, status, latency,
3
- // usage, stop_reason — never conversation text, so the signals here are the economic/reliability ones the
4
- // session transcripts can't see: upstream failures, credential breakage, router fallbacks, truncation
5
- // pressure, sustained latency. This closes the loop opened by the proxy's trace-capture seam: the proxy
6
- // captures turn metadata, and `evolver ingest` mines it through this extractor.
7
- //
8
- // Three-leg mapping: every rule below is a zero-cost structured judgment over counters, so every emitted
9
- // signal is `strong` with `needsAnalysis: false`. The `agent` and `weak` legs do not apply to metadata —
10
- // there is no free text for an agent marker or difficulty wording to live in.
11
- import { ulid as makeUlid } from 'ulid';
12
- const num = (v) => (typeof v === 'number' && Number.isFinite(v) ? v : null);
13
- const str = (v) => (typeof v === 'string' && v.length > 0 ? v : null);
14
- const strong = (kind, text) => ({ id: makeUlid(), strength: 'strong', kind, text: text.slice(0, 2000), needsAnalysis: false });
15
- /**
16
- * Extract economic/reliability signals from a batch of llm-trace records. Returns the SAME signal shape as
17
- * `extractSignals` (one batch-aggregated signal per fired rule, not one per record — a day file holds
18
- * thousands of turns and per-record emission would flood every downstream consumer with duplicates).
19
- * Records whose `event` is not `'llm_turn'` are ignored, so callers can pass a raw parsed JSONL batch.
20
- */
21
- export function extractTraceSignals(records, cfg = {}) {
22
- const min5xx = cfg.min5xx ?? 2;
23
- const minRateLimited = cfg.minRateLimited ?? 3;
24
- const minAuthFailures = cfg.minAuthFailures ?? 2;
25
- const minTruncations = cfg.minTruncations ?? 3;
26
- const minPolicyFallbacks = cfg.minPolicyFallbacks ?? 3;
27
- const slowTtfbMs = cfg.slowTtfbMs ?? 30_000;
28
- const minSlowTurns = cfg.minSlowTurns ?? 5;
29
- const minSlowShare = cfg.minSlowShare ?? 0.2;
30
- const handlerErrors = new Map(); // normalized error text → count
31
- const fallbacks = new Map(); // fallback reason → count
32
- const fiveXxStatuses = new Map(); // 5xx status → count
33
- let authFailures = 0;
34
- let rateLimited = 0;
35
- let truncations = 0;
36
- let eligibleTurns = 0; // successful turns with a measured TTFB — the latency denominator
37
- let slowTurns = 0;
38
- for (const r of records) {
39
- if (r.event !== 'llm_turn')
40
- continue;
41
- const status = num(r.status);
42
- const error = str(r.error);
43
- const fallback = str(r.fallback);
44
- const stopReason = str(r.stop_reason);
45
- const ttfb = num(r.ttfb_ms);
46
- // Handler/transport errors (upstream unreachable, drain failure, …). Auth statuses are carved out into
47
- // their own rule below so a 401's "x-api-key required" error text is not double-counted.
48
- if (error && status !== 401 && status !== 403) {
49
- const key = error.replace(/\s+/g, ' ').trim().slice(0, 200);
50
- handlerErrors.set(key, (handlerErrors.get(key) ?? 0) + 1);
51
- }
52
- if (status === 401 || status === 403)
53
- authFailures++;
54
- if (status !== null && status >= 500)
55
- fiveXxStatuses.set(status, (fiveXxStatuses.get(status) ?? 0) + 1);
56
- if (status === 429)
57
- rateLimited++;
58
- if (fallback)
59
- fallbacks.set(fallback, (fallbacks.get(fallback) ?? 0) + 1);
60
- if (stopReason === 'max_tokens')
61
- truncations++;
62
- if (status === 200 && ttfb !== null) {
63
- eligibleTurns++;
64
- if (ttfb >= slowTtfbMs)
65
- slowTurns++;
66
- }
67
- }
68
- const out = [];
69
- // RULE: handler error — the proxy could not complete the turn at all (e.g. ECONNREFUSED, drain timeout).
70
- // Threshold 1: a hard transport/handler failure is never routine, mirroring how a single tool error is a
71
- // strong signal in the session extractor. Grouped by error text so a repeated failure stays one signal.
72
- for (const [text, count] of handlerErrors) {
73
- out.push(strong('trace_handler_error', `LLM proxy handler error ×${count}: ${text}`));
74
- }
75
- // RULE: upstream 5xx — server-side failures that survived the route's own retry. Threshold 2: a single
76
- // 5xx is normal API weather (overload blips happen and the handler already retries rewritten requests);
77
- // two or more in one ingested batch is a reliability pattern worth surfacing.
78
- const total5xx = [...fiveXxStatuses.values()].reduce((s, n) => s + n, 0);
79
- if (total5xx >= min5xx) {
80
- const breakdown = [...fiveXxStatuses.keys()].sort((a, b) => a - b).join('/');
81
- out.push(strong('trace_upstream_5xx', `upstream 5xx ×${total5xx} (status ${breakdown}) — upstream reliability degraded`));
82
- }
83
- // RULE: rate limiting — 429s are the purest economic signal in the trace (quota/budget pressure).
84
- // Threshold 3: occasional 429s are expected under bursty load; sustained ones mean the tier/quota
85
- // configuration is mismatched with real usage.
86
- if (rateLimited >= minRateLimited) {
87
- out.push(strong('trace_rate_limited', `upstream 429 rate-limited ×${rateLimited} — quota/tier pressure`));
88
- }
89
- // RULE: auth failures — 401/403 from the credential path. Threshold 2: a single 401 can be one client's
90
- // typo; repeated ones mean the proxy or its clients are misconfigured (broken key, missing env cred).
91
- if (authFailures >= minAuthFailures) {
92
- out.push(strong('trace_auth_failure', `auth failures (401/403) ×${authFailures} — credential configuration broken`));
93
- }
94
- // RULE: router fallbacks, split by what the reason MEANS:
95
- // - classifier_error / rewrite_error: the router's own code threw. Threshold 1 — a throwing classifier
96
- // is a bug, never routine operation.
97
- // - downgrade_blocked: the safety guard refused an intra-family downgrade. Threshold 3 — single blocks
98
- // are the guard working as designed; a sustained pattern means the tier config conflicts with what
99
- // clients actually request and routing silently does nothing.
100
- // - anything else (future reasons): threshold 2 — unknown but repeated is worth a look.
101
- for (const [reason, count] of fallbacks) {
102
- const min = reason === 'classifier_error' || reason === 'rewrite_error' ? 1
103
- : reason === 'downgrade_blocked' ? minPolicyFallbacks
104
- : 2;
105
- if (count >= min) {
106
- out.push(strong('trace_router_fallback', `router fallback ${reason} ×${count} — routing degraded to passthrough`));
107
- }
108
- }
109
- // RULE: truncation pressure — turns that stopped at max_tokens. Threshold 3: a single truncation is often
110
- // deliberate (caller set a tight cap); repeated ones mean responses are systematically being cut off,
111
- // which silently corrupts agent behavior and wastes the tokens already paid for.
112
- if (truncations >= minTruncations) {
113
- out.push(strong('trace_truncation', `stop_reason=max_tokens ×${truncations} — output truncation pressure`));
114
- }
115
- // RULE: sustained high TTFB. TTFB (time to upstream response headers), NOT total latency_ms, because total
116
- // latency scales with legitimate output length — long generations are normal, slow first bytes are queue/
117
- // network/server pressure. Two-part gate so single spikes never fire: an absolute count (>= minSlowTurns)
118
- // AND a meaningful share of successful turns (>= minSlowShare) must be slow.
119
- if (slowTurns >= minSlowTurns && eligibleTurns > 0 && slowTurns / eligibleTurns >= minSlowShare) {
120
- out.push(strong('trace_slow_ttfb', `sustained high TTFB: ${slowTurns}/${eligibleTurns} successful turns ≥ ${slowTtfbMs}ms`));
121
- }
122
- return out;
123
- }
1
+ const _0x43eea9=_0x1e5d;(function(_0x4ee789,_0xa4a7e8){const _0x54a4a6=_0x1e5d,_0x4bebd2=_0x4ee789();while(!![]){try{const _0x3ad045=parseInt(_0x54a4a6(0x1d3,'\x35\x59\x38\x6c'))/(0x1*0x57b+0x9b8+0x185*-0xa)*(parseInt(_0x54a4a6(0x1da,'\x64\x70\x24\x40'))/(-0x39+0xd91*0x2+-0x1*0x1ae7))+parseInt(_0x54a4a6(0x24a,'\x6c\x49\x40\x6d'))/(0x115*0x1e+-0x7*0x491+0x1f*-0x4)+parseInt(_0x54a4a6(0x248,'\x36\x69\x23\x24'))/(0x1051*0x1+0x1*-0x16f6+-0x1*-0x6a9)+-parseInt(_0x54a4a6(0x1a9,'\x35\x38\x68\x4d'))/(0x2*-0x12ed+-0x1ddb+0x43ba*0x1)*(-parseInt(_0x54a4a6(0x21e,'\x64\x70\x24\x40'))/(-0x1326+0x8*-0x16+-0x2*-0x9ee))+-parseInt(_0x54a4a6(0x195,'\x4c\x7a\x28\x6e'))/(0x17e0+-0x1b63+0x38a)+parseInt(_0x54a4a6(0x1cd,'\x4c\x7a\x28\x6e'))/(0x152b*-0x1+0x190d+-0x1ed*0x2)*(parseInt(_0x54a4a6(0x191,'\x70\x77\x6b\x6c'))/(0xa19+-0xe89+0x479))+parseInt(_0x54a4a6(0x1ab,'\x73\x74\x55\x59'))/(-0x2bc+0x17cc+0xa83*-0x2)*(-parseInt(_0x54a4a6(0x1d8,'\x43\x4b\x29\x33'))/(-0x7e1*0x1+0x5dd+0x1*0x20f));if(_0x3ad045===_0xa4a7e8)break;else _0x4bebd2['push'](_0x4bebd2['shift']());}catch(_0x110e3d){_0x4bebd2['push'](_0x4bebd2['shift']());}}}(_0x1031,0x40470+0x94e14+0x2a067*-0x1));function _0x1031(){const _0x3ddeb3=['\x68\x38\x6b\x6a\x57\x52\x52\x63\x4e\x31\x4f','\x57\x37\x33\x64\x56\x72\x38\x75\x57\x51\x6e\x49\x57\x4f\x65','\x43\x43\x6f\x79\x64\x38\x6f\x4e\x45\x5a\x46\x63\x52\x4e\x30','\x44\x6d\x6f\x64\x68\x38\x6f\x55','\x57\x36\x68\x49\x47\x35\x6c\x63\x4b\x76\x33\x64\x4c\x43\x6f\x49\x77\x30\x43','\x63\x47\x53\x4e\x57\x34\x78\x64\x52\x6d\x6f\x4b\x57\x4f\x30\x44','\x57\x50\x68\x63\x49\x64\x52\x64\x48\x47','\x68\x43\x6b\x36\x57\x35\x78\x63\x4c\x38\x6f\x6c\x57\x51\x34\x50\x73\x61','\x72\x38\x6b\x73\x57\x52\x54\x52\x73\x43\x6b\x6e\x57\x35\x71','\x57\x36\x68\x64\x51\x78\x58\x7a','\x57\x52\x57\x4a\x77\x38\x6b\x39\x57\x4f\x71','\x57\x4f\x46\x63\x4f\x6d\x6f\x48\x69\x59\x30\x74\x7a\x68\x4e\x63\x49\x43\x6b\x49\x71\x38\x6f\x6b','\x57\x4f\x4e\x63\x55\x75\x66\x64\x57\x51\x38','\x57\x51\x43\x46\x73\x53\x6b\x4f\x75\x75\x50\x67\x41\x4d\x4a\x63\x48\x66\x37\x63\x4b\x43\x6b\x6e','\x57\x35\x42\x64\x4b\x53\x6b\x31\x7a\x43\x6b\x34\x57\x35\x38\x71\x57\x51\x4f','\x57\x4f\x4f\x77\x6f\x58\x37\x63\x48\x43\x6f\x38\x57\x34\x62\x41','\x71\x38\x6b\x55\x75\x4b\x34\x32\x77\x6d\x6b\x74\x57\x50\x79','\x75\x4b\x4e\x64\x50\x65\x33\x63\x48\x58\x53\x64\x6c\x47','\x57\x51\x57\x45\x57\x37\x71\x4d\x72\x71','\x72\x53\x6b\x72\x57\x4f\x31\x2b\x75\x43\x6f\x6c\x57\x35\x76\x37','\x57\x51\x48\x39\x62\x6d\x6f\x6d\x57\x4f\x68\x63\x50\x6d\x6b\x34\x68\x61\x42\x63\x52\x30\x47\x4e\x57\x37\x65','\x62\x43\x6b\x4d\x57\x50\x46\x63\x53\x68\x61\x47\x57\x37\x61\x2f','\x57\x35\x75\x4c\x75\x5a\x48\x57\x57\x37\x69','\x57\x4f\x65\x70\x6c\x47','\x57\x34\x52\x64\x4d\x33\x56\x63\x4c\x4e\x4b\x7a\x67\x67\x46\x63\x4d\x78\x47\x54\x57\x52\x31\x56','\x57\x37\x4b\x56\x64\x78\x79\x65\x68\x4a\x64\x64\x4d\x71','\x6b\x45\x6b\x62\x4b\x71\x72\x2f\x57\x34\x70\x64\x53\x5a\x42\x63\x49\x57','\x57\x51\x38\x57\x72\x43\x6b\x4e\x57\x50\x70\x63\x4e\x71','\x57\x51\x30\x4a\x73\x6d\x6b\x58\x57\x50\x70\x63\x53\x43\x6b\x6d\x68\x47','\x57\x34\x42\x64\x4f\x53\x6b\x34\x43\x4e\x31\x2b\x41\x68\x57','\x57\x34\x6d\x2f\x57\x34\x43\x57\x72\x31\x48\x2b\x71\x58\x56\x63\x4b\x64\x78\x64\x50\x61','\x57\x36\x47\x2b\x77\x6d\x6b\x66\x57\x36\x5a\x64\x52\x38\x6f\x55\x6d\x61','\x74\x31\x78\x64\x55\x78\x75','\x75\x38\x6f\x53\x42\x65\x50\x55\x57\x37\x37\x64\x4b\x61','\x57\x52\x6c\x63\x53\x53\x6f\x64\x75\x43\x6f\x6a\x57\x36\x61','\x57\x52\x37\x64\x47\x58\x57','\x75\x53\x6f\x2f\x78\x31\x54\x4f\x57\x34\x46\x64\x4c\x5a\x71','\x68\x4e\x42\x63\x52\x71\x57\x41\x68\x4c\x66\x57\x74\x6d\x6f\x38\x61\x73\x72\x33','\x57\x4f\x33\x63\x50\x31\x39\x6f\x57\x52\x58\x55\x57\x35\x56\x64\x4f\x47','\x57\x52\x70\x63\x56\x6d\x6f\x4d\x57\x34\x4a\x64\x49\x47','\x45\x64\x61\x66\x65\x43\x6b\x50\x57\x52\x43\x6d\x57\x36\x4f','\x57\x34\x74\x64\x52\x53\x6b\x46\x6a\x48\x56\x63\x51\x4d\x69','\x57\x35\x58\x58\x6a\x38\x6f\x71\x6d\x73\x56\x64\x55\x6d\x6b\x69','\x57\x52\x4e\x63\x4f\x57\x79\x49\x57\x34\x38','\x57\x36\x70\x64\x53\x53\x6b\x57\x57\x34\x56\x63\x4a\x4c\x76\x76\x57\x50\x65\x47\x41\x4a\x74\x64\x4d\x47','\x63\x6f\x6b\x64\x53\x43\x6f\x65\x42\x4b\x4a\x63\x48\x6d\x6f\x63\x44\x71','\x57\x37\x74\x63\x4e\x76\x44\x74\x57\x37\x57\x33\x57\x37\x6c\x63\x4c\x71\x54\x4b\x73\x43\x6f\x72\x43\x61','\x57\x36\x70\x64\x55\x78\x48\x64\x41\x75\x4b\x2f\x45\x57','\x57\x35\x42\x63\x4b\x57\x37\x64\x52\x49\x52\x64\x4a\x49\x43\x6d\x44\x74\x78\x64\x4d\x58\x78\x64\x50\x47','\x57\x50\x2f\x63\x52\x4b\x43','\x7a\x73\x4c\x6a\x71\x38\x6f\x66\x57\x36\x6d\x47\x57\x4f\x61','\x77\x53\x6f\x49\x7a\x6d\x6f\x72\x70\x63\x5a\x64\x48\x43\x6f\x4d','\x46\x5a\x61\x61\x73\x43\x6b\x51\x57\x51\x76\x75\x79\x47','\x57\x34\x5a\x64\x48\x53\x6b\x39\x79\x43\x6b\x4f\x57\x37\x69\x65\x57\x51\x34','\x74\x6d\x6f\x66\x6d\x57','\x57\x37\x56\x64\x52\x38\x6f\x35\x6d\x71\x53\x38\x44\x6d\x6f\x4c','\x57\x4f\x6a\x34\x57\x4f\x62\x59\x65\x61\x72\x4b\x42\x71','\x57\x37\x34\x73\x79\x4a\x42\x64\x4b\x6d\x6b\x68\x57\x37\x78\x64\x49\x47','\x44\x53\x6f\x6e\x67\x43\x6f\x35\x57\x34\x52\x63\x50\x57','\x57\x34\x38\x58\x7a\x77\x37\x64\x53\x47','\x77\x43\x6f\x66\x57\x35\x31\x36\x6d\x57\x34\x6c\x57\x52\x71','\x57\x34\x7a\x63\x6b\x43\x6b\x51\x77\x53\x6f\x6f\x61\x38\x6b\x70','\x57\x4f\x75\x54\x57\x4f\x44\x30\x62\x61\x6e\x50\x41\x71','\x43\x6d\x6f\x41\x68\x6d\x6f\x56\x57\x34\x5a\x63\x4e\x43\x6b\x78\x57\x51\x61','\x42\x4e\x69\x68\x72\x43\x6b\x50\x57\x52\x38\x61\x57\x35\x61','\x64\x45\x6b\x62\x4c\x43\x6b\x2b\x72\x66\x31\x69\x66\x4c\x57','\x57\x51\x5a\x63\x54\x43\x6f\x48\x57\x34\x5a\x64\x4d\x5a\x69','\x57\x51\x69\x65\x6d\x53\x6b\x69\x44\x33\x56\x64\x4e\x33\x65','\x57\x51\x4a\x63\x52\x64\x43\x64\x6d\x61\x30\x4a\x42\x6d\x6f\x61\x57\x34\x69\x66\x57\x34\x65','\x57\x51\x43\x41\x63\x6d\x6f\x62\x65\x72\x53\x4b\x78\x57','\x57\x37\x66\x65\x42\x38\x6f\x62\x63\x68\x56\x64\x4d\x32\x71','\x57\x36\x34\x6e\x57\x52\x5a\x63\x55\x43\x6b\x56\x57\x4f\x56\x64\x56\x59\x53','\x57\x52\x70\x63\x54\x43\x6f\x37','\x57\x37\x4f\x78\x57\x51\x78\x64\x52\x43\x6b\x2b\x57\x4f\x5a\x63\x52\x73\x6d','\x73\x43\x6b\x56\x57\x35\x4e\x63\x4e\x43\x6b\x45\x66\x57','\x57\x36\x71\x6f\x73\x4d\x6c\x64\x4b\x38\x6b\x70\x57\x37\x4e\x64\x53\x61','\x74\x61\x64\x49\x49\x36\x38\x39','\x57\x51\x64\x63\x54\x43\x6f\x63\x73\x53\x6f\x70\x57\x37\x76\x71\x76\x57','\x63\x47\x56\x63\x4e\x71','\x57\x37\x48\x54\x79\x6d\x6b\x76\x76\x72\x46\x63\x56\x53\x6b\x79','\x57\x34\x4a\x64\x4e\x5a\x4e\x64\x4c\x73\x39\x5a\x7a\x4c\x43','\x75\x74\x4c\x6b\x57\x51\x6c\x63\x4d\x57','\x57\x35\x6d\x48\x75\x49\x76\x53\x57\x37\x64\x64\x4b\x68\x47','\x57\x4f\x44\x72\x61\x72\x7a\x2f\x74\x6d\x6f\x42\x46\x47','\x57\x37\x75\x53\x78\x53\x6b\x73\x57\x34\x42\x64\x52\x38\x6f\x51\x6a\x71','\x57\x34\x35\x38\x74\x43\x6b\x72\x6a\x33\x56\x64\x4b\x78\x30','\x77\x6d\x6f\x6c\x57\x35\x64\x63\x4c\x53\x6f\x75\x57\x51\x69\x6a','\x57\x4f\x57\x66\x6d\x38\x6b\x57','\x78\x6d\x6b\x78\x57\x4f\x76\x38\x77\x6d\x6b\x30\x57\x34\x72\x37','\x57\x52\x6c\x64\x56\x57\x44\x57\x6e\x76\x78\x63\x47\x53\x6b\x64','\x57\x51\x30\x6f\x45\x77\x4a\x64\x4e\x53\x6b\x64\x57\x37\x37\x64\x50\x47','\x6f\x68\x72\x73\x72\x6d\x6f\x69\x57\x37\x61\x65\x57\x52\x34','\x57\x51\x74\x63\x56\x38\x6f\x34\x57\x34\x78\x64\x49\x63\x4a\x63\x4d\x38\x6f\x31','\x57\x34\x31\x34\x57\x51\x66\x71\x62\x38\x6f\x35\x7a\x73\x34\x38\x57\x52\x7a\x51\x41\x57','\x42\x62\x50\x67\x43\x6d\x6f\x45\x57\x37\x75\x35\x57\x4f\x53','\x57\x4f\x56\x64\x4c\x66\x64\x63\x55\x78\x52\x63\x48\x61','\x7a\x38\x6b\x50\x57\x37\x75\x4f\x6d\x72\x6d\x77\x57\x36\x57','\x73\x32\x37\x64\x4d\x6d\x6b\x64\x57\x37\x53','\x57\x4f\x69\x42\x67\x38\x6f\x65\x64\x47','\x63\x4c\x64\x64\x4c\x47','\x78\x6d\x6b\x78\x57\x4f\x76\x38\x77\x6d\x6b\x30\x57\x35\x44\x48','\x57\x51\x42\x63\x56\x45\x6b\x63\x4a\x68\x69\x42\x65\x32\x2f\x64\x53\x61','\x57\x52\x79\x43\x67\x63\x54\x42\x57\x37\x4f\x4c\x74\x47','\x72\x6d\x6b\x71\x57\x50\x7a\x36\x74\x53\x6f\x6c\x57\x50\x34\x47','\x57\x52\x64\x63\x53\x48\x71\x30\x57\x35\x42\x63\x4d\x57','\x57\x52\x4a\x64\x4e\x47\x38\x65\x57\x51\x58\x46\x57\x52\x68\x63\x52\x71','\x57\x36\x57\x6a\x7a\x77\x74\x64\x4b\x38\x6b\x76','\x57\x36\x56\x64\x55\x6d\x6f\x38\x43\x48\x4f\x6d\x70\x6d\x6f\x30','\x73\x64\x70\x64\x47\x76\x62\x41\x76\x71\x31\x70','\x76\x67\x68\x64\x54\x4c\x72\x67\x71\x57\x35\x79','\x57\x35\x4a\x64\x52\x38\x6b\x64\x6c\x57\x4a\x63\x4c\x4d\x6a\x52','\x57\x36\x78\x64\x52\x4d\x7a\x43','\x67\x65\x46\x49\x49\x6b\x37\x63\x48\x57','\x64\x45\x6b\x62\x4c\x43\x6b\x2b\x77\x4c\x31\x74\x65\x4b\x47','\x45\x63\x53\x6b\x77\x6d\x6b\x58\x57\x51\x75','\x46\x5a\x43\x30\x73\x53\x6b\x4c\x57\x52\x38\x79\x57\x34\x61','\x57\x50\x4a\x63\x55\x76\x50\x62','\x57\x34\x7a\x45\x41\x6d\x6f\x4e\x67\x38\x6f\x69\x66\x38\x6b\x69','\x78\x58\x4b\x50\x66\x53\x6f\x4b','\x57\x36\x64\x64\x54\x6d\x6b\x57\x57\x34\x5a\x63\x47\x76\x43\x76\x57\x52\x38\x65\x72\x59\x4a\x64\x56\x53\x6b\x6b','\x57\x37\x30\x72\x57\x52\x52\x63\x55\x43\x6b\x49\x57\x4f\x56\x63\x53\x64\x47','\x57\x4f\x30\x45\x6f\x57\x46\x63\x4c\x43\x6f\x34\x57\x35\x61','\x70\x2b\x6b\x61\x56\x6d\x6b\x36\x57\x35\x42\x63\x52\x4d\x7a\x36\x57\x52\x79','\x7a\x53\x6f\x53\x57\x36\x71','\x57\x36\x47\x56\x71\x57','\x57\x52\x70\x63\x56\x6d\x6f\x47\x57\x35\x5a\x64\x55\x59\x37\x63\x4e\x6d\x6f\x5a','\x57\x34\x58\x55\x6f\x53\x6f\x56\x67\x47','\x78\x65\x5a\x64\x51\x32\x37\x63\x4d\x58\x34\x6d\x6a\x61','\x57\x4f\x78\x63\x50\x66\x30\x6d\x57\x52\x39\x2f\x57\x35\x2f\x63\x51\x71','\x45\x4a\x7a\x72\x42\x53\x6f\x75','\x57\x37\x54\x32\x79\x43\x6f\x44\x6f\x32\x56\x64\x4e\x32\x79','\x57\x37\x4b\x70\x42\x77\x4a\x64\x4d\x6d\x6b\x35\x57\x37\x4e\x64\x50\x57','\x71\x53\x6f\x35\x7a\x6d\x6f\x32','\x45\x49\x50\x77\x41\x61','\x66\x66\x42\x64\x4c\x53\x6f\x55\x57\x36\x4e\x64\x4b\x57','\x78\x53\x6b\x59\x74\x32\x43','\x68\x6d\x6b\x4e\x57\x51\x42\x63\x48\x78\x30\x4d\x57\x36\x53\x45','\x44\x38\x6f\x63\x68\x53\x6f\x4a\x42\x4a\x70\x63\x4e\x49\x79','\x57\x50\x46\x63\x4a\x4d\x4a\x64\x48\x59\x4c\x67\x75\x31\x61','\x62\x49\x78\x63\x52\x43\x6f\x5a\x57\x52\x65','\x73\x43\x6f\x56\x76\x4b\x58\x66\x57\x37\x37\x64\x4b\x59\x4f','\x57\x35\x31\x4f\x6e\x43\x6f\x71\x69\x47','\x41\x57\x54\x54\x57\x51\x38','\x72\x4d\x4e\x63\x4b\x65\x62\x44\x61\x47\x46\x64\x52\x61','\x57\x34\x56\x64\x4d\x6d\x6b\x31\x79\x43\x6b\x4f','\x7a\x38\x6f\x4d\x57\x36\x69','\x79\x43\x6f\x37\x57\x37\x65\x35\x6a\x49\x6d\x6d\x57\x51\x30','\x46\x64\x66\x62\x42\x53\x6f\x55\x57\x37\x61\x5a\x57\x4f\x69','\x46\x59\x30\x6b\x74\x38\x6b\x48\x57\x4f\x4b\x68\x57\x35\x4b','\x57\x36\x53\x2f\x72\x6d\x6b\x44','\x57\x52\x52\x63\x49\x38\x6f\x61\x57\x51\x46\x64\x4c\x71','\x44\x43\x6f\x66\x6b\x53\x6f\x65\x79\x61','\x57\x4f\x61\x48\x57\x37\x79\x6d\x66\x38\x6b\x35\x42\x47\x6d','\x57\x36\x57\x78\x57\x52\x52\x63\x50\x71','\x79\x64\x4f\x73\x78\x57','\x57\x34\x6a\x58\x73\x74\x48\x35\x57\x37\x33\x63\x4b\x75\x65','\x57\x50\x7a\x4f\x57\x4f\x43','\x57\x34\x6d\x64\x70\x48\x46\x63\x4c\x43\x6b\x39\x57\x35\x6e\x64','\x68\x57\x69\x75\x57\x34\x56\x64\x50\x6d\x6f\x51\x57\x4f\x39\x6a','\x57\x52\x57\x4a\x44\x53\x6b\x33\x57\x4f\x74\x63\x4e\x6d\x6b\x72\x61\x57','\x57\x52\x5a\x64\x4d\x72\x30\x70','\x57\x34\x76\x36\x57\x36\x53\x79\x42\x53\x6b\x51\x74\x49\x57','\x78\x53\x6f\x4b\x7a\x6d\x6b\x4c\x6c\x63\x56\x64\x48\x6d\x6f\x55','\x57\x37\x74\x64\x47\x32\x31\x44\x42\x31\x34\x58\x71\x71','\x57\x35\x75\x4b\x75\x49\x76\x2f\x57\x37\x5a\x64\x4e\x33\x61','\x62\x6d\x6f\x5a\x57\x34\x2f\x63\x54\x53\x6f\x73\x57\x51\x38\x39\x45\x47','\x57\x50\x47\x45\x6f\x62\x5a\x64\x48\x38\x6f\x54\x57\x35\x66\x75','\x57\x37\x5a\x64\x51\x43\x6f\x33\x69\x4a\x65\x72\x45\x43\x6f\x4c','\x77\x53\x6f\x41\x57\x37\x34\x71\x6d\x47','\x68\x6d\x6b\x56\x57\x52\x64\x63\x49\x77\x75\x4d\x57\x37\x43\x56','\x57\x52\x4f\x35\x6f\x6d\x6f\x74\x64\x66\x64\x64\x53\x53\x6f\x4e','\x73\x43\x6f\x2f\x57\x37\x68\x64\x4f\x49\x72\x2b\x57\x51\x57\x45\x57\x52\x68\x64\x50\x4a\x33\x63\x56\x53\x6b\x41','\x57\x4f\x61\x63\x6a\x72\x46\x63\x4c\x6d\x6b\x39\x57\x4f\x53\x66','\x57\x52\x69\x46\x6c\x72\x31\x67','\x77\x74\x78\x64\x55\x66\x44\x33\x73\x48\x65','\x57\x35\x71\x2b\x76\x63\x76\x37\x57\x36\x46\x63\x4b\x78\x6d','\x57\x50\x79\x44\x62\x72\x44\x2b\x73\x53\x6f\x70\x6e\x57','\x77\x53\x6b\x61\x57\x50\x72\x5a\x78\x6d\x6b\x69\x57\x35\x6d','\x57\x51\x33\x49\x47\x41\x4b\x53\x45\x43\x6f\x73\x57\x50\x70\x64\x55\x43\x6f\x38','\x57\x4f\x78\x63\x50\x4c\x50\x79\x57\x52\x48\x50','\x57\x52\x43\x64\x61\x64\x50\x68\x57\x36\x58\x4b\x57\x37\x71','\x57\x37\x6a\x41\x67\x49\x4c\x6b\x57\x34\x30\x64\x72\x71','\x57\x37\x54\x63\x65\x6d\x6f\x6c\x63\x71\x4b\x78\x71\x57','\x57\x51\x42\x63\x53\x48\x69\x5a\x57\x34\x65','\x57\x4f\x79\x31\x72\x64\x7a\x53\x57\x37\x74\x64\x4c\x78\x61','\x57\x37\x6c\x63\x55\x31\x53\x53','\x6a\x6d\x6f\x42\x63\x6d\x6f\x56\x57\x34\x52\x63\x50\x38\x6b\x71\x57\x51\x65','\x57\x35\x35\x35\x57\x50\x50\x4a\x61\x30\x31\x36\x45\x47','\x57\x52\x43\x77\x77\x38\x6b\x42\x57\x52\x30','\x7a\x73\x53\x63\x74\x43\x6b\x4f\x57\x37\x79\x78\x57\x35\x4f','\x57\x52\x68\x64\x4f\x43\x6b\x57','\x46\x58\x54\x36\x57\x36\x46\x63\x48\x66\x34\x67\x57\x52\x57'];_0x1031=function(){return _0x3ddeb3;};return _0x1031();}import{ulid as _0x27c5ff}from'\x75\x6c\x69\x64';const num=_0x5ad0f7=>typeof _0x5ad0f7===_0x43eea9(0x1dc,'\x5a\x65\x6e\x79')&&Number[_0x43eea9(0x1c8,'\x74\x70\x58\x7a')](_0x5ad0f7)?_0x5ad0f7:null,str=_0x418975=>typeof _0x418975===_0x43eea9(0x193,'\x56\x4c\x2a\x43')&&_0x418975[_0x43eea9(0x1bf,'\x35\x2a\x59\x69')]>0x1fcc+-0x10a4*0x2+0x5f*0x4?_0x418975:null,strong=(_0x516275,_0x552a01)=>({'\x69\x64':_0x27c5ff(),'\x73\x74\x72\x65\x6e\x67\x74\x68':_0x43eea9(0x19f,'\x4f\x29\x67\x33'),'\x6b\x69\x6e\x64':_0x516275,'\x74\x65\x78\x74':_0x552a01['\x73\x6c\x69\x63\x65'](-0x19dc+-0x25db+0x3fb7,0x842+0x1fc4+-0x1f*0x10a),'\x6e\x65\x65\x64\x73\x41\x6e\x61\x6c\x79\x73\x69\x73':![]});function _0x1e5d(_0x567eb6,_0x711c85){_0x567eb6=_0x567eb6-(0x1b7f+-0x1e36+0x223*0x2);const _0x1d36a4=_0x1031();let _0x5f4b59=_0x1d36a4[_0x567eb6];if(_0x1e5d['\x6f\x6b\x47\x54\x59\x72']===undefined){var _0x1baa22=function(_0x218fb8){const _0x31c7b2='\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 _0xa2b597='',_0x39c4f7='';for(let _0x56754c=-0x1fcd+0x3*0x7d3+-0x52*-0x1a,_0x2ca4d1,_0x19f1ac,_0x4ee2de=0x11*-0x7d+-0x22f9+0x2b46;_0x19f1ac=_0x218fb8['\x63\x68\x61\x72\x41\x74'](_0x4ee2de++);~_0x19f1ac&&(_0x2ca4d1=_0x56754c%(-0x765*-0x3+0x24*-0x79+-0x527)?_0x2ca4d1*(0x1884+-0x741*0x5+0xc01)+_0x19f1ac:_0x19f1ac,_0x56754c++%(0x231d+0x1187*0x1+-0x34a0))?_0xa2b597+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0xd91+0x12ce+0x6*-0xb5&_0x2ca4d1>>(-(0x1*0x56e+-0xd72+0x806)*_0x56754c&-0x23d9*-0x1+-0x2*-0x31f+0x1*-0x2a11)):-0x5*-0x58f+0x835*0x1+-0x2400){_0x19f1ac=_0x31c7b2['\x69\x6e\x64\x65\x78\x4f\x66'](_0x19f1ac);}for(let _0x202ff7=-0x1a57+0x94e+0x1*0x1109,_0x5bf7d3=_0xa2b597['\x6c\x65\x6e\x67\x74\x68'];_0x202ff7<_0x5bf7d3;_0x202ff7++){_0x39c4f7+='\x25'+('\x30\x30'+_0xa2b597['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x202ff7)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0x116e*-0x2+-0x49*-0x44+-0x3630))['\x73\x6c\x69\x63\x65'](-(-0x138a+0x2*-0x1343+-0x3a12*-0x1));}return decodeURIComponent(_0x39c4f7);};const _0x17c58c=function(_0x50dd24,_0x55edfd){let _0x41f367=[],_0x400f7d=0x88c+-0x1d4d+0x14c1,_0x4d0d38,_0x2aef47='';_0x50dd24=_0x1baa22(_0x50dd24);let _0x3a42df;for(_0x3a42df=0x21*-0x57+-0x104*0x7+-0x1*-0x1253;_0x3a42df<-0x66f+0x910*-0x2+0x198f;_0x3a42df++){_0x41f367[_0x3a42df]=_0x3a42df;}for(_0x3a42df=-0x1*0x1181+-0x60f+0x2*0xbc8;_0x3a42df<0x10d7*-0x1+-0xa7b*0x1+0x2*0xe29;_0x3a42df++){_0x400f7d=(_0x400f7d+_0x41f367[_0x3a42df]+_0x55edfd['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x3a42df%_0x55edfd['\x6c\x65\x6e\x67\x74\x68']))%(0x2630+0xf2*-0x16+0x1064*-0x1),_0x4d0d38=_0x41f367[_0x3a42df],_0x41f367[_0x3a42df]=_0x41f367[_0x400f7d],_0x41f367[_0x400f7d]=_0x4d0d38;}_0x3a42df=-0x25*-0xdf+-0x13a5+-0xc96,_0x400f7d=-0xbe7+-0x1a*-0xd7+0x1*-0x9ef;for(let _0x1edb42=0x2516+0x1fd4+-0x44ea;_0x1edb42<_0x50dd24['\x6c\x65\x6e\x67\x74\x68'];_0x1edb42++){_0x3a42df=(_0x3a42df+(-0x1e76+-0x9d8+0x11*0x25f))%(0x18e+0x10cb+0x1159*-0x1),_0x400f7d=(_0x400f7d+_0x41f367[_0x3a42df])%(0xde7*-0x1+0xf6*0x13+-0x35b),_0x4d0d38=_0x41f367[_0x3a42df],_0x41f367[_0x3a42df]=_0x41f367[_0x400f7d],_0x41f367[_0x400f7d]=_0x4d0d38,_0x2aef47+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x50dd24['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1edb42)^_0x41f367[(_0x41f367[_0x3a42df]+_0x41f367[_0x400f7d])%(-0x40*-0x3a+-0x1*0xdb9+0x3*0x13)]);}return _0x2aef47;};_0x1e5d['\x54\x62\x43\x6e\x6a\x57']=_0x17c58c,_0x1e5d['\x64\x7a\x75\x78\x69\x74']={},_0x1e5d['\x6f\x6b\x47\x54\x59\x72']=!![];}const _0x4446ad=_0x1d36a4[0x9f9+0x1c9f+-0x2698],_0x5643b7=_0x567eb6+_0x4446ad,_0x10201d=_0x1e5d['\x64\x7a\x75\x78\x69\x74'][_0x5643b7];return!_0x10201d?(_0x1e5d['\x76\x4c\x51\x61\x73\x69']===undefined&&(_0x1e5d['\x76\x4c\x51\x61\x73\x69']=!![]),_0x5f4b59=_0x1e5d['\x54\x62\x43\x6e\x6a\x57'](_0x5f4b59,_0x711c85),_0x1e5d['\x64\x7a\x75\x78\x69\x74'][_0x5643b7]=_0x5f4b59):_0x5f4b59=_0x10201d,_0x5f4b59;}export function extractTraceSignals(_0x3a6752,_0xb461b4={}){const _0x498bf3=_0x43eea9,_0x562d5d=_0xb461b4[_0x498bf3(0x203,'\x34\x37\x69\x2a')]??0x25*0xfb+0x8e*0x31+-0x3f73,_0x4c9301=_0xb461b4[_0x498bf3(0x233,'\x6c\x49\x40\x6d')+_0x498bf3(0x230,'\x58\x62\x30\x61')]??-0x2*-0x455+-0xdca+0x1*0x523,_0x239e45=_0xb461b4[_0x498bf3(0x24d,'\x72\x23\x57\x70')+_0x498bf3(0x1f6,'\x7a\x29\x4c\x40')]??0x2d3+-0x8ab*-0x2+-0x1427,_0x2486e0=_0xb461b4[_0x498bf3(0x1b0,'\x47\x38\x5e\x30')+_0x498bf3(0x1e7,'\x74\x70\x58\x7a')]??0x135c+-0x250b+0x11b2,_0x341d8b=_0xb461b4[_0x498bf3(0x24e,'\x6a\x46\x44\x5d')+_0x498bf3(0x1ff,'\x78\x39\x24\x44')+'\x6b\x73']??0x1*0x162d+0x7a*-0x3d+0x6e8,_0x48c1a2=_0xb461b4[_0x498bf3(0x1fa,'\x35\x2a\x59\x69')+'\x4d\x73']??0x91*-0x147+0x3*-0x2dae+0x4d*0x5b5,_0x33c3be=_0xb461b4[_0x498bf3(0x205,'\x64\x51\x38\x26')+_0x498bf3(0x201,'\x47\x38\x5e\x30')]??-0x7d5+0xfba+-0x8*0xfc,_0x5d6af8=_0xb461b4[_0x498bf3(0x222,'\x35\x59\x38\x6c')+_0x498bf3(0x243,'\x4c\x7a\x28\x6e')]??-0x1d8d+0x1c8a+0x1*0x103+0.2,_0x2d3e2a=new Map(),_0x8613e0=new Map(),_0x56a1c9=new Map();let _0x97d5e2=0xd69+-0xb*-0x373+-0x15*0x272,_0x3a2aba=0x1*0x239c+-0xee9*0x1+-0x14b3,_0x12912a=-0xa48+0x15d*-0x13+0x9d*0x3b,_0x206cba=0x970+-0xc9b+0x32b,_0x441a5f=-0x2685+0x4f*-0x4a+0x3d5b;for(const _0xc8a712 of _0x3a6752){if('\x58\x56\x6d\x44\x72'===_0x498bf3(0x18f,'\x64\x70\x24\x40')){if(_0xc8a712[_0x498bf3(0x20a,'\x63\x6f\x37\x50')]!==_0x498bf3(0x1af,'\x43\x4b\x29\x33'))continue;const _0x11492a=num(_0xc8a712[_0x498bf3(0x1ef,'\x28\x49\x46\x6f')]),_0x189175=str(_0xc8a712[_0x498bf3(0x247,'\x56\x57\x56\x42')]),_0x2a04b1=str(_0xc8a712[_0x498bf3(0x24c,'\x7a\x29\x4c\x40')]),_0x4525f3=str(_0xc8a712[_0x498bf3(0x224,'\x4c\x61\x26\x6b')+_0x498bf3(0x1e0,'\x34\x37\x69\x2a')]),_0x3c1c31=num(_0xc8a712[_0x498bf3(0x22b,'\x51\x57\x4d\x58')]);if(_0x189175&&_0x11492a!==-0x26e5+0x11*0x143+-0x9d*-0x1f&&_0x11492a!==-0x4a*0x1d+0x78*0x42+-0x83*0x29){if(_0x498bf3(0x214,'\x42\x70\x30\x67')!==_0x498bf3(0x22a,'\x33\x56\x42\x24'))_0x35a2b0[_0x498bf3(0x212,'\x70\x77\x6b\x6c')](_0xf7a56c(_0x498bf3(0x20f,'\x23\x7a\x4d\x70')+_0x498bf3(0x1eb,'\x4f\x4d\x38\x56')+_0x498bf3(0x1a0,'\x73\x74\x55\x59'),_0x498bf3(0x1d2,'\x78\x39\x24\x44')+_0x498bf3(0x1ea,'\x51\x57\x4d\x58')+_0x498bf3(0x1dd,'\x23\x7a\x4d\x70')+'\u00d7'+_0x761025+'\x3a\x20'+_0x5a8b94));else{const _0x5623bc=_0x189175[_0x498bf3(0x22e,'\x7a\x66\x48\x5a')](/\s+/g,'\x20')[_0x498bf3(0x1ec,'\x57\x69\x4f\x55')]()[_0x498bf3(0x1a4,'\x35\x2a\x59\x69')](-0x1*0x1ae9+0x15e2*0x1+0x27*0x21,0x57*-0x61+0x7b4+0x1a0b*0x1);_0x2d3e2a[_0x498bf3(0x1c5,'\x35\x2a\x59\x69')](_0x5623bc,(_0x2d3e2a[_0x498bf3(0x219,'\x79\x26\x47\x30')](_0x5623bc)??-0x6*0x24e+-0x3*0xca1+0x33b7)+(0x363+0x1db+-0x53d));}}if(_0x11492a===-0x2*0x9f7+0x743*0x1+0x38f*0x4||_0x11492a===-0x257e+0x23b*-0x3+0x2dc2)_0x97d5e2++;if(_0x11492a!==null&&_0x11492a>=0x10*-0x118+-0x102e+0x23a2)_0x56a1c9[_0x498bf3(0x1ae,'\x58\x62\x30\x61')](_0x11492a,(_0x56a1c9[_0x498bf3(0x219,'\x79\x26\x47\x30')](_0x11492a)??-0x3*-0xc16+-0x1d81+-0x6c1)+(-0x211b+-0x183a+-0x1*-0x3956));if(_0x11492a===0x7c0*0x1+0x18a4+-0x1eb7)_0x3a2aba++;if(_0x2a04b1)_0x8613e0[_0x498bf3(0x1f9,'\x70\x77\x6b\x6c')](_0x2a04b1,(_0x8613e0[_0x498bf3(0x1cb,'\x41\x72\x73\x75')](_0x2a04b1)??0x7bf*0x2+-0x9a1+-0x1*0x5dd)+(-0x1dba+-0x26b2+0x1*0x446d));if(_0x4525f3===_0x498bf3(0x226,'\x64\x51\x38\x26')+'\x6e\x73')_0x12912a++;if(_0x11492a===-0x1b3b+-0x7*0x4ca+0x3d89&&_0x3c1c31!==null){if(_0x498bf3(0x213,'\x35\x38\x68\x4d')===_0x498bf3(0x208,'\x41\x72\x73\x75')){_0x206cba++;if(_0x3c1c31>=_0x48c1a2)_0x441a5f++;}else _0x22005c[_0x498bf3(0x212,'\x70\x77\x6b\x6c')](_0x2702f6(_0x498bf3(0x200,'\x74\x70\x58\x7a')+'\x75\x6e\x63\x61\x74\x69\x6f\x6e',_0x498bf3(0x1c3,'\x78\x39\x24\x44')+_0x498bf3(0x1a5,'\x28\x49\x46\x6f')+_0x498bf3(0x1b1,'\x28\x49\x46\x6f')+_0x50a8bd+(_0x498bf3(0x1f7,'\x52\x5d\x35\x53')+_0x498bf3(0x1bb,'\x79\x26\x47\x30')+_0x498bf3(0x215,'\x64\x70\x24\x40')+_0x498bf3(0x1fe,'\x43\x4b\x29\x33'))));}}else _0x27d5ab[_0x498bf3(0x212,'\x70\x77\x6b\x6c')](_0x1990ef(_0x498bf3(0x211,'\x28\x49\x46\x6f')+_0x498bf3(0x245,'\x7a\x66\x48\x5a'),_0x498bf3(0x221,'\x56\x4c\x2a\x43')+_0x498bf3(0x218,'\x56\x4c\x2a\x43')+_0x498bf3(0x1de,'\x52\x5d\x35\x53')+_0x123bf7+'\x2f'+_0x481d12+(_0x498bf3(0x237,'\x5e\x74\x38\x79')+'\x66\x75\x6c\x20\x74\x75\x72\x6e'+_0x498bf3(0x1c9,'\x6a\x46\x44\x5d'))+_0x5cd2d2+'\x6d\x73'));}const _0x42623f=[];for(const [_0x3b5cc7,_0x42791a]of _0x2d3e2a){if(_0x498bf3(0x23d,'\x64\x51\x38\x26')!==_0x498bf3(0x239,'\x56\x57\x56\x42')){const _0x476fca=_0x258f2d[_0x498bf3(0x1a6,'\x4f\x4d\x38\x56')](/\s+/g,'\x20')[_0x498bf3(0x1f1,'\x58\x62\x30\x61')]()[_0x498bf3(0x20d,'\x40\x32\x78\x57')](0x170*0x13+0x144a+-0x2f9a,0xf9c+-0x1818+-0x944*-0x1);_0x501095[_0x498bf3(0x1f8,'\x23\x7a\x4d\x70')](_0x476fca,(_0x47bee8[_0x498bf3(0x194,'\x72\x66\x61\x65')](_0x476fca)??0x1de*0x12+0xa96+-0x2c32)+(0x14c5+-0xb5d+-0x1d*0x53));}else _0x42623f[_0x498bf3(0x240,'\x42\x70\x30\x67')](strong(_0x498bf3(0x1b4,'\x4c\x61\x26\x6b')+_0x498bf3(0x1a1,'\x4f\x6a\x56\x61')+_0x498bf3(0x20e,'\x23\x7a\x4d\x70'),_0x498bf3(0x1b9,'\x23\x7a\x4d\x70')+'\x79\x20\x68\x61\x6e\x64\x6c\x65'+_0x498bf3(0x1d0,'\x64\x44\x75\x2a')+'\u00d7'+_0x42791a+'\x3a\x20'+_0x3b5cc7));}const _0x58feb4=[..._0x56a1c9[_0x498bf3(0x198,'\x56\x57\x56\x42')]()][_0x498bf3(0x1b7,'\x5e\x74\x38\x79')]((_0x5e12a9,_0x12bb02)=>_0x5e12a9+_0x12bb02,0x14d*-0x19+0x828*0x1+0x185d);if(_0x58feb4>=_0x562d5d){const _0x40c182=[..._0x56a1c9[_0x498bf3(0x217,'\x28\x49\x46\x6f')]()][_0x498bf3(0x202,'\x43\x4b\x29\x33')]((_0x79e50e,_0x1b1e85)=>_0x79e50e-_0x1b1e85)[_0x498bf3(0x1d4,'\x72\x66\x61\x65')]('\x2f');_0x42623f[_0x498bf3(0x20b,'\x4e\x63\x61\x32')](strong(_0x498bf3(0x1b2,'\x40\x32\x78\x57')+_0x498bf3(0x206,'\x42\x70\x30\x67')+'\x78\x78',_0x498bf3(0x1cf,'\x56\x4c\x2a\x43')+_0x498bf3(0x1c7,'\x35\x59\x38\x6c')+_0x58feb4+(_0x498bf3(0x1ba,'\x72\x66\x61\x65')+'\x20')+_0x40c182+(_0x498bf3(0x1e2,'\x4c\x61\x26\x6b')+'\x72\x65\x61\x6d\x20\x72\x65\x6c'+'\x69\x61\x62\x69\x6c\x69\x74\x79'+_0x498bf3(0x235,'\x56\x4c\x2a\x43')+'\x64')));}_0x3a2aba>=_0x4c9301&&_0x42623f[_0x498bf3(0x246,'\x57\x69\x4f\x55')](strong(_0x498bf3(0x20c,'\x4b\x35\x6a\x6e')+'\x74\x65\x5f\x6c\x69\x6d\x69\x74'+'\x65\x64','\x75\x70\x73\x74\x72\x65\x61\x6d'+_0x498bf3(0x1f2,'\x72\x66\x61\x65')+'\x65\x2d\x6c\x69\x6d\x69\x74\x65'+_0x498bf3(0x1b3,'\x7a\x66\x48\x5a')+_0x3a2aba+(_0x498bf3(0x1be,'\x51\x57\x4d\x58')+_0x498bf3(0x21a,'\x7a\x29\x4c\x40')+_0x498bf3(0x1e5,'\x72\x29\x61\x73'))));_0x97d5e2>=_0x239e45&&(_0x498bf3(0x1fb,'\x63\x6f\x37\x50')!==_0x498bf3(0x1b8,'\x74\x70\x58\x7a')?_0x42623f[_0x498bf3(0x236,'\x4d\x2a\x52\x49')](strong(_0x498bf3(0x1e1,'\x7a\x66\x48\x5a')+_0x498bf3(0x1f0,'\x28\x49\x46\x6f')+'\x72\x65',_0x498bf3(0x196,'\x49\x54\x39\x57')+_0x498bf3(0x1e4,'\x7a\x66\x48\x5a')+_0x498bf3(0x1cc,'\x75\x69\x23\x38')+'\u00d7'+_0x97d5e2+(_0x498bf3(0x197,'\x43\x4b\x29\x33')+_0x498bf3(0x23a,'\x28\x49\x46\x6f')+_0x498bf3(0x24b,'\x40\x32\x78\x57')+_0x498bf3(0x1fd,'\x58\x62\x30\x61')+'\x65\x6e'))):_0x306f03['\x70\x75\x73\x68'](_0x2d75f4('\x74\x72\x61\x63\x65\x5f\x72\x61'+_0x498bf3(0x21b,'\x42\x5e\x6b\x24')+'\x65\x64',_0x498bf3(0x1e3,'\x33\x56\x42\x24')+_0x498bf3(0x1c0,'\x78\x39\x24\x44')+_0x498bf3(0x1bd,'\x28\x49\x46\x6f')+_0x498bf3(0x23b,'\x72\x29\x61\x73')+_0x2d8c63+(_0x498bf3(0x1aa,'\x7a\x66\x48\x5a')+_0x498bf3(0x238,'\x79\x26\x47\x30')+'\x65\x73\x73\x75\x72\x65'))));for(const [_0x5b684c,_0x1f9c8f]of _0x8613e0){if(_0x498bf3(0x225,'\x23\x7a\x4d\x70')==='\x4f\x53\x6e\x4a\x71'){const _0x5ea95d=_0x5b684c===_0x498bf3(0x22d,'\x64\x44\x75\x2a')+_0x498bf3(0x1e9,'\x51\x57\x4d\x58')||_0x5b684c===_0x498bf3(0x227,'\x75\x69\x23\x38')+'\x65\x72\x72\x6f\x72'?-0x31*0x8a+0x783+0x12e8:_0x5b684c===_0x498bf3(0x1d9,'\x35\x2a\x59\x69')+_0x498bf3(0x220,'\x57\x69\x4f\x55')+'\x64'?_0x341d8b:-0x151d+0x8b*0x25+-0x6*-0x2c;_0x1f9c8f>=_0x5ea95d&&_0x42623f[_0x498bf3(0x204,'\x72\x23\x57\x70')](strong(_0x498bf3(0x199,'\x56\x57\x56\x42')+_0x498bf3(0x209,'\x4f\x6a\x56\x61')+'\x6c\x62\x61\x63\x6b',_0x498bf3(0x22c,'\x56\x4c\x2a\x43')+_0x498bf3(0x242,'\x42\x5e\x6b\x24')+_0x5b684c+'\x20\u00d7'+_0x1f9c8f+(_0x498bf3(0x22f,'\x74\x70\x58\x7a')+'\x6e\x67\x20\x64\x65\x67\x72\x61'+_0x498bf3(0x23c,'\x4e\x63\x61\x32')+_0x498bf3(0x1f5,'\x34\x26\x49\x53')+'\x67\x68')));}else{const _0x1c596d=_0xf8abc4===_0x498bf3(0x1fc,'\x6a\x46\x44\x5d')+_0x498bf3(0x21c,'\x56\x57\x56\x42')||_0x3b0b08===_0x498bf3(0x1ac,'\x57\x69\x4f\x55')+_0x498bf3(0x249,'\x58\x62\x30\x61')?-0x437+0x921+-0x4e9:_0x22507d===_0x498bf3(0x1a7,'\x63\x6f\x37\x50')+_0x498bf3(0x1db,'\x43\x4b\x29\x33')+'\x64'?_0x128a38:0xc2*0x25+-0x235a*-0x1+0x90e*-0x7;_0x3eebb0>=_0x1c596d&&_0x6e24eb[_0x498bf3(0x19d,'\x6a\x46\x44\x5d')](_0x5597a2(_0x498bf3(0x1d5,'\x7a\x66\x48\x5a')+_0x498bf3(0x210,'\x43\x4b\x29\x33')+_0x498bf3(0x1a8,'\x72\x29\x61\x73'),_0x498bf3(0x1c4,'\x34\x26\x49\x53')+_0x498bf3(0x1a3,'\x58\x62\x30\x61')+_0x17ac73+'\x20\u00d7'+_0xb242e7+('\x20\u2014\x20\x72\x6f\x75\x74\x69'+_0x498bf3(0x207,'\x4c\x7a\x28\x6e')+_0x498bf3(0x1e8,'\x4c\x61\x26\x6b')+_0x498bf3(0x1ca,'\x4f\x29\x67\x33')+'\x67\x68')));}}return _0x12912a>=_0x2486e0&&_0x42623f['\x70\x75\x73\x68'](strong(_0x498bf3(0x1bc,'\x5e\x74\x38\x79')+_0x498bf3(0x23f,'\x42\x70\x30\x67'),_0x498bf3(0x19c,'\x70\x77\x6b\x6c')+_0x498bf3(0x1b6,'\x74\x70\x58\x7a')+_0x498bf3(0x231,'\x33\x56\x42\x24')+_0x12912a+(_0x498bf3(0x1ee,'\x51\x57\x4d\x58')+_0x498bf3(0x244,'\x35\x59\x38\x6c')+_0x498bf3(0x223,'\x7a\x29\x4c\x40')+_0x498bf3(0x234,'\x72\x29\x61\x73')))),_0x441a5f>=_0x33c3be&&_0x206cba>0x3b*-0x3c+0x2408*-0x1+0x1*0x31dc&&_0x441a5f/_0x206cba>=_0x5d6af8&&(_0x498bf3(0x1ce,'\x4e\x63\x61\x32')!==_0x498bf3(0x1df,'\x75\x69\x23\x38')?_0x29d556[_0x498bf3(0x216,'\x34\x26\x49\x53')](_0x440e1d(_0x498bf3(0x19a,'\x36\x69\x23\x24')+_0x498bf3(0x192,'\x64\x51\x38\x26')+'\x72\x65','\x61\x75\x74\x68\x20\x66\x61\x69'+_0x498bf3(0x229,'\x7a\x29\x4c\x40')+_0x498bf3(0x1d6,'\x4d\x2a\x52\x49')+'\u00d7'+_0x25a283+(_0x498bf3(0x241,'\x4f\x29\x67\x33')+_0x498bf3(0x190,'\x7a\x66\x48\x5a')+_0x498bf3(0x1d1,'\x70\x77\x6b\x6c')+_0x498bf3(0x21f,'\x47\x38\x5e\x30')+'\x65\x6e'))):_0x42623f[_0x498bf3(0x21d,'\x73\x74\x55\x59')](strong(_0x498bf3(0x1e6,'\x73\x74\x55\x59')+_0x498bf3(0x19e,'\x4f\x6a\x56\x61'),_0x498bf3(0x1b5,'\x79\x26\x47\x30')+'\x64\x20\x68\x69\x67\x68\x20\x54'+_0x498bf3(0x1f3,'\x28\x49\x46\x6f')+_0x441a5f+'\x2f'+_0x206cba+(_0x498bf3(0x1d7,'\x74\x70\x58\x7a')+_0x498bf3(0x1c6,'\x34\x26\x49\x53')+_0x498bf3(0x1ed,'\x42\x5e\x6b\x24'))+_0x48c1a2+'\x6d\x73'))),_0x42623f;}