@evomap/evolver 1.89.2 → 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.
Files changed (110) hide show
  1. package/.cursor/BUGBOT.md +182 -0
  2. package/.env.example +68 -0
  3. package/.git-commit-guard-token +1 -0
  4. package/.github/CODEOWNERS +63 -0
  5. package/.github/ISSUE_TEMPLATE/good_first_issue.md +23 -0
  6. package/.github/pull_request_template.md +45 -0
  7. package/.github/workflows/test.yml +75 -0
  8. package/CHANGELOG.md +1237 -0
  9. package/README.ja-JP.md +1 -3
  10. package/README.ko-KR.md +1 -3
  11. package/README.md +86 -530
  12. package/README.public.md +569 -0
  13. package/README.zh-CN.md +1 -3
  14. package/SECURITY.md +108 -0
  15. package/assets/gep/events.jsonl +3 -0
  16. package/assets/gep/genes.json +496 -0
  17. package/examples/atp-consumer-quickstart.md +100 -0
  18. package/examples/hello-world.md +38 -0
  19. package/index.js +44 -48
  20. package/package.json +6 -17
  21. package/proxy-package.json +39 -0
  22. package/public.manifest.json +143 -0
  23. package/src/adapters/hookAdapter.js +2 -0
  24. package/src/adapters/scripts/_lockPaths.js +74 -0
  25. package/src/adapters/scripts/evolver-session-start.js +19 -27
  26. package/src/config.js +23 -0
  27. package/src/evolve/guards.js +721 -1
  28. package/src/evolve/pipeline/collect.js +1283 -1
  29. package/src/evolve/pipeline/dispatch.js +421 -1
  30. package/src/evolve/pipeline/enrich.js +440 -1
  31. package/src/evolve/pipeline/hub.js +319 -1
  32. package/src/evolve/pipeline/select.js +274 -1
  33. package/src/evolve/pipeline/signals.js +206 -1
  34. package/src/evolve/utils.js +264 -1
  35. package/src/evolve.js +350 -1
  36. package/src/experiment/agentRunner.js +229 -0
  37. package/src/experiment/cli.js +159 -0
  38. package/src/experiment/comparison.js +233 -0
  39. package/src/experiment/metrics.js +75 -0
  40. package/src/forceUpdate.js +311 -30
  41. package/src/gep/a2aProtocol.js +4455 -1
  42. package/src/gep/antiAbuseTelemetry.js +233 -0
  43. package/src/gep/autoDistillConv.js +205 -1
  44. package/src/gep/autoDistillLlm.js +315 -1
  45. package/src/gep/candidateEval.js +92 -1
  46. package/src/gep/candidates.js +198 -1
  47. package/src/gep/contentHash.js +30 -1
  48. package/src/gep/conversationSniffer.js +266 -1
  49. package/src/gep/crypto.js +89 -1
  50. package/src/gep/curriculum.js +163 -1
  51. package/src/gep/deviceId.js +218 -1
  52. package/src/gep/envFingerprint.js +118 -1
  53. package/src/gep/epigenetics.js +31 -1
  54. package/src/gep/execBridge.js +711 -1
  55. package/src/gep/explore.js +289 -1
  56. package/src/gep/hash.js +15 -1
  57. package/src/gep/hubFetch.js +359 -1
  58. package/src/gep/hubReview.js +207 -1
  59. package/src/gep/hubSearch.js +526 -1
  60. package/src/gep/hubVerify.js +306 -1
  61. package/src/gep/learningSignals.js +89 -1
  62. package/src/gep/memoryGraph.js +1374 -1
  63. package/src/gep/memoryGraphAdapter.js +203 -1
  64. package/src/gep/mutation.js +203 -1
  65. package/src/gep/narrativeMemory.js +108 -1
  66. package/src/gep/openPRRegistry.js +205 -1
  67. package/src/gep/personality.js +423 -1
  68. package/src/gep/policyCheck.js +599 -1
  69. package/src/gep/prompt.js +836 -1
  70. package/src/gep/recallInject.js +409 -1
  71. package/src/gep/recallVerifier.js +318 -1
  72. package/src/gep/reflection.js +177 -1
  73. package/src/gep/sanitize.js +9 -0
  74. package/src/gep/selector.js +602 -1
  75. package/src/gep/skillDistiller.js +1294 -1
  76. package/src/gep/solidify.js +1699 -1
  77. package/src/gep/strategy.js +136 -1
  78. package/src/gep/tokenSavings.js +88 -1
  79. package/src/gep/validator/sandboxExecutor.js +29 -1
  80. package/src/gep/workspaceKeychain.js +174 -1
  81. package/src/proxy/extensions/traceControl.js +99 -1
  82. package/src/proxy/index.js +14 -5
  83. package/src/proxy/inject.js +52 -1
  84. package/src/proxy/lifecycle/manager.js +30 -0
  85. package/src/proxy/mailbox/store.js +2 -1
  86. package/src/proxy/router/messages_route.js +13 -2
  87. package/src/proxy/trace/extractor.js +646 -1
  88. package/src/proxy/trace/usage.js +105 -1
  89. package/CONTRIBUTING.md +0 -19
  90. package/assets/cover.png +0 -0
  91. package/assets/gep/genes.seed.json +0 -245
  92. package/scripts/a2a_export.js +0 -63
  93. package/scripts/a2a_ingest.js +0 -79
  94. package/scripts/a2a_promote.js +0 -118
  95. package/scripts/analyze_by_skill.js +0 -121
  96. package/scripts/build_binaries.js +0 -479
  97. package/scripts/check-changelog.js +0 -166
  98. package/scripts/extract_log.js +0 -85
  99. package/scripts/generate_history.js +0 -75
  100. package/scripts/gep_append_event.js +0 -96
  101. package/scripts/gep_personality_report.js +0 -234
  102. package/scripts/human_report.js +0 -147
  103. package/scripts/recall-verify-report.js +0 -234
  104. package/scripts/recover_loop.js +0 -61
  105. package/scripts/seed-merchants.js +0 -91
  106. package/scripts/suggest_version.js +0 -89
  107. package/scripts/validate-modules.js +0 -38
  108. package/scripts/validate-suite.js +0 -78
  109. package/skills/index.json +0 -14
  110. /package/{skills → bundled-skills}/_meta/SKILL.md +0 -0
@@ -1 +1,264 @@
1
- function _0xaa01(_0x3adde4,_0x196b53){_0x3adde4=_0x3adde4-(-0x1*0x1494+-0x3*0xb7b+0x3819);const _0x3abc5f=_0x2278();let _0x5494a0=_0x3abc5f[_0x3adde4];if(_0xaa01['\x76\x63\x68\x51\x56\x45']===undefined){var _0x24edf5=function(_0x165b7b){const _0xd3085f='\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 _0x431fc6='',_0x2f9374='',_0x792c78=_0x431fc6+_0x24edf5,_0x4285fa=(''+function(){return-0xf5+0x1225*-0x1+0x2*0x98d;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(0xc7a*0x2+0x13*-0x56+-0x1291);for(let _0xab445f=-0x19d1+-0x1ad+0x1b7e*0x1,_0x283350,_0x23c5a6,_0x2fde6e=-0x1023+-0x1*0x25ab+0x35ce;_0x23c5a6=_0x165b7b['\x63\x68\x61\x72\x41\x74'](_0x2fde6e++);~_0x23c5a6&&(_0x283350=_0xab445f%(-0x23e5+-0x1*-0x20b0+0x339)?_0x283350*(0x197e+-0xd8b+-0xbb3)+_0x23c5a6:_0x23c5a6,_0xab445f++%(-0x26ab+-0xd*-0x2c5+0x2ae))?_0x431fc6+=_0x4285fa||_0x792c78['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x2fde6e+(0x1f*-0x40+-0x1*0xe7d+-0x76d*-0x3))-(0x10ea*0x2+0x1b4c+-0x3d16)!==-0x5c*-0x59+-0x1ea6+-0x156?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0xe*0xb3+-0xa3b*-0x1+-0x8e*-0x1&_0x283350>>(-(0x7fe+-0x2*0x399+-0xca)*_0xab445f&0x1*0x2b9+-0x603+0x1*0x350)):_0xab445f:0x24de+-0x1d52+-0x1*0x78c){_0x23c5a6=_0xd3085f['\x69\x6e\x64\x65\x78\x4f\x66'](_0x23c5a6);}for(let _0x2394ea=0x26e4*0x1+0x1ba1+-0x4285,_0x60d274=_0x431fc6['\x6c\x65\x6e\x67\x74\x68'];_0x2394ea<_0x60d274;_0x2394ea++){_0x2f9374+='\x25'+('\x30\x30'+_0x431fc6['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x2394ea)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0x20e4+-0x1da3+0x3e97))['\x73\x6c\x69\x63\x65'](-(-0xf56+0x30*0x7e+-0x109*0x8));}return decodeURIComponent(_0x2f9374);};const _0x3fcbaf=function(_0x3c8c1c,_0x3e189e){let _0x734880=[],_0x171e3d=-0x1c95+0x1ce9+0x4*-0x15,_0x49c060,_0x4f028e='';_0x3c8c1c=_0x24edf5(_0x3c8c1c);let _0x5989af;for(_0x5989af=0x1*0x1987+-0x19b5+0x2e;_0x5989af<0xea1*-0x1+0x4c*0x6a+0x5*-0x32b;_0x5989af++){_0x734880[_0x5989af]=_0x5989af;}for(_0x5989af=-0xfd6+-0x193f+0x2915;_0x5989af<-0xf4e+-0x884+0x18d2;_0x5989af++){_0x171e3d=(_0x171e3d+_0x734880[_0x5989af]+_0x3e189e['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x5989af%_0x3e189e['\x6c\x65\x6e\x67\x74\x68']))%(-0x14*-0xf9+0x1e0a+-0x307e),_0x49c060=_0x734880[_0x5989af],_0x734880[_0x5989af]=_0x734880[_0x171e3d],_0x734880[_0x171e3d]=_0x49c060;}_0x5989af=-0x244c+0x1fd*-0xb+0x1*0x3a2b,_0x171e3d=0x19*-0x1+0x22ed+-0x22d4;for(let _0x3bf4f6=-0x1c59+-0x1*0xcbf+0x2918;_0x3bf4f6<_0x3c8c1c['\x6c\x65\x6e\x67\x74\x68'];_0x3bf4f6++){_0x5989af=(_0x5989af+(0x10c1+0x686*0x1+0x296*-0x9))%(-0x1*0x92f+-0x6c8+0x1*0x10f7),_0x171e3d=(_0x171e3d+_0x734880[_0x5989af])%(0x1123+0x3ef*0x7+-0x2bac),_0x49c060=_0x734880[_0x5989af],_0x734880[_0x5989af]=_0x734880[_0x171e3d],_0x734880[_0x171e3d]=_0x49c060,_0x4f028e+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x3c8c1c['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x3bf4f6)^_0x734880[(_0x734880[_0x5989af]+_0x734880[_0x171e3d])%(-0xdef+-0x1*-0x287+-0x4*-0x31a)]);}return _0x4f028e;};_0xaa01['\x51\x4d\x79\x75\x71\x50']=_0x3fcbaf,_0xaa01['\x69\x6d\x45\x6d\x67\x6d']={},_0xaa01['\x76\x63\x68\x51\x56\x45']=!![];}const _0x22a811=_0x3abc5f[-0x22e2+0xf5a+-0xfa*-0x14],_0x27cd86=_0x3adde4+_0x22a811,_0x50cf80=_0xaa01['\x69\x6d\x45\x6d\x67\x6d'][_0x27cd86];if(!_0x50cf80){if(_0xaa01['\x6a\x54\x6e\x7a\x56\x4c']===undefined){const _0x48154a=function(_0x3e0c88){this['\x77\x56\x4a\x6b\x45\x46']=_0x3e0c88,this['\x44\x56\x4c\x48\x50\x74']=[0x1c8+0x9e2+-0xba9,0x470+0x14ad*-0x1+-0x1*-0x103d,-0x194+0x1623*0x1+0x115*-0x13],this['\x5a\x7a\x73\x76\x61\x43']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x53\x75\x4d\x76\x50\x64']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x50\x42\x6d\x6f\x4a\x4c']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x48154a['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x4c\x73\x46\x6c\x47\x6b']=function(){const _0x41fb9c=new RegExp(this['\x53\x75\x4d\x76\x50\x64']+this['\x50\x42\x6d\x6f\x4a\x4c']),_0x5921d0=_0x41fb9c['\x74\x65\x73\x74'](this['\x5a\x7a\x73\x76\x61\x43']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x44\x56\x4c\x48\x50\x74'][-0x1*-0x1763+0x1ad9+0x7*-0x72d]:--this['\x44\x56\x4c\x48\x50\x74'][-0x1*-0x246f+-0x65*-0x21+-0x3174];return this['\x79\x4f\x44\x48\x64\x4f'](_0x5921d0);},_0x48154a['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x79\x4f\x44\x48\x64\x4f']=function(_0xbd6652){if(!Boolean(~_0xbd6652))return _0xbd6652;return this['\x4b\x47\x55\x69\x69\x4a'](this['\x77\x56\x4a\x6b\x45\x46']);},_0x48154a['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x4b\x47\x55\x69\x69\x4a']=function(_0x18f7ad){for(let _0x1ced9a=0x198e+0x217+-0x3*0x937,_0x157cb3=this['\x44\x56\x4c\x48\x50\x74']['\x6c\x65\x6e\x67\x74\x68'];_0x1ced9a<_0x157cb3;_0x1ced9a++){this['\x44\x56\x4c\x48\x50\x74']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x157cb3=this['\x44\x56\x4c\x48\x50\x74']['\x6c\x65\x6e\x67\x74\x68'];}return _0x18f7ad(this['\x44\x56\x4c\x48\x50\x74'][-0xfc+0x19e9+0x3*-0x84f]);},(''+function(){return-0x324+0x984+0x10*-0x66;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0x7f9+0x1*-0xaa2+-0x129c*-0x1)&&new _0x48154a(_0xaa01)['\x4c\x73\x46\x6c\x47\x6b'](),_0xaa01['\x6a\x54\x6e\x7a\x56\x4c']=!![];}_0x5494a0=_0xaa01['\x51\x4d\x79\x75\x71\x50'](_0x5494a0,_0x196b53),_0xaa01['\x69\x6d\x45\x6d\x67\x6d'][_0x27cd86]=_0x5494a0;}else _0x5494a0=_0x50cf80;return _0x5494a0;}const _0x1af1e4=_0xaa01;(function(_0x2616fa,_0x37eee3){const _0x397c24=_0xaa01,_0x2e08bf=_0x2616fa();while(!![]){try{const _0x2349bd=parseInt(_0x397c24(0x189,'\x5e\x41\x4b\x6e'))/(0x1e21+0x52*-0x2f+-0xf12)+-parseInt(_0x397c24(0x137,'\x55\x38\x74\x2a'))/(-0x17+0x423*-0x4+0x10a5*0x1)*(-parseInt(_0x397c24(0x13a,'\x5e\x61\x59\x26'))/(-0x7*-0xbe+0x6a4+0x1*-0xbd3))+parseInt(_0x397c24(0x199,'\x78\x4e\x44\x5a'))/(0x1f*0x10f+0x2*-0xc6e+-0x1*0x7f1)+-parseInt(_0x397c24(0x210,'\x37\x69\x4e\x24'))/(-0x19c*0xa+-0xed1*-0x1+-0x53*-0x4)*(parseInt(_0x397c24(0x18e,'\x7a\x79\x54\x6e'))/(0x17c*0x1+-0xfcc+-0xa*-0x16f))+parseInt(_0x397c24(0x1dc,'\x30\x48\x4c\x5e'))/(-0x2304+-0x1727+0x3a32)+-parseInt(_0x397c24(0x139,'\x76\x6b\x34\x29'))/(-0xaf1+-0x2*-0x9a9+-0x859)*(-parseInt(_0x397c24(0x216,'\x77\x35\x32\x33'))/(0x22ba+-0x383*0x3+-0x305*0x8))+-parseInt(_0x397c24(0x21f,'\x38\x43\x25\x29'))/(-0x1*-0xde3+-0x4a9*-0x5+-0x13d*0x1e)*(parseInt(_0x397c24(0x232,'\x6a\x48\x70\x6b'))/(0x3*-0xb7b+0x23*-0xa1+0x387f));if(_0x2349bd===_0x37eee3)break;else _0x2e08bf['push'](_0x2e08bf['shift']());}catch(_0x371c6b){_0x2e08bf['push'](_0x2e08bf['shift']());}}}(_0x2278,-0x1*-0x5f4f1+0x75f90+-0x9319*0x1));const _0x4292e1=(function(){const _0x2f7f10=_0xaa01,_0x5f3040={};_0x5f3040[_0x2f7f10(0x119,'\x35\x4b\x30\x43')]=_0x2f7f10(0x12e,'\x5e\x48\x51\x47'),_0x5f3040[_0x2f7f10(0x1cc,'\x56\x70\x40\x21')]='\x54\x76\x44\x67\x45';const _0x261b88=_0x5f3040;let _0x9e0c1d=!![];return function(_0xa3d3d2,_0x421721){const _0x5925b2=_0x2f7f10,_0x307041={};_0x307041[_0x5925b2(0x20d,'\x4d\x65\x68\x4e')]=function(_0x28f52c,_0x54914d){return _0x28f52c!==_0x54914d;},_0x307041[_0x5925b2(0x1b6,'\x7a\x79\x54\x6e')]=_0x261b88[_0x5925b2(0x192,'\x4d\x65\x68\x4e')],_0x307041[_0x5925b2(0x16c,'\x41\x41\x49\x6c')]=_0x261b88[_0x5925b2(0x1c1,'\x77\x35\x32\x33')];const _0x2cb852=_0x307041,_0xce7145=_0x9e0c1d?function(){const _0x36cc56=_0x5925b2;if(_0x421721){if(_0x2cb852[_0x36cc56(0x196,'\x5e\x48\x51\x47')](_0x2cb852[_0x36cc56(0x206,'\x55\x38\x74\x2a')],_0x2cb852[_0x36cc56(0x19e,'\x6a\x29\x73\x34')])){const _0x3f80e2=_0x421721[_0x36cc56(0x17c,'\x4d\x65\x68\x4e')](_0xa3d3d2,arguments);return _0x421721=null,_0x3f80e2;}else{const _0x3ed0f2=_0x5dcc18[_0x36cc56(0x201,'\x38\x43\x25\x29')](_0x26bbda,_0x5c0bf7[_0x36cc56(0x213,'\x63\x59\x45\x69')]);try{const _0xdb9123=_0x4804e7[_0x36cc56(0x1cf,'\x48\x2a\x63\x4e')](_0x3ed0f2);_0x59e294[_0x36cc56(0x130,'\x6d\x4b\x29\x78')]({'\x70\x61\x74\x68':_0x3ed0f2,'\x6e\x61\x6d\x65':_0x14e1d5[_0x36cc56(0x16d,'\x5e\x48\x51\x47')],'\x74\x69\x6d\x65':_0xdb9123[_0x36cc56(0x1d2,'\x41\x4a\x21\x31')][_0x36cc56(0x1e3,'\x77\x35\x32\x33')](),'\x73\x69\x7a\x65':_0xdb9123[_0x36cc56(0x20e,'\x78\x4e\x44\x5a')]});}catch{}}}}:function(){};return _0x9e0c1d=![],_0xce7145;};}()),_0x4bec3d=_0x4292e1(this,function(){const _0xaf2e19=_0xaa01;return _0x4bec3d['\x74\x6f\x53\x74\x72\x69\x6e\x67']()[_0xaf2e19(0x1d3,'\x6a\x29\x73\x34')](_0xaf2e19(0x1c6,'\x56\x70\x40\x21')+_0xaf2e19(0x136,'\x21\x4e\x7a\x38'))[_0xaf2e19(0x163,'\x38\x43\x25\x29')]()[_0xaf2e19(0x1dd,'\x68\x61\x4f\x77')+_0xaf2e19(0x1ec,'\x4d\x65\x68\x4e')](_0x4bec3d)[_0xaf2e19(0x1bf,'\x35\x28\x5a\x28')](_0xaf2e19(0x1af,'\x6a\x48\x70\x6b')+_0xaf2e19(0x1e2,'\x34\x79\x31\x76'));});_0x4bec3d();'use strict';const _0x4b9456=require('\x66\x73'),_0x39e808=require(_0x1af1e4(0x219,'\x7a\x79\x54\x6e')),_0x3e9078=require('\x6f\x73');function _0x21841e(_0x58d19c){const _0x237a8a=_0x1af1e4,_0x596c90={};_0x596c90[_0x237a8a(0x20f,'\x38\x43\x25\x29')]=function(_0x31be0a,_0x1af93d){return _0x31be0a+_0x1af93d;},_0x596c90[_0x237a8a(0x140,'\x26\x29\x30\x24')]=function(_0x28c41d,_0xd0cbe4){return _0x28c41d===_0xd0cbe4;},_0x596c90[_0x237a8a(0x142,'\x68\x61\x4f\x77')]=_0x237a8a(0x164,'\x67\x6b\x55\x6b'),_0x596c90[_0x237a8a(0x169,'\x49\x34\x5a\x70')]=function(_0x505a5c,_0x539463){return _0x505a5c!==_0x539463;},_0x596c90[_0x237a8a(0x21e,'\x6a\x29\x73\x34')]=_0x237a8a(0x230,'\x6f\x38\x51\x68'),_0x596c90[_0x237a8a(0x180,'\x6d\x4b\x29\x78')]=_0x237a8a(0x1bd,'\x55\x38\x74\x2a'),_0x596c90[_0x237a8a(0x15c,'\x6c\x36\x71\x4d')]=function(_0x108cb2,_0x5154d9){return _0x108cb2!=_0x5154d9;},_0x596c90['\x57\x54\x71\x67\x63']=_0x237a8a(0x117,'\x41\x4a\x21\x31'),_0x596c90[_0x237a8a(0x125,'\x73\x72\x35\x74')]=_0x237a8a(0x22a,'\x63\x66\x24\x71'),_0x596c90[_0x237a8a(0x1a6,'\x34\x79\x31\x76')]=_0x237a8a(0x18f,'\x5e\x41\x4b\x6e'),_0x596c90[_0x237a8a(0x1de,'\x41\x4a\x21\x31')]='\x70\x72\x6f\x6a\x65\x63\x74\x73',_0x596c90[_0x237a8a(0x14b,'\x37\x69\x4e\x24')]=function(_0x55a67e,_0x30ee6e){return _0x55a67e===_0x30ee6e;},_0x596c90[_0x237a8a(0x152,'\x4d\x24\x67\x70')]=_0x237a8a(0x126,'\x32\x4f\x48\x79'),_0x596c90['\x4b\x79\x6c\x71\x76']='\x41\x70\x70\x44\x61\x74\x61',_0x596c90[_0x237a8a(0x1ad,'\x49\x34\x5a\x70')]=_0x237a8a(0x182,'\x64\x63\x52\x4b'),_0x596c90[_0x237a8a(0x19f,'\x57\x4c\x33\x7a')]=_0x237a8a(0x183,'\x6a\x29\x73\x34'),_0x596c90[_0x237a8a(0x176,'\x4d\x65\x68\x4e')]=_0x237a8a(0x173,'\x5e\x48\x51\x47')+_0x237a8a(0x1df,'\x45\x6d\x46\x6f'),_0x596c90[_0x237a8a(0x14d,'\x35\x4b\x30\x43')]=_0x237a8a(0x1c5,'\x76\x6b\x34\x29'),_0x596c90[_0x237a8a(0x162,'\x31\x4a\x52\x26')]='\x55\x73\x65\x72',_0x596c90[_0x237a8a(0x128,'\x57\x54\x6d\x30')]=_0x237a8a(0x170,'\x6c\x6d\x67\x38')+_0x237a8a(0x131,'\x25\x26\x32\x51');const _0x5c5d35=_0x596c90,_0x497acc=_0x58d19c&&_0x5c5d35[_0x237a8a(0x1ae,'\x64\x63\x52\x4b')](_0x58d19c[_0x237a8a(0x200,'\x78\x4e\x44\x5a')+'\x61\x6e\x73\x63\x72\x69\x70\x74'+_0x237a8a(0x207,'\x64\x63\x52\x4b')+_0x237a8a(0x151,'\x39\x45\x69\x45')],null)?_0x58d19c[_0x237a8a(0x121,'\x56\x70\x40\x21')+_0x237a8a(0x20a,'\x5e\x48\x51\x47')+_0x237a8a(0x1f5,'\x59\x62\x5d\x77')+_0x237a8a(0x15e,'\x48\x2a\x63\x4e')]:process.env.EVOLVER_CURSOR_TRANSCRIPTS_DIR||'';if(_0x497acc)return[_0x497acc];const _0x39b7ac=_0x58d19c&&_0x58d19c[_0x237a8a(0x11f,'\x57\x4c\x33\x7a')]||_0x3e9078[_0x237a8a(0x114,'\x4d\x24\x67\x70')](),_0x25fdd5=[_0x39e808['\x6a\x6f\x69\x6e'](_0x39b7ac,_0x5c5d35[_0x237a8a(0x18a,'\x34\x79\x31\x76')],_0x5c5d35['\x42\x45\x48\x71\x7a']),_0x39e808[_0x237a8a(0x18b,'\x56\x70\x40\x21')](_0x39b7ac,_0x5c5d35['\x4b\x59\x4b\x67\x56'],_0x5c5d35[_0x237a8a(0x1c7,'\x5e\x61\x59\x26')])];if(_0x5c5d35['\x44\x4f\x56\x57\x58'](process[_0x237a8a(0x228,'\x31\x4a\x52\x26')],_0x5c5d35[_0x237a8a(0x17d,'\x57\x54\x6d\x30')])){const _0x4d785b=process.env.APPDATA||_0x39e808[_0x237a8a(0x146,'\x25\x26\x32\x51')](_0x39b7ac,_0x5c5d35[_0x237a8a(0x208,'\x67\x6b\x55\x6b')],_0x5c5d35[_0x237a8a(0x1da,'\x32\x4f\x48\x79')]);_0x25fdd5[_0x237a8a(0x154,'\x45\x6d\x46\x6f')](_0x39e808[_0x237a8a(0x118,'\x41\x4a\x21\x31')](_0x4d785b,_0x5c5d35[_0x237a8a(0x22f,'\x49\x34\x5a\x70')],_0x5c5d35[_0x237a8a(0x234,'\x44\x7a\x5e\x6c')]),_0x39e808[_0x237a8a(0x1f3,'\x5e\x61\x59\x26')](_0x4d785b,_0x5c5d35['\x62\x6e\x4b\x66\x46'],'\x70\x72\x6f\x6a\x65\x63\x74\x73'),_0x39e808[_0x237a8a(0x161,'\x57\x4c\x33\x7a')](_0x4d785b,_0x5c5d35[_0x237a8a(0x1f8,'\x28\x46\x56\x53')],_0x5c5d35[_0x237a8a(0x150,'\x48\x25\x75\x68')],_0x5c5d35[_0x237a8a(0x1e9,'\x41\x4a\x21\x31')]));}return _0x25fdd5[_0x237a8a(0x116,'\x56\x70\x40\x21')](_0x5846f3=>{const _0x3a4883=_0x237a8a,_0x3b4361={'\x67\x49\x58\x78\x52':function(_0x2e4477,_0x354fe8,_0x22e4db){return _0x2e4477(_0x354fe8,_0x22e4db);},'\x78\x6b\x73\x67\x41':function(_0x4795a1,_0x82ce89){const _0xc6cf91=_0xaa01;return _0x5c5d35[_0xc6cf91(0x215,'\x30\x48\x4c\x5e')](_0x4795a1,_0x82ce89);}};try{if(_0x5c5d35['\x46\x6f\x44\x72\x44'](_0x5c5d35[_0x3a4883(0x1f9,'\x31\x4a\x52\x26')],_0x3a4883(0x22c,'\x37\x69\x4e\x24')))_0x3b4361['\x67\x49\x58\x78\x52'](_0x415f49,_0x26e6fe[_0x3a4883(0x120,'\x45\x6d\x46\x6f')](_0x1c22d4,_0x33036a['\x6e\x61\x6d\x65']),_0x3b4361[_0x3a4883(0x1ef,'\x63\x66\x24\x71')](_0x285a21,-0x73f+-0x1031+0x11*0x161));else return _0x4b9456[_0x3a4883(0x172,'\x77\x35\x32\x33')+'\x6e\x63'](_0x5846f3);}catch{if(_0x5c5d35[_0x3a4883(0x138,'\x59\x6d\x44\x71')](_0x5c5d35['\x77\x4f\x6e\x71\x71'],_0x5c5d35[_0x3a4883(0x1c0,'\x48\x2a\x63\x4e')]))return![];else{const _0x476ff9={};_0x476ff9[_0x3a4883(0x229,'\x39\x45\x69\x45')+_0x3a4883(0x1b2,'\x39\x45\x69\x45')]=!![],_0x5ba1a1=_0x1d62cc[_0x3a4883(0x1e8,'\x6d\x4b\x29\x78')+_0x3a4883(0x15f,'\x56\x70\x40\x21')](_0x3b235c,_0x476ff9);}}});}function _0x14dd55(_0x2b51b2,_0x2e48f6){const _0x2d9372=_0x1af1e4,_0xc3295b={'\x6f\x57\x44\x4e\x78':function(_0x4da4c6,_0x2e54c0){return _0x4da4c6>_0x2e54c0;},'\x67\x54\x44\x7a\x61':function(_0x57ef43,_0x19a8b6){return _0x57ef43===_0x19a8b6;},'\x69\x58\x51\x53\x46':_0x2d9372(0x1f0,'\x30\x48\x4c\x5e'),'\x75\x50\x6f\x51\x43':_0x2d9372(0x13e,'\x39\x45\x69\x45'),'\x55\x4f\x6d\x74\x7a':_0x2d9372(0x1d6,'\x67\x6b\x55\x6b'),'\x71\x4f\x49\x62\x4a':function(_0x4316d6,_0x39387b){return _0x4316d6!==_0x39387b;},'\x41\x56\x62\x47\x6a':_0x2d9372(0x175,'\x5e\x48\x51\x47')+'\x73','\x7a\x55\x65\x55\x6d':function(_0x7828c1,_0x37fc36,_0x950d31){return _0x7828c1(_0x37fc36,_0x950d31);},'\x6f\x4b\x5a\x48\x70':function(_0x3320d2,_0x592694){return _0x3320d2+_0x592694;}},_0x4a266d=[];function _0xde0e6f(_0x44c300,_0x3029df){const _0x1a6bec=_0x2d9372,_0x27718a={'\x43\x78\x5a\x44\x41':function(_0x4f33b3,_0x1aa907){return _0x4f33b3(_0x1aa907);}};if(_0xc3295b[_0x1a6bec(0x1fe,'\x63\x59\x45\x69')](_0x3029df,_0x2e48f6))return;let _0x59a276;try{const _0x262b7e={};_0x262b7e[_0x1a6bec(0x229,'\x39\x45\x69\x45')+_0x1a6bec(0x16f,'\x56\x70\x40\x21')]=!![],_0x59a276=_0x4b9456[_0x1a6bec(0x1a1,'\x5e\x48\x51\x47')+_0x1a6bec(0x1e6,'\x35\x4b\x30\x43')](_0x44c300,_0x262b7e);}catch{if(_0xc3295b['\x67\x54\x44\x7a\x61'](_0xc3295b[_0x1a6bec(0x12a,'\x59\x62\x5d\x77')],_0xc3295b[_0x1a6bec(0x21d,'\x5e\x41\x4b\x6e')]))return;else return _0x27718a['\x43\x78\x5a\x44\x41'](_0x4ee0d3,_0x323db2||'')['\x72\x65\x70\x6c\x61\x63\x65'](/[\\/]+$/,'');}for(const _0x8a090b of _0x59a276){if(_0xc3295b[_0x1a6bec(0x17f,'\x5e\x41\x4b\x6e')](_0xc3295b[_0x1a6bec(0x198,'\x25\x59\x45\x36')],_0xc3295b[_0x1a6bec(0x124,'\x6c\x36\x71\x4d')])){if(_0x8a090b['\x69\x73\x46\x69\x6c\x65']()&&(_0x8a090b[_0x1a6bec(0x16b,'\x41\x4a\x21\x31')][_0x1a6bec(0x1b1,'\x5e\x48\x51\x47')](_0xc3295b[_0x1a6bec(0x135,'\x44\x7a\x5e\x6c')])||_0x8a090b['\x6e\x61\x6d\x65'][_0x1a6bec(0x178,'\x57\x54\x6d\x30')](_0x1a6bec(0x179,'\x73\x72\x35\x74')))){const _0x1dee7e=_0x39e808[_0x1a6bec(0x123,'\x48\x2a\x63\x4e')](_0x44c300,_0x8a090b['\x6e\x61\x6d\x65']);try{const _0x297f93=_0x4b9456[_0x1a6bec(0x15b,'\x64\x63\x52\x4b')](_0x1dee7e);_0x4a266d[_0x1a6bec(0x130,'\x6d\x4b\x29\x78')]({'\x70\x61\x74\x68':_0x1dee7e,'\x6e\x61\x6d\x65':_0x8a090b[_0x1a6bec(0x209,'\x76\x6b\x34\x29')],'\x74\x69\x6d\x65':_0x297f93[_0x1a6bec(0x19a,'\x56\x70\x40\x21')][_0x1a6bec(0x144,'\x4d\x65\x68\x4e')](),'\x73\x69\x7a\x65':_0x297f93[_0x1a6bec(0x18c,'\x38\x43\x25\x29')]});}catch{}}else _0x8a090b[_0x1a6bec(0x204,'\x48\x2a\x63\x4e')+_0x1a6bec(0x1d4,'\x48\x2a\x63\x4e')]()&&_0xc3295b[_0x1a6bec(0x157,'\x4d\x24\x67\x70')](_0x8a090b['\x6e\x61\x6d\x65'],_0xc3295b[_0x1a6bec(0x159,'\x25\x26\x32\x51')])&&_0xc3295b[_0x1a6bec(0x1c2,'\x35\x28\x5a\x28')](_0x8a090b[_0x1a6bec(0x1aa,'\x77\x35\x32\x33')],_0x1a6bec(0x190,'\x77\x35\x32\x33')+_0x1a6bec(0x1fb,'\x68\x61\x4f\x77'))&&_0xc3295b[_0x1a6bec(0x133,'\x6f\x38\x51\x68')](_0xde0e6f,_0x39e808[_0x1a6bec(0x1ac,'\x6a\x29\x73\x34')](_0x44c300,_0x8a090b[_0x1a6bec(0x115,'\x5e\x61\x59\x26')]),_0xc3295b[_0x1a6bec(0x13b,'\x67\x6b\x55\x6b')](_0x3029df,-0x1d9*0x15+-0x47*-0x42+-0x29*-0x80));}else return;}}return _0xde0e6f(_0x2b51b2,0xa0a*0x2+0x166f+-0x2a83),_0x4a266d;}function _0x373003(_0x156ebc,_0x3c6693){const _0x11146a=_0x1af1e4,_0x2d5df9={};_0x2d5df9[_0x11146a(0x168,'\x5e\x48\x51\x47')]=function(_0x7e0fc2,_0x319bc4){return _0x7e0fc2===_0x319bc4;},_0x2d5df9[_0x11146a(0x194,'\x63\x66\x24\x71')]=function(_0x153002,_0x1190e6){return _0x153002!==_0x1190e6;},_0x2d5df9[_0x11146a(0x191,'\x31\x4a\x52\x26')]=_0x11146a(0x186,'\x25\x59\x45\x36');const _0x36592d=_0x2d5df9;if(_0x36592d[_0x11146a(0x181,'\x73\x72\x35\x74')](_0x3c6693,undefined))_0x3c6693=0x16b3+0xfc2+-0x675;try{if(_0x36592d[_0x11146a(0x1fc,'\x4d\x65\x68\x4e')](_0x36592d[_0x11146a(0x21a,'\x57\x4c\x33\x7a')],_0x36592d[_0x11146a(0x122,'\x6a\x29\x73\x34')]))return![];else{if(!_0x4b9456[_0x11146a(0x1f7,'\x21\x4e\x7a\x38')+'\x6e\x63'](_0x156ebc))return'';const _0x130c92=_0x4b9456[_0x11146a(0x149,'\x76\x6b\x34\x29')](_0x156ebc,'\x72'),_0x1e8f84=Buffer['\x61\x6c\x6c\x6f\x63'](_0x3c6693),_0xc1f58e=_0x4b9456[_0x11146a(0x233,'\x41\x41\x49\x6c')](_0x130c92,_0x1e8f84,-0x112*0x7+-0x35*0x3d+0x6b5*0x3,_0x3c6693,-0x6*0x3ad+0xd3*0x1d+0x1d9*-0x1);return _0x4b9456[_0x11146a(0x1f1,'\x5e\x48\x51\x47')+'\x63'](_0x130c92),_0x1e8f84['\x73\x6c\x69\x63\x65'](-0x24ed+0x1f*-0xd7+0x3ef6,_0xc1f58e)[_0x11146a(0x217,'\x21\x4e\x7a\x38')](_0x11146a(0x227,'\x5e\x48\x51\x47'));}}catch(_0x5b5da7){return'';}}function _0x2278(){const _0x33b32c=['\x62\x38\x6f\x6c\x57\x36\x52\x63\x53\x6d\x6f\x30','\x61\x4c\x74\x64\x51\x31\x6d','\x44\x77\x37\x64\x4d\x62\x4b','\x6e\x53\x6f\x37\x57\x35\x42\x64\x54\x47\x71','\x62\x38\x6f\x6f\x78\x61\x56\x64\x4b\x72\x39\x4e\x57\x36\x64\x64\x4e\x43\x6b\x77\x57\x35\x2f\x63\x4b\x71','\x57\x37\x76\x2f\x79\x38\x6b\x77\x66\x77\x76\x4c','\x57\x36\x2f\x63\x55\x64\x56\x63\x53\x4b\x4a\x64\x4e\x30\x52\x63\x48\x57','\x57\x35\x54\x56\x57\x36\x64\x64\x55\x6d\x6f\x56','\x57\x51\x50\x55\x57\x37\x6c\x64\x47\x4a\x43','\x57\x4f\x2f\x63\x4c\x6d\x6f\x56\x6e\x43\x6f\x68','\x75\x53\x6f\x4a\x57\x52\x7a\x36\x73\x47','\x57\x37\x76\x46\x57\x51\x42\x63\x47\x38\x6f\x44\x57\x36\x71','\x6f\x6d\x6b\x57\x57\x50\x4e\x63\x52\x30\x69','\x7a\x77\x4a\x64\x4a\x61\x2f\x64\x4e\x62\x42\x63\x50\x31\x6d','\x57\x51\x53\x4d\x57\x50\x4e\x64\x48\x6d\x6f\x64','\x61\x6d\x6f\x79\x70\x53\x6f\x6f\x42\x68\x42\x64\x50\x76\x52\x64\x51\x53\x6f\x4e\x57\x4f\x76\x72\x57\x50\x53','\x62\x75\x2f\x64\x51\x31\x61\x49','\x46\x43\x6b\x34\x45\x53\x6b\x4c\x69\x61','\x57\x52\x46\x63\x49\x38\x6b\x7a\x6b\x4e\x31\x34','\x63\x4d\x64\x64\x50\x53\x6b\x39\x46\x61','\x57\x35\x4a\x64\x4f\x38\x6b\x31\x75\x4a\x30','\x57\x50\x70\x63\x55\x38\x6f\x61\x68\x6d\x6f\x5a','\x77\x6d\x6b\x78\x61\x61','\x63\x38\x6b\x61\x57\x50\x4e\x63\x4e\x30\x4b\x63\x57\x35\x56\x64\x4a\x61','\x57\x52\x75\x43\x57\x37\x6d','\x43\x43\x6f\x50\x44\x4d\x35\x76\x57\x36\x76\x68\x64\x61','\x67\x72\x50\x42\x78\x43\x6f\x31\x57\x51\x64\x63\x4f\x71','\x66\x53\x6b\x4c\x68\x71\x58\x4c\x74\x72\x4e\x63\x47\x6d\x6f\x74\x57\x34\x56\x63\x4f\x43\x6b\x30','\x67\x38\x6f\x67\x57\x35\x64\x63\x53\x6d\x6f\x62','\x68\x48\x54\x74\x57\x4f\x64\x64\x55\x75\x42\x63\x55\x61','\x57\x35\x31\x6d\x57\x52\x31\x33\x57\x36\x38','\x57\x36\x62\x37\x57\x36\x4e\x63\x48\x6d\x6f\x46','\x57\x36\x2f\x63\x54\x4a\x6c\x63\x53\x47','\x45\x53\x6b\x67\x57\x51\x65\x34\x42\x47','\x57\x35\x68\x64\x51\x53\x6b\x6b\x76\x71','\x42\x53\x6b\x57\x57\x51\x56\x64\x50\x66\x30','\x57\x35\x64\x63\x53\x38\x6b\x43\x57\x4f\x71\x61','\x64\x43\x6f\x39\x65\x49\x6c\x63\x48\x77\x33\x63\x49\x49\x30','\x63\x78\x4a\x64\x4c\x53\x6b\x2f\x7a\x4d\x6c\x64\x48\x75\x6d','\x68\x6d\x6b\x6c\x57\x50\x5a\x63\x49\x68\x4f\x63\x57\x35\x33\x64\x54\x57','\x73\x38\x6b\x6a\x57\x4f\x43\x72\x74\x57','\x64\x33\x42\x63\x4c\x48\x57\x6f\x6c\x4e\x44\x6a','\x57\x52\x68\x63\x52\x4e\x64\x63\x51\x62\x30','\x44\x6d\x6f\x62\x57\x50\x76\x50\x7a\x43\x6f\x70\x57\x51\x34\x45','\x76\x6d\x6b\x31\x66\x33\x78\x63\x53\x61','\x57\x36\x4a\x64\x4a\x43\x6f\x6c\x57\x34\x57\x78\x45\x38\x6b\x71','\x75\x53\x6f\x43\x71\x66\x4b\x61','\x73\x43\x6b\x2b\x75\x78\x56\x64\x51\x71','\x57\x50\x4c\x34\x57\x35\x56\x64\x4a\x38\x6f\x66','\x64\x6d\x6f\x2f\x57\x35\x4e\x64\x50\x4a\x2f\x64\x51\x47\x43\x76','\x78\x6d\x6b\x6a\x79\x53\x6b\x7a\x6f\x4a\x43','\x66\x4d\x56\x63\x51\x43\x6b\x35\x57\x4f\x43','\x57\x52\x52\x63\x48\x53\x6f\x61','\x57\x51\x78\x64\x4f\x59\x33\x63\x52\x53\x6b\x55\x68\x47','\x46\x65\x48\x30\x57\x37\x72\x54','\x57\x35\x4e\x63\x4b\x64\x37\x63\x56\x30\x30','\x57\x51\x46\x64\x49\x71\x78\x63\x56\x53\x6b\x68','\x6d\x38\x6f\x4f\x57\x37\x38','\x63\x53\x6f\x6a\x57\x34\x66\x6d\x46\x6d\x6b\x73\x57\x51\x42\x64\x52\x61','\x42\x53\x6b\x7a\x71\x53\x6f\x6a\x44\x53\x6f\x2f','\x71\x62\x70\x63\x51\x48\x6e\x53\x57\x4f\x50\x2f\x57\x37\x47','\x74\x31\x74\x64\x56\x72\x6d\x43','\x64\x6d\x6f\x6f\x57\x34\x50\x78\x46\x57','\x6e\x64\x46\x63\x4b\x65\x4e\x63\x4e\x76\x64\x63\x4f\x77\x4e\x64\x52\x6d\x6b\x50\x42\x43\x6b\x58','\x69\x6d\x6f\x2b\x57\x36\x6c\x63\x55\x38\x6f\x34\x45\x38\x6f\x48','\x57\x52\x30\x66\x57\x37\x38\x39\x61\x75\x31\x73\x57\x35\x4b','\x6d\x68\x5a\x64\x4f\x31\x75\x44','\x57\x35\x76\x69\x57\x36\x78\x64\x4d\x6d\x6f\x71\x6c\x58\x79','\x66\x43\x6b\x69\x57\x34\x43\x30\x57\x35\x69','\x7a\x67\x58\x67\x57\x36\x72\x42\x45\x4a\x38\x4d','\x41\x6d\x6b\x2f\x57\x4f\x61\x53\x77\x47','\x57\x34\x6a\x6b\x57\x52\x7a\x4a\x57\x36\x75','\x57\x52\x33\x64\x53\x43\x6f\x75\x57\x37\x71\x7a','\x57\x34\x4a\x64\x4f\x6d\x6b\x63\x73\x74\x6c\x63\x49\x47','\x45\x67\x50\x45','\x57\x51\x31\x31\x76\x38\x6f\x4f\x57\x50\x79','\x74\x38\x6b\x4d\x57\x35\x30\x50\x57\x34\x38\x36','\x57\x36\x6c\x63\x4f\x64\x53','\x76\x38\x6b\x57\x73\x4d\x64\x64\x4a\x59\x46\x64\x48\x61','\x75\x43\x6b\x5a\x57\x50\x79\x38\x73\x47','\x57\x37\x4c\x33\x57\x4f\x66\x4c\x57\x37\x61','\x57\x34\x79\x47\x57\x4f\x42\x63\x49\x53\x6b\x33\x67\x53\x6f\x73\x57\x35\x6a\x2b\x44\x53\x6b\x45\x57\x36\x57\x30','\x57\x34\x57\x48\x57\x4f\x4a\x63\x4a\x6d\x6b\x33\x66\x53\x6f\x78\x57\x37\x4c\x53\x74\x53\x6b\x6f\x57\x37\x38\x31','\x68\x30\x33\x63\x4c\x5a\x47\x76\x6c\x4d\x4c\x7a','\x57\x52\x4e\x64\x52\x43\x6f\x42\x57\x37\x6d\x35','\x57\x51\x5a\x63\x51\x43\x6b\x76','\x62\x38\x6f\x71\x57\x35\x64\x63\x56\x6d\x6f\x4d','\x70\x49\x6a\x4e\x57\x51\x42\x64\x48\x78\x78\x64\x51\x57','\x45\x38\x6b\x32\x57\x52\x64\x64\x53\x57','\x57\x36\x42\x63\x53\x49\x56\x63\x47\x33\x37\x64\x4e\x30\x61','\x42\x53\x6b\x65\x57\x52\x4b\x55\x45\x61','\x57\x51\x5a\x63\x55\x43\x6b\x4b\x61\x68\x38','\x45\x38\x6f\x5a\x44\x61','\x57\x4f\x6d\x56\x57\x36\x4e\x64\x4b\x78\x31\x35','\x69\x76\x6e\x4c\x6d\x4a\x79\x43\x57\x34\x78\x63\x4c\x57','\x57\x50\x42\x64\x49\x43\x6f\x46\x57\x34\x4b\x5a','\x57\x36\x43\x39\x57\x4f\x4e\x63\x56\x61','\x57\x4f\x44\x44\x46\x53\x6f\x61\x57\x52\x30\x57\x57\x36\x43','\x57\x4f\x35\x4d\x57\x35\x65','\x69\x76\x44\x51\x6a\x74\x65\x68\x57\x35\x37\x63\x54\x61','\x57\x50\x7a\x4b\x57\x35\x71','\x46\x53\x6f\x70\x57\x4f\x44\x51\x79\x47','\x57\x50\x35\x46\x57\x37\x37\x64\x56\x6d\x6f\x31','\x67\x53\x6b\x6a\x57\x50\x46\x63\x49\x65\x47\x34\x57\x35\x64\x64\x53\x71','\x63\x66\x64\x63\x4d\x63\x75\x73\x70\x32\x35\x74','\x74\x66\x70\x64\x53\x48\x43','\x57\x37\x76\x77\x57\x34\x56\x63\x47\x53\x6f\x79\x57\x35\x6d','\x64\x43\x6f\x45\x57\x35\x68\x64\x53\x63\x70\x64\x50\x71\x57\x65','\x74\x38\x6b\x4e\x57\x51\x6d\x73\x78\x57','\x57\x36\x6e\x41\x57\x35\x64\x63\x4d\x6d\x6f\x63\x57\x34\x46\x64\x4d\x58\x34','\x57\x34\x30\x76\x57\x52\x4e\x63\x4f\x38\x6b\x4f','\x57\x34\x76\x5a\x57\x37\x64\x64\x55\x38\x6f\x4c','\x57\x52\x6c\x63\x4a\x4c\x74\x63\x48\x61\x4c\x5a\x57\x50\x78\x63\x4e\x57','\x63\x75\x37\x63\x4e\x64\x47','\x57\x51\x35\x6f\x57\x36\x68\x64\x4e\x47\x4b','\x57\x51\x4a\x63\x48\x66\x70\x63\x55\x73\x53','\x65\x43\x6f\x58\x57\x35\x7a\x32\x44\x47','\x78\x38\x6f\x2b\x64\x62\x78\x63\x4d\x61','\x75\x6d\x6b\x45\x45\x53\x6b\x70\x6e\x4a\x68\x63\x47\x31\x69','\x42\x67\x4a\x64\x49\x58\x69','\x57\x34\x6a\x67\x57\x52\x54\x31\x57\x36\x61','\x65\x4e\x68\x64\x47\x38\x6b\x30','\x46\x4d\x54\x4a\x57\x37\x4c\x36\x7a\x4a\x69\x58','\x68\x43\x6f\x72\x57\x37\x79','\x67\x78\x68\x63\x4b\x53\x6b\x65\x57\x52\x53','\x57\x37\x68\x63\x55\x38\x6b\x37\x57\x4f\x38\x69\x71\x66\x69\x59','\x6b\x53\x6b\x31\x57\x34\x69\x33\x57\x35\x43','\x71\x38\x6b\x6e\x78\x43\x6f\x46','\x67\x6d\x6b\x6c\x57\x4f\x56\x63\x4d\x66\x38\x63\x57\x35\x4e\x64\x51\x57','\x45\x6d\x6b\x6a\x57\x4f\x4e\x64\x55\x65\x4f','\x7a\x43\x6f\x74\x57\x50\x61','\x57\x52\x54\x43\x57\x34\x6c\x64\x56\x71\x38','\x71\x6d\x6b\x63\x43\x53\x6b\x7a','\x71\x4e\x64\x64\x54\x73\x42\x64\x4a\x47','\x57\x34\x75\x6d\x78\x38\x6f\x30\x57\x4f\x53\x64\x57\x34\x37\x63\x48\x57','\x43\x43\x6b\x76\x57\x51\x6d\x39\x42\x61','\x72\x53\x6b\x6b\x64\x30\x5a\x63\x4b\x66\x48\x64\x57\x35\x61','\x65\x6d\x6f\x68\x57\x37\x39\x44','\x62\x77\x78\x63\x51\x71\x30\x7a','\x57\x52\x66\x4b\x57\x36\x46\x64\x4f\x53\x6f\x4b','\x57\x52\x64\x64\x4f\x32\x56\x64\x50\x63\x64\x63\x49\x48\x64\x64\x4c\x38\x6b\x74\x63\x43\x6b\x6e\x57\x51\x4a\x64\x48\x4d\x75','\x57\x37\x6a\x6e\x57\x36\x52\x63\x4e\x38\x6f\x65\x57\x35\x33\x64\x50\x47\x61','\x7a\x78\x31\x67\x57\x37\x58\x34\x79\x49\x75\x54','\x72\x43\x6b\x46\x67\x4c\x79','\x57\x52\x37\x63\x50\x43\x6f\x47\x69\x6d\x6f\x74','\x57\x51\x33\x63\x4e\x53\x6f\x33\x62\x53\x6f\x53\x63\x43\x6b\x61\x57\x34\x4f','\x61\x74\x62\x54\x71\x43\x6f\x56','\x57\x52\x6a\x65\x78\x53\x6b\x4b\x6a\x47','\x57\x34\x5a\x64\x49\x53\x6b\x6e\x73\x49\x61','\x6e\x5a\x78\x63\x4d\x30\x5a\x64\x53\x63\x52\x63\x4e\x4b\x6c\x64\x51\x43\x6b\x6f','\x57\x35\x66\x45\x57\x35\x46\x64\x4d\x43\x6f\x64\x6b\x71\x4f','\x57\x51\x54\x39\x44\x53\x6b\x42\x64\x32\x62\x4b','\x79\x68\x6c\x63\x4c\x43\x6f\x69','\x6b\x53\x6b\x43\x57\x50\x42\x63\x4d\x61','\x64\x43\x6f\x70\x57\x36\x48\x44','\x63\x43\x6b\x34\x61\x62\x7a\x36\x75\x4b\x46\x64\x50\x71','\x6b\x43\x6b\x2f\x57\x36\x71\x53\x57\x34\x71','\x64\x6d\x6b\x72\x57\x50\x37\x64\x47\x57','\x57\x34\x58\x78\x57\x34\x78\x64\x4e\x53\x6f\x65\x69\x72\x33\x64\x4b\x71','\x41\x6d\x6b\x7a\x57\x4f\x6d\x43\x45\x53\x6b\x76\x67\x6d\x6b\x67','\x44\x43\x6f\x62\x57\x4f\x44\x2b\x73\x53\x6f\x6a\x57\x51\x57\x69','\x76\x77\x42\x63\x47\x53\x6f\x37\x57\x4f\x43','\x57\x50\x4c\x5a\x71\x53\x6f\x52\x57\x51\x47','\x46\x6d\x6b\x46\x57\x50\x53\x79\x77\x43\x6b\x46\x61\x6d\x6b\x33','\x41\x66\x43\x49\x43\x4d\x61','\x75\x38\x6b\x56\x57\x4f\x68\x64\x55\x75\x71','\x44\x38\x6f\x42\x74\x32\x61\x57','\x6e\x5a\x70\x63\x4c\x4b\x2f\x63\x4e\x31\x5a\x64\x50\x57\x74\x64\x51\x38\x6b\x33\x43\x38\x6b\x6d\x6e\x47\x57','\x65\x43\x6f\x4b\x63\x5a\x33\x63\x4d\x68\x33\x64\x51\x4b\x30\x58\x68\x4d\x53\x66','\x41\x75\x69\x56\x46\x30\x43\x51\x57\x50\x78\x64\x4f\x61','\x78\x38\x6f\x71\x6a\x71\x37\x63\x4d\x47','\x57\x37\x4f\x31\x57\x4f\x71','\x7a\x78\x4a\x63\x4a\x6d\x6f\x6d\x57\x51\x4e\x64\x54\x6d\x6b\x66','\x73\x66\x33\x64\x54\x48\x57','\x64\x4c\x6c\x64\x52\x4b\x4b\x49\x57\x35\x65','\x57\x37\x37\x64\x50\x53\x6f\x73\x57\x37\x30\x7a\x73\x47','\x57\x52\x52\x64\x51\x53\x6f\x75\x57\x37\x43','\x75\x53\x6f\x36\x72\x4e\x66\x72','\x66\x4d\x4e\x64\x49\x53\x6b\x39\x77\x4e\x52\x64\x4a\x57','\x57\x37\x68\x63\x54\x49\x33\x63\x50\x68\x69','\x45\x53\x6f\x71\x6f\x48\x68\x63\x56\x47','\x57\x50\x6d\x4d\x57\x36\x46\x64\x4b\x68\x54\x63\x57\x4f\x4a\x64\x4d\x47','\x43\x38\x6f\x50\x77\x75\x62\x63','\x57\x52\x68\x63\x4e\x53\x6f\x6a\x66\x38\x6f\x36\x63\x43\x6b\x43','\x57\x51\x4e\x63\x4f\x53\x6b\x7a\x6b\x61','\x63\x30\x37\x64\x53\x65\x34\x4f\x57\x35\x65\x61\x57\x51\x6d','\x57\x35\x5a\x64\x4b\x43\x6b\x4e\x41\x72\x57','\x46\x78\x44\x6f\x57\x37\x34','\x57\x4f\x75\x41\x57\x36\x46\x64\x53\x4c\x30','\x6f\x73\x7a\x52\x57\x50\x37\x64\x53\x71','\x57\x37\x4c\x6c\x57\x51\x65\x4c\x57\x52\x79','\x7a\x6d\x6b\x55\x57\x51\x52\x64\x50\x53\x6b\x48\x69\x38\x6f\x6f\x43\x64\x52\x63\x4e\x65\x54\x4c','\x69\x65\x74\x64\x4b\x43\x6b\x62\x45\x47','\x64\x6d\x6f\x2f\x57\x35\x4e\x64\x50\x4a\x37\x64\x54\x47\x4f\x74','\x66\x38\x6f\x63\x57\x36\x4e\x64\x4b\x73\x4f','\x57\x36\x76\x30\x57\x37\x46\x64\x55\x38\x6f\x48','\x57\x52\x74\x63\x48\x67\x42\x63\x4e\x61\x54\x37\x57\x4f\x2f\x63\x4b\x61','\x41\x53\x6f\x62\x57\x50\x50\x51\x76\x38\x6f\x6f','\x67\x6d\x6b\x73\x57\x52\x2f\x63\x53\x75\x79','\x67\x4c\x37\x64\x53\x76\x69\x52\x57\x35\x75\x58','\x69\x30\x6e\x33\x70\x47','\x57\x4f\x62\x47\x57\x37\x71\x66\x6d\x64\x4c\x5a\x74\x71','\x66\x77\x74\x63\x54\x4a\x4f\x4d','\x77\x38\x6f\x66\x74\x77\x30\x38','\x6b\x30\x70\x63\x48\x43\x6b\x53','\x79\x38\x6f\x33\x6c\x48\x64\x63\x50\x71','\x57\x51\x30\x6c\x57\x50\x6c\x64\x4a\x57','\x74\x57\x2f\x64\x4e\x53\x6f\x37\x57\x35\x53\x64\x57\x4f\x6c\x63\x4e\x74\x5a\x63\x51\x38\x6b\x78\x79\x47','\x68\x4a\x6a\x30\x79\x43\x6f\x32','\x66\x43\x6b\x4b\x72\x53\x6f\x56\x43\x53\x6f\x65\x66\x61','\x65\x66\x64\x64\x56\x49\x30\x46\x57\x51\x62\x48','\x64\x53\x6b\x68\x57\x37\x71\x6f\x57\x35\x65','\x57\x4f\x44\x69\x72\x43\x6f\x6a\x57\x52\x34\x2b\x57\x36\x33\x63\x4c\x61','\x72\x53\x6f\x7a\x6f\x47\x4a\x63\x53\x6d\x6f\x6d\x72\x71','\x46\x53\x6b\x58\x57\x50\x4f\x65\x44\x57','\x57\x51\x37\x63\x51\x4b\x4a\x63\x47\x61\x34','\x57\x52\x6c\x63\x4e\x53\x6f\x6a\x66\x72\x30','\x57\x34\x79\x6f\x70\x53\x6b\x43\x57\x4f\x4f\x46\x57\x34\x2f\x63\x47\x76\x58\x78','\x62\x77\x52\x63\x52\x72\x4f\x4d','\x57\x4f\x69\x56\x57\x37\x56\x64\x4a\x68\x6a\x4e\x57\x50\x71','\x57\x50\x31\x53\x57\x35\x46\x64\x56\x71\x4e\x64\x56\x31\x61','\x63\x53\x6f\x75\x57\x37\x54\x76','\x57\x4f\x39\x43\x57\x36\x4b\x65','\x67\x30\x33\x63\x4a\x57','\x57\x51\x48\x35\x46\x57','\x71\x53\x6b\x43\x76\x43\x6f\x75\x73\x53\x6f\x30\x6d\x6d\x6f\x69','\x57\x51\x4f\x43\x57\x36\x75\x38\x61\x31\x58\x70\x57\x37\x30','\x57\x52\x6e\x5a\x75\x43\x6f\x37\x57\x4f\x4f','\x57\x4f\x68\x63\x4d\x43\x6b\x66\x63\x4c\x34','\x77\x6d\x6f\x75\x72\x67\x62\x77','\x64\x6d\x6f\x2f\x57\x34\x56\x64\x52\x71\x64\x64\x50\x71\x57\x49','\x73\x38\x6b\x35\x75\x43\x6f\x79\x74\x71','\x57\x4f\x66\x44\x57\x52\x46\x63\x4f\x53\x6f\x42','\x42\x43\x6b\x7a\x57\x50\x6d\x72','\x7a\x65\x37\x63\x52\x43\x6f\x71\x57\x50\x53','\x71\x77\x34\x45\x78\x31\x61','\x57\x52\x70\x63\x55\x6d\x6b\x64\x6c\x47','\x45\x62\x38\x56\x43\x47','\x63\x33\x4e\x63\x4d\x6d\x6b\x7a\x46\x67\x52\x64\x52\x5a\x4e\x63\x4b\x53\x6b\x56\x57\x50\x70\x64\x50\x4c\x47','\x46\x66\x4a\x63\x51\x6d\x6f\x6c\x57\x4f\x43','\x46\x38\x6b\x46\x71\x53\x6b\x55\x6e\x57','\x57\x51\x72\x4c\x57\x36\x69\x54\x6b\x61','\x57\x4f\x44\x59\x57\x35\x37\x64\x49\x38\x6f\x48\x78\x43\x6b\x6a\x57\x35\x47','\x57\x37\x68\x63\x49\x38\x6b\x5a\x57\x4f\x4b\x75\x74\x31\x4b\x4a','\x57\x51\x69\x67\x57\x34\x42\x64\x4d\x4c\x4b','\x72\x38\x6b\x42\x64\x31\x6c\x63\x4c\x65\x50\x47\x57\x35\x65','\x7a\x78\x66\x64\x57\x37\x75','\x65\x76\x78\x64\x4f\x71','\x42\x4e\x2f\x64\x51\x61\x34\x73','\x57\x52\x70\x63\x4e\x53\x6f\x6e\x68\x61','\x57\x36\x7a\x74\x57\x34\x42\x64\x50\x6d\x6f\x6b','\x43\x4d\x4a\x64\x53\x71\x4a\x64\x4d\x47\x33\x63\x56\x66\x43','\x6a\x43\x6b\x42\x57\x35\x38\x65\x57\x35\x47','\x57\x50\x30\x56\x57\x37\x5a\x64\x47\x47','\x57\x52\x30\x66\x57\x36\x69\x38\x66\x66\x31\x31\x57\x37\x71','\x43\x4e\x7a\x64\x57\x36\x6e\x46\x41\x49\x75\x54','\x61\x38\x6b\x4a\x57\x50\x46\x63\x4d\x4d\x47','\x42\x53\x6b\x53\x57\x52\x70\x64\x48\x30\x75','\x57\x36\x69\x4f\x57\x4f\x5a\x64\x4f\x71','\x57\x52\x37\x64\x50\x6d\x6f\x71\x57\x37\x57','\x45\x65\x65\x79\x43\x4e\x47','\x66\x38\x6b\x65\x57\x50\x78\x63\x4e\x47','\x57\x36\x76\x76\x57\x35\x30','\x70\x65\x6c\x64\x53\x4c\x47\x30','\x72\x73\x74\x64\x4b\x53\x6f\x67\x6f\x49\x70\x63\x55\x71\x53','\x79\x6d\x6b\x73\x7a\x53\x6b\x46','\x57\x36\x74\x63\x52\x5a\x42\x63\x50\x67\x70\x64\x47\x78\x42\x63\x4d\x47','\x67\x53\x6b\x6a\x57\x50\x4e\x63\x4a\x4b\x4b\x6f\x57\x4f\x74\x64\x56\x61','\x76\x75\x4a\x64\x51\x72\x61\x33\x57\x50\x43','\x63\x53\x6b\x71\x57\x50\x52\x63\x4d\x4b\x4f\x6f\x57\x34\x46\x64\x51\x57','\x57\x50\x48\x4e\x57\x36\x4a\x64\x4a\x59\x79','\x57\x51\x78\x64\x4f\x5a\x2f\x63\x52\x38\x6b\x4b\x67\x76\x31\x72','\x61\x32\x42\x64\x4c\x38\x6b\x49\x79\x4e\x6c\x64\x4e\x30\x47','\x76\x72\x44\x42\x57\x50\x53','\x72\x77\x74\x63\x51\x38\x6f\x64\x57\x51\x47','\x57\x4f\x62\x72\x72\x53\x6b\x4b\x6d\x30\x48\x6f\x57\x52\x71','\x57\x50\x54\x35\x57\x35\x70\x64\x48\x72\x4b','\x64\x31\x68\x64\x56\x38\x6b\x4f\x79\x57','\x57\x37\x72\x41\x57\x36\x2f\x64\x4a\x6d\x6f\x6e','\x57\x52\x58\x69\x73\x38\x6b\x6e\x61\x71','\x6f\x67\x7a\x78\x6d\x4a\x43','\x61\x73\x76\x6d\x57\x4f\x37\x64\x4a\x47','\x57\x35\x64\x63\x4b\x6d\x6b\x5a\x57\x50\x61\x55\x77\x66\x61','\x57\x37\x4a\x64\x51\x43\x6b\x63\x74\x4a\x78\x63\x48\x57','\x57\x52\x70\x64\x50\x57\x46\x63\x4a\x30\x37\x64\x4f\x67\x4a\x63\x4c\x57','\x57\x34\x52\x63\x4d\x53\x6b\x5a\x57\x50\x4b','\x57\x50\x43\x4a\x57\x4f\x42\x64\x48\x53\x6f\x67','\x57\x36\x5a\x63\x4e\x53\x6b\x4d\x57\x50\x71\x58\x75\x57','\x57\x52\x79\x6a\x57\x34\x43\x47\x62\x57','\x57\x36\x4f\x55\x6f\x43\x6f\x62\x75\x4a\x61\x57\x57\x52\x38\x59\x79\x53\x6b\x4d\x57\x37\x4a\x64\x54\x47'];_0x2278=function(){return _0x33b32c;};return _0x2278();}function _0x286a65(_0x3f8da9,_0x390fd5){const _0xbb71a2=_0x1af1e4,_0x22c55d={};_0x22c55d[_0xbb71a2(0x1d1,'\x32\x4f\x48\x79')]=function(_0x412608,_0xab319e){return _0x412608-_0xab319e;},_0x22c55d[_0xbb71a2(0x19b,'\x78\x4e\x44\x5a')]=_0xbb71a2(0x16a,'\x28\x46\x56\x53');const _0x2574fc=_0x22c55d;if(_0x390fd5===undefined)_0x390fd5=-0xd7*0x57+0x89a*0x1+-0x617*-0x11;try{if(!_0x4b9456['\x65\x78\x69\x73\x74\x73\x53\x79'+'\x6e\x63'](_0x3f8da9))return _0xbb71a2(0x17b,'\x5e\x41\x4b\x6e')+'\x5d\x20'+_0x3f8da9;const _0x216064=_0x4b9456[_0xbb71a2(0x1a3,'\x35\x4b\x30\x43')](_0x3f8da9),_0x4a82c1=_0x216064[_0xbb71a2(0x224,'\x63\x59\x45\x69')];if(_0x4a82c1===-0xb*0x72+-0x1618+0x1afe)return'';const _0x1330b0=Math[_0xbb71a2(0x235,'\x28\x46\x56\x53')](_0x390fd5,_0x4a82c1),_0x29a2bb=Buffer[_0xbb71a2(0x20b,'\x49\x34\x5a\x70')](_0x1330b0),_0x2db335=_0x4b9456[_0xbb71a2(0x1b0,'\x57\x54\x6d\x30')](_0x3f8da9,'\x72');return _0x4b9456[_0xbb71a2(0x1bb,'\x59\x62\x5d\x77')](_0x2db335,_0x29a2bb,0x19f8+0x1558+-0x2f50,_0x1330b0,Math[_0xbb71a2(0x1a2,'\x6b\x52\x56\x39')](0xa12+-0x7a9+-0x269,_0x2574fc[_0xbb71a2(0x11c,'\x44\x7a\x5e\x6c')](_0x4a82c1,_0x1330b0))),_0x4b9456[_0xbb71a2(0x11d,'\x6c\x36\x71\x4d')+'\x63'](_0x2db335),_0x29a2bb[_0xbb71a2(0x1c4,'\x63\x59\x45\x69')](_0x2574fc['\x4e\x53\x72\x59\x79']);}catch(_0x4c4a79){return'\x5b\x45\x52\x52\x4f\x52\x20\x52'+_0xbb71a2(0x1e1,'\x73\x72\x35\x74')+_0x3f8da9+'\x3a\x20'+_0x4c4a79[_0xbb71a2(0x220,'\x31\x4a\x52\x26')]+'\x5d';}}function _0x5a1798(_0xb8d98d){const _0x278423=_0x1af1e4,_0x38ae10={};_0x38ae10[_0x278423(0x226,'\x67\x6b\x55\x6b')]=function(_0x8bfa83,_0x13e7f9){return _0x8bfa83||_0x13e7f9;};const _0x48e83d=_0x38ae10;return String(_0x48e83d[_0x278423(0x17a,'\x4d\x24\x67\x70')](_0xb8d98d,''))[_0x278423(0x1d8,'\x6a\x48\x70\x6b')](/[\\/]+$/,'');}function _0xf932a9(_0x3f2000){const _0x245790=_0x1af1e4,_0x4a32b2={'\x6e\x65\x54\x49\x50':function(_0x8cd28c,_0x16e7a1){return _0x8cd28c(_0x16e7a1);},'\x69\x46\x4f\x71\x47':function(_0x5de7d4,_0x1ea07a){return _0x5de7d4===_0x1ea07a;},'\x65\x76\x56\x4c\x52':_0x245790(0x177,'\x35\x28\x5a\x28')+_0x245790(0x165,'\x6c\x36\x71\x4d'),'\x66\x59\x50\x6f\x69':_0x245790(0x1f4,'\x21\x4e\x7a\x38'),'\x48\x61\x4b\x66\x6f':function(_0x2fc755,_0x406a86){return _0x2fc755===_0x406a86;},'\x4e\x43\x61\x48\x76':_0x245790(0x1b4,'\x36\x23\x69\x2a'),'\x68\x4b\x4f\x70\x75':function(_0x4aca43,_0x477a05){return _0x4aca43(_0x477a05);},'\x5a\x49\x50\x44\x44':_0x245790(0x19d,'\x57\x54\x6d\x30')};let _0x5d588c;try{_0x5d588c=_0x4a32b2[_0x245790(0x211,'\x39\x45\x69\x45')](_0x5a1798,_0x39e808[_0x245790(0x143,'\x6c\x36\x71\x4d')](_0x3f2000));}catch{if(_0x4a32b2[_0x245790(0x17e,'\x31\x4a\x52\x26')](_0x245790(0x1d0,'\x39\x45\x69\x45'),_0x4a32b2[_0x245790(0x1d9,'\x39\x45\x69\x45')]))return'';else _0x2e7c2d=_0x4a32b2[_0x245790(0x1fd,'\x36\x23\x69\x2a')](_0x4f4f6c,_0x2d7dc3[_0x245790(0x12f,'\x56\x70\x40\x21')](_0x25f9b1));}if(!_0x5d588c)return'';try{return _0x4a32b2[_0x245790(0x13f,'\x36\x23\x69\x2a')](_0x5a1798,_0x4b9456[_0x245790(0x218,'\x48\x2a\x63\x4e')+_0x245790(0x134,'\x55\x38\x74\x2a')][_0x245790(0x187,'\x64\x63\x52\x4b')](_0x5d588c));}catch{try{return _0x4a32b2[_0x245790(0x21c,'\x59\x6d\x44\x71')](_0x5a1798,_0x4b9456[_0x245790(0x12c,'\x36\x23\x69\x2a')+_0x245790(0x171,'\x78\x4e\x44\x5a')](_0x5d588c));}catch{if(_0x4a32b2['\x48\x61\x4b\x66\x6f'](_0x4a32b2[_0x245790(0x1d5,'\x37\x69\x4e\x24')],_0x4a32b2[_0x245790(0x153,'\x41\x41\x49\x6c')]))return _0x5d588c;else{if(_0x4a32b2[_0x245790(0x132,'\x68\x61\x4f\x77')](_0x171e3d['\x74\x79\x70\x65'],_0x4a32b2[_0x245790(0x1ab,'\x39\x45\x69\x45')])&&_0x49c060[_0x245790(0x11a,'\x57\x54\x6d\x30')]&&typeof _0x4f028e[_0x245790(0x221,'\x5e\x41\x4b\x6e')][_0x245790(0x147,'\x55\x38\x74\x2a')]===_0x4a32b2[_0x245790(0x1a9,'\x21\x4e\x7a\x38')])return _0x3e0c88[_0x245790(0x1eb,'\x37\x69\x4e\x24')][_0x245790(0x1c3,'\x34\x79\x31\x76')];if(_0x4a32b2[_0x245790(0x1ff,'\x44\x7a\x5e\x6c')](typeof _0x3bf4f6[_0x245790(0x1d7,'\x77\x35\x32\x33')],_0x4a32b2[_0x245790(0x1a9,'\x21\x4e\x7a\x38')]))return _0x48154a[_0x245790(0x1be,'\x57\x4c\x33\x7a')];}}}}function _0x1f6b4c(_0x48e069){const _0x3357f4=_0x1af1e4,_0x476ca0={'\x66\x55\x61\x62\x54':_0x3357f4(0x225,'\x6f\x38\x51\x68')+_0x3357f4(0x155,'\x6d\x4b\x29\x78'),'\x50\x57\x54\x66\x63':_0x3357f4(0x195,'\x48\x25\x75\x68'),'\x4c\x64\x74\x63\x64':function(_0x50f73f,_0x190f9e,_0x3f0cd1){return _0x50f73f(_0x190f9e,_0x3f0cd1);},'\x57\x4f\x4b\x6b\x71':function(_0x2eac17,_0x14d4bc){return _0x2eac17<_0x14d4bc;},'\x71\x74\x4e\x5a\x44':'\x6b\x6e\x56\x51\x79','\x42\x54\x75\x4c\x46':_0x3357f4(0x1bc,'\x78\x4e\x44\x5a'),'\x6f\x4c\x56\x7a\x4e':'\x59\x4f\x53\x51\x43','\x72\x68\x58\x6f\x71':'\x73\x65\x73\x73\x69\x6f\x6e\x5f'+_0x3357f4(0x222,'\x4d\x24\x67\x70'),'\x48\x61\x6e\x74\x68':function(_0x2b4bfe,_0x114a54){return _0x2b4bfe===_0x114a54;},'\x6c\x6b\x6b\x77\x47':_0x3357f4(0x174,'\x5e\x61\x59\x26'),'\x52\x57\x79\x48\x4e':'\x65\x43\x66\x42\x5a','\x58\x71\x63\x52\x4a':_0x3357f4(0x1e5,'\x45\x6d\x46\x6f'),'\x48\x43\x73\x77\x4b':function(_0x37f10d,_0x2f7945){return _0x37f10d!==_0x2f7945;},'\x6c\x54\x56\x67\x4f':'\x6d\x67\x69\x65\x61','\x79\x47\x50\x46\x78':_0x3357f4(0x158,'\x78\x4e\x44\x5a')};try{if(!_0x48e069[_0x3357f4(0x167,'\x48\x2a\x63\x4e')](_0x476ca0[_0x3357f4(0x1f6,'\x39\x45\x69\x45')]))return null;const _0x33d1af=_0x476ca0[_0x3357f4(0x202,'\x32\x4f\x48\x79')](_0x373003,_0x48e069,0x13f3+-0x21f6+0xc5*0x27);if(!_0x33d1af)return null;const _0x551abf=_0x33d1af[_0x3357f4(0x22e,'\x41\x41\x49\x6c')]('\x0a');for(let _0xddb116=0x69b+0x712+0x3*-0x48f;_0x476ca0[_0x3357f4(0x1e0,'\x34\x79\x31\x76')](_0xddb116,Math[_0x3357f4(0x1a0,'\x7a\x79\x54\x6e')](_0x551abf[_0x3357f4(0x12d,'\x63\x66\x24\x71')],0x626*-0x1+0x1*0x141c+-0xdf1));_0xddb116++){if(_0x476ca0[_0x3357f4(0x1e4,'\x39\x45\x69\x45')]===_0x476ca0[_0x3357f4(0x11e,'\x35\x4b\x30\x43')]){const _0x491373=_0x551abf[_0xddb116][_0x3357f4(0x145,'\x63\x59\x45\x69')]();if(!_0x491373)continue;let _0x159870;try{_0x159870=JSON[_0x3357f4(0x11b,'\x77\x35\x32\x33')](_0x491373);}catch{continue;}if(_0x159870&&typeof _0x159870===_0x476ca0[_0x3357f4(0x14c,'\x45\x6d\x46\x6f')]){if(_0x3357f4(0x12b,'\x31\x4a\x52\x26')!==_0x476ca0['\x6f\x4c\x56\x7a\x4e'])return null;else{if(_0x159870[_0x3357f4(0x203,'\x57\x54\x6d\x30')]===_0x476ca0[_0x3357f4(0x1c8,'\x63\x59\x45\x69')]&&_0x159870[_0x3357f4(0x1a4,'\x59\x6d\x44\x71')]&&_0x476ca0[_0x3357f4(0x18d,'\x59\x62\x5d\x77')](typeof _0x159870[_0x3357f4(0x13d,'\x44\x7a\x5e\x6c')][_0x3357f4(0x1ee,'\x30\x48\x4c\x5e')],_0x476ca0[_0x3357f4(0x1ba,'\x30\x48\x4c\x5e')]))return _0x476ca0['\x52\x57\x79\x48\x4e']!==_0x476ca0[_0x3357f4(0x22b,'\x4d\x24\x67\x70')]?_0x159870[_0x3357f4(0x1ca,'\x34\x79\x31\x76')][_0x3357f4(0x205,'\x63\x59\x45\x69')]:_0x1f28c1[_0x3357f4(0x166,'\x6b\x52\x56\x39')+'\x6e\x63'](_0x272e44);if(typeof _0x159870[_0x3357f4(0x20c,'\x63\x66\x24\x71')]===_0x476ca0[_0x3357f4(0x1b9,'\x6a\x48\x70\x6b')])return _0x159870[_0x3357f4(0x16e,'\x21\x4e\x7a\x38')];}}}else return _0x27e585[_0x3357f4(0x1fa,'\x36\x23\x69\x2a')]()['\x73\x65\x61\x72\x63\x68'](hKWZYF['\x66\x55\x61\x62\x54'])[_0x3357f4(0x21b,'\x57\x4c\x33\x7a')]()[_0x3357f4(0x197,'\x38\x43\x25\x29')+'\x74\x6f\x72'](_0x561342)[_0x3357f4(0x1e7,'\x6c\x36\x71\x4d')](hKWZYF[_0x3357f4(0x14f,'\x76\x6b\x34\x29')]);}return null;}catch{if(_0x476ca0[_0x3357f4(0x160,'\x5e\x61\x59\x26')](_0x476ca0['\x6c\x54\x56\x67\x4f'],_0x476ca0[_0x3357f4(0x214,'\x68\x61\x4f\x77')]))return null;else try{return _0xbe663(_0x3adde4[_0x3357f4(0x15d,'\x7a\x79\x54\x6e')+_0x3357f4(0x223,'\x5e\x48\x51\x47')](_0x196b53));}catch{return _0x5494a0;}}}function _0x5993d5(_0x9288e1,_0x15d281){const _0x4344e8=_0x1af1e4,_0x39d90a={'\x53\x6e\x72\x61\x6b':function(_0x34bcec,_0x514a1d){return _0x34bcec(_0x514a1d);},'\x56\x65\x4b\x47\x59':function(_0x36cc7b,_0x54b285){return _0x36cc7b===_0x54b285;},'\x73\x4c\x68\x61\x51':function(_0x23c393,_0x3b3eff){return _0x23c393+_0x3b3eff;}},_0x2d463e=_0x1f6b4c(_0x9288e1);if(!_0x2d463e)return![];const _0x1428e2=Array[_0x4344e8(0x1cd,'\x31\x4a\x52\x26')](_0x15d281)?_0x15d281:[_0x15d281],_0x5e453c=_0xf932a9(_0x2d463e);if(!_0x5e453c)return![];for(const _0xad0d2a of _0x1428e2){if(!_0xad0d2a)continue;const _0xa1db5d=_0x39d90a[_0x4344e8(0x1a8,'\x32\x4f\x48\x79')](_0xf932a9,_0xad0d2a);if(!_0xa1db5d)continue;if(_0x39d90a[_0x4344e8(0x193,'\x57\x4c\x33\x7a')](_0x5e453c,_0xa1db5d))return!![];if(_0x5e453c[_0x4344e8(0x212,'\x7a\x79\x54\x6e')+'\x74\x68'](_0x39d90a[_0x4344e8(0x1b8,'\x6f\x38\x51\x68')](_0xa1db5d,_0x39e808[_0x4344e8(0x148,'\x5e\x41\x4b\x6e')])))return!![];}return![];}const _0x277a6a={};_0x277a6a[_0x1af1e4(0x14e,'\x59\x62\x5d\x77')+_0x1af1e4(0x14a,'\x6b\x52\x56\x39')+_0x1af1e4(0x1ce,'\x67\x6b\x55\x6b')]=_0x21841e,_0x277a6a[_0x1af1e4(0x22d,'\x39\x45\x69\x45')+_0x1af1e4(0x15a,'\x30\x48\x4c\x5e')+_0x1af1e4(0x19c,'\x45\x6d\x46\x6f')]=_0x14dd55,_0x277a6a[_0x1af1e4(0x1b5,'\x63\x66\x24\x71')+_0x1af1e4(0x185,'\x64\x63\x52\x4b')]=_0x373003,_0x277a6a[_0x1af1e4(0x129,'\x59\x62\x5d\x77')+_0x1af1e4(0x188,'\x6b\x52\x56\x39')]=_0x286a65,_0x277a6a[_0x1af1e4(0x1cb,'\x6b\x52\x56\x39')+_0x1af1e4(0x1ed,'\x6d\x4b\x29\x78')+'\x74\x43\x77\x64']=_0x1f6b4c,_0x277a6a[_0x1af1e4(0x1f2,'\x68\x61\x4f\x77')+_0x1af1e4(0x13c,'\x37\x69\x4e\x24')+_0x1af1e4(0x1b3,'\x68\x61\x4f\x77')+_0x1af1e4(0x1ea,'\x28\x46\x56\x53')]=_0x5993d5,module[_0x1af1e4(0x1a7,'\x73\x72\x35\x74')]=_0x277a6a;
1
+ 'use strict';
2
+
3
+ const fs = require('fs');
4
+ const path = require('path');
5
+ const os = require('os');
6
+
7
+ /**
8
+ * Resolve the directories to scan for IDE / platform session transcripts.
9
+ *
10
+ * Precedence:
11
+ * 1. `EVOLVER_CURSOR_TRANSCRIPTS_DIR` explicit override — returns `[that]`
12
+ * (preserves the existing escape hatch for unusual layouts).
13
+ * 2. Default platform paths under `$HOME`, in priority order:
14
+ * `~/.codex/sessions` (Codex rollout JSONL, layout `YYYY/MM/DD/rollout-*.jsonl`)
15
+ * `~/.claude/projects` (Claude Code per-project transcripts)
16
+ * Only paths that exist are returned.
17
+ *
18
+ * Before #543, only the env-var path was checked, so a fresh Codex install
19
+ * with no env override silently produced "no session logs" even though
20
+ * Codex was writing rollouts to `~/.codex/sessions`. Auto-discovery here
21
+ * mirrors the auto-detection in `readRealSessionLog` which already
22
+ * considers `~/.codex` / `~/.claude` / `~/.cursor` when deciding whether
23
+ * to dispatch to the transcript reader.
24
+ *
25
+ * @param {{ homedir?: string, cursorTranscriptsDirOverride?: string }} [opts]
26
+ * @returns {string[]}
27
+ */
28
+ function resolveTranscriptDirs(opts) {
29
+ const override = opts && opts.cursorTranscriptsDirOverride != null
30
+ ? opts.cursorTranscriptsDirOverride
31
+ : (process.env.EVOLVER_CURSOR_TRANSCRIPTS_DIR || '');
32
+ if (override) return [override];
33
+ const home = (opts && opts.homedir) || os.homedir();
34
+ const candidates = [
35
+ path.join(home, '.codex', 'sessions'),
36
+ path.join(home, '.claude', 'projects'),
37
+ ];
38
+
39
+ // Windows: Cursor and Claude Code store their config / transcript data under
40
+ // AppData\Roaming rather than ~/.<name>. Add the known Windows paths when
41
+ // running on win32 so that auto-discovery works without needing
42
+ // EVOLVER_CURSOR_TRANSCRIPTS_DIR to be set manually.
43
+ //
44
+ // Known layouts (as of 2025):
45
+ // Cursor %APPDATA%\Cursor\User\workspaceStorage (SQLite + JSON sessions)
46
+ // Claude %APPDATA%\Claude\projects (mirrors macOS ~/.claude/projects)
47
+ // claude-code %APPDATA%\claude-code\projects (some builds use this name)
48
+ if (process.platform === 'win32') {
49
+ const appData = process.env.APPDATA || path.join(home, 'AppData', 'Roaming');
50
+ candidates.push(
51
+ path.join(appData, 'Claude', 'projects'),
52
+ path.join(appData, 'claude-code', 'projects'),
53
+ // Cursor transcript storage lives one level above individual workspace dirs
54
+ path.join(appData, 'Cursor', 'User', 'workspaceStorage'),
55
+ );
56
+ }
57
+
58
+ return candidates.filter((p) => {
59
+ try { return fs.existsSync(p); } catch { return false; }
60
+ });
61
+ }
62
+
63
+ /**
64
+ * Recursively collect .jsonl and .txt transcript files under a directory.
65
+ * @param {string} dir
66
+ * @param {number} maxDepth
67
+ * @returns {{ path: string, name: string, time: number, size: number }[]}
68
+ */
69
+ function collectTranscriptFiles(dir, maxDepth) {
70
+ const results = [];
71
+ function walk(d, depth) {
72
+ if (depth > maxDepth) return;
73
+ let entries;
74
+ try { entries = fs.readdirSync(d, { withFileTypes: true }); } catch { return; }
75
+ for (const ent of entries) {
76
+ if (ent.isFile() && (ent.name.endsWith('.jsonl') || ent.name.endsWith('.txt'))) {
77
+ const fp = path.join(d, ent.name);
78
+ try {
79
+ const st = fs.statSync(fp);
80
+ results.push({ path: fp, name: ent.name, time: st.mtime.getTime(), size: st.size });
81
+ } catch { /* skip unreadable */ }
82
+ } else if (ent.isDirectory() && ent.name !== 'subagents' && ent.name !== 'node_modules') {
83
+ walk(path.join(d, ent.name), depth + 1);
84
+ }
85
+ }
86
+ }
87
+ walk(dir, 0);
88
+ return results;
89
+ }
90
+
91
+ /**
92
+ * Read the first maxBytes bytes of a file.
93
+ * @param {string} filePath
94
+ * @param {number} [maxBytes=8192]
95
+ * @returns {string}
96
+ */
97
+ function readFileHead(filePath, maxBytes) {
98
+ if (maxBytes === undefined) maxBytes = 8192;
99
+ try {
100
+ if (!fs.existsSync(filePath)) return '';
101
+ const fd = fs.openSync(filePath, 'r');
102
+ const buffer = Buffer.alloc(maxBytes);
103
+ const bytesRead = fs.readSync(fd, buffer, 0, maxBytes, 0);
104
+ fs.closeSync(fd);
105
+ return buffer.slice(0, bytesRead).toString('utf8');
106
+ } catch (e) {
107
+ return '';
108
+ }
109
+ }
110
+
111
+ /**
112
+ * Read the last `size` bytes of a file (tail read for recent logs).
113
+ * @param {string} filePath
114
+ * @param {number} [size=10000]
115
+ * @returns {string}
116
+ */
117
+ function readRecentLog(filePath, size) {
118
+ if (size === undefined) size = 10000;
119
+ try {
120
+ if (!fs.existsSync(filePath)) return `[MISSING] ${filePath}`;
121
+ const stat = fs.statSync(filePath);
122
+ const fileSize = stat.size;
123
+ if (fileSize === 0) return '';
124
+ const readSize = Math.min(size, fileSize);
125
+ const buffer = Buffer.alloc(readSize);
126
+ const fd = fs.openSync(filePath, 'r');
127
+ fs.readSync(fd, buffer, 0, readSize, Math.max(0, fileSize - readSize));
128
+ fs.closeSync(fd);
129
+ return buffer.toString('utf8');
130
+ } catch (e) {
131
+ return `[ERROR READING ${filePath}: ${e.message}]`;
132
+ }
133
+ }
134
+
135
+ function stripTrailingSeparators(value) {
136
+ return String(value || '').replace(/[\\/]+$/, '');
137
+ }
138
+
139
+ /**
140
+ * Normalize a workspace identity for provenance comparisons.
141
+ *
142
+ * macOS commonly exposes the same temporary directory through both `/var/...`
143
+ * and `/private/var/...`. `path.resolve()` keeps those strings different even
144
+ * though they identify the same directory, so use realpath when possible and
145
+ * fall back to the resolved path for stale transcript cwd values.
146
+ *
147
+ * @param {string} value
148
+ * @returns {string}
149
+ */
150
+ function normalizeWorkspaceIdentity(value) {
151
+ let resolved;
152
+ try {
153
+ resolved = stripTrailingSeparators(path.resolve(value));
154
+ } catch {
155
+ return '';
156
+ }
157
+ if (!resolved) return '';
158
+ try {
159
+ return stripTrailingSeparators(fs.realpathSync.native(resolved));
160
+ } catch {
161
+ try {
162
+ return stripTrailingSeparators(fs.realpathSync(resolved));
163
+ } catch {
164
+ return resolved;
165
+ }
166
+ }
167
+ }
168
+
169
+ /**
170
+ * Read the first record(s) of a JSONL transcript and try to extract the
171
+ * originating workspace cwd. Codex rollouts start with a `session_meta`
172
+ * record whose `payload.cwd` is the workspace the session ran in
173
+ * (`{"type":"session_meta","payload":{"cwd":"/home/u/workspace/X", ...}}`).
174
+ * Claude Code may emit a top-level `cwd` on its first record; generic
175
+ * fallback also checks `data.cwd`.
176
+ *
177
+ * Returns the cwd string or null when no recognisable cwd is found in
178
+ * the first ~4 KB of the file. Bounded read so a malformed multi-MB
179
+ * transcript can't stall the discovery pass.
180
+ *
181
+ * @param {string} filePath
182
+ * @returns {string|null}
183
+ */
184
+ function extractTranscriptCwd(filePath) {
185
+ try {
186
+ if (!filePath.endsWith('.jsonl')) return null;
187
+ const head = readFileHead(filePath, 4096);
188
+ if (!head) return null;
189
+ const lines = head.split('\n');
190
+ // Scan at most the first 5 records — `session_meta` should be first
191
+ // for Codex; widen the window slightly in case a writer prepends an
192
+ // envelope record (e.g. version preamble).
193
+ for (let i = 0; i < Math.min(lines.length, 5); i++) {
194
+ const ln = lines[i].trim();
195
+ if (!ln) continue;
196
+ let data;
197
+ try { data = JSON.parse(ln); } catch { continue; }
198
+ if (data && typeof data === 'object') {
199
+ if (data.type === 'session_meta' && data.payload && typeof data.payload.cwd === 'string') {
200
+ return data.payload.cwd;
201
+ }
202
+ if (typeof data.cwd === 'string') return data.cwd;
203
+ }
204
+ }
205
+ return null;
206
+ } catch { return null; }
207
+ }
208
+
209
+ /**
210
+ * Decide whether a transcript file belongs to the workspace we're
211
+ * evolving. The user-level discovery paths (`~/.codex/sessions`,
212
+ * `~/.claude/projects`) hold transcripts from EVERY project the user
213
+ * has touched — pulling them in unfiltered would import unrelated
214
+ * session content into another repo's evolution run (Bugbot PR #130
215
+ * Agentic Security Review MEDIUM: cross-project prompt/context
216
+ * contamination + possible unintended disclosure of prior session
217
+ * data).
218
+ *
219
+ * Match semantics: a session's recorded cwd belongs to "this
220
+ * workspace" if it equals OR is a subdir of ANY of the candidate
221
+ * roots passed in. We accept multiple candidates so a user who
222
+ * `cd`'d into a non-git directory still gets their own sessions
223
+ * back: `getWorkspaceRoot()` may fall back to the evolver install
224
+ * dir when no `.git` is found, but `process.cwd()` still points
225
+ * at the user's actual working dir (which is what the Codex
226
+ * session also recorded). Without this multi-candidate match,
227
+ * issue #543's follow-up scenario — tammypi running evolver from
228
+ * `/home/u/workspace/foo` with no `git init` — silently dropped
229
+ * every transcript even though Codex was active there.
230
+ *
231
+ * Files without a recognisable cwd (older formats, third-party
232
+ * writers) are dropped — fail-closed is the conservative answer
233
+ * when we can't prove provenance.
234
+ *
235
+ * @param {string} filePath
236
+ * @param {string|string[]} candidateRoots — one or more workspace
237
+ * identities; the transcript's cwd matches if any of these
238
+ * equals or is a parent of it.
239
+ * @returns {boolean}
240
+ */
241
+ function transcriptBelongsToWorkspace(filePath, candidateRoots) {
242
+ const cwd = extractTranscriptCwd(filePath);
243
+ if (!cwd) return false;
244
+ const roots = Array.isArray(candidateRoots) ? candidateRoots : [candidateRoots];
245
+ const normCwd = normalizeWorkspaceIdentity(cwd);
246
+ if (!normCwd) return false;
247
+ for (const root of roots) {
248
+ if (!root) continue;
249
+ const normRoot = normalizeWorkspaceIdentity(root);
250
+ if (!normRoot) continue;
251
+ if (normCwd === normRoot) return true;
252
+ if (normCwd.startsWith(normRoot + path.sep)) return true;
253
+ }
254
+ return false;
255
+ }
256
+
257
+ module.exports = {
258
+ resolveTranscriptDirs,
259
+ collectTranscriptFiles,
260
+ readFileHead,
261
+ readRecentLog,
262
+ extractTranscriptCwd,
263
+ transcriptBelongsToWorkspace,
264
+ };