@evomap/evolver 1.89.12 → 1.89.13

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 (93) hide show
  1. package/CONTRIBUTING.md +19 -0
  2. package/README.md +537 -90
  3. package/assets/cover.png +0 -0
  4. package/package.json +18 -6
  5. package/scripts/a2a_export.js +63 -0
  6. package/scripts/a2a_ingest.js +79 -0
  7. package/scripts/a2a_promote.js +118 -0
  8. package/scripts/analyze_by_skill.js +121 -0
  9. package/scripts/build_binaries.js +479 -0
  10. package/scripts/check-changelog.js +166 -0
  11. package/scripts/extract_log.js +85 -0
  12. package/scripts/generate_history.js +75 -0
  13. package/scripts/gep_append_event.js +96 -0
  14. package/scripts/gep_personality_report.js +234 -0
  15. package/scripts/human_report.js +147 -0
  16. package/scripts/recall-verify-report.js +234 -0
  17. package/scripts/recover_loop.js +61 -0
  18. package/scripts/refresh_stars_badge.js +168 -0
  19. package/scripts/seed-merchants.js +91 -0
  20. package/scripts/suggest_version.js +89 -0
  21. package/scripts/validate-modules.js +38 -0
  22. package/scripts/validate-suite.js +78 -0
  23. package/skills/index.json +14 -0
  24. package/src/evolve/guards.js +1 -721
  25. package/src/evolve/pipeline/collect.js +1 -1283
  26. package/src/evolve/pipeline/dispatch.js +1 -421
  27. package/src/evolve/pipeline/enrich.js +1 -440
  28. package/src/evolve/pipeline/hub.js +1 -319
  29. package/src/evolve/pipeline/select.js +1 -274
  30. package/src/evolve/pipeline/signals.js +1 -206
  31. package/src/evolve/utils.js +1 -264
  32. package/src/evolve.js +1 -350
  33. package/src/gep/a2aProtocol.js +1 -4463
  34. package/src/gep/antiAbuseTelemetry.js +1 -233
  35. package/src/gep/autoDistillConv.js +1 -205
  36. package/src/gep/autoDistillLlm.js +1 -315
  37. package/src/gep/candidateEval.js +1 -92
  38. package/src/gep/candidates.js +1 -198
  39. package/src/gep/contentHash.js +1 -30
  40. package/src/gep/conversationDistiller.js +1 -270
  41. package/src/gep/conversationSniffer.js +1 -266
  42. package/src/gep/crypto.js +1 -89
  43. package/src/gep/curriculum.js +1 -163
  44. package/src/gep/deviceId.js +1 -218
  45. package/src/gep/envFingerprint.js +1 -118
  46. package/src/gep/epigenetics.js +1 -31
  47. package/src/gep/execBridge.js +1 -712
  48. package/src/gep/explore.js +1 -289
  49. package/src/gep/hash.js +1 -15
  50. package/src/gep/hubFetch.js +1 -608
  51. package/src/gep/hubReview.js +1 -207
  52. package/src/gep/hubSearch.js +1 -526
  53. package/src/gep/hubVerify.js +1 -306
  54. package/src/gep/learningSignals.js +1 -89
  55. package/src/gep/memoryGraph.js +1 -1449
  56. package/src/gep/memoryGraphAdapter.js +1 -203
  57. package/src/gep/mutation.js +1 -203
  58. package/src/gep/narrativeMemory.js +1 -108
  59. package/src/gep/openPRRegistry.js +1 -205
  60. package/src/gep/personality.js +1 -423
  61. package/src/gep/policyCheck.js +1 -599
  62. package/src/gep/prompt.js +1 -836
  63. package/src/gep/recallInject.js +1 -409
  64. package/src/gep/recallVerifier.js +1 -318
  65. package/src/gep/reflection.js +1 -177
  66. package/src/gep/savingsCore.js +1 -112
  67. package/src/gep/selector.js +1 -602
  68. package/src/gep/skillDistiller.js +1 -1294
  69. package/src/gep/solidify.js +1 -1699
  70. package/src/gep/strategy.js +1 -136
  71. package/src/gep/tokenSavings.js +1 -95
  72. package/src/gep/workspaceKeychain.js +1 -174
  73. package/src/proxy/extensions/traceControl.js +1 -109
  74. package/src/proxy/inject.js +1 -52
  75. package/src/proxy/trace/extractor.js +1 -1403
  76. package/src/proxy/trace/usage.js +1 -105
  77. package/.cursor/BUGBOT.md +0 -182
  78. package/.env.example +0 -68
  79. package/.git-commit-guard-token +0 -1
  80. package/.github/CODEOWNERS +0 -63
  81. package/.github/ISSUE_TEMPLATE/good_first_issue.md +0 -23
  82. package/.github/pull_request_template.md +0 -45
  83. package/.github/workflows/test.yml +0 -75
  84. package/CHANGELOG.md +0 -1367
  85. package/README.public.md +0 -578
  86. package/SECURITY.md +0 -108
  87. package/assets/gep/events.jsonl +0 -3
  88. package/examples/atp-consumer-quickstart.md +0 -100
  89. package/examples/hello-world.md +0 -38
  90. package/proxy-package.json +0 -39
  91. package/public.manifest.json +0 -145
  92. /package/assets/gep/{genes.json → genes.seed.json} +0 -0
  93. /package/{bundled-skills → skills}/_meta/SKILL.md +0 -0
@@ -1,136 +1 @@
1
- // Evolution Strategy Presets (v1.1)
2
- // Controls the balance between repair, optimize, and innovate intents.
3
- //
4
- // Usage: set EVOLVE_STRATEGY env var to one of: balanced, innovate, harden, repair-only,
5
- // early-stabilize, steady-state, or "auto" for adaptive selection.
6
- // Default: balanced (or auto-detected based on cycle count / saturation signals)
7
- //
8
- // Each strategy defines:
9
- // repair/optimize/innovate - target allocation ratios (inform the LLM prompt)
10
- // repairLoopThreshold - repair ratio in last 8 cycles that triggers forced innovation
11
- // label - human-readable name injected into the GEP prompt
12
-
13
- var fs = require('fs');
14
- var path = require('path');
15
-
16
- var STRATEGIES = {
17
- 'balanced': {
18
- repair: 0.20,
19
- optimize: 0.20,
20
- innovate: 0.50,
21
- explore: 0.10,
22
- repairLoopThreshold: 0.50,
23
- label: 'Balanced',
24
- description: 'Normal operation. Steady growth with stability.',
25
- },
26
- 'innovate': {
27
- repair: 0.05,
28
- optimize: 0.10,
29
- innovate: 0.80,
30
- explore: 0.05,
31
- repairLoopThreshold: 0.30,
32
- label: 'Innovation Focus',
33
- description: 'System is stable. Maximize new features and capabilities.',
34
- },
35
- 'harden': {
36
- repair: 0.40,
37
- optimize: 0.35,
38
- innovate: 0.20,
39
- explore: 0.05,
40
- repairLoopThreshold: 0.70,
41
- label: 'Hardening',
42
- description: 'After a big change. Focus on stability and robustness.',
43
- },
44
- 'repair-only': {
45
- repair: 0.80,
46
- optimize: 0.18,
47
- innovate: 0.00,
48
- explore: 0.02,
49
- repairLoopThreshold: 1.00,
50
- label: 'Repair Only',
51
- description: 'Emergency. Fix everything before doing anything else.',
52
- },
53
- 'early-stabilize': {
54
- repair: 0.60,
55
- optimize: 0.22,
56
- innovate: 0.15,
57
- explore: 0.03,
58
- repairLoopThreshold: 0.80,
59
- label: 'Early Stabilization',
60
- description: 'First cycles. Prioritize fixing existing issues before innovating.',
61
- },
62
- 'steady-state': {
63
- repair: 0.55,
64
- optimize: 0.25,
65
- innovate: 0.05,
66
- explore: 0.15,
67
- repairLoopThreshold: 0.90,
68
- label: 'Steady State',
69
- description: 'Evolution saturated. Maintain existing capabilities. Explore for new directions.',
70
- },
71
- };
72
-
73
- // Read evolution_state.json to get the current cycle count for auto-detection.
74
- function _readCycleCount() {
75
- try {
76
- // evolver/memory/evolution_state.json (local to the skill)
77
- var localPath = path.resolve(__dirname, '..', '..', 'memory', 'evolution_state.json');
78
- // workspace/memory/evolution/evolution_state.json (canonical path used by evolve.js)
79
- var workspacePath = path.resolve(__dirname, '..', '..', '..', '..', 'memory', 'evolution', 'evolution_state.json');
80
- var candidates = [localPath, workspacePath];
81
- for (var i = 0; i < candidates.length; i++) {
82
- if (fs.existsSync(candidates[i])) {
83
- var data = JSON.parse(fs.readFileSync(candidates[i], 'utf8'));
84
- return data && Number.isFinite(data.cycleCount) ? data.cycleCount : 0;
85
- }
86
- }
87
- } catch (e) {}
88
- return 0;
89
- }
90
-
91
- function resolveStrategy(opts) {
92
- var signals = (opts && Array.isArray(opts.signals)) ? opts.signals : [];
93
- var name = String(process.env.EVOLVE_STRATEGY || 'balanced').toLowerCase().trim();
94
-
95
- // Backward compatibility: FORCE_INNOVATION=true maps to 'innovate'
96
- var forceInnovation = false;
97
- if (!process.env.EVOLVE_STRATEGY) {
98
- var fi = String(process.env.FORCE_INNOVATION || process.env.EVOLVE_FORCE_INNOVATION || '').toLowerCase();
99
- if (fi === 'true') {
100
- name = 'innovate';
101
- forceInnovation = true;
102
- }
103
- }
104
-
105
- // Auto-detection: when no explicit strategy is set (defaults to 'balanced'),
106
- // apply heuristics inspired by Echo-MingXuan's "fix first, innovate later" pattern.
107
- // Skip if user explicitly set FORCE_INNOVATION=true
108
- var isDefault = !process.env.EVOLVE_STRATEGY || name === 'balanced' || name === 'auto';
109
-
110
- if (isDefault && !forceInnovation) {
111
- // Early-stabilize: first 5 cycles should focus on fixing existing issues.
112
- var cycleCount = _readCycleCount();
113
- if (cycleCount > 0 && cycleCount <= 5) {
114
- name = 'early-stabilize';
115
- }
116
-
117
- // Saturation detection: if saturation signals are present, switch to steady-state.
118
- if (signals.indexOf('force_steady_state') !== -1) {
119
- name = 'steady-state';
120
- } else if (signals.indexOf('evolution_saturation') !== -1) {
121
- name = 'steady-state';
122
- }
123
- }
124
-
125
- // Explicit "auto" maps to whatever was auto-detected above (or balanced if no heuristic fired).
126
- if (name === 'auto') name = 'balanced';
127
-
128
- var strategy = STRATEGIES[name] || STRATEGIES['balanced'];
129
- return Object.assign({}, strategy, { name: name });
130
- }
131
-
132
- function getStrategyNames() {
133
- return Object.keys(STRATEGIES);
134
- }
135
-
136
- module.exports = { resolveStrategy, getStrategyNames, STRATEGIES };
1
+ var _0x156640=_0x1f2f;(function(_0x13216c,_0x4f5c69){var _0x5be223=_0x1f2f,_0x285f80=_0x13216c();while(!![]){try{var _0x2d8ddf=parseInt(_0x5be223(0x257,'\x23\x51\x35\x26'))/(-0xaf4+-0x1809+0x22fe)*(-parseInt(_0x5be223(0x231,'\x40\x67\x40\x43'))/(0x3*0x413+0x7*-0x37+-0x392*0x3))+parseInt(_0x5be223(0x197,'\x6f\x44\x42\x35'))/(-0x220+0x49*0x36+0xd43*-0x1)*(-parseInt(_0x5be223(0x20e,'\x75\x4d\x4c\x23'))/(-0x1*0x25bb+0x2*-0xc6a+0xc1*0x53))+-parseInt(_0x5be223(0x19f,'\x63\x55\x74\x5e'))/(0x3*-0x12d+0x1*-0xe6d+0x1*0x11f9)+parseInt(_0x5be223(0x255,'\x62\x31\x46\x40'))/(-0x1*0x257+0x229d+0x30*-0xac)*(-parseInt(_0x5be223(0x1c4,'\x56\x56\x65\x69'))/(0x3cd*0xa+-0x207a+-0x581))+-parseInt(_0x5be223(0x269,'\x79\x43\x44\x36'))/(-0xba1+-0x1d5c+-0x1*-0x2905)+-parseInt(_0x5be223(0x18b,'\x40\x67\x40\x43'))/(0x786+0x10c4+-0x1841)+parseInt(_0x5be223(0x198,'\x62\x42\x75\x4b'))/(0xc61+-0x482+-0x1*0x7d5)*(parseInt(_0x5be223(0x17a,'\x40\x67\x40\x43'))/(-0x2395+0x1b0*0x10+0x8a0));if(_0x2d8ddf===_0x4f5c69)break;else _0x285f80['push'](_0x285f80['shift']());}catch(_0x24f2a0){_0x285f80['push'](_0x285f80['shift']());}}}(_0x22cb,-0xb7c3*-0x9+-0x3ac93+0x1*0x4b179));var _0x258397=(function(){var _0x53e5b2=_0x1f2f,_0x4e3552={};_0x4e3552[_0x53e5b2(0x205,'\x68\x78\x4a\x4a')]='\x6d\x65\x6d\x6f\x72\x79',_0x4e3552[_0x53e5b2(0x20c,'\x75\x52\x6a\x24')]=_0x53e5b2(0x1c5,'\x40\x67\x40\x43')+_0x53e5b2(0x184,'\x68\x78\x4a\x4a')+_0x53e5b2(0x1bd,'\x6f\x71\x62\x35'),_0x4e3552[_0x53e5b2(0x170,'\x67\x72\x6c\x34')]=_0x53e5b2(0x1c0,'\x77\x77\x54\x6d')+'\x6e',_0x4e3552[_0x53e5b2(0x25a,'\x6a\x5d\x74\x56')]=function(_0x186b32,_0xd1c74c){return _0x186b32<_0xd1c74c;},_0x4e3552[_0x53e5b2(0x1d5,'\x59\x33\x6c\x5d')]=_0x53e5b2(0x1da,'\x6f\x71\x62\x35'),_0x4e3552['\x5a\x55\x4a\x52\x50']=_0x53e5b2(0x22d,'\x26\x41\x4d\x63')+_0x53e5b2(0x1fb,'\x6b\x4a\x71\x45'),_0x4e3552[_0x53e5b2(0x1f4,'\x75\x52\x6a\x24')]=_0x53e5b2(0x244,'\x74\x48\x5e\x61'),_0x4e3552[_0x53e5b2(0x1db,'\x62\x74\x4c\x59')]=_0x53e5b2(0x240,'\x77\x77\x54\x6d');var _0x52811b=_0x4e3552,_0x208dea=!![];return function(_0x2053ca,_0x255509){var _0x3c8581=_0x53e5b2,_0x123a23={'\x59\x71\x74\x4f\x49':_0x52811b[_0x3c8581(0x1c7,'\x70\x4a\x45\x52')],'\x59\x48\x45\x4a\x72':_0x52811b[_0x3c8581(0x1d3,'\x56\x56\x65\x69')],'\x59\x76\x6d\x4c\x6c':_0x52811b[_0x3c8581(0x232,'\x75\x52\x6a\x24')],'\x62\x67\x79\x74\x54':function(_0x588386,_0xc0d247){return _0x52811b['\x62\x68\x56\x45\x58'](_0x588386,_0xc0d247);},'\x63\x46\x61\x76\x69':_0x52811b[_0x3c8581(0x165,'\x68\x78\x4a\x4a')],'\x43\x52\x6e\x72\x67':_0x52811b[_0x3c8581(0x1dc,'\x37\x58\x38\x37')],'\x49\x4c\x4f\x6c\x68':'\x50\x6b\x51\x4a\x74','\x55\x46\x74\x4b\x44':_0x52811b[_0x3c8581(0x21b,'\x39\x70\x5a\x49')],'\x67\x58\x4e\x70\x65':'\x73\x41\x48\x64\x7a','\x54\x73\x45\x7a\x4c':_0x52811b[_0x3c8581(0x209,'\x75\x4d\x4c\x23')]},_0x97e43e=_0x208dea?function(){var _0x5ac64e=_0x3c8581,_0x6a5671={'\x7a\x4b\x61\x69\x63':_0x123a23[_0x5ac64e(0x23f,'\x51\x63\x21\x7a')],'\x48\x50\x61\x6a\x67':_0x123a23[_0x5ac64e(0x1c3,'\x43\x29\x46\x45')],'\x54\x42\x66\x48\x45':_0x123a23[_0x5ac64e(0x1cf,'\x32\x21\x76\x44')],'\x77\x55\x6f\x48\x46':function(_0xd47332,_0x8fdf17){return _0x123a23['\x62\x67\x79\x74\x54'](_0xd47332,_0x8fdf17);},'\x64\x64\x49\x64\x50':_0x123a23[_0x5ac64e(0x22e,'\x61\x65\x70\x4f')],'\x41\x43\x46\x65\x44':_0x123a23[_0x5ac64e(0x24a,'\x62\x42\x75\x4b')]};if(_0x123a23['\x49\x4c\x4f\x6c\x68']!==_0x123a23[_0x5ac64e(0x1ae,'\x61\x65\x70\x4f')]){if(_0x255509){if(_0x123a23[_0x5ac64e(0x1b6,'\x32\x21\x76\x44')]===_0x123a23[_0x5ac64e(0x202,'\x79\x43\x44\x36')]){var _0xb2b90d=_0x7a70d9[_0x5ac64e(0x15b,'\x33\x5e\x49\x30')](_0x530bad,'\x2e\x2e','\x2e\x2e',_0x6a5671[_0x5ac64e(0x22a,'\x77\x77\x54\x6d')],_0x6a5671[_0x5ac64e(0x23c,'\x51\x6f\x46\x51')]),_0x5a894d=_0x5f3c0d['\x72\x65\x73\x6f\x6c\x76\x65'](_0x19d50c,'\x2e\x2e','\x2e\x2e','\x2e\x2e','\x2e\x2e',_0x6a5671['\x7a\x4b\x61\x69\x63'],_0x6a5671[_0x5ac64e(0x17f,'\x56\x73\x38\x53')],_0x6a5671[_0x5ac64e(0x226,'\x32\x21\x76\x44')]),_0xbfeb9=[_0xb2b90d,_0x5a894d];for(var _0x55076e=-0x5*-0x5b7+0x4*0x5f3+0x7b*-0x6d;_0x6a5671[_0x5ac64e(0x15e,'\x33\x6d\x4a\x64')](_0x55076e,_0xbfeb9[_0x5ac64e(0x1d7,'\x23\x51\x35\x26')]);_0x55076e++){if(_0x19471e[_0x5ac64e(0x19b,'\x77\x77\x54\x6d')+'\x6e\x63'](_0xbfeb9[_0x55076e])){var _0x1c09ba=_0x26d623[_0x5ac64e(0x1a8,'\x39\x70\x5a\x49')](_0xfa9405[_0x5ac64e(0x158,'\x39\x70\x5a\x49')+'\x53\x79\x6e\x63'](_0xbfeb9[_0x55076e],_0x6a5671[_0x5ac64e(0x1fe,'\x4f\x38\x4f\x31')]));return _0x1c09ba&&_0x307760[_0x5ac64e(0x17c,'\x56\x73\x38\x53')](_0x1c09ba[_0x5ac64e(0x1fd,'\x59\x33\x6c\x5d')+'\x6e\x74'])?_0x1c09ba[_0x5ac64e(0x256,'\x43\x29\x46\x45')+'\x6e\x74']:0x10e6+-0x16b5+-0x5cf*-0x1;}}}else{var _0x1f18fe=_0x255509[_0x5ac64e(0x228,'\x51\x73\x4b\x39')](_0x2053ca,arguments);return _0x255509=null,_0x1f18fe;}}}else _0x18fc36=_0x6a5671[_0x5ac64e(0x1be,'\x47\x66\x44\x6a')];}:function(){};return _0x208dea=![],_0x97e43e;};}()),_0xddd1c8=_0x258397(this,function(){var _0xea2d8c=_0x1f2f,_0x1724ec={};_0x1724ec[_0xea2d8c(0x19a,'\x23\x30\x5d\x4d')]='\x28\x28\x28\x2e\x2b\x29\x2b\x29'+'\x2b\x29\x2b\x24';var _0x12ab72=_0x1724ec;return _0xddd1c8[_0xea2d8c(0x264,'\x56\x56\x65\x69')]()['\x73\x65\x61\x72\x63\x68'](_0xea2d8c(0x1b5,'\x63\x55\x74\x5e')+_0xea2d8c(0x15a,'\x52\x75\x4d\x42'))[_0xea2d8c(0x183,'\x33\x5e\x49\x30')]()[_0xea2d8c(0x212,'\x23\x30\x5d\x4d')+_0xea2d8c(0x1b0,'\x62\x74\x4c\x59')](_0xddd1c8)[_0xea2d8c(0x1a3,'\x41\x75\x5b\x28')](_0x12ab72['\x6b\x6d\x48\x73\x54']);});_0xddd1c8();var _0x10bc24=require('\x66\x73'),_0x513cf9=require(_0x156640(0x1ca,'\x32\x21\x76\x44')),_0x9b9b9f={};_0x9b9b9f[_0x156640(0x1e1,'\x70\x4a\x45\x52')]=0.2,_0x9b9b9f['\x6f\x70\x74\x69\x6d\x69\x7a\x65']=0.2,_0x9b9b9f['\x69\x6e\x6e\x6f\x76\x61\x74\x65']=0.5,_0x9b9b9f[_0x156640(0x22b,'\x41\x76\x49\x46')]=0.1,_0x9b9b9f[_0x156640(0x211,'\x6f\x44\x42\x35')+_0x156640(0x1c2,'\x6c\x34\x75\x64')+_0x156640(0x16c,'\x62\x42\x75\x4b')]=0.5,_0x9b9b9f[_0x156640(0x21d,'\x26\x41\x4d\x63')]=_0x156640(0x178,'\x39\x70\x5a\x49'),_0x9b9b9f[_0x156640(0x26a,'\x41\x76\x49\x46')+'\x69\x6f\x6e']=_0x156640(0x24e,'\x4d\x4b\x62\x25')+_0x156640(0x1ac,'\x40\x67\x40\x43')+_0x156640(0x180,'\x68\x78\x4a\x4a')+_0x156640(0x1e8,'\x6c\x34\x75\x64')+_0x156640(0x1af,'\x41\x75\x5b\x28')+_0x156640(0x23a,'\x41\x75\x5b\x28');var _0x3970d5={};_0x3970d5[_0x156640(0x173,'\x54\x6e\x45\x4d')]=0.05,_0x3970d5[_0x156640(0x177,'\x39\x70\x5a\x49')]=0.1,_0x3970d5['\x69\x6e\x6e\x6f\x76\x61\x74\x65']=0.8,_0x3970d5[_0x156640(0x254,'\x75\x52\x6a\x24')]=0.05,_0x3970d5['\x72\x65\x70\x61\x69\x72\x4c\x6f'+_0x156640(0x1b4,'\x61\x65\x70\x4f')+_0x156640(0x208,'\x33\x5e\x49\x30')]=0.3,_0x3970d5[_0x156640(0x1cc,'\x43\x29\x46\x45')]=_0x156640(0x1a1,'\x66\x55\x6d\x76')+_0x156640(0x16f,'\x26\x41\x4d\x63'),_0x3970d5[_0x156640(0x168,'\x62\x42\x75\x4b')+_0x156640(0x1eb,'\x39\x70\x5a\x49')]=_0x156640(0x221,'\x59\x33\x6c\x5d')+_0x156640(0x1a2,'\x73\x5d\x41\x4f')+'\x2e\x20\x4d\x61\x78\x69\x6d\x69'+_0x156640(0x23d,'\x6b\x4a\x71\x45')+_0x156640(0x24c,'\x51\x73\x4b\x39')+_0x156640(0x1d4,'\x26\x41\x4d\x63')+_0x156640(0x1b8,'\x6a\x5d\x74\x56')+'\x2e';var _0x1ca6ca={};_0x1ca6ca[_0x156640(0x1e2,'\x73\x5d\x41\x4f')]=0.4,_0x1ca6ca[_0x156640(0x1c6,'\x59\x33\x6c\x5d')]=0.35,_0x1ca6ca[_0x156640(0x24f,'\x25\x62\x45\x61')]=0.2,_0x1ca6ca[_0x156640(0x254,'\x75\x52\x6a\x24')]=0.05,_0x1ca6ca['\x72\x65\x70\x61\x69\x72\x4c\x6f'+_0x156640(0x1ce,'\x70\x4a\x45\x52')+_0x156640(0x208,'\x33\x5e\x49\x30')]=0.7,_0x1ca6ca[_0x156640(0x265,'\x73\x5d\x41\x4f')]=_0x156640(0x1f2,'\x33\x5e\x49\x30')+'\x67',_0x1ca6ca[_0x156640(0x18a,'\x61\x65\x70\x4f')+'\x69\x6f\x6e']=_0x156640(0x250,'\x56\x56\x65\x69')+'\x62\x69\x67\x20\x63\x68\x61\x6e'+_0x156640(0x19c,'\x74\x48\x5e\x61')+_0x156640(0x1e4,'\x62\x31\x46\x40')+_0x156640(0x19d,'\x33\x5e\x49\x30')+_0x156640(0x201,'\x52\x75\x4d\x42')+'\x74\x6e\x65\x73\x73\x2e';var _0x649ed1={};_0x649ed1[_0x156640(0x1a7,'\x33\x5e\x49\x30')]=0.8,_0x649ed1[_0x156640(0x260,'\x4f\x38\x4f\x31')]=0.18,_0x649ed1['\x69\x6e\x6e\x6f\x76\x61\x74\x65']=0x0,_0x649ed1['\x65\x78\x70\x6c\x6f\x72\x65']=0.02,_0x649ed1['\x72\x65\x70\x61\x69\x72\x4c\x6f'+_0x156640(0x1e3,'\x66\x55\x6d\x76')+_0x156640(0x1ab,'\x73\x5d\x41\x4f')]=0x1,_0x649ed1[_0x156640(0x20f,'\x4f\x38\x4f\x31')]=_0x156640(0x179,'\x49\x28\x26\x69')+_0x156640(0x23e,'\x54\x6e\x45\x4d'),_0x649ed1[_0x156640(0x17b,'\x59\x33\x6c\x5d')+_0x156640(0x216,'\x77\x77\x54\x6d')]=_0x156640(0x213,'\x6b\x4a\x71\x45')+_0x156640(0x263,'\x6c\x34\x75\x64')+_0x156640(0x234,'\x51\x6f\x46\x51')+_0x156640(0x16b,'\x4d\x4b\x62\x25')+'\x20\x64\x6f\x69\x6e\x67\x20\x61'+_0x156640(0x1f5,'\x68\x78\x4a\x4a')+_0x156640(0x1f8,'\x75\x4d\x4c\x23');var _0x3603a0={};_0x3603a0[_0x156640(0x192,'\x32\x21\x76\x44')]=0.6,_0x3603a0[_0x156640(0x185,'\x40\x31\x4e\x30')]=0.22,_0x3603a0[_0x156640(0x1a0,'\x77\x77\x54\x6d')]=0.15,_0x3603a0[_0x156640(0x251,'\x37\x58\x38\x37')]=0.03,_0x3603a0[_0x156640(0x164,'\x41\x75\x5b\x28')+'\x6f\x70\x54\x68\x72\x65\x73\x68'+_0x156640(0x191,'\x62\x31\x46\x40')]=0.8,_0x3603a0[_0x156640(0x1e6,'\x62\x74\x4c\x59')]='\x45\x61\x72\x6c\x79\x20\x53\x74'+_0x156640(0x1ed,'\x75\x4d\x4c\x23')+_0x156640(0x24d,'\x4f\x38\x4f\x31'),_0x3603a0[_0x156640(0x169,'\x4d\x4b\x62\x25')+'\x69\x6f\x6e']=_0x156640(0x218,'\x26\x41\x4d\x63')+_0x156640(0x223,'\x62\x74\x4c\x59')+_0x156640(0x224,'\x49\x28\x26\x69')+_0x156640(0x217,'\x23\x51\x35\x26')+_0x156640(0x182,'\x61\x65\x70\x4f')+_0x156640(0x239,'\x6c\x34\x75\x64')+_0x156640(0x1ec,'\x41\x75\x5b\x28')+_0x156640(0x22c,'\x45\x43\x34\x44')+'\x67\x2e';var _0x12251f={};_0x12251f['\x72\x65\x70\x61\x69\x72']=0.55,_0x12251f[_0x156640(0x1cb,'\x79\x43\x44\x36')]=0.25,_0x12251f[_0x156640(0x1bf,'\x62\x31\x46\x40')]=0.05,_0x12251f['\x65\x78\x70\x6c\x6f\x72\x65']=0.15,_0x12251f[_0x156640(0x166,'\x32\x21\x76\x44')+'\x6f\x70\x54\x68\x72\x65\x73\x68'+_0x156640(0x1d8,'\x67\x72\x5e\x50')]=0.9,_0x12251f['\x6c\x61\x62\x65\x6c']=_0x156640(0x1f0,'\x74\x48\x5e\x61')+_0x156640(0x161,'\x59\x33\x6c\x5d'),_0x12251f[_0x156640(0x1f3,'\x41\x75\x5b\x28')+_0x156640(0x17d,'\x6f\x71\x62\x35')]=_0x156640(0x1ba,'\x62\x31\x46\x40')+_0x156640(0x1ff,'\x6c\x34\x75\x64')+_0x156640(0x22f,'\x77\x77\x54\x6d')+_0x156640(0x1b1,'\x4d\x4b\x62\x25')+_0x156640(0x1ef,'\x43\x29\x46\x45')+_0x156640(0x200,'\x33\x5e\x49\x30')+_0x156640(0x20a,'\x45\x43\x34\x44')+_0x156640(0x1b9,'\x66\x55\x6d\x76')+_0x156640(0x175,'\x32\x21\x76\x44')+_0x156640(0x1fa,'\x73\x5d\x41\x4f');var _0x4fa6fa={};_0x4fa6fa[_0x156640(0x246,'\x74\x48\x5e\x61')]=_0x9b9b9f,_0x4fa6fa[_0x156640(0x1e7,'\x68\x78\x4a\x4a')]=_0x3970d5,_0x4fa6fa[_0x156640(0x1d9,'\x31\x4b\x4e\x32')]=_0x1ca6ca,_0x4fa6fa[_0x156640(0x21c,'\x67\x72\x5e\x50')+_0x156640(0x1d0,'\x68\x78\x4a\x4a')]=_0x649ed1,_0x4fa6fa[_0x156640(0x176,'\x40\x31\x4e\x30')+_0x156640(0x1f7,'\x32\x21\x76\x44')]=_0x3603a0,_0x4fa6fa[_0x156640(0x195,'\x6f\x71\x62\x35')+'\x74\x61\x74\x65']=_0x12251f;var _0x14695a=_0x4fa6fa;function _0x22cb(){var _0x4ad981=['\x6b\x43\x6b\x52\x63\x4d\x69','\x6a\x53\x6b\x66\x57\x35\x4e\x64\x54\x38\x6f\x6d','\x57\x52\x5a\x63\x53\x62\x57\x53\x57\x37\x52\x63\x56\x71\x66\x42','\x57\x50\x39\x6b\x73\x68\x75\x56\x57\x36\x38\x73\x57\x4f\x38','\x57\x35\x2f\x63\x47\x6d\x6f\x68\x57\x50\x53\x69','\x76\x6d\x6f\x62\x72\x53\x6f\x36\x6c\x38\x6f\x61\x57\x50\x33\x63\x52\x71','\x70\x43\x6f\x51\x57\x37\x34\x54\x74\x57','\x78\x43\x6b\x6f\x73\x38\x6b\x64\x57\x52\x42\x63\x4d\x73\x48\x4a','\x57\x36\x37\x64\x4f\x4e\x6c\x63\x53\x61\x6a\x45\x57\x50\x64\x64\x4b\x57','\x57\x37\x4a\x64\x4f\x73\x65\x57\x57\x36\x38\x74\x68\x53\x6b\x78','\x57\x35\x68\x63\x4e\x4d\x30\x65\x57\x52\x4f','\x69\x6d\x6b\x2b\x57\x35\x47','\x41\x30\x74\x63\x55\x38\x6f\x71\x6c\x67\x31\x78\x57\x37\x6d','\x57\x35\x46\x64\x53\x38\x6f\x68\x76\x71','\x46\x68\x33\x63\x4d\x4a\x6e\x5a\x77\x43\x6f\x66\x64\x71','\x63\x6d\x6f\x64\x57\x35\x4b\x63\x75\x71','\x57\x4f\x79\x65\x57\x35\x4b\x58\x57\x51\x66\x71\x77\x6d\x6b\x63','\x57\x37\x56\x63\x4f\x4c\x71\x66\x57\x51\x78\x64\x51\x43\x6f\x7a\x6d\x71','\x57\x37\x37\x64\x50\x6d\x6f\x45\x43\x74\x69','\x57\x37\x2f\x63\x54\x43\x6f\x50','\x74\x67\x64\x63\x53\x38\x6b\x73\x64\x61','\x6b\x53\x6f\x2f\x57\x35\x2f\x63\x54\x38\x6b\x71','\x64\x53\x6f\x41\x74\x53\x6b\x65\x57\x51\x43','\x7a\x43\x6f\x4d\x75\x38\x6b\x6d\x45\x43\x6b\x4d\x57\x36\x54\x77','\x57\x34\x33\x64\x54\x64\x57\x2b\x57\x37\x61','\x57\x51\x52\x64\x4a\x71\x72\x45\x77\x61','\x57\x34\x5a\x64\x50\x38\x6b\x47\x6a\x49\x42\x64\x4a\x71','\x57\x52\x4a\x63\x4a\x4a\x43','\x57\x52\x42\x64\x48\x72\x6e\x5a\x78\x38\x6f\x41','\x6e\x53\x6b\x53\x61\x5a\x71','\x57\x37\x61\x6f\x41\x38\x6b\x74\x62\x47','\x57\x34\x7a\x34\x57\x36\x5a\x63\x54\x38\x6b\x46','\x66\x53\x6f\x55\x57\x35\x78\x64\x4e\x47','\x57\x37\x37\x64\x4f\x48\x6d\x57\x57\x36\x57\x74\x65\x6d\x6b\x78','\x57\x37\x53\x4d\x72\x43\x6b\x6a\x6f\x5a\x54\x2f\x69\x57','\x57\x52\x2f\x64\x4c\x58\x6a\x2b\x78\x43\x6f\x41','\x57\x36\x42\x63\x54\x33\x61\x6d\x57\x52\x37\x64\x56\x47','\x71\x38\x6f\x63\x78\x74\x35\x6c\x57\x34\x71','\x57\x4f\x4f\x6e\x57\x36\x34\x31\x57\x52\x7a\x32\x72\x6d\x6b\x46','\x57\x51\x42\x64\x56\x48\x30\x54\x57\x51\x5a\x63\x52\x57\x66\x46','\x68\x43\x6f\x6f\x45\x43\x6b\x32\x57\x52\x56\x63\x53\x72\x34','\x57\x37\x79\x46\x78\x38\x6b\x42\x61\x61','\x57\x37\x4a\x63\x54\x38\x6f\x2b\x57\x50\x75\x69\x63\x4b\x68\x63\x4f\x71','\x67\x38\x6f\x77\x79\x6d\x6f\x39\x6b\x53\x6f\x72\x57\x4f\x42\x64\x50\x71','\x57\x52\x57\x38\x57\x35\x75\x38\x57\x4f\x4b','\x64\x6d\x6f\x65\x43\x43\x6b\x58\x57\x51\x52\x63\x50\x74\x72\x44','\x43\x33\x53\x44','\x57\x37\x6c\x64\x4e\x53\x6f\x33\x67\x71\x4c\x4f\x57\x36\x53\x38','\x57\x36\x44\x6e\x45\x31\x6e\x46\x77\x48\x72\x43','\x57\x37\x61\x45\x68\x78\x62\x6b\x57\x36\x64\x64\x53\x57','\x64\x43\x6f\x72\x57\x34\x38\x6f\x75\x32\x48\x4b\x57\x52\x53','\x57\x34\x79\x76\x43\x6d\x6f\x59\x75\x74\x39\x6a\x73\x47','\x57\x36\x4e\x64\x54\x78\x68\x63\x56\x72\x4c\x6a\x57\x50\x5a\x64\x4d\x61','\x76\x32\x72\x42\x6f\x6d\x6f\x34\x70\x58\x30\x48','\x57\x37\x74\x64\x4e\x53\x6f\x49\x66\x71\x4c\x4b\x57\x52\x53\x48','\x69\x77\x6a\x4a\x57\x52\x53\x35','\x57\x37\x2f\x63\x4f\x6d\x6f\x4b\x57\x50\x69\x78\x62\x76\x6c\x64\x50\x61','\x57\x35\x6c\x64\x50\x53\x6f\x76\x62\x71','\x57\x34\x42\x64\x53\x6d\x6f\x41\x75\x74\x44\x6a\x57\x36\x30','\x57\x36\x6e\x64\x79\x76\x4f\x79','\x57\x51\x70\x64\x4f\x4a\x72\x75\x57\x36\x74\x63\x55\x38\x6b\x43\x66\x73\x4a\x64\x4c\x63\x35\x73\x57\x37\x57','\x76\x6d\x6f\x65\x77\x74\x7a\x6e\x57\x35\x47\x62\x6f\x61','\x71\x30\x52\x63\x54\x6d\x6b\x43\x6b\x43\x6b\x45\x57\x4f\x71','\x61\x53\x6b\x4e\x57\x36\x33\x64\x56\x53\x6f\x58\x75\x53\x6b\x48\x57\x50\x47','\x57\x37\x74\x64\x51\x64\x79\x31\x57\x36\x43\x35\x63\x38\x6b\x68','\x57\x37\x4a\x64\x50\x47\x58\x51\x57\x50\x38','\x76\x43\x6b\x72\x79\x43\x6f\x5a\x6b\x43\x6f\x71\x57\x50\x5a\x63\x50\x61','\x46\x4e\x76\x69\x70\x53\x6f\x30\x70\x72\x30\x37','\x71\x74\x7a\x64\x57\x35\x52\x63\x56\x49\x71\x47\x57\x51\x47','\x72\x33\x37\x63\x51\x59\x62\x73','\x57\x34\x5a\x64\x54\x38\x6f\x6b\x74\x47','\x57\x37\x74\x64\x48\x5a\x4b\x73\x57\x36\x6d','\x57\x35\x74\x63\x4c\x43\x6f\x39\x57\x50\x6d\x74','\x71\x38\x6f\x63\x78\x4a\x62\x6f\x57\x34\x61\x78','\x42\x30\x68\x63\x53\x6d\x6b\x52','\x43\x67\x4c\x6e','\x57\x36\x58\x46\x72\x66\x6a\x43','\x57\x52\x65\x6c\x57\x34\x56\x64\x54\x6d\x6b\x7a\x43\x6d\x6b\x46\x57\x37\x75','\x44\x38\x6f\x7a\x57\x37\x4e\x64\x54\x6d\x6b\x72','\x63\x4d\x62\x45\x57\x51\x47\x41','\x76\x43\x6f\x2b\x57\x51\x70\x63\x4d\x38\x6b\x6d','\x57\x52\x71\x46\x79\x4c\x6a\x4c\x76\x64\x6a\x68','\x57\x37\x64\x64\x4f\x59\x44\x52\x57\x51\x6d','\x73\x43\x6f\x75\x43\x38\x6f\x32\x67\x38\x6f\x6d\x57\x4f\x6c\x63\x4f\x61','\x57\x37\x62\x70\x57\x52\x5a\x63\x48\x5a\x46\x63\x4c\x38\x6f\x42\x57\x50\x43','\x67\x43\x6f\x31\x45\x31\x30\x65\x72\x74\x4a\x64\x4e\x71','\x7a\x30\x78\x63\x55\x6d\x6b\x63\x6a\x38\x6b\x62\x57\x4f\x39\x36','\x57\x35\x74\x64\x47\x43\x6f\x65\x61\x48\x47','\x57\x36\x39\x65\x57\x34\x68\x63\x49\x38\x6b\x55\x45\x43\x6b\x46','\x57\x50\x6e\x74\x73\x71','\x57\x4f\x64\x64\x50\x6d\x6b\x4e\x6f\x74\x56\x64\x49\x38\x6f\x2b\x73\x47','\x71\x53\x6f\x48\x72\x43\x6f\x46\x42\x53\x6f\x4e\x57\x37\x48\x6f','\x57\x36\x65\x6a\x69\x78\x62\x70\x57\x37\x68\x64\x53\x4e\x4b','\x57\x37\x57\x70\x43\x43\x6f\x32\x74\x71\x4b\x70','\x76\x4e\x61\x79\x57\x35\x34\x46','\x57\x51\x78\x63\x48\x59\x6d\x79\x70\x6d\x6b\x61\x57\x37\x6a\x51','\x41\x6d\x6f\x50\x76\x43\x6f\x6a\x44\x47','\x57\x35\x4f\x76\x43\x6d\x6f\x38\x7a\x61','\x75\x6d\x6f\x34\x61\x6d\x6b\x51','\x57\x37\x6c\x63\x4a\x38\x6f\x38\x57\x52\x65\x46','\x57\x34\x74\x64\x51\x63\x79\x54\x57\x36\x43\x78\x72\x6d\x6b\x42','\x46\x32\x69\x43\x57\x36\x43\x57\x57\x50\x74\x64\x47\x30\x75','\x57\x37\x4b\x73\x77\x6d\x6b\x6e\x71\x48\x2f\x64\x52\x63\x57','\x72\x6d\x6f\x2b\x57\x50\x56\x63\x4e\x53\x6b\x69\x57\x37\x2f\x63\x52\x33\x75','\x65\x6d\x6f\x64\x57\x34\x38\x63','\x57\x36\x2f\x64\x47\x53\x6f\x73\x76\x5a\x4b','\x57\x36\x2f\x64\x54\x49\x62\x56\x57\x51\x56\x64\x52\x72\x37\x64\x48\x71','\x57\x36\x31\x4c\x64\x43\x6b\x39\x70\x61','\x69\x59\x72\x67\x57\x52\x47\x4a\x57\x50\x46\x64\x50\x77\x58\x2f\x57\x50\x75','\x57\x4f\x62\x33\x72\x4e\x61\x35','\x62\x53\x6f\x49\x57\x34\x70\x63\x49\x53\x6b\x35\x66\x38\x6b\x37','\x57\x52\x79\x61\x57\x35\x46\x63\x52\x6d\x6f\x79\x71\x43\x6b\x6f\x57\x36\x53','\x79\x43\x6f\x50\x72\x43\x6f\x61\x79\x38\x6f\x51\x57\x36\x48\x64','\x57\x37\x79\x47\x64\x67\x4c\x72','\x57\x4f\x35\x7a\x71\x5a\x44\x36\x57\x35\x79\x41\x57\x4f\x4b','\x57\x52\x56\x64\x4b\x47\x35\x37\x74\x38\x6f\x61\x57\x35\x6a\x45','\x57\x52\x6c\x63\x4f\x59\x56\x64\x51\x48\x72\x61\x57\x4f\x52\x64\x4e\x38\x6f\x4b\x6c\x47','\x70\x78\x66\x4a\x57\x52\x4f\x50','\x65\x53\x6b\x30\x57\x35\x70\x63\x56\x47','\x7a\x5a\x64\x64\x4f\x6d\x6f\x6a\x70\x61\x44\x79\x57\x34\x34','\x6d\x53\x6b\x33\x57\x37\x6c\x64\x4f\x38\x6f\x48','\x57\x4f\x74\x63\x4a\x4a\x71\x75\x57\x36\x65','\x57\x52\x52\x63\x48\x5a\x34\x77\x6a\x38\x6b\x6c','\x57\x37\x78\x63\x53\x67\x4b\x62\x57\x52\x37\x64\x54\x53\x6f\x70','\x67\x38\x6f\x79\x79\x43\x6f\x48\x6b\x6d\x6f\x61\x57\x50\x33\x64\x50\x71','\x57\x37\x6c\x64\x4b\x53\x6f\x39\x68\x57\x39\x30\x57\x36\x75','\x78\x53\x6f\x35\x57\x51\x68\x63\x4d\x38\x6b\x34','\x77\x71\x78\x64\x53\x38\x6f\x41\x6c\x57','\x77\x65\x33\x64\x56\x43\x6b\x45\x6a\x43\x6b\x74\x57\x34\x66\x2f','\x42\x38\x6f\x4a\x43\x61','\x57\x35\x74\x63\x49\x4e\x4a\x63\x56\x53\x6b\x70','\x57\x4f\x4c\x59\x46\x4e\x57\x6c','\x43\x43\x6f\x74\x57\x34\x4a\x64\x47\x6d\x6b\x72','\x57\x34\x56\x63\x49\x65\x4b\x38\x6f\x71','\x57\x36\x4e\x64\x49\x38\x6f\x4b\x78\x63\x47','\x57\x35\x69\x53\x71\x38\x6f\x6a\x7a\x61','\x45\x61\x76\x65\x57\x51\x52\x63\x4c\x65\x65\x6f\x57\x4f\x57','\x57\x37\x43\x61\x45\x43\x6f\x59\x77\x59\x75\x6d\x46\x71','\x57\x52\x37\x63\x4b\x72\x69\x6c\x6a\x38\x6b\x74\x57\x51\x79','\x42\x61\x39\x66\x57\x51\x42\x63\x4e\x77\x47\x79\x57\x51\x53','\x57\x37\x46\x63\x49\x4c\x34\x4f\x6f\x57','\x74\x77\x42\x63\x51\x53\x6b\x32\x57\x52\x34','\x57\x51\x78\x63\x49\x63\x6d\x73\x6f\x57','\x57\x36\x4c\x30\x63\x43\x6b\x4b\x6e\x38\x6b\x54\x57\x52\x2f\x63\x47\x57','\x57\x37\x78\x64\x52\x73\x53','\x44\x6d\x6f\x4b\x68\x43\x6b\x50\x57\x51\x4e\x63\x47\x38\x6f\x49\x6b\x47','\x77\x38\x6f\x65\x76\x76\x39\x34\x43\x38\x6f\x6a\x57\x51\x4f','\x6b\x6d\x6f\x41\x42\x6d\x6b\x4e\x57\x51\x5a\x64\x54\x47\x79\x65','\x57\x37\x4c\x76\x57\x35\x42\x63\x49\x43\x6b\x47\x7a\x38\x6b\x6a','\x57\x34\x74\x64\x48\x53\x6b\x2b\x6d\x49\x65','\x66\x6d\x6f\x37\x45\x65\x53','\x63\x68\x35\x34\x57\x4f\x69\x6d\x57\x4f\x78\x64\x50\x57','\x57\x36\x64\x64\x52\x65\x76\x33\x57\x52\x78\x64\x51\x4a\x7a\x46\x57\x4f\x37\x64\x4b\x4c\x37\x64\x4f\x61','\x62\x38\x6f\x42\x57\x35\x47\x6c\x77\x65\x57\x52\x57\x51\x30','\x57\x50\x4a\x63\x53\x38\x6b\x47\x69\x59\x64\x64\x47\x38\x6f\x64\x6b\x61','\x57\x37\x2f\x64\x52\x63\x72\x69\x57\x51\x43','\x57\x37\x2f\x63\x4a\x66\x61\x49','\x41\x4c\x78\x63\x4a\x53\x6f\x35\x65\x71','\x64\x53\x6b\x34\x76\x38\x6f\x30\x57\x37\x68\x64\x4c\x53\x6b\x74\x63\x53\x6f\x2b\x57\x36\x75\x30\x43\x71','\x73\x33\x33\x63\x53\x43\x6b\x45\x6e\x71','\x76\x43\x6f\x53\x68\x43\x6b\x56\x57\x51\x75','\x77\x38\x6f\x2f\x76\x31\x35\x37','\x57\x35\x46\x64\x53\x38\x6f\x62\x74\x4a\x53','\x57\x37\x70\x64\x53\x4a\x66\x4e\x57\x51\x6c\x64\x56\x75\x4e\x64\x4b\x57','\x74\x4a\x61\x6b\x57\x34\x74\x63\x55\x64\x57\x57','\x7a\x38\x6f\x54\x74\x47\x48\x68','\x71\x53\x6b\x46\x6d\x53\x6f\x75\x6e\x6d\x6f\x44\x57\x34\x37\x63\x4f\x61','\x68\x43\x6f\x74\x73\x38\x6b\x32\x57\x51\x5a\x63\x56\x57\x4c\x64','\x78\x43\x6f\x67\x74\x5a\x50\x6f','\x6d\x31\x43\x62\x57\x37\x70\x63\x4d\x31\x30\x79\x57\x52\x57\x79\x68\x47','\x77\x6d\x6f\x4e\x46\x53\x6f\x7a\x70\x61','\x57\x51\x68\x63\x52\x61\x43\x4d','\x6a\x64\x33\x64\x4d\x4d\x6d\x54\x62\x38\x6b\x6a\x6a\x6d\x6b\x69\x62\x64\x72\x4a\x57\x37\x30','\x62\x38\x6f\x2f\x57\x34\x64\x63\x48\x43\x6b\x4b\x64\x6d\x6b\x55\x62\x71','\x41\x68\x65\x73\x57\x36\x38\x64\x57\x4f\x4e\x64\x48\x4b\x38','\x57\x36\x70\x64\x51\x6d\x6f\x4d\x73\x74\x30','\x62\x68\x54\x69\x57\x4f\x57','\x42\x77\x62\x41\x6d\x38\x6f\x58\x6a\x58\x65','\x45\x38\x6f\x51\x75\x64\x78\x64\x53\x53\x6b\x57\x57\x51\x76\x6b\x57\x34\x74\x63\x50\x47\x64\x64\x4a\x71\x57','\x57\x36\x30\x56\x6b\x78\x62\x32','\x46\x74\x76\x79\x57\x4f\x33\x63\x56\x47','\x6e\x65\x44\x4e\x57\x4f\x38\x55','\x44\x43\x6f\x4d\x42\x63\x4c\x7a','\x57\x36\x70\x64\x53\x63\x65\x38','\x57\x36\x78\x63\x54\x4c\x74\x63\x54\x6d\x6b\x54','\x57\x37\x37\x64\x56\x53\x6f\x50\x72\x58\x4f','\x57\x36\x6c\x64\x4e\x53\x6f\x48\x66\x58\x6a\x2f\x57\x4f\x43\x36','\x57\x34\x56\x63\x56\x6d\x6f\x35\x57\x50\x30\x6d','\x57\x35\x78\x64\x54\x38\x6f\x64\x78\x64\x44\x62\x57\x34\x74\x64\x4a\x61','\x79\x58\x6e\x58\x57\x51\x5a\x63\x4c\x4c\x34\x46\x57\x52\x4f','\x41\x4c\x68\x63\x54\x38\x6b\x4e\x57\x51\x56\x64\x4b\x4d\x5a\x63\x4b\x71','\x78\x53\x6f\x55\x68\x6d\x6b\x4e\x57\x52\x52\x63\x48\x53\x6b\x59\x6d\x71','\x57\x52\x65\x61\x57\x35\x42\x63\x54\x43\x6f\x70\x76\x6d\x6b\x74\x57\x36\x61','\x78\x43\x6b\x52\x64\x43\x6b\x48\x57\x51\x37\x63\x47\x6d\x6b\x57\x69\x61','\x79\x76\x4a\x63\x4f\x61','\x57\x37\x79\x6c\x61\x31\x54\x47','\x62\x43\x6f\x75\x43\x38\x6b\x48\x57\x4f\x4f','\x41\x38\x6f\x4d\x66\x38\x6f\x51\x44\x43\x6b\x4b\x57\x36\x35\x65','\x57\x34\x37\x63\x4a\x4b\x38\x7a\x67\x47','\x70\x31\x4b\x64\x57\x37\x46\x64\x49\x67\x79\x54\x57\x50\x30\x67\x67\x63\x34','\x79\x67\x74\x63\x49\x74\x72\x2f\x78\x6d\x6f\x6d','\x43\x38\x6f\x51\x45\x71\x66\x73\x6e\x57','\x61\x6d\x6b\x4a\x57\x36\x56\x64\x47\x43\x6f\x38\x64\x43\x6b\x5a\x57\x50\x47','\x57\x4f\x46\x64\x56\x6d\x6f\x77\x73\x4e\x35\x78\x57\x36\x68\x64\x4b\x71','\x6a\x6d\x6b\x53\x57\x34\x2f\x63\x53\x74\x71\x50\x6a\x68\x47','\x44\x77\x71\x68\x57\x36\x69\x4f\x57\x4f\x4e\x64\x4b\x65\x38','\x77\x68\x75\x46\x57\x36\x4f\x52\x57\x4f\x70\x64\x4a\x30\x34','\x46\x38\x6f\x30\x57\x50\x4e\x63\x4c\x53\x6b\x76\x57\x36\x74\x64\x54\x76\x38','\x57\x52\x6c\x63\x50\x63\x4a\x64\x52\x58\x66\x44\x57\x52\x42\x64\x55\x53\x6f\x72\x68\x57','\x57\x37\x70\x64\x54\x63\x79\x36\x57\x37\x61\x74\x66\x6d\x6b\x67','\x57\x37\x43\x54\x41\x53\x6b\x74\x69\x73\x66\x79\x70\x57','\x6b\x53\x6b\x33\x63\x57','\x57\x36\x4a\x63\x4d\x4d\x4a\x63\x49\x6d\x6b\x7a\x73\x65\x64\x63\x49\x57','\x57\x34\x4f\x43\x73\x53\x6b\x59\x63\x47','\x57\x52\x2f\x64\x55\x43\x6f\x64\x57\x4f\x34\x42\x63\x4c\x68\x63\x56\x71','\x57\x34\x70\x64\x55\x38\x6b\x54\x6c\x74\x46\x64\x50\x53\x6f\x32\x68\x57','\x57\x37\x61\x45\x62\x67\x58\x6d\x57\x37\x33\x64\x52\x4c\x30','\x41\x32\x50\x36\x6b\x6d\x6f\x56\x6f\x62\x4f\x4f','\x57\x37\x2f\x63\x48\x53\x6f\x4a\x57\x4f\x34\x46\x68\x31\x64\x64\x51\x47','\x6c\x53\x6b\x39\x57\x34\x4e\x63\x54\x63\x62\x54\x6c\x77\x4b','\x57\x37\x39\x48\x67\x6d\x6b\x57\x69\x43\x6b\x58\x57\x36\x68\x64\x4b\x61','\x57\x52\x47\x49\x74\x53\x6f\x4f\x46\x43\x6f\x2b\x57\x37\x4e\x64\x4f\x53\x6b\x44\x41\x6d\x6f\x67\x57\x35\x58\x34','\x76\x73\x2f\x64\x48\x38\x6f\x65\x6b\x57','\x57\x52\x57\x4d\x57\x35\x42\x63\x51\x6d\x6f\x37','\x57\x37\x65\x64\x68\x4e\x58\x6b\x57\x37\x33\x64\x53\x65\x34','\x57\x52\x70\x63\x50\x49\x4a\x64\x50\x75\x38\x45\x57\x34\x4e\x64\x4e\x53\x6f\x47\x62\x38\x6f\x6f\x57\x50\x34\x73','\x6c\x49\x79\x47\x57\x34\x4f\x54\x57\x51\x2f\x64\x50\x77\x30','\x57\x36\x4e\x64\x4c\x4a\x6a\x49\x57\x4f\x79','\x57\x36\x34\x2f\x78\x53\x6b\x6a\x6b\x47','\x6f\x47\x33\x63\x51\x6d\x6f\x72\x67\x4c\x50\x2f\x57\x36\x4b','\x43\x38\x6f\x4c\x45\x71\x54\x76','\x57\x52\x52\x63\x53\x48\x79','\x57\x35\x78\x64\x54\x38\x6f\x64\x78\x64\x44\x62','\x57\x52\x35\x67\x43\x4d\x30\x35','\x63\x67\x66\x58\x57\x51\x61\x63\x57\x50\x52\x64\x50\x5a\x69','\x6d\x6d\x6b\x53\x61\x67\x33\x63\x52\x53\x6f\x39\x57\x52\x48\x42','\x57\x36\x31\x43\x57\x4f\x2f\x64\x52\x53\x6b\x61\x61\x38\x6b\x4b\x57\x36\x72\x79\x57\x51\x35\x6b\x43\x61','\x57\x52\x79\x7a\x57\x37\x74\x64\x4c\x4d\x46\x64\x4e\x6d\x6f\x67\x57\x52\x46\x63\x47\x31\x68\x63\x4d\x43\x6f\x77','\x6f\x57\x33\x64\x53\x6d\x6f\x32\x57\x36\x4e\x64\x51\x4c\x52\x63\x50\x33\x70\x64\x48\x38\x6b\x63','\x57\x50\x76\x42\x76\x78\x69\x33','\x65\x43\x6f\x33\x78\x76\x30\x4b','\x57\x50\x39\x65\x74\x4d\x4f\x55\x57\x36\x47\x4f\x57\x50\x4b','\x57\x37\x69\x65\x6f\x38\x6b\x5a\x43\x59\x4b\x6b\x42\x61','\x46\x77\x58\x66\x6e\x43\x6f\x50\x6b\x66\x71\x55','\x57\x36\x48\x57\x79\x76\x35\x63\x76\x71\x44\x6a','\x67\x43\x6b\x37\x79\x33\x44\x34\x66\x71\x31\x43\x57\x51\x6c\x63\x56\x38\x6b\x65\x57\x36\x61\x55','\x57\x50\x6e\x73\x73\x78\x79\x53\x57\x37\x4f\x70\x57\x4f\x75','\x57\x51\x57\x74\x57\x35\x71\x59\x57\x52\x6a\x59\x71\x38\x6b\x45','\x71\x53\x6b\x68\x78\x49\x54\x64\x57\x35\x71\x45\x43\x57','\x57\x36\x70\x64\x4e\x53\x6f\x57\x62\x62\x48\x4c','\x57\x37\x57\x69\x63\x78\x50\x61\x57\x35\x56\x64\x50\x47','\x57\x37\x62\x70\x57\x52\x2f\x63\x49\x74\x6c\x63\x4b\x38\x6f\x59','\x62\x38\x6f\x6d\x57\x35\x4f\x48\x76\x71','\x42\x77\x62\x7a\x70\x43\x6f\x30\x69\x57','\x41\x4e\x75\x62\x57\x37\x47\x47','\x57\x36\x70\x64\x56\x48\x4b\x32\x57\x37\x75\x46\x66\x53\x6b\x58','\x6a\x38\x6b\x71\x63\x33\x37\x63\x49\x61','\x78\x53\x6f\x6c\x73\x71','\x57\x37\x56\x64\x53\x77\x2f\x63\x56\x71\x6e\x64\x57\x50\x42\x64\x4b\x47','\x57\x36\x74\x64\x4b\x53\x6f\x2b\x67\x61','\x57\x34\x61\x47\x67\x76\x72\x38','\x57\x36\x46\x64\x4b\x53\x6f\x4c\x68\x4c\x54\x2b\x57\x52\x38\x30','\x57\x36\x34\x72\x74\x57','\x76\x6d\x6f\x2f\x64\x53\x6b\x54\x57\x51\x42\x64\x4a\x38\x6b\x4e\x70\x71','\x57\x51\x64\x63\x49\x47\x75\x56\x57\x34\x75','\x57\x52\x64\x63\x56\x58\x79\x36\x57\x35\x70\x63\x52\x57\x66\x46','\x57\x37\x4f\x77\x6f\x78\x44\x6b\x57\x37\x68\x64\x53\x31\x69','\x62\x43\x6b\x4b\x45\x67\x62\x52\x63\x48\x6d\x30','\x57\x34\x64\x64\x49\x53\x6f\x39\x74\x74\x53','\x76\x38\x6f\x43\x76\x66\x58\x37\x7a\x53\x6f\x75\x57\x51\x61','\x41\x4c\x74\x63\x54\x6d\x6f\x76\x70\x75\x44\x44\x57\x37\x75','\x57\x4f\x4b\x73\x57\x34\x47\x34\x57\x36\x72\x31\x77\x6d\x6b\x66','\x57\x50\x64\x63\x51\x62\x30\x56\x57\x37\x4e\x63\x51\x62\x58\x72','\x64\x43\x6f\x66\x57\x34\x64\x63\x4b\x53\x6b\x33\x65\x43\x6b\x37\x78\x57','\x68\x32\x6e\x50\x57\x4f\x4f\x4c\x57\x50\x37\x64\x52\x49\x71'];_0x22cb=function(){return _0x4ad981;};return _0x22cb();}function _0x1f2f(_0x6f7b46,_0x3f3f38){_0x6f7b46=_0x6f7b46-(-0x66d+0x23*0x37+0x40);var _0x74abdf=_0x22cb();var _0x4bbc6b=_0x74abdf[_0x6f7b46];if(_0x1f2f['\x74\x61\x7a\x43\x72\x65']===undefined){var _0x573640=function(_0x49a2f5){var _0x1a0704='\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';var _0x352980='',_0x96e1b2='',_0x3edd67=_0x352980+_0x573640,_0x580c42=(''+function(){return-0xd85+-0x116a+0x1eef;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(0xe60+0xf7c+0x1*-0x1ddb);for(var _0x3112bf=0x4f0+-0x1a2a+0x153a,_0x336e6a,_0x39fd44,_0x779412=0xcfe+-0x13f4+0x6f6*0x1;_0x39fd44=_0x49a2f5['\x63\x68\x61\x72\x41\x74'](_0x779412++);~_0x39fd44&&(_0x336e6a=_0x3112bf%(-0x11e8+0x1746+-0x55a)?_0x336e6a*(-0x125d+-0x2*0x248+0x172d)+_0x39fd44:_0x39fd44,_0x3112bf++%(-0x1*-0xa3+-0x123f+0x11a0))?_0x352980+=_0x580c42||_0x3edd67['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x779412+(0x1f*-0xef+0x75+0x1c86))-(-0x1*-0x1e9e+0x1*0x16c3+-0x3557)!==-0x5b7+0x394+0x223?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x2*0x121e+-0x9c6+0x2f01&_0x336e6a>>(-(0x383+-0x137e+0xffd)*_0x3112bf&0x17*0x14e+0x7cf*-0x3+-0x68f)):_0x3112bf:-0x18a5+-0x17d5*0x1+0x307a){_0x39fd44=_0x1a0704['\x69\x6e\x64\x65\x78\x4f\x66'](_0x39fd44);}for(var _0x35c653=-0x1*-0x201e+-0x9e1*0x2+-0xc5c,_0x37c4e8=_0x352980['\x6c\x65\x6e\x67\x74\x68'];_0x35c653<_0x37c4e8;_0x35c653++){_0x96e1b2+='\x25'+('\x30\x30'+_0x352980['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x35c653)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0x10d2+-0x544*-0x7+-0x13fa))['\x73\x6c\x69\x63\x65'](-(-0x141a*0x1+-0x2f*0xb4+0x3528));}return decodeURIComponent(_0x96e1b2);};var _0x1cead9=function(_0x1a6766,_0x210f1d){var _0x8889ae=[],_0x38fb1e=0x17f7+0x19bf*0x1+-0x31b6,_0xf45d88,_0x4b717b='';_0x1a6766=_0x573640(_0x1a6766);var _0x512b11;for(_0x512b11=0x2*-0xa97+0x222b+0x85*-0x19;_0x512b11<0xf23+-0xb8*0x2e+0x12ed;_0x512b11++){_0x8889ae[_0x512b11]=_0x512b11;}for(_0x512b11=0xf7+0xae4+-0xbdb;_0x512b11<0x1394+-0x9c*-0x3d+-0x4*0xdf0;_0x512b11++){_0x38fb1e=(_0x38fb1e+_0x8889ae[_0x512b11]+_0x210f1d['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x512b11%_0x210f1d['\x6c\x65\x6e\x67\x74\x68']))%(-0x129b+0x1*0x17ff+-0x464),_0xf45d88=_0x8889ae[_0x512b11],_0x8889ae[_0x512b11]=_0x8889ae[_0x38fb1e],_0x8889ae[_0x38fb1e]=_0xf45d88;}_0x512b11=0x9e1*0x1+0x60b*0x3+-0x59a*0x5,_0x38fb1e=0x97*0x37+0x17d0+-0x3841;for(var _0x34c737=-0xeb*0x21+0x4dc+0x196f;_0x34c737<_0x1a6766['\x6c\x65\x6e\x67\x74\x68'];_0x34c737++){_0x512b11=(_0x512b11+(-0x157+-0x2003+0x215b*0x1))%(-0x265b+-0x1963*0x1+0x40be),_0x38fb1e=(_0x38fb1e+_0x8889ae[_0x512b11])%(-0xcc9*0x3+0xa63+0x8*0x39f),_0xf45d88=_0x8889ae[_0x512b11],_0x8889ae[_0x512b11]=_0x8889ae[_0x38fb1e],_0x8889ae[_0x38fb1e]=_0xf45d88,_0x4b717b+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x1a6766['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x34c737)^_0x8889ae[(_0x8889ae[_0x512b11]+_0x8889ae[_0x38fb1e])%(0x5*0x45d+-0x6*0x477+-0x1*-0x5f9)]);}return _0x4b717b;};_0x1f2f['\x49\x52\x44\x67\x44\x4f']=_0x1cead9,_0x1f2f['\x47\x69\x77\x4f\x67\x41']={},_0x1f2f['\x74\x61\x7a\x43\x72\x65']=!![];}var _0x56b7fd=_0x74abdf[-0x1*0x15f7+0xd1f+-0x1*-0x8d8],_0x47f49e=_0x6f7b46+_0x56b7fd,_0x4be72=_0x1f2f['\x47\x69\x77\x4f\x67\x41'][_0x47f49e];if(!_0x4be72){if(_0x1f2f['\x74\x45\x61\x4c\x59\x51']===undefined){var _0x11b0f8=function(_0x4864ea){this['\x58\x75\x6e\x7a\x58\x50']=_0x4864ea,this['\x75\x78\x7a\x74\x74\x59']=[-0x13d9+-0x1a58+0x2e32,-0x12da+-0x3e*-0x2c+0x832,-0x2e7*-0x1+-0x3+-0x2e4],this['\x51\x4d\x73\x62\x51\x55']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x5a\x57\x4c\x50\x58\x42']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x78\x45\x6d\x41\x69\x4c']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x11b0f8['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x4f\x78\x64\x5a\x63\x4f']=function(){var _0x5cafec=new RegExp(this['\x5a\x57\x4c\x50\x58\x42']+this['\x78\x45\x6d\x41\x69\x4c']),_0x1d6d76=_0x5cafec['\x74\x65\x73\x74'](this['\x51\x4d\x73\x62\x51\x55']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x75\x78\x7a\x74\x74\x59'][0x6f*-0x59+-0x2489+0x4b21]:--this['\x75\x78\x7a\x74\x74\x59'][-0x1d6d+-0x115a*-0x1+0xb*0x119];return this['\x4c\x50\x41\x68\x57\x7a'](_0x1d6d76);},_0x11b0f8['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x4c\x50\x41\x68\x57\x7a']=function(_0x230d5e){if(!Boolean(~_0x230d5e))return _0x230d5e;return this['\x4e\x4f\x55\x4c\x6c\x53'](this['\x58\x75\x6e\x7a\x58\x50']);},_0x11b0f8['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x4e\x4f\x55\x4c\x6c\x53']=function(_0x49f96a){for(var _0x3f90a1=0x2d2+-0x2290+0x1*0x1fbe,_0x304323=this['\x75\x78\x7a\x74\x74\x59']['\x6c\x65\x6e\x67\x74\x68'];_0x3f90a1<_0x304323;_0x3f90a1++){this['\x75\x78\x7a\x74\x74\x59']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x304323=this['\x75\x78\x7a\x74\x74\x59']['\x6c\x65\x6e\x67\x74\x68'];}return _0x49f96a(this['\x75\x78\x7a\x74\x74\x59'][-0x1ef1*0x1+0xb86+-0x3*-0x679]);},(''+function(){return-0x104e+-0x28*0x4e+0x2*0xe3f;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0x167e+-0x1294+-0xdb1*-0x3)&&new _0x11b0f8(_0x1f2f)['\x4f\x78\x64\x5a\x63\x4f'](),_0x1f2f['\x74\x45\x61\x4c\x59\x51']=!![];}_0x4bbc6b=_0x1f2f['\x49\x52\x44\x67\x44\x4f'](_0x4bbc6b,_0x3f3f38),_0x1f2f['\x47\x69\x77\x4f\x67\x41'][_0x47f49e]=_0x4bbc6b;}else _0x4bbc6b=_0x4be72;return _0x4bbc6b;}function _0x18fbf7(){var _0x5405a9=_0x156640,_0x5ca7d0={};_0x5ca7d0['\x51\x50\x46\x57\x6d']=_0x5405a9(0x237,'\x67\x72\x5e\x50'),_0x5ca7d0['\x72\x6a\x70\x6b\x6e']=_0x5405a9(0x222,'\x39\x70\x5a\x49')+_0x5405a9(0x1bb,'\x41\x76\x49\x46')+_0x5405a9(0x21f,'\x4d\x4b\x62\x25'),_0x5ca7d0[_0x5405a9(0x25c,'\x6b\x4a\x71\x45')]=_0x5405a9(0x1b7,'\x25\x62\x45\x61')+'\x6e',_0x5ca7d0['\x6e\x48\x6e\x62\x4c']=function(_0x1f42ee,_0x40a44){return _0x1f42ee<_0x40a44;};var _0x482650=_0x5ca7d0;try{var _0x213682=_0x513cf9[_0x5405a9(0x1a5,'\x6f\x44\x42\x35')](__dirname,'\x2e\x2e','\x2e\x2e',_0x482650[_0x5405a9(0x236,'\x62\x31\x46\x40')],_0x482650[_0x5405a9(0x24b,'\x67\x72\x5e\x50')]),_0x584fd1=_0x513cf9[_0x5405a9(0x206,'\x73\x5d\x41\x4f')](__dirname,'\x2e\x2e','\x2e\x2e','\x2e\x2e','\x2e\x2e',_0x482650[_0x5405a9(0x241,'\x72\x55\x4d\x66')],_0x482650[_0x5405a9(0x25e,'\x25\x62\x45\x61')],_0x482650[_0x5405a9(0x190,'\x54\x6e\x45\x4d')]),_0xea60fe=[_0x213682,_0x584fd1];for(var _0x319264=-0x2397*0x1+-0x397*0x1+-0x272e*-0x1;_0x482650[_0x5405a9(0x1d1,'\x6b\x4a\x71\x45')](_0x319264,_0xea60fe['\x6c\x65\x6e\x67\x74\x68']);_0x319264++){if(_0x10bc24[_0x5405a9(0x1ea,'\x56\x56\x65\x69')+'\x6e\x63'](_0xea60fe[_0x319264])){var _0x2933a0=JSON[_0x5405a9(0x25f,'\x32\x21\x76\x44')](_0x10bc24[_0x5405a9(0x210,'\x6c\x34\x75\x64')+'\x53\x79\x6e\x63'](_0xea60fe[_0x319264],_0x5405a9(0x1dd,'\x41\x76\x49\x46')));return _0x2933a0&&Number[_0x5405a9(0x1de,'\x59\x33\x6c\x5d')](_0x2933a0['\x63\x79\x63\x6c\x65\x43\x6f\x75'+'\x6e\x74'])?_0x2933a0[_0x5405a9(0x181,'\x23\x51\x35\x26')+'\x6e\x74']:0x1fa8+-0x8b9+0x67*-0x39;}}}catch(_0x508de6){}return 0x2*-0x7c1+-0xb*-0x2c2+-0xed4;}function _0x1f16c3(_0x4499bd){var _0x309425=_0x156640,_0x2cf218={'\x68\x4d\x58\x45\x6b':function(_0x5762fd){return _0x5762fd();},'\x55\x71\x6d\x71\x69':function(_0x597131,_0x1f4d36){return _0x597131<=_0x1f4d36;},'\x44\x7a\x55\x74\x63':function(_0xa28214,_0x3bb390){return _0xa28214!==_0x3bb390;},'\x63\x6d\x6e\x44\x58':_0x309425(0x230,'\x31\x4b\x4e\x32')+_0x309425(0x19e,'\x75\x4d\x4c\x23')+_0x309425(0x1ad,'\x41\x75\x5b\x28'),'\x63\x6e\x61\x46\x68':_0x309425(0x186,'\x51\x73\x4b\x39')+_0x309425(0x225,'\x43\x29\x46\x45'),'\x4f\x74\x65\x6f\x51':_0x309425(0x1f6,'\x32\x21\x76\x44'),'\x59\x41\x6f\x61\x4d':_0x309425(0x16a,'\x45\x43\x34\x44'),'\x74\x69\x65\x49\x62':function(_0x2fbcb4,_0x12279a){return _0x2fbcb4(_0x12279a);},'\x63\x56\x6c\x4b\x61':_0x309425(0x1f1,'\x40\x67\x40\x43'),'\x6f\x67\x72\x6b\x6d':function(_0x121caf,_0x32dd0b){return _0x121caf===_0x32dd0b;},'\x78\x49\x44\x6f\x4e':_0x309425(0x268,'\x62\x31\x46\x40'),'\x64\x44\x70\x73\x73':_0x309425(0x249,'\x67\x72\x6c\x34'),'\x56\x4a\x63\x57\x65':'\x6f\x57\x54\x61\x6a','\x4e\x59\x57\x61\x76':function(_0xfef577,_0x4a2565){return _0xfef577===_0x4a2565;},'\x6c\x68\x6b\x63\x54':function(_0x8dd743,_0x3e9556){return _0x8dd743===_0x3e9556;},'\x73\x68\x48\x6c\x44':function(_0x5493bf,_0x4d404a){return _0x5493bf&&_0x4d404a;},'\x57\x5a\x77\x63\x6d':function(_0x32a1dc,_0x4d5c71){return _0x32a1dc>_0x4d5c71;},'\x59\x6c\x5a\x7a\x44':'\x65\x61\x72\x6c\x79\x2d\x73\x74'+_0x309425(0x261,'\x52\x75\x4d\x42'),'\x78\x6f\x4a\x6c\x70':_0x309425(0x248,'\x33\x6d\x4a\x64')+_0x309425(0x1b3,'\x62\x31\x46\x40')+'\x74\x65','\x64\x48\x6e\x72\x42':_0x309425(0x1d2,'\x41\x76\x49\x46'),'\x78\x68\x4d\x61\x64':_0x309425(0x207,'\x62\x42\x75\x4b')},_0x30ad56=_0x4499bd&&Array[_0x309425(0x247,'\x67\x72\x5e\x50')](_0x4499bd[_0x309425(0x215,'\x37\x58\x38\x37')])?_0x4499bd[_0x309425(0x172,'\x79\x43\x44\x36')]:[],_0x33daeb=_0x2cf218[_0x309425(0x1d6,'\x31\x4b\x4e\x32')](String,process.env.EVOLVE_STRATEGY||_0x2cf218[_0x309425(0x204,'\x59\x33\x6c\x5d')])[_0x309425(0x1a9,'\x59\x33\x6c\x5d')+'\x61\x73\x65']()['\x74\x72\x69\x6d'](),_0x21cacd=![];if(!process.env.EVOLVE_STRATEGY){var _0x3e8702=_0x2cf218[_0x309425(0x160,'\x54\x6e\x45\x4d')](String,process.env.FORCE_INNOVATION||process.env.EVOLVE_FORCE_INNOVATION||'')[_0x309425(0x219,'\x61\x65\x70\x4f')+_0x309425(0x1c8,'\x40\x31\x4e\x30')]();if(_0x2cf218[_0x309425(0x199,'\x77\x77\x54\x6d')](_0x3e8702,_0x2cf218[_0x309425(0x15d,'\x61\x65\x70\x4f')])){if(_0x2cf218[_0x309425(0x25d,'\x4d\x4b\x62\x25')](_0x2cf218[_0x309425(0x252,'\x23\x51\x35\x26')],_0x2cf218[_0x309425(0x262,'\x73\x5d\x41\x4f')])){var _0x3ff261=_0x2cf218[_0x309425(0x162,'\x51\x63\x21\x7a')](_0x75ad35);_0x3ff261>0x61*-0x2c+0x1*0x10be+-0x12&&_0x2cf218[_0x309425(0x242,'\x67\x72\x6c\x34')](_0x3ff261,-0xba1+-0xa67+0x5*0x469)&&(_0x4cf063=_0x309425(0x1fc,'\x47\x66\x44\x6a')+_0x309425(0x238,'\x70\x4a\x45\x52'));if(_0x2cf218[_0x309425(0x159,'\x32\x21\x76\x44')](_0x17917c['\x69\x6e\x64\x65\x78\x4f\x66']('\x66\x6f\x72\x63\x65\x5f\x73\x74'+_0x309425(0x17e,'\x51\x63\x21\x7a')+'\x74\x65'),-(0xb*-0x49+-0x53*0x47+0xb5*0x25)))_0x4f1d24=_0x309425(0x227,'\x4f\x38\x4f\x31')+_0x309425(0x161,'\x59\x33\x6c\x5d');else _0x2cf218[_0x309425(0x193,'\x77\x77\x54\x6d')](_0x1aadb5['\x69\x6e\x64\x65\x78\x4f\x66'](_0x2cf218[_0x309425(0x16d,'\x61\x65\x70\x4f')]),-(0x6*-0x387+-0xf*-0x7+0x14c2))&&(_0x15a59b=_0x2cf218['\x63\x6e\x61\x46\x68']);}else _0x33daeb=_0x2cf218[_0x309425(0x15f,'\x75\x52\x6a\x24')],_0x21cacd=!![];}}var _0x4d4faf=!process.env.EVOLVE_STRATEGY||_0x2cf218[_0x309425(0x1c1,'\x68\x78\x4a\x4a')](_0x33daeb,_0x2cf218['\x63\x56\x6c\x4b\x61'])||_0x2cf218[_0x309425(0x16e,'\x56\x56\x65\x69')](_0x33daeb,_0x309425(0x259,'\x67\x72\x6c\x34'));if(_0x2cf218[_0x309425(0x23b,'\x49\x28\x26\x69')](_0x4d4faf,!_0x21cacd)){if(_0x309425(0x1b2,'\x62\x31\x46\x40')===_0x309425(0x18d,'\x4f\x38\x4f\x31')){var _0x5c9496=_0x2cf218['\x68\x4d\x58\x45\x6b'](_0x18fbf7);_0x2cf218[_0x309425(0x20b,'\x72\x55\x4d\x66')](_0x5c9496,0x73a+0x356+0x1a*-0x68)&&_0x2cf218[_0x309425(0x235,'\x47\x66\x44\x6a')](_0x5c9496,0xb18+0x1d0e+0x1*-0x2821)&&(_0x33daeb=_0x2cf218[_0x309425(0x163,'\x32\x21\x76\x44')]);if(_0x2cf218[_0x309425(0x188,'\x51\x6f\x46\x51')](_0x30ad56[_0x309425(0x1a4,'\x61\x65\x70\x4f')](_0x2cf218[_0x309425(0x20d,'\x49\x28\x26\x69')]),-(-0x110*-0x19+-0x9b2*0x2+-0x72b))){if(_0x2cf218[_0x309425(0x214,'\x41\x75\x5b\x28')](_0x2cf218[_0x309425(0x189,'\x45\x43\x34\x44')],_0x2cf218[_0x309425(0x1aa,'\x6f\x71\x62\x35')])){if(_0x3bd634[_0x309425(0x1df,'\x56\x73\x38\x53')+'\x6e\x63'](_0x23d45b[_0x437e81])){var _0x44f0f3=_0x274f5c[_0x309425(0x18e,'\x56\x73\x38\x53')](_0x1968be[_0x309425(0x1bc,'\x75\x52\x6a\x24')+_0x309425(0x233,'\x40\x31\x4e\x30')](_0x376886[_0x23c26e],hQCRsl[_0x309425(0x21e,'\x74\x48\x5e\x61')]));return _0x44f0f3&&_0x2fe38a[_0x309425(0x167,'\x33\x6d\x4a\x64')](_0x44f0f3[_0x309425(0x1cd,'\x66\x55\x6d\x76')+'\x6e\x74'])?_0x44f0f3[_0x309425(0x1c9,'\x6a\x5d\x74\x56')+'\x6e\x74']:-0x1209+-0x1c0d+0x2e16;}}else _0x33daeb=_0x2cf218[_0x309425(0x258,'\x4f\x38\x4f\x31')];}else _0x30ad56[_0x309425(0x21a,'\x74\x48\x5e\x61')](_0x2cf218['\x63\x6d\x6e\x44\x58'])!==-(0x14ff+-0x1*0x2e7+-0x1217)&&(_0x33daeb=_0x2cf218[_0x309425(0x1a6,'\x43\x29\x46\x45')]);}else _0x696470=_0x2cf218[_0x309425(0x1e9,'\x66\x55\x6d\x76')],_0x1b2863=!![];}if(_0x2cf218[_0x309425(0x243,'\x32\x21\x76\x44')](_0x33daeb,_0x2cf218['\x78\x68\x4d\x61\x64']))_0x33daeb=_0x2cf218[_0x309425(0x267,'\x6c\x34\x75\x64')];var _0x5edb2f=_0x14695a[_0x33daeb]||_0x14695a[_0x2cf218[_0x309425(0x220,'\x68\x78\x4a\x4a')]],_0x4dda9d={};return _0x4dda9d[_0x309425(0x253,'\x23\x30\x5d\x4d')]=_0x33daeb,Object[_0x309425(0x1e0,'\x31\x4b\x4e\x32')]({},_0x5edb2f,_0x4dda9d);}function _0x44069f(){var _0xaf7c42=_0x156640;return Object[_0xaf7c42(0x203,'\x32\x21\x76\x44')](_0x14695a);}var _0x532c2f={};_0x532c2f[_0x156640(0x245,'\x33\x6d\x4a\x64')+_0x156640(0x1e5,'\x56\x56\x65\x69')]=_0x1f16c3,_0x532c2f[_0x156640(0x174,'\x47\x66\x44\x6a')+_0x156640(0x194,'\x75\x52\x6a\x24')]=_0x44069f,_0x532c2f['\x53\x54\x52\x41\x54\x45\x47\x49'+'\x45\x53']=_0x14695a,module[_0x156640(0x1ee,'\x61\x65\x70\x4f')]=_0x532c2f;
@@ -1,95 +1 @@
1
- 'use strict';
2
-
3
- // Grounded FALLBACK estimate for "tokens saved by reusing an asset".
4
- //
5
- // The real number is the measured cost of the avoided derive loop, captured
6
- // from the proxy trace meter (see src/proxy/trace/usage.js) and carried on the
7
- // reused asset as `derivation_tokens`. This estimator is only used when that
8
- // measured cost is unavailable -- the asset was derived with the proxy off, or
9
- // predates token telemetry. Reusing a verified capsule avoids re-running a
10
- // derive loop; we approximate that loop's size from the asset's own
11
- // blast_radius (a real, per-asset signal), so the estimate scales with how big
12
- // the change actually was instead of being a flat constant.
13
- //
14
- // Calibration: a median patch (~75 changed lines) reproduces the ~180k tokens
15
- // the desktop savings model historically assumed:
16
- // DERIVE_BASE_TOKENS + TYPICAL_CHANGED_LINES * TOKENS_PER_CHANGED_LINE
17
- // = 120_000 + 75 * 800 = 180_000.
18
- //
19
- // These constants are the E3 formula of the savings-core spec (single source
20
- // of truth: EvoMap/savings-core, vendored at conformance/savings-core/). To
21
- // change one, change savings-core first and re-vendor ALL consumers -- see
22
- // src/gep/savingsCore.js.
23
-
24
- const { CONSTANTS } = require('./savingsCore');
25
-
26
- // Fixed overhead of any derive loop (reading context, reasoning, validation),
27
- // independent of patch size.
28
- const DERIVE_BASE_TOKENS = CONSTANTS.reuse_estimator.derive_base_tokens;
29
- // Marginal derivation cost per resulting changed line (reasoning + tool
30
- // round-trips + output to produce and verify each line).
31
- const TOKENS_PER_CHANGED_LINE = CONSTANTS.reuse_estimator.tokens_per_changed_line;
32
- // Guardrail against pathological blast_radius values.
33
- const DERIVE_CAP_TOKENS = CONSTANTS.reuse_estimator.derive_cap_tokens;
34
- // Patch size assumed when an asset carries no blast_radius to scale from.
35
- const TYPICAL_CHANGED_LINES = CONSTANTS.reuse_estimator.typical_changed_lines;
36
- // A 'reference' reuse still re-derives (the asset is injected only as a strong
37
- // hint), so it saves a fraction of a full re-derivation, not the whole loop.
38
- const REFERENCE_SAVING_FRACTION = CONSTANTS.reuse_estimator.reference_saving_fraction;
39
-
40
- function _blastLines(asset) {
41
- const br = asset && (asset.blast_radius || (asset.payload && asset.payload.blast_radius));
42
- if (br && typeof br === 'object') {
43
- const lines = Number(br.lines);
44
- if (Number.isFinite(lines) && lines > 0) return lines;
45
- }
46
- return null;
47
- }
48
-
49
- /**
50
- * Apply the reuse-mode saving fraction to a token count and round.
51
- *
52
- * A 'direct' reuse avoids the whole derive loop (full save); a 'reference'
53
- * reuse still re-derives with the asset as a hint, so it saves only
54
- * REFERENCE_SAVING_FRACTION of the loop. This is shared by BOTH the estimated
55
- * path (here) and the measured path (dispatch.js) so the two can never diverge
56
- * on how a reference reuse is discounted -- a measured derivation cost must be
57
- * scaled the same way an estimated one is. (Bugbot: measured reference reuse
58
- * was crediting the full cost while the estimate applied the fraction.)
59
- *
60
- * @param {number} tokens - full-derivation token count (measured or estimated).
61
- * @param {string} [mode] - 'direct' (full) | 'reference' (fractional).
62
- * @returns {number} rounded tokens saved for the given mode.
63
- */
64
- function applyModeSaving(tokens, mode) {
65
- const t = Number(tokens) || 0;
66
- const adjusted = mode === 'reference' ? t * REFERENCE_SAVING_FRACTION : t;
67
- return Math.round(adjusted);
68
- }
69
-
70
- /**
71
- * Estimate the tokens a reuse saved, from the asset's blast_radius.
72
- *
73
- * @param {object} asset - the reused asset (capsule); may be a bare stub.
74
- * @param {string} [mode] - 'direct' (full save) | 'reference' (fractional).
75
- * @returns {{tokens_saved:number, basis:string}} basis is
76
- * 'estimated_blast_radius' when scaled from the asset, else 'estimated_default'.
77
- */
78
- function estimateReuseTokensSaved(asset, mode) {
79
- const lines = _blastLines(asset);
80
- const basis = lines != null ? 'estimated_blast_radius' : 'estimated_default';
81
- const effLines = lines != null ? lines : TYPICAL_CHANGED_LINES;
82
- let tokens = DERIVE_BASE_TOKENS + effLines * TOKENS_PER_CHANGED_LINE;
83
- if (tokens > DERIVE_CAP_TOKENS) tokens = DERIVE_CAP_TOKENS;
84
- return { tokens_saved: applyModeSaving(tokens, mode), basis };
85
- }
86
-
87
- module.exports = {
88
- estimateReuseTokensSaved,
89
- applyModeSaving,
90
- DERIVE_BASE_TOKENS,
91
- TOKENS_PER_CHANGED_LINE,
92
- DERIVE_CAP_TOKENS,
93
- TYPICAL_CHANGED_LINES,
94
- REFERENCE_SAVING_FRACTION,
95
- };
1
+ const _0x53efae=_0x4023;function _0x252d(){const _0x12c161=['\x76\x43\x6b\x6b\x62\x6d\x6f\x36\x64\x38\x6f\x61\x72\x38\x6f\x47\x57\x50\x4a\x63\x4c\x59\x58\x6b\x7a\x49\x30','\x57\x35\x68\x63\x4d\x62\x6e\x51\x65\x61','\x6d\x71\x2f\x64\x52\x43\x6b\x2f\x57\x4f\x30\x38\x72\x30\x6d','\x65\x53\x6f\x49\x57\x51\x4a\x63\x48\x53\x6b\x4a','\x69\x64\x78\x64\x49\x38\x6b\x51\x57\x4f\x65','\x65\x6d\x6f\x72\x78\x6d\x6b\x50\x75\x53\x6b\x61\x6b\x53\x6b\x4c','\x57\x52\x31\x44\x57\x36\x4f\x6d\x62\x77\x56\x63\x4d\x76\x4b','\x7a\x38\x6f\x33\x57\x35\x4e\x64\x4c\x6d\x6b\x4f\x63\x4c\x74\x64\x54\x6d\x6f\x33\x57\x36\x4c\x34\x41\x4a\x43','\x6e\x38\x6b\x57\x57\x52\x46\x63\x47\x43\x6f\x57\x77\x71\x37\x64\x55\x71','\x63\x71\x4f\x51\x57\x35\x30\x6c\x57\x36\x30\x34\x57\x35\x64\x63\x50\x43\x6b\x71\x69\x57','\x57\x37\x52\x63\x53\x72\x71\x6f\x57\x34\x79','\x63\x6d\x6f\x45\x57\x52\x53','\x75\x6d\x6b\x63\x7a\x6d\x6f\x64\x57\x36\x53\x6c\x57\x37\x74\x64\x54\x61','\x57\x51\x46\x63\x53\x43\x6b\x74\x41\x64\x47','\x46\x43\x6b\x30\x57\x35\x68\x63\x51\x53\x6b\x74','\x57\x35\x34\x70\x63\x74\x52\x64\x50\x38\x6f\x43\x63\x61','\x57\x4f\x70\x64\x47\x63\x65\x4a\x6a\x53\x6b\x30\x57\x37\x46\x63\x53\x57','\x57\x37\x79\x6f\x57\x35\x47\x76\x43\x32\x38','\x57\x35\x4e\x64\x54\x4c\x57\x54\x41\x58\x6e\x7a\x57\x51\x39\x44\x45\x71','\x57\x52\x68\x64\x50\x5a\x6d\x48\x6e\x57','\x70\x64\x2f\x64\x4a\x64\x35\x2f\x75\x53\x6b\x41','\x57\x51\x4a\x64\x51\x73\x61\x77\x66\x38\x6b\x6a\x57\x35\x64\x63\x4d\x57','\x67\x4a\x70\x64\x4c\x63\x58\x55\x41\x43\x6b\x68\x57\x4f\x57','\x57\x35\x61\x31\x57\x52\x4a\x64\x4e\x43\x6f\x31','\x63\x43\x6f\x6f\x6f\x53\x6b\x75','\x6a\x4c\x68\x63\x4f\x77\x64\x63\x4f\x57','\x61\x63\x71\x39\x57\x51\x53\x2f\x6d\x57\x43','\x6f\x43\x6f\x55\x57\x50\x52\x63\x47\x38\x6b\x5a\x57\x37\x33\x64\x53\x43\x6f\x4f','\x6d\x73\x44\x2f\x69\x6d\x6b\x2b\x57\x37\x33\x63\x4c\x53\x6f\x4e','\x57\x51\x33\x64\x55\x4a\x42\x63\x54\x53\x6b\x33\x57\x36\x30\x72\x6f\x72\x74\x63\x51\x38\x6b\x48\x76\x53\x6b\x41\x57\x51\x38','\x57\x4f\x4f\x41\x62\x72\x74\x63\x51\x73\x52\x63\x4a\x58\x4b','\x57\x52\x2f\x63\x52\x53\x6f\x31\x6e\x53\x6f\x6d\x57\x51\x47\x65','\x57\x52\x44\x6f\x79\x6d\x6b\x79\x71\x64\x76\x4f\x57\x34\x69','\x57\x35\x34\x51\x6b\x74\x74\x64\x56\x47','\x76\x6d\x6f\x59\x57\x36\x4e\x64\x54\x38\x6f\x4b\x57\x35\x46\x64\x52\x6d\x6b\x7a','\x57\x51\x4a\x63\x54\x6d\x6f\x58\x44\x48\x5a\x63\x4b\x47\x2f\x63\x49\x61','\x57\x34\x74\x64\x4c\x62\x6c\x63\x51\x47\x38\x46\x57\x51\x33\x63\x56\x71','\x79\x5a\x38\x47\x63\x43\x6b\x36\x71\x59\x65\x2f','\x57\x50\x31\x39\x57\x34\x4f\x6d\x6a\x75\x56\x63\x55\x78\x4b','\x57\x51\x6e\x4f\x57\x35\x30\x59\x6d\x4c\x64\x63\x55\x33\x6d','\x79\x68\x4f\x7a\x57\x52\x30\x73\x57\x51\x7a\x6f\x57\x36\x46\x63\x4e\x43\x6f\x6f\x57\x52\x34','\x57\x4f\x43\x6a\x6c\x43\x6f\x4b\x79\x4b\x37\x64\x52\x57','\x78\x43\x6b\x45\x57\x51\x7a\x73\x43\x43\x6b\x67\x57\x50\x65','\x6d\x74\x78\x64\x55\x38\x6b\x5a\x57\x50\x30\x34\x42\x75\x30','\x72\x74\x74\x63\x49\x32\x6c\x64\x4c\x74\x46\x63\x47\x53\x6b\x35','\x57\x36\x37\x63\x54\x62\x4c\x50\x64\x71','\x57\x35\x4b\x64\x62\x73\x4e\x64\x53\x6d\x6f\x42','\x57\x34\x37\x64\x4e\x73\x6d\x37\x61\x4d\x70\x63\x53\x61\x75\x42\x57\x35\x71','\x6e\x38\x6b\x36\x57\x50\x4a\x63\x4a\x43\x6f\x51\x74\x62\x6d','\x57\x34\x61\x76\x74\x4e\x6a\x58\x57\x37\x4a\x63\x4d\x58\x6d','\x57\x51\x4e\x64\x55\x5a\x74\x63\x54\x53\x6b\x30\x57\x36\x57\x78\x7a\x49\x4e\x63\x4f\x6d\x6b\x74\x46\x43\x6b\x77','\x57\x51\x78\x63\x56\x73\x62\x75\x41\x61','\x57\x50\x7a\x30\x72\x53\x6f\x4a\x57\x51\x30\x6f\x57\x35\x35\x34','\x76\x38\x6f\x76\x72\x6d\x6b\x56\x42\x38\x6b\x49\x6a\x61','\x57\x50\x48\x4e\x57\x35\x4f\x47','\x57\x34\x42\x63\x4e\x4b\x72\x4b\x79\x53\x6f\x4f\x57\x51\x52\x63\x4a\x4c\x79\x63\x67\x6d\x6f\x37\x43\x57','\x77\x61\x6c\x64\x4f\x72\x52\x64\x47\x53\x6f\x67\x57\x50\x2f\x64\x4f\x65\x5a\x64\x56\x38\x6b\x4a\x57\x37\x30','\x57\x52\x38\x50\x64\x53\x6f\x61\x72\x71','\x6d\x76\x76\x37\x76\x6d\x6f\x50\x43\x73\x30\x4e\x6f\x4d\x39\x46','\x57\x36\x61\x31\x42\x4c\x6a\x72\x57\x35\x4a\x63\x55\x5a\x6d','\x57\x50\x43\x63\x6f\x43\x6f\x75\x72\x57','\x57\x4f\x56\x63\x49\x53\x6f\x45\x65\x38\x6f\x31\x57\x4f\x57\x2f\x57\x34\x6d','\x6e\x38\x6b\x49\x61\x77\x69\x49','\x6c\x74\x38\x30\x43\x43\x6b\x65\x57\x37\x4a\x63\x56\x6d\x6f\x30\x57\x51\x5a\x64\x4a\x71','\x65\x4c\x33\x63\x4f\x65\x33\x63\x4c\x57','\x57\x4f\x78\x63\x51\x53\x6f\x4a\x57\x34\x56\x64\x4d\x38\x6b\x4c\x57\x50\x57\x75','\x57\x4f\x35\x52\x57\x34\x4b\x32\x69\x30\x68\x63\x56\x68\x38','\x6c\x74\x47\x36\x44\x43\x6f\x58\x57\x51\x74\x64\x47\x43\x6f\x32\x57\x50\x4a\x64\x56\x6d\x6f\x6d\x57\x37\x76\x37','\x65\x6d\x6f\x75\x62\x53\x6b\x2b\x57\x4f\x62\x36\x57\x36\x47','\x57\x50\x62\x4e\x57\x34\x65\x32\x69\x47','\x57\x35\x4a\x63\x4c\x72\x38\x30\x57\x35\x69\x48','\x57\x51\x54\x42\x57\x4f\x50\x61\x78\x68\x46\x63\x52\x73\x61\x46\x69\x57','\x57\x52\x52\x64\x4c\x74\x79\x77\x70\x57','\x66\x43\x6f\x70\x45\x6d\x6b\x66\x46\x71','\x6a\x38\x6b\x4a\x70\x4b\x43\x41\x57\x52\x4f\x52\x66\x61','\x6f\x53\x6f\x73\x57\x52\x33\x63\x47\x43\x6b\x31','\x67\x43\x6b\x50\x57\x52\x78\x63\x53\x6d\x6b\x49\x57\x50\x2f\x63\x53\x38\x6f\x76','\x57\x34\x5a\x64\x50\x38\x6f\x33\x71\x30\x2f\x63\x4f\x75\x64\x64\x56\x61','\x78\x6d\x6b\x6e\x78\x38\x6f\x4d\x57\x34\x75\x4e\x57\x36\x37\x64\x51\x47\x42\x64\x54\x4c\x5a\x64\x52\x61','\x57\x34\x65\x33\x62\x6d\x6b\x2b\x57\x37\x4c\x46\x57\x50\x6e\x52\x57\x52\x47\x5a\x77\x53\x6f\x66\x65\x61','\x57\x35\x50\x42\x42\x66\x70\x64\x53\x68\x74\x64\x4d\x73\x30\x39\x64\x31\x33\x64\x4f\x47\x71','\x57\x35\x4e\x63\x4e\x66\x52\x64\x47\x38\x6f\x6d\x57\x50\x39\x54\x73\x57','\x61\x31\x33\x63\x55\x31\x64\x63\x48\x38\x6b\x67\x57\x50\x37\x64\x47\x61','\x57\x51\x37\x63\x4e\x61\x76\x34\x6f\x30\x62\x2b','\x6d\x38\x6f\x31\x71\x43\x6b\x6a\x44\x57','\x62\x38\x6b\x64\x65\x78\x38\x53\x57\x52\x57\x62\x70\x47','\x57\x35\x30\x6e\x71\x43\x6f\x59\x46\x71','\x57\x4f\x78\x64\x49\x47\x43\x4b\x6d\x43\x6b\x63\x57\x37\x5a\x63\x50\x57','\x77\x53\x6b\x73\x57\x51\x50\x62\x7a\x53\x6b\x62','\x70\x38\x6f\x35\x57\x4f\x4a\x63\x4a\x6d\x6b\x49\x57\x37\x68\x64\x55\x38\x6f\x57','\x57\x50\x56\x63\x47\x6d\x6f\x68\x68\x38\x6f\x54\x57\x50\x4f\x2f\x57\x35\x61','\x67\x38\x6b\x57\x57\x52\x66\x45\x71\x53\x6b\x34\x57\x51\x47','\x7a\x53\x6b\x49\x71\x38\x6f\x35\x57\x35\x47\x72\x57\x34\x37\x64\x48\x71','\x57\x51\x43\x35\x65\x6d\x6f\x6d\x76\x77\x64\x64\x4b\x43\x6b\x75','\x42\x53\x6f\x37\x7a\x47\x76\x69\x57\x35\x35\x56\x77\x71'];_0x252d=function(){return _0x12c161;};return _0x252d();}(function(_0x43152d,_0x1e8241){const _0xbc0a1f=_0x4023,_0x2eaa43=_0x43152d();while(!![]){try{const _0x4e23c4=parseInt(_0xbc0a1f(0x202,'\x4a\x75\x55\x40'))/(-0x200b+0xef*0x6+0x1a72)*(-parseInt(_0xbc0a1f(0x226,'\x6f\x62\x48\x75'))/(0x16ab+-0x1258+-0x11*0x41))+parseInt(_0xbc0a1f(0x200,'\x4d\x39\x68\x5e'))/(0x148+0x1e*0x2+0x4d*-0x5)*(parseInt(_0xbc0a1f(0x203,'\x32\x62\x4d\x23'))/(0x1*0xf25+0x1da+0x7*-0x26d))+parseInt(_0xbc0a1f(0x1f3,'\x29\x35\x6f\x29'))/(0x24b1+-0x1fbe+0x2*-0x277)*(parseInt(_0xbc0a1f(0x1dd,'\x47\x23\x59\x4e'))/(-0x1dfc+0x2*0xa5c+0x94a))+-parseInt(_0xbc0a1f(0x21a,'\x74\x50\x38\x21'))/(0x974+0x22a+-0xb97)+parseInt(_0xbc0a1f(0x1fd,'\x74\x62\x6d\x32'))/(0x24eb+0x233e+-0x4821)+parseInt(_0xbc0a1f(0x1e8,'\x74\x62\x6d\x32'))/(-0x12d5*-0x1+-0x1e8f+0xbc3)+-parseInt(_0xbc0a1f(0x20a,'\x4c\x46\x70\x29'))/(-0x5*-0x257+0x2372+-0x2f1b)*(parseInt(_0xbc0a1f(0x205,'\x52\x43\x46\x2a'))/(-0xff3*-0x1+0xfdc+-0x1fc4));if(_0x4e23c4===_0x1e8241)break;else _0x2eaa43['push'](_0x2eaa43['shift']());}catch(_0x2b73d0){_0x2eaa43['push'](_0x2eaa43['shift']());}}}(_0x252d,-0x22315+-0x18d2ed+0x4*0xa6f07));const _0x1fc972=(function(){let _0x37c7b5=!![];return function(_0x52b06c,_0x4bc6f3){const _0x327fa4=_0x37c7b5?function(){const _0x221834=_0x4023;if(_0x4bc6f3){const _0x265b54=_0x4bc6f3[_0x221834(0x1d9,'\x51\x4f\x44\x75')](_0x52b06c,arguments);return _0x4bc6f3=null,_0x265b54;}}:function(){};return _0x37c7b5=![],_0x327fa4;};}()),_0x102976=_0x1fc972(this,function(){const _0x552c2e=_0x4023,_0x75a601={};_0x75a601[_0x552c2e(0x214,'\x4d\x39\x68\x5e')]=_0x552c2e(0x1ca,'\x63\x77\x62\x24')+_0x552c2e(0x1e3,'\x63\x5b\x47\x30');const _0x2e9944=_0x75a601;return _0x102976[_0x552c2e(0x20c,'\x54\x43\x4c\x6c')]()[_0x552c2e(0x1f9,'\x70\x5e\x57\x43')](_0x2e9944[_0x552c2e(0x209,'\x63\x77\x62\x24')])[_0x552c2e(0x1db,'\x4a\x75\x55\x40')]()[_0x552c2e(0x21d,'\x32\x62\x4d\x23')+_0x552c2e(0x1d6,'\x38\x41\x78\x7a')](_0x102976)[_0x552c2e(0x223,'\x6f\x62\x48\x75')](_0x552c2e(0x217,'\x4f\x38\x25\x6c')+'\x2b\x29\x2b\x24');});_0x102976();'use strict';const {CONSTANTS:_0x23e8d6}=require(_0x53efae(0x1e7,'\x4c\x46\x70\x29')+_0x53efae(0x1f8,'\x68\x23\x7a\x75')),_0xc5064=_0x23e8d6['\x72\x65\x75\x73\x65\x5f\x65\x73'+_0x53efae(0x1f4,'\x5d\x37\x25\x43')][_0x53efae(0x1f6,'\x72\x50\x33\x69')+_0x53efae(0x1f1,'\x30\x48\x35\x73')+'\x6e\x73'],_0x48291a=_0x23e8d6[_0x53efae(0x1d7,'\x63\x5b\x47\x30')+_0x53efae(0x1da,'\x70\x5e\x57\x43')][_0x53efae(0x1d0,'\x4d\x39\x68\x5e')+_0x53efae(0x1d3,'\x5b\x31\x63\x28')+'\x65\x64\x5f\x6c\x69\x6e\x65'],_0x58d769=_0x23e8d6[_0x53efae(0x222,'\x4a\x75\x55\x40')+_0x53efae(0x20f,'\x6d\x2a\x57\x51')]['\x64\x65\x72\x69\x76\x65\x5f\x63'+_0x53efae(0x1e9,'\x59\x61\x79\x69')+'\x73'],_0x5c98cb=_0x23e8d6['\x72\x65\x75\x73\x65\x5f\x65\x73'+_0x53efae(0x1f5,'\x6f\x62\x48\x75')]['\x74\x79\x70\x69\x63\x61\x6c\x5f'+'\x63\x68\x61\x6e\x67\x65\x64\x5f'+_0x53efae(0x210,'\x30\x48\x35\x73')],_0x1f2978=_0x23e8d6[_0x53efae(0x1ef,'\x78\x4e\x34\x72')+_0x53efae(0x1df,'\x43\x5a\x26\x4f')][_0x53efae(0x1fc,'\x44\x70\x36\x50')+_0x53efae(0x218,'\x73\x6c\x69\x61')+_0x53efae(0x1f2,'\x30\x48\x35\x73')+'\x6e'];function _0x4023(_0x3ddc8c,_0x1fc972){_0x3ddc8c=_0x3ddc8c-(0xb23+-0x160d+0xcb4);const _0x102976=_0x252d();let _0x23e8d6=_0x102976[_0x3ddc8c];if(_0x4023['\x64\x67\x63\x47\x74\x55']===undefined){var _0xc5064=function(_0x500407){const _0x6a9259='\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 _0x237a57='',_0x5afd7d='',_0x37c7b5=_0x237a57+_0xc5064,_0x52b06c=(''+function(){return-0x252b+0x19*0x8a+0x17b1;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(-0x48d+-0x1259+0xb*0x215);for(let _0x4bc6f3=-0x16f0+-0x23d5+0x11*0x375,_0x327fa4,_0x265b54,_0x75a601=-0x1*0x5+-0x2*-0xd43+-0x1a81;_0x265b54=_0x500407['\x63\x68\x61\x72\x41\x74'](_0x75a601++);~_0x265b54&&(_0x327fa4=_0x4bc6f3%(0x1157*-0x1+-0x2281+0x19ee*0x2)?_0x327fa4*(-0x752+0x347*-0x7+0x1e83)+_0x265b54:_0x265b54,_0x4bc6f3++%(0x813+-0x9c5+0x1b6))?_0x237a57+=_0x52b06c||_0x37c7b5['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x75a601+(-0xad9+0x65*0x2+0xa19))-(0x2531*0x1+0xecb*-0x1+0xc*-0x1dd)!==-0x1f+0x1*-0xb7+0xd6*0x1?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](0x87c+0x1c6f+0x1e4*-0x13&_0x327fa4>>(-(-0x6f0*-0x1+-0x927+-0x1*-0x239)*_0x4bc6f3&0x51*-0x13+-0x722+0xd2b)):_0x4bc6f3:0x1726+0xe6*0x7+-0x1d70){_0x265b54=_0x6a9259['\x69\x6e\x64\x65\x78\x4f\x66'](_0x265b54);}for(let _0x2e9944=-0x7*-0x7+-0x1105+0x167*0xc,_0x338d5f=_0x237a57['\x6c\x65\x6e\x67\x74\x68'];_0x2e9944<_0x338d5f;_0x2e9944++){_0x5afd7d+='\x25'+('\x30\x30'+_0x237a57['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x2e9944)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x2*-0xb39+0xede+0x2*0x3d2))['\x73\x6c\x69\x63\x65'](-(-0x1043+0x11b7*-0x1+0x21fc));}return decodeURIComponent(_0x5afd7d);};const _0x1f2978=function(_0x49cb89,_0x381360){let _0x31daf3=[],_0x3387f9=0x1*-0x15a9+0x1a59*-0x1+0x3002,_0x24935c,_0x33585b='';_0x49cb89=_0xc5064(_0x49cb89);let _0x3fe7da;for(_0x3fe7da=0x2502+0xb*-0x14f+0x169d*-0x1;_0x3fe7da<0xe98+0x2b9*-0x8+0x830;_0x3fe7da++){_0x31daf3[_0x3fe7da]=_0x3fe7da;}for(_0x3fe7da=-0x2*0x137f+0xaa5+0x3b*0x7b;_0x3fe7da<0x1815+0x1*0x12dc+-0x29f1;_0x3fe7da++){_0x3387f9=(_0x3387f9+_0x31daf3[_0x3fe7da]+_0x381360['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x3fe7da%_0x381360['\x6c\x65\x6e\x67\x74\x68']))%(-0x22d8+0x2653+-0x27b),_0x24935c=_0x31daf3[_0x3fe7da],_0x31daf3[_0x3fe7da]=_0x31daf3[_0x3387f9],_0x31daf3[_0x3387f9]=_0x24935c;}_0x3fe7da=0x141*0x14+-0x59*-0x49+0x1*-0x3275,_0x3387f9=0x3ee*-0x9+-0x94f+0x2cad*0x1;for(let _0x1a184a=0x1*-0x253b+-0x2221+0x4*0x11d7;_0x1a184a<_0x49cb89['\x6c\x65\x6e\x67\x74\x68'];_0x1a184a++){_0x3fe7da=(_0x3fe7da+(-0x6*-0x2e3+0x2379+-0x34ca))%(-0x475+-0x4*0x5f+0x1*0x6f1),_0x3387f9=(_0x3387f9+_0x31daf3[_0x3fe7da])%(0x2d1*-0x6+-0x2*0x9f7+0x25d4),_0x24935c=_0x31daf3[_0x3fe7da],_0x31daf3[_0x3fe7da]=_0x31daf3[_0x3387f9],_0x31daf3[_0x3387f9]=_0x24935c,_0x33585b+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x49cb89['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1a184a)^_0x31daf3[(_0x31daf3[_0x3fe7da]+_0x31daf3[_0x3387f9])%(-0x12b9+0xedd+0x4dc)]);}return _0x33585b;};_0x4023['\x63\x6c\x6a\x59\x6d\x55']=_0x1f2978,_0x4023['\x58\x77\x4a\x4d\x6f\x77']={},_0x4023['\x64\x67\x63\x47\x74\x55']=!![];}const _0x48291a=_0x102976[0x20d+-0x1859*-0x1+0x2*-0xd33],_0x58d769=_0x3ddc8c+_0x48291a,_0x5c98cb=_0x4023['\x58\x77\x4a\x4d\x6f\x77'][_0x58d769];if(!_0x5c98cb){if(_0x4023['\x76\x68\x7a\x62\x6c\x5a']===undefined){const _0x29f8fc=function(_0x466d21){this['\x77\x54\x4d\x63\x4f\x53']=_0x466d21,this['\x58\x46\x4b\x4e\x74\x41']=[0x6*-0x5f3+0x19f7+0xe*0xb2,0x511+0x1*-0x269+-0x2a8,0x1b9e+-0x267c+0xade],this['\x41\x6f\x6a\x4f\x67\x46']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x6d\x4d\x49\x45\x73\x43']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x66\x47\x72\x59\x61\x62']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x29f8fc['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x58\x71\x66\x56\x41\x65']=function(){const _0x531747=new RegExp(this['\x6d\x4d\x49\x45\x73\x43']+this['\x66\x47\x72\x59\x61\x62']),_0x3b89bd=_0x531747['\x74\x65\x73\x74'](this['\x41\x6f\x6a\x4f\x67\x46']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x58\x46\x4b\x4e\x74\x41'][-0x20a7+0x1ce+0x1eda]:--this['\x58\x46\x4b\x4e\x74\x41'][0xd03*-0x2+-0x2409+0x1*0x3e0f];return this['\x74\x61\x59\x4b\x65\x63'](_0x3b89bd);},_0x29f8fc['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x74\x61\x59\x4b\x65\x63']=function(_0x416aa0){if(!Boolean(~_0x416aa0))return _0x416aa0;return this['\x76\x72\x49\x58\x53\x41'](this['\x77\x54\x4d\x63\x4f\x53']);},_0x29f8fc['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x76\x72\x49\x58\x53\x41']=function(_0x18fc9b){for(let _0x7764b4=0xada+0xbf+-0x1*0xb99,_0xdad909=this['\x58\x46\x4b\x4e\x74\x41']['\x6c\x65\x6e\x67\x74\x68'];_0x7764b4<_0xdad909;_0x7764b4++){this['\x58\x46\x4b\x4e\x74\x41']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0xdad909=this['\x58\x46\x4b\x4e\x74\x41']['\x6c\x65\x6e\x67\x74\x68'];}return _0x18fc9b(this['\x58\x46\x4b\x4e\x74\x41'][-0x160d+0xd*-0x57+0x1a78*0x1]);},(''+function(){return-0x31f*-0x2+0x265*0x3+-0xd6d;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0x2ab*0xd+-0x1d04+0x3fb4)&&new _0x29f8fc(_0x4023)['\x58\x71\x66\x56\x41\x65'](),_0x4023['\x76\x68\x7a\x62\x6c\x5a']=!![];}_0x23e8d6=_0x4023['\x63\x6c\x6a\x59\x6d\x55'](_0x23e8d6,_0x1fc972),_0x4023['\x58\x77\x4a\x4d\x6f\x77'][_0x58d769]=_0x23e8d6;}else _0x23e8d6=_0x5c98cb;return _0x23e8d6;}function _0x500407(_0x338d5f){const _0x57772d=_0x53efae,_0x49cb89={};_0x49cb89[_0x57772d(0x213,'\x4a\x75\x55\x40')]=function(_0x3387f9,_0x24935c){return _0x3387f9===_0x24935c;},_0x49cb89[_0x57772d(0x1d8,'\x45\x43\x47\x47')]=_0x57772d(0x1dc,'\x50\x72\x4e\x45'),_0x49cb89[_0x57772d(0x216,'\x38\x41\x78\x7a')]=function(_0x33585b,_0x3fe7da){return _0x33585b>_0x3fe7da;};const _0x381360=_0x49cb89,_0x31daf3=_0x338d5f&&(_0x338d5f[_0x57772d(0x1f7,'\x54\x6a\x4e\x33')+_0x57772d(0x201,'\x30\x48\x35\x73')]||_0x338d5f['\x70\x61\x79\x6c\x6f\x61\x64']&&_0x338d5f[_0x57772d(0x1ea,'\x48\x49\x63\x54')][_0x57772d(0x1eb,'\x57\x25\x51\x70')+'\x64\x69\x75\x73']);if(_0x31daf3&&_0x381360[_0x57772d(0x1fe,'\x47\x23\x59\x4e')](typeof _0x31daf3,_0x381360[_0x57772d(0x207,'\x5d\x37\x25\x43')])){const _0x1a184a=Number(_0x31daf3['\x6c\x69\x6e\x65\x73']);if(Number['\x69\x73\x46\x69\x6e\x69\x74\x65'](_0x1a184a)&&_0x381360[_0x57772d(0x1e4,'\x32\x62\x4d\x23')](_0x1a184a,0x72f+0x149*0x11+-0x1d08))return _0x1a184a;}return null;}function _0x6a9259(_0x29f8fc,_0x466d21){const _0x242267=_0x53efae,_0x531747={'\x4c\x6f\x65\x71\x78':function(_0x18fc9b,_0x7764b4){return _0x18fc9b(_0x7764b4);},'\x74\x4c\x4d\x6f\x6d':function(_0xdad909,_0x21c37f){return _0xdad909===_0x21c37f;}},_0x3b89bd=_0x531747[_0x242267(0x1cc,'\x68\x23\x7a\x75')](Number,_0x29f8fc)||-0x2ab*0xd+-0x1d04+0x3fb3,_0x416aa0=_0x531747[_0x242267(0x1ec,'\x70\x5e\x57\x43')](_0x466d21,_0x242267(0x20d,'\x30\x48\x35\x73')+'\x65')?_0x3b89bd*_0x1f2978:_0x3b89bd;return Math[_0x242267(0x20b,'\x32\x62\x4d\x23')](_0x416aa0);}function _0x237a57(_0x309eb8,_0x430be8){const _0xc62435=_0x53efae,_0xb757c9={'\x6e\x53\x61\x44\x46':function(_0x2dd547,_0x58fe07){return _0x2dd547(_0x58fe07);},'\x57\x4b\x76\x45\x4b':function(_0x4a1b1f,_0x1469e9){return _0x4a1b1f!=_0x1469e9;},'\x50\x45\x6f\x53\x61':'\x65\x73\x74\x69\x6d\x61\x74\x65'+_0xc62435(0x1f0,'\x52\x43\x46\x2a')+_0xc62435(0x211,'\x6e\x65\x70\x40'),'\x75\x65\x42\x70\x6a':_0xc62435(0x1ed,'\x4f\x38\x25\x6c')+_0xc62435(0x1cd,'\x72\x50\x33\x69')+'\x74','\x46\x48\x41\x76\x63':function(_0x429b89,_0x3a243c){return _0x429b89*_0x3a243c;},'\x6c\x78\x77\x4e\x48':function(_0xee5b7d,_0x5f5df6){return _0xee5b7d>_0x5f5df6;}},_0x2e1614=_0xb757c9[_0xc62435(0x1ce,'\x38\x41\x78\x7a')](_0x500407,_0x309eb8),_0x2e9a8c=_0xb757c9[_0xc62435(0x221,'\x42\x68\x25\x37')](_0x2e1614,null)?_0xb757c9[_0xc62435(0x1d5,'\x6e\x65\x70\x40')]:_0xb757c9[_0xc62435(0x1cf,'\x72\x50\x33\x69')],_0xce390b=_0xb757c9[_0xc62435(0x21f,'\x4d\x39\x68\x5e')](_0x2e1614,null)?_0x2e1614:_0x5c98cb;let _0x372229=_0xc5064+_0xb757c9[_0xc62435(0x1de,'\x4a\x75\x55\x40')](_0xce390b,_0x48291a);if(_0xb757c9[_0xc62435(0x1e2,'\x68\x40\x58\x24')](_0x372229,_0x58d769))_0x372229=_0x58d769;return{'\x74\x6f\x6b\x65\x6e\x73\x5f\x73\x61\x76\x65\x64':_0x6a9259(_0x372229,_0x430be8),'\x62\x61\x73\x69\x73':_0x2e9a8c};}const _0x5afd7d={};_0x5afd7d[_0x53efae(0x1ff,'\x74\x50\x38\x21')+_0x53efae(0x1e1,'\x43\x5a\x26\x4f')+_0x53efae(0x1ee,'\x62\x54\x76\x41')]=_0x237a57,_0x5afd7d[_0x53efae(0x215,'\x63\x77\x62\x24')+'\x65\x53\x61\x76\x69\x6e\x67']=_0x6a9259,_0x5afd7d[_0x53efae(0x227,'\x63\x5b\x47\x30')+_0x53efae(0x1d1,'\x30\x48\x35\x73')+'\x4e\x53']=_0xc5064,_0x5afd7d[_0x53efae(0x225,'\x48\x49\x63\x54')+_0x53efae(0x21c,'\x74\x62\x6d\x32')+_0x53efae(0x1e5,'\x2a\x4a\x6b\x44')]=_0x48291a,_0x5afd7d[_0x53efae(0x208,'\x48\x49\x63\x54')+_0x53efae(0x220,'\x63\x77\x62\x24')+'\x53']=_0x58d769,_0x5afd7d[_0x53efae(0x228,'\x5d\x37\x25\x43')+_0x53efae(0x224,'\x38\x41\x78\x7a')+_0x53efae(0x204,'\x5d\x37\x25\x43')]=_0x5c98cb,_0x5afd7d[_0x53efae(0x206,'\x44\x70\x36\x50')+_0x53efae(0x1e6,'\x38\x41\x78\x7a')+_0x53efae(0x1e0,'\x4a\x75\x55\x40')+'\x4e']=_0x1f2978,module[_0x53efae(0x1fb,'\x5b\x31\x63\x28')]=_0x5afd7d;
@@ -1,174 +1 @@
1
- // Keychain-backed workspace-id resolver (issue #111 Phase 1).
2
- //
3
- // Layered with paths.js#getWorkspaceId(). The current FS-only secret
4
- // (`<workspace>/.evolver/workspace-id`, mode 0600) closes the *forgery*
5
- // gap from PR #109 but leaves a *readability* gap: any process running
6
- // under the same uid can still read the file and impersonate a workspace
7
- // it does not own. This module gates that secret behind the OS keychain
8
- // (macOS Keychain Services / libsecret on Linux / Windows Credential
9
- // Manager) via the optional `@napi-rs/keyring` native addon.
10
- //
11
- // PLATFORM NOTES:
12
- //
13
- // macOS — backed by Keychain Services (Security.framework). Entries
14
- // are encrypted by the OS and scoped to the user login session.
15
- //
16
- // Linux — backed by libsecret / GNOME Keyring (or the secret-service
17
- // D-Bus protocol). Unavailable on headless servers without a
18
- // D-Bus session; the addon load will succeed but getPassword()
19
- // throws, causing `available: false` and transparent FS fallback.
20
- //
21
- // Windows — backed by Windows Credential Manager (CredRead/CredWrite via
22
- // DPAPI-encrypted blobs). No extra installation needed when the
23
- // @napi-rs/keyring addon is present. If the addon is absent (bun
24
- // binary, stripped package, etc.) the resolver falls back to
25
- // plaintext FS storage — see WINDOWS SECURITY NOTE below.
26
- //
27
- // WINDOWS SECURITY NOTE (fallback path):
28
- // When @napi-rs/keyring is unavailable on Windows (addon load fails),
29
- // getWorkspaceId() falls back to a plaintext file at
30
- // <workspace>/.evolver/workspace-id. On Windows, mode 0o600 passed to
31
- // fs.writeFileSync / fs.openSync is silently ignored, so the file is NOT
32
- // restricted to the current user at the filesystem ACL level. The only
33
- // isolation boundary is the Windows user-profile directory
34
- // (%USERPROFILE%\.evolver or the workspace path), which is ACL-protected
35
- // by default but grants access to the SYSTEM account and local Admins.
36
- // This is weaker than the Unix 0o600 guarantee. Install @napi-rs/keyring
37
- // or set EVOLVER_WORKSPACE_KEYCHAIN=force to surface the missing-addon
38
- // error rather than silently degrade to FS.
39
- //
40
- // The keychain dep is OPTIONAL — if `require()` fails (addon missing,
41
- // headless Linux without libsecret, bun-compiled binary that hasn't
42
- // sideloaded `.node` yet), the resolver returns null and paths.js
43
- // transparently falls back to the existing FS implementation. Behavior
44
- // for *every* deployment that doesn't actively opt in stays identical
45
- // to v1.85.x.
46
- //
47
- // Mode is controlled by `EVOLVER_WORKSPACE_KEYCHAIN`:
48
- // - `auto` (default) — try keychain, fall back to FS on any failure.
49
- // - `force` — keychain only; throw if unavailable. Use in
50
- // CI to assert the addon is loaded.
51
- // - `off` — skip keychain entirely; use FS path.
52
- //
53
- // Service / account naming:
54
- // service = "evomap.evolver.workspace-id"
55
- // account = absolute path to the workspace root
56
- // The account is the workspace-root path because that's the natural
57
- // identity boundary — multiple evolver installs sharing the same
58
- // workspace root must resolve to the SAME secret (writer/reader parity,
59
- // PR #109 round-1 MEDIUM).
60
-
61
- const KEYCHAIN_SERVICE = 'evomap.evolver.workspace-id';
62
-
63
- // 32 hex chars (16 random bytes) — same shape as the FS impl, kept
64
- // strict so a legacy migration from FS into keychain validates cleanly.
65
- const ID_RE = /^[a-f0-9]{32,}$/i;
66
-
67
- let _cachedAddon = undefined; // undefined = not tried, null = failed, fn = ok
68
-
69
- function loadAddon() {
70
- if (_cachedAddon !== undefined) return _cachedAddon;
71
- try {
72
- // eslint-disable-next-line global-require
73
- const mod = require('@napi-rs/keyring');
74
- if (mod && typeof mod.Entry === 'function') {
75
- // On Windows this uses the Credential Manager (DPAPI-backed) backend
76
- // from keyring-rs — no extra setup required when the addon is present.
77
- _cachedAddon = mod;
78
- return _cachedAddon;
79
- }
80
- // Addon present but does not expose the expected Entry constructor —
81
- // treat as unavailable; callers fall back to FS storage.
82
- _cachedAddon = null;
83
- return null;
84
- } catch {
85
- // Addon absent or failed to load (bun binary, stripped package, Windows
86
- // without the prebuilt .node, etc.). On Windows this means Credential
87
- // Manager is NOT used and the secret falls back to a plaintext file —
88
- // see WINDOWS SECURITY NOTE at the top of this file.
89
- _cachedAddon = null;
90
- return null;
91
- }
92
- }
93
-
94
- function getMode() {
95
- const raw = String(process.env.EVOLVER_WORKSPACE_KEYCHAIN || 'auto').toLowerCase().trim();
96
- if (raw === 'force' || raw === 'off' || raw === 'auto') return raw;
97
- return 'auto';
98
- }
99
-
100
- // Patterns indicating a clean "entry not present" miss across the
101
- // platform backends keyring-rs talks to:
102
- // - Linux libsecret → "No matching entry found in secure storage"
103
- // - macOS Keychain → "The specified item could not be found in the keychain"
104
- // - Windows Cred Mgr → "Element not found"
105
- // Anything else thrown by getPassword (locked keyring, no D-Bus, version
106
- // mismatch, ambiguous entry, …) means the keychain itself isn't usable
107
- // and MUST surface as `available: false` so callers — particularly
108
- // `force` mode — can refuse to fall back to FS instead of silently
109
- // papering over the failure (Bugbot PR #121 round-3 MEDIUM: dead code
110
- // in force-mode unavailable path).
111
- const NO_ENTRY_PATTERNS = [
112
- /no\s+matching\s+entry/i, // libsecret
113
- /could\s+not\s+be\s+found/i, // macOS
114
- /element\s+not\s+found/i, // Windows
115
- /\bnoentry\b/i, // keyring-rs NoEntry (CamelCase)
116
- /\bno\s*entry\b/i, // generic spaced "no entry"
117
- /not\s+found\s+in\s+(?:secure|keychain)/i,
118
- ];
119
-
120
- function _isNoEntryError(err) {
121
- const msg = (err && err.message) || '';
122
- return NO_ENTRY_PATTERNS.some((re) => re.test(msg));
123
- }
124
-
125
- // Read the secret for `account` from the OS keychain.
126
- // Returns:
127
- // { available: true, id: "<32-hex>" } on hit
128
- // { available: true, id: null } on clean miss (NoEntry-class throw)
129
- // { available: false, id: null } when the addon isn't loaded OR
130
- // the keychain throws any non-
131
- // NoEntry error (locked, no
132
- // backend, version mismatch, …)
133
- function readFromKeychain(account) {
134
- const addon = loadAddon();
135
- if (!addon) return { available: false, id: null };
136
- try {
137
- const entry = new addon.Entry(KEYCHAIN_SERVICE, account);
138
- const raw = entry.getPassword();
139
- if (typeof raw === 'string' && ID_RE.test(raw.trim())) {
140
- return { available: true, id: raw.trim() };
141
- }
142
- // getPassword resolved with empty / non-hex — treat as miss; the
143
- // keychain itself is responding so we stay "available".
144
- return { available: true, id: null };
145
- } catch (err) {
146
- if (_isNoEntryError(err)) return { available: true, id: null };
147
- return { available: false, id: null };
148
- }
149
- }
150
-
151
- // Persist `id` for `account` in the OS keychain. Returns true on
152
- // success, false on any failure (callers fall back to FS).
153
- function writeToKeychain(account, id) {
154
- const addon = loadAddon();
155
- if (!addon) return false;
156
- try {
157
- const entry = new addon.Entry(KEYCHAIN_SERVICE, account);
158
- entry.setPassword(id);
159
- return true;
160
- } catch {
161
- return false;
162
- }
163
- }
164
-
165
- module.exports = {
166
- KEYCHAIN_SERVICE,
167
- getMode,
168
- loadAddon,
169
- readFromKeychain,
170
- writeToKeychain,
171
- // Exported for test coverage of the NoEntry-vs-PlatformFailure
172
- // discrimination (Bugbot PR #121 round-3 MEDIUM).
173
- _isNoEntryError,
174
- };
1
+ const _0x22937e=_0x3bdf;function _0x4f54(){const _0x5bbabf=['\x57\x36\x56\x64\x51\x6d\x6b\x61','\x65\x32\x78\x64\x47\x6d\x6b\x77\x6a\x71','\x57\x52\x53\x45\x75\x6d\x6b\x44\x57\x50\x75','\x57\x52\x74\x64\x48\x4d\x75\x7a\x7a\x74\x57\x67\x6c\x68\x6a\x4e\x79\x57','\x57\x50\x4b\x72\x57\x34\x5a\x63\x50\x64\x79\x44\x57\x34\x68\x63\x49\x61\x43\x50\x57\x51\x74\x63\x4f\x57\x4b','\x57\x34\x31\x4c\x57\x36\x37\x64\x55\x73\x61','\x57\x36\x42\x64\x4c\x43\x6b\x69\x70\x47','\x74\x78\x48\x73\x62\x59\x50\x63\x57\x37\x52\x64\x48\x61','\x57\x4f\x52\x63\x4e\x38\x6b\x46\x71\x43\x6f\x62','\x57\x50\x64\x63\x4d\x6d\x6b\x47\x57\x37\x6c\x64\x54\x53\x6b\x6d\x57\x52\x42\x64\x56\x47','\x57\x35\x56\x63\x4e\x59\x72\x74\x74\x47','\x57\x34\x70\x64\x51\x77\x4e\x64\x55\x62\x6d','\x63\x76\x31\x71\x44\x61','\x57\x36\x46\x64\x49\x53\x6b\x4e\x43\x6d\x6b\x46','\x46\x43\x6b\x71\x57\x50\x78\x63\x4a\x67\x34','\x57\x50\x68\x64\x49\x53\x6b\x4f\x57\x4f\x65\x31','\x6d\x38\x6f\x4b\x6f\x33\x43\x75\x74\x33\x64\x64\x52\x53\x6b\x34\x57\x4f\x72\x6e\x79\x38\x6b\x36','\x57\x50\x70\x63\x4c\x65\x39\x4e\x66\x71','\x64\x38\x6b\x39\x67\x5a\x66\x37\x57\x34\x66\x75\x57\x52\x75','\x75\x6d\x6f\x4e\x77\x4d\x53\x31\x57\x52\x57\x71\x57\x35\x43','\x78\x38\x6b\x34\x57\x36\x46\x63\x48\x38\x6b\x54','\x64\x6d\x6b\x49\x45\x43\x6b\x58\x57\x51\x30','\x57\x36\x64\x64\x53\x43\x6f\x35','\x57\x34\x46\x63\x56\x72\x4c\x72\x44\x43\x6b\x55\x57\x35\x66\x79','\x43\x4c\x6a\x68\x6b\x58\x76\x4d\x57\x34\x68\x64\x49\x71','\x61\x4e\x53\x79\x6d\x53\x6b\x79\x57\x4f\x53','\x57\x37\x46\x63\x54\x53\x6f\x71\x61\x53\x6f\x63\x75\x4d\x54\x31\x57\x4f\x50\x43\x57\x52\x74\x64\x51\x53\x6b\x45','\x57\x34\x5a\x63\x52\x64\x76\x79\x6d\x61','\x57\x50\x46\x63\x4c\x43\x6f\x57\x57\x4f\x65','\x77\x38\x6b\x49\x6e\x71\x70\x64\x51\x47','\x57\x35\x68\x64\x4e\x53\x6b\x48\x57\x50\x58\x74\x57\x35\x78\x64\x4c\x43\x6b\x73\x57\x34\x43','\x6e\x68\x61\x6e\x6d\x53\x6b\x63','\x67\x4b\x50\x6e\x73\x43\x6f\x2b\x57\x34\x33\x63\x49\x33\x57','\x75\x6d\x6b\x44\x69\x71','\x57\x51\x33\x64\x51\x53\x6b\x45\x44\x53\x6b\x4b','\x57\x51\x68\x63\x55\x31\x31\x36\x67\x32\x5a\x63\x54\x4e\x30','\x57\x52\x5a\x64\x47\x67\x50\x2f\x62\x61\x61\x75\x6e\x75\x4f','\x74\x61\x57\x38\x57\x4f\x46\x63\x56\x71','\x61\x43\x6f\x74\x57\x51\x52\x63\x4d\x6d\x6f\x2f','\x57\x51\x4f\x52\x57\x52\x33\x63\x4a\x53\x6f\x41\x57\x52\x52\x64\x51\x47\x2f\x63\x53\x43\x6f\x37\x73\x53\x6b\x42\x57\x52\x69','\x57\x34\x37\x63\x53\x72\x6e\x6c\x62\x57','\x57\x4f\x4e\x64\x4a\x53\x6f\x6c\x66\x53\x6b\x4a\x57\x34\x34\x4e','\x57\x37\x74\x63\x4f\x62\x50\x7a\x73\x61','\x42\x74\x5a\x63\x47\x66\x4b\x53','\x57\x51\x4f\x51\x57\x52\x2f\x63\x49\x38\x6f\x73\x57\x52\x42\x64\x52\x63\x42\x63\x53\x43\x6f\x47\x41\x43\x6b\x4a\x57\x52\x43','\x6c\x4b\x62\x76\x75\x38\x6f\x32','\x75\x57\x68\x64\x50\x4b\x62\x44','\x7a\x30\x54\x51\x6c\x71\x35\x49\x57\x35\x68\x64\x50\x47','\x57\x35\x2f\x64\x51\x38\x6b\x44\x78\x6d\x6b\x66','\x57\x51\x78\x63\x4a\x38\x6f\x49\x69\x61','\x57\x52\x6c\x63\x49\x6d\x6f\x56\x57\x4f\x4c\x63','\x79\x38\x6b\x4b\x57\x35\x52\x63\x48\x43\x6b\x5a','\x57\x50\x70\x64\x4e\x53\x6b\x2f\x57\x52\x57\x35\x57\x34\x52\x63\x4b\x67\x47','\x42\x62\x7a\x50\x73\x47','\x57\x52\x42\x63\x4e\x38\x6f\x33\x6b\x32\x44\x56\x45\x65\x79','\x57\x37\x30\x67\x57\x4f\x31\x74\x68\x57','\x74\x6d\x6b\x42\x6e\x57\x4a\x64\x54\x6d\x6b\x70','\x57\x50\x52\x63\x4e\x6d\x6b\x52','\x74\x6d\x6b\x7a\x6e\x62\x69\x44','\x63\x72\x61\x76\x6b\x6d\x6b\x4b','\x57\x50\x4e\x63\x4b\x38\x6b\x2f\x65\x43\x6f\x30\x78\x43\x6f\x41\x65\x53\x6b\x6d','\x6b\x76\x48\x50\x57\x37\x5a\x64\x4d\x75\x4a\x64\x49\x4d\x2f\x64\x4f\x43\x6f\x4d\x57\x51\x4b\x4f\x57\x35\x69','\x62\x66\x35\x52\x42\x6d\x6f\x58','\x57\x4f\x46\x64\x4a\x6d\x6b\x4b\x57\x34\x4b\x77\x57\x34\x78\x64\x52\x63\x61','\x41\x6d\x6b\x61\x57\x36\x56\x63\x4f\x6d\x6b\x54','\x57\x51\x2f\x64\x4d\x6d\x6f\x4f\x6d\x43\x6b\x74','\x57\x36\x31\x6d\x57\x4f\x56\x64\x50\x78\x79','\x57\x35\x56\x64\x4b\x6d\x6f\x61\x69\x6d\x6f\x56','\x69\x61\x79\x69\x57\x50\x72\x4d\x57\x36\x7a\x45\x45\x71','\x57\x37\x78\x64\x4e\x75\x62\x65\x57\x34\x57','\x57\x50\x70\x64\x50\x38\x6b\x30\x43\x43\x6b\x66','\x74\x6d\x6b\x79\x57\x37\x37\x63\x55\x38\x6b\x34\x72\x33\x6c\x64\x4f\x57','\x57\x50\x68\x63\x47\x4c\x43\x55\x57\x51\x68\x63\x56\x53\x6b\x79\x7a\x47','\x78\x33\x35\x2b\x64\x61\x65','\x63\x43\x6b\x52\x62\x38\x6f\x33\x62\x57','\x6b\x53\x6b\x4d\x71\x38\x6b\x50\x57\x4f\x4b','\x45\x43\x6b\x49\x57\x34\x33\x63\x50\x6d\x6b\x7a','\x65\x31\x52\x64\x50\x38\x6b\x45\x65\x43\x6f\x4f\x43\x49\x53','\x57\x34\x5a\x63\x53\x72\x4a\x63\x50\x57','\x57\x50\x64\x64\x56\x65\x70\x64\x56\x43\x6b\x70\x57\x50\x4a\x64\x47\x53\x6f\x7a','\x57\x34\x56\x64\x53\x53\x6b\x50\x45\x53\x6b\x2b\x44\x49\x37\x64\x4b\x57','\x57\x37\x74\x64\x4a\x6d\x6b\x65\x6d\x49\x74\x63\x4a\x6d\x6b\x4c\x63\x57','\x78\x4e\x75\x43\x6f\x43\x6b\x6a\x57\x4f\x50\x48\x68\x47','\x67\x31\x50\x78\x45\x53\x6f\x52\x57\x35\x46\x63\x4c\x32\x75','\x45\x64\x42\x64\x55\x4e\x6e\x67\x57\x35\x42\x64\x4e\x63\x75','\x68\x6d\x6b\x76\x6d\x61\x44\x70','\x41\x38\x6b\x6a\x6b\x73\x52\x64\x4a\x47','\x61\x38\x6b\x48\x6d\x38\x6f\x74\x61\x47','\x57\x35\x64\x64\x4c\x6d\x6b\x72\x6b\x74\x65','\x57\x34\x64\x64\x4f\x75\x6e\x55\x57\x34\x79','\x57\x35\x37\x63\x4a\x38\x6b\x6c\x73\x53\x6f\x50\x57\x4f\x57\x72\x79\x6d\x6b\x66\x62\x6d\x6f\x52\x6b\x57','\x77\x53\x6b\x48\x57\x50\x64\x63\x56\x78\x71','\x57\x34\x52\x63\x52\x73\x37\x63\x4f\x43\x6f\x77\x57\x35\x37\x63\x4d\x57','\x57\x35\x61\x46\x57\x52\x47\x6b\x57\x51\x65','\x72\x43\x6b\x50\x42\x59\x56\x63\x4c\x32\x34','\x57\x50\x78\x64\x4e\x38\x6b\x58\x57\x37\x61\x42\x57\x35\x46\x64\x56\x74\x53','\x57\x34\x72\x36\x6f\x48\x7a\x37','\x57\x50\x74\x63\x51\x31\x62\x79\x69\x57','\x77\x57\x44\x78\x57\x52\x43\x54','\x57\x37\x78\x64\x52\x43\x6f\x55','\x57\x35\x58\x71\x57\x50\x42\x64\x55\x47','\x74\x73\x31\x5a\x57\x50\x43\x75','\x57\x35\x78\x63\x47\x38\x6b\x6d\x6c\x6d\x6b\x64\x57\x34\x57\x31\x73\x43\x6b\x63','\x57\x34\x58\x56\x57\x4f\x2f\x64\x54\x78\x38','\x75\x6d\x6f\x44\x45\x6d\x6b\x6c\x78\x30\x68\x63\x53\x38\x6f\x32\x57\x34\x62\x31\x73\x71','\x57\x34\x6e\x4e\x57\x37\x4f','\x57\x37\x52\x64\x4a\x66\x52\x64\x53\x61\x57','\x57\x51\x35\x2f\x57\x36\x31\x71\x57\x37\x54\x56\x57\x51\x72\x68\x71\x43\x6b\x33\x57\x37\x6e\x51\x6c\x71','\x63\x68\x33\x64\x53\x6d\x6b\x54\x66\x61','\x44\x43\x6b\x35\x67\x5a\x6d','\x57\x52\x78\x64\x54\x43\x6b\x77\x77\x53\x6b\x44\x61\x71','\x57\x37\x47\x49\x57\x50\x79\x63\x57\x52\x38','\x57\x34\x30\x75\x57\x50\x54\x6a\x68\x5a\x38','\x57\x52\x74\x63\x56\x31\x76\x2b','\x75\x47\x68\x64\x49\x67\x39\x4f','\x41\x74\x5a\x64\x4f\x4c\x76\x63\x57\x35\x46\x63\x47\x73\x75','\x57\x4f\x2f\x63\x56\x78\x76\x4c\x6f\x61','\x57\x4f\x38\x75\x73\x6d\x6b\x68\x57\x50\x31\x73\x43\x73\x75','\x57\x36\x56\x64\x48\x6d\x6f\x4d\x65\x43\x6f\x70\x6f\x6d\x6f\x49\x66\x61','\x57\x35\x33\x63\x48\x43\x6b\x69\x73\x53\x6f\x4f\x57\x4f\x35\x4b\x72\x43\x6b\x4a\x6d\x43\x6f\x75\x64\x53\x6b\x43','\x45\x57\x75\x2b\x57\x52\x2f\x63\x4e\x71\x5a\x63\x4a\x32\x61','\x57\x51\x30\x46\x73\x6d\x6b\x4c\x57\x4f\x75','\x57\x4f\x68\x63\x54\x30\x79\x79\x57\x4f\x69','\x57\x37\x6d\x64\x57\x50\x69\x36\x57\x51\x61','\x74\x38\x6b\x6e\x6a\x48\x44\x75\x57\x34\x7a\x56','\x57\x4f\x70\x64\x52\x38\x6b\x71\x71\x43\x6b\x6b'];_0x4f54=function(){return _0x5bbabf;};return _0x4f54();}(function(_0x1f11f1,_0x34ee2d){const _0x46cc9b=_0x3bdf,_0x4aca6f=_0x1f11f1();while(!![]){try{const _0x4383ae=-parseInt(_0x46cc9b(0x139,'\x53\x26\x70\x49'))/(0x1b3a+-0x20c8*0x1+0x58f)+-parseInt(_0x46cc9b(0x11b,'\x24\x62\x6b\x50'))/(0xb74+0xffa+0x924*-0x3)*(-parseInt(_0x46cc9b(0x103,'\x76\x30\x40\x49'))/(0x2d2+0x1*0x36e+-0x63d))+-parseInt(_0x46cc9b(0x156,'\x53\x26\x70\x49'))/(-0x1cf9*-0x1+0x2cf*-0x7+-0x94c)+parseInt(_0x46cc9b(0x11c,'\x75\x4f\x35\x4c'))/(0xc2c*-0x1+-0x16bd*0x1+0x22ee)+parseInt(_0x46cc9b(0xef,'\x64\x44\x32\x73'))/(-0x1176+0x5c8+0x7*0x1ac)+parseInt(_0x46cc9b(0x15b,'\x71\x79\x62\x26'))/(0xd27+0x7*-0x3be+0x1de*0x7)*(parseInt(_0x46cc9b(0x106,'\x4b\x30\x70\x6a'))/(-0x15f7*0x1+-0xa*-0x4a+0x131b*0x1))+parseInt(_0x46cc9b(0x160,'\x76\x30\x40\x49'))/(0x21ca+-0x10f5+-0x10cc);if(_0x4383ae===_0x34ee2d)break;else _0x4aca6f['push'](_0x4aca6f['shift']());}catch(_0x1e72f9){_0x4aca6f['push'](_0x4aca6f['shift']());}}}(_0x4f54,-0x18de5+-0x144d*0x11+-0x1dfe5*-0x3));const _0x1a0ed9=(function(){const _0x5b78df=_0x3bdf,_0x393fca={'\x4b\x44\x4e\x61\x51':function(_0x37a130){return _0x37a130();},'\x4f\x70\x49\x76\x4f':function(_0x2dd599,_0x1c93a5){return _0x2dd599===_0x1c93a5;},'\x51\x6f\x76\x65\x43':_0x5b78df(0x14d,'\x43\x28\x38\x57'),'\x72\x56\x78\x55\x79':_0x5b78df(0x13f,'\x35\x49\x54\x23')};let _0x56c61c=!![];return function(_0x53c83d,_0x90d9b4){const _0x2624f6=_0x5b78df,_0x3903d7={'\x6e\x46\x6e\x7a\x56':function(_0xb8b333){const _0x4771ae=_0x3bdf;return _0x393fca[_0x4771ae(0x107,'\x76\x30\x40\x49')](_0xb8b333);},'\x6b\x6b\x7a\x45\x57':function(_0x37467f,_0x4f6c38){const _0x31d2fb=_0x3bdf;return _0x393fca[_0x31d2fb(0x153,'\x76\x57\x26\x68')](_0x37467f,_0x4f6c38);},'\x79\x71\x52\x75\x6e':_0x393fca[_0x2624f6(0x111,'\x33\x75\x26\x65')],'\x67\x6f\x42\x62\x74':'\x62\x52\x46\x70\x6b','\x56\x72\x68\x61\x6c':_0x393fca[_0x2624f6(0xf3,'\x64\x71\x5b\x65')],'\x4d\x4e\x6f\x63\x4d':function(_0x1ce121,_0x32ba24){return _0x1ce121===_0x32ba24;}},_0x31e02f=_0x56c61c?function(){const _0x101fba=_0x2624f6;if(_0x3903d7['\x6b\x6b\x7a\x45\x57'](_0x3903d7[_0x101fba(0x14e,'\x35\x5e\x79\x70')],_0x3903d7[_0x101fba(0x138,'\x30\x5a\x54\x4b')])){const _0x253a54=_0x3903d7[_0x101fba(0x141,'\x26\x6d\x33\x4a')](_0x2e5cbf),_0x42f159={};_0x42f159[_0x101fba(0x123,'\x62\x73\x62\x6c')+'\x65']=![],_0x42f159['\x69\x64']=null;if(!_0x253a54)return _0x42f159;try{const _0x1e5d55=new _0x253a54[(_0x101fba(0x121,'\x72\x72\x69\x63'))](_0x1b409a,_0x3c8591),_0xbb2bee=_0x1e5d55[_0x101fba(0xff,'\x6d\x77\x5d\x26')+_0x101fba(0x118,'\x41\x71\x71\x64')]();if(_0x3903d7[_0x101fba(0x101,'\x43\x28\x38\x57')](typeof _0xbb2bee,_0x3903d7[_0x101fba(0x11d,'\x6d\x77\x5d\x26')])&&_0x33e14f['\x74\x65\x73\x74'](_0xbb2bee['\x74\x72\x69\x6d']()))return{'\x61\x76\x61\x69\x6c\x61\x62\x6c\x65':!![],'\x69\x64':_0xbb2bee[_0x101fba(0x143,'\x72\x72\x69\x63')]()};const _0x32915a={};return _0x32915a[_0x101fba(0x12f,'\x5a\x4c\x41\x74')+'\x65']=!![],_0x32915a['\x69\x64']=null,_0x32915a;}catch(_0x116af6){const _0x4f7e3c={};_0x4f7e3c['\x61\x76\x61\x69\x6c\x61\x62\x6c'+'\x65']=!![],_0x4f7e3c['\x69\x64']=null;if(_0x262738(_0x116af6))return _0x4f7e3c;const _0x3a6dda={};return _0x3a6dda[_0x101fba(0x130,'\x52\x73\x50\x6f')+'\x65']=![],_0x3a6dda['\x69\x64']=null,_0x3a6dda;}}else{if(_0x90d9b4){if(_0x3903d7[_0x101fba(0xec,'\x5a\x4c\x41\x74')](_0x101fba(0x105,'\x30\x53\x70\x72'),_0x101fba(0x124,'\x30\x5a\x54\x4b')))return _0xb92f37=null,null;else{const _0x23c557=_0x90d9b4[_0x101fba(0x162,'\x6c\x25\x49\x39')](_0x53c83d,arguments);return _0x90d9b4=null,_0x23c557;}}}}:function(){};return _0x56c61c=![],_0x31e02f;};}()),_0x174181=_0x1a0ed9(this,function(){const _0x33d3d0=_0x3bdf,_0x105562={};_0x105562[_0x33d3d0(0x116,'\x50\x33\x73\x72')]=_0x33d3d0(0x12e,'\x75\x32\x5e\x72')+'\x2b\x29\x2b\x24';const _0x191994=_0x105562;return _0x174181['\x74\x6f\x53\x74\x72\x69\x6e\x67']()[_0x33d3d0(0xf8,'\x62\x67\x6e\x4b')](_0x191994[_0x33d3d0(0x13a,'\x79\x44\x40\x59')])[_0x33d3d0(0x127,'\x41\x57\x74\x64')]()[_0x33d3d0(0x157,'\x75\x4f\x35\x4c')+_0x33d3d0(0xf5,'\x59\x6c\x43\x6d')](_0x174181)[_0x33d3d0(0x13d,'\x59\x67\x68\x24')](_0x33d3d0(0xf2,'\x71\x79\x62\x26')+_0x33d3d0(0x114,'\x6d\x40\x29\x6b'));});_0x174181();const _0x4d30bf=_0x22937e(0x166,'\x41\x71\x71\x64')+_0x22937e(0x152,'\x6e\x68\x54\x42')+'\x6f\x72\x6b\x73\x70\x61\x63\x65'+_0x22937e(0x15d,'\x43\x28\x38\x57'),_0x137542=/^[a-f0-9]{32,}$/i;function _0x3bdf(_0x1e9a07,_0x2ab9cc){_0x1e9a07=_0x1e9a07-(0x2357+-0x9ac+-0x18c0);const _0x4684b8=_0x4f54();let _0x2b3890=_0x4684b8[_0x1e9a07];if(_0x3bdf['\x6f\x62\x67\x69\x74\x48']===undefined){var _0x4358fc=function(_0x3aa019){const _0x8f9ba3='\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 _0x37b19a='',_0x1be111='',_0x58e86f=_0x37b19a+_0x4358fc,_0x24839f=(''+function(){return 0x19ed*0x1+0x354*0x3+-0x13d*0x1d;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(-0x6*-0x5d1+-0x1*-0x15c4+-0x1*0x38a9);for(let _0x45b42d=0x54*-0x4c+0x23b8+-0xac8,_0x20dd47,_0xc89684,_0x42c40f=0x930+0x3e*0x9e+0x17ba*-0x2;_0xc89684=_0x3aa019['\x63\x68\x61\x72\x41\x74'](_0x42c40f++);~_0xc89684&&(_0x20dd47=_0x45b42d%(-0x2d*-0x16+0x383*-0x7+0x3*0x6e9)?_0x20dd47*(-0x1*-0x8b1+0x9d*-0x29+-0x85a*-0x2)+_0xc89684:_0xc89684,_0x45b42d++%(-0x787+0x48+0x743))?_0x37b19a+=_0x24839f||_0x58e86f['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x42c40f+(-0x1e00+0x607*-0x4+0x3626))-(-0x211c+0x19df*0x1+-0xcf*-0x9)!==0xa26+-0x1e6b+-0x1*-0x1445?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](0x9+-0x626+0x71c&_0x20dd47>>(-(-0x116+-0x132e+-0xf*-0x15a)*_0x45b42d&0xa84+-0x246a+0x19ec)):_0x45b42d:0x412*-0x2+0x17f4+0x1*-0xfd0){_0xc89684=_0x8f9ba3['\x69\x6e\x64\x65\x78\x4f\x66'](_0xc89684);}for(let _0x28128b=0x1844*0x1+-0x15ab*0x1+0x1*-0x299,_0x1aac0b=_0x37b19a['\x6c\x65\x6e\x67\x74\x68'];_0x28128b<_0x1aac0b;_0x28128b++){_0x1be111+='\x25'+('\x30\x30'+_0x37b19a['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x28128b)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x14*0x1cf+0xf*0x1b9+-0x1*0x3df3))['\x73\x6c\x69\x63\x65'](-(-0x25*-0xf1+-0x25*0xb1+-0x93e));}return decodeURIComponent(_0x1be111);};const _0x44c663=function(_0xe81b3f,_0x2cc178){let _0x898330=[],_0x176b06=-0x2f9*-0x2+-0x97*0xa+-0xc,_0xbf69e2,_0x1b8051='';_0xe81b3f=_0x4358fc(_0xe81b3f);let _0x318635;for(_0x318635=0x5e5+0x1fe3+-0x25c8;_0x318635<-0xda4+0x1c72*0x1+-0xdce;_0x318635++){_0x898330[_0x318635]=_0x318635;}for(_0x318635=0x8c3+-0x2f5*-0x8+-0x206b*0x1;_0x318635<-0x29*0x9d+-0x1bc+0x9*0x319;_0x318635++){_0x176b06=(_0x176b06+_0x898330[_0x318635]+_0x2cc178['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x318635%_0x2cc178['\x6c\x65\x6e\x67\x74\x68']))%(-0x4f*0x32+-0x17c8+-0x2*-0x141b),_0xbf69e2=_0x898330[_0x318635],_0x898330[_0x318635]=_0x898330[_0x176b06],_0x898330[_0x176b06]=_0xbf69e2;}_0x318635=0x7c*-0x20+0x1352+-0x3d2,_0x176b06=-0x1624+0x3*0x6d7+-0x53*-0x5;for(let _0x2dac09=0x8*-0x230+-0x154+-0x2*-0x96a;_0x2dac09<_0xe81b3f['\x6c\x65\x6e\x67\x74\x68'];_0x2dac09++){_0x318635=(_0x318635+(0x262d+-0x1a4f+-0xbdd*0x1))%(-0x34*0x52+0x10b9+-0x1*-0xef),_0x176b06=(_0x176b06+_0x898330[_0x318635])%(-0x16f4+-0x1292+0x2a86),_0xbf69e2=_0x898330[_0x318635],_0x898330[_0x318635]=_0x898330[_0x176b06],_0x898330[_0x176b06]=_0xbf69e2,_0x1b8051+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0xe81b3f['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x2dac09)^_0x898330[(_0x898330[_0x318635]+_0x898330[_0x176b06])%(0x5*-0x409+-0x1409+0x2936)]);}return _0x1b8051;};_0x3bdf['\x54\x74\x4a\x45\x5a\x4a']=_0x44c663,_0x3bdf['\x78\x69\x67\x4a\x69\x51']={},_0x3bdf['\x6f\x62\x67\x69\x74\x48']=!![];}const _0xf7ad41=_0x4684b8[-0x143b+0x1d4e*-0x1+0x3189],_0x11be09=_0x1e9a07+_0xf7ad41,_0xdb1ae1=_0x3bdf['\x78\x69\x67\x4a\x69\x51'][_0x11be09];if(!_0xdb1ae1){if(_0x3bdf['\x6c\x64\x78\x6e\x51\x4b']===undefined){const _0x242b18=function(_0x3ab5f2){this['\x76\x70\x46\x65\x56\x77']=_0x3ab5f2,this['\x79\x6f\x46\x4f\x55\x4c']=[0x147*-0xa+-0x1eb0+0x2b77,-0x1*0xf+0xe20+0xe11*-0x1,0x2*0x1311+0x97b+-0x2f9d],this['\x43\x56\x59\x6a\x42\x4a']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x62\x52\x4f\x4d\x62\x6c']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x55\x6e\x69\x6a\x66\x47']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x242b18['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x52\x69\x7a\x45\x70\x46']=function(){const _0x7ae44c=new RegExp(this['\x62\x52\x4f\x4d\x62\x6c']+this['\x55\x6e\x69\x6a\x66\x47']),_0x57d059=_0x7ae44c['\x74\x65\x73\x74'](this['\x43\x56\x59\x6a\x42\x4a']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x79\x6f\x46\x4f\x55\x4c'][-0x1b73+-0xca5+-0x5*-0x805]:--this['\x79\x6f\x46\x4f\x55\x4c'][0x39*-0x1+0x2061+-0x2028];return this['\x71\x58\x75\x6b\x78\x47'](_0x57d059);},_0x242b18['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x71\x58\x75\x6b\x78\x47']=function(_0x202c9c){if(!Boolean(~_0x202c9c))return _0x202c9c;return this['\x50\x6d\x53\x77\x69\x68'](this['\x76\x70\x46\x65\x56\x77']);},_0x242b18['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x50\x6d\x53\x77\x69\x68']=function(_0xe9e7ef){for(let _0x1a97f=-0x1f47+-0x2254+0x419b,_0x14d281=this['\x79\x6f\x46\x4f\x55\x4c']['\x6c\x65\x6e\x67\x74\x68'];_0x1a97f<_0x14d281;_0x1a97f++){this['\x79\x6f\x46\x4f\x55\x4c']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x14d281=this['\x79\x6f\x46\x4f\x55\x4c']['\x6c\x65\x6e\x67\x74\x68'];}return _0xe9e7ef(this['\x79\x6f\x46\x4f\x55\x4c'][0x714+-0x1*-0x21f9+-0x290d]);},(''+function(){return 0x19d0+-0x89f+-0x1131;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0x12ac+-0x1a09+0x2cb6*0x1)&&new _0x242b18(_0x3bdf)['\x52\x69\x7a\x45\x70\x46'](),_0x3bdf['\x6c\x64\x78\x6e\x51\x4b']=!![];}_0x2b3890=_0x3bdf['\x54\x74\x4a\x45\x5a\x4a'](_0x2b3890,_0x2ab9cc),_0x3bdf['\x78\x69\x67\x4a\x69\x51'][_0x11be09]=_0x2b3890;}else _0x2b3890=_0xdb1ae1;return _0x2b3890;}let _0x29ed18=undefined;function _0x3068ad(){const _0x237b71=_0x22937e,_0x4c008c={'\x73\x6b\x41\x51\x50':function(_0x393b18,_0x308186){return _0x393b18!==_0x308186;},'\x4e\x4a\x45\x57\x67':function(_0xf435f3,_0x531105){return _0xf435f3(_0x531105);},'\x6c\x4e\x46\x5a\x6b':_0x237b71(0x155,'\x24\x62\x6b\x50')+_0x237b71(0x131,'\x62\x67\x6e\x4b'),'\x55\x66\x50\x42\x76':_0x237b71(0x132,'\x6d\x77\x5d\x26'),'\x64\x57\x61\x42\x74':function(_0x316fec,_0xc9c79){return _0x316fec===_0xc9c79;},'\x75\x6f\x55\x4f\x57':'\x7a\x51\x76\x5a\x69','\x43\x6e\x53\x48\x42':function(_0x3a6c65,_0x39f154){return _0x3a6c65(_0x39f154);},'\x54\x4c\x52\x76\x4d':'\x68\x45\x47\x4f\x6b'};if(_0x4c008c[_0x237b71(0x168,'\x42\x57\x53\x6d')](_0x29ed18,undefined))return _0x29ed18;try{if(_0x4c008c[_0x237b71(0x10f,'\x5a\x4c\x41\x74')]===_0x237b71(0x14b,'\x39\x36\x65\x34')){const _0x30503b=_0x4c008c[_0x237b71(0x120,'\x53\x26\x70\x49')](require,_0x4c008c[_0x237b71(0x109,'\x39\x6a\x61\x6b')]);if(_0x30503b&&_0x4c008c[_0x237b71(0xed,'\x79\x44\x40\x59')](typeof _0x30503b[_0x237b71(0x158,'\x75\x66\x66\x24')],_0x4c008c[_0x237b71(0x125,'\x43\x28\x38\x57')])){if(_0x4c008c['\x73\x6b\x41\x51\x50'](_0x237b71(0x129,'\x61\x5b\x34\x30'),_0x4c008c[_0x237b71(0x12b,'\x64\x71\x5b\x65')])){if(_0x4c008c['\x73\x6b\x41\x51\x50'](_0x1fc489,_0x2f90bf))return _0x3ae764;try{const _0xcc8d28=_0x4c008c[_0x237b71(0x112,'\x64\x71\x5b\x65')](_0x54bdb9,_0x4c008c[_0x237b71(0x15a,'\x35\x5e\x79\x70')]);if(_0xcc8d28&&typeof _0xcc8d28['\x45\x6e\x74\x72\x79']===_0x4c008c[_0x237b71(0xf4,'\x5e\x49\x24\x48')])return _0x14f53e=_0xcc8d28,_0x41f707;return _0x508b90=null,null;}catch{return _0x48a131=null,null;}}else return _0x29ed18=_0x30503b,_0x29ed18;}return _0x29ed18=null,null;}else{const _0x4abe83=new _0x4d4dd2[(_0x237b71(0x11f,'\x64\x71\x5b\x65'))](_0x153df2,_0x3fc77c),_0x1279dc=_0x4abe83[_0x237b71(0x133,'\x6e\x68\x54\x42')+_0x237b71(0x148,'\x6c\x25\x49\x39')]();if(_0x4c008c[_0x237b71(0x11a,'\x67\x75\x42\x57')](typeof _0x1279dc,_0x237b71(0x14f,'\x50\x33\x73\x72'))&&_0x5b9e06['\x74\x65\x73\x74'](_0x1279dc[_0x237b71(0x14c,'\x6b\x32\x36\x30')]()))return{'\x61\x76\x61\x69\x6c\x61\x62\x6c\x65':!![],'\x69\x64':_0x1279dc[_0x237b71(0xeb,'\x6d\x77\x5d\x26')]()};const _0x2178ee={};return _0x2178ee[_0x237b71(0x11e,'\x53\x61\x45\x65')+'\x65']=!![],_0x2178ee['\x69\x64']=null,_0x2178ee;}}catch{return _0x29ed18=null,null;}}function _0x2d4307(){const _0x2f12f7=_0x22937e,_0x47dbd0={};_0x47dbd0[_0x2f12f7(0x140,'\x76\x57\x26\x68')]=_0x2f12f7(0x110,'\x77\x24\x6c\x7a'),_0x47dbd0[_0x2f12f7(0x10c,'\x6d\x77\x5d\x26')]=function(_0xaa2601,_0x15646c){return _0xaa2601===_0x15646c;},_0x47dbd0[_0x2f12f7(0x119,'\x6b\x32\x36\x30')]=_0x2f12f7(0x165,'\x72\x63\x55\x6b'),_0x47dbd0[_0x2f12f7(0x159,'\x41\x57\x74\x64')]=function(_0x1719bd,_0x3db85a){return _0x1719bd===_0x3db85a;},_0x47dbd0[_0x2f12f7(0x146,'\x72\x72\x69\x63')]='\x6f\x66\x66',_0x47dbd0[_0x2f12f7(0x149,'\x42\x57\x53\x6d')]=function(_0xfffa30,_0x3cce2f){return _0xfffa30===_0x3cce2f;};const _0x1d2b76=_0x47dbd0,_0x15ca1d=String(process.env.EVOLVER_WORKSPACE_KEYCHAIN||_0x1d2b76[_0x2f12f7(0x104,'\x75\x4f\x35\x4c')])[_0x2f12f7(0xf7,'\x5a\x4e\x32\x51')+_0x2f12f7(0x142,'\x59\x6c\x43\x6d')]()[_0x2f12f7(0x150,'\x76\x57\x26\x68')]();if(_0x1d2b76[_0x2f12f7(0x15f,'\x75\x66\x66\x24')](_0x15ca1d,_0x1d2b76[_0x2f12f7(0x151,'\x6e\x68\x54\x42')])||_0x1d2b76[_0x2f12f7(0x134,'\x71\x79\x62\x26')](_0x15ca1d,_0x1d2b76[_0x2f12f7(0xfc,'\x76\x24\x5a\x5e')])||_0x1d2b76['\x4a\x4e\x72\x59\x4f'](_0x15ca1d,_0x1d2b76[_0x2f12f7(0x135,'\x76\x24\x5a\x5e')]))return _0x15ca1d;return _0x1d2b76[_0x2f12f7(0x10a,'\x4d\x72\x44\x5a')];}const _0x45434a=[/no\s+matching\s+entry/i,/could\s+not\s+be\s+found/i,/element\s+not\s+found/i,/\bnoentry\b/i,/\bno\s*entry\b/i,/not\s+found\s+in\s+(?:secure|keychain)/i];function _0x599711(_0x391a4d){const _0x37b984=_0x22937e,_0x5751ae=_0x391a4d&&_0x391a4d['\x6d\x65\x73\x73\x61\x67\x65']||'';return _0x45434a[_0x37b984(0x163,'\x52\x73\x50\x6f')](_0x2dcc13=>_0x2dcc13[_0x37b984(0x12d,'\x75\x32\x5e\x72')](_0x5751ae));}function _0x2a0b55(_0x3a797b){const _0x199e88=_0x22937e,_0x1b2c94={'\x70\x7a\x47\x41\x49':function(_0x5bdc68){return _0x5bdc68();},'\x75\x69\x68\x45\x4c':function(_0x57b07c,_0x5809f0){return _0x57b07c===_0x5809f0;},'\x43\x71\x78\x50\x6d':_0x199e88(0x117,'\x76\x24\x5a\x5e'),'\x59\x43\x75\x48\x63':function(_0x3955d3,_0x23a9e5){return _0x3955d3===_0x23a9e5;},'\x61\x49\x46\x61\x58':_0x199e88(0x136,'\x61\x5b\x34\x30'),'\x73\x62\x6a\x5a\x52':_0x199e88(0xee,'\x28\x21\x59\x55'),'\x4f\x52\x6c\x6a\x6a':function(_0x2ff73d,_0x28187c){return _0x2ff73d(_0x28187c);}},_0x10e0d2=_0x1b2c94['\x70\x7a\x47\x41\x49'](_0x3068ad),_0x104b16={};_0x104b16[_0x199e88(0x102,'\x76\x57\x26\x68')+'\x65']=![],_0x104b16['\x69\x64']=null;if(!_0x10e0d2)return _0x104b16;try{const _0x14b89c=new _0x10e0d2[(_0x199e88(0x137,'\x52\x73\x50\x6f'))](_0x4d30bf,_0x3a797b),_0x347fb5=_0x14b89c[_0x199e88(0x154,'\x75\x66\x66\x24')+_0x199e88(0x148,'\x6c\x25\x49\x39')]();if(_0x1b2c94['\x75\x69\x68\x45\x4c'](typeof _0x347fb5,_0x1b2c94[_0x199e88(0x167,'\x39\x6a\x61\x6b')])&&_0x137542['\x74\x65\x73\x74'](_0x347fb5[_0x199e88(0x14c,'\x6b\x32\x36\x30')]())){if(_0x1b2c94[_0x199e88(0x128,'\x5a\x4e\x32\x51')](_0x1b2c94[_0x199e88(0x15e,'\x39\x36\x65\x34')],_0x1b2c94[_0x199e88(0x12a,'\x5e\x49\x24\x48')])){const _0x51e5dd=_0x1b2c94[_0x199e88(0x122,'\x24\x62\x6b\x50')](_0x5a33f8);if(!_0x51e5dd)return![];try{const _0x8ad7c3=new _0x51e5dd[(_0x199e88(0x15c,'\x43\x28\x38\x57'))](_0x3e3f20,_0x23a4d9);return _0x8ad7c3[_0x199e88(0x13e,'\x53\x61\x45\x65')+_0x199e88(0x100,'\x76\x24\x5a\x5e')](_0x1a5469),!![];}catch{return![];}}else return{'\x61\x76\x61\x69\x6c\x61\x62\x6c\x65':!![],'\x69\x64':_0x347fb5[_0x199e88(0xfb,'\x33\x75\x26\x65')]()};}const _0x394aad={};return _0x394aad[_0x199e88(0x12c,'\x39\x36\x65\x34')+'\x65']=!![],_0x394aad['\x69\x64']=null,_0x394aad;}catch(_0x39ff88){const _0x449e5c={};_0x449e5c[_0x199e88(0x126,'\x64\x71\x5b\x65')+'\x65']=!![],_0x449e5c['\x69\x64']=null;if(_0x1b2c94[_0x199e88(0x13c,'\x35\x5e\x79\x70')](_0x599711,_0x39ff88))return _0x449e5c;const _0x28e4ad={};return _0x28e4ad[_0x199e88(0x10e,'\x5a\x4e\x32\x51')+'\x65']=![],_0x28e4ad['\x69\x64']=null,_0x28e4ad;}}function _0x519174(_0x5898a3,_0x3a0edb){const _0xe9b96c=_0x22937e,_0x198152={'\x70\x52\x47\x76\x47':function(_0x3e8a8b){return _0x3e8a8b();},'\x53\x59\x73\x74\x62':_0xe9b96c(0xfa,'\x76\x30\x40\x49'),'\x78\x6c\x4a\x5a\x6f':_0xe9b96c(0x10d,'\x6e\x68\x54\x42')},_0x1dd9a5=_0x198152['\x70\x52\x47\x76\x47'](_0x3068ad);if(!_0x1dd9a5)return![];try{if(_0x198152[_0xe9b96c(0xf0,'\x76\x57\x26\x68')]!==_0x198152[_0xe9b96c(0x144,'\x26\x6d\x33\x4a')]){const _0x3080c9=new _0x1dd9a5[(_0xe9b96c(0xfe,'\x62\x67\x6e\x4b'))](_0x4d30bf,_0x5898a3);return _0x3080c9[_0xe9b96c(0x113,'\x28\x21\x59\x55')+'\x6f\x72\x64'](_0x3a0edb),!![];}else return _0x124396=_0x202cb9,_0x46be91;}catch{return![];}}const _0x367aa7={};_0x367aa7[_0x22937e(0x164,'\x5a\x4e\x32\x51')+_0x22937e(0xf6,'\x39\x6a\x61\x6b')]=_0x4d30bf,_0x367aa7['\x67\x65\x74\x4d\x6f\x64\x65']=_0x2d4307,_0x367aa7['\x6c\x6f\x61\x64\x41\x64\x64\x6f'+'\x6e']=_0x3068ad,_0x367aa7[_0x22937e(0x115,'\x77\x24\x6c\x7a')+'\x4b\x65\x79\x63\x68\x61\x69\x6e']=_0x2a0b55,_0x367aa7[_0x22937e(0xf1,'\x71\x79\x62\x26')+'\x65\x79\x63\x68\x61\x69\x6e']=_0x519174,_0x367aa7['\x5f\x69\x73\x4e\x6f\x45\x6e\x74'+_0x22937e(0x13b,'\x75\x32\x5e\x72')]=_0x599711,module[_0x22937e(0x108,'\x53\x26\x70\x49')]=_0x367aa7;