@evomap/evolver 1.89.3 → 1.89.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cursor/BUGBOT.md +182 -0
- package/.env.example +68 -0
- package/.git-commit-guard-token +1 -0
- package/.github/CODEOWNERS +63 -0
- package/.github/ISSUE_TEMPLATE/good_first_issue.md +23 -0
- package/.github/pull_request_template.md +45 -0
- package/.github/workflows/test.yml +75 -0
- package/CHANGELOG.md +1237 -0
- package/README.md +86 -528
- package/README.public.md +569 -0
- package/SECURITY.md +108 -0
- package/assets/gep/events.jsonl +3 -0
- package/examples/atp-consumer-quickstart.md +100 -0
- package/examples/hello-world.md +38 -0
- package/index.js +30 -1
- package/package.json +6 -17
- package/proxy-package.json +39 -0
- package/public.manifest.json +143 -0
- package/src/config.js +23 -0
- package/src/evolve/guards.js +721 -1
- package/src/evolve/pipeline/collect.js +1283 -1
- package/src/evolve/pipeline/dispatch.js +421 -1
- package/src/evolve/pipeline/enrich.js +440 -1
- package/src/evolve/pipeline/hub.js +319 -1
- package/src/evolve/pipeline/select.js +274 -1
- package/src/evolve/pipeline/signals.js +206 -1
- package/src/evolve/utils.js +264 -1
- package/src/evolve.js +350 -1
- package/src/experiment/agentRunner.js +229 -0
- package/src/experiment/cli.js +159 -0
- package/src/experiment/comparison.js +233 -0
- package/src/experiment/metrics.js +75 -0
- package/src/forceUpdate.js +147 -59
- package/src/gep/a2aProtocol.js +4455 -1
- package/src/gep/antiAbuseTelemetry.js +233 -0
- package/src/gep/autoDistillConv.js +205 -1
- package/src/gep/autoDistillLlm.js +315 -1
- package/src/gep/candidateEval.js +92 -1
- package/src/gep/candidates.js +198 -1
- package/src/gep/contentHash.js +30 -1
- package/src/gep/conversationSniffer.js +266 -1
- package/src/gep/crypto.js +89 -1
- package/src/gep/curriculum.js +163 -1
- package/src/gep/deviceId.js +218 -1
- package/src/gep/envFingerprint.js +118 -1
- package/src/gep/epigenetics.js +31 -1
- package/src/gep/execBridge.js +711 -1
- package/src/gep/explore.js +289 -1
- package/src/gep/hash.js +15 -1
- package/src/gep/hubFetch.js +359 -1
- package/src/gep/hubReview.js +207 -1
- package/src/gep/hubSearch.js +526 -1
- package/src/gep/hubVerify.js +306 -1
- package/src/gep/learningSignals.js +89 -1
- package/src/gep/memoryGraph.js +1374 -1
- package/src/gep/memoryGraphAdapter.js +203 -1
- package/src/gep/mutation.js +203 -1
- package/src/gep/narrativeMemory.js +108 -1
- package/src/gep/openPRRegistry.js +205 -1
- package/src/gep/personality.js +423 -1
- package/src/gep/policyCheck.js +599 -1
- package/src/gep/prompt.js +836 -1
- package/src/gep/recallInject.js +409 -1
- package/src/gep/recallVerifier.js +318 -1
- package/src/gep/reflection.js +177 -1
- package/src/gep/sanitize.js +9 -0
- package/src/gep/selector.js +602 -1
- package/src/gep/skillDistiller.js +1294 -1
- package/src/gep/solidify.js +1699 -1
- package/src/gep/strategy.js +136 -1
- package/src/gep/tokenSavings.js +88 -1
- package/src/gep/validator/sandboxExecutor.js +29 -1
- package/src/gep/workspaceKeychain.js +174 -1
- package/src/proxy/extensions/traceControl.js +99 -1
- package/src/proxy/index.js +10 -1
- package/src/proxy/inject.js +52 -1
- package/src/proxy/lifecycle/manager.js +19 -0
- package/src/proxy/mailbox/store.js +2 -1
- package/src/proxy/router/messages_route.js +5 -2
- package/src/proxy/trace/extractor.js +646 -1
- package/src/proxy/trace/usage.js +105 -1
- package/CONTRIBUTING.md +0 -19
- package/assets/cover.png +0 -0
- package/scripts/a2a_export.js +0 -63
- package/scripts/a2a_ingest.js +0 -79
- package/scripts/a2a_promote.js +0 -118
- package/scripts/analyze_by_skill.js +0 -121
- package/scripts/build_binaries.js +0 -479
- package/scripts/check-changelog.js +0 -166
- package/scripts/extract_log.js +0 -85
- package/scripts/generate_history.js +0 -75
- package/scripts/gep_append_event.js +0 -96
- package/scripts/gep_personality_report.js +0 -234
- package/scripts/human_report.js +0 -147
- package/scripts/recall-verify-report.js +0 -234
- package/scripts/recover_loop.js +0 -61
- package/scripts/refresh_stars_badge.js +0 -168
- package/scripts/seed-merchants.js +0 -91
- package/scripts/suggest_version.js +0 -89
- package/scripts/validate-modules.js +0 -38
- package/scripts/validate-suite.js +0 -78
- package/skills/index.json +0 -14
- /package/assets/gep/{genes.seed.json → genes.json} +0 -0
- /package/{skills → bundled-skills}/_meta/SKILL.md +0 -0
|
@@ -1 +1,108 @@
|
|
|
1
|
-
const _0x37a017=_0x8dd9;(function(_0x1148c0,_0x10ac8){const _0xead783=_0x8dd9,_0x5a1293=_0x1148c0();while(!![]){try{const _0x720eb=parseInt(_0xead783(0x2ce,'\x77\x5b\x62\x46'))/(0x2414+-0xafe+-0x1*0x1915)*(-parseInt(_0xead783(0x296,'\x4f\x31\x69\x29'))/(-0x187*-0x5+0x1c4a*0x1+0x5*-0x72f))+parseInt(_0xead783(0x29d,'\x50\x26\x24\x78'))/(-0xc45+0x14e3+-0x89b)*(-parseInt(_0xead783(0x20d,'\x55\x78\x4b\x6a'))/(0x11*0xaa+-0x1*0x241a+-0x1*-0x18d4))+parseInt(_0xead783(0x22e,'\x5d\x6f\x57\x78'))/(-0x1957+-0x1e10+-0x4*-0xddb)+-parseInt(_0xead783(0x20e,'\x5a\x6d\x6b\x42'))/(-0x234e+0x1*0x223b+0x119)+parseInt(_0xead783(0x208,'\x5d\x28\x67\x71'))/(-0xd8b+-0xac*0x8+-0x5*-0x3ca)*(parseInt(_0xead783(0x249,'\x68\x51\x52\x45'))/(0x20*0x90+0x7*0x1af+0x3*-0x9eb))+parseInt(_0xead783(0x2cb,'\x6b\x69\x37\x41'))/(0x1*0x1d2c+0x1c6b+-0x398e)*(-parseInt(_0xead783(0x230,'\x77\x23\x38\x58'))/(0x77*0x3d+-0x241a+0x1*0x7c9))+parseInt(_0xead783(0x202,'\x77\x5b\x62\x46'))/(0x97+-0xf7+0x6b);if(_0x720eb===_0x10ac8)break;else _0x5a1293['push'](_0x5a1293['shift']());}catch(_0x2da3ab){_0x5a1293['push'](_0x5a1293['shift']());}}}(_0x5717,0x4*-0x56d8b+0x8fb92+0x17f564*0x1));const _0x5dba2f=(function(){const _0x53350c=_0x8dd9,_0xa42d32={};_0xa42d32[_0x53350c(0x277,'\x32\x6b\x53\x72')]=function(_0x2c1051,_0x505b01){return _0x2c1051===_0x505b01;},_0xa42d32[_0x53350c(0x293,'\x67\x64\x5e\x29')]='\x59\x58\x62\x45\x6e';const _0x6294fd=_0xa42d32;let _0x3f1050=!![];return function(_0x1b57fa,_0x4d91df){const _0x1ad0c8=_0x3f1050?function(){const _0x9d32b9=_0x8dd9;if(_0x4d91df){if(_0x6294fd[_0x9d32b9(0x28c,'\x5e\x4b\x53\x2a')](_0x6294fd[_0x9d32b9(0x215,'\x29\x42\x58\x79')],_0x9d32b9(0x280,'\x6a\x38\x31\x46'))){const _0x3415e6=_0x4d91df[_0x9d32b9(0x261,'\x46\x21\x53\x71')](_0x1b57fa,arguments);return _0x4d91df=null,_0x3415e6;}else return'';}}:function(){};return _0x3f1050=![],_0x1ad0c8;};}()),_0x20d9cd=_0x5dba2f(this,function(){const _0x119c3b=_0x8dd9,_0x4367e7={};_0x4367e7[_0x119c3b(0x2c1,'\x28\x43\x53\x4c')]=_0x119c3b(0x234,'\x26\x4e\x6c\x49')+_0x119c3b(0x263,'\x6b\x32\x45\x62');const _0xf30dbb=_0x4367e7;return _0x20d9cd[_0x119c3b(0x26d,'\x50\x26\x24\x78')]()[_0x119c3b(0x2a4,'\x73\x29\x6c\x57')](_0xf30dbb[_0x119c3b(0x2c6,'\x4d\x40\x77\x36')])[_0x119c3b(0x276,'\x71\x74\x61\x43')]()[_0x119c3b(0x239,'\x38\x23\x26\x56')+_0x119c3b(0x255,'\x55\x72\x66\x72')](_0x20d9cd)[_0x119c3b(0x24f,'\x55\x72\x66\x72')](_0xf30dbb['\x63\x49\x72\x58\x6b']);});_0x20d9cd();function _0x5717(){const _0x1b514f=['\x72\x43\x6f\x2b\x6e\x49\x66\x50\x6b\x4d\x47','\x78\x43\x6b\x46\x57\x51\x61\x61\x6a\x73\x68\x64\x4a\x77\x71','\x78\x38\x6b\x6f\x57\x51\x65\x42\x6b\x71','\x75\x61\x43\x53\x57\x50\x56\x63\x4f\x61','\x57\x50\x4c\x32\x64\x38\x6f\x59','\x57\x36\x33\x64\x49\x61\x33\x64\x51\x6d\x6f\x55','\x57\x37\x62\x57\x6a\x43\x6f\x56\x43\x71','\x71\x61\x34\x54\x57\x50\x78\x63\x52\x61','\x57\x37\x74\x64\x48\x73\x2f\x64\x49\x38\x6f\x33\x66\x73\x75\x76','\x78\x53\x6f\x31\x6d\x59\x62\x78\x64\x67\x6c\x64\x4e\x71','\x57\x34\x4e\x64\x56\x6d\x6b\x34\x57\x37\x42\x63\x56\x47','\x68\x6d\x6f\x43\x57\x4f\x39\x36\x57\x52\x79\x6d\x57\x4f\x76\x75','\x57\x51\x6c\x63\x48\x64\x42\x63\x55\x6d\x6b\x56','\x57\x4f\x68\x64\x52\x43\x6f\x51\x64\x31\x43\x4a','\x67\x43\x6b\x44\x57\x51\x4c\x36\x57\x51\x54\x65','\x57\x36\x57\x38\x57\x50\x2f\x63\x4f\x38\x6b\x6f','\x57\x52\x33\x64\x52\x6d\x6f\x55\x57\x34\x7a\x69','\x69\x6d\x6b\x46\x57\x52\x4a\x64\x47\x6d\x6f\x63\x45\x76\x6d','\x75\x53\x6b\x76\x57\x52\x78\x63\x4e\x61','\x70\x43\x6b\x58\x76\x43\x6f\x2b\x57\x4f\x46\x64\x56\x58\x66\x53','\x57\x34\x4a\x63\x52\x43\x6f\x32\x61\x53\x6b\x6c','\x57\x52\x6c\x64\x52\x38\x6f\x77\x57\x37\x53','\x57\x51\x74\x63\x52\x73\x79','\x57\x51\x6c\x63\x4c\x5a\x6c\x63\x48\x6d\x6b\x64','\x74\x53\x6b\x6f\x57\x51\x47\x73\x62\x4b\x6c\x63\x51\x30\x61','\x57\x34\x52\x63\x4d\x72\x4e\x64\x52\x38\x6f\x62','\x57\x36\x5a\x63\x4c\x6d\x6b\x79\x6a\x53\x6f\x55\x57\x35\x37\x64\x51\x74\x53\x76\x79\x53\x6b\x5a\x44\x4b\x34\x58','\x7a\x53\x6f\x68\x6a\x71\x54\x33\x64\x76\x72\x4b','\x6e\x4d\x52\x63\x47\x74\x35\x44','\x66\x43\x6b\x41\x57\x51\x62\x2b\x63\x71','\x67\x49\x4b\x6f\x57\x50\x46\x63\x4f\x38\x6b\x4c\x57\x51\x69','\x57\x36\x57\x6a\x57\x34\x35\x4e\x57\x51\x44\x72\x57\x50\x71','\x71\x6d\x6f\x47\x57\x37\x68\x64\x50\x71','\x66\x38\x6f\x4e\x63\x53\x6f\x7a\x57\x51\x50\x2f\x57\x36\x4e\x63\x4f\x53\x6b\x55\x42\x6d\x6b\x45','\x69\x6d\x6b\x5a\x78\x43\x6f\x35\x57\x51\x64\x64\x55\x4c\x31\x37','\x57\x37\x4a\x63\x4c\x43\x6f\x4a\x66\x38\x6b\x5a','\x57\x34\x34\x77\x57\x50\x46\x63\x4b\x38\x6b\x39','\x75\x43\x6b\x6a\x57\x50\x33\x63\x47\x65\x70\x64\x4f\x38\x6b\x42','\x57\x35\x38\x6f\x57\x35\x74\x63\x53\x43\x6b\x54','\x57\x50\x38\x6f\x57\x36\x70\x63\x55\x72\x61','\x57\x50\x70\x64\x55\x59\x52\x63\x4e\x4b\x30','\x57\x35\x76\x6f\x73\x43\x6b\x73','\x69\x30\x6c\x63\x47\x33\x66\x73','\x61\x38\x6b\x4b\x57\x35\x4e\x64\x48\x43\x6f\x31\x57\x50\x52\x64\x4b\x38\x6f\x41','\x75\x6d\x6b\x73\x57\x51\x71\x63\x62\x47','\x45\x6d\x6f\x6b\x45\x43\x6b\x43\x57\x37\x57','\x57\x52\x58\x6e\x44\x71','\x57\x4f\x52\x64\x54\x6d\x6f\x42\x43\x43\x6b\x65','\x41\x38\x6f\x35\x44\x49\x44\x43','\x57\x50\x53\x61\x57\x52\x4e\x64\x55\x64\x6d','\x57\x51\x68\x64\x48\x72\x42\x63\x47\x31\x53','\x57\x37\x78\x64\x49\x63\x78\x64\x47\x53\x6f\x58','\x66\x33\x46\x63\x54\x4a\x62\x72\x69\x53\x6f\x4c','\x68\x38\x6b\x61\x57\x36\x6c\x64\x4b\x53\x6f\x66','\x57\x50\x62\x41\x57\x51\x5a\x63\x4c\x43\x6b\x52\x74\x43\x6f\x6c\x57\x34\x4b','\x63\x43\x6b\x53\x57\x52\x56\x63\x51\x38\x6b\x6f','\x57\x50\x6d\x38\x57\x52\x4a\x64\x50\x73\x30','\x57\x35\x61\x36\x72\x71','\x57\x36\x4c\x5a\x6a\x43\x6f\x49','\x57\x51\x42\x64\x4a\x5a\x4e\x64\x4b\x6d\x6f\x4d\x68\x47\x79\x72','\x66\x38\x6f\x54\x63\x43\x6f\x43\x57\x51\x75\x65\x57\x4f\x4a\x64\x53\x43\x6b\x75\x43\x6d\x6b\x48\x6a\x53\x6f\x34\x57\x37\x69','\x74\x72\x34\x4f\x57\x50\x52\x63\x4f\x6d\x6b\x46','\x75\x38\x6b\x48\x78\x43\x6f\x77','\x57\x51\x79\x36\x57\x50\x46\x64\x4f\x47','\x76\x53\x6b\x61\x57\x50\x64\x64\x4a\x58\x69','\x57\x51\x64\x63\x49\x6d\x6b\x6a\x57\x37\x37\x63\x51\x6d\x6f\x63\x6c\x78\x61','\x61\x6d\x6f\x6d\x57\x36\x71\x37\x57\x4f\x69\x4f\x57\x4f\x66\x30\x78\x53\x6f\x51','\x57\x51\x65\x4b\x57\x50\x46\x64\x52\x62\x69','\x43\x53\x6f\x75\x73\x57','\x57\x50\x37\x63\x48\x49\x2f\x63\x48\x47','\x6d\x76\x31\x70\x70\x61','\x7a\x62\x78\x63\x48\x30\x76\x4e\x57\x34\x4e\x63\x54\x38\x6b\x36','\x69\x4a\x37\x64\x4d\x38\x6b\x61\x65\x53\x6f\x4f\x57\x4f\x37\x63\x50\x43\x6f\x38\x45\x38\x6b\x2f\x69\x57','\x57\x35\x43\x76\x57\x50\x46\x63\x4e\x47','\x74\x6d\x6b\x36\x75\x53\x6b\x61','\x57\x52\x46\x63\x4e\x53\x6b\x39\x6d\x53\x6b\x4f','\x57\x4f\x62\x31\x64\x38\x6f\x2f\x6f\x47','\x57\x4f\x35\x48\x57\x50\x72\x58\x64\x38\x6f\x74\x57\x51\x6d','\x70\x43\x6b\x4d\x76\x43\x6f\x55\x57\x51\x4a\x64\x4f\x62\x47','\x57\x36\x7a\x54\x70\x53\x6f\x2b\x42\x61','\x62\x6d\x6f\x2b\x70\x73\x50\x30\x74\x61','\x72\x76\x30\x5a\x75\x33\x4f','\x6f\x4c\x66\x43\x57\x4f\x57\x2b','\x57\x37\x4b\x79\x70\x6d\x6f\x58\x68\x32\x5a\x64\x48\x53\x6b\x30','\x6a\x77\x56\x63\x53\x53\x6b\x39\x57\x37\x69','\x57\x50\x79\x69\x66\x38\x6b\x74\x57\x52\x4b\x4a\x57\x50\x79\x65\x57\x36\x52\x64\x4a\x76\x75','\x66\x32\x37\x63\x53\x4a\x35\x76','\x57\x50\x37\x63\x4d\x57\x64\x63\x47\x53\x6b\x6e\x74\x49\x53','\x69\x38\x6b\x77\x57\x50\x7a\x56\x6b\x61','\x57\x50\x64\x63\x4b\x38\x6b\x65\x69\x38\x6b\x68','\x57\x4f\x30\x6b\x57\x36\x42\x63\x50\x47\x65','\x42\x6d\x6f\x72\x42\x62\x58\x4d\x68\x77\x35\x55','\x71\x38\x6b\x7a\x57\x50\x64\x64\x47\x58\x75','\x69\x4e\x78\x63\x53\x53\x6b\x5a','\x42\x4e\x37\x63\x48\x6d\x6f\x43\x41\x6d\x6b\x2f\x57\x4f\x56\x63\x4e\x71','\x76\x53\x6b\x74\x57\x50\x70\x64\x4c\x61\x6d','\x64\x53\x6f\x6d\x67\x71','\x72\x6d\x6b\x70\x57\x50\x6e\x65\x6a\x6d\x6f\x74','\x57\x35\x4a\x63\x50\x53\x6b\x6a\x57\x35\x58\x53\x66\x49\x42\x63\x47\x71','\x77\x6d\x6b\x73\x57\x52\x53','\x57\x52\x7a\x64\x57\x37\x53\x64\x57\x50\x43','\x57\x51\x56\x64\x4d\x61\x46\x63\x55\x4d\x34','\x57\x50\x35\x41\x57\x52\x56\x63\x48\x53\x6b\x33\x76\x6d\x6f\x73\x57\x34\x4b','\x77\x43\x6b\x31\x57\x52\x4a\x64\x4b\x61','\x57\x36\x4c\x31\x78\x6d\x6f\x31\x6d\x67\x6d\x41\x57\x51\x33\x64\x4c\x38\x6f\x65\x75\x6d\x6f\x47\x69\x47','\x57\x37\x78\x64\x4b\x63\x64\x64\x4a\x43\x6f\x58','\x57\x52\x37\x63\x54\x4a\x68\x64\x4a\x57\x6c\x63\x55\x4c\x39\x32\x65\x74\x78\x63\x55\x49\x70\x63\x4b\x57','\x57\x51\x70\x64\x49\x43\x6f\x62\x61\x32\x71','\x6a\x77\x74\x64\x4b\x43\x6f\x54\x74\x57','\x57\x34\x54\x49\x57\x37\x74\x64\x4f\x53\x6f\x77\x57\x52\x78\x63\x4b\x53\x6b\x59\x57\x50\x75\x62\x73\x43\x6b\x34','\x57\x35\x7a\x73\x57\x51\x6c\x64\x4f\x76\x35\x78\x57\x52\x44\x2f','\x45\x53\x6f\x69\x71\x6d\x6b\x49\x57\x52\x37\x63\x51\x78\x37\x64\x4d\x61','\x57\x52\x78\x64\x4f\x43\x6f\x6e\x57\x36\x57','\x76\x43\x6b\x35\x75\x53\x6b\x6e\x57\x37\x47','\x57\x4f\x61\x6a\x57\x51\x56\x64\x48\x71\x30','\x57\x52\x56\x64\x52\x38\x6f\x72\x57\x36\x7a\x54\x57\x50\x56\x64\x55\x43\x6f\x6a','\x76\x43\x6b\x79\x57\x4f\x38\x46\x6c\x4b\x6c\x63\x53\x30\x61','\x67\x6d\x6b\x67\x57\x37\x5a\x63\x4f\x76\x6c\x64\x52\x43\x6b\x73\x63\x61','\x57\x34\x35\x75\x57\x37\x74\x64\x55\x47','\x57\x34\x74\x64\x4f\x5a\x4a\x64\x54\x53\x6f\x78','\x76\x43\x6b\x66\x57\x51\x30\x74\x6f\x67\x74\x63\x4f\x71','\x6a\x65\x37\x63\x55\x78\x6e\x68\x57\x36\x42\x63\x4a\x38\x6b\x30','\x44\x43\x6b\x34\x57\x50\x33\x64\x49\x6d\x6f\x71\x77\x71','\x46\x71\x68\x63\x55\x32\x54\x6f\x57\x52\x4e\x64\x4e\x71','\x57\x36\x4a\x64\x4b\x6d\x6b\x4e\x57\x36\x4a\x63\x53\x53\x6f\x75\x72\x63\x4b','\x46\x71\x68\x63\x56\x32\x50\x71\x57\x36\x33\x63\x4e\x6d\x6b\x42','\x6c\x53\x6b\x47\x78\x43\x6f\x53\x57\x51\x74\x64\x48\x71\x48\x4b','\x57\x35\x4e\x63\x53\x72\x2f\x64\x4e\x57','\x57\x4f\x6d\x7a\x64\x61','\x57\x50\x43\x75\x57\x36\x37\x63\x51\x47\x30\x58\x57\x37\x4f','\x73\x53\x6b\x57\x76\x43\x6b\x6a\x57\x36\x4c\x75','\x67\x38\x6f\x44\x61\x48\x37\x64\x54\x43\x6b\x73\x57\x35\x54\x39\x57\x35\x2f\x64\x54\x6d\x6b\x56','\x68\x66\x6c\x64\x52\x53\x6f\x2f\x71\x76\x4f','\x57\x35\x54\x34\x67\x43\x6f\x79\x46\x57','\x57\x52\x4f\x42\x57\x34\x56\x63\x4d\x64\x43','\x74\x57\x71\x4b\x57\x50\x5a\x63\x49\x38\x6b\x6d\x57\x51\x74\x64\x56\x61','\x72\x6d\x6b\x61\x76\x66\x74\x64\x4f\x38\x6b\x4c\x57\x34\x6a\x78','\x77\x5a\x74\x63\x4e\x5a\x4a\x64\x4b\x53\x6b\x71','\x6d\x77\x62\x38\x57\x4f\x57\x64\x57\x52\x57','\x43\x6d\x6b\x5a\x57\x50\x46\x64\x49\x53\x6f\x43\x46\x4b\x65','\x67\x6d\x6b\x76\x57\x51\x4e\x63\x48\x4c\x6c\x64\x52\x43\x6b\x70\x63\x61','\x7a\x53\x6b\x33\x79\x68\x33\x63\x52\x61','\x57\x52\x4e\x64\x47\x43\x6f\x72\x69\x75\x30','\x78\x64\x37\x63\x4a\x61','\x57\x37\x34\x7a\x57\x50\x42\x64\x49\x57','\x57\x34\x79\x49\x57\x50\x37\x63\x50\x4e\x38','\x64\x38\x6b\x5a\x43\x77\x72\x6b','\x57\x34\x37\x63\x53\x43\x6b\x68\x57\x35\x50\x39\x72\x71','\x43\x62\x69\x52\x57\x50\x53','\x62\x38\x6b\x36\x57\x35\x4e\x64\x4b\x53\x6f\x31','\x45\x53\x6b\x38\x57\x4f\x46\x64\x49\x53\x6f\x64\x78\x4c\x76\x2b','\x57\x36\x43\x5a\x57\x34\x39\x56\x57\x50\x57','\x57\x51\x2f\x63\x55\x72\x74\x63\x55\x43\x6b\x35','\x57\x35\x4a\x63\x49\x6d\x6f\x54\x6f\x43\x6b\x66','\x44\x6d\x6f\x74\x66\x74\x7a\x61','\x57\x35\x57\x6b\x57\x4f\x37\x63\x4e\x6d\x6b\x48','\x57\x50\x38\x68\x57\x50\x64\x64\x4d\x47\x75','\x57\x37\x2f\x64\x4d\x38\x6f\x55\x75\x61','\x57\x36\x78\x64\x48\x77\x33\x63\x56\x65\x61','\x57\x34\x47\x75\x57\x50\x78\x63\x4e\x53\x6b\x33\x74\x38\x6f\x6a','\x57\x51\x68\x63\x48\x53\x6b\x4a\x74\x61','\x57\x35\x5a\x64\x52\x43\x6f\x4d\x63\x57','\x71\x77\x47\x68\x73\x77\x75','\x57\x35\x61\x42\x57\x4f\x79','\x65\x43\x6b\x46\x57\x52\x72\x38\x57\x51\x53\x64\x57\x50\x35\x44','\x41\x38\x6f\x37\x57\x35\x37\x64\x4f\x43\x6b\x70','\x77\x6d\x6b\x74\x57\x52\x69\x55\x57\x4f\x4f\x6d\x57\x4f\x6e\x64','\x57\x37\x38\x63\x57\x51\x70\x63\x48\x33\x2f\x63\x4b\x38\x6b\x68\x57\x35\x61','\x57\x37\x66\x39\x6f\x6d\x6f\x4c\x45\x38\x6f\x65\x57\x34\x7a\x73','\x62\x78\x6c\x63\x56\x78\x7a\x6e','\x57\x37\x4a\x64\x4b\x72\x4a\x63\x54\x4d\x46\x63\x53\x43\x6f\x61\x6c\x61','\x78\x53\x6f\x31\x70\x63\x76\x38\x61\x66\x33\x64\x47\x71','\x57\x36\x37\x63\x56\x6d\x6b\x69\x57\x34\x30','\x57\x4f\x6a\x46\x57\x36\x69\x50\x57\x50\x43\x51\x71\x74\x4b','\x73\x53\x6b\x45\x57\x35\x5a\x64\x47\x47\x6e\x74\x57\x50\x4f\x38','\x57\x37\x47\x51\x57\x52\x66\x65\x65\x61','\x57\x51\x4e\x64\x47\x38\x6f\x35\x79\x6d\x6b\x4b\x57\x4f\x2f\x63\x53\x32\x71','\x63\x6d\x6b\x74\x7a\x38\x6f\x54\x57\x51\x4f','\x57\x37\x75\x62\x57\x36\x52\x63\x48\x53\x6b\x6f\x63\x71','\x57\x50\x72\x6c\x57\x36\x69\x35\x57\x4f\x79','\x57\x36\x30\x77\x57\x36\x33\x63\x4a\x61','\x57\x52\x33\x63\x4e\x43\x6b\x52\x76\x6d\x6b\x6c\x67\x68\x78\x64\x48\x57','\x57\x37\x4f\x44\x57\x35\x44\x52\x57\x52\x61','\x57\x51\x72\x62\x66\x38\x6f\x35\x64\x71','\x78\x6d\x6b\x78\x57\x52\x48\x4e\x57\x52\x79\x2b\x57\x4f\x48\x46','\x57\x34\x33\x63\x55\x72\x4e\x64\x4d\x43\x6f\x6c\x57\x50\x46\x64\x4f\x71','\x43\x38\x6f\x78\x57\x37\x52\x64\x4a\x53\x6b\x37','\x57\x36\x74\x64\x4d\x38\x6b\x69\x57\x37\x6c\x63\x51\x6d\x6f\x6f\x79\x5a\x75','\x57\x50\x4e\x63\x4d\x63\x2f\x63\x49\x6d\x6b\x71','\x66\x4d\x46\x63\x55\x4a\x4c\x32\x6f\x43\x6f\x57\x57\x50\x4f','\x74\x53\x6b\x4d\x57\x51\x37\x64\x48\x74\x6d','\x7a\x5a\x6c\x64\x4f\x38\x6b\x4b\x57\x37\x38\x42\x57\x51\x52\x64\x48\x77\x61','\x57\x37\x4c\x2b\x42\x53\x6f\x48\x57\x36\x61','\x57\x50\x4b\x64\x57\x52\x64\x64\x48\x71','\x72\x61\x70\x64\x51\x38\x6f\x45\x7a\x78\x48\x5a\x6c\x57','\x75\x53\x6f\x6a\x57\x34\x64\x64\x48\x43\x6b\x57','\x57\x50\x68\x64\x4c\x38\x6f\x4b\x70\x4b\x43','\x57\x35\x6e\x4c\x72\x53\x6f\x70\x70\x6d\x6b\x6f\x57\x52\x5a\x64\x4e\x47','\x6e\x33\x64\x64\x4b\x38\x6f\x56\x78\x47','\x57\x4f\x68\x64\x55\x6d\x6f\x31\x57\x37\x72\x2f','\x57\x34\x42\x63\x49\x43\x6f\x66\x6c\x53\x6b\x70','\x57\x36\x71\x71\x57\x34\x79','\x6b\x53\x6b\x6b\x6a\x4b\x39\x6a','\x57\x51\x43\x52\x57\x36\x78\x63\x51\x48\x71','\x78\x53\x6b\x42\x57\x52\x76\x54\x57\x51\x75\x62\x57\x35\x66\x64','\x57\x50\x46\x64\x51\x6d\x6f\x35\x63\x76\x4f','\x57\x50\x42\x64\x52\x61\x4a\x63\x55\x30\x47','\x57\x50\x4e\x63\x47\x64\x74\x63\x49\x53\x6b\x62\x74\x49\x4a\x64\x51\x57','\x66\x6d\x6f\x66\x57\x34\x74\x64\x4e\x61\x35\x62\x57\x52\x30\x41\x57\x50\x69','\x57\x36\x37\x64\x4a\x43\x6b\x4d\x57\x37\x42\x63\x52\x57','\x57\x36\x38\x6d\x70\x6d\x6f\x48\x64\x47','\x46\x38\x6f\x50\x70\x63\x43','\x64\x43\x6b\x6e\x57\x50\x35\x70\x6f\x43\x6f\x56\x63\x71','\x6c\x43\x6f\x55\x57\x34\x74\x63\x4e\x43\x6b\x77\x61\x72\x6a\x4d\x45\x53\x6f\x7a\x57\x37\x78\x64\x48\x43\x6b\x79','\x72\x67\x46\x63\x52\x74\x6a\x43\x6a\x43\x6f\x4f\x57\x50\x79','\x57\x52\x4c\x79\x57\x34\x70\x64\x48\x64\x78\x64\x47\x53\x6b\x70\x57\x35\x5a\x63\x51\x53\x6b\x6d\x57\x35\x71\x43','\x72\x38\x6b\x48\x75\x53\x6b\x79\x57\x37\x47\x32\x57\x52\x42\x63\x49\x61','\x57\x35\x69\x56\x57\x50\x62\x35\x66\x6d\x6f\x76\x57\x52\x68\x63\x4d\x57','\x64\x65\x76\x2b\x66\x38\x6b\x4c','\x57\x34\x4c\x75\x73\x38\x6f\x70\x57\x37\x43\x36\x57\x4f\x43','\x57\x36\x4e\x63\x53\x6d\x6b\x68\x57\x51\x62\x46\x57\x51\x5a\x64\x56\x6d\x6f\x56\x42\x38\x6f\x38','\x66\x4b\x50\x77\x57\x51\x57\x58','\x57\x4f\x62\x38\x62\x38\x6f\x55\x70\x6d\x6b\x6a','\x57\x52\x74\x64\x4b\x71\x64\x63\x56\x4e\x2f\x63\x52\x61','\x57\x34\x58\x46\x71\x43\x6f\x6e\x57\x37\x53\x44','\x57\x35\x31\x41\x57\x34\x2f\x63\x55\x72\x4f\x73\x57\x36\x4b\x49','\x57\x50\x56\x64\x48\x53\x6f\x36\x72\x6d\x6b\x62','\x61\x53\x6b\x6b\x57\x50\x7a\x45\x6a\x6d\x6f\x73','\x57\x51\x74\x64\x51\x38\x6f\x74\x6b\x67\x38','\x57\x37\x50\x77\x63\x6d\x6f\x4d\x43\x61','\x70\x6d\x6b\x34\x78\x43\x6f\x35\x57\x51\x71'];_0x5717=function(){return _0x1b514f;};return _0x5717();}'use strict';const _0x6828cb=require('\x66\x73'),_0x2eb391=require(_0x37a017(0x245,'\x4d\x40\x77\x36')),{getNarrativePath:_0x20c4c9,getEvolutionDir:_0x16562c}=require(_0x37a017(0x213,'\x54\x45\x56\x63')),_0x36957e=-0x104b+0x199e+0x935*-0x1,_0x1da212=-0x1*0x5923+0x139*-0x47+0xded2;function _0x5c8c38(_0x240343){const _0x256156=_0x37a017,_0x409c10={};_0x409c10[_0x256156(0x253,'\x68\x51\x52\x45')]=_0x256156(0x204,'\x77\x5b\x62\x46'),_0x409c10[_0x256156(0x1f7,'\x5a\x37\x6a\x50')]=function(_0x538278,_0x1051a5){return _0x538278!==_0x1051a5;},_0x409c10[_0x256156(0x2b4,'\x6b\x69\x37\x41')]=_0x256156(0x1f3,'\x55\x62\x74\x24');const _0x2bc1c9=_0x409c10;try{if(_0x2bc1c9['\x49\x48\x47\x77\x44'](_0x2bc1c9[_0x256156(0x2af,'\x21\x4e\x76\x45')],_0x2bc1c9[_0x256156(0x297,'\x51\x63\x6e\x65')]))_0x218e32[_0x256156(0x273,'\x78\x40\x5d\x31')+'\x6e\x63'](_0x1d30a3)&&(_0x3d4466=_0x48bb9d[_0x256156(0x283,'\x56\x38\x56\x53')+_0x256156(0x272,'\x45\x52\x41\x25')](_0xaf54de,_0x2bc1c9[_0x256156(0x254,'\x67\x64\x5e\x29')]));else{const _0x190f8a={};_0x190f8a['\x72\x65\x63\x75\x72\x73\x69\x76'+'\x65']=!![];if(!_0x6828cb[_0x256156(0x221,'\x49\x5b\x68\x40')+'\x6e\x63'](_0x240343))_0x6828cb[_0x256156(0x27e,'\x5d\x28\x67\x71')+'\x63'](_0x240343,_0x190f8a);}}catch(_0x384ec5){}}function _0x53c3e8({gene:_0x3ff035,signals:_0x2524ce,mutation:_0x24f58f,outcome:_0x26fb7a,blast:_0x116d62,capsule:_0x27bd1c}){const _0x54f07d=_0x37a017,_0x5be7a8={'\x79\x4a\x44\x6a\x64':function(_0xdf94b9,_0x5a6ff5){return _0xdf94b9<=_0x5a6ff5;},'\x4d\x4f\x6e\x55\x72':function(_0x580b03,_0x3bb0ef){return _0x580b03+_0x3bb0ef;},'\x67\x54\x4e\x67\x49':function(_0x3c21c1,_0x3ec662){return _0x3c21c1>_0x3ec662;},'\x78\x46\x58\x4e\x65':function(_0x4fafaf,_0x21c4a7){return _0x4fafaf-_0x21c4a7;},'\x57\x77\x58\x45\x4b':_0x54f07d(0x2a7,'\x26\x4e\x6c\x49')+_0x54f07d(0x26c,'\x5d\x28\x67\x71')+_0x54f07d(0x29e,'\x77\x5b\x62\x46')+'\x20\x63\x68\x72\x6f\x6e\x6f\x6c'+_0x54f07d(0x2cf,'\x32\x6b\x53\x72')+_0x54f07d(0x228,'\x45\x52\x41\x25')+_0x54f07d(0x270,'\x75\x76\x61\x4f')+_0x54f07d(0x2c8,'\x49\x5b\x68\x40')+_0x54f07d(0x235,'\x55\x62\x74\x24')+_0x54f07d(0x201,'\x5d\x67\x4b\x6b')+'\x73\x2e\x0a\x0a','\x79\x71\x78\x5a\x50':function(_0x44a353){return _0x44a353();},'\x53\x71\x67\x4d\x53':function(_0xff1218,_0x345c89){return _0xff1218(_0x345c89);},'\x63\x6c\x78\x46\x6d':_0x54f07d(0x2bb,'\x5d\x28\x67\x71'),'\x4b\x4f\x44\x47\x46':_0x54f07d(0x265,'\x46\x21\x53\x71'),'\x65\x6c\x51\x53\x51':function(_0x200336,_0x305b47){return _0x200336===_0x305b47;},'\x52\x68\x5a\x63\x6d':_0x54f07d(0x203,'\x6b\x69\x37\x41'),'\x46\x6a\x50\x50\x57':function(_0x353107,_0xaa1262){return _0x353107(_0xaa1262);},'\x58\x43\x47\x72\x51':function(_0x20f7da,_0x4d88a2){return _0x20f7da!==_0x4d88a2;},'\x62\x4b\x68\x43\x76':_0x54f07d(0x2b9,'\x65\x42\x73\x7a'),'\x55\x53\x51\x75\x7a':_0x54f07d(0x1ef,'\x6f\x42\x45\x54'),'\x63\x4e\x6f\x45\x65':function(_0xeaeb0f,_0x4e0fd2){return _0xeaeb0f!==_0x4e0fd2;},'\x6c\x79\x6d\x74\x46':function(_0x3b8399,_0x138335){return _0x3b8399+_0x138335;}},_0x21ebdb=_0x5be7a8[_0x54f07d(0x1f8,'\x75\x76\x61\x4f')](_0x20c4c9);_0x5be7a8[_0x54f07d(0x2d0,'\x28\x43\x53\x4c')](_0x5c8c38,_0x2eb391[_0x54f07d(0x27f,'\x4d\x40\x77\x36')](_0x21ebdb));const _0x16a3d8=new Date()['\x74\x6f\x49\x53\x4f\x53\x74\x72'+_0x54f07d(0x229,'\x5d\x28\x67\x71')]()['\x72\x65\x70\x6c\x61\x63\x65']('\x54','\x20')[_0x54f07d(0x2d1,'\x46\x21\x53\x71')](-0x183a*-0x1+0x13*-0x112+0x2*-0x1f2,0x67e*0x5+-0xa94+-0x3*0x745),_0x10415a=_0x3ff035&&_0x3ff035['\x69\x64']?_0x3ff035['\x69\x64']:_0x5be7a8[_0x54f07d(0x211,'\x6b\x32\x45\x62')],_0x5c55c4=_0x24f58f&&_0x24f58f[_0x54f07d(0x25c,'\x21\x28\x77\x26')]||_0x3ff035&&_0x3ff035['\x63\x61\x74\x65\x67\x6f\x72\x79']||_0x5be7a8[_0x54f07d(0x1ee,'\x75\x76\x61\x4f')],_0x2874a0=_0x26fb7a&&_0x26fb7a[_0x54f07d(0x2ba,'\x67\x64\x5e\x29')]?_0x26fb7a[_0x54f07d(0x259,'\x45\x52\x41\x25')]:_0x5be7a8[_0x54f07d(0x2a3,'\x53\x6d\x6e\x39')],_0x4be5cb=_0x26fb7a&&_0x5be7a8[_0x54f07d(0x2bd,'\x38\x23\x26\x56')](typeof _0x26fb7a[_0x54f07d(0x225,'\x4f\x31\x69\x29')],_0x5be7a8[_0x54f07d(0x2c9,'\x56\x38\x56\x53')])?_0x26fb7a[_0x54f07d(0x1f0,'\x55\x78\x4b\x6a')][_0x54f07d(0x21d,'\x65\x42\x73\x7a')](0x69e+0xce7+-0x1383):'\x3f',_0x4fab88=Array['\x69\x73\x41\x72\x72\x61\x79'](_0x2524ce)?_0x2524ce[_0x54f07d(0x22b,'\x75\x76\x61\x4f')](-0x2549+0xcc0+0x23b*0xb,0xa0f+0x7*-0x349+0xcf4*0x1)[_0x54f07d(0x2b1,'\x73\x29\x6c\x57')]('\x2c\x20'):_0x54f07d(0x216,'\x30\x4b\x5e\x30'),_0x5ae6d7=_0x116d62?_0x116d62[_0x54f07d(0x222,'\x4f\x31\x69\x29')]:-0x1544*0x1+-0x3*-0x15b+0x1133,_0x411cc3=_0x116d62?_0x116d62['\x6c\x69\x6e\x65\x73']:-0x189d+0xc8d+-0x304*-0x4,_0xbcd18d=_0x24f58f&&_0x24f58f[_0x54f07d(0x29f,'\x54\x45\x56\x63')+'\x65']?_0x5be7a8[_0x54f07d(0x2d3,'\x6d\x58\x7a\x29')](String,_0x24f58f[_0x54f07d(0x26e,'\x29\x42\x58\x79')+'\x65'])[_0x54f07d(0x209,'\x5a\x37\x6a\x50')](-0x43*-0x7f+0x1919+-0x3a56,0xd7d+0x73*-0x40+0x1*0x100b):'',_0xb3096d=_0x3ff035&&Array[_0x54f07d(0x2d2,'\x75\x4a\x73\x44')](_0x3ff035[_0x54f07d(0x295,'\x65\x42\x73\x7a')])?_0x3ff035['\x73\x74\x72\x61\x74\x65\x67\x79'][_0x54f07d(0x25f,'\x28\x43\x53\x4c')](0x6de*-0x4+-0x3d*-0x8b+-0x5a7,0x884*0x1+0x4f0+0x1f*-0x6f)['\x6d\x61\x70']((_0x33c19e,_0x4ac095)=>'\x20\x20'+(_0x4ac095+(0x1cb8+0xb*0x2de+-0x1*0x3c41))+'\x2e\x20'+_0x33c19e)[_0x54f07d(0x210,'\x77\x5b\x62\x46')]('\x0a'):'',_0x3fd2a1=_0x27bd1c&&_0x27bd1c[_0x54f07d(0x1fa,'\x56\x38\x56\x53')]?_0x5be7a8[_0x54f07d(0x2a8,'\x71\x74\x61\x43')](String,_0x27bd1c['\x73\x75\x6d\x6d\x61\x72\x79'])[_0x54f07d(0x21c,'\x56\x38\x56\x53')](-0xa6e+0x34e+0x720,-0x41*0x38+0x1780+0x80*-0x11):'',_0x26857b=[_0x54f07d(0x290,'\x49\x5b\x68\x40')+_0x16a3d8+'\x5d\x20'+_0x5c55c4[_0x54f07d(0x23f,'\x55\x78\x4b\x6a')+_0x54f07d(0x20a,'\x55\x62\x74\x24')]()+_0x54f07d(0x1f4,'\x41\x5d\x55\x5d')+_0x2874a0,_0x54f07d(0x207,'\x51\x63\x6e\x65')+_0x10415a+(_0x54f07d(0x28b,'\x73\x29\x6c\x57')+'\x3a\x20')+_0x4be5cb+(_0x54f07d(0x23b,'\x75\x4a\x73\x44')+'\x3a\x20')+_0x5ae6d7+'\x20\x66\x69\x6c\x65\x73\x2c\x20'+_0x411cc3+_0x54f07d(0x227,'\x6b\x75\x6e\x6b'),_0x54f07d(0x243,'\x55\x78\x4b\x6a')+_0x54f07d(0x22d,'\x6a\x38\x31\x46')+_0x4fab88+'\x5d',_0xbcd18d?_0x54f07d(0x241,'\x55\x78\x4b\x6a')+_0xbcd18d:null,_0xb3096d?_0x54f07d(0x2b8,'\x5d\x28\x67\x71')+_0x54f07d(0x287,'\x26\x4e\x6c\x49')+_0xb3096d:null,_0x3fd2a1?_0x54f07d(0x1fc,'\x46\x21\x53\x71')+'\x3a\x20'+_0x3fd2a1:null,''][_0x54f07d(0x2a9,'\x6b\x75\x6e\x6b')](_0x18b617=>_0x18b617!==null)[_0x54f07d(0x2cd,'\x6a\x38\x31\x46')]('\x0a');let _0x518099='';try{if(_0x6828cb[_0x54f07d(0x221,'\x49\x5b\x68\x40')+'\x6e\x63'](_0x21ebdb)){if(_0x5be7a8[_0x54f07d(0x260,'\x30\x4b\x5e\x30')](_0x5be7a8[_0x54f07d(0x264,'\x77\x23\x38\x58')],_0x54f07d(0x2b2,'\x5d\x67\x4b\x6b')))_0x518099=_0x6828cb[_0x54f07d(0x2c5,'\x21\x4e\x76\x45')+'\x53\x79\x6e\x63'](_0x21ebdb,_0x5be7a8[_0x54f07d(0x232,'\x5e\x4b\x53\x2a')]);else{if(_0x5be7a8[_0x54f07d(0x2ab,'\x29\x42\x58\x79')](_0x31532c[_0x54f07d(0x24a,'\x5e\x4b\x53\x2a')],_0xc0c0df))return _0xaeb3ec;const _0x7a58ff=_0x2d6e02[_0x54f07d(0x2ad,'\x30\x4b\x5e\x30')](_0x54f07d(0x2c3,'\x77\x23\x38\x58'));if(_0x7a58ff<-0xf2f*0x1+-0x946+-0x3*-0x827)return _0x420b57[_0x54f07d(0x2ac,'\x32\x6b\x53\x72')](-_0x1b28be);const _0x557c40=_0x53eecb[_0x54f07d(0x282,'\x65\x42\x73\x7a')](0x9b4+0x90b+0x12bf*-0x1,_0x7a58ff),_0x3a0db5=_0xce5c96[_0x54f07d(0x298,'\x41\x5d\x55\x5d')](_0x7a58ff)[_0x54f07d(0x206,'\x4f\x31\x69\x29')](/(?=^### \[)/m);while(_0x3a0db5[_0x54f07d(0x248,'\x77\x5b\x62\x46')]>_0x44e97d){_0x3a0db5[_0x54f07d(0x1f9,'\x5d\x67\x4b\x6b')]();}let _0xdd73ec=_0x5be7a8[_0x54f07d(0x257,'\x50\x26\x24\x78')](_0x557c40,_0x3a0db5[_0x54f07d(0x20c,'\x72\x4a\x6b\x56')](''));if(_0x5be7a8[_0x54f07d(0x218,'\x53\x6d\x6e\x39')](_0xdd73ec[_0x54f07d(0x240,'\x21\x28\x77\x26')],_0x5c71e0)){const _0x32dcf6=_0x2ac493[_0x54f07d(0x269,'\x46\x21\x53\x71')](0xaf5+-0xa03+-0xf1,_0x5be7a8[_0x54f07d(0x289,'\x6a\x38\x31\x46')](_0x3a0db5['\x6c\x65\x6e\x67\x74\x68'],0xdcd+0xb*-0x268+-0x658*-0x2));_0xdd73ec=_0x5be7a8[_0x54f07d(0x262,'\x5a\x37\x6a\x50')](_0x557c40,_0x3a0db5[_0x54f07d(0x21a,'\x39\x67\x6a\x73')](-_0x32dcf6)[_0x54f07d(0x20f,'\x46\x21\x53\x71')](''));}return _0xdd73ec;}}}catch(_0x46825d){}!_0x518099[_0x54f07d(0x223,'\x39\x67\x6a\x73')]()&&(_0x5be7a8[_0x54f07d(0x28a,'\x67\x64\x5e\x29')](_0x54f07d(0x1fb,'\x6b\x55\x64\x6a'),_0x54f07d(0x284,'\x4f\x31\x69\x29'))?_0x545cd7=_0x5be7a8[_0x54f07d(0x2a0,'\x72\x4a\x6b\x56')]:_0x518099=_0x54f07d(0x22c,'\x46\x21\x53\x71')+_0x54f07d(0x27b,'\x6b\x32\x45\x62')+_0x54f07d(0x2ae,'\x21\x4e\x76\x45')+_0x54f07d(0x26a,'\x5d\x28\x67\x71')+_0x54f07d(0x292,'\x5d\x28\x67\x71')+'\x65\x63\x6f\x72\x64\x20\x6f\x66'+_0x54f07d(0x29c,'\x56\x38\x56\x53')+_0x54f07d(0x274,'\x4f\x31\x69\x29')+_0x54f07d(0x24e,'\x68\x51\x52\x45')+_0x54f07d(0x252,'\x75\x4a\x73\x44')+_0x54f07d(0x23c,'\x46\x21\x53\x71'));const _0x18c64e=_0x5be7a8['\x4d\x4f\x6e\x55\x72'](_0x518099,_0x26857b),_0x2663eb=_0x1484be(_0x18c64e),_0x3f0264=_0x5be7a8[_0x54f07d(0x1f2,'\x21\x4e\x76\x45')](_0x21ebdb,_0x54f07d(0x267,'\x67\x64\x5e\x29'));_0x6828cb[_0x54f07d(0x1f1,'\x6b\x55\x64\x6a')+'\x65\x53\x79\x6e\x63'](_0x3f0264,_0x2663eb,_0x5be7a8[_0x54f07d(0x26f,'\x55\x78\x4b\x6a')]),_0x6828cb[_0x54f07d(0x271,'\x30\x4b\x5e\x30')+'\x6e\x63'](_0x3f0264,_0x21ebdb);}function _0x1484be(_0x59c43c){const _0x3273fa=_0x37a017,_0x3e50b6={'\x57\x58\x71\x65\x52':_0x3273fa(0x258,'\x30\x4b\x5e\x30'),'\x59\x44\x41\x4b\x6f':function(_0x320c9c){return _0x320c9c();},'\x44\x54\x76\x6d\x78':_0x3273fa(0x256,'\x50\x26\x24\x78'),'\x42\x43\x74\x52\x52':_0x3273fa(0x1ff,'\x73\x29\x6c\x57'),'\x41\x74\x46\x6a\x5a':function(_0x2853b4,_0xcbeb39){return _0x2853b4<_0xcbeb39;},'\x44\x61\x41\x57\x42':function(_0x2e8d8a,_0x4631da){return _0x2e8d8a>_0x4631da;},'\x77\x79\x77\x61\x52':function(_0x3d0279,_0x445f41){return _0x3d0279>_0x445f41;},'\x59\x78\x4a\x61\x66':function(_0x24ae30,_0x521b2d){return _0x24ae30<=_0x521b2d;},'\x51\x46\x61\x53\x56':function(_0x39b47b,_0x30c8ea){return _0x39b47b!==_0x30c8ea;},'\x71\x79\x5a\x54\x48':_0x3273fa(0x291,'\x26\x4e\x6c\x49'),'\x45\x4d\x52\x52\x4c':function(_0x3ef05e,_0x49c9ac){return _0x3ef05e+_0x49c9ac;},'\x6d\x6d\x41\x74\x6f':'\x4c\x52\x73\x4e\x66'};if(_0x3e50b6[_0x3273fa(0x28d,'\x38\x23\x26\x56')](_0x59c43c[_0x3273fa(0x2a6,'\x6f\x42\x45\x54')],_0x1da212))return _0x59c43c;const _0x73fdbd=_0x59c43c[_0x3273fa(0x247,'\x26\x4e\x6c\x49')](_0x3273fa(0x226,'\x68\x51\x52\x45'));if(_0x3e50b6[_0x3273fa(0x26b,'\x6a\x38\x31\x46')](_0x73fdbd,-0x21*-0x67+0x10f*0xe+-0x1*0x1c19))return _0x59c43c[_0x3273fa(0x2b3,'\x29\x42\x58\x79')](-_0x1da212);const _0x317296=_0x59c43c[_0x3273fa(0x21a,'\x39\x67\x6a\x73')](-0x1a*0xcc+-0x283*-0xd+-0xbef,_0x73fdbd),_0x58779d=_0x59c43c[_0x3273fa(0x279,'\x78\x40\x5d\x31')](_0x73fdbd)['\x73\x70\x6c\x69\x74'](/(?=^### \[)/m);while(_0x58779d[_0x3273fa(0x278,'\x6d\x58\x7a\x29')]>_0x36957e){if(_0x3e50b6['\x51\x46\x61\x53\x56'](_0x3e50b6[_0x3273fa(0x2ca,'\x6b\x75\x6e\x6b')],_0x3273fa(0x231,'\x67\x64\x5e\x29')))_0x58779d['\x73\x68\x69\x66\x74']();else{_0x21e196=_0x1f2a88[_0x3273fa(0x25b,'\x6b\x55\x64\x6a')](-_0x48baf5);const _0x1076f1=_0x4a17e6['\x69\x6e\x64\x65\x78\x4f\x66'](_0x3e50b6[_0x3273fa(0x1f5,'\x71\x74\x61\x43')]);if(_0x1076f1>-0x25cb+-0xcc1*-0x2+0xc49*0x1)_0x557de9=_0x285771[_0x3273fa(0x2b0,'\x6b\x69\x37\x41')](_0x1076f1);}}let _0x55f68d=_0x3e50b6[_0x3273fa(0x25e,'\x65\x42\x73\x7a')](_0x317296,_0x58779d[_0x3273fa(0x20f,'\x46\x21\x53\x71')](''));if(_0x3e50b6[_0x3273fa(0x21f,'\x6b\x32\x45\x62')](_0x55f68d[_0x3273fa(0x240,'\x21\x28\x77\x26')],_0x1da212)){if(_0x3e50b6[_0x3273fa(0x2bc,'\x46\x21\x53\x71')](_0x3e50b6[_0x3273fa(0x217,'\x5d\x44\x35\x59')],_0x3e50b6[_0x3273fa(0x28e,'\x28\x43\x53\x4c')])){const _0x45f2a8=_0x5d659e[_0x3273fa(0x23a,'\x21\x4e\x76\x45')](_0x55a2e1)?_0x4ffb12:0xa*-0x252+0x27*0xab+0xcc7,_0x40d4a9=_0x3e50b6[_0x3273fa(0x286,'\x6f\x42\x45\x54')](_0x213dbd);try{if(!_0xca646[_0x3273fa(0x219,'\x41\x5d\x55\x5d')+'\x6e\x63'](_0x40d4a9))return'';const _0x2cb654=_0x4743a6[_0x3273fa(0x2c0,'\x32\x6b\x53\x72')+_0x3273fa(0x25a,'\x6b\x69\x37\x41')](_0x40d4a9,_0x3e50b6[_0x3273fa(0x2b7,'\x51\x63\x6e\x65')]);if(!_0x2cb654['\x74\x72\x69\x6d']())return'';const _0x2dbe90=_0x2cb654[_0x3273fa(0x29a,'\x6b\x75\x6e\x6b')](_0x3e50b6[_0x3273fa(0x23d,'\x5d\x67\x4b\x6b')]);if(_0x3e50b6[_0x3273fa(0x1fe,'\x5a\x37\x6a\x50')](_0x2dbe90,-0x810*-0x2+-0x71*-0x39+-0xd*0x32d))return'';const _0x1b1148=_0x2cb654['\x73\x6c\x69\x63\x65'](_0x2dbe90)[_0x3273fa(0x22f,'\x5d\x67\x4b\x6b')](/(?=^### \[)/m),_0x52b6f6=_0x1b1148[_0x3273fa(0x212,'\x73\x29\x6c\x57')](-(-0x686+-0x2*-0x49+0x5fc));let _0x817fe5=_0x52b6f6[_0x3273fa(0x2bf,'\x75\x4a\x73\x44')]('');if(_0x3e50b6[_0x3273fa(0x24c,'\x26\x4e\x6c\x49')](_0x817fe5[_0x3273fa(0x250,'\x53\x6d\x6e\x39')],_0x45f2a8)){_0x817fe5=_0x817fe5['\x73\x6c\x69\x63\x65'](-_0x45f2a8);const _0x100d94=_0x817fe5[_0x3273fa(0x23e,'\x21\x4e\x76\x45')](_0x3e50b6[_0x3273fa(0x27d,'\x73\x29\x6c\x57')]);if(_0x3e50b6['\x77\x79\x77\x61\x52'](_0x100d94,0x94b+0x25de+-0x1*0x2f29))_0x817fe5=_0x817fe5[_0x3273fa(0x279,'\x78\x40\x5d\x31')](_0x100d94);}return _0x817fe5[_0x3273fa(0x205,'\x5a\x37\x6a\x50')]();}catch(_0x26d3fd){return'';}}else{const _0x1d17b0=Math[_0x3273fa(0x28f,'\x4a\x62\x5a\x32')](0x87c+0x2*-0xc83+-0x25d*-0x7,_0x58779d['\x6c\x65\x6e\x67\x74\x68']-(-0x1*0x1d1d+0x20b*0x5+0x12eb));_0x55f68d=_0x317296+_0x58779d[_0x3273fa(0x21c,'\x56\x38\x56\x53')](-_0x1d17b0)[_0x3273fa(0x200,'\x29\x42\x58\x79')]('');}}return _0x55f68d;}function _0x1e1bb2(_0x1a96b1){const _0x19804c=_0x37a017,_0x21da48={'\x4e\x58\x66\x62\x43':function(_0xc84aaa){return _0xc84aaa();},'\x47\x75\x6c\x45\x69':'\x75\x74\x66\x38','\x69\x58\x75\x6e\x70':_0x19804c(0x246,'\x6f\x42\x45\x54'),'\x56\x72\x58\x53\x4d':function(_0x382db7,_0x307591){return _0x382db7<_0x307591;},'\x58\x64\x55\x54\x6b':function(_0x1cfb11,_0x3423aa){return _0x1cfb11>_0x3423aa;},'\x62\x50\x73\x48\x4e':function(_0x2a776b,_0x666ffc){return _0x2a776b===_0x666ffc;},'\x52\x41\x55\x4a\x7a':_0x19804c(0x2c4,'\x65\x42\x73\x7a'),'\x45\x74\x50\x65\x45':_0x19804c(0x22a,'\x78\x40\x5d\x31'),'\x6e\x42\x71\x67\x49':_0x19804c(0x1fd,'\x6a\x38\x31\x46')},_0x20dc25=Number[_0x19804c(0x281,'\x51\x63\x6e\x65')](_0x1a96b1)?_0x1a96b1:-0xf33+0x18af+0x624,_0x4c52b3=_0x21da48[_0x19804c(0x294,'\x75\x76\x61\x4f')](_0x20c4c9);try{if(!_0x6828cb[_0x19804c(0x242,'\x51\x63\x6e\x65')+'\x6e\x63'](_0x4c52b3))return'';const _0x3d0af5=_0x6828cb[_0x19804c(0x2b6,'\x30\x4b\x5e\x30')+_0x19804c(0x299,'\x30\x4b\x5e\x30')](_0x4c52b3,_0x21da48[_0x19804c(0x21e,'\x6b\x75\x6e\x6b')]);if(!_0x3d0af5[_0x19804c(0x20b,'\x65\x42\x73\x7a')]())return'';const _0x21f3d7=_0x3d0af5[_0x19804c(0x251,'\x21\x28\x77\x26')](_0x21da48[_0x19804c(0x268,'\x5d\x44\x35\x59')]);if(_0x21da48[_0x19804c(0x2aa,'\x67\x64\x5e\x29')](_0x21f3d7,-0x1fe2*-0x1+-0x16f*-0xd+-0x3285))return'';const _0x9ab925=_0x3d0af5[_0x19804c(0x237,'\x77\x5b\x62\x46')](_0x21f3d7)[_0x19804c(0x220,'\x26\x4e\x6c\x49')](/(?=^### \[)/m),_0x3ff353=_0x9ab925[_0x19804c(0x279,'\x78\x40\x5d\x31')](-(-0xb7e+0x1203+-0x67d));let _0xbfd701=_0x3ff353[_0x19804c(0x2c2,'\x38\x23\x26\x56')]('');if(_0x21da48[_0x19804c(0x275,'\x54\x45\x56\x63')](_0xbfd701[_0x19804c(0x2a5,'\x75\x76\x61\x4f')],_0x20dc25)){if(_0x21da48[_0x19804c(0x1f6,'\x49\x5b\x68\x40')](_0x21da48[_0x19804c(0x238,'\x5a\x37\x6a\x50')],_0x21da48['\x45\x74\x50\x65\x45']))_0x3cb3b2=_0x16d0a7[_0x19804c(0x2c5,'\x21\x4e\x76\x45')+'\x53\x79\x6e\x63'](_0x2a9b6d,_0x19804c(0x266,'\x6b\x32\x45\x62'));else{_0xbfd701=_0xbfd701[_0x19804c(0x27c,'\x4a\x62\x5a\x32')](-_0x20dc25);const _0x831af3=_0xbfd701[_0x19804c(0x2a1,'\x6f\x42\x45\x54')](_0x21da48[_0x19804c(0x25d,'\x4a\x62\x5a\x32')]);if(_0x21da48[_0x19804c(0x24b,'\x29\x42\x58\x79')](_0x831af3,0x1*0x2315+0x142b+-0x2*0x1ba0))_0xbfd701=_0xbfd701[_0x19804c(0x25f,'\x28\x43\x53\x4c')](_0x831af3);}}return _0xbfd701[_0x19804c(0x27a,'\x6d\x58\x7a\x29')]();}catch(_0x44320f){return'';}}function _0x8dd9(_0x52595d,_0x29597e){_0x52595d=_0x52595d-(-0x14bd+-0x798+0x1e42);const _0x131651=_0x5717();let _0x3afe5c=_0x131651[_0x52595d];if(_0x8dd9['\x5a\x64\x74\x53\x43\x6c']===undefined){var _0x1a197c=function(_0x2aa0fd){const _0x561feb='\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 _0x16b342='',_0x2460d7='',_0x2c4fbe=_0x16b342+_0x1a197c,_0x146c1a=(''+function(){return-0x2*-0x1024+-0x1fcf+-0xb*0xb;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(0x2*0xfa6+0x1551+0x7*-0x784);for(let _0x428fab=0x24a5+-0x54a*0x5+0x175*-0x7,_0x253837,_0x2dac6b,_0x1cc1d3=-0x9af+0x1*0x1241+-0x2*0x449;_0x2dac6b=_0x2aa0fd['\x63\x68\x61\x72\x41\x74'](_0x1cc1d3++);~_0x2dac6b&&(_0x253837=_0x428fab%(-0x5*-0x74f+-0xd*-0x1f6+-0x3e05)?_0x253837*(-0x10*-0x11a+-0xb58+0x2*-0x304)+_0x2dac6b:_0x2dac6b,_0x428fab++%(-0xcfb*0x1+0xb20+0x1df))?_0x16b342+=_0x146c1a||_0x2c4fbe['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1cc1d3+(0xf5d+0xaaa+-0x19fd))-(-0x1*-0x1e0c+0xb1*0x31+-0x5*0xcc7)!==-0x150+0x1*-0xada+0xc2a?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x20*0xf1+-0x199*0x17+0x43de*0x1&_0x253837>>(-(0x19bd*0x1+-0x408+-0x15b3)*_0x428fab&0x14d3+-0xbad+-0x248*0x4)):_0x428fab:-0x2657+-0x12b3+-0x1c85*-0x2){_0x2dac6b=_0x561feb['\x69\x6e\x64\x65\x78\x4f\x66'](_0x2dac6b);}for(let _0x161a62=-0x2150+0x3*-0x5cf+-0x1a3*-0x1f,_0x4abf60=_0x16b342['\x6c\x65\x6e\x67\x74\x68'];_0x161a62<_0x4abf60;_0x161a62++){_0x2460d7+='\x25'+('\x30\x30'+_0x16b342['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x161a62)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x1be*-0x7+0x2573+-0x1*0x1931))['\x73\x6c\x69\x63\x65'](-(-0x9*0x445+0x1351+0x1*0x131e));}return decodeURIComponent(_0x2460d7);};const _0x1fc9cb=function(_0x3be315,_0x543adb){let _0x32cc66=[],_0x26af9e=0x226b+-0x53e+-0x1d2d,_0x379bf2,_0xbfb682='';_0x3be315=_0x1a197c(_0x3be315);let _0x4655ce;for(_0x4655ce=0xc*-0x96+0x1*-0x1d41+-0x2449*-0x1;_0x4655ce<0x1829+-0x5*-0x7cf+-0x3*0x14bc;_0x4655ce++){_0x32cc66[_0x4655ce]=_0x4655ce;}for(_0x4655ce=0x1358+-0x110e*-0x1+-0x2466;_0x4655ce<-0x2*-0x52+0x16ad+0xc5*-0x1d;_0x4655ce++){_0x26af9e=(_0x26af9e+_0x32cc66[_0x4655ce]+_0x543adb['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x4655ce%_0x543adb['\x6c\x65\x6e\x67\x74\x68']))%(-0x1ef9*-0x1+0x605*-0x1+0xbfa*-0x2),_0x379bf2=_0x32cc66[_0x4655ce],_0x32cc66[_0x4655ce]=_0x32cc66[_0x26af9e],_0x32cc66[_0x26af9e]=_0x379bf2;}_0x4655ce=-0x29*-0xdd+0x73b*-0x5+-0xc2*-0x1,_0x26af9e=0x2417+-0x143d+-0x7ed*0x2;for(let _0x54e9d3=-0x14ef*0x1+-0x224e*-0x1+-0xd5f;_0x54e9d3<_0x3be315['\x6c\x65\x6e\x67\x74\x68'];_0x54e9d3++){_0x4655ce=(_0x4655ce+(0x388+-0x2a*0x9b+0x15e7))%(0x1c19+0x2621+0x45*-0xf2),_0x26af9e=(_0x26af9e+_0x32cc66[_0x4655ce])%(-0x171e+0x1903+-0xe5),_0x379bf2=_0x32cc66[_0x4655ce],_0x32cc66[_0x4655ce]=_0x32cc66[_0x26af9e],_0x32cc66[_0x26af9e]=_0x379bf2,_0xbfb682+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x3be315['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x54e9d3)^_0x32cc66[(_0x32cc66[_0x4655ce]+_0x32cc66[_0x26af9e])%(-0x1fd6+0x128f*0x1+0xe47)]);}return _0xbfb682;};_0x8dd9['\x55\x67\x53\x4b\x48\x57']=_0x1fc9cb,_0x8dd9['\x68\x42\x6b\x61\x63\x4f']={},_0x8dd9['\x5a\x64\x74\x53\x43\x6c']=!![];}const _0x7c2bfd=_0x131651[0x1e19+-0x1*-0xa6+-0x1ebf],_0x1ecbb9=_0x52595d+_0x7c2bfd,_0x1f7bc8=_0x8dd9['\x68\x42\x6b\x61\x63\x4f'][_0x1ecbb9];if(!_0x1f7bc8){if(_0x8dd9['\x71\x76\x73\x51\x4c\x43']===undefined){const _0x30729a=function(_0x23b922){this['\x6a\x76\x4c\x6e\x6f\x46']=_0x23b922,this['\x47\x54\x4f\x4f\x48\x50']=[0x256f+0x1982+-0x3ef0,-0x1*-0x18ff+-0x168d*-0x1+-0x4*0xbe3,-0x6*-0x16e+-0x220*-0x8+-0x1994],this['\x73\x6b\x6c\x48\x71\x65']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x63\x74\x6d\x46\x7a\x44']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x5a\x4d\x68\x6e\x46\x69']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x30729a['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x41\x47\x67\x59\x70\x69']=function(){const _0x171dc7=new RegExp(this['\x63\x74\x6d\x46\x7a\x44']+this['\x5a\x4d\x68\x6e\x46\x69']),_0x462ef0=_0x171dc7['\x74\x65\x73\x74'](this['\x73\x6b\x6c\x48\x71\x65']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x47\x54\x4f\x4f\x48\x50'][-0x2*0x91f+-0x27e*-0x1+0xfc1]:--this['\x47\x54\x4f\x4f\x48\x50'][-0x429*0x4+-0x70e+-0x6*-0x3f3];return this['\x45\x6a\x53\x71\x59\x66'](_0x462ef0);},_0x30729a['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x45\x6a\x53\x71\x59\x66']=function(_0x1671ea){if(!Boolean(~_0x1671ea))return _0x1671ea;return this['\x79\x76\x7a\x6a\x51\x6d'](this['\x6a\x76\x4c\x6e\x6f\x46']);},_0x30729a['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x79\x76\x7a\x6a\x51\x6d']=function(_0x276d5f){for(let _0x2d01a1=-0x1*-0x2069+-0xd*-0x1bb+-0x36e8,_0x41d447=this['\x47\x54\x4f\x4f\x48\x50']['\x6c\x65\x6e\x67\x74\x68'];_0x2d01a1<_0x41d447;_0x2d01a1++){this['\x47\x54\x4f\x4f\x48\x50']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x41d447=this['\x47\x54\x4f\x4f\x48\x50']['\x6c\x65\x6e\x67\x74\x68'];}return _0x276d5f(this['\x47\x54\x4f\x4f\x48\x50'][-0x1d30+0x9d8+-0x9ac*-0x2]);},(''+function(){return 0x18b*-0x7+-0x180c+0x22d9*0x1;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0x1c87+0x1*0x1ab7+0x3*0x9b)&&new _0x30729a(_0x8dd9)['\x41\x47\x67\x59\x70\x69'](),_0x8dd9['\x71\x76\x73\x51\x4c\x43']=!![];}_0x3afe5c=_0x8dd9['\x55\x67\x53\x4b\x48\x57'](_0x3afe5c,_0x29597e),_0x8dd9['\x68\x42\x6b\x61\x63\x4f'][_0x1ecbb9]=_0x3afe5c;}else _0x3afe5c=_0x1f7bc8;return _0x3afe5c;}const _0x10f10d={};_0x10f10d[_0x37a017(0x2b5,'\x5d\x67\x4b\x6b')+_0x37a017(0x214,'\x32\x6b\x53\x72')]=_0x53c3e8,_0x10f10d[_0x37a017(0x24d,'\x6b\x69\x37\x41')+_0x37a017(0x244,'\x32\x6b\x53\x72')+_0x37a017(0x236,'\x38\x23\x26\x56')]=_0x1e1bb2,_0x10f10d[_0x37a017(0x224,'\x5a\x6d\x6b\x42')+_0x37a017(0x1ed,'\x26\x4e\x6c\x49')]=_0x1484be,module[_0x37a017(0x2cc,'\x4a\x62\x5a\x32')]=_0x10f10d;
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const fs = require('fs');
|
|
4
|
+
const path = require('path');
|
|
5
|
+
const { getNarrativePath, getEvolutionDir } = require('./paths');
|
|
6
|
+
|
|
7
|
+
const MAX_NARRATIVE_ENTRIES = 30;
|
|
8
|
+
const MAX_NARRATIVE_SIZE = 12000;
|
|
9
|
+
|
|
10
|
+
function ensureDir(dir) {
|
|
11
|
+
try { if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true }); } catch (_) {}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
function recordNarrative({ gene, signals, mutation, outcome, blast, capsule }) {
|
|
15
|
+
const narrativePath = getNarrativePath();
|
|
16
|
+
ensureDir(path.dirname(narrativePath));
|
|
17
|
+
|
|
18
|
+
const ts = new Date().toISOString().replace('T', ' ').slice(0, 19);
|
|
19
|
+
const geneId = gene && gene.id ? gene.id : '(auto)';
|
|
20
|
+
const category = (mutation && mutation.category) || (gene && gene.category) || 'unknown';
|
|
21
|
+
const status = outcome && outcome.status ? outcome.status : 'unknown';
|
|
22
|
+
const score = outcome && typeof outcome.score === 'number' ? outcome.score.toFixed(2) : '?';
|
|
23
|
+
const signalsSummary = Array.isArray(signals) ? signals.slice(0, 4).join(', ') : '(none)';
|
|
24
|
+
const filesChanged = blast ? blast.files : 0;
|
|
25
|
+
const linesChanged = blast ? blast.lines : 0;
|
|
26
|
+
const rationale = mutation && mutation.rationale
|
|
27
|
+
? String(mutation.rationale).slice(0, 200) : '';
|
|
28
|
+
const strategy = gene && Array.isArray(gene.strategy)
|
|
29
|
+
? gene.strategy.slice(0, 3).map((s, i) => ` ${i + 1}. ${s}`).join('\n') : '';
|
|
30
|
+
const capsuleSummary = capsule && capsule.summary ? String(capsule.summary).slice(0, 200) : '';
|
|
31
|
+
|
|
32
|
+
const entry = [
|
|
33
|
+
`### [${ts}] ${category.toUpperCase()} - ${status}`,
|
|
34
|
+
`- Gene: ${geneId} | Score: ${score} | Scope: ${filesChanged} files, ${linesChanged} lines`,
|
|
35
|
+
`- Signals: [${signalsSummary}]`,
|
|
36
|
+
rationale ? `- Why: ${rationale}` : null,
|
|
37
|
+
strategy ? `- Strategy:\n${strategy}` : null,
|
|
38
|
+
capsuleSummary ? `- Result: ${capsuleSummary}` : null,
|
|
39
|
+
'',
|
|
40
|
+
].filter(line => line !== null).join('\n');
|
|
41
|
+
|
|
42
|
+
let existing = '';
|
|
43
|
+
try {
|
|
44
|
+
if (fs.existsSync(narrativePath)) {
|
|
45
|
+
existing = fs.readFileSync(narrativePath, 'utf8');
|
|
46
|
+
}
|
|
47
|
+
} catch (_) {}
|
|
48
|
+
|
|
49
|
+
if (!existing.trim()) {
|
|
50
|
+
existing = '# Evolution Narrative\n\nA chronological record of evolution decisions and outcomes.\n\n';
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
const combined = existing + entry;
|
|
54
|
+
const trimmed = trimNarrative(combined);
|
|
55
|
+
|
|
56
|
+
const tmp = narrativePath + '.tmp';
|
|
57
|
+
fs.writeFileSync(tmp, trimmed, 'utf8');
|
|
58
|
+
fs.renameSync(tmp, narrativePath);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
function trimNarrative(content) {
|
|
62
|
+
if (content.length <= MAX_NARRATIVE_SIZE) return content;
|
|
63
|
+
|
|
64
|
+
const headerEnd = content.indexOf('###');
|
|
65
|
+
if (headerEnd < 0) return content.slice(-MAX_NARRATIVE_SIZE);
|
|
66
|
+
|
|
67
|
+
const header = content.slice(0, headerEnd);
|
|
68
|
+
const entries = content.slice(headerEnd).split(/(?=^### \[)/m);
|
|
69
|
+
|
|
70
|
+
while (entries.length > MAX_NARRATIVE_ENTRIES) {
|
|
71
|
+
entries.shift();
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
let result = header + entries.join('');
|
|
75
|
+
if (result.length > MAX_NARRATIVE_SIZE) {
|
|
76
|
+
const keep = Math.max(1, entries.length - 5);
|
|
77
|
+
result = header + entries.slice(-keep).join('');
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
return result;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
function loadNarrativeSummary(maxChars) {
|
|
84
|
+
const limit = Number.isFinite(maxChars) ? maxChars : 4000;
|
|
85
|
+
const narrativePath = getNarrativePath();
|
|
86
|
+
try {
|
|
87
|
+
if (!fs.existsSync(narrativePath)) return '';
|
|
88
|
+
const content = fs.readFileSync(narrativePath, 'utf8');
|
|
89
|
+
if (!content.trim()) return '';
|
|
90
|
+
|
|
91
|
+
const headerEnd = content.indexOf('###');
|
|
92
|
+
if (headerEnd < 0) return '';
|
|
93
|
+
|
|
94
|
+
const entries = content.slice(headerEnd).split(/(?=^### \[)/m);
|
|
95
|
+
const recent = entries.slice(-8);
|
|
96
|
+
let summary = recent.join('');
|
|
97
|
+
if (summary.length > limit) {
|
|
98
|
+
summary = summary.slice(-limit);
|
|
99
|
+
const firstEntry = summary.indexOf('### [');
|
|
100
|
+
if (firstEntry > 0) summary = summary.slice(firstEntry);
|
|
101
|
+
}
|
|
102
|
+
return summary.trim();
|
|
103
|
+
} catch (_) {
|
|
104
|
+
return '';
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
module.exports = { recordNarrative, loadNarrativeSummary, trimNarrative };
|
|
@@ -1 +1,205 @@
|
|
|
1
|
-
var _0x129992=_0x5562;(function(_0x2a4344,_0x3d260f){var _0x21aee6=_0x5562,_0x547cc4=_0x2a4344();while(!![]){try{var _0x5e9e26=parseInt(_0x21aee6(0x1e2,'\x47\x45\x77\x76'))/(0x1b52*0x1+-0x13d5+-0x77c*0x1)*(parseInt(_0x21aee6(0x1d7,'\x66\x6e\x64\x32'))/(0x73*0x13+0x1a01+-0xaa*0x34))+parseInt(_0x21aee6(0x133,'\x37\x76\x43\x4c'))/(0xaf6+0x30e+0x1*-0xe01)+-parseInt(_0x21aee6(0x141,'\x70\x24\x44\x39'))/(0xf50*-0x2+0x36*0x3+-0xf01*-0x2)+parseInt(_0x21aee6(0x1ae,'\x31\x6b\x46\x44'))/(0x2*-0xf6f+0x1*0x13c5+0xb1e)*(parseInt(_0x21aee6(0x18c,'\x40\x29\x75\x74'))/(-0x1291+0xee1+0x3b6))+-parseInt(_0x21aee6(0x196,'\x45\x65\x63\x67'))/(0x1*-0x259f+0x23b5+0x1f1)+parseInt(_0x21aee6(0xc2,'\x68\x6c\x73\x53'))/(0x1777*-0x1+-0x1731+0x2eb0)+parseInt(_0x21aee6(0x23f,'\x47\x30\x66\x43'))/(-0x2352+-0x186f+-0x6*-0x9f7)*(-parseInt(_0x21aee6(0x20d,'\x45\x65\x63\x67'))/(-0x1811+0xb7b+0x328*0x4));if(_0x5e9e26===_0x3d260f)break;else _0x547cc4['push'](_0x547cc4['shift']());}catch(_0x119654){_0x547cc4['push'](_0x547cc4['shift']());}}}(_0x5855,0x858a*-0x29+-0x86cf*-0x4+0x2100d7));var _0x2477ce=(function(){var _0x24c028=_0x5562,_0x53f223={};_0x53f223[_0x24c028(0x160,'\x52\x30\x6b\x5b')]=_0x24c028(0xf3,'\x68\x6c\x73\x53')+_0x24c028(0x14c,'\x61\x75\x64\x39')+_0x24c028(0x1f8,'\x66\x6c\x69\x74')+_0x24c028(0x118,'\x35\x55\x33\x55')+_0x24c028(0x148,'\x62\x45\x45\x4e')+'\x64\x65\x64\x75\x70\x20\x64\x69'+_0x24c028(0x176,'\x37\x76\x43\x4c')+_0x24c028(0x179,'\x40\x29\x75\x74')+'\x70\x72\x6f\x63\x65\x73\x73\x2e'+_0x24c028(0x1bd,'\x63\x4a\x30\x28')+_0x24c028(0x1e5,'\x6c\x26\x47\x76')+_0x24c028(0x18d,'\x4e\x63\x55\x4b')+_0x24c028(0x129,'\x47\x30\x66\x43')+_0x24c028(0x209,'\x45\x65\x63\x67')+_0x24c028(0x1cc,'\x4d\x58\x44\x51')+_0x24c028(0x195,'\x5b\x37\x4a\x4d'),_0x53f223[_0x24c028(0x19a,'\x70\x24\x44\x39')]=function(_0x4922d4,_0x36f839){return _0x4922d4===_0x36f839;},_0x53f223[_0x24c028(0x17b,'\x5b\x37\x4a\x4d')]=_0x24c028(0x17e,'\x6c\x26\x47\x76'),_0x53f223[_0x24c028(0xfa,'\x63\x6c\x79\x73')]=function(_0x988a9c,_0x11aca5){return _0x988a9c!==_0x11aca5;};var _0x348858=_0x53f223,_0xf72f4=!![];return function(_0x4c978a,_0x22b557){var _0x3b11a7=_0x24c028,_0x2fc1db={'\x48\x4e\x79\x78\x45':_0x348858['\x48\x48\x69\x55\x61'],'\x51\x5a\x75\x65\x7a':function(_0x163d0c,_0x351de4){var _0x2e9460=_0x5562;return _0x348858[_0x2e9460(0x121,'\x52\x63\x54\x35')](_0x163d0c,_0x351de4);},'\x44\x61\x77\x67\x65':function(_0x148132,_0x40b3cf){var _0x16542d=_0x5562;return _0x348858[_0x16542d(0x187,'\x34\x6f\x42\x5d')](_0x148132,_0x40b3cf);},'\x44\x4b\x6d\x75\x6f':_0x348858[_0x3b11a7(0xf1,'\x45\x35\x57\x76')]};if(_0x348858[_0x3b11a7(0x12b,'\x4d\x58\x44\x51')](_0x3b11a7(0x127,'\x47\x30\x66\x43'),_0x3b11a7(0x1b8,'\x37\x58\x57\x6b')))_0x2ab28c=!![],_0x2197f2[_0x3b11a7(0x155,'\x52\x63\x54\x35')](_0x348858[_0x3b11a7(0xc8,'\x31\x6b\x46\x44')]);else{var _0x50dc63=_0xf72f4?function(){var _0x4cabe2=_0x3b11a7,_0x1d6254={};_0x1d6254[_0x4cabe2(0x236,'\x39\x64\x41\x64')]='\x28\x28\x28\x2e\x2b\x29\x2b\x29'+_0x4cabe2(0xd9,'\x66\x6e\x64\x32');var _0x274ac7=_0x1d6254;if(_0x2fc1db[_0x4cabe2(0x1e0,'\x51\x32\x75\x79')](_0x4cabe2(0x1d5,'\x6d\x75\x46\x37'),'\x6d\x67\x69\x74\x78'))return _0x53d8b6[_0x4cabe2(0x11b,'\x63\x4a\x30\x28')]()[_0x4cabe2(0x19c,'\x4d\x38\x67\x61')](_0x274ac7['\x48\x66\x42\x52\x78'])[_0x4cabe2(0x212,'\x63\x6c\x79\x73')]()[_0x4cabe2(0x136,'\x45\x65\x63\x67')+'\x74\x6f\x72'](_0x1bcb9f)[_0x4cabe2(0x1f4,'\x5a\x43\x4d\x26')](_0x274ac7[_0x4cabe2(0x10e,'\x53\x61\x5e\x75')]);else{if(_0x22b557){if(_0x2fc1db[_0x4cabe2(0x138,'\x31\x30\x63\x5d')](_0x2fc1db[_0x4cabe2(0x124,'\x66\x6e\x64\x32')],_0x2fc1db['\x44\x4b\x6d\x75\x6f'])){var _0x5e06fe=_0x22b557[_0x4cabe2(0x1b5,'\x53\x61\x5e\x75')](_0x4c978a,arguments);return _0x22b557=null,_0x5e06fe;}else!_0x1ca84a&&(_0x2f677b=!![],_0x313cb8[_0x4cabe2(0x1f1,'\x75\x54\x26\x38')](_0x2fc1db[_0x4cabe2(0xed,'\x37\x78\x36\x44')]));}}}:function(){};return _0xf72f4=![],_0x50dc63;}};}()),_0x3e5700=_0x2477ce(this,function(){var _0x3780bf=_0x5562,_0x142a89={};_0x142a89[_0x3780bf(0x151,'\x39\x64\x41\x64')]=_0x3780bf(0x171,'\x68\x6c\x73\x53')+_0x3780bf(0x16b,'\x52\x30\x6b\x5b');var _0x1811f7=_0x142a89;return _0x3e5700[_0x3780bf(0x1a0,'\x61\x75\x64\x39')]()[_0x3780bf(0xf6,'\x53\x61\x5e\x75')](_0x3780bf(0x1b6,'\x63\x6c\x79\x73')+_0x3780bf(0x1d1,'\x78\x48\x77\x78'))['\x74\x6f\x53\x74\x72\x69\x6e\x67']()[_0x3780bf(0x22f,'\x2a\x46\x38\x6a')+_0x3780bf(0x158,'\x53\x61\x5e\x75')](_0x3e5700)[_0x3780bf(0x17c,'\x21\x5e\x4f\x63')](_0x1811f7[_0x3780bf(0x149,'\x37\x76\x43\x4c')]);});_0x3e5700();function _0x5855(){var _0x11d957=['\x68\x38\x6b\x44\x69\x63\x31\x64','\x75\x43\x6f\x33\x77\x38\x6f\x48\x57\x34\x4e\x63\x4b\x43\x6f\x6e\x57\x4f\x4b','\x57\x37\x76\x44\x57\x37\x4e\x63\x4c\x43\x6b\x41\x57\x4f\x7a\x65','\x57\x35\x42\x64\x47\x66\x65\x59','\x57\x34\x74\x64\x47\x74\x57','\x43\x38\x6b\x52\x78\x4e\x6e\x64\x78\x57','\x70\x67\x72\x7a\x76\x38\x6f\x79','\x57\x34\x76\x49\x57\x37\x47\x54\x57\x36\x5a\x64\x4a\x31\x4b','\x57\x51\x74\x63\x51\x6d\x6b\x6a\x66\x4a\x30\x47','\x57\x35\x6c\x63\x4d\x38\x6b\x50\x57\x35\x4f\x6c\x57\x34\x79\x30\x65\x61','\x57\x36\x70\x64\x4d\x4a\x53\x58\x75\x61','\x45\x38\x6b\x33\x78\x32\x76\x64\x78\x57','\x6e\x43\x6f\x4c\x57\x51\x6c\x63\x49\x74\x54\x74\x57\x36\x65\x64','\x57\x51\x56\x64\x48\x6d\x6b\x79\x57\x50\x4b\x65','\x73\x38\x6f\x33\x72\x57','\x57\x35\x70\x64\x47\x6d\x6f\x4b\x63\x63\x34','\x76\x38\x6b\x6d\x76\x33\x44\x6a','\x57\x50\x38\x4c\x78\x38\x6b\x57','\x41\x6d\x6b\x6c\x57\x50\x4a\x64\x4d\x31\x75','\x57\x51\x43\x49\x41\x43\x6b\x6b\x57\x50\x57','\x6e\x5a\x5a\x63\x55\x71\x38','\x57\x4f\x74\x64\x4c\x31\x2f\x64\x4c\x4d\x43\x57\x64\x64\x75','\x57\x51\x68\x63\x56\x53\x6b\x4d\x61\x5a\x53\x50\x57\x52\x47','\x57\x35\x68\x64\x48\x73\x33\x64\x4d\x71\x30','\x6a\x6d\x6b\x6e\x6a\x74\x39\x35','\x68\x61\x52\x64\x4a\x43\x6b\x79\x57\x50\x71','\x57\x51\x78\x63\x51\x6d\x6b\x75\x61\x49\x47\x56\x57\x51\x71','\x57\x34\x54\x35\x57\x37\x47','\x57\x37\x46\x63\x4e\x71\x79\x51\x61\x74\x52\x64\x4b\x67\x75','\x57\x51\x42\x63\x4d\x57\x2f\x63\x54\x4e\x66\x38\x34\x4f\x67\x4f\x57\x50\x57','\x57\x34\x58\x2b\x57\x51\x70\x64\x51\x43\x6b\x54\x77\x68\x64\x63\x4a\x59\x65\x43\x66\x43\x6f\x51','\x6e\x63\x4a\x63\x51\x61\x56\x64\x54\x5a\x64\x64\x55\x53\x6b\x4f','\x57\x35\x6e\x44\x6a\x53\x6b\x48\x57\x51\x42\x64\x48\x59\x2f\x63\x4a\x47','\x57\x51\x42\x63\x47\x62\x75\x48\x41\x38\x6b\x75\x6a\x53\x6f\x39','\x57\x36\x33\x63\x56\x38\x6b\x30\x57\x35\x53\x77','\x65\x53\x6f\x65\x45\x4c\x6c\x64\x56\x47','\x6a\x64\x33\x64\x54\x53\x6b\x34\x57\x51\x56\x63\x4c\x61\x30','\x57\x34\x35\x62\x6d\x38\x6b\x38\x57\x52\x52\x64\x48\x5a\x78\x63\x4a\x61','\x57\x37\x5a\x64\x48\x58\x4a\x64\x4d\x5a\x69','\x77\x43\x6b\x2f\x57\x51\x6c\x64\x54\x76\x78\x64\x4d\x76\x33\x63\x55\x47','\x57\x51\x56\x63\x4c\x57\x47','\x57\x35\x62\x36\x57\x35\x5a\x63\x49\x43\x6b\x42','\x57\x36\x68\x63\x50\x53\x6b\x49\x57\x4f\x4b','\x57\x4f\x62\x57\x57\x52\x37\x64\x4a\x57\x4b','\x57\x35\x64\x64\x53\x43\x6f\x78\x70\x59\x79','\x73\x48\x56\x64\x48\x61','\x57\x37\x64\x64\x4d\x53\x6f\x74\x63\x59\x72\x58\x72\x66\x61','\x77\x43\x6b\x75\x57\x51\x4b\x52\x57\x37\x33\x64\x4b\x38\x6b\x48\x57\x36\x61','\x57\x34\x72\x46\x57\x35\x57\x6f\x57\x35\x6d','\x65\x75\x64\x64\x49\x58\x33\x63\x50\x57','\x70\x63\x78\x64\x4d\x43\x6f\x59\x76\x59\x2f\x63\x53\x53\x6b\x41','\x57\x35\x6e\x77\x57\x36\x72\x74\x42\x71','\x72\x75\x70\x64\x53\x6d\x6f\x43\x64\x57','\x57\x4f\x5a\x64\x4a\x32\x74\x64\x4c\x65\x53','\x57\x37\x39\x4b\x57\x34\x66\x51\x74\x57','\x78\x65\x2f\x64\x54\x38\x6f\x64\x63\x38\x6f\x2b\x57\x50\x43','\x6a\x38\x6f\x73\x57\x51\x6c\x64\x51\x74\x64\x63\x56\x31\x38\x47\x57\x4f\x54\x31\x57\x36\x74\x64\x55\x53\x6b\x66','\x57\x50\x74\x63\x55\x38\x6b\x50\x57\x34\x30\x57\x57\x35\x65\x39\x64\x47','\x70\x38\x6f\x6c\x57\x37\x56\x63\x4c\x4d\x34','\x75\x4b\x78\x64\x51\x53\x6f\x64\x68\x53\x6f\x52\x57\x4f\x44\x77','\x57\x4f\x75\x33\x46\x43\x6b\x38\x57\x51\x43','\x43\x38\x6b\x41\x57\x51\x50\x53\x57\x37\x4b','\x6c\x53\x6b\x49\x62\x32\x30\x71','\x57\x36\x42\x64\x4e\x48\x52\x64\x4c\x49\x57','\x57\x50\x52\x64\x4b\x68\x5a\x64\x47\x77\x38\x47','\x57\x37\x4a\x64\x4d\x76\x39\x2f\x6b\x43\x6b\x6a\x43\x53\x6f\x59','\x66\x67\x61\x7a\x57\x50\x4b','\x57\x52\x68\x63\x51\x6d\x6b\x36\x57\x34\x58\x7a\x41\x38\x6b\x6a\x57\x50\x4b','\x57\x4f\x6d\x44\x45\x43\x6b\x41\x57\x4f\x30','\x57\x51\x54\x45\x57\x37\x4c\x6f\x45\x53\x6f\x32\x71\x49\x53','\x6b\x38\x6f\x50\x61\x73\x43\x45\x68\x4a\x78\x64\x4c\x61\x68\x64\x50\x49\x33\x63\x47\x43\x6b\x65','\x78\x57\x33\x64\x4b\x53\x6f\x6c','\x57\x51\x42\x63\x4b\x57\x64\x63\x53\x32\x62\x38\x73\x43\x6b\x6d','\x57\x4f\x42\x63\x4c\x30\x48\x77\x42\x62\x5a\x63\x50\x73\x71','\x67\x66\x33\x64\x4d\x53\x6f\x4d\x57\x52\x56\x64\x4e\x78\x53','\x76\x30\x70\x64\x51\x6d\x6f\x65\x64\x38\x6f\x52','\x57\x34\x38\x65\x76\x53\x6b\x6c\x57\x35\x37\x63\x4b\x33\x74\x63\x4f\x61','\x57\x4f\x2f\x63\x4a\x4b\x6e\x43\x65\x49\x78\x63\x4b\x67\x4f','\x43\x53\x6b\x69\x57\x34\x42\x63\x56\x65\x4b','\x45\x6d\x6b\x32\x57\x50\x48\x4f\x57\x37\x61','\x75\x4b\x6c\x64\x50\x43\x6f\x45\x64\x43\x6f\x38\x57\x50\x7a\x5a','\x77\x72\x33\x64\x56\x53\x6b\x63\x75\x73\x33\x63\x50\x6d\x6f\x51','\x69\x30\x56\x64\x56\x43\x6f\x41\x57\x51\x4a\x64\x4b\x77\x46\x64\x54\x47','\x6b\x43\x6f\x58\x69\x57','\x57\x50\x5a\x64\x53\x6d\x6b\x53\x57\x51\x4b\x51\x57\x35\x61\x76','\x67\x62\x46\x64\x53\x57','\x57\x51\x4c\x79\x57\x35\x50\x6b\x76\x57','\x57\x36\x5a\x64\x48\x76\x38\x49\x44\x53\x6f\x41\x41\x53\x6f\x36','\x6c\x53\x6f\x38\x6b\x32\x4b\x6a','\x75\x32\x78\x64\x47\x38\x6f\x73\x67\x71','\x57\x35\x6c\x64\x4a\x73\x56\x64\x4d\x57','\x57\x4f\x46\x64\x50\x73\x5a\x63\x47\x4e\x69','\x57\x52\x38\x38\x71\x53\x6b\x52\x57\x51\x61','\x57\x50\x53\x52\x77\x71','\x57\x52\x6e\x30\x57\x52\x2f\x64\x53\x71\x71','\x64\x43\x6b\x45\x68\x49\x76\x57\x57\x36\x46\x64\x51\x43\x6b\x73','\x57\x35\x5a\x64\x4d\x62\x35\x72\x57\x37\x46\x63\x4c\x38\x6b\x64','\x69\x53\x6b\x75\x57\x50\x61','\x66\x32\x30\x65\x57\x50\x6c\x63\x4e\x47','\x57\x36\x74\x64\x55\x59\x54\x57\x57\x37\x65','\x57\x35\x6c\x64\x4c\x31\x65','\x57\x52\x75\x64\x57\x37\x33\x63\x4a\x38\x6f\x2f','\x57\x52\x34\x62\x57\x37\x52\x63\x4f\x38\x6f\x75','\x57\x36\x70\x64\x4a\x47\x52\x64\x55\x4a\x34','\x71\x48\x6e\x6c\x77\x53\x6b\x70\x61\x64\x56\x64\x4e\x71','\x73\x64\x31\x68','\x66\x4b\x4e\x63\x4e\x58\x68\x63\x53\x4a\x64\x64\x54\x53\x6f\x36','\x65\x76\x54\x77\x77\x43\x6f\x6c\x6c\x63\x6c\x64\x47\x57','\x57\x36\x68\x63\x55\x53\x6b\x48\x57\x4f\x71','\x57\x51\x64\x64\x52\x5a\x4b','\x57\x37\x4a\x64\x54\x67\x75\x66\x57\x34\x69','\x57\x51\x78\x63\x49\x65\x33\x63\x52\x4e\x57\x31\x64\x38\x6b\x43','\x57\x35\x7a\x49\x57\x52\x2f\x64\x56\x47','\x73\x6d\x6f\x33\x76\x6d\x6f\x6c\x57\x37\x61','\x57\x37\x64\x63\x4f\x53\x6b\x33','\x61\x4b\x46\x64\x4f\x43\x6f\x58','\x57\x52\x31\x55\x57\x4f\x75\x4e\x6a\x66\x38','\x7a\x6d\x6b\x76\x57\x34\x6c\x63\x53\x68\x6c\x64\x4f\x47\x69','\x57\x4f\x64\x64\x48\x30\x54\x33\x74\x32\x46\x63\x56\x73\x6d','\x57\x52\x6c\x64\x51\x5a\x56\x63\x4d\x4c\x30\x64\x57\x50\x65','\x69\x38\x6f\x49\x76\x33\x2f\x64\x47\x58\x42\x63\x4c\x53\x6b\x30','\x78\x4c\x52\x64\x4f\x43\x6f\x45\x72\x38\x6f\x6a\x57\x51\x61\x76','\x57\x37\x2f\x64\x48\x61\x53\x2b\x79\x71','\x7a\x38\x6b\x67\x57\x37\x74\x63\x54\x77\x70\x64\x51\x4b\x43\x62','\x57\x37\x38\x4c\x57\x34\x71\x4a\x70\x31\x4e\x64\x47\x30\x75','\x57\x35\x4f\x79\x6c\x38\x6b\x36\x57\x35\x4f','\x73\x53\x6f\x51\x65\x6d\x6f\x57\x57\x34\x2f\x63\x54\x38\x6f\x69\x57\x34\x57','\x57\x37\x4a\x63\x51\x49\x30\x67\x6e\x62\x5a\x64\x49\x76\x34','\x57\x37\x68\x64\x4c\x73\x79\x34\x7a\x57','\x57\x35\x68\x64\x47\x65\x6d\x30\x57\x36\x37\x63\x56\x61','\x57\x50\x53\x49\x57\x37\x4a\x63\x56\x38\x6f\x54','\x57\x50\x58\x39\x57\x52\x64\x64\x4c\x63\x75','\x57\x50\x70\x63\x4d\x32\x56\x63\x47\x31\x62\x50\x57\x4f\x71\x35\x57\x52\x56\x63\x47\x53\x6b\x6e\x43\x38\x6f\x4b','\x57\x4f\x4e\x64\x49\x57\x56\x63\x4e\x76\x75','\x57\x37\x6c\x64\x4d\x63\x30\x63\x75\x71','\x57\x4f\x6d\x54\x72\x53\x6b\x58\x57\x50\x61\x36\x6b\x4b\x61','\x57\x52\x47\x44\x57\x35\x56\x63\x4c\x53\x6f\x69\x6c\x78\x56\x63\x54\x47','\x66\x43\x6b\x6a\x65\x63\x6a\x68\x57\x37\x68\x64\x56\x6d\x6f\x59','\x57\x51\x74\x64\x53\x38\x6f\x32\x57\x36\x34\x69','\x57\x36\x64\x64\x53\x58\x42\x64\x50\x73\x30\x75\x57\x36\x30\x44','\x74\x33\x35\x65\x57\x52\x54\x41','\x66\x72\x56\x64\x54\x6d\x6f\x6f\x44\x30\x68\x49\x47\x37\x4e\x64\x51\x47','\x57\x34\x52\x64\x4e\x53\x6f\x74\x57\x4f\x57\x74\x57\x36\x35\x69\x57\x35\x53','\x57\x50\x70\x63\x4b\x76\x72\x67','\x66\x30\x2f\x64\x52\x38\x6f\x31\x57\x51\x78\x63\x4c\x74\x4a\x64\x55\x47','\x65\x43\x6b\x47\x71\x43\x6f\x54\x57\x35\x74\x63\x51\x43\x6f\x54\x57\x4f\x53','\x69\x4a\x33\x64\x51\x49\x6c\x64\x48\x62\x56\x63\x4c\x53\x6b\x79','\x69\x73\x56\x64\x4d\x43\x6b\x54\x57\x51\x33\x63\x4e\x71','\x57\x51\x6e\x79\x57\x4f\x37\x64\x50\x49\x58\x55\x57\x36\x34\x78','\x70\x73\x2f\x64\x48\x43\x6b\x35\x57\x52\x57','\x57\x51\x37\x64\x4f\x31\x42\x64\x49\x4b\x71','\x65\x6d\x6b\x6e\x61\x71','\x78\x47\x64\x64\x53\x43\x6f\x57\x61\x47','\x57\x50\x4c\x49\x57\x51\x56\x64\x48\x5a\x50\x45\x57\x35\x48\x4b','\x57\x36\x37\x64\x47\x58\x57\x33\x6b\x47','\x63\x72\x4a\x63\x53\x43\x6b\x61\x77\x6d\x6b\x52\x57\x34\x50\x45\x57\x36\x37\x63\x52\x38\x6b\x4e\x57\x35\x56\x64\x4b\x47','\x57\x35\x72\x45\x68\x6d\x6b\x32\x57\x52\x65','\x76\x57\x42\x63\x4a\x53\x6f\x33\x74\x61','\x57\x4f\x68\x63\x47\x43\x6b\x67\x62\x73\x79','\x72\x6d\x6b\x31\x43\x4e\x39\x38','\x69\x33\x68\x64\x4e\x38\x6f\x72\x57\x4f\x33\x64\x51\x76\x6c\x64\x50\x57','\x57\x36\x66\x35\x57\x34\x31\x58\x78\x43\x6b\x64','\x57\x50\x38\x34\x57\x34\x5a\x63\x56\x6d\x6f\x6e','\x43\x33\x65\x4c\x57\x37\x31\x55\x65\x78\x79\x48','\x57\x37\x64\x64\x56\x38\x6f\x73\x71\x78\x54\x36\x57\x37\x4b\x39\x57\x35\x48\x71\x57\x34\x62\x6b\x57\x52\x4f','\x64\x72\x78\x64\x48\x43\x6f\x77\x79\x61\x4a\x63\x47\x38\x6b\x54','\x6e\x5a\x56\x63\x55\x71','\x61\x31\x76\x30\x79\x38\x6f\x6c','\x57\x35\x74\x64\x4f\x43\x6f\x34','\x66\x58\x78\x64\x49\x43\x6f\x6e\x79\x47\x74\x63\x47\x38\x6b\x76','\x57\x37\x66\x66\x57\x50\x68\x63\x55\x43\x6b\x49\x57\x52\x31\x37\x57\x36\x47','\x57\x34\x4e\x64\x49\x74\x46\x64\x4b\x48\x57\x59','\x6c\x4a\x52\x63\x49\x58\x78\x64\x4f\x64\x78\x63\x4f\x57','\x6e\x73\x74\x64\x4c\x53\x6b\x65\x57\x52\x34','\x57\x50\x53\x4b\x57\x36\x42\x63\x4e\x38\x6f\x2f\x63\x30\x57','\x57\x34\x74\x64\x56\x47\x4f\x35\x78\x61','\x69\x43\x6f\x4d\x61\x77\x75\x75\x57\x36\x47\x43\x73\x71','\x57\x50\x4a\x64\x4c\x43\x6f\x41\x57\x35\x57','\x6f\x38\x6f\x6c\x57\x35\x56\x64\x48\x6d\x6b\x63\x57\x34\x4e\x64\x4a\x68\x79','\x72\x58\x4e\x63\x52\x6d\x6b\x54\x57\x37\x4e\x63\x49\x75\x74\x63\x53\x59\x4e\x63\x4d\x32\x6d\x39','\x43\x43\x6b\x34\x57\x50\x39\x61\x57\x37\x4b','\x57\x4f\x6d\x48\x72\x43\x6b\x2f\x57\x50\x62\x59','\x57\x50\x70\x63\x4a\x61\x78\x63\x53\x4b\x6d','\x57\x51\x7a\x65\x57\x34\x54\x44\x41\x53\x6f\x37\x78\x47','\x72\x4b\x56\x64\x54\x53\x6f\x45','\x6c\x43\x6f\x49\x76\x32\x2f\x64\x50\x61\x68\x63\x4c\x43\x6b\x4c','\x57\x4f\x34\x30\x77\x38\x6b\x30\x57\x50\x30','\x74\x63\x4c\x66\x57\x35\x2f\x64\x4b\x6d\x6f\x78\x57\x51\x70\x63\x4f\x71','\x57\x51\x47\x50\x57\x37\x6c\x63\x53\x43\x6f\x4d','\x46\x53\x6f\x32\x57\x37\x37\x64\x4b\x38\x6b\x58','\x69\x73\x2f\x64\x4c\x43\x6b\x4d\x57\x52\x5a\x64\x4c\x45\x6b\x62\x4f\x65\x69','\x78\x43\x6b\x6c\x67\x77\x7a\x77\x57\x35\x4a\x64\x4b\x38\x6b\x43','\x78\x61\x62\x6e\x6c\x75\x65','\x41\x61\x68\x63\x52\x43\x6f\x72\x42\x71','\x57\x4f\x44\x37\x67\x38\x6b\x4d\x57\x51\x64\x64\x4a\x59\x33\x63\x48\x71','\x6b\x43\x6f\x4d\x69\x47','\x57\x50\x7a\x46\x57\x34\x66\x6d\x46\x61','\x57\x35\x76\x78\x62\x43\x6b\x35\x57\x52\x78\x64\x4a\x73\x71','\x64\x38\x6b\x6f\x70\x47\x35\x70','\x57\x34\x64\x63\x4e\x43\x6b\x6c\x57\x35\x65\x5a\x57\x35\x75\x4a\x69\x71','\x57\x37\x31\x78\x57\x35\x65\x67\x57\x34\x47','\x57\x36\x6a\x55\x57\x35\x38','\x6b\x59\x5a\x63\x50\x61\x64\x64\x50\x4a\x57','\x6c\x6d\x6b\x67\x57\x50\x66\x35\x6b\x38\x6b\x4d\x75\x5a\x75','\x57\x34\x4b\x66\x61\x53\x6f\x46\x57\x35\x64\x63\x4d\x32\x37\x64\x52\x61','\x63\x48\x2f\x64\x54\x43\x6f\x77\x45\x57\x37\x63\x47\x57','\x71\x38\x6b\x78\x57\x52\x47\x4e\x57\x37\x74\x64\x47\x6d\x6b\x48\x57\x36\x30','\x69\x38\x6f\x68\x57\x36\x37\x63\x4e\x4c\x4b\x6f\x57\x52\x4e\x64\x4a\x61','\x57\x51\x5a\x63\x4b\x57\x68\x63\x56\x32\x43','\x57\x50\x4f\x30\x57\x36\x4b\x57\x57\x51\x64\x64\x4e\x75\x61\x30','\x74\x64\x30\x64\x43\x4c\x2f\x64\x4e\x38\x6f\x37\x69\x71','\x71\x5a\x4a\x63\x51\x6d\x6f\x77\x6e\x61','\x57\x52\x44\x51\x57\x50\x38\x48\x70\x62\x37\x63\x4e\x57\x57','\x76\x53\x6b\x57\x57\x51\x72\x41\x57\x34\x38','\x73\x71\x78\x63\x49\x76\x4f','\x78\x57\x64\x64\x4b\x38\x6f\x41\x6e\x33\x5a\x64\x4a\x38\x6b\x46','\x65\x67\x78\x64\x4f\x53\x6f\x66\x57\x50\x4f','\x57\x50\x78\x64\x4a\x64\x43\x64\x57\x36\x52\x63\x48\x6d\x6f\x41\x57\x50\x34','\x57\x4f\x54\x4e\x57\x50\x34\x4c\x6b\x71','\x57\x51\x69\x67\x57\x4f\x42\x64\x48\x43\x6f\x65\x57\x34\x44\x58\x57\x35\x46\x64\x4e\x76\x31\x58\x57\x51\x61','\x57\x51\x75\x66\x57\x36\x68\x63\x49\x43\x6b\x58\x57\x4f\x50\x74\x57\x36\x47','\x73\x6d\x6b\x4f\x57\x51\x5a\x64\x53\x32\x4a\x64\x52\x30\x78\x63\x56\x61','\x67\x66\x33\x63\x4c\x43\x6b\x70\x43\x49\x78\x63\x4d\x6d\x6b\x30\x62\x57\x57\x65\x57\x52\x6e\x4d','\x71\x38\x6b\x73\x57\x51\x4c\x4e\x57\x37\x4b','\x43\x4a\x74\x63\x4a\x53\x6f\x58\x44\x61','\x57\x34\x46\x63\x4b\x38\x6b\x4c\x57\x35\x69\x48\x57\x35\x72\x58\x62\x61','\x74\x53\x6f\x42\x76\x53\x6f\x47\x57\x36\x6d','\x65\x65\x64\x64\x54\x72\x68\x63\x54\x57','\x57\x35\x48\x58\x57\x37\x57\x53\x57\x36\x2f\x64\x47\x61','\x57\x36\x78\x63\x51\x6d\x6b\x59\x57\x35\x53\x2b','\x72\x6d\x6b\x2f\x7a\x32\x48\x6b','\x57\x37\x6d\x2f\x57\x52\x2f\x64\x4e\x53\x6b\x54\x65\x78\x70\x64\x4a\x53\x6b\x36\x76\x6d\x6f\x76\x70\x71','\x77\x57\x68\x64\x4b\x43\x6f\x41','\x66\x30\x46\x64\x54\x38\x6f\x58\x57\x52\x4f','\x57\x35\x66\x47\x57\x51\x6c\x63\x47\x57\x44\x6a\x57\x50\x35\x7a','\x57\x4f\x78\x64\x4d\x63\x37\x63\x53\x67\x4f','\x57\x4f\x50\x5a\x57\x37\x76\x2f\x57\x34\x70\x64\x4f\x4d\x62\x34','\x57\x50\x6d\x38\x57\x36\x46\x63\x55\x43\x6f\x76','\x6f\x4b\x54\x54\x74\x6d\x6f\x32','\x57\x37\x56\x64\x4e\x57\x57','\x57\x35\x58\x36\x57\x37\x58\x76\x41\x57','\x57\x36\x33\x64\x48\x62\x6d\x33\x44\x57','\x57\x34\x78\x64\x4d\x73\x70\x64\x4e\x5a\x4f\x55\x78\x64\x53','\x71\x53\x6b\x77\x57\x52\x39\x55\x57\x36\x37\x63\x49\x43\x6b\x30\x57\x36\x61','\x57\x34\x5a\x64\x49\x4e\x30\x56\x57\x36\x70\x63\x4f\x68\x4f\x54','\x57\x35\x33\x64\x4f\x6d\x6f\x39\x70\x5a\x6e\x41\x46\x75\x34','\x62\x76\x6a\x6e\x77\x57','\x63\x4d\x34\x59\x57\x50\x6c\x63\x4b\x38\x6b\x46\x57\x36\x42\x64\x52\x57','\x57\x34\x56\x63\x50\x38\x6b\x79\x57\x4f\x48\x47','\x57\x36\x6c\x63\x51\x53\x6b\x5a\x57\x50\x35\x6b\x43\x71','\x57\x35\x56\x63\x47\x53\x6b\x49\x57\x35\x62\x50\x57\x36\x61\x64\x71\x47','\x6c\x43\x6f\x37\x6a\x67\x4c\x75','\x57\x52\x70\x64\x52\x38\x6b\x2b\x57\x4f\x69\x49','\x75\x53\x6b\x4f\x57\x52\x70\x63\x54\x4d\x46\x64\x4c\x4c\x6c\x63\x53\x61','\x7a\x43\x6b\x6b\x57\x52\x74\x64\x53\x31\x71','\x57\x37\x2f\x64\x51\x5a\x2f\x64\x4e\x71\x61','\x71\x63\x50\x78\x45\x4c\x46\x64\x4b\x43\x6f\x38\x79\x61','\x57\x52\x62\x56\x57\x4f\x38','\x57\x4f\x34\x37\x57\x37\x4a\x63\x53\x38\x6f\x51','\x57\x51\x4a\x64\x53\x72\x33\x63\x48\x4b\x34\x6f\x57\x50\x53','\x57\x4f\x34\x57\x71\x53\x6b\x33','\x46\x53\x6b\x6b\x73\x4b\x72\x54','\x57\x51\x4c\x79\x57\x37\x48\x51\x45\x43\x6f\x35\x74\x57','\x57\x35\x33\x64\x50\x49\x50\x72\x57\x36\x61','\x57\x36\x33\x63\x4b\x38\x6b\x74\x57\x34\x43\x4f','\x6e\x43\x6f\x6b\x42\x65\x78\x64\x47\x61','\x62\x53\x6f\x63\x69\x77\x34\x6e','\x57\x37\x66\x42\x57\x36\x30\x36\x57\x36\x37\x64\x56\x4e\x53\x66','\x68\x6d\x6b\x62\x66\x61','\x62\x68\x72\x6a\x6b\x76\x37\x64\x4e\x53\x6b\x31\x79\x47','\x79\x33\x78\x64\x47\x6d\x6f\x31\x6c\x53\x6f\x6d\x57\x51\x69\x69','\x6b\x38\x6f\x59\x77\x32\x4e\x64\x4b\x58\x79','\x74\x38\x6f\x66\x57\x36\x46\x64\x4c\x43\x6b\x4d','\x67\x38\x6b\x66\x68\x73\x6e\x4d','\x61\x62\x2f\x63\x53\x38\x6b\x64\x77\x43\x6b\x50\x57\x51\x7a\x64\x57\x35\x37\x63\x54\x53\x6b\x43\x57\x37\x65','\x57\x4f\x6a\x56\x57\x51\x56\x64\x4b\x71\x31\x46\x57\x37\x48\x64','\x57\x50\x66\x61\x71\x6d\x6f\x6e\x57\x4f\x46\x64\x4a\x68\x6c\x64\x50\x33\x64\x64\x50\x6d\x6b\x65\x63\x57','\x57\x37\x4e\x64\x56\x38\x6f\x4b\x69\x57\x75','\x57\x36\x70\x64\x49\x62\x34\x32\x76\x53\x6b\x46\x79\x6d\x6f\x44','\x65\x67\x34\x2b\x57\x4f\x78\x63\x49\x43\x6b\x78\x57\x36\x42\x64\x52\x57','\x57\x51\x30\x6f\x57\x35\x52\x63\x48\x43\x6f\x6f\x6f\x4e\x56\x63\x52\x71','\x6f\x38\x6f\x38\x69\x67\x69\x42\x57\x36\x30\x42','\x73\x63\x70\x63\x50\x53\x6f\x72\x46\x5a\x69','\x57\x50\x72\x34\x57\x37\x50\x6b\x44\x53\x6f\x6b\x44\x72\x69','\x71\x6d\x6b\x52\x57\x34\x4e\x63\x4c\x66\x75','\x57\x50\x74\x63\x4b\x75\x31\x78\x75\x74\x52\x63\x54\x63\x38','\x57\x51\x72\x47\x57\x36\x78\x63\x4d\x6d\x6f\x35\x76\x71','\x57\x36\x2f\x64\x4a\x47\x38\x77\x41\x71','\x57\x36\x62\x57\x57\x34\x31\x5a','\x70\x75\x57\x45\x57\x50\x74\x63\x51\x71','\x57\x34\x68\x63\x54\x43\x6b\x52\x57\x52\x76\x52\x57\x34\x71\x7a\x57\x35\x30','\x6f\x38\x6f\x38\x70\x77\x4b','\x43\x6d\x6b\x2f\x71\x57','\x64\x72\x42\x64\x53\x38\x6b\x6f\x45\x47\x74\x63\x4a\x6d\x6b\x55','\x57\x34\x50\x74\x62\x71','\x57\x52\x44\x49\x57\x4f\x43\x4c\x69\x57','\x57\x50\x4a\x63\x4e\x57\x56\x63\x4c\x68\x75\x58\x67\x43\x6b\x71','\x57\x37\x37\x64\x4f\x59\x4e\x64\x4b\x61\x79\x6b\x57\x36\x61\x71','\x78\x43\x6f\x50\x57\x35\x2f\x64\x50\x38\x6b\x79','\x57\x4f\x38\x4e\x57\x37\x78\x63\x51\x47','\x57\x35\x42\x64\x49\x4d\x34\x50\x57\x37\x52\x63\x53\x77\x30\x43','\x57\x52\x4a\x63\x52\x6d\x6b\x74\x67\x71','\x77\x58\x52\x64\x4a\x53\x6f\x43\x69\x77\x46\x64\x4b\x38\x6f\x44','\x57\x35\x5a\x64\x54\x53\x6f\x44\x6b\x72\x6e\x45\x79\x47','\x45\x38\x6b\x2f\x72\x33\x62\x6b\x62\x64\x4e\x63\x47\x61','\x64\x5a\x68\x63\x4d\x62\x37\x64\x49\x57','\x57\x51\x76\x53\x57\x37\x33\x63\x4f\x38\x6f\x53\x71\x4d\x4a\x64\x55\x71','\x6e\x43\x6f\x31\x72\x71','\x57\x50\x46\x64\x49\x4e\x2f\x64\x4b\x68\x34\x47\x68\x63\x71','\x57\x35\x71\x63\x67\x53\x6b\x59\x57\x34\x75','\x79\x43\x6b\x53\x57\x37\x2f\x64\x4d\x76\x61\x79\x57\x52\x35\x77\x64\x32\x79\x76\x44\x53\x6f\x79\x75\x47','\x75\x43\x6b\x75\x57\x51\x39\x6f\x57\x37\x33\x64\x48\x53\x6b\x4f','\x57\x36\x46\x64\x50\x48\x74\x64\x4e\x49\x4f','\x57\x37\x46\x64\x52\x78\x53\x32\x57\x37\x30','\x57\x35\x4e\x64\x50\x6d\x6f\x53','\x57\x4f\x44\x72\x57\x34\x48\x39\x79\x61','\x73\x4a\x70\x63\x55\x61','\x78\x59\x70\x63\x4d\x43\x6f\x4a\x74\x57','\x57\x50\x70\x63\x4b\x78\x69\x5a\x57\x34\x4a\x63\x52\x68\x53\x6a','\x57\x34\x2f\x64\x4c\x77\x53\x4c\x57\x36\x75','\x6b\x53\x6b\x43\x57\x50\x66\x34','\x57\x52\x6d\x2f\x57\x35\x42\x63\x56\x6d\x6f\x53','\x67\x65\x6c\x64\x56\x53\x6f\x4e','\x57\x34\x79\x46\x67\x53\x6b\x41\x57\x34\x75','\x57\x4f\x70\x63\x53\x6d\x6b\x52\x70\x63\x44\x53\x74\x75\x52\x64\x55\x61','\x57\x34\x79\x7a\x62\x6d\x6b\x36\x57\x35\x46\x63\x4d\x77\x38','\x57\x4f\x5a\x64\x4b\x6d\x6f\x78\x57\x34\x4b\x70','\x6d\x53\x6b\x47\x57\x52\x66\x70\x65\x71','\x57\x4f\x48\x4d\x57\x51\x70\x64\x48\x57\x43','\x41\x38\x6f\x70\x76\x53\x6f\x4d\x57\x35\x61','\x72\x67\x79\x66\x57\x35\x68\x63\x49\x38\x6b\x6d\x57\x51\x4a\x64\x50\x61','\x57\x50\x6c\x64\x4a\x68\x33\x64\x48\x4e\x4c\x59\x72\x67\x4f','\x57\x51\x42\x63\x4e\x57\x70\x63\x56\x77\x61\x30','\x6a\x58\x56\x64\x54\x6d\x6b\x49\x57\x50\x75','\x43\x53\x6b\x6f\x57\x37\x52\x63\x52\x77\x70\x64\x56\x61','\x57\x50\x53\x57\x72\x38\x6b\x76\x57\x50\x43','\x78\x58\x5a\x64\x4a\x43\x6f\x59\x6e\x57','\x57\x36\x37\x64\x49\x53\x6f\x53\x70\x47\x39\x56\x73\x76\x30','\x78\x38\x6b\x55\x57\x4f\x58\x53\x57\x34\x75','\x57\x34\x64\x64\x4d\x68\x4e\x64\x53\x64\x34\x76\x57\x37\x34\x42','\x68\x65\x2f\x64\x51\x57','\x71\x6d\x6b\x41\x57\x51\x39\x4c','\x57\x52\x72\x70\x57\x51\x61\x57\x68\x57','\x66\x43\x6f\x73\x77\x67\x46\x64\x4e\x61','\x57\x37\x4e\x63\x51\x53\x6b\x5a\x57\x4f\x48\x37\x46\x6d\x6f\x70\x57\x52\x53','\x57\x36\x37\x63\x48\x6d\x6b\x44\x57\x37\x47\x78','\x57\x4f\x58\x42\x57\x36\x6a\x33\x46\x47','\x6b\x59\x68\x64\x48\x43\x6b\x70\x57\x52\x4a\x63\x4c\x48\x57','\x57\x50\x4e\x64\x4e\x4c\x54\x51\x78\x68\x5a\x63\x50\x5a\x5a\x64\x4b\x76\x4e\x63\x4a\x38\x6f\x34\x57\x34\x35\x6e','\x57\x35\x70\x64\x48\x63\x31\x4d\x57\x36\x74\x63\x4c\x43\x6b\x73','\x57\x4f\x2f\x63\x4e\x75\x6e\x62\x74\x61','\x64\x78\x69\x7a\x57\x35\x68\x63\x4e\x43\x6b\x46\x57\x36\x68\x64\x50\x61','\x57\x51\x42\x64\x4a\x43\x6f\x44\x57\x34\x65\x57','\x44\x43\x6f\x57\x43\x38\x6f\x67\x57\x34\x38','\x6f\x77\x42\x64\x53\x53\x6f\x62\x57\x51\x47','\x68\x58\x70\x64\x55\x53\x6f\x68\x79\x71','\x41\x4a\x33\x63\x4e\x6d\x6f\x67\x44\x47','\x57\x4f\x33\x64\x4b\x43\x6b\x42\x57\x35\x57\x6f\x57\x52\x57\x65\x57\x34\x65','\x75\x38\x6b\x6c\x57\x35\x4e\x63\x49\x4b\x6d','\x57\x34\x6c\x64\x50\x38\x6f\x37\x70\x71\x4b','\x76\x73\x42\x63\x50\x38\x6f\x41\x42\x47','\x57\x4f\x50\x5a\x57\x37\x76\x2f\x57\x37\x64\x64\x4e\x61\x4b\x30','\x63\x6d\x6f\x2f\x57\x52\x42\x64\x56\x33\x78\x64\x4c\x32\x78\x63\x56\x47','\x65\x61\x4e\x64\x4c\x38\x6f\x71\x79\x61\x64\x63\x4c\x61','\x6b\x73\x33\x64\x48\x38\x6b\x6f\x57\x52\x71','\x6a\x43\x6f\x57\x6e\x68\x38\x42\x57\x36\x79\x6e','\x57\x34\x5a\x64\x4e\x58\x4a\x64\x48\x58\x4f\x37\x57\x34\x53','\x72\x74\x58\x6e\x70\x75\x78\x64\x4d\x61','\x57\x4f\x6c\x64\x50\x43\x6b\x5a\x57\x52\x6d\x2f','\x63\x53\x6f\x4f\x57\x34\x46\x63\x51\x4c\x47','\x63\x67\x71\x64\x57\x50\x42\x63\x4a\x38\x6b\x77','\x57\x52\x38\x79\x57\x50\x52\x64\x4d\x61','\x57\x4f\x52\x64\x4d\x5a\x64\x63\x55\x67\x38','\x57\x50\x47\x56\x57\x34\x56\x63\x56\x6d\x6f\x33\x62\x65\x68\x63\x49\x47','\x57\x4f\x74\x63\x4d\x30\x6a\x68\x74\x31\x78\x63\x50\x49\x6d','\x57\x37\x44\x7a\x57\x35\x64\x63\x4b\x53\x6b\x74\x57\x50\x44\x74\x57\x37\x47','\x57\x36\x6c\x64\x49\x48\x65\x39\x44\x53\x6b\x46','\x42\x38\x6f\x32\x57\x35\x4e\x64\x55\x53\x6b\x66','\x6f\x6d\x6f\x30\x6e\x78\x38\x46','\x57\x36\x42\x63\x52\x53\x6b\x47\x57\x4f\x69','\x57\x34\x37\x64\x47\x65\x57\x48\x57\x37\x4e\x63\x56\x61','\x6f\x6d\x6f\x38\x57\x52\x71','\x57\x36\x54\x45\x57\x35\x75\x70\x57\x35\x6d','\x6f\x53\x6b\x6b\x57\x50\x4c\x43\x64\x61','\x7a\x78\x4c\x53\x57\x52\x7a\x4c','\x57\x36\x66\x43\x57\x35\x70\x63\x4d\x43\x6b\x67\x57\x35\x35\x64\x57\x35\x43','\x69\x4a\x4a\x64\x4b\x53\x6b\x34\x57\x52\x78\x63\x4c\x61\x71\x57','\x68\x38\x6b\x38\x69\x73\x62\x2f','\x57\x34\x37\x64\x55\x5a\x61\x45\x75\x53\x6b\x2f\x77\x43\x6f\x43','\x68\x6d\x6b\x4e\x63\x62\x44\x67','\x76\x53\x6f\x30\x77\x43\x6f\x4e\x57\x34\x69','\x62\x71\x64\x64\x4a\x53\x6b\x59\x57\x50\x57','\x57\x4f\x4e\x63\x56\x6d\x6b\x46\x65\x47\x65','\x6f\x43\x6f\x68\x57\x37\x2f\x63\x4c\x4d\x4f\x69\x57\x52\x4f','\x76\x43\x6b\x47\x57\x51\x4e\x64\x55\x78\x74\x64\x48\x71','\x6d\x53\x6f\x54\x68\x4d\x79\x7a','\x57\x36\x72\x65\x57\x34\x6c\x63\x4c\x61','\x57\x37\x70\x63\x4f\x62\x6d\x38\x63\x48\x37\x64\x48\x66\x43','\x57\x52\x4c\x47\x57\x4f\x56\x64\x47\x72\x65','\x57\x4f\x5a\x63\x4d\x30\x48\x76\x73\x58\x30','\x57\x50\x57\x48\x73\x53\x6b\x51\x57\x4f\x44\x59','\x7a\x53\x6b\x4f\x57\x37\x64\x63\x4a\x73\x35\x35\x57\x35\x4b\x51\x67\x57','\x57\x4f\x6e\x74\x57\x51\x2f\x64\x4b\x62\x58\x73\x57\x35\x62\x6e','\x57\x37\x76\x66\x57\x35\x4a\x63\x4b\x57','\x63\x4b\x4f\x53\x57\x51\x64\x63\x51\x61'];_0x5855=function(){return _0x11d957;};return _0x5855();}'use strict';const {envInt:_0x68ad14}=require(_0x129992(0x177,'\x6d\x75\x46\x37')+'\x67'),_0x4da763=(0x1*0x1fe5+-0xe*-0xf+-0x5*0x689)*(0x865*0x3+0x7*0x2eb+-0x299c*0x1)*(-0x91c+-0x1bb7+0x28d3),_0x16c66d=-0x1e80+-0x463*-0x1+0x2da5;let _0xa1a1a0=null,_0x25fe44=-0x2086+-0xe7f*-0x1+0x41*0x47,_0x22b7dc=null,_0x23d292=![];function _0x30d721(){var _0x1d240=_0x129992;return Date[_0x1d240(0x109,'\x40\x29\x75\x74')]();}function _0x3b27bf(){var _0x351300=_0x129992,_0x269a74={'\x5a\x68\x4a\x64\x49':function(_0x4c2b16,_0x544501){return _0x4c2b16!==_0x544501;},'\x75\x68\x50\x4f\x46':function(_0xe73552,_0x871114){return _0xe73552(_0x871114);}};return _0x269a74[_0x351300(0x1f3,'\x5a\x43\x4d\x26')](_0x269a74[_0x351300(0x193,'\x64\x23\x23\x4b')](String,process.env.EVOLVE_OPEN_PR_DEDUP||'\x31'),'\x30');}function _0x1647b8(){var _0x14369b=_0x129992,_0x331eac={'\x71\x75\x76\x67\x65':function(_0x169e30,_0x346690,_0x39b50e){return _0x169e30(_0x346690,_0x39b50e);},'\x47\x6c\x4f\x53\x45':_0x14369b(0xea,'\x5b\x37\x4a\x4d')+_0x14369b(0x17a,'\x68\x6c\x73\x53')+_0x14369b(0x217,'\x37\x76\x43\x4c')};return _0x331eac['\x71\x75\x76\x67\x65'](_0x68ad14,_0x331eac[_0x14369b(0xcc,'\x37\x76\x43\x4c')],0x13406+0x12b63*0x1+0x1*-0x17509);}function _0x562855(){var _0xc01624=_0x129992,_0x1b503d={'\x71\x66\x4b\x56\x64':function(_0x350f5e,_0x4605f0){return _0x350f5e(_0x4605f0);},'\x70\x4d\x5a\x4e\x76':_0xc01624(0x166,'\x75\x54\x26\x38')+_0xc01624(0xc4,'\x62\x45\x45\x4e'),'\x59\x4d\x73\x65\x52':_0xc01624(0x1e3,'\x64\x23\x23\x4b'),'\x50\x55\x6e\x6c\x6a':function(_0x452560,_0x22ceac){return _0x452560||_0x22ceac;},'\x77\x62\x67\x66\x68':_0xc01624(0x15e,'\x55\x4e\x63\x43'),'\x61\x4b\x79\x51\x53':function(_0x25c443,_0x32e92a){return _0x25c443(_0x32e92a);},'\x49\x4c\x61\x74\x6f':function(_0x1b21ec,_0x543c40){return _0x1b21ec(_0x543c40);},'\x54\x47\x52\x62\x50':function(_0x411994,_0x20bdd5,_0x487d4d){return _0x411994(_0x20bdd5,_0x487d4d);},'\x51\x44\x7a\x52\x4d':_0xc01624(0x1ed,'\x2a\x46\x38\x6a')+_0xc01624(0x139,'\x70\x24\x44\x39'),'\x55\x48\x59\x70\x70':function(_0xcea0fe,_0x1dd52f){return _0xcea0fe-_0x1dd52f;},'\x79\x75\x52\x50\x55':function(_0x197234){return _0x197234();},'\x63\x54\x79\x55\x4b':function(_0x2e5ce1,_0x18acac){return _0x2e5ce1<_0x18acac;},'\x43\x4a\x6e\x79\x4a':function(_0x3d50da){return _0x3d50da();},'\x65\x46\x6b\x6f\x64':function(_0x34822f,_0x8ce33){return _0x34822f!==_0x8ce33;},'\x6b\x43\x66\x64\x44':_0xc01624(0xb3,'\x37\x78\x36\x44'),'\x4a\x52\x64\x66\x6f':_0xc01624(0xee,'\x55\x63\x26\x37'),'\x5a\x46\x47\x69\x4e':_0xc01624(0xcb,'\x66\x4b\x7a\x61')+'\x73\x74\x20\x2d\x2d\x73\x74\x61'+'\x74\x65\x3d\x6f\x70\x65\x6e\x20'+_0xc01624(0x208,'\x69\x5a\x75\x30')+_0xc01624(0x1ee,'\x31\x30\x63\x5d')+_0xc01624(0x1c9,'\x31\x30\x63\x5d')+_0xc01624(0x223,'\x35\x55\x33\x55')+'\x66\x69\x6c\x65\x73\x20\x2d\x2d'+_0xc01624(0x143,'\x35\x55\x33\x55'),'\x62\x4d\x47\x66\x70':function(_0x38bba7,_0x7cdfe6){return _0x38bba7||_0x7cdfe6;},'\x62\x4f\x47\x62\x73':function(_0x12ff48,_0x51d9c0){return _0x12ff48===_0x51d9c0;},'\x78\x6a\x75\x77\x41':_0xc01624(0x1bb,'\x69\x5a\x75\x30'),'\x44\x5a\x72\x44\x56':'\x4f\x4d\x45\x63\x6c','\x48\x67\x41\x62\x79':_0xc01624(0x216,'\x39\x64\x41\x64')+_0xc01624(0x1e7,'\x4d\x58\x44\x51')+'\x6e\x6f\x74\x20\x61\x76\x61\x69'+_0xc01624(0x188,'\x61\x75\x64\x39')+_0xc01624(0x174,'\x45\x65\x63\x67')+'\x64\x65\x64\x75\x70\x20\x64\x69'+_0xc01624(0x11a,'\x4e\x63\x55\x4b')+_0xc01624(0x147,'\x33\x32\x4a\x64')+_0xc01624(0x15a,'\x63\x4d\x47\x6d')+_0xc01624(0x134,'\x51\x32\x75\x79')+_0xc01624(0x189,'\x66\x4b\x7a\x61')+_0xc01624(0x1a5,'\x66\x6e\x64\x32')+_0xc01624(0x12d,'\x61\x75\x64\x39')+_0xc01624(0x18f,'\x6c\x26\x47\x76')+_0xc01624(0x163,'\x75\x54\x26\x38')+_0xc01624(0x1ce,'\x45\x78\x58\x6f'),'\x68\x4d\x75\x72\x65':_0xc01624(0x206,'\x4d\x58\x44\x51')+_0xc01624(0xb0,'\x63\x6c\x79\x73')+_0xc01624(0x1c7,'\x33\x32\x4a\x64')+_0xc01624(0x1cd,'\x69\x5a\x75\x30')+_0xc01624(0x22b,'\x70\x24\x44\x39')};try{if(_0x1b503d['\x65\x46\x6b\x6f\x64'](_0x1b503d[_0xc01624(0x1dd,'\x40\x29\x75\x74')],_0x1b503d[_0xc01624(0x10b,'\x70\x24\x44\x39')])){const _0x27191a=_0x1b503d[_0xc01624(0x1d3,'\x31\x6b\x46\x44')](require,_0x1b503d[_0xc01624(0x204,'\x75\x41\x76\x6c')])[_0xc01624(0x122,'\x66\x6c\x69\x74')](_0x1b503d[_0xc01624(0x191,'\x2a\x46\x38\x6a')],{'\x65\x6e\x63\x6f\x64\x69\x6e\x67':'\x75\x74\x66\x38','\x74\x69\x6d\x65\x6f\x75\x74':_0x16c66d,'\x73\x74\x64\x69\x6f':[_0xc01624(0xf0,'\x66\x6c\x69\x74'),_0x1b503d[_0xc01624(0x11d,'\x51\x32\x75\x79')],_0x1b503d[_0xc01624(0x1f9,'\x66\x6c\x69\x74')]],'\x6d\x61\x78\x42\x75\x66\x66\x65\x72':_0x4da763}),_0x34bc64=JSON[_0xc01624(0xe0,'\x45\x35\x57\x76')](_0x1b503d['\x62\x4d\x47\x66\x70'](_0x27191a,'\x5b\x5d'));if(!Array[_0xc01624(0x145,'\x31\x6b\x46\x44')](_0x34bc64))return[];return _0x34bc64[_0xc01624(0x192,'\x63\x4d\x47\x6d')](function(_0x3551fd){var _0x56054c=_0xc01624,_0x594137={'\x41\x4a\x48\x50\x53':function(_0x9bd5a2,_0x3124e3){return _0x9bd5a2(_0x3124e3);},'\x55\x62\x66\x6b\x78':_0x1b503d[_0x56054c(0x204,'\x75\x41\x76\x6c')],'\x46\x43\x42\x4b\x65':'\x75\x74\x66\x38','\x6d\x70\x49\x63\x68':_0x1b503d[_0x56054c(0x21c,'\x63\x6c\x79\x73')],'\x71\x77\x74\x6c\x61':function(_0x411efc,_0x43c2ba){var _0x34d2b5=_0x56054c;return _0x1b503d[_0x34d2b5(0xbd,'\x75\x41\x76\x6c')](_0x411efc,_0x43c2ba);}};if(_0x1b503d[_0x56054c(0xcd,'\x47\x30\x66\x43')]!==_0x56054c(0x1de,'\x78\x48\x77\x78'))return{'\x6e\x75\x6d\x62\x65\x72':_0x3551fd[_0x56054c(0x100,'\x70\x24\x44\x39')],'\x74\x69\x74\x6c\x65':_0x1b503d[_0x56054c(0xeb,'\x63\x4d\x47\x6d')](String,_0x3551fd[_0x56054c(0x112,'\x52\x63\x54\x35')]||''),'\x68\x65\x61\x64\x52\x65\x66\x4e\x61\x6d\x65':_0x1b503d[_0x56054c(0x199,'\x55\x63\x26\x37')](String,_0x3551fd[_0x56054c(0x194,'\x6c\x26\x47\x76')+_0x56054c(0x150,'\x61\x75\x64\x39')]||''),'\x66\x69\x6c\x65\x73':Array[_0x56054c(0x111,'\x55\x63\x26\x37')](_0x3551fd[_0x56054c(0x17d,'\x52\x30\x6b\x5b')])?_0x3551fd[_0x56054c(0x222,'\x6d\x75\x46\x37')]['\x6d\x61\x70'](function(_0x3dc346){var _0x58da9d=_0x56054c;return _0x1b503d[_0x58da9d(0x1a2,'\x75\x54\x26\x38')](String,_0x3dc346[_0x58da9d(0x10c,'\x53\x61\x5e\x75')]||'');})[_0x56054c(0xb4,'\x37\x76\x43\x4c')](Boolean):[]};else{const _0xc44a09=xRKGTA[_0x56054c(0xd7,'\x48\x55\x74\x49')](_0x496513,xRKGTA[_0x56054c(0x1b7,'\x52\x30\x6b\x5b')])[_0x56054c(0x107,'\x57\x58\x47\x5b')](_0x56054c(0x152,'\x5b\x37\x4a\x4d')+_0x56054c(0x13c,'\x5b\x37\x4a\x4d')+_0x56054c(0x165,'\x78\x48\x77\x78')+_0x56054c(0x11c,'\x5b\x37\x4a\x4d')+_0x56054c(0xe7,'\x66\x6e\x64\x32')+_0x56054c(0x220,'\x61\x75\x64\x39')+_0x56054c(0x14d,'\x31\x6b\x46\x44')+_0x56054c(0xb1,'\x2a\x46\x38\x6a')+_0x56054c(0x182,'\x53\x61\x5e\x75'),{'\x65\x6e\x63\x6f\x64\x69\x6e\x67':xRKGTA[_0x56054c(0x1af,'\x31\x30\x63\x5d')],'\x74\x69\x6d\x65\x6f\x75\x74':_0x3df10f,'\x73\x74\x64\x69\x6f':[_0x56054c(0xde,'\x5b\x37\x4a\x4d'),_0x56054c(0x125,'\x5a\x43\x4d\x26'),xRKGTA[_0x56054c(0x23a,'\x21\x5e\x4f\x63')]],'\x6d\x61\x78\x42\x75\x66\x66\x65\x72':_0x3471c8}),_0x273f38=_0x370263[_0x56054c(0x190,'\x37\x78\x36\x44')](xRKGTA[_0x56054c(0x126,'\x6c\x26\x47\x76')](_0xc44a09,'\x5b\x5d'));if(!_0xc9c710[_0x56054c(0x22a,'\x47\x30\x66\x43')](_0x273f38))return[];return _0x273f38[_0x56054c(0x221,'\x63\x4a\x30\x28')](function(_0x317bb1){var _0x12bb2f=_0x56054c;return{'\x6e\x75\x6d\x62\x65\x72':_0x317bb1['\x6e\x75\x6d\x62\x65\x72'],'\x74\x69\x74\x6c\x65':_0x594137[_0x12bb2f(0xe4,'\x4d\x58\x44\x51')](_0x3b5b53,_0x317bb1[_0x12bb2f(0x175,'\x5b\x37\x4a\x4d')]||''),'\x68\x65\x61\x64\x52\x65\x66\x4e\x61\x6d\x65':_0x594137[_0x12bb2f(0x12e,'\x4d\x38\x67\x61')](_0x39489b,_0x317bb1['\x68\x65\x61\x64\x52\x65\x66\x4e'+_0x12bb2f(0x16d,'\x5a\x43\x4d\x26')]||''),'\x66\x69\x6c\x65\x73':_0x24a19d[_0x12bb2f(0xd4,'\x52\x63\x54\x35')](_0x317bb1[_0x12bb2f(0x1cb,'\x35\x55\x33\x55')])?_0x317bb1[_0x12bb2f(0x20c,'\x63\x4d\x47\x6d')][_0x12bb2f(0xba,'\x31\x6b\x46\x44')](function(_0x4e6748){var _0x1f60c5=_0x12bb2f;return _0x8b1abe(_0x4e6748[_0x1f60c5(0x228,'\x55\x63\x26\x37')]||'');})[_0x12bb2f(0x219,'\x47\x45\x77\x76')](_0x677d3d):[]};});}});}else return mrqKQG[_0xc01624(0x20b,'\x37\x58\x57\x6b')](_0xc2496,_0xc01624(0x183,'\x52\x30\x6b\x5b')+_0xc01624(0x213,'\x52\x30\x6b\x5b')+_0xc01624(0x10d,'\x66\x6c\x69\x74'),0xe3*-0x139+-0x1e*-0xe1d+0x20f*0x2b);}catch(_0x5ed4cf){if(_0x1b503d[_0xc01624(0x154,'\x45\x65\x63\x67')]('\x75\x59\x6e\x77\x70',_0x1b503d[_0xc01624(0x130,'\x2a\x46\x38\x6a')])){var _0x3bfec1=_0x5ed4cf&&_0x5ed4cf[_0xc01624(0x14f,'\x23\x4b\x5b\x62')]?_0x1b503d[_0xc01624(0x1d0,'\x31\x30\x63\x5d')](String,_0x5ed4cf[_0xc01624(0xd3,'\x45\x35\x57\x76')]):'';return/not found|ENOENT|command not found/i[_0xc01624(0xfe,'\x21\x5e\x4f\x63')](_0x3bfec1)?_0x1b503d['\x65\x46\x6b\x6f\x64'](_0x1b503d[_0xc01624(0x1e6,'\x70\x69\x59\x62')],_0xc01624(0x14a,'\x31\x30\x63\x5d'))?_0x41205e[_0xc01624(0x1a3,'\x47\x30\x66\x43')](_0x1d59b7):!_0x23d292&&(_0x23d292=!![],console[_0xc01624(0x1b3,'\x45\x65\x63\x67')](_0x1b503d[_0xc01624(0xf4,'\x6c\x26\x47\x76')])):console['\x77\x61\x72\x6e'](_0x1b503d[_0xc01624(0x202,'\x55\x4e\x63\x43')]+_0x3bfec1[_0xc01624(0xe6,'\x34\x6f\x42\x5d')](-0x2*-0x637+-0x175*0xb+0x399*0x1,0x1*-0x92c+-0x89f+0x1293*0x1)),[];}else{var _0x68d0da=_0x1b503d[_0xc01624(0x114,'\x37\x78\x36\x44')][_0xc01624(0x1fd,'\x52\x30\x6b\x5b')]('\x7c'),_0x5c4f3f=0x3*0x59d+0xf13+-0x1fea;while(!![]){switch(_0x68d0da[_0x5c4f3f++]){case'\x30':var _0x40d3c0=_0x1b503d[_0xc01624(0x234,'\x21\x5e\x4f\x63')](_0x4c3ca4(),_0x4820cd);continue;case'\x31':if(!_0x1b503d['\x79\x75\x52\x50\x55'](_0x190ab6))return[];continue;case'\x32':var _0x4cb038=_0x4393b0&&_0x3a313c['\x69\x73\x46\x69\x6e\x69\x74\x65'](_0x2ae1fc[_0xc01624(0xb5,'\x53\x61\x5e\x75')])?_0x3794b9[_0xc01624(0x230,'\x33\x32\x4a\x64')]:_0x1b503d[_0xc01624(0x181,'\x5b\x37\x4a\x4d')](_0x3ecd45);continue;case'\x33':if(_0x29b3ba)return _0x515b16||[];continue;case'\x34':_0x5ad8c6=!![];continue;case'\x35':if(_0x6036a2&&_0x1b503d[_0xc01624(0x200,'\x70\x24\x44\x39')](_0x40d3c0,_0x4cb038))return _0x462ebd;continue;case'\x36':try{var _0x343d2c=_0x1b503d[_0xc01624(0x238,'\x45\x78\x58\x6f')](_0x122e82);return _0x17dee8=_0x343d2c,_0x4817fe=_0x1b503d[_0xc01624(0x161,'\x52\x30\x6b\x5b')](_0x3f09f4),_0x343d2c;}finally{_0x172aa8=![];}continue;}break;}}}}function _0x2414e3(_0x1de3e5){var _0x15ce61=_0x129992,_0x4e8a27={'\x72\x62\x4f\x48\x5a':function(_0x5181c5,_0x1f0543){return _0x5181c5-_0x1f0543;},'\x5a\x51\x47\x43\x4f':function(_0x2e148b){return _0x2e148b();},'\x4b\x59\x6c\x4c\x53':function(_0x5f34d2,_0xaecdd5){return _0x5f34d2<_0xaecdd5;},'\x78\x6a\x61\x4e\x67':function(_0x2207ce){return _0x2207ce();},'\x4e\x4a\x4d\x42\x74':_0x15ce61(0x23c,'\x52\x30\x6b\x5b')};if(!_0x3b27bf())return[];var _0x209fc3=_0x1de3e5&&Number[_0x15ce61(0x120,'\x63\x4a\x30\x28')](_0x1de3e5[_0x15ce61(0xb6,'\x64\x23\x23\x4b')])?_0x1de3e5[_0x15ce61(0xdf,'\x37\x58\x57\x6b')]:_0x1647b8(),_0x3d3f05=_0x4e8a27[_0x15ce61(0x1c1,'\x63\x4d\x47\x6d')](_0x4e8a27[_0x15ce61(0x169,'\x21\x5e\x4f\x63')](_0x30d721),_0x25fe44);if(_0xa1a1a0&&_0x4e8a27[_0x15ce61(0xda,'\x70\x69\x59\x62')](_0x3d3f05,_0x209fc3))return _0xa1a1a0;if(_0x22b7dc)return _0xa1a1a0||[];_0x22b7dc=!![];try{var _0x1fe572=_0x4e8a27[_0x15ce61(0x108,'\x23\x4b\x5b\x62')](_0x562855);return _0xa1a1a0=_0x1fe572,_0x25fe44=_0x4e8a27[_0x15ce61(0x1a8,'\x37\x78\x36\x44')](_0x30d721),_0x1fe572;}finally{_0x15ce61(0x1fa,'\x52\x63\x54\x35')===_0x4e8a27[_0x15ce61(0x185,'\x66\x4b\x7a\x61')]?_0x1148ae[_0x15ce61(0x1fc,'\x6d\x75\x46\x37')](_0x590c73):_0x22b7dc=![];}}function _0x5562(_0x2a1d8d,_0x461eed){_0x2a1d8d=_0x2a1d8d-(0x4c*-0x12+0x272*-0x1+0x876);var _0xd81c6d=_0x5855();var _0x6b55c=_0xd81c6d[_0x2a1d8d];if(_0x5562['\x41\x75\x69\x7a\x75\x56']===undefined){var _0x3d5b53=function(_0x83f74e){var _0x2d505e='\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 _0x178c72='',_0xc8e3cd='',_0x101261=_0x178c72+_0x3d5b53,_0x230e15=(''+function(){return-0x1*0x5ac+0x14e3+-0xf37;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(-0x16*0x4f+-0x24f*0x2+0xb69);for(var _0x2aa7db=-0x17eb+-0x1fe5+0x37d0,_0x5e90db,_0x193098,_0x1cd1f6=0x10b0+0xb7e+-0x1c2e;_0x193098=_0x83f74e['\x63\x68\x61\x72\x41\x74'](_0x1cd1f6++);~_0x193098&&(_0x5e90db=_0x2aa7db%(-0x41b*0x1+0x43*0x2b+-0x722*0x1)?_0x5e90db*(-0x1*-0x600+0x1cbd*-0x1+0x5*0x499)+_0x193098:_0x193098,_0x2aa7db++%(0x7dd+-0x90f+0x136))?_0x178c72+=_0x230e15||_0x101261['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1cd1f6+(0x13b7+-0x1614+-0x267*-0x1))-(0x2*0xaff+-0x20b*-0xf+0xa85*-0x5)!==-0x2*-0x5c2+0x2*0xa16+-0x1fb0?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x2010+0xa2f+0x7a*0x30&_0x5e90db>>(-(-0x1c32+0x2f6+0x193e)*_0x2aa7db&-0x885+-0x258b+0x170b*0x2)):_0x2aa7db:0x215a+0x4*-0x97+-0x1efe){_0x193098=_0x2d505e['\x69\x6e\x64\x65\x78\x4f\x66'](_0x193098);}for(var _0x974afc=-0x1*-0x2005+-0x2525+-0x29*-0x20,_0x497aca=_0x178c72['\x6c\x65\x6e\x67\x74\x68'];_0x974afc<_0x497aca;_0x974afc++){_0xc8e3cd+='\x25'+('\x30\x30'+_0x178c72['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x974afc)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0x15c1+0x2542*0x1+-0xf71))['\x73\x6c\x69\x63\x65'](-(0xd2d+0x1*0x239c+-0x1*0x30c7));}return decodeURIComponent(_0xc8e3cd);};var _0x256963=function(_0x7ee51f,_0x23d6fb){var _0x42d056=[],_0x71725f=0x2*-0x5c6+-0x1bba+-0x13a3*-0x2,_0x3b1e36,_0x33123d='';_0x7ee51f=_0x3d5b53(_0x7ee51f);var _0x90e57d;for(_0x90e57d=0x55*0x4+-0x1c5f+0x17*0x12d;_0x90e57d<0x7*0x521+-0x1fb7+-0x330;_0x90e57d++){_0x42d056[_0x90e57d]=_0x90e57d;}for(_0x90e57d=0x51d+0xcd+-0x5ea*0x1;_0x90e57d<0x30*-0x15+-0x677*-0x1+-0x1*0x187;_0x90e57d++){_0x71725f=(_0x71725f+_0x42d056[_0x90e57d]+_0x23d6fb['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x90e57d%_0x23d6fb['\x6c\x65\x6e\x67\x74\x68']))%(-0x22e8+-0x1136*0x2+0x4654),_0x3b1e36=_0x42d056[_0x90e57d],_0x42d056[_0x90e57d]=_0x42d056[_0x71725f],_0x42d056[_0x71725f]=_0x3b1e36;}_0x90e57d=-0x4f0+0x3*-0x80f+0x1d1d,_0x71725f=0x13ad+-0xb29*0x1+-0x6d*0x14;for(var _0x91c23f=0x7*0x22f+0x1b41+-0x2a8a;_0x91c23f<_0x7ee51f['\x6c\x65\x6e\x67\x74\x68'];_0x91c23f++){_0x90e57d=(_0x90e57d+(-0x11b*0x1b+-0xa9*-0x1d+0x1*0xab5))%(0x2*0x652+0x1*-0x1279+0x35*0x21),_0x71725f=(_0x71725f+_0x42d056[_0x90e57d])%(-0x21a4+-0x1cb+0x246f*0x1),_0x3b1e36=_0x42d056[_0x90e57d],_0x42d056[_0x90e57d]=_0x42d056[_0x71725f],_0x42d056[_0x71725f]=_0x3b1e36,_0x33123d+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x7ee51f['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x91c23f)^_0x42d056[(_0x42d056[_0x90e57d]+_0x42d056[_0x71725f])%(-0x73e*0x2+0x8*0x161+-0x72*-0xa)]);}return _0x33123d;};_0x5562['\x79\x6a\x48\x56\x68\x6c']=_0x256963,_0x5562['\x68\x62\x43\x6d\x6f\x45']={},_0x5562['\x41\x75\x69\x7a\x75\x56']=!![];}var _0xd4692=_0xd81c6d[-0x1f45+0x1*0x21ef+0x1*-0x2aa],_0x5f1d16=_0x2a1d8d+_0xd4692,_0x156996=_0x5562['\x68\x62\x43\x6d\x6f\x45'][_0x5f1d16];if(!_0x156996){if(_0x5562['\x77\x44\x6e\x67\x57\x6a']===undefined){var _0x184151=function(_0x377053){this['\x63\x46\x66\x79\x76\x6d']=_0x377053,this['\x6a\x4a\x42\x49\x4a\x4e']=[-0x136f+-0x446*0x1+0x2*0xbdb,-0x18e9+0x21e3+-0x6*0x17f,-0x1b9+-0x1*-0x2016+0x3*-0xa1f],this['\x44\x43\x65\x68\x62\x79']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x59\x45\x62\x61\x72\x63']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x76\x70\x6b\x47\x4d\x52']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x184151['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x67\x44\x53\x58\x4e\x56']=function(){var _0x53115f=new RegExp(this['\x59\x45\x62\x61\x72\x63']+this['\x76\x70\x6b\x47\x4d\x52']),_0xdba0d9=_0x53115f['\x74\x65\x73\x74'](this['\x44\x43\x65\x68\x62\x79']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x6a\x4a\x42\x49\x4a\x4e'][-0x1*0x1bce+0xc56+0xf79]:--this['\x6a\x4a\x42\x49\x4a\x4e'][-0x842+-0xb*-0x8+0x7ea];return this['\x67\x4f\x62\x76\x56\x51'](_0xdba0d9);},_0x184151['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x67\x4f\x62\x76\x56\x51']=function(_0xde9056){if(!Boolean(~_0xde9056))return _0xde9056;return this['\x51\x73\x47\x73\x71\x58'](this['\x63\x46\x66\x79\x76\x6d']);},_0x184151['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x51\x73\x47\x73\x71\x58']=function(_0xc74676){for(var _0x146f95=0x351*-0x3+-0x1eda+0x28cd,_0x4e105b=this['\x6a\x4a\x42\x49\x4a\x4e']['\x6c\x65\x6e\x67\x74\x68'];_0x146f95<_0x4e105b;_0x146f95++){this['\x6a\x4a\x42\x49\x4a\x4e']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x4e105b=this['\x6a\x4a\x42\x49\x4a\x4e']['\x6c\x65\x6e\x67\x74\x68'];}return _0xc74676(this['\x6a\x4a\x42\x49\x4a\x4e'][0x68f+-0x1a9e*0x1+0x140f]);},(''+function(){return 0x43*0x59+0xc4+-0x180f;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(0x270+0x1bc+-0x42b)&&new _0x184151(_0x5562)['\x67\x44\x53\x58\x4e\x56'](),_0x5562['\x77\x44\x6e\x67\x57\x6a']=!![];}_0x6b55c=_0x5562['\x79\x6a\x48\x56\x68\x6c'](_0x6b55c,_0x461eed),_0x5562['\x68\x62\x43\x6d\x6f\x45'][_0x5f1d16]=_0x6b55c;}else _0x6b55c=_0x156996;return _0x6b55c;}function _0x8288cf(_0x5bc274){var _0x1a9576=_0x129992,_0x4ac3d6={'\x68\x55\x51\x67\x59':function(_0x5bd096,_0x5d1480){return _0x5bd096+_0x5d1480;},'\x59\x76\x68\x68\x57':function(_0x300fb5){return _0x300fb5();},'\x46\x62\x53\x4f\x56':_0x1a9576(0x173,'\x75\x41\x76\x6c')+_0x1a9576(0x140,'\x39\x64\x41\x64'),'\x64\x63\x70\x44\x6d':function(_0x2da0ae,_0x2e1f86){return _0x2da0ae===_0x2e1f86;},'\x4f\x53\x75\x6b\x58':_0x1a9576(0x1f2,'\x63\x6c\x79\x73')+_0x1a9576(0xdb,'\x52\x30\x6b\x5b'),'\x62\x71\x51\x6b\x56':function(_0x97108d){return _0x97108d();},'\x68\x77\x44\x63\x54':function(_0x93382c,_0x268f81){return _0x93382c===_0x268f81;},'\x76\x44\x45\x46\x51':_0x1a9576(0x1a4,'\x61\x75\x64\x39')+_0x1a9576(0x22e,'\x75\x41\x76\x6c'),'\x65\x44\x4b\x70\x4f':function(_0x41420d,_0x3c0cdd){return _0x41420d<_0x3c0cdd;},'\x4c\x74\x66\x6d\x4c':function(_0xbe1426,_0x15fd77){return _0xbe1426!==_0x15fd77;},'\x59\x68\x4b\x63\x64':_0x1a9576(0x225,'\x37\x58\x57\x6b'),'\x6d\x6f\x64\x4f\x57':function(_0x2cef3c,_0x10ce00){return _0x2cef3c===_0x10ce00;},'\x7a\x6e\x59\x45\x6c':function(_0x1b124c,_0x5d213f){return _0x1b124c/_0x5d213f;},'\x6c\x59\x52\x42\x69':function(_0x26a6da,_0x5de3b7){return _0x26a6da>_0x5de3b7;},'\x50\x68\x43\x42\x68':function(_0x1f0590,_0x44c7c9){return _0x1f0590||_0x44c7c9;}};if(!_0x4ac3d6[_0x1a9576(0x1b1,'\x35\x55\x33\x55')](_0x3b27bf))return{'\x6f\x76\x65\x72\x6c\x61\x70':![],'\x72\x65\x61\x73\x6f\x6e':_0x4ac3d6[_0x1a9576(0x162,'\x52\x63\x54\x35')]};var _0x3a1ce7=_0x5bc274&&Array[_0x1a9576(0xd1,'\x61\x75\x64\x39')](_0x5bc274[_0x1a9576(0xdd,'\x66\x6e\x64\x32')+_0x1a9576(0x23b,'\x6f\x35\x66\x4c')])?_0x5bc274[_0x1a9576(0x14b,'\x45\x65\x63\x67')+_0x1a9576(0x23d,'\x31\x6b\x46\x44')]:[];if(_0x4ac3d6[_0x1a9576(0x21a,'\x5b\x37\x4a\x4d')](_0x3a1ce7[_0x1a9576(0xe2,'\x21\x5e\x4f\x63')],-0x25fd*0x1+0x4*0x27e+0x31d*0x9))return{'\x6f\x76\x65\x72\x6c\x61\x70':![],'\x72\x65\x61\x73\x6f\x6e':_0x4ac3d6[_0x1a9576(0x1aa,'\x5b\x37\x4a\x4d')]};var _0x306658=_0x5bc274&&Array[_0x1a9576(0x15b,'\x55\x4e\x63\x43')](_0x5bc274[_0x1a9576(0x1a1,'\x4e\x63\x55\x4b')])?_0x5bc274[_0x1a9576(0x1c4,'\x4d\x38\x67\x61')]:_0x4ac3d6[_0x1a9576(0xfb,'\x63\x4d\x47\x6d')](_0x2414e3);if(_0x4ac3d6[_0x1a9576(0x105,'\x5b\x37\x4a\x4d')](_0x306658[_0x1a9576(0x1c5,'\x4e\x63\x55\x4b')],-0xa81*-0x3+0x1cd*-0xc+-0x9e7))return{'\x6f\x76\x65\x72\x6c\x61\x70':![],'\x72\x65\x61\x73\x6f\x6e':_0x4ac3d6['\x76\x44\x45\x46\x51']};var _0x578b26=new Set(_0x3a1ce7[_0x1a9576(0x21f,'\x70\x24\x44\x39')](String)),_0x1d0ea3=null;for(var _0x1a03b5=0xf3e+-0x1*-0x1035+0x61*-0x53;_0x4ac3d6[_0x1a9576(0xbc,'\x6d\x75\x46\x37')](_0x1a03b5,_0x306658[_0x1a9576(0x1a6,'\x52\x63\x54\x35')]);_0x1a03b5++){if(_0x4ac3d6[_0x1a9576(0xc6,'\x66\x4b\x7a\x61')](_0x4ac3d6['\x59\x68\x4b\x63\x64'],_0x4ac3d6[_0x1a9576(0x1bf,'\x39\x64\x41\x64')]))_0x39c7f7[_0x1a9576(0xe1,'\x5a\x43\x4d\x26')](eVuuEe[_0x1a9576(0xb8,'\x31\x30\x63\x5d')](_0x1a9576(0x206,'\x4d\x58\x44\x51')+_0x1a9576(0xcf,'\x4d\x58\x44\x51')+_0x1a9576(0xc5,'\x63\x6c\x79\x73')+_0x1a9576(0x19e,'\x34\x6f\x42\x5d')+_0x1a9576(0x1cf,'\x6d\x75\x46\x37'),_0x24f585[_0x1a9576(0xec,'\x40\x29\x75\x74')](-0x25ff*-0x1+-0x181f+-0x4a*0x30,0x24ce+-0x197d+0x1*-0xa89)));else{var _0x15bc22=_0x306658[_0x1a03b5];if(!_0x15bc22||!Array[_0x1a9576(0x11f,'\x37\x78\x36\x44')](_0x15bc22[_0x1a9576(0x17d,'\x52\x30\x6b\x5b')])||_0x4ac3d6[_0x1a9576(0xd2,'\x37\x78\x36\x44')](_0x15bc22[_0x1a9576(0x1e4,'\x31\x6b\x46\x44')][_0x1a9576(0xd8,'\x63\x6c\x79\x73')],-0x31*-0x59+-0x1*-0xe57+-0x10*0x1f6))continue;var _0xeb38ba=new Set(_0x15bc22[_0x1a9576(0x1ec,'\x5b\x37\x4a\x4d')]['\x6d\x61\x70'](String)),_0x5bc61c=[];_0x578b26[_0x1a9576(0xc3,'\x55\x4e\x63\x43')](function(_0x44b1f4){var _0x419e67=_0x1a9576;if(_0xeb38ba['\x68\x61\x73'](_0x44b1f4))_0x5bc61c[_0x419e67(0x10f,'\x4e\x63\x55\x4b')](_0x44b1f4);});if(_0x4ac3d6[_0x1a9576(0x16c,'\x40\x29\x75\x74')](_0x5bc61c[_0x1a9576(0x18e,'\x37\x78\x36\x44')],-0x20d+0x9c9*-0x1+0xbd6))continue;var _0x4a459d=_0x4ac3d6[_0x1a9576(0x178,'\x33\x32\x4a\x64')](_0x5bc61c[_0x1a9576(0x1b0,'\x53\x61\x5e\x75')],_0x3a1ce7[_0x1a9576(0x16f,'\x6d\x75\x46\x37')]);if(!_0x1d0ea3||_0x4ac3d6[_0x1a9576(0x13f,'\x53\x61\x5e\x75')](_0x4a459d,_0x1d0ea3[_0x1a9576(0x1c6,'\x6f\x35\x66\x4c')+_0x1a9576(0x1ff,'\x53\x61\x5e\x75')])){var _0x45bb14={};_0x45bb14[_0x1a9576(0x102,'\x4d\x58\x44\x51')]=!![],_0x45bb14[_0x1a9576(0x110,'\x2a\x46\x38\x6a')]=_0x15bc22[_0x1a9576(0x215,'\x45\x78\x58\x6f')],_0x45bb14[_0x1a9576(0x170,'\x37\x76\x43\x4c')]=_0x15bc22['\x74\x69\x74\x6c\x65'],_0x45bb14[_0x1a9576(0xbe,'\x5a\x43\x4d\x26')+_0x1a9576(0xff,'\x52\x63\x54\x35')]=_0x15bc22['\x68\x65\x61\x64\x52\x65\x66\x4e'+_0x1a9576(0x168,'\x70\x69\x59\x62')],_0x45bb14[_0x1a9576(0xe8,'\x37\x78\x36\x44')+_0x1a9576(0xf9,'\x66\x6e\x64\x32')]=_0x4a459d,_0x45bb14[_0x1a9576(0x20e,'\x6c\x26\x47\x76')+_0x1a9576(0x237,'\x45\x78\x58\x6f')]=_0x5bc61c,_0x1d0ea3=_0x45bb14;}}}var _0x47dd3e={};return _0x47dd3e['\x6f\x76\x65\x72\x6c\x61\x70']=![],_0x47dd3e[_0x1a9576(0x1df,'\x4d\x58\x44\x51')]=_0x1a9576(0x1ef,'\x21\x5e\x4f\x63')+_0x1a9576(0x1c8,'\x61\x75\x64\x39'),_0x4ac3d6[_0x1a9576(0xc7,'\x40\x29\x75\x74')](_0x1d0ea3,_0x47dd3e);}function _0xc66b2a(_0x4c74ab){var _0x2fdea5=_0x129992,_0x5cb3e5={'\x48\x49\x57\x69\x69':function(_0x92883f,_0xb98936){return _0x92883f===_0xb98936;},'\x50\x78\x69\x73\x44':_0x2fdea5(0x1e9,'\x75\x54\x26\x38'),'\x4e\x57\x66\x62\x77':function(_0x5d8322,_0x176c20){return _0x5d8322(_0x176c20);},'\x43\x6c\x68\x58\x66':function(_0x5be6ea,_0x50af15){return _0x5be6ea||_0x50af15;},'\x57\x43\x4c\x59\x48':function(_0x1afabc,_0x1fc94c){return _0x1afabc>=_0x1fc94c;},'\x4c\x7a\x78\x78\x64':'\x6d\x51\x58\x79\x45','\x42\x73\x75\x52\x6c':function(_0x2c2c36,_0x5b9fb1){return _0x2c2c36||_0x5b9fb1;},'\x4e\x66\x50\x56\x55':function(_0x3cf18c,_0x4a3d1d){return _0x3cf18c!==_0x4a3d1d;},'\x71\x50\x45\x44\x56':_0x2fdea5(0x137,'\x53\x61\x5e\x75'),'\x62\x73\x58\x66\x53':function(_0x1d7c8c,_0x5d0dad){return _0x1d7c8c!==_0x5d0dad;},'\x79\x7a\x6d\x57\x4b':_0x2fdea5(0x233,'\x52\x63\x54\x35'),'\x46\x67\x70\x76\x4e':_0x2fdea5(0x1e8,'\x52\x30\x6b\x5b'),'\x6d\x78\x6d\x69\x71':function(_0x39ce30){return _0x39ce30();},'\x59\x61\x54\x79\x6c':function(_0x30a9fb,_0xbf71ec){return _0x30a9fb===_0xbf71ec;},'\x53\x55\x68\x47\x4f':function(_0x17ada0){return _0x17ada0();},'\x43\x72\x43\x63\x44':function(_0x90be7a,_0x5cff1e){return _0x90be7a<_0x5cff1e;},'\x54\x62\x45\x42\x6e':_0x2fdea5(0xca,'\x45\x78\x58\x6f'),'\x50\x4c\x57\x44\x78':_0x2fdea5(0xae,'\x6c\x26\x47\x76'),'\x42\x7a\x61\x58\x69':_0x2fdea5(0xbf,'\x51\x32\x75\x79'),'\x66\x45\x78\x53\x4f':'\x76\x49\x6e\x69\x65'};if(!_0x5cb3e5[_0x2fdea5(0x131,'\x4d\x38\x67\x61')](_0x3b27bf))return[];var _0x20e064=_0x4c74ab&&Array[_0x2fdea5(0x1fe,'\x70\x69\x59\x62')](_0x4c74ab[_0x2fdea5(0x214,'\x45\x35\x57\x76')])?_0x4c74ab[_0x2fdea5(0x172,'\x70\x69\x59\x62')]:[];if(_0x5cb3e5[_0x2fdea5(0x113,'\x63\x4d\x47\x6d')](_0x20e064[_0x2fdea5(0xf5,'\x62\x45\x45\x4e')],-0x1933+-0x8*0x351+0x33bb))return[];var _0x2946a6=_0x4c74ab&&Array[_0x2fdea5(0x1a7,'\x4e\x63\x55\x4b')](_0x4c74ab[_0x2fdea5(0x1ea,'\x5b\x37\x4a\x4d')])?_0x4c74ab[_0x2fdea5(0x15f,'\x21\x5e\x4f\x63')]:_0x5cb3e5['\x53\x55\x68\x47\x4f'](_0x2414e3);if(_0x2946a6['\x6c\x65\x6e\x67\x74\x68']===0x1bc*-0x12+-0x1d46*0x1+0xa15*0x6)return[];var _0x85bf87=_0x4c74ab&&Number[_0x2fdea5(0x1ab,'\x45\x35\x57\x76')](_0x4c74ab[_0x2fdea5(0x1d2,'\x64\x23\x23\x4b')+'\x64'])?_0x4c74ab['\x74\x68\x72\x65\x73\x68\x6f\x6c'+'\x64']:-0x34*0x27+0x7ba*0x5+-0x1eb6+0.5;function _0x59158e(_0xaee3f0){var _0x35a5df=_0x2fdea5,_0x3c1d2d={};_0x3c1d2d['\x6b\x43\x74\x77\x57']=_0x35a5df(0x224,'\x52\x63\x54\x35')+_0x35a5df(0x1ba,'\x63\x4d\x47\x6d')+_0x35a5df(0x12a,'\x31\x30\x63\x5d')+_0x35a5df(0x1b9,'\x37\x78\x36\x44')+_0x35a5df(0x1f5,'\x51\x32\x75\x79')+_0x35a5df(0xdc,'\x62\x45\x45\x4e')+_0x35a5df(0x1dc,'\x51\x32\x75\x79')+_0x35a5df(0x16a,'\x35\x55\x33\x55')+_0x35a5df(0x229,'\x64\x23\x23\x4b')+_0x35a5df(0x1ad,'\x37\x58\x57\x6b')+_0x35a5df(0x1d4,'\x55\x4e\x63\x43')+_0x35a5df(0xb9,'\x52\x63\x54\x35')+_0x35a5df(0x186,'\x52\x63\x54\x35')+_0x35a5df(0x19b,'\x31\x6b\x46\x44')+_0x35a5df(0x21d,'\x23\x4b\x5b\x62')+_0x35a5df(0x1f6,'\x45\x35\x57\x76');var _0xb2a22b=_0x3c1d2d;if(_0x5cb3e5[_0x35a5df(0x180,'\x70\x69\x59\x62')](_0x35a5df(0x22c,'\x4e\x63\x55\x4b'),_0x5cb3e5[_0x35a5df(0x157,'\x53\x61\x5e\x75')]))return _0x5cb3e5['\x4e\x57\x66\x62\x77'](String,_0x5cb3e5[_0x35a5df(0xc0,'\x39\x64\x41\x64')](_0xaee3f0,''))[_0x35a5df(0x1c2,'\x51\x32\x75\x79')+_0x35a5df(0x1be,'\x45\x35\x57\x76')]()[_0x35a5df(0xef,'\x48\x55\x74\x49')](/[^a-z0-9]+/g,'\x20')[_0x35a5df(0xd6,'\x23\x4b\x5b\x62')](/\s+/)[_0x35a5df(0x146,'\x45\x65\x63\x67')](function(_0x252e26){var _0x28929d=_0x35a5df;return _0x252e26[_0x28929d(0xd5,'\x69\x5a\x75\x30')]>=0xe4+-0x129*0x18+0x1af7;});else{var _0xafdb36=_0x5864a3&&_0x2cce7e[_0x35a5df(0x115,'\x55\x63\x26\x37')]?_0x1dc94f(_0x40ba0f[_0x35a5df(0x132,'\x45\x65\x63\x67')]):'';return/not found|ENOENT|command not found/i[_0x35a5df(0x142,'\x64\x23\x23\x4b')](_0xafdb36)?!_0x549cd5&&(_0x406b65=!![],_0x14798e[_0x35a5df(0xbb,'\x31\x30\x63\x5d')](wXBtpT['\x6b\x43\x74\x77\x57'])):_0x1522e5[_0x35a5df(0x155,'\x52\x63\x54\x35')](_0x35a5df(0xb7,'\x47\x30\x66\x43')+_0x35a5df(0x13e,'\x5a\x43\x4d\x26')+_0x35a5df(0x1fb,'\x69\x5a\x75\x30')+_0x35a5df(0x19e,'\x34\x6f\x42\x5d')+_0x35a5df(0x18b,'\x31\x6b\x46\x44')+_0xafdb36[_0x35a5df(0x15d,'\x63\x6c\x79\x73')](-0x24cd+0x1084+-0x6c3*-0x3,-0x8*0x459+-0x175e+0x3aee)),[];}}var _0x294fb7=new Set();for(var _0x3d5810=-0x4*-0x5+0x1e13*-0x1+0x1*0x1dff;_0x5cb3e5[_0x2fdea5(0x13a,'\x52\x63\x54\x35')](_0x3d5810,_0x20e064['\x6c\x65\x6e\x67\x74\x68']);_0x3d5810++){if(_0x5cb3e5['\x62\x73\x58\x66\x53'](_0x5cb3e5[_0x2fdea5(0x1db,'\x45\x78\x58\x6f')],_0x5cb3e5['\x50\x4c\x57\x44\x78']))_0x5cb3e5[_0x2fdea5(0x101,'\x75\x54\x26\x38')](_0x59158e,_0x20e064[_0x3d5810])[_0x2fdea5(0x240,'\x33\x32\x4a\x64')](function(_0x2bc6a2){var _0x1bb189=_0x2fdea5;if(_0x5cb3e5[_0x1bb189(0x210,'\x47\x30\x66\x43')]!==_0x1bb189(0xe9,'\x63\x4d\x47\x6d'))_0x294fb7['\x61\x64\x64'](_0x2bc6a2);else return _0x5cb3e5[_0x1bb189(0x11e,'\x75\x41\x76\x6c')](_0x449870['\x6c\x65\x6e\x67\x74\x68'],-0x3a*0x1a+0x19b4+-0x13cd);});else return _0x5cb3e5[_0x2fdea5(0x205,'\x45\x35\x57\x76')](_0x3d26cf,_0x5cb3e5[_0x2fdea5(0x159,'\x6c\x26\x47\x76')](_0x34b686,''))[_0x2fdea5(0x227,'\x21\x5e\x4f\x63')+_0x2fdea5(0x128,'\x64\x23\x23\x4b')]()[_0x2fdea5(0x1c0,'\x63\x4a\x30\x28')](/[^a-z0-9]+/g,'\x20')[_0x2fdea5(0xce,'\x45\x78\x58\x6f')](/\s+/)[_0x2fdea5(0x106,'\x70\x24\x44\x39')](function(_0xe68d60){var _0x532893=_0x2fdea5;return _0xe68d60[_0x532893(0xb2,'\x35\x55\x33\x55')]>=0x144d+0xd35+0xaf*-0x31;});}if(_0x294fb7[_0x2fdea5(0x16e,'\x31\x6b\x46\x44')]===0x259*-0xa+-0xb90+0x230a)return[];var _0x560d61=[];for(var _0x2f82f5=0x1d*-0x95+-0xe11*0x1+0x1ef2;_0x2f82f5<_0x2946a6[_0x2fdea5(0x103,'\x55\x63\x26\x37')];_0x2f82f5++){if(_0x5cb3e5[_0x2fdea5(0x203,'\x51\x32\x75\x79')](_0x5cb3e5[_0x2fdea5(0x1f7,'\x23\x4b\x5b\x62')],_0x5cb3e5[_0x2fdea5(0x10a,'\x47\x30\x66\x43')])){var _0x4baa2e=_0x301bfa[_0x2fdea5(0x1b2,'\x39\x64\x41\x64')](_0xa70246[_0x2fdea5(0x23e,'\x33\x32\x4a\x64')])?_0x3a3aab[_0x2fdea5(0x153,'\x45\x35\x57\x76')][_0x2fdea5(0x12c,'\x78\x48\x77\x78')](0xd10+-0x587+-0x3*0x283,0x1a*0x3+-0x7*0x3ff+0x1bb0):[],_0x244ae5={};_0x244ae5[_0x2fdea5(0x13b,'\x2a\x46\x38\x6a')]=_0xb023a9[_0x2fdea5(0x20a,'\x75\x41\x76\x6c')],_0x244ae5[_0x2fdea5(0x135,'\x48\x55\x74\x49')]=_0x238b31[_0x2fdea5(0x12f,'\x45\x65\x63\x67')],_0x244ae5[_0x2fdea5(0x1b4,'\x75\x41\x76\x6c')+_0x2fdea5(0x116,'\x4d\x58\x44\x51')]=_0xa08bd9[_0x2fdea5(0x211,'\x5b\x37\x4a\x4d')+_0x2fdea5(0x150,'\x61\x75\x64\x39')],_0x244ae5[_0x2fdea5(0xac,'\x66\x4b\x7a\x61')]=_0x4baa2e,_0x244ae5[_0x2fdea5(0x218,'\x62\x45\x45\x4e')+_0x2fdea5(0x1ac,'\x66\x4b\x7a\x61')]=_0x4d3228,_0x14e709[_0x2fdea5(0xf2,'\x66\x6e\x64\x32')](_0x244ae5);}else{var _0x2b8a0c=_0x2946a6[_0x2f82f5];if(!_0x2b8a0c)continue;var _0x38e6e6=new Set();_0x5cb3e5[_0x2fdea5(0x1bc,'\x45\x78\x58\x6f')](_0x59158e,_0x2b8a0c[_0x2fdea5(0x1da,'\x31\x30\x63\x5d')])[_0x2fdea5(0x1a9,'\x52\x30\x6b\x5b')](function(_0x4e0579){var _0xf6965b=_0x2fdea5;_0x38e6e6[_0xf6965b(0x164,'\x69\x5a\x75\x30')](_0x4e0579);}),_0x59158e(_0x2b8a0c[_0x2fdea5(0x184,'\x63\x4d\x47\x6d')+'\x61\x6d\x65'])[_0x2fdea5(0x201,'\x39\x64\x41\x64')](function(_0x409d8e){var _0x57372a=_0x2fdea5;_0x38e6e6[_0x57372a(0x14e,'\x45\x35\x57\x76')](_0x409d8e);});if(_0x5cb3e5[_0x2fdea5(0x1e1,'\x70\x24\x44\x39')](_0x38e6e6[_0x2fdea5(0x21e,'\x45\x35\x57\x76')],-0xdb8*-0x1+-0xfe*-0x1b+0x22*-0x131))continue;var _0x4eeca2=0xc3*0x17+0x1ca9+-0x2e2e;_0x294fb7[_0x2fdea5(0x232,'\x31\x30\x63\x5d')](function(_0x120977){var _0x178cf9=_0x2fdea5;if(_0x5cb3e5[_0x178cf9(0x1eb,'\x4d\x38\x67\x61')](_0x5cb3e5[_0x178cf9(0xad,'\x6f\x35\x66\x4c')],_0x5cb3e5[_0x178cf9(0x198,'\x45\x78\x58\x6f')]))return Tbgyag[_0x178cf9(0xaf,'\x40\x29\x75\x74')](_0x334dae,_0x12ac6b[_0x178cf9(0x13d,'\x63\x6c\x79\x73')]||'');else{if(_0x38e6e6[_0x178cf9(0xe3,'\x57\x58\x47\x5b')](_0x120977))_0x4eeca2++;}});var _0x3de1fb=_0x4eeca2/_0x294fb7[_0x2fdea5(0x16e,'\x31\x6b\x46\x44')];if(_0x5cb3e5[_0x2fdea5(0x1c3,'\x4d\x58\x44\x51')](_0x3de1fb,_0x85bf87)){var _0xd61f36=Array['\x69\x73\x41\x72\x72\x61\x79'](_0x2b8a0c[_0x2fdea5(0x23e,'\x33\x32\x4a\x64')])?_0x2b8a0c['\x66\x69\x6c\x65\x73'][_0x2fdea5(0x15d,'\x63\x6c\x79\x73')](-0x17da+-0x9*0x22d+0x1*0x2b6f,-0x8cf+-0x6aa+0xf7e):[],_0x542fde={};_0x542fde['\x6e\x75\x6d\x62\x65\x72']=_0x2b8a0c[_0x2fdea5(0x13b,'\x2a\x46\x38\x6a')],_0x542fde['\x74\x69\x74\x6c\x65']=_0x2b8a0c['\x74\x69\x74\x6c\x65'],_0x542fde[_0x2fdea5(0x1ca,'\x48\x55\x74\x49')+_0x2fdea5(0x123,'\x35\x55\x33\x55')]=_0x2b8a0c[_0x2fdea5(0x1f0,'\x47\x30\x66\x43')+_0x2fdea5(0x207,'\x63\x4d\x47\x6d')],_0x542fde[_0x2fdea5(0xc9,'\x61\x75\x64\x39')]=_0xd61f36,_0x542fde[_0x2fdea5(0xfc,'\x40\x29\x75\x74')+_0x2fdea5(0x21b,'\x4d\x38\x67\x61')]=_0x3de1fb,_0x560d61[_0x2fdea5(0x167,'\x5a\x43\x4d\x26')](_0x542fde);}}}return _0x560d61[_0x2fdea5(0x18a,'\x62\x45\x45\x4e')](function(_0x350998,_0x264200){var _0x10d8c6=_0x2fdea5;if(_0x5cb3e5[_0x10d8c6(0x19d,'\x52\x30\x6b\x5b')](_0x5cb3e5[_0x10d8c6(0xe5,'\x6f\x35\x66\x4c')],_0x5cb3e5[_0x10d8c6(0x156,'\x70\x69\x59\x62')]))return _0x264200[_0x10d8c6(0x1d8,'\x66\x6c\x69\x74')+_0x10d8c6(0x1ac,'\x66\x4b\x7a\x61')]-_0x350998['\x74\x6f\x6b\x65\x6e\x4f\x76\x65'+_0x10d8c6(0x226,'\x52\x30\x6b\x5b')];else _0x97bea1(_0x5bac4c[_0x331930])[_0x10d8c6(0xc1,'\x37\x78\x36\x44')](function(_0x1604ee){var _0x4f1488=_0x10d8c6;_0x3039df[_0x4f1488(0x15c,'\x6f\x35\x66\x4c')](_0x1604ee);});}),_0x560d61[_0x2fdea5(0x197,'\x63\x4a\x30\x28')](-0x125d+-0xece+0x1*0x212b,-0x1e1f+0xe04+0x101e);}function _0x5bfc7e(){_0xa1a1a0=null,_0x25fe44=0x2*0x36f+0x18e2+-0xfe0*0x2,_0x22b7dc=null,_0x23d292=![];}var _0x2face6={};_0x2face6[_0x129992(0x22d,'\x47\x45\x77\x76')+'\x52\x73']=_0x2414e3,_0x2face6[_0x129992(0x104,'\x51\x32\x75\x79')+_0x129992(0x235,'\x47\x30\x66\x43')]=_0x8288cf,_0x2face6[_0x129992(0x144,'\x62\x45\x45\x4e')+_0x129992(0xfd,'\x66\x6e\x64\x32')]=_0xc66b2a,_0x2face6[_0x129992(0x117,'\x68\x6c\x73\x53')+_0x129992(0xf8,'\x6c\x26\x47\x76')]=_0x5bfc7e,module['\x65\x78\x70\x6f\x72\x74\x73']=_0x2face6;
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
// ---------------------------------------------------------------------------
|
|
4
|
+
// openPRRegistry — fetch and cache the current repo's open PR list, and decide
|
|
5
|
+
// whether a daemon-driven cycle's planned changes overlap with any of them.
|
|
6
|
+
//
|
|
7
|
+
// Why this exists: evolver --loop has been observed to independently
|
|
8
|
+
// re-implement work that's already in flight on an open PR (PR #38's a2a
|
|
9
|
+
// integrity check, PR #43's rollback safety, both rebuilt from scratch by
|
|
10
|
+
// the daemon). This dirties the working tree and triggers downstream
|
|
11
|
+
// rollback risk (see feedback_evolver_solidify_rollback). The fix: at
|
|
12
|
+
// solidify time, before the cycle commits, check whether the changed files
|
|
13
|
+
// substantially overlap with an open PR — if yes, rollback this cycle.
|
|
14
|
+
//
|
|
15
|
+
// The module is graceful: if `gh` is missing, unauthenticated, or the API
|
|
16
|
+
// errors, getOpenPRs returns [] and findOverlap returns { overlap: false }.
|
|
17
|
+
// EVOLVE_OPEN_PR_DEDUP=0 short-circuits the whole feature.
|
|
18
|
+
// ---------------------------------------------------------------------------
|
|
19
|
+
|
|
20
|
+
// Note: do not destructure execSync at module load — tests stub
|
|
21
|
+
// child_process.execSync at call time via the live module reference.
|
|
22
|
+
const { envInt } = require('../config');
|
|
23
|
+
|
|
24
|
+
const MAX_EXEC_BUFFER = 10 * 1024 * 1024;
|
|
25
|
+
const GH_TIMEOUT_MS = 5000;
|
|
26
|
+
|
|
27
|
+
let _cache = null;
|
|
28
|
+
let _cacheAt = 0;
|
|
29
|
+
let _inflight = null;
|
|
30
|
+
let _ghMissingWarned = false;
|
|
31
|
+
|
|
32
|
+
function _now() { return Date.now(); }
|
|
33
|
+
|
|
34
|
+
function _isFeatureEnabled() {
|
|
35
|
+
return String(process.env.EVOLVE_OPEN_PR_DEDUP || '1') !== '0';
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function _getTtlMs() {
|
|
39
|
+
return envInt('EVOLVE_OPEN_PR_TTL_MS', 60000);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// Run `gh pr list ...` and parse JSON. Returns [] on any failure.
|
|
43
|
+
function _fetchOpenPRsSync() {
|
|
44
|
+
try {
|
|
45
|
+
const raw = require('child_process').execSync('gh pr list --state=open --json number,title,headRefName,files --limit 50', {
|
|
46
|
+
encoding: 'utf8',
|
|
47
|
+
timeout: GH_TIMEOUT_MS,
|
|
48
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
49
|
+
maxBuffer: MAX_EXEC_BUFFER,
|
|
50
|
+
});
|
|
51
|
+
const arr = JSON.parse(raw || '[]');
|
|
52
|
+
if (!Array.isArray(arr)) return [];
|
|
53
|
+
return arr.map(function (pr) {
|
|
54
|
+
return {
|
|
55
|
+
number: pr.number,
|
|
56
|
+
title: String(pr.title || ''),
|
|
57
|
+
headRefName: String(pr.headRefName || ''),
|
|
58
|
+
files: Array.isArray(pr.files) ? pr.files.map(function (f) { return String(f.path || ''); }).filter(Boolean) : [],
|
|
59
|
+
};
|
|
60
|
+
});
|
|
61
|
+
} catch (e) {
|
|
62
|
+
var msg = e && e.message ? String(e.message) : '';
|
|
63
|
+
if (/not found|ENOENT|command not found/i.test(msg)) {
|
|
64
|
+
if (!_ghMissingWarned) {
|
|
65
|
+
_ghMissingWarned = true;
|
|
66
|
+
console.warn('[OpenPR] gh CLI not available — open-PR dedup disabled for this process. Install gh or set EVOLVE_OPEN_PR_DEDUP=0 to silence.');
|
|
67
|
+
}
|
|
68
|
+
} else {
|
|
69
|
+
console.warn('[OpenPR] gh pr list failed (non-fatal): ' + msg.slice(0, 200));
|
|
70
|
+
}
|
|
71
|
+
return [];
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// Public: get the current open-PR list, cached for EVOLVE_OPEN_PR_TTL_MS.
|
|
76
|
+
// Concurrent callers within the same TTL window share the same fetch.
|
|
77
|
+
function getOpenPRs(opts) {
|
|
78
|
+
if (!_isFeatureEnabled()) return [];
|
|
79
|
+
var ttlMs = (opts && Number.isFinite(opts.ttlMs)) ? opts.ttlMs : _getTtlMs();
|
|
80
|
+
var age = _now() - _cacheAt;
|
|
81
|
+
if (_cache && age < ttlMs) return _cache;
|
|
82
|
+
// Single-flight: if a fetch is already in progress, return the prior cache
|
|
83
|
+
// (or []) rather than spawning a second gh call.
|
|
84
|
+
if (_inflight) return _cache || [];
|
|
85
|
+
_inflight = true;
|
|
86
|
+
try {
|
|
87
|
+
var fresh = _fetchOpenPRsSync();
|
|
88
|
+
_cache = fresh;
|
|
89
|
+
_cacheAt = _now();
|
|
90
|
+
return fresh;
|
|
91
|
+
} finally {
|
|
92
|
+
_inflight = false;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
// Compute overlap between this cycle's changed files and each open PR's files.
|
|
97
|
+
// Returns the strongest overlap by ratio. Ratio = |intersection| / |changedFiles|.
|
|
98
|
+
//
|
|
99
|
+
// Why we use changedFiles as the denominator (not the PR's files): we're asking
|
|
100
|
+
// "is this cycle re-doing work that the PR is already doing?" — the right
|
|
101
|
+
// question is "what fraction of MY changes are also in their PR?". If the daemon
|
|
102
|
+
// changes 4 files and 3 are also in PR #38's 11-file diff, that's 0.75 overlap
|
|
103
|
+
// from the daemon's POV (re-doing most of its own work) even though it's only
|
|
104
|
+
// 0.27 from the PR's POV.
|
|
105
|
+
function findOverlap(opts) {
|
|
106
|
+
if (!_isFeatureEnabled()) return { overlap: false, reason: 'feature_disabled' };
|
|
107
|
+
var changedFiles = (opts && Array.isArray(opts.changedFiles)) ? opts.changedFiles : [];
|
|
108
|
+
if (changedFiles.length === 0) return { overlap: false, reason: 'no_changed_files' };
|
|
109
|
+
var prs = (opts && Array.isArray(opts.prs)) ? opts.prs : getOpenPRs();
|
|
110
|
+
if (prs.length === 0) return { overlap: false, reason: 'no_open_prs' };
|
|
111
|
+
|
|
112
|
+
var changedSet = new Set(changedFiles.map(String));
|
|
113
|
+
var best = null;
|
|
114
|
+
for (var i = 0; i < prs.length; i++) {
|
|
115
|
+
var pr = prs[i];
|
|
116
|
+
if (!pr || !Array.isArray(pr.files) || pr.files.length === 0) continue;
|
|
117
|
+
var prSet = new Set(pr.files.map(String));
|
|
118
|
+
var shared = [];
|
|
119
|
+
changedSet.forEach(function (f) { if (prSet.has(f)) shared.push(f); });
|
|
120
|
+
if (shared.length === 0) continue;
|
|
121
|
+
var ratio = shared.length / changedFiles.length;
|
|
122
|
+
if (!best || ratio > best.overlapRatio) {
|
|
123
|
+
best = {
|
|
124
|
+
overlap: true,
|
|
125
|
+
prNumber: pr.number,
|
|
126
|
+
prTitle: pr.title,
|
|
127
|
+
headRefName: pr.headRefName,
|
|
128
|
+
overlapRatio: ratio,
|
|
129
|
+
sharedFiles: shared,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
return best || { overlap: false, reason: 'no_intersection' };
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
// Token-overlap version for the select-stage hint (no file paths available).
|
|
137
|
+
// Compares a Gene's signals_match against a PR's title + headRefName tokens.
|
|
138
|
+
// Returns the top-N matches with ratio >= threshold (default 0.5).
|
|
139
|
+
function findSignalHints(opts) {
|
|
140
|
+
if (!_isFeatureEnabled()) return [];
|
|
141
|
+
var signals = (opts && Array.isArray(opts.signals)) ? opts.signals : [];
|
|
142
|
+
if (signals.length === 0) return [];
|
|
143
|
+
var prs = (opts && Array.isArray(opts.prs)) ? opts.prs : getOpenPRs();
|
|
144
|
+
if (prs.length === 0) return [];
|
|
145
|
+
var threshold = (opts && Number.isFinite(opts.threshold)) ? opts.threshold : 0.5;
|
|
146
|
+
|
|
147
|
+
function tokenize(s) {
|
|
148
|
+
return String(s || '')
|
|
149
|
+
.toLowerCase()
|
|
150
|
+
.replace(/[^a-z0-9]+/g, ' ')
|
|
151
|
+
.split(/\s+/)
|
|
152
|
+
.filter(function (t) { return t.length >= 3; });
|
|
153
|
+
}
|
|
154
|
+
var sigTokens = new Set();
|
|
155
|
+
for (var i = 0; i < signals.length; i++) {
|
|
156
|
+
tokenize(signals[i]).forEach(function (t) { sigTokens.add(t); });
|
|
157
|
+
}
|
|
158
|
+
if (sigTokens.size === 0) return [];
|
|
159
|
+
|
|
160
|
+
var hits = [];
|
|
161
|
+
for (var j = 0; j < prs.length; j++) {
|
|
162
|
+
var pr = prs[j];
|
|
163
|
+
if (!pr) continue;
|
|
164
|
+
var prTokens = new Set();
|
|
165
|
+
tokenize(pr.title).forEach(function (t) { prTokens.add(t); });
|
|
166
|
+
tokenize(pr.headRefName).forEach(function (t) { prTokens.add(t); });
|
|
167
|
+
if (prTokens.size === 0) continue;
|
|
168
|
+
var common = 0;
|
|
169
|
+
sigTokens.forEach(function (t) { if (prTokens.has(t)) common++; });
|
|
170
|
+
var ratio = common / sigTokens.size;
|
|
171
|
+
if (ratio >= threshold) {
|
|
172
|
+
// Guard against pr.files being missing/null — getOpenPRs always
|
|
173
|
+
// populates it, but tests and external callers may pass partial
|
|
174
|
+
// PR objects. Without this guard pr.files.slice would throw a
|
|
175
|
+
// TypeError, the try/catch in select.js would swallow it, and we
|
|
176
|
+
// would silently lose ALL hits for that invocation rather than
|
|
177
|
+
// just the malformed PR. (Bugbot review on PR #50.)
|
|
178
|
+
var fileSample = Array.isArray(pr.files) ? pr.files.slice(0, 5) : [];
|
|
179
|
+
hits.push({
|
|
180
|
+
number: pr.number,
|
|
181
|
+
title: pr.title,
|
|
182
|
+
headRefName: pr.headRefName,
|
|
183
|
+
files: fileSample,
|
|
184
|
+
tokenOverlap: ratio,
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
hits.sort(function (a, b) { return b.tokenOverlap - a.tokenOverlap; });
|
|
189
|
+
return hits.slice(0, 3);
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
// Internal: reset cache for tests.
|
|
193
|
+
function _resetForTesting() {
|
|
194
|
+
_cache = null;
|
|
195
|
+
_cacheAt = 0;
|
|
196
|
+
_inflight = null;
|
|
197
|
+
_ghMissingWarned = false;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
module.exports = {
|
|
201
|
+
getOpenPRs,
|
|
202
|
+
findOverlap,
|
|
203
|
+
findSignalHints,
|
|
204
|
+
_resetForTesting,
|
|
205
|
+
};
|