@evomap/evolver-core 2.0.0 → 2.0.2

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,167 +1 @@
1
- import { createHash } from 'node:crypto';
2
- export const ANTI_DISTILL_MIN_FAILURES = 2;
3
- export const ANTI_DISTILL_TRIGGER_OVERLAP_MIN = 0.6;
4
- function asStrings(value) {
5
- if (!Array.isArray(value))
6
- return [];
7
- return [...new Set(value.map(String).map((item) => item.trim()).filter(Boolean))];
8
- }
9
- function stringField(record, key) {
10
- const value = record[key];
11
- return typeof value === 'string' && value.trim() ? value : undefined;
12
- }
13
- function isFailedCapsule(record) {
14
- if (record.type !== 'Capsule')
15
- return false;
16
- const outcome = record['outcome'];
17
- return Boolean(outcome && typeof outcome === 'object' && !Array.isArray(outcome)
18
- && outcome.status === 'failed');
19
- }
20
- function capsuleId(record, index) {
21
- return stringField(record, 'asset_id') ?? stringField(record, 'id') ?? `capsule:${index}`;
22
- }
23
- function capsuleDigest(record, index) {
24
- if (!isFailedCapsule(record))
25
- return null;
26
- const trigger = asStrings(record['trigger']);
27
- if (trigger.length === 0)
28
- return null;
29
- return {
30
- capsuleId: capsuleId(record, index),
31
- trigger,
32
- ...(stringField(record, 'gene') ? { gene: stringField(record, 'gene') } : {}),
33
- ...(stringField(record, 'summary') ? { summary: stringField(record, 'summary') } : {}),
34
- ...(record['outcome'] !== undefined ? { outcome: record['outcome'] } : {}),
35
- ...(record['proof_of_work'] !== undefined ? { proofOfWork: record['proof_of_work'] } : {}),
36
- };
37
- }
38
- function stableCapsuleView(capsule) {
39
- return {
40
- capsuleId: capsule.capsuleId,
41
- trigger: [...capsule.trigger].sort(),
42
- ...(capsule.gene ? { gene: capsule.gene } : {}),
43
- ...(capsule.summary ? { summary: capsule.summary } : {}),
44
- ...(capsule.outcome !== undefined ? { outcome: capsule.outcome } : {}),
45
- ...(capsule.proofOfWork !== undefined ? { proofOfWork: capsule.proofOfWork } : {}),
46
- };
47
- }
48
- function canonicalHashValue(value) {
49
- if (value === null || typeof value !== 'object')
50
- return value;
51
- if (Array.isArray(value))
52
- return value.map(canonicalHashValue);
53
- return Object.fromEntries(Object.entries(value)
54
- .sort(([left], [right]) => left.localeCompare(right))
55
- .map(([key, item]) => [key, canonicalHashValue(item)]));
56
- }
57
- function hashStable(value) {
58
- return createHash('sha256').update(JSON.stringify(canonicalHashValue(value))).digest('hex');
59
- }
60
- export function triggerOverlapScore(a, b) {
61
- const left = new Set(a.map(String).filter(Boolean));
62
- const right = new Set(b.map(String).filter(Boolean));
63
- if (left.size === 0 || right.size === 0)
64
- return 0;
65
- let hit = 0;
66
- for (const token of left)
67
- if (right.has(token))
68
- hit += 1;
69
- return hit / new Set([...left, ...right]).size;
70
- }
71
- function compatibleWithCluster(capsule, cluster, overlapMin) {
72
- let total = 0;
73
- for (const existing of cluster.capsules) {
74
- const overlap = triggerOverlapScore(capsule.trigger, existing.trigger);
75
- if (overlap < overlapMin)
76
- return { ok: false, avg: overlap };
77
- total += overlap;
78
- }
79
- return { ok: true, avg: cluster.capsules.length > 0 ? total / cluster.capsules.length : 1 };
80
- }
81
- function recurringTrigger(capsules, minFailures) {
82
- const counts = new Map();
83
- for (const capsule of capsules) {
84
- for (const token of capsule.trigger)
85
- counts.set(token, (counts.get(token) ?? 0) + 1);
86
- }
87
- return [...counts.entries()]
88
- .filter(([, count]) => count >= minFailures)
89
- .map(([token]) => token)
90
- .sort();
91
- }
92
- function sharedTrigger(capsules) {
93
- return recurringTrigger(capsules, capsules.length);
94
- }
95
- function clusterId(capsules) {
96
- return `anti_cluster_${hashStable(capsules.map(stableCapsuleView)).slice(0, 16)}`;
97
- }
98
- function toFailureCluster(cluster, minFailures) {
99
- const capsules = [...cluster.capsules].sort((a, b) => a.capsuleId.localeCompare(b.capsuleId));
100
- return {
101
- clusterId: clusterId(capsules),
102
- trigger: recurringTrigger(capsules, minFailures),
103
- sharedTrigger: sharedTrigger(capsules),
104
- capsuleIds: capsules.map((capsule) => capsule.capsuleId),
105
- genes: [...new Set(capsules.map((capsule) => capsule.gene).filter((gene) => Boolean(gene)))].sort(),
106
- failureCapsules: capsules,
107
- };
108
- }
109
- function positiveInteger(value, fallback) {
110
- return Number.isSafeInteger(value) && value !== undefined && value > 0 ? value : fallback;
111
- }
112
- function nonNegativeInteger(value, fallback) {
113
- return Number.isSafeInteger(value) && value !== undefined && value >= 0 ? value : fallback;
114
- }
115
- function overlapThreshold(value) {
116
- return typeof value === 'number' && Number.isFinite(value) && value >= 0 && value <= 1
117
- ? value
118
- : ANTI_DISTILL_TRIGGER_OVERLAP_MIN;
119
- }
120
- export function collectAntiDistillInput(capsules, opts = {}) {
121
- const minFailures = positiveInteger(opts.minFailures, ANTI_DISTILL_MIN_FAILURES);
122
- const overlapMin = overlapThreshold(opts.triggerOverlapMin);
123
- const failedCapsuleCount = capsules.filter(isFailedCapsule).length;
124
- const seen = new Set();
125
- const failed = capsules
126
- .map((record, index) => capsuleDigest(record, index))
127
- .filter((capsule) => capsule !== null)
128
- .filter((capsule) => {
129
- if (seen.has(capsule.capsuleId))
130
- return false;
131
- seen.add(capsule.capsuleId);
132
- return true;
133
- })
134
- .sort((a, b) => a.capsuleId.localeCompare(b.capsuleId));
135
- const clusters = [];
136
- for (const capsule of failed) {
137
- let bestIndex = -1;
138
- let bestScore = -1;
139
- for (let i = 0; i < clusters.length; i += 1) {
140
- const score = compatibleWithCluster(capsule, clusters[i], overlapMin);
141
- if (score.ok && score.avg > bestScore) {
142
- bestIndex = i;
143
- bestScore = score.avg;
144
- }
145
- }
146
- if (bestIndex >= 0)
147
- clusters[bestIndex].capsules.push(capsule);
148
- else
149
- clusters.push({ capsules: [capsule] });
150
- }
151
- const failureClusters = clusters
152
- .filter((cluster) => cluster.capsules.length >= minFailures)
153
- .map((cluster) => toFailureCluster(cluster, minFailures))
154
- .sort((a, b) => b.failureCapsules.length - a.failureCapsules.length
155
- || a.trigger.join('\0').localeCompare(b.trigger.join('\0'))
156
- || a.capsuleIds.join('\0').localeCompare(b.capsuleIds.join('\0')))
157
- .slice(0, opts.maxClusters !== undefined ? nonNegativeInteger(opts.maxClusters, clusters.length) : clusters.length);
158
- return {
159
- dataHash: hashStable(failureClusters.map((cluster) => ({
160
- trigger: cluster.trigger,
161
- capsuleIds: cluster.capsuleIds,
162
- }))),
163
- failedCapsuleCount,
164
- clusterableFailureCount: failed.length,
165
- failureClusters,
166
- };
167
- }
1
+ (function(_0x39afcb,_0x146294){const _0x11f211=_0x2271,_0x2d695f=_0x39afcb();while(!![]){try{const _0x31a2ba=parseInt(_0x11f211(0x10e,'\x4f\x35\x38\x75'))/(-0x225a+0x685*0x2+0x11*0x141)+-parseInt(_0x11f211(0xc8,'\x67\x43\x32\x68'))/(0x1f7e+-0x17cf+-0x7ad)*(-parseInt(_0x11f211(0xad,'\x71\x35\x52\x47'))/(0x25*0x61+0x3b*0x53+-0x2123))+-parseInt(_0x11f211(0xd7,'\x31\x37\x35\x4a'))/(0xf59*-0x1+0x3e*0x97+0x1535*-0x1)*(parseInt(_0x11f211(0xf9,'\x78\x5a\x5b\x23'))/(0x1*0x25f+-0xb5+-0x1a5*0x1))+-parseInt(_0x11f211(0x11a,'\x33\x41\x38\x41'))/(0x1*0x76+-0x1fe+0x18e)+parseInt(_0x11f211(0xe7,'\x33\x63\x59\x73'))/(0x1123+-0x1ebb*0x1+0xd9f)*(-parseInt(_0x11f211(0xea,'\x58\x5b\x69\x67'))/(-0x905*-0x3+-0x1567*0x1+-0x5a0))+parseInt(_0x11f211(0xbe,'\x26\x36\x36\x74'))/(0x19ae+-0x20a*0x10+-0x1*-0x6fb)+-parseInt(_0x11f211(0x106,'\x26\x6a\x61\x75'))/(0x81d+-0x2ba+-0x559)*(parseInt(_0x11f211(0xdd,'\x78\x67\x49\x6c'))/(0x3bc+0x80c*-0x4+-0x5b3*-0x5));if(_0x31a2ba===_0x146294)break;else _0x2d695f['push'](_0x2d695f['shift']());}catch(_0x2e6793){_0x2d695f['push'](_0x2d695f['shift']());}}}(_0x3cc1,-0x16d06*0x7+0x17268+0x1*0xefebb));import{createHash}from'\x6e\x6f\x64\x65\x3a\x63\x72\x79\x70\x74\x6f';export const ANTI_DISTILL_MIN_FAILURES=0x1c*0x141+0x356*-0x1+-0x1fc4;export const ANTI_DISTILL_TRIGGER_OVERLAP_MIN=-0x21af*0x1+0x466+0x1d49+0.6;function _0x2271(_0x15a826,_0x5da733){_0x15a826=_0x15a826-(-0xb*-0x11c+0x6*0x4fe+-0x2985);const _0x342441=_0x3cc1();let _0x511b79=_0x342441[_0x15a826];if(_0x2271['\x6f\x51\x72\x4a\x6a\x4c']===undefined){var _0x1a9253=function(_0x1bcfa5){const _0x5aa91f='\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 _0x323e5a='',_0x34a3f5='';for(let _0x5542c0=0x2f*-0x4f+0x16d2+-0x851,_0x421247,_0x21daf9,_0x343616=0x5*0x475+0x1637+-0x2c80;_0x21daf9=_0x1bcfa5['\x63\x68\x61\x72\x41\x74'](_0x343616++);~_0x21daf9&&(_0x421247=_0x5542c0%(-0x700+0xdbe*-0x1+-0x14c2*-0x1)?_0x421247*(-0x81e+-0x21a9+0x1*0x2a07)+_0x21daf9:_0x21daf9,_0x5542c0++%(0x67*-0x1f+-0x1*-0x213a+-0x14bd))?_0x323e5a+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x129e+0x1e5*-0xa+0x1*0x268f&_0x421247>>(-(-0x2*-0x1055+-0x1786+-0x922)*_0x5542c0&-0x6f*-0x1e+-0x702+-0x132*0x5)):0x1c4f+-0x21*-0x11b+-0x2065*0x2){_0x21daf9=_0x5aa91f['\x69\x6e\x64\x65\x78\x4f\x66'](_0x21daf9);}for(let _0x2acda6=-0x1c*-0x1+-0x4ea+0x4ce,_0x4f8760=_0x323e5a['\x6c\x65\x6e\x67\x74\x68'];_0x2acda6<_0x4f8760;_0x2acda6++){_0x34a3f5+='\x25'+('\x30\x30'+_0x323e5a['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x2acda6)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x210b+-0x26e*-0xf+-0x9eb*0x7))['\x73\x6c\x69\x63\x65'](-(0x5*-0x35b+0x147*-0xd+0x2164));}return decodeURIComponent(_0x34a3f5);};const _0xa1a082=function(_0x44d323,_0x33c69e){let _0x45073d=[],_0x2ebf5f=-0x95c+0x26aa+-0xf2*0x1f,_0x2cc5cc,_0x440c14='';_0x44d323=_0x1a9253(_0x44d323);let _0x13129e;for(_0x13129e=0x22*-0xd+-0x7de+-0x8*-0x133;_0x13129e<-0x7b4+0x7*-0x152+-0x1*-0x11f2;_0x13129e++){_0x45073d[_0x13129e]=_0x13129e;}for(_0x13129e=-0x277*-0x7+-0x2179+0x1038*0x1;_0x13129e<-0x1ca0+0x238c+0x1*-0x5ec;_0x13129e++){_0x2ebf5f=(_0x2ebf5f+_0x45073d[_0x13129e]+_0x33c69e['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x13129e%_0x33c69e['\x6c\x65\x6e\x67\x74\x68']))%(0x1a97+0xcfb+0x1349*-0x2),_0x2cc5cc=_0x45073d[_0x13129e],_0x45073d[_0x13129e]=_0x45073d[_0x2ebf5f],_0x45073d[_0x2ebf5f]=_0x2cc5cc;}_0x13129e=0x247f*-0x1+-0x1607+0x552*0xb,_0x2ebf5f=-0x15de+-0x1962+0xfc0*0x3;for(let _0x25d729=0x3ac+-0x22c5+0x1f19;_0x25d729<_0x44d323['\x6c\x65\x6e\x67\x74\x68'];_0x25d729++){_0x13129e=(_0x13129e+(0x1330+0x11a7*0x1+-0x24d6))%(0x1f*0x130+0x14e5*-0x1+-0xeeb),_0x2ebf5f=(_0x2ebf5f+_0x45073d[_0x13129e])%(0x175+-0x4*0x919+0x23ef*0x1),_0x2cc5cc=_0x45073d[_0x13129e],_0x45073d[_0x13129e]=_0x45073d[_0x2ebf5f],_0x45073d[_0x2ebf5f]=_0x2cc5cc,_0x440c14+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x44d323['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x25d729)^_0x45073d[(_0x45073d[_0x13129e]+_0x45073d[_0x2ebf5f])%(0xa31*0x2+-0x4a9+-0xeb9*0x1)]);}return _0x440c14;};_0x2271['\x74\x7a\x4b\x47\x44\x44']=_0xa1a082,_0x2271['\x55\x73\x59\x6a\x57\x4b']={},_0x2271['\x6f\x51\x72\x4a\x6a\x4c']=!![];}const _0x5d8715=_0x342441[0x15b+0xaf3+0x627*-0x2],_0x44a7b4=_0x15a826+_0x5d8715,_0x5c2386=_0x2271['\x55\x73\x59\x6a\x57\x4b'][_0x44a7b4];return!_0x5c2386?(_0x2271['\x76\x42\x41\x63\x57\x4e']===undefined&&(_0x2271['\x76\x42\x41\x63\x57\x4e']=!![]),_0x511b79=_0x2271['\x74\x7a\x4b\x47\x44\x44'](_0x511b79,_0x5da733),_0x2271['\x55\x73\x59\x6a\x57\x4b'][_0x44a7b4]=_0x511b79):_0x511b79=_0x5c2386,_0x511b79;}function asStrings(_0x346592){const _0x23ad40=_0x2271;if(!Array[_0x23ad40(0x12e,'\x4f\x35\x38\x75')](_0x346592))return[];return[...new Set(_0x346592[_0x23ad40(0x100,'\x78\x67\x49\x6c')](String)[_0x23ad40(0xdc,'\x37\x4d\x67\x76')](_0x1cb899=>_0x1cb899[_0x23ad40(0x109,'\x57\x6b\x70\x33')]())['\x66\x69\x6c\x74\x65\x72'](Boolean))];}function stringField(_0x339622,_0x1ca1af){const _0x313f54=_0x2271,_0x4c8f3a=_0x339622[_0x1ca1af];return typeof _0x4c8f3a==='\x73\x74\x72\x69\x6e\x67'&&_0x4c8f3a[_0x313f54(0xc2,'\x50\x29\x53\x55')]()?_0x4c8f3a:undefined;}function isFailedCapsule(_0x1504fa){const _0x49a369=_0x2271;if(_0x1504fa[_0x49a369(0xd3,'\x67\x4f\x64\x39')]!=='\x43\x61\x70\x73\x75\x6c\x65')return![];const _0x31d10a=_0x1504fa[_0x49a369(0xca,'\x5b\x57\x51\x61')];return Boolean(_0x31d10a&&typeof _0x31d10a===_0x49a369(0x139,'\x30\x66\x75\x31')&&!Array[_0x49a369(0x115,'\x6a\x35\x75\x63')](_0x31d10a)&&_0x31d10a[_0x49a369(0xe3,'\x26\x6a\x61\x75')]===_0x49a369(0xa4,'\x33\x63\x59\x73'));}function capsuleId(_0xf2ce77,_0xce9e2f){const _0x144ceb=_0x2271;return stringField(_0xf2ce77,_0x144ceb(0xab,'\x67\x4f\x64\x39'))??stringField(_0xf2ce77,'\x69\x64')??'\x63\x61\x70\x73\x75\x6c\x65\x3a'+_0xce9e2f;}function capsuleDigest(_0x597446,_0x554a1a){const _0x3dfc40=_0x2271;if(!isFailedCapsule(_0x597446))return null;const _0x2d3ebd=asStrings(_0x597446[_0x3dfc40(0xa7,'\x38\x32\x72\x47')]);if(_0x2d3ebd[_0x3dfc40(0x101,'\x5b\x57\x51\x61')]===-0x1*-0x2114+0x7a1+-0x28b5)return null;return{'\x63\x61\x70\x73\x75\x6c\x65\x49\x64':capsuleId(_0x597446,_0x554a1a),'\x74\x72\x69\x67\x67\x65\x72':_0x2d3ebd,...stringField(_0x597446,_0x3dfc40(0xb3,'\x48\x64\x6a\x25'))?{'\x67\x65\x6e\x65':stringField(_0x597446,_0x3dfc40(0x13a,'\x49\x33\x37\x48'))}:{},...stringField(_0x597446,_0x3dfc40(0xa6,'\x2a\x39\x40\x56'))?{'\x73\x75\x6d\x6d\x61\x72\x79':stringField(_0x597446,_0x3dfc40(0xfc,'\x48\x64\x6a\x25'))}:{},..._0x597446[_0x3dfc40(0x107,'\x76\x54\x48\x51')]!==undefined?{'\x6f\x75\x74\x63\x6f\x6d\x65':_0x597446[_0x3dfc40(0x130,'\x4f\x35\x38\x75')]}:{},..._0x597446[_0x3dfc40(0xec,'\x59\x5b\x7a\x51')+_0x3dfc40(0xa8,'\x63\x42\x50\x46')]!==undefined?{'\x70\x72\x6f\x6f\x66\x4f\x66\x57\x6f\x72\x6b':_0x597446['\x70\x72\x6f\x6f\x66\x5f\x6f\x66'+_0x3dfc40(0xff,'\x5b\x6b\x45\x34')]}:{}};}function stableCapsuleView(_0x219f4b){const _0x51931d=_0x2271;return{'\x63\x61\x70\x73\x75\x6c\x65\x49\x64':_0x219f4b[_0x51931d(0xb2,'\x78\x5a\x5b\x23')+'\x64'],'\x74\x72\x69\x67\x67\x65\x72':[..._0x219f4b['\x74\x72\x69\x67\x67\x65\x72']][_0x51931d(0xcd,'\x62\x5b\x29\x71')](),..._0x219f4b[_0x51931d(0x105,'\x29\x67\x5d\x67')]?{'\x67\x65\x6e\x65':_0x219f4b['\x67\x65\x6e\x65']}:{},..._0x219f4b[_0x51931d(0x104,'\x6d\x4d\x4f\x6e')]?{'\x73\x75\x6d\x6d\x61\x72\x79':_0x219f4b['\x73\x75\x6d\x6d\x61\x72\x79']}:{},..._0x219f4b[_0x51931d(0x132,'\x28\x4d\x23\x30')]!==undefined?{'\x6f\x75\x74\x63\x6f\x6d\x65':_0x219f4b[_0x51931d(0x129,'\x31\x33\x55\x39')]}:{},..._0x219f4b[_0x51931d(0xf3,'\x42\x69\x51\x61')+_0x51931d(0x123,'\x46\x5a\x37\x67')]!==undefined?{'\x70\x72\x6f\x6f\x66\x4f\x66\x57\x6f\x72\x6b':_0x219f4b[_0x51931d(0xf4,'\x31\x33\x55\x39')+_0x51931d(0xa3,'\x58\x5b\x69\x67')]}:{}};}function canonicalHashValue(_0x50b736){const _0x1fa8b7=_0x2271;if(_0x50b736===null||typeof _0x50b736!==_0x1fa8b7(0x11c,'\x5b\x6b\x45\x34'))return _0x50b736;if(Array[_0x1fa8b7(0x12d,'\x67\x4f\x64\x39')](_0x50b736))return _0x50b736[_0x1fa8b7(0xf6,'\x56\x70\x4a\x76')](canonicalHashValue);return Object[_0x1fa8b7(0xc0,'\x56\x42\x62\x35')+_0x1fa8b7(0xda,'\x51\x79\x41\x54')](Object[_0x1fa8b7(0x134,'\x26\x6a\x61\x75')](_0x50b736)['\x73\x6f\x72\x74'](([_0x3a2acf],[_0x2ef428])=>_0x3a2acf['\x6c\x6f\x63\x61\x6c\x65\x43\x6f'+_0x1fa8b7(0xe9,'\x6a\x35\x75\x63')](_0x2ef428))['\x6d\x61\x70'](([_0x17cc1a,_0x2982a9])=>[_0x17cc1a,canonicalHashValue(_0x2982a9)]));}function hashStable(_0x500870){const _0x1475b4=_0x2271;return createHash(_0x1475b4(0xb6,'\x56\x70\x4a\x76'))[_0x1475b4(0x131,'\x42\x69\x51\x61')](JSON[_0x1475b4(0xdf,'\x48\x64\x6a\x25')+'\x79'](canonicalHashValue(_0x500870)))[_0x1475b4(0xbc,'\x51\x79\x41\x54')](_0x1475b4(0x126,'\x33\x41\x38\x41'));}export function triggerOverlapScore(_0x4b740e,_0x3acdb3){const _0x3d6ea6=_0x2271,_0x5d4580=new Set(_0x4b740e[_0x3d6ea6(0xe4,'\x6d\x4d\x4f\x6e')](String)['\x66\x69\x6c\x74\x65\x72'](Boolean)),_0x5ad41e=new Set(_0x3acdb3[_0x3d6ea6(0x100,'\x78\x67\x49\x6c')](String)[_0x3d6ea6(0xd2,'\x49\x33\x37\x48')](Boolean));if(_0x5d4580[_0x3d6ea6(0xbd,'\x30\x66\x75\x31')]===-0x1*-0x2f6+-0x27*-0xdd+-0x1*0x24a1||_0x5ad41e[_0x3d6ea6(0xbb,'\x49\x33\x37\x48')]===0x1*0x1c99+0x2678+-0x4311)return-0x1b*0xaa+0x1a61+-0x2d1*0x3;let _0x402da8=0x52d+0x1149+-0x1676;for(const _0x6c2cff of _0x5d4580)if(_0x5ad41e[_0x3d6ea6(0xeb,'\x71\x35\x52\x47')](_0x6c2cff))_0x402da8+=-0x12b1+-0x146*-0x15+-0x80c*0x1;return _0x402da8/new Set([..._0x5d4580,..._0x5ad41e])[_0x3d6ea6(0x10d,'\x6d\x4d\x4f\x6e')];}function compatibleWithCluster(_0x5b4286,_0x430c91,_0x3b0db4){const _0x1e234b=_0x2271;let _0x4921ca=0x225e+0x1*0x1219+-0x3477;for(const _0x10f773 of _0x430c91[_0x1e234b(0x133,'\x67\x4f\x64\x39')]){const _0x5de82d=triggerOverlapScore(_0x5b4286[_0x1e234b(0xd4,'\x6a\x21\x45\x78')],_0x10f773[_0x1e234b(0x122,'\x62\x5b\x29\x71')]);if(_0x5de82d<_0x3b0db4)return{'\x6f\x6b':![],'\x61\x76\x67':_0x5de82d};_0x4921ca+=_0x5de82d;}return{'\x6f\x6b':!![],'\x61\x76\x67':_0x430c91[_0x1e234b(0x10f,'\x62\x5b\x29\x71')][_0x1e234b(0xd5,'\x46\x5a\x37\x67')]>0x1*0x1a48+0x19d1+-0x3419?_0x4921ca/_0x430c91['\x63\x61\x70\x73\x75\x6c\x65\x73'][_0x1e234b(0xb7,'\x63\x42\x50\x46')]:0x898*-0x1+-0x1*0x1183+-0x45a*-0x6};}function recurringTrigger(_0x4d4c21,_0x302e30){const _0x3c6805=_0x2271,_0x1bcc89=new Map();for(const _0x475a68 of _0x4d4c21){for(const _0x223100 of _0x475a68[_0x3c6805(0x118,'\x78\x67\x49\x6c')])_0x1bcc89[_0x3c6805(0x12f,'\x71\x35\x52\x47')](_0x223100,(_0x1bcc89[_0x3c6805(0xb0,'\x49\x33\x37\x48')](_0x223100)??0x6*0x24b+-0x1*-0x144d+-0x1*0x220f)+(-0x6*-0x295+-0x91*0x43+0x1676));}return[..._0x1bcc89['\x65\x6e\x74\x72\x69\x65\x73']()][_0x3c6805(0x102,'\x38\x32\x72\x47')](([,_0x29755b])=>_0x29755b>=_0x302e30)[_0x3c6805(0x121,'\x76\x54\x48\x51')](([_0x15c525])=>_0x15c525)[_0x3c6805(0xc4,'\x33\x63\x59\x73')]();}function sharedTrigger(_0x46dcee){const _0x5d3ef9=_0x2271;return recurringTrigger(_0x46dcee,_0x46dcee[_0x5d3ef9(0xc6,'\x6d\x4d\x4f\x6e')]);}function clusterId(_0x1f6ffe){const _0x57e7b5=_0x2271;return _0x57e7b5(0xb9,'\x26\x6a\x61\x75')+'\x73\x74\x65\x72\x5f'+hashStable(_0x1f6ffe[_0x57e7b5(0xcc,'\x71\x35\x52\x47')](stableCapsuleView))[_0x57e7b5(0xb4,'\x50\x29\x53\x55')](-0xac3+-0x7f*-0x17+-0xa6,-0x1*-0xb58+0x434+0xf7c*-0x1);}function toFailureCluster(_0x37be52,_0x1d02fd){const _0x4e6b68=_0x2271,_0x6b3672=[..._0x37be52[_0x4e6b68(0xa5,'\x58\x5b\x69\x67')]][_0x4e6b68(0xee,'\x6f\x5b\x44\x24')]((_0x2cb895,_0x3d60ab)=>_0x2cb895[_0x4e6b68(0xfe,'\x76\x54\x48\x51')+'\x64'][_0x4e6b68(0xd6,'\x50\x29\x53\x55')+_0x4e6b68(0xe5,'\x78\x67\x49\x6c')](_0x3d60ab[_0x4e6b68(0xbf,'\x48\x64\x6a\x25')+'\x64']));return{'\x63\x6c\x75\x73\x74\x65\x72\x49\x64':clusterId(_0x6b3672),'\x74\x72\x69\x67\x67\x65\x72':recurringTrigger(_0x6b3672,_0x1d02fd),'\x73\x68\x61\x72\x65\x64\x54\x72\x69\x67\x67\x65\x72':sharedTrigger(_0x6b3672),'\x63\x61\x70\x73\x75\x6c\x65\x49\x64\x73':_0x6b3672['\x6d\x61\x70'](_0x22f337=>_0x22f337['\x63\x61\x70\x73\x75\x6c\x65\x49'+'\x64']),'\x67\x65\x6e\x65\x73':[...new Set(_0x6b3672[_0x4e6b68(0x12c,'\x29\x67\x5d\x67')](_0x57af6d=>_0x57af6d['\x67\x65\x6e\x65'])[_0x4e6b68(0xc3,'\x69\x50\x69\x6e')](_0x5dfec7=>Boolean(_0x5dfec7)))]['\x73\x6f\x72\x74'](),'\x66\x61\x69\x6c\x75\x72\x65\x43\x61\x70\x73\x75\x6c\x65\x73':_0x6b3672};}function positiveInteger(_0x469031,_0x5a3b24){const _0x1459be=_0x2271;return Number[_0x1459be(0x13b,'\x56\x42\x62\x35')+_0x1459be(0xd8,'\x63\x42\x50\x46')](_0x469031)&&_0x469031!==undefined&&_0x469031>-0x284+-0x105c+0x12e0?_0x469031:_0x5a3b24;}function nonNegativeInteger(_0x81b7c2,_0x1e666f){const _0x337996=_0x2271;return Number[_0x337996(0x11e,'\x26\x36\x36\x74')+_0x337996(0xe8,'\x31\x37\x35\x4a')](_0x81b7c2)&&_0x81b7c2!==undefined&&_0x81b7c2>=0x1d12+-0x1f61+0x24f?_0x81b7c2:_0x1e666f;}function overlapThreshold(_0x1eb448){const _0x5c4b5e=_0x2271;return typeof _0x1eb448===_0x5c4b5e(0x11d,'\x56\x42\x62\x35')&&Number[_0x5c4b5e(0x11b,'\x2a\x39\x40\x56')](_0x1eb448)&&_0x1eb448>=0x1*0x1bda+-0x1051*-0x1+-0x2c2b&&_0x1eb448<=-0x6f4+0x64d*0x3+0xb*-0x116?_0x1eb448:ANTI_DISTILL_TRIGGER_OVERLAP_MIN;}export function collectAntiDistillInput(_0x1547dd,_0x1d278a={}){const _0x433791=_0x2271,_0x276c5a=positiveInteger(_0x1d278a[_0x433791(0x113,'\x6d\x4d\x4f\x6e')+_0x433791(0x108,'\x51\x79\x41\x54')],ANTI_DISTILL_MIN_FAILURES),_0x1f4aee=overlapThreshold(_0x1d278a[_0x433791(0xe6,'\x33\x63\x59\x73')+_0x433791(0xd9,'\x54\x50\x4b\x26')+'\x6e']),_0x2b4403=_0x1547dd[_0x433791(0xb1,'\x76\x54\x48\x51')](isFailedCapsule)[_0x433791(0x111,'\x54\x50\x4b\x26')],_0x1c9aec=new Set(),_0x4cb442=_0x1547dd[_0x433791(0x128,'\x59\x5b\x7a\x51')]((_0x332631,_0x450eda)=>capsuleDigest(_0x332631,_0x450eda))[_0x433791(0x10c,'\x46\x5a\x37\x67')](_0x935e89=>_0x935e89!==null)[_0x433791(0x137,'\x6a\x35\x75\x63')](_0x28ff8f=>{const _0x71fd57=_0x433791;if(_0x1c9aec[_0x71fd57(0x110,'\x78\x5a\x5b\x23')](_0x28ff8f[_0x71fd57(0xcf,'\x78\x67\x49\x6c')+'\x64']))return![];return _0x1c9aec['\x61\x64\x64'](_0x28ff8f[_0x71fd57(0xa9,'\x28\x4d\x23\x30')+'\x64']),!![];})[_0x433791(0xe1,'\x26\x36\x36\x74')]((_0x2cff5f,_0x2741a9)=>_0x2cff5f[_0x433791(0x120,'\x31\x33\x55\x39')+'\x64'][_0x433791(0xaf,'\x23\x4a\x72\x48')+_0x433791(0xf7,'\x5b\x57\x51\x61')](_0x2741a9['\x63\x61\x70\x73\x75\x6c\x65\x49'+'\x64'])),_0x21729f=[];for(const _0x515e17 of _0x4cb442){if(_0x433791(0x138,'\x6a\x6b\x42\x59')===_0x433791(0x136,'\x6d\x4d\x4f\x6e')){let _0x4009bd=-(0x1a9c+-0x24*-0x5f+-0x27f7),_0x2518eb=-(-0xdff*-0x1+0x7*-0x3aa+0xba8);for(let _0x59daca=0x1a7+-0xb22+0x97b;_0x59daca<_0x21729f[_0x433791(0xfb,'\x6d\x5d\x58\x6f')];_0x59daca+=-0xdf9+-0x1494+0x1147*0x2){const _0x47b79d=compatibleWithCluster(_0x515e17,_0x21729f[_0x59daca],_0x1f4aee);_0x47b79d['\x6f\x6b']&&_0x47b79d[_0x433791(0x124,'\x68\x29\x68\x4f')]>_0x2518eb&&(_0x4009bd=_0x59daca,_0x2518eb=_0x47b79d[_0x433791(0x11f,'\x4f\x35\x38\x75')]);}if(_0x4009bd>=0x2451+0x138c+-0x37dd)_0x21729f[_0x4009bd][_0x433791(0xd1,'\x57\x6b\x70\x33')][_0x433791(0xc5,'\x69\x50\x69\x6e')](_0x515e17);else _0x21729f[_0x433791(0xf8,'\x67\x4f\x64\x39')]({'\x63\x61\x70\x73\x75\x6c\x65\x73':[_0x515e17]});}else{const _0x1de892=_0x25c7b9[_0x69b2d5];return typeof _0x1de892===_0x433791(0xf2,'\x2a\x39\x40\x56')&&_0x1de892[_0x433791(0x109,'\x57\x6b\x70\x33')]()?_0x1de892:_0x2f80ee;}}const _0x2638c0=_0x21729f[_0x433791(0xce,'\x78\x5a\x5b\x23')](_0x4a73bd=>_0x4a73bd[_0x433791(0xba,'\x6a\x35\x75\x63')][_0x433791(0xd0,'\x33\x41\x38\x41')]>=_0x276c5a)[_0x433791(0x117,'\x6d\x5d\x58\x6f')](_0x39d485=>toFailureCluster(_0x39d485,_0x276c5a))[_0x433791(0xee,'\x6f\x5b\x44\x24')]((_0x1a94a7,_0x51ee5b)=>_0x51ee5b['\x66\x61\x69\x6c\x75\x72\x65\x43'+_0x433791(0x112,'\x67\x43\x32\x68')]['\x6c\x65\x6e\x67\x74\x68']-_0x1a94a7['\x66\x61\x69\x6c\x75\x72\x65\x43'+_0x433791(0x112,'\x67\x43\x32\x68')][_0x433791(0x10a,'\x56\x70\x4a\x76')]||_0x1a94a7[_0x433791(0xfa,'\x7a\x54\x4a\x42')][_0x433791(0xdb,'\x5b\x6b\x45\x34')]('\x00')[_0x433791(0xe0,'\x6d\x4d\x4f\x6e')+_0x433791(0xb8,'\x6f\x5b\x44\x24')](_0x51ee5b['\x74\x72\x69\x67\x67\x65\x72']['\x6a\x6f\x69\x6e']('\x00'))||_0x1a94a7[_0x433791(0xe2,'\x49\x33\x37\x48')+'\x64\x73'][_0x433791(0x119,'\x6d\x4d\x4f\x6e')]('\x00')['\x6c\x6f\x63\x61\x6c\x65\x43\x6f'+_0x433791(0xf5,'\x63\x42\x50\x46')](_0x51ee5b[_0x433791(0xde,'\x4a\x4e\x45\x67')+'\x64\x73'][_0x433791(0xed,'\x71\x35\x52\x47')]('\x00')))[_0x433791(0x125,'\x58\x5b\x69\x67')](0x1276+-0x17aa+0x534,_0x1d278a[_0x433791(0xcb,'\x68\x29\x68\x4f')+_0x433791(0xaa,'\x76\x54\x48\x51')]!==undefined?nonNegativeInteger(_0x1d278a[_0x433791(0x10b,'\x5e\x64\x44\x34')+_0x433791(0xfd,'\x42\x69\x51\x61')],_0x21729f[_0x433791(0x103,'\x48\x64\x6a\x25')]):_0x21729f[_0x433791(0xef,'\x39\x4d\x4e\x6f')]);return{'\x64\x61\x74\x61\x48\x61\x73\x68':hashStable(_0x2638c0[_0x433791(0xae,'\x67\x4f\x64\x39')](_0x2dd65e=>({'\x74\x72\x69\x67\x67\x65\x72':_0x2dd65e[_0x433791(0xc1,'\x23\x4a\x72\x48')],'\x63\x61\x70\x73\x75\x6c\x65\x49\x64\x73':_0x2dd65e[_0x433791(0xf1,'\x6d\x4d\x4f\x6e')+'\x64\x73']}))),'\x66\x61\x69\x6c\x65\x64\x43\x61\x70\x73\x75\x6c\x65\x43\x6f\x75\x6e\x74':_0x2b4403,'\x63\x6c\x75\x73\x74\x65\x72\x61\x62\x6c\x65\x46\x61\x69\x6c\x75\x72\x65\x43\x6f\x75\x6e\x74':_0x4cb442['\x6c\x65\x6e\x67\x74\x68'],'\x66\x61\x69\x6c\x75\x72\x65\x43\x6c\x75\x73\x74\x65\x72\x73':_0x2638c0};}function _0x3cc1(){const _0x137f67=['\x6b\x6d\x6f\x51\x57\x35\x78\x64\x4b\x61','\x41\x73\x46\x63\x56\x73\x6d','\x6c\x30\x2f\x64\x51\x43\x6b\x38\x70\x62\x61','\x42\x43\x6b\x78\x57\x35\x43\x6e\x57\x36\x46\x64\x53\x57\x66\x41\x57\x50\x46\x63\x4a\x43\x6f\x6d\x63\x61','\x57\x51\x44\x43\x57\x52\x39\x46\x72\x62\x7a\x79\x57\x34\x79','\x57\x37\x52\x63\x50\x53\x6b\x2b\x57\x36\x53\x5a\x7a\x61','\x42\x43\x6b\x78\x70\x78\x43\x61\x62\x38\x6f\x76\x57\x51\x65','\x72\x76\x74\x64\x52\x53\x6b\x6a\x57\x50\x74\x63\x53\x6d\x6b\x4d\x57\x36\x4f','\x57\x51\x71\x73\x6f\x33\x56\x64\x55\x71','\x57\x37\x31\x4d\x57\x34\x75','\x57\x51\x70\x64\x4d\x4d\x4c\x55\x6f\x47','\x57\x37\x4c\x31\x57\x51\x7a\x70','\x44\x38\x6b\x2b\x57\x36\x46\x64\x51\x38\x6b\x31\x61\x61\x6c\x63\x53\x38\x6f\x52\x57\x51\x76\x41\x57\x4f\x65','\x66\x6d\x6b\x63\x57\x4f\x61\x56\x67\x6d\x6f\x5a\x57\x36\x34','\x76\x53\x6b\x37\x57\x37\x4e\x63\x48\x72\x44\x42','\x57\x36\x71\x36\x74\x64\x6a\x72\x57\x36\x56\x63\x49\x57','\x45\x6d\x6b\x78\x69\x71','\x76\x72\x39\x52\x57\x52\x5a\x64\x4e\x38\x6b\x4d\x57\x51\x42\x63\x4a\x61','\x6b\x65\x58\x4f\x6e\x43\x6f\x47','\x64\x4b\x72\x2b','\x57\x51\x6c\x64\x4a\x32\x7a\x37\x6b\x38\x6b\x2f','\x57\x50\x2f\x64\x48\x53\x6b\x30\x57\x51\x37\x64\x4e\x38\x6f\x4d','\x57\x37\x53\x51\x74\x5a\x48\x65\x57\x37\x65','\x57\x52\x44\x69\x57\x51\x6a\x62\x75\x61\x48\x65','\x57\x37\x50\x48\x57\x51\x78\x63\x4d\x71','\x66\x6d\x6b\x44\x57\x51\x74\x64\x53\x33\x4f\x66\x57\x35\x70\x63\x49\x4c\x4c\x46\x6a\x71','\x77\x71\x54\x56\x57\x51\x5a\x64\x48\x43\x6b\x4e\x57\x51\x79','\x57\x37\x72\x34\x61\x71','\x57\x36\x43\x56\x74\x6d\x6f\x6d','\x57\x37\x58\x49\x57\x35\x56\x63\x48\x38\x6f\x76\x57\x37\x69','\x57\x50\x65\x41\x57\x36\x4e\x63\x4b\x43\x6b\x63\x57\x52\x4c\x49\x57\x37\x57','\x7a\x4a\x4a\x64\x4c\x4c\x66\x7a\x73\x57','\x57\x52\x44\x75\x57\x52\x76\x6a','\x57\x36\x58\x71\x57\x51\x43\x4b\x70\x6d\x6b\x79\x45\x4b\x6d\x50\x73\x49\x6c\x64\x4c\x57','\x57\x4f\x33\x64\x47\x6d\x6b\x6b\x57\x51\x56\x64\x50\x4c\x70\x63\x51\x78\x30','\x6c\x6d\x6f\x54\x57\x51\x75','\x6e\x68\x33\x64\x51\x6d\x6f\x67\x73\x49\x65','\x71\x38\x6b\x38\x61\x73\x4e\x63\x55\x38\x6b\x71\x57\x52\x47','\x57\x51\x4c\x75\x57\x51\x66\x51\x75\x62\x6e\x72\x57\x37\x4f','\x64\x38\x6f\x51\x43\x53\x6b\x5a\x6d\x6d\x6b\x65\x6d\x61\x78\x64\x52\x43\x6f\x6b\x68\x6d\x6f\x41\x67\x57','\x75\x33\x61\x52\x57\x4f\x50\x44\x6c\x33\x4b','\x41\x43\x6b\x72\x57\x35\x38\x6d\x57\x36\x5a\x64\x53\x72\x4c\x4f\x57\x50\x4e\x63\x55\x38\x6f\x58\x63\x57','\x76\x38\x6b\x2f\x57\x36\x43','\x66\x31\x44\x4e\x57\x50\x35\x6f\x74\x33\x79','\x57\x51\x35\x73\x57\x51\x7a\x63','\x57\x34\x6c\x63\x50\x43\x6b\x64\x57\x35\x52\x63\x53\x53\x6b\x30\x57\x4f\x56\x64\x52\x58\x62\x53\x57\x50\x47\x33','\x57\x36\x64\x63\x4f\x43\x6b\x6b\x57\x36\x53\x5a\x41\x4c\x58\x7a','\x67\x66\x4c\x54\x69\x53\x6f\x4f\x57\x36\x53','\x57\x4f\x34\x58\x71\x6d\x6b\x36\x66\x72\x53','\x69\x53\x6b\x4b\x57\x36\x58\x7a\x57\x51\x74\x63\x55\x30\x71\x4b','\x57\x52\x34\x73\x57\x37\x47','\x76\x4b\x46\x64\x53\x43\x6b\x76\x57\x4f\x46\x63\x4b\x38\x6b\x4c\x57\x37\x71','\x77\x58\x39\x52','\x57\x50\x52\x64\x4b\x38\x6b\x74\x57\x52\x2f\x64\x54\x66\x52\x63\x56\x47','\x42\x59\x70\x64\x4b\x71','\x69\x38\x6b\x5a\x57\x35\x4b','\x61\x62\x4a\x64\x4b\x38\x6b\x53\x72\x57','\x57\x50\x33\x64\x53\x53\x6f\x6c','\x57\x35\x66\x57\x45\x53\x6b\x59\x65\x72\x56\x63\x4b\x61\x61','\x57\x36\x30\x6b\x57\x37\x43','\x77\x4c\x70\x64\x54\x43\x6b\x66\x57\x50\x33\x63\x4b\x53\x6b\x4c','\x57\x35\x5a\x63\x4d\x43\x6f\x6d\x57\x4f\x33\x64\x56\x68\x68\x63\x4d\x68\x31\x4f','\x64\x5a\x6a\x79\x57\x34\x53\x46\x46\x5a\x42\x63\x4c\x38\x6f\x58\x57\x50\x68\x64\x53\x75\x74\x64\x4c\x47','\x57\x37\x62\x4c\x57\x52\x53','\x57\x36\x62\x5a\x57\x50\x72\x76\x41\x38\x6b\x7a\x68\x57','\x57\x52\x79\x78\x57\x35\x35\x4b\x46\x6d\x6f\x6e\x76\x47','\x6d\x43\x6f\x47\x57\x34\x47','\x57\x52\x61\x72\x57\x36\x54\x31\x79\x43\x6f\x62\x73\x47','\x41\x6d\x6b\x76\x6e\x4e\x4b\x73\x6c\x71','\x57\x51\x61\x30\x57\x36\x78\x63\x47\x6d\x6b\x2b\x73\x77\x53','\x57\x36\x50\x48\x57\x51\x76\x75\x42\x6d\x6b\x75\x61\x38\x6b\x52','\x72\x53\x6f\x61\x57\x36\x70\x63\x55\x63\x6d\x6b\x57\x37\x79','\x57\x37\x6e\x72\x57\x50\x54\x6f\x7a\x58\x6e\x72','\x57\x52\x58\x66\x57\x50\x58\x2b\x76\x47','\x78\x67\x4f\x67\x57\x4f\x58\x6b\x70\x61','\x67\x6d\x6f\x4c\x57\x35\x34\x64\x57\x35\x43','\x57\x37\x56\x63\x50\x38\x6b\x35\x57\x50\x76\x76\x57\x4f\x75','\x57\x4f\x42\x63\x53\x38\x6b\x2f\x43\x71','\x57\x4f\x4b\x33\x46\x53\x6b\x35\x66\x47\x5a\x63\x4c\x5a\x30','\x68\x61\x42\x64\x4b\x71','\x6b\x78\x7a\x70\x77\x6d\x6f\x36\x6b\x61','\x65\x62\x78\x64\x49\x53\x6b\x38\x76\x32\x42\x63\x55\x6d\x6b\x78','\x57\x37\x52\x63\x50\x38\x6b\x48\x57\x36\x38\x38\x43\x76\x65','\x57\x4f\x33\x64\x4e\x43\x6b\x58\x57\x52\x33\x64\x4e\x43\x6f\x58\x6f\x57','\x57\x50\x79\x76\x6e\x78\x56\x64\x54\x57','\x57\x51\x57\x47\x57\x36\x68\x63\x4b\x6d\x6b\x4b\x73\x67\x56\x64\x48\x57','\x75\x57\x58\x4f','\x57\x36\x48\x5a\x57\x51\x7a\x63\x42\x43\x6b\x4e\x64\x38\x6b\x38','\x46\x73\x43\x72\x62\x53\x6b\x4e\x44\x61\x37\x63\x4e\x6d\x6b\x70\x72\x38\x6f\x58\x57\x34\x69','\x43\x6d\x6b\x31\x57\x4f\x56\x63\x4a\x63\x46\x63\x4b\x4d\x66\x79\x6b\x6d\x6b\x38\x76\x38\x6b\x47','\x57\x36\x72\x48\x57\x51\x75','\x63\x53\x6f\x62\x57\x35\x64\x63\x4b\x4b\x6c\x64\x4d\x4a\x4a\x64\x52\x61','\x57\x4f\x42\x63\x53\x38\x6b\x4c','\x75\x62\x44\x33\x57\x52\x56\x64\x4a\x38\x6b\x34','\x6a\x38\x6f\x54\x57\x51\x42\x63\x4f\x43\x6f\x35\x78\x64\x78\x63\x4d\x57','\x57\x37\x61\x51\x74\x5a\x4f','\x64\x4e\x6a\x54\x63\x6d\x6f\x49','\x63\x74\x66\x42\x57\x34\x65\x77\x46\x4c\x6c\x63\x52\x6d\x6f\x56\x57\x50\x68\x64\x54\x33\x79','\x57\x36\x6e\x56\x57\x35\x74\x64\x4b\x53\x6b\x75\x57\x51\x57','\x57\x51\x75\x68\x6e\x67\x37\x64\x51\x6d\x6b\x30','\x44\x5a\x4a\x63\x52\x49\x76\x32','\x71\x53\x6f\x61\x57\x36\x70\x63\x4f\x58\x75\x6d\x57\x36\x4e\x63\x4d\x61','\x77\x77\x69\x41\x57\x4f\x54\x41\x69\x4d\x78\x63\x56\x47','\x57\x50\x6c\x63\x56\x38\x6b\x52\x43\x71','\x57\x36\x6a\x30\x66\x73\x4a\x63\x51\x64\x34','\x57\x36\x46\x63\x52\x6d\x6b\x50\x57\x50\x75','\x46\x53\x6f\x4d\x57\x4f\x30\x6c\x57\x37\x6c\x64\x52\x5a\x53\x71\x57\x51\x6e\x5a\x6f\x38\x6b\x2b\x6a\x61','\x57\x37\x71\x55\x75\x73\x58\x66\x57\x37\x78\x63\x4c\x38\x6f\x30','\x57\x4f\x79\x32\x71\x53\x6b\x31\x6e\x71\x46\x63\x51\x49\x65','\x65\x53\x6f\x43\x57\x35\x52\x63\x4c\x65\x4e\x64\x4d\x47\x4b','\x63\x77\x58\x54\x62\x47','\x7a\x31\x6c\x64\x53\x58\x62\x2f\x57\x52\x34','\x70\x68\x48\x75\x71\x61','\x43\x75\x37\x64\x52\x61\x57','\x57\x51\x48\x79\x57\x51\x66\x6c\x72\x72\x69','\x63\x6d\x6f\x51\x57\x34\x6c\x63\x48\x4a\x76\x65\x70\x64\x57','\x65\x38\x6f\x34\x6a\x74\x42\x63\x54\x53\x6b\x68\x57\x4f\x75\x52','\x44\x43\x6f\x32\x57\x4f\x31\x46\x68\x53\x6f\x79\x6c\x38\x6b\x62\x45\x74\x6d\x58','\x57\x51\x68\x64\x4e\x33\x58\x2f\x6d\x6d\x6b\x36\x70\x61','\x6c\x38\x6b\x4b\x57\x34\x79\x4c\x71\x53\x6f\x68\x63\x53\x6b\x73','\x6c\x38\x6f\x4b\x57\x34\x57','\x57\x50\x33\x64\x4a\x53\x6b\x69\x57\x51\x57','\x69\x53\x6f\x4c\x57\x52\x52\x63\x50\x53\x6f\x50\x71\x47','\x61\x65\x72\x2b\x57\x4f\x50\x43\x72\x4d\x68\x64\x4e\x71','\x57\x50\x4e\x64\x53\x53\x6f\x44\x57\x4f\x37\x64\x56\x38\x6f\x51','\x57\x37\x61\x38\x76\x43\x6f\x73\x57\x35\x6c\x63\x4e\x66\x62\x53','\x57\x4f\x46\x63\x56\x38\x6b\x39\x79\x6d\x6b\x4d\x74\x61','\x57\x37\x31\x35\x57\x51\x76\x63','\x6b\x53\x6f\x72\x57\x4f\x7a\x79\x57\x52\x6c\x63\x4f\x49\x79','\x42\x64\x74\x64\x4c\x65\x6a\x69\x75\x71','\x65\x78\x66\x4e\x63\x53\x6f\x52\x7a\x64\x31\x38','\x57\x34\x48\x37\x57\x37\x2f\x64\x51\x53\x6b\x71\x57\x4f\x64\x64\x4a\x43\x6b\x34','\x57\x52\x30\x68\x70\x77\x5a\x64\x52\x47','\x6c\x4e\x33\x64\x54\x6d\x6f\x6e\x78\x5a\x4e\x63\x55\x71\x53','\x57\x36\x39\x34\x61\x71','\x68\x76\x72\x55\x6b\x71','\x57\x35\x6a\x6c\x57\x52\x43','\x75\x72\x30\x34\x57\x51\x58\x67\x7a\x66\x64\x64\x50\x38\x6b\x53','\x57\x51\x64\x63\x4f\x4e\x76\x79\x6e\x30\x6c\x64\x50\x4a\x75','\x57\x36\x71\x37\x75\x5a\x7a\x45\x57\x37\x37\x63\x4d\x38\x6f\x42','\x57\x51\x48\x73\x57\x51\x58\x6e\x78\x72\x39\x2b\x57\x36\x61','\x6f\x6d\x6b\x34\x57\x34\x31\x6d','\x57\x4f\x6c\x63\x54\x38\x6b\x48\x7a\x38\x6b\x32\x75\x4a\x39\x35','\x75\x6d\x6f\x41\x57\x37\x42\x63\x56\x4a\x38\x43','\x57\x51\x4c\x43\x57\x52\x38','\x64\x4c\x76\x56\x57\x4f\x54\x6d','\x6f\x32\x76\x70\x75\x38\x6f\x34\x6b\x72\x42\x63\x4f\x71','\x45\x68\x54\x59\x76\x53\x6f\x6a\x6a\x71\x47','\x57\x4f\x34\x51\x57\x34\x33\x64\x51\x38\x6b\x30','\x76\x33\x6d\x6c\x57\x4f\x50\x6b','\x71\x75\x42\x63\x4a\x53\x6f\x38\x66\x4a\x6c\x64\x52\x43\x6b\x74\x46\x47\x4a\x63\x4a\x31\x4f\x53','\x6b\x53\x6f\x4b\x57\x34\x38','\x57\x37\x61\x7a\x57\x36\x4a\x64\x4d\x68\x53\x56\x57\x34\x4f\x39'];_0x3cc1=function(){return _0x137f67;};return _0x3cc1();}
package/dist/algo/bans.js CHANGED
@@ -1,33 +1 @@
1
- // Ban genes that have repeatedly failed on the SAME signals (ported from v1 selector.js
2
- // banGenesFromFailedCapsules). Complements epigenetic suppression (which is per-environment): this is a
3
- // hard, signal-overlap-based exclusion — a gene with >=2 failed capsules whose trigger covers the current
4
- // signals is dropped from the candidate set, so a strategy that keeps failing here is not resurrected.
5
- const BAN_THRESHOLD = 2;
6
- const OVERLAP_MIN = 0.6;
7
- /** Fraction of the current signals covered by a failure's trigger (how much it is "the same problem"). */
8
- function signalCoverage(signals, trigger) {
9
- if (signals.length === 0)
10
- return 0;
11
- const t = new Set(trigger.map((s) => String(s)));
12
- let hit = 0;
13
- for (const s of signals)
14
- if (t.has(s))
15
- hit += 1;
16
- return hit / signals.length;
17
- }
18
- /** Gene ids with >=2 failed capsules whose trigger covers >=60% of the current signals. */
19
- export function bannedGenesFromFailures(failures, signals) {
20
- const counts = new Map();
21
- for (const fc of failures) {
22
- if (!fc.gene)
23
- continue;
24
- if (signalCoverage(signals, fc.trigger ?? []) < OVERLAP_MIN)
25
- continue;
26
- counts.set(fc.gene, (counts.get(fc.gene) ?? 0) + 1);
27
- }
28
- const banned = new Set();
29
- for (const [gene, c] of counts)
30
- if (c >= BAN_THRESHOLD)
31
- banned.add(gene);
32
- return banned;
33
- }
1
+ function _0x48a3(){const _0x29c39b=['\x57\x50\x4c\x66\x57\x37\x68\x64\x47\x47\x75\x31\x57\x50\x58\x34\x41\x67\x61','\x57\x52\x33\x63\x49\x68\x58\x34\x57\x50\x56\x64\x4f\x53\x6f\x30\x57\x4f\x61\x59','\x57\x37\x38\x46\x64\x43\x6b\x4f\x57\x34\x2f\x63\x4e\x6d\x6b\x62\x63\x4d\x65','\x42\x38\x6f\x70\x57\x35\x30\x32\x57\x35\x6c\x63\x4b\x78\x57','\x57\x52\x58\x2b\x57\x36\x4c\x2f\x69\x47\x31\x43\x45\x38\x6b\x6e\x6e\x6d\x6b\x32\x6b\x64\x38','\x57\x50\x50\x66\x57\x37\x70\x64\x47\x67\x6e\x64\x57\x36\x54\x6e\x76\x68\x4c\x62\x57\x36\x79\x64','\x57\x35\x64\x64\x4e\x38\x6f\x66\x57\x50\x62\x4f\x6f\x74\x50\x71\x7a\x43\x6f\x2f\x57\x37\x46\x64\x49\x47\x43','\x71\x47\x78\x64\x55\x48\x50\x32\x64\x67\x53\x2b\x78\x43\x6f\x4f\x6d\x63\x64\x63\x4a\x57','\x65\x30\x50\x6b\x41\x47','\x57\x36\x6a\x71\x69\x38\x6f\x7a','\x44\x38\x6f\x43\x57\x4f\x70\x63\x53\x43\x6b\x79\x73\x43\x6b\x58\x57\x35\x65\x45\x57\x34\x30','\x70\x33\x6c\x63\x4a\x58\x38\x51\x42\x49\x70\x64\x54\x6d\x6f\x4a\x70\x30\x34\x53','\x57\x34\x6c\x64\x52\x6d\x6f\x47','\x67\x66\x46\x63\x52\x65\x30\x30\x76\x71','\x57\x37\x65\x48\x57\x36\x52\x63\x54\x78\x5a\x64\x54\x58\x66\x78\x70\x4b\x62\x48\x45\x71','\x57\x37\x57\x46\x61\x6d\x6f\x35\x57\x51\x52\x64\x52\x38\x6b\x46\x64\x33\x4a\x63\x4c\x64\x4c\x51','\x57\x36\x42\x64\x48\x43\x6f\x52\x57\x34\x74\x63\x50\x72\x58\x65\x63\x43\x6f\x62\x57\x4f\x50\x2b\x66\x47','\x68\x49\x31\x4b','\x57\x51\x4c\x6a\x76\x53\x6b\x4c','\x57\x52\x58\x34\x6f\x38\x6f\x6b\x57\x34\x4a\x64\x51\x57','\x72\x48\x57\x43\x6e\x4e\x69\x41\x46\x32\x50\x59\x57\x35\x50\x77\x66\x61','\x57\x52\x61\x64\x46\x6d\x6b\x69\x6a\x43\x6f\x41\x57\x4f\x64\x63\x51\x53\x6f\x56\x57\x4f\x52\x64\x4c\x6d\x6b\x71','\x6a\x4a\x4a\x63\x49\x38\x6f\x62\x57\x34\x79\x69\x66\x53\x6f\x55\x57\x4f\x69','\x6b\x53\x6b\x6b\x57\x4f\x62\x4a\x57\x4f\x6c\x64\x47\x4a\x7a\x58\x57\x34\x6c\x64\x50\x67\x42\x64\x50\x59\x71','\x57\x52\x75\x79\x57\x51\x53\x2f\x43\x30\x30\x52','\x57\x4f\x2f\x64\x4c\x74\x4a\x63\x53\x43\x6f\x69\x57\x36\x52\x64\x49\x43\x6b\x33\x78\x71\x65\x70\x44\x4a\x4b','\x6b\x33\x33\x63\x54\x71\x64\x64\x56\x43\x6b\x71\x42\x47','\x6f\x4e\x70\x63\x49\x30\x35\x6b\x67\x48\x37\x64\x4e\x6d\x6f\x39'];_0x48a3=function(){return _0x29c39b;};return _0x48a3();}(function(_0x5b3b34,_0x5b1787){const _0x2c64c5=_0x3488,_0x5cc7b9=_0x5b3b34();while(!![]){try{const _0x19be90=-parseInt(_0x2c64c5(0xa1,'\x57\x54\x76\x2a'))/(0x16f3+0x175b+0x2e4d*-0x1)*(parseInt(_0x2c64c5(0x8e,'\x39\x39\x39\x4f'))/(0x29f*-0x2+-0x1c3b+-0xb29*-0x3))+-parseInt(_0x2c64c5(0x8f,'\x66\x74\x77\x6d'))/(0x2507*-0x1+-0x19b*0x2+-0x70*-0x5c)+parseInt(_0x2c64c5(0x9d,'\x75\x5a\x6e\x41'))/(-0x205*0xf+0x12f+0x1d20)+parseInt(_0x2c64c5(0x98,'\x28\x6d\x50\x38'))/(-0x5*-0x4e7+0x1b*-0xa9+-0x6ab)+-parseInt(_0x2c64c5(0xa7,'\x54\x25\x6c\x5e'))/(0x1985+-0x1bef*0x1+-0x8*-0x4e)+-parseInt(_0x2c64c5(0x92,'\x49\x68\x4c\x68'))/(-0xc56*-0x1+0x2625+0x2*-0x193a)*(-parseInt(_0x2c64c5(0x9e,'\x33\x64\x57\x75'))/(-0x7*-0x469+0x24f3+-0x43ca*0x1))+parseInt(_0x2c64c5(0xa2,'\x32\x33\x6a\x6c'))/(-0x269*-0x7+-0x1e*-0x122+-0x32d2)*(parseInt(_0x2c64c5(0xa5,'\x72\x6a\x4c\x63'))/(0xaa7+-0x808*0x3+0xd7b));if(_0x19be90===_0x5b1787)break;else _0x5cc7b9['push'](_0x5cc7b9['shift']());}catch(_0x17b463){_0x5cc7b9['push'](_0x5cc7b9['shift']());}}}(_0x48a3,0x4*0x525f6+0x2*0x75a1+0x210f4*-0x4));const BAN_THRESHOLD=0x13f*0xf+0x1a*0x16b+0x1*-0x378d,OVERLAP_MIN=-0x11b*-0xa+0x1860*0x1+-0x38b*0xa+0.6;function _0x3488(_0x34152d,_0x45cd88){_0x34152d=_0x34152d-(0x1*-0x9b8+-0x1f*-0x93+-0x788);const _0x1019e4=_0x48a3();let _0x27e865=_0x1019e4[_0x34152d];if(_0x3488['\x52\x6b\x62\x77\x65\x44']===undefined){var _0x2bc53c=function(_0x31d66c){const _0x165353='\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 _0xab7ad1='',_0x3121b2='';for(let _0x368ddb=0x5*-0x769+-0x5*-0x79f+0x5a*-0x3,_0xd5d4e1,_0x1b2a14,_0x97edb8=0x2432+0x1dd2+0xa*-0x69a;_0x1b2a14=_0x31d66c['\x63\x68\x61\x72\x41\x74'](_0x97edb8++);~_0x1b2a14&&(_0xd5d4e1=_0x368ddb%(0x1*-0x2020+-0x269e+-0x3*-0x1796)?_0xd5d4e1*(0x13f*0xf+0x1a*0x16b+0x1*-0x374f)+_0x1b2a14:_0x1b2a14,_0x368ddb++%(-0x11b*-0xa+0x1860*0x1+-0x5e7*0x6))?_0xab7ad1+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](0x169c+-0x1ee8+-0xd*-0xb7&_0xd5d4e1>>(-(-0x9c7*-0x3+-0xc7*-0x26+-0x3add)*_0x368ddb&0x3*0x21f+-0x1*-0x23c2+0x1*-0x2a19)):-0x863+-0x56f+0x1d*0x7a){_0x1b2a14=_0x165353['\x69\x6e\x64\x65\x78\x4f\x66'](_0x1b2a14);}for(let _0x4d9b48=0x2498+0x2380+-0x4818,_0x19eece=_0xab7ad1['\x6c\x65\x6e\x67\x74\x68'];_0x4d9b48<_0x19eece;_0x4d9b48++){_0x3121b2+='\x25'+('\x30\x30'+_0xab7ad1['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x4d9b48)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0xbb1+0x249b+0x405*-0xc))['\x73\x6c\x69\x63\x65'](-(0x207d*0x1+-0x164e+0x5*-0x209));}return decodeURIComponent(_0x3121b2);};const _0x9164cc=function(_0x42423e,_0x26e873){let _0x4e5a6a=[],_0x40ff0a=0x1ff6+0xc*-0xba+0xee*-0x19,_0x192292,_0x4ed56a='';_0x42423e=_0x2bc53c(_0x42423e);let _0xd98ca9;for(_0xd98ca9=0x1*-0x68d+-0x32a+0x1*0x9b7;_0xd98ca9<-0x1380+-0xf2c+0x23ac;_0xd98ca9++){_0x4e5a6a[_0xd98ca9]=_0xd98ca9;}for(_0xd98ca9=0x35*0xb5+0x1*-0x183b+-0xd3e;_0xd98ca9<0x2630+0x1*0xf77+0x34a7*-0x1;_0xd98ca9++){_0x40ff0a=(_0x40ff0a+_0x4e5a6a[_0xd98ca9]+_0x26e873['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0xd98ca9%_0x26e873['\x6c\x65\x6e\x67\x74\x68']))%(0x2509+-0x1f*-0x139+-0x49f0),_0x192292=_0x4e5a6a[_0xd98ca9],_0x4e5a6a[_0xd98ca9]=_0x4e5a6a[_0x40ff0a],_0x4e5a6a[_0x40ff0a]=_0x192292;}_0xd98ca9=-0x95f+-0x3f4+-0xd53*-0x1,_0x40ff0a=-0x769*-0x1+0x697+-0x20*0x70;for(let _0x1ec154=0x1c86*-0x1+0x88+-0x1*-0x1bfe;_0x1ec154<_0x42423e['\x6c\x65\x6e\x67\x74\x68'];_0x1ec154++){_0xd98ca9=(_0xd98ca9+(0x1*0x166+0x1*-0x13eb+-0x1*-0x1286))%(-0x9c0+-0xbdd*0x3+0x1*0x2e57),_0x40ff0a=(_0x40ff0a+_0x4e5a6a[_0xd98ca9])%(0x2204+-0x1f88+-0x17c),_0x192292=_0x4e5a6a[_0xd98ca9],_0x4e5a6a[_0xd98ca9]=_0x4e5a6a[_0x40ff0a],_0x4e5a6a[_0x40ff0a]=_0x192292,_0x4ed56a+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x42423e['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1ec154)^_0x4e5a6a[(_0x4e5a6a[_0xd98ca9]+_0x4e5a6a[_0x40ff0a])%(0x314+0x67*-0x8+-0x124*-0x1)]);}return _0x4ed56a;};_0x3488['\x79\x58\x54\x69\x53\x6f']=_0x9164cc,_0x3488['\x56\x69\x62\x64\x77\x41']={},_0x3488['\x52\x6b\x62\x77\x65\x44']=!![];}const _0x5a283b=_0x1019e4[-0x7*0x42a+0x17e4+0x542*0x1],_0x5d613f=_0x34152d+_0x5a283b,_0x5ebd99=_0x3488['\x56\x69\x62\x64\x77\x41'][_0x5d613f];return!_0x5ebd99?(_0x3488['\x4d\x68\x61\x6b\x69\x78']===undefined&&(_0x3488['\x4d\x68\x61\x6b\x69\x78']=!![]),_0x27e865=_0x3488['\x79\x58\x54\x69\x53\x6f'](_0x27e865,_0x45cd88),_0x3488['\x56\x69\x62\x64\x77\x41'][_0x5d613f]=_0x27e865):_0x27e865=_0x5ebd99,_0x27e865;}function signalCoverage(_0x57575a,_0x147688){const _0x454cbf=_0x3488;if(_0x57575a[_0x454cbf(0x97,'\x73\x77\x64\x47')]===0x169c+-0x1ee8+-0x9*-0xec)return-0x9c7*-0x3+-0xc7*-0x26+-0x3adf;const _0x3565c4=new Set(_0x147688['\x6d\x61\x70'](_0x5bd54c=>String(_0x5bd54c)));let _0x5f250a=0x3*0x21f+-0x1*-0x23c2+0x1*-0x2a1f;for(const _0x3cdd02 of _0x57575a)if(_0x3565c4['\x68\x61\x73'](_0x3cdd02))_0x5f250a+=-0x863+-0x56f+0x1*0xdd3;return _0x5f250a/_0x57575a[_0x454cbf(0x91,'\x54\x25\x6c\x5e')];}export function bannedGenesFromFailures(_0x3e635a,_0x56b20d){const _0x50a59e=_0x3488,_0x250b99=new Map();for(const _0x43af97 of _0x3e635a){if(!_0x43af97[_0x50a59e(0xa8,'\x28\x6d\x50\x38')])continue;if(signalCoverage(_0x56b20d,_0x43af97[_0x50a59e(0xa3,'\x31\x68\x5b\x71')]??[])<OVERLAP_MIN)continue;_0x250b99[_0x50a59e(0x95,'\x7a\x5a\x79\x48')](_0x43af97[_0x50a59e(0x8d,'\x78\x25\x67\x4e')],(_0x250b99['\x67\x65\x74'](_0x43af97[_0x50a59e(0x96,'\x32\x33\x6a\x6c')])??0x2498+0x2380+-0x4818)+(0xbb1+0x249b+0x1019*-0x3));}const _0x277241=new Set();for(const [_0x3f44e5,_0x432214]of _0x250b99)if(_0x432214>=BAN_THRESHOLD)_0x277241[_0x50a59e(0x90,'\x4e\x79\x4e\x76')](_0x3f44e5);return _0x277241;}