@evomap/evolver 1.91.1 → 1.91.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/index.js +1 -1
  2. package/package.json +1 -1
  3. package/src/evolve/guards.js +1 -1
  4. package/src/evolve/pipeline/collect.js +1 -1
  5. package/src/evolve/pipeline/dispatch.js +1 -1
  6. package/src/evolve/pipeline/enrich.js +1 -1
  7. package/src/evolve/pipeline/hub.js +1 -1
  8. package/src/evolve/pipeline/select.js +1 -1
  9. package/src/evolve/pipeline/signals.js +1 -1
  10. package/src/evolve/utils.js +1 -1
  11. package/src/evolve.js +1 -1
  12. package/src/gep/a2aProtocol.js +5175 -1
  13. package/src/gep/antiAbuseTelemetry.js +233 -1
  14. package/src/gep/assetStore.js +3 -2
  15. package/src/gep/autoDistillConv.js +205 -1
  16. package/src/gep/autoDistillLlm.js +315 -1
  17. package/src/gep/candidateEval.js +92 -1
  18. package/src/gep/candidates.js +1 -1
  19. package/src/gep/contentHash.js +30 -1
  20. package/src/gep/conversationDistiller.js +270 -1
  21. package/src/gep/conversationSniffer.js +266 -1
  22. package/src/gep/crypto.js +93 -1
  23. package/src/gep/curriculum.js +1 -1
  24. package/src/gep/deviceId.js +218 -1
  25. package/src/gep/envFingerprint.js +118 -1
  26. package/src/gep/epigenetics.js +31 -1
  27. package/src/gep/execBridge.js +712 -1
  28. package/src/gep/explore.js +289 -1
  29. package/src/gep/hash.js +15 -1
  30. package/src/gep/hubFetch.js +672 -1
  31. package/src/gep/hubReview.js +212 -1
  32. package/src/gep/hubSearch.js +544 -1
  33. package/src/gep/hubVerify.js +306 -1
  34. package/src/gep/learningSignals.js +1 -1
  35. package/src/gep/memoryGraph.js +1449 -1
  36. package/src/gep/memoryGraphAdapter.js +203 -1
  37. package/src/gep/mutation.js +1 -1
  38. package/src/gep/narrativeMemory.js +1 -1
  39. package/src/gep/openPRRegistry.js +205 -1
  40. package/src/gep/personality.js +1 -1
  41. package/src/gep/policyCheck.js +599 -1
  42. package/src/gep/prompt.js +1 -1
  43. package/src/gep/recallInject.js +409 -1
  44. package/src/gep/recallVerifier.js +318 -1
  45. package/src/gep/reflection.js +1 -1
  46. package/src/gep/savingsCore.js +1 -1
  47. package/src/gep/selector.js +1 -1
  48. package/src/gep/skillDistiller.js +1294 -1
  49. package/src/gep/solidify.js +1 -1
  50. package/src/gep/strategy.js +136 -1
  51. package/src/gep/tokenSavings.js +1 -1
  52. package/src/gep/trajectoryExport.js +3841 -1
  53. package/src/gep/workspaceKeychain.js +174 -1
  54. package/src/proxy/extensions/traceControl.js +123 -1
  55. package/src/proxy/inject.js +52 -1
  56. package/src/proxy/trace/extractor.js +2355 -1
  57. package/src/proxy/trace/usage.js +105 -1
  58. package/src/webui/client/clientJs/bootstrap.js +6 -0
  59. package/src/webui/client/clientJs/github.js +225 -0
  60. package/src/webui/client/clientJs/i18n.js +14 -0
  61. package/src/webui/client/clientJs/index.js +3 -0
  62. package/src/webui/client/clientJs/pipelines.js +3 -1
  63. package/src/webui/client/indexHtml.js +10 -0
  64. package/src/webui/client/stylesCss.js +61 -0
  65. package/src/webui/observer/github.js +340 -0
  66. package/src/webui/observer/index.js +4 -0
  67. package/src/webui/server/routes.js +11 -0
@@ -1 +1,205 @@
1
- var _0x13312b=_0x3163;(function(_0x57a51b,_0x1667e7){var _0x2b71f6=_0x3163,_0x82d04=_0x57a51b();while(!![]){try{var _0x4e3c8b=-parseInt(_0x2b71f6(0x188,'\x21\x26\x54\x79'))/(-0x8*-0x45e+-0x1f06+-0x3e9)*(-parseInt(_0x2b71f6(0xff,'\x34\x77\x59\x54'))/(-0x6d*0x17+-0x2*-0x3b+-0x1*-0x957))+parseInt(_0x2b71f6(0x214,'\x52\x6d\x44\x50'))/(-0x179c+-0x8f1+0x10*0x209)+-parseInt(_0x2b71f6(0x1de,'\x6f\x5a\x64\x45'))/(-0x303+0x3*-0x2ab+0x4*0x2c2)+parseInt(_0x2b71f6(0x124,'\x6f\x70\x68\x42'))/(-0xc26+-0xb3f*-0x2+-0xa53)+-parseInt(_0x2b71f6(0x1e5,'\x45\x63\x6f\x4e'))/(-0x1518+-0x8f1+0xf*0x201)*(parseInt(_0x2b71f6(0x165,'\x79\x6d\x39\x4c'))/(-0x35*0xa8+-0x291*-0x9+0xbb6))+-parseInt(_0x2b71f6(0x1ae,'\x73\x72\x6b\x46'))/(-0x218c+-0x407+0xc89*0x3)*(parseInt(_0x2b71f6(0x223,'\x25\x59\x56\x5a'))/(0x163a+0x138a+-0x29bb))+parseInt(_0x2b71f6(0x1b3,'\x40\x29\x75\x50'))/(-0xb4e+-0x1fde*-0x1+-0x47*0x4a)*(parseInt(_0x2b71f6(0x145,'\x39\x72\x6c\x4d'))/(0x1b02+-0x2*-0xbc+-0x1d*0xfb));if(_0x4e3c8b===_0x1667e7)break;else _0x82d04['push'](_0x82d04['shift']());}catch(_0x482da2){_0x82d04['push'](_0x82d04['shift']());}}}(_0x5254,0x3eb*-0x232+0x8dd46+0x4*0x1ae5b));var _0x2ce2f5=(function(){var _0x5c280e=_0x3163,_0x446cb5={};_0x446cb5[_0x5c280e(0x134,'\x36\x78\x7a\x77')]=function(_0x206b66,_0x297fe0){return _0x206b66!==_0x297fe0;},_0x446cb5[_0x5c280e(0x219,'\x33\x72\x66\x38')]=_0x5c280e(0x136,'\x79\x6c\x32\x59'),_0x446cb5[_0x5c280e(0x1f7,'\x25\x2a\x4d\x74')]=function(_0x3bb320,_0x3b43d0){return _0x3bb320+_0x3b43d0;},_0x446cb5[_0x5c280e(0x10f,'\x52\x6d\x44\x50')]=_0x5c280e(0x184,'\x33\x72\x66\x38');var _0x378d9c=_0x446cb5,_0x5f53d6=!![];return function(_0x57216c,_0x3c7757){var _0x418bdd=_0x5c280e,_0x4460d1={'\x43\x76\x77\x75\x54':function(_0x26c779,_0x57414c){var _0x6e3276=_0x3163;return _0x378d9c[_0x6e3276(0x12d,'\x61\x21\x41\x33')](_0x26c779,_0x57414c);},'\x45\x59\x58\x65\x52':_0x418bdd(0x13b,'\x64\x58\x28\x37')+_0x418bdd(0x1a4,'\x70\x58\x65\x79')+_0x418bdd(0x204,'\x36\x78\x7a\x77')+_0x418bdd(0x216,'\x7a\x6a\x47\x56')+_0x418bdd(0x1ee,'\x25\x2a\x4d\x74')};if(_0x378d9c[_0x418bdd(0x1a6,'\x67\x67\x36\x29')]!==_0x378d9c[_0x418bdd(0x12f,'\x56\x40\x74\x6f')])_0x15324f[_0x418bdd(0xed,'\x55\x63\x78\x5d')](_0x4460d1['\x43\x76\x77\x75\x54'](_0x4460d1['\x45\x59\x58\x65\x52'],_0x389f52[_0x418bdd(0x1fa,'\x54\x76\x67\x48')](0x4*0x1d2+-0x1*0x19b1+0x1269,0x598*-0x3+-0x1f03+0x3093)));else{var _0x455019=_0x5f53d6?function(){var _0x267d64=_0x418bdd;if(_0x378d9c[_0x267d64(0x111,'\x63\x57\x4c\x31')](_0x378d9c[_0x267d64(0x15f,'\x34\x77\x59\x54')],_0x378d9c[_0x267d64(0x1d9,'\x55\x25\x2a\x4e')]))_0x4fc7b7=null,_0x1b67fa=0x680+0x11f0+-0x1870,_0x2ff64f=null,_0x1ea4e8=![];else{if(_0x3c7757){var _0x180b63=_0x3c7757[_0x267d64(0x21c,'\x21\x26\x54\x79')](_0x57216c,arguments);return _0x3c7757=null,_0x180b63;}}}:function(){};return _0x5f53d6=![],_0x455019;}};}()),_0x28e697=_0x2ce2f5(this,function(){var _0x34ac8e=_0x3163,_0x31a6a5={};_0x31a6a5[_0x34ac8e(0x103,'\x6e\x74\x55\x77')]=_0x34ac8e(0x1e7,'\x54\x76\x67\x48')+_0x34ac8e(0x104,'\x7a\x6a\x47\x56');var _0x3c2086=_0x31a6a5;return _0x28e697['\x74\x6f\x53\x74\x72\x69\x6e\x67']()[_0x34ac8e(0x13a,'\x67\x67\x36\x29')](_0x3c2086[_0x34ac8e(0x148,'\x35\x7a\x29\x25')])[_0x34ac8e(0x12b,'\x59\x6d\x66\x47')]()[_0x34ac8e(0x20e,'\x67\x67\x36\x29')+_0x34ac8e(0x1e4,'\x66\x32\x67\x24')](_0x28e697)['\x73\x65\x61\x72\x63\x68']('\x28\x28\x28\x2e\x2b\x29\x2b\x29'+_0x34ac8e(0x127,'\x66\x32\x67\x24'));});function _0x5254(){var _0x36e933=['\x57\x51\x42\x64\x53\x78\x71\x71\x57\x51\x30','\x57\x52\x61\x58\x57\x50\x75\x52\x57\x51\x6d','\x67\x38\x6b\x52\x57\x35\x38','\x57\x52\x37\x64\x50\x4a\x78\x63\x53\x38\x6f\x4e\x70\x57\x4b','\x57\x34\x52\x64\x48\x4e\x30\x45\x57\x37\x53','\x57\x34\x71\x4e\x57\x34\x4e\x63\x4f\x33\x37\x64\x52\x5a\x56\x63\x4e\x43\x6f\x42\x57\x4f\x30\x4d','\x79\x78\x79\x49\x6b\x57','\x57\x34\x68\x64\x4b\x53\x6b\x55\x61\x6d\x6b\x75\x67\x71','\x6b\x4e\x6c\x64\x4f\x38\x6f\x5a\x57\x34\x6d','\x77\x43\x6f\x4e\x65\x71','\x57\x36\x2f\x63\x54\x67\x5a\x63\x52\x6d\x6f\x59\x67\x43\x6b\x66','\x45\x43\x6f\x38\x57\x52\x78\x63\x49\x65\x4a\x64\x4d\x43\x6f\x78\x57\x51\x61','\x57\x51\x74\x63\x56\x6d\x6b\x43\x57\x51\x7a\x73\x6e\x38\x6f\x6f\x57\x34\x75','\x57\x34\x75\x6f\x57\x50\x74\x63\x52\x6d\x6f\x41','\x57\x34\x66\x6e\x57\x36\x33\x63\x56\x5a\x78\x64\x55\x4d\x65','\x66\x78\x34\x43\x57\x52\x61\x39','\x57\x50\x31\x65\x57\x36\x76\x73','\x74\x38\x6f\x61\x6d\x6d\x6f\x6c\x57\x52\x53','\x73\x49\x52\x64\x47\x53\x6b\x46\x43\x30\x54\x43','\x57\x50\x34\x37\x57\x52\x69\x45\x57\x50\x50\x32','\x43\x4a\x4a\x64\x47\x43\x6b\x4b\x46\x61','\x6d\x53\x6f\x43\x77\x53\x6f\x32\x57\x50\x34','\x57\x37\x6c\x63\x52\x4c\x4e\x63\x53\x53\x6f\x4c','\x57\x35\x52\x64\x47\x72\x4a\x64\x4f\x4d\x74\x63\x47\x57','\x57\x36\x33\x64\x50\x57\x70\x64\x55\x75\x38','\x57\x4f\x66\x42\x57\x37\x50\x66\x57\x4f\x44\x73\x66\x57','\x41\x38\x6f\x2b\x6b\x53\x6f\x45\x57\x4f\x65','\x6c\x6d\x6b\x47\x46\x43\x6b\x47\x57\x34\x47','\x57\x37\x46\x64\x50\x4c\x34\x51\x57\x36\x4b','\x42\x43\x6f\x49\x68\x4b\x4a\x63\x4b\x61\x64\x64\x49\x43\x6b\x4b','\x57\x37\x62\x34\x57\x37\x46\x64\x51\x48\x54\x32\x65\x71','\x57\x50\x58\x4b\x57\x52\x37\x64\x56\x73\x70\x64\x51\x74\x4e\x63\x49\x57','\x72\x43\x6f\x57\x64\x62\x62\x65\x45\x57','\x72\x67\x31\x6f\x7a\x75\x71\x68\x57\x36\x34\x4e','\x57\x34\x56\x63\x4f\x33\x62\x61\x57\x36\x47','\x57\x37\x56\x63\x54\x53\x6f\x2f\x57\x51\x78\x63\x51\x71','\x57\x4f\x69\x67\x57\x52\x68\x63\x52\x5a\x56\x64\x53\x32\x6a\x6c','\x57\x52\x33\x64\x52\x77\x46\x64\x4e\x53\x6f\x4f\x6d\x57\x2f\x64\x52\x57','\x43\x47\x4a\x64\x49\x38\x6b\x6a\x74\x61','\x57\x50\x46\x63\x48\x38\x6b\x38','\x44\x33\x34\x36\x6e\x38\x6f\x46\x57\x34\x6d','\x42\x48\x54\x39\x57\x36\x68\x63\x4a\x61','\x64\x31\x39\x6b\x65\x6d\x6f\x54','\x57\x50\x5a\x64\x56\x59\x4f\x71\x57\x51\x34\x61\x61\x32\x4a\x63\x49\x53\x6f\x7a\x57\x36\x53\x33\x6c\x61','\x57\x50\x46\x64\x4c\x43\x6b\x64','\x71\x72\x4a\x64\x56\x38\x6f\x46\x57\x52\x61','\x46\x49\x39\x70\x57\x37\x6c\x63\x54\x73\x4a\x64\x56\x64\x79','\x79\x38\x6b\x4d\x57\x4f\x52\x63\x4b\x38\x6f\x62','\x66\x32\x5a\x64\x54\x43\x6b\x52\x7a\x76\x62\x6a\x64\x47','\x71\x6d\x6f\x35\x62\x57\x71','\x57\x35\x35\x65\x57\x37\x2f\x63\x56\x61','\x57\x36\x79\x4b\x57\x51\x68\x63\x52\x6d\x6f\x2b\x57\x51\x4a\x63\x54\x71\x57','\x64\x78\x4c\x73\x7a\x76\x69\x75\x57\x51\x43\x4e','\x57\x51\x78\x64\x56\x68\x65\x78\x57\x4f\x79','\x57\x52\x37\x63\x4f\x33\x42\x64\x53\x66\x46\x63\x47\x63\x43','\x65\x66\x79\x34\x57\x50\x69\x75','\x57\x50\x53\x58\x57\x34\x66\x45\x7a\x47\x4b','\x57\x50\x52\x63\x48\x53\x6b\x52','\x57\x36\x39\x6f\x57\x36\x4e\x63\x4c\x62\x4f','\x46\x38\x6f\x35\x57\x37\x61','\x73\x6d\x6f\x42\x6b\x6d\x6f\x43\x57\x51\x75','\x46\x6d\x6b\x78\x76\x47','\x64\x38\x6b\x2f\x68\x61','\x57\x51\x2f\x63\x4f\x33\x37\x64\x52\x33\x4b','\x57\x50\x4f\x39\x57\x51\x57','\x6b\x47\x4e\x64\x52\x38\x6f\x70\x57\x52\x57','\x65\x67\x6e\x73\x6b\x76\x65','\x57\x50\x37\x63\x48\x53\x6b\x35\x57\x4f\x44\x65\x62\x38\x6f\x34\x57\x52\x79','\x6f\x76\x78\x64\x4c\x6d\x6f\x43\x57\x36\x4b','\x7a\x6d\x6f\x52\x63\x77\x6c\x63\x48\x71','\x57\x51\x46\x64\x50\x75\x34\x47\x57\x4f\x4e\x63\x51\x61','\x79\x4e\x53\x2f\x69\x6d\x6f\x46','\x6a\x57\x71\x46\x65\x63\x79','\x57\x51\x5a\x63\x55\x78\x71','\x57\x37\x37\x63\x53\x53\x6b\x58\x7a\x49\x37\x63\x49\x65\x42\x63\x4c\x47','\x57\x50\x6d\x54\x57\x34\x62\x7a\x43\x61','\x57\x35\x2f\x63\x52\x33\x31\x77\x57\x37\x72\x44','\x61\x53\x6b\x2b\x57\x34\x4e\x63\x4a\x61','\x57\x52\x4e\x64\x56\x73\x37\x63\x4d\x71','\x57\x34\x39\x72\x78\x6d\x6f\x55','\x57\x50\x58\x67\x57\x52\x68\x64\x48\x73\x6d','\x57\x51\x30\x5a\x57\x51\x76\x47\x57\x4f\x56\x64\x4f\x61','\x57\x51\x2f\x63\x49\x43\x6b\x44\x43\x32\x71','\x42\x57\x64\x64\x50\x6d\x6b\x6b\x57\x37\x33\x63\x4d\x65\x47\x31','\x74\x38\x6f\x42\x57\x37\x37\x63\x53\x76\x30','\x44\x43\x6b\x46\x75\x53\x6f\x6b\x57\x36\x5a\x64\x50\x33\x68\x63\x4f\x47','\x43\x43\x6f\x7a\x57\x36\x6c\x63\x54\x76\x30','\x64\x53\x6b\x50\x45\x43\x6b\x6d\x57\x35\x4e\x63\x56\x4e\x2f\x64\x56\x57','\x57\x34\x34\x52\x57\x50\x38\x49\x57\x51\x4c\x32\x45\x71','\x57\x51\x56\x63\x4f\x33\x33\x64\x51\x4c\x70\x63\x4e\x47','\x45\x6d\x6b\x63\x76\x53\x6f\x6e\x57\x36\x33\x64\x55\x33\x4e\x63\x4a\x57','\x57\x35\x6c\x64\x4d\x4b\x2f\x64\x4a\x4a\x64\x64\x4b\x68\x5a\x63\x54\x4d\x30\x53\x57\x4f\x57\x6e','\x44\x64\x42\x64\x53\x43\x6f\x62\x57\x51\x30','\x57\x35\x52\x64\x4d\x64\x33\x64\x48\x66\x53','\x45\x43\x6b\x79\x78\x6d\x6f\x47\x57\x4f\x6c\x63\x4f\x77\x38\x45','\x41\x6d\x6f\x4a\x66\x73\x6a\x46','\x45\x59\x54\x45','\x64\x38\x6b\x52\x41\x71','\x57\x37\x62\x4d\x57\x37\x4b\x33\x57\x51\x2f\x64\x4d\x6d\x6f\x42\x57\x35\x57\x74\x57\x35\x53','\x57\x51\x42\x64\x50\x4b\x79\x57\x57\x4f\x64\x63\x55\x38\x6f\x61\x70\x47','\x44\x72\x46\x63\x51\x53\x6b\x74\x57\x50\x47\x39\x57\x35\x76\x41','\x57\x50\x52\x64\x4c\x6d\x6b\x6a\x57\x52\x38\x77\x57\x35\x69','\x57\x50\x6d\x31\x57\x51\x38\x71\x57\x4f\x50\x2f\x78\x38\x6b\x71','\x6d\x30\x31\x4c\x64\x76\x43','\x57\x36\x4a\x63\x55\x31\x50\x58\x57\x35\x61','\x57\x50\x34\x47\x57\x37\x72\x76\x42\x47','\x57\x51\x42\x63\x52\x58\x79\x54\x57\x35\x43','\x57\x50\x64\x64\x4b\x6d\x6b\x74\x57\x52\x4b\x6f\x57\x50\x70\x64\x52\x77\x75','\x57\x50\x71\x47\x57\x34\x47','\x65\x72\x71\x2f\x6b\x49\x4a\x63\x55\x38\x6f\x4a','\x57\x34\x64\x64\x4e\x61\x46\x64\x50\x78\x6c\x63\x4d\x74\x6e\x38','\x57\x51\x4a\x64\x4f\x64\x46\x63\x4b\x57','\x64\x62\x39\x35\x65\x73\x6e\x5a\x57\x37\x4c\x50','\x57\x36\x6c\x64\x50\x65\x71\x37\x57\x35\x44\x72','\x65\x43\x6b\x4c\x57\x35\x33\x64\x53\x43\x6f\x75\x6d\x4e\x47','\x6b\x61\x44\x32\x57\x34\x58\x32\x73\x38\x6f\x62','\x57\x50\x78\x64\x48\x53\x6b\x6f\x57\x4f\x57\x33','\x57\x35\x43\x33\x57\x50\x64\x63\x55\x38\x6f\x4f','\x69\x48\x43\x56\x6d\x72\x6d','\x6c\x4c\x70\x64\x51\x38\x6f\x45\x57\x35\x79','\x79\x77\x69\x4c\x6b\x57','\x44\x72\x64\x64\x4c\x38\x6b\x6d\x42\x71','\x57\x36\x6c\x63\x4c\x38\x6f\x37\x57\x51\x42\x63\x47\x61','\x57\x52\x52\x63\x51\x32\x70\x64\x53\x61','\x76\x57\x4e\x64\x4f\x6d\x6f\x64\x57\x4f\x71\x79\x57\x36\x43\x73','\x43\x6d\x6f\x41\x57\x35\x4e\x63\x47\x65\x61','\x57\x50\x74\x63\x47\x62\x52\x63\x4a\x57','\x6d\x43\x6b\x59\x57\x37\x56\x64\x47\x6d\x6f\x64','\x67\x38\x6f\x41\x46\x43\x6f\x49\x57\x52\x57','\x6f\x4e\x33\x63\x51\x6d\x6b\x4c\x73\x4a\x76\x64\x73\x47','\x57\x36\x64\x63\x4f\x4b\x5a\x63\x51\x53\x6f\x31\x63\x53\x6b\x7a\x57\x4f\x4b','\x57\x4f\x43\x5a\x57\x51\x79\x75\x57\x4f\x43','\x57\x50\x52\x63\x48\x53\x6b\x32\x57\x4f\x72\x49\x63\x47','\x66\x32\x76\x75\x6d\x71','\x57\x50\x4b\x48\x57\x34\x6a\x42\x44\x58\x6d','\x42\x53\x6f\x48\x57\x36\x42\x63\x4b\x61','\x57\x34\x54\x72\x74\x6d\x6f\x53\x57\x36\x74\x63\x49\x6d\x6b\x41\x6f\x47','\x57\x51\x61\x59\x57\x51\x38','\x57\x4f\x37\x63\x49\x72\x52\x63\x4d\x31\x52\x63\x47\x76\x68\x63\x53\x71','\x57\x37\x42\x63\x54\x43\x6f\x30\x57\x50\x56\x63\x48\x68\x68\x64\x4e\x6d\x6f\x63','\x41\x53\x6f\x37\x57\x37\x37\x63\x4e\x76\x74\x63\x54\x53\x6f\x6e\x57\x51\x57','\x73\x38\x6f\x6f\x6b\x65\x74\x63\x4a\x71','\x62\x57\x43\x46\x69\x4a\x64\x64\x56\x53\x6b\x38\x57\x35\x79','\x6d\x53\x6b\x6e\x57\x36\x37\x64\x50\x38\x6f\x4d','\x44\x33\x47\x4b\x62\x53\x6f\x42\x57\x35\x6c\x64\x51\x61','\x65\x4c\x6c\x63\x4f\x6d\x6b\x77\x57\x34\x76\x62\x57\x52\x53\x43\x42\x6d\x6b\x44\x57\x52\x42\x63\x48\x65\x38','\x75\x53\x6f\x2b\x67\x6d\x6f\x2b\x72\x53\x6b\x73\x57\x36\x54\x71','\x62\x61\x6a\x6c\x41\x5a\x6c\x63\x55\x6d\x6f\x4f\x57\x35\x53','\x63\x4e\x57\x6c\x57\x52\x61\x52','\x43\x73\x37\x64\x48\x53\x6b\x36\x77\x61','\x57\x50\x47\x72\x57\x51\x53\x38\x57\x4f\x38','\x64\x67\x39\x68\x69\x77\x79\x71\x57\x51\x47\x66','\x74\x53\x6b\x38\x57\x4f\x2f\x63\x4e\x6d\x6f\x34\x57\x36\x79\x41\x6f\x71','\x57\x50\x72\x4e\x57\x4f\x4a\x64\x55\x64\x71','\x78\x6d\x6b\x57\x57\x35\x37\x63\x4c\x53\x6f\x37\x57\x51\x6e\x7a\x6e\x61','\x74\x53\x6b\x38\x57\x4f\x2f\x63\x4e\x6d\x6f\x34','\x46\x53\x6f\x34\x6a\x38\x6f\x64\x57\x4f\x65','\x57\x50\x4c\x32\x57\x50\x52\x64\x55\x63\x4a\x63\x4f\x6f\x6b\x62\x4d\x43\x6f\x6f','\x45\x6d\x6b\x45\x42\x6d\x6f\x69\x57\x35\x46\x64\x52\x4e\x6c\x63\x4e\x57','\x6e\x6d\x6b\x59\x73\x72\x4e\x64\x54\x31\x42\x63\x4d\x43\x6b\x74\x57\x50\x35\x4a\x57\x51\x33\x64\x4a\x53\x6b\x72','\x57\x50\x42\x64\x4b\x6d\x6b\x61\x6d\x43\x6b\x57\x64\x48\x57','\x57\x36\x54\x57\x57\x36\x6d','\x57\x52\x33\x64\x53\x6d\x6b\x65\x44\x49\x4e\x63\x48\x57\x4a\x63\x4e\x57','\x44\x53\x6f\x4f\x68\x4c\x74\x63\x53\x71','\x57\x34\x5a\x63\x50\x33\x4b','\x7a\x53\x6b\x62\x57\x50\x70\x63\x4c\x6d\x6f\x42','\x43\x5a\x34\x6f\x57\x35\x70\x63\x53\x71\x6c\x64\x4c\x49\x34','\x57\x37\x42\x63\x50\x4c\x4e\x63\x54\x47','\x57\x37\x6e\x41\x57\x37\x56\x63\x56\x5a\x68\x64\x51\x75\x6a\x6e','\x57\x50\x37\x64\x4c\x6d\x6b\x67\x57\x52\x57\x57\x57\x35\x2f\x63\x53\x71\x53','\x57\x51\x5a\x64\x4f\x64\x70\x63\x4d\x53\x6f\x4a','\x62\x6d\x6b\x49\x57\x34\x37\x64\x48\x53\x6f\x71\x6e\x76\x42\x63\x4a\x61','\x73\x48\x6c\x64\x4b\x38\x6f\x75\x57\x4f\x75\x72\x57\x37\x65','\x57\x37\x72\x57\x57\x36\x6c\x64\x51\x47','\x57\x52\x68\x64\x4c\x38\x6b\x78\x78\x73\x61','\x65\x53\x6b\x2f\x68\x53\x6f\x49\x61\x57','\x57\x52\x4a\x63\x48\x62\x61\x56\x57\x37\x46\x64\x50\x53\x6f\x54\x57\x37\x4b','\x43\x43\x6b\x46\x78\x43\x6f\x6a\x57\x34\x52\x64\x51\x47','\x79\x49\x7a\x6c\x57\x52\x52\x63\x4a\x59\x4a\x64\x55\x58\x57','\x66\x65\x7a\x42\x65\x53\x6b\x4c\x57\x36\x50\x79\x57\x37\x57','\x65\x72\x71\x79','\x57\x34\x48\x59\x57\x34\x52\x64\x4b\x61\x57','\x66\x33\x4f\x45\x57\x51\x38\x35\x6b\x65\x47','\x68\x53\x6f\x56\x79\x53\x6f\x72\x57\x52\x34','\x57\x50\x37\x63\x47\x68\x42\x64\x53\x68\x71','\x74\x75\x71\x56\x72\x77\x4c\x52\x57\x34\x7a\x6a\x57\x35\x76\x41\x6f\x53\x6f\x44','\x57\x34\x31\x31\x79\x38\x6f\x62\x57\x35\x53','\x44\x59\x44\x6c','\x69\x71\x4a\x64\x55\x57','\x57\x35\x44\x63\x64\x53\x6f\x30\x57\x36\x4e\x63\x48\x43\x6f\x6a\x46\x61','\x57\x50\x31\x59\x57\x50\x4e\x64\x53\x62\x2f\x64\x50\x73\x56\x63\x4f\x61','\x57\x52\x52\x63\x54\x33\x30\x4b\x57\x35\x6a\x4a\x45\x38\x6f\x45','\x6c\x58\x44\x69\x64\x73\x6d','\x57\x51\x43\x2f\x57\x51\x44\x49\x57\x4f\x57','\x57\x52\x68\x64\x55\x47\x68\x63\x4e\x38\x6f\x4f\x6e\x72\x78\x63\x50\x57','\x65\x68\x6e\x32\x67\x6d\x6f\x43','\x73\x4b\x39\x61\x7a\x57','\x57\x51\x30\x48\x57\x4f\x42\x63\x54\x6d\x6f\x73\x57\x36\x74\x64\x4a\x47','\x57\x50\x61\x30\x57\x37\x57\x62\x57\x50\x4f\x5a\x76\x53\x6b\x44','\x64\x38\x6b\x54\x42\x38\x6b\x66\x57\x34\x34','\x42\x43\x6f\x47\x57\x52\x78\x64\x4c\x72\x46\x63\x49\x53\x6f\x70\x57\x51\x47','\x57\x50\x64\x63\x47\x4b\x48\x34\x6b\x61','\x57\x52\x5a\x63\x4d\x72\x69\x31\x57\x36\x33\x64\x4f\x43\x6f\x36\x57\x34\x47','\x61\x77\x56\x63\x55\x53\x6f\x6c\x74\x74\x4c\x70\x63\x47','\x57\x4f\x71\x6a\x57\x4f\x72\x78\x57\x52\x52\x64\x48\x53\x6f\x4d\x57\x35\x79','\x45\x57\x31\x39\x57\x37\x2f\x63\x4a\x47','\x41\x38\x6f\x44\x69\x38\x6f\x6f\x57\x50\x61','\x74\x71\x33\x64\x54\x38\x6f\x52\x57\x51\x34','\x44\x6d\x6b\x6a\x43\x53\x6f\x43\x57\x34\x5a\x64\x4f\x32\x34','\x57\x4f\x4e\x63\x56\x64\x53\x34\x57\x36\x34','\x57\x34\x48\x72\x77\x53\x6f\x4f','\x6e\x65\x5a\x64\x47\x38\x6f\x70\x57\x34\x66\x31\x57\x4f\x43','\x57\x51\x68\x63\x52\x33\x2f\x64\x55\x75\x6c\x63\x48\x61','\x57\x34\x56\x63\x50\x77\x35\x47\x57\x37\x50\x71\x78\x71','\x7a\x43\x6b\x66\x62\x6d\x6b\x4a\x57\x52\x33\x63\x4e\x59\x30\x51\x66\x65\x34','\x57\x37\x44\x34\x57\x36\x74\x64\x51\x62\x38','\x76\x63\x39\x46\x57\x37\x72\x52\x6a\x66\x56\x63\x4d\x53\x6b\x59\x70\x67\x34','\x57\x4f\x64\x63\x50\x30\x69\x31\x6b\x78\x33\x63\x4a\x38\x6b\x33','\x79\x6d\x6f\x38\x62\x62\x62\x75','\x63\x48\x35\x59\x66\x5a\x71','\x57\x4f\x46\x63\x4f\x4c\x31\x38','\x57\x51\x30\x4f\x57\x4f\x5a\x63\x4f\x38\x6f\x45','\x57\x36\x68\x63\x4c\x77\x37\x63\x52\x53\x6f\x5a','\x57\x4f\x42\x63\x4b\x43\x6b\x52','\x57\x50\x4f\x31\x57\x36\x50\x6a\x72\x57','\x57\x52\x42\x64\x50\x4a\x70\x64\x4c\x53\x6f\x4e\x6b\x47\x64\x63\x51\x57','\x57\x34\x78\x63\x4e\x38\x6f\x75\x57\x52\x46\x63\x4f\x66\x68\x64\x54\x53\x6f\x31','\x76\x5a\x64\x64\x48\x53\x6b\x44','\x57\x37\x4a\x64\x4c\x38\x6f\x6a\x6a\x59\x65\x38\x57\x37\x71\x63\x6d\x38\x6f\x6b\x57\x34\x46\x64\x54\x57','\x57\x4f\x74\x63\x55\x76\x71','\x57\x50\x71\x50\x57\x34\x4b','\x75\x6d\x6f\x54\x6d\x6d\x6f\x6e','\x57\x4f\x42\x63\x49\x6d\x6b\x67\x77\x32\x30','\x57\x35\x6c\x64\x4e\x72\x4e\x64\x50\x78\x69','\x64\x43\x6b\x7a\x6b\x53\x6f\x33\x69\x57','\x64\x72\x31\x69\x61\x63\x6d\x32\x57\x36\x6e\x4e','\x72\x53\x6f\x79\x65\x53\x6f\x46\x57\x4f\x71','\x57\x51\x37\x63\x56\x78\x4a\x64\x49\x4d\x6d','\x62\x77\x44\x64','\x57\x52\x33\x64\x53\x38\x6b\x2b\x77\x62\x47','\x57\x34\x58\x35\x57\x36\x46\x64\x49\x71\x61','\x63\x61\x4f\x6f\x6d\x61','\x57\x4f\x37\x63\x47\x65\x7a\x79\x6f\x57','\x57\x34\x42\x64\x4c\x6d\x6b\x63\x65\x6d\x6b\x64\x63\x49\x79','\x65\x4b\x74\x63\x55\x43\x6f\x4e\x77\x61','\x66\x53\x6b\x4e\x57\x34\x4f','\x7a\x53\x6f\x44\x6c\x6d\x6f\x34\x57\x52\x71','\x6d\x67\x42\x63\x56\x43\x6f\x52\x73\x5a\x66\x6f\x79\x61','\x57\x35\x48\x43\x57\x37\x6c\x63\x47\x73\x43','\x76\x73\x4e\x64\x4c\x6d\x6b\x66','\x57\x36\x42\x63\x56\x38\x6f\x37\x57\x50\x52\x63\x4b\x32\x53','\x57\x51\x33\x63\x52\x6d\x6b\x4f\x57\x4f\x7a\x34\x6d\x53\x6f\x6d\x57\x51\x75','\x57\x36\x64\x64\x52\x4e\x75\x5a\x57\x35\x6e\x43\x79\x43\x6f\x56','\x72\x43\x6f\x4c\x63\x38\x6f\x51\x57\x52\x30','\x68\x43\x6b\x54\x44\x38\x6b\x44\x57\x34\x37\x64\x4f\x61','\x57\x36\x6d\x47\x57\x52\x61','\x78\x43\x6f\x66\x69\x38\x6f\x63\x57\x52\x61','\x57\x4f\x76\x49\x57\x4f\x56\x64\x56\x61','\x75\x4d\x4e\x64\x4a\x4c\x7a\x33','\x61\x38\x6b\x56\x57\x50\x6c\x64\x4d\x38\x6f\x66\x6e\x68\x37\x64\x48\x71','\x57\x50\x68\x63\x4b\x48\x79\x34\x57\x35\x43','\x69\x63\x35\x47\x43\x6d\x6b\x6a\x57\x4f\x42\x63\x55\x43\x6b\x61\x57\x34\x47\x6e\x57\x37\x4f\x50\x6e\x47','\x57\x52\x34\x6a\x57\x36\x50\x58\x42\x61','\x57\x52\x78\x64\x54\x53\x6b\x33\x43\x64\x69','\x42\x53\x6f\x63\x6e\x30\x4a\x63\x4c\x47','\x57\x35\x43\x37\x57\x52\x72\x72\x57\x51\x54\x46\x43\x38\x6f\x75','\x67\x6d\x6b\x53\x43\x53\x6b\x66\x57\x34\x2f\x64\x4a\x78\x56\x64\x50\x61','\x65\x72\x6e\x4f','\x66\x4d\x54\x6f\x57\x36\x35\x31\x6f\x66\x4e\x63\x49\x61','\x46\x6d\x6f\x54\x57\x37\x4a\x63\x47\x78\x30','\x64\x72\x31\x57\x65\x74\x38\x71\x57\x37\x54\x4c','\x65\x43\x6f\x35\x77\x6d\x6f\x30\x57\x52\x4f','\x72\x43\x6f\x42\x57\x36\x78\x63\x4e\x76\x74\x63\x51\x43\x6f\x50\x57\x50\x71','\x7a\x49\x6e\x45\x57\x37\x6d','\x44\x38\x6f\x4e\x57\x35\x74\x63\x49\x4b\x4a\x63\x4d\x6d\x6f\x63','\x72\x64\x4a\x64\x47\x57','\x69\x38\x6b\x62\x41\x6d\x6b\x51\x57\x34\x6d','\x61\x4d\x6e\x6b\x69\x65\x43','\x68\x4d\x76\x50\x6c\x66\x53','\x57\x36\x4c\x48\x57\x35\x33\x63\x50\x48\x43','\x57\x35\x4e\x64\x4b\x71\x42\x64\x53\x32\x64\x63\x4c\x4a\x4b','\x67\x38\x6b\x4a\x57\x34\x6c\x64\x4e\x43\x6f\x62\x43\x73\x78\x64\x4c\x71','\x63\x62\x75\x51\x6d\x73\x37\x63\x54\x53\x6f\x2f','\x43\x53\x6f\x58\x57\x37\x56\x63\x4e\x30\x37\x63\x4b\x71','\x6a\x48\x31\x42\x57\x35\x44\x30\x78\x53\x6f\x63','\x57\x52\x4e\x63\x56\x4e\x33\x64\x4b\x30\x75','\x73\x64\x33\x64\x4c\x57','\x57\x36\x68\x64\x4a\x66\x30\x72\x57\x34\x71','\x46\x76\x46\x64\x4e\x53\x6f\x53\x57\x36\x4a\x63\x4b\x61\x30\x56','\x6d\x67\x42\x63\x54\x43\x6f\x50\x73\x61\x54\x41\x76\x61','\x57\x35\x2f\x64\x4c\x43\x6b\x53\x61\x43\x6b\x75\x67\x63\x5a\x63\x4c\x57','\x57\x4f\x44\x59\x57\x50\x4e\x64\x50\x59\x6c\x64\x52\x47','\x41\x38\x6f\x47\x57\x37\x70\x64\x47\x61','\x6a\x33\x47\x43\x57\x51\x74\x64\x4e\x47\x78\x64\x4a\x62\x54\x34\x57\x34\x58\x35','\x6b\x58\x72\x39\x57\x35\x4c\x55\x71\x47','\x45\x43\x6f\x2b\x6d\x53\x6f\x78\x57\x50\x43','\x57\x51\x37\x63\x48\x77\x50\x2f\x62\x71','\x6d\x38\x6b\x33\x73\x43\x6b\x55\x57\x36\x71','\x71\x6d\x6f\x4d\x69\x57\x76\x63\x43\x4e\x69','\x6c\x48\x70\x64\x50\x43\x6f\x66','\x57\x51\x70\x63\x56\x33\x5a\x64\x56\x66\x70\x63\x4e\x47','\x57\x36\x47\x4f\x57\x51\x5a\x63\x52\x43\x6f\x46','\x57\x4f\x4e\x63\x55\x4a\x30\x54\x57\x35\x65','\x74\x75\x72\x6d\x64\x63\x61\x66\x57\x37\x4c\x55','\x57\x50\x2f\x63\x4b\x6d\x6b\x7a\x57\x50\x66\x4b\x61\x38\x6f\x4e','\x57\x4f\x4f\x69\x57\x52\x52\x63\x4a\x43\x6f\x4f','\x57\x52\x69\x2f\x57\x52\x66\x49','\x46\x32\x69\x37\x69\x43\x6f\x46\x57\x34\x6d','\x77\x38\x6f\x30\x6b\x53\x6f\x6f\x57\x52\x4f','\x57\x51\x68\x63\x47\x43\x6b\x63','\x57\x4f\x70\x64\x48\x4a\x46\x63\x4b\x38\x6f\x4f\x64\x64\x70\x63\x4e\x57','\x72\x53\x6f\x39\x57\x50\x46\x63\x48\x43\x6b\x64\x79\x75\x64\x63\x4f\x38\x6f\x6c\x57\x51\x4a\x63\x4e\x6d\x6b\x4b','\x57\x34\x76\x42\x57\x35\x2f\x63\x56\x49\x42\x64\x56\x68\x30','\x73\x74\x64\x64\x52\x43\x6b\x39\x45\x47','\x57\x34\x58\x46\x72\x43\x6f\x4c\x57\x36\x2f\x63\x4f\x38\x6f\x6d\x6f\x71','\x6f\x38\x6f\x64\x75\x38\x6f\x48\x57\x4f\x68\x63\x52\x4a\x38\x49','\x57\x50\x6c\x63\x4f\x4b\x4c\x39\x64\x4d\x37\x63\x49\x38\x6b\x48','\x57\x35\x7a\x46\x43\x43\x6f\x50\x57\x36\x2f\x63\x4d\x6d\x6f\x46\x6c\x47','\x57\x34\x46\x64\x4b\x43\x6f\x51\x57\x35\x65\x56\x6b\x53\x6f\x69\x57\x50\x56\x63\x4d\x4d\x5a\x63\x51\x47','\x57\x52\x7a\x67\x57\x34\x35\x4c\x57\x51\x61','\x57\x36\x78\x64\x4e\x43\x6b\x42\x6a\x53\x6b\x78','\x57\x34\x31\x66\x57\x37\x53','\x57\x34\x2f\x63\x47\x4c\x62\x54\x57\x37\x4f'];_0x5254=function(){return _0x36e933;};return _0x5254();}_0x28e697();'use strict';const {envInt:_0x23af94}=require(_0x13312b(0x1a7,'\x68\x64\x5e\x43')+'\x67'),_0x5b0444=(-0x587*0x1+0x91*0xf+0x96*-0x5)*(-0xb7d+-0x1d7c+0x1d*0x18d)*(0xbdf+0xbb6+-0x1395),_0x2d26be=0x1*-0x173f+0x29*-0xab+0x462a;let _0x2e63f9=null,_0x47e4de=-0x751*-0x4+-0x22d4+0x59*0x10,_0x58117f=null,_0x2615d8=![];function _0x5995ee(){var _0x4dd5d6=_0x13312b;return Date[_0x4dd5d6(0xfc,'\x61\x65\x61\x45')]();}function _0x3256fc(){var _0x35e00d=_0x13312b,_0x5cd3af={'\x59\x53\x76\x79\x4e':function(_0x16047c,_0xfefc0){return _0x16047c!==_0xfefc0;},'\x50\x4c\x70\x61\x72':function(_0x525553,_0x5f4554){return _0x525553(_0x5f4554);}};return _0x5cd3af[_0x35e00d(0x19b,'\x51\x59\x4f\x72')](_0x5cd3af[_0x35e00d(0x1fc,'\x40\x29\x75\x50')](String,process.env.EVOLVE_OPEN_PR_DEDUP||'\x31'),'\x30');}function _0x35f329(){var _0x281316=_0x13312b,_0x5ba06a={'\x4c\x48\x70\x66\x50':function(_0x25a57b,_0x53a2d1,_0x37fd13){return _0x25a57b(_0x53a2d1,_0x37fd13);},'\x4f\x6f\x4b\x71\x51':'\x45\x56\x4f\x4c\x56\x45\x5f\x4f'+_0x281316(0x122,'\x67\x67\x36\x29')+_0x281316(0x171,'\x4a\x65\x47\x74')};return _0x5ba06a['\x4c\x48\x70\x66\x50'](_0x23af94,_0x5ba06a[_0x281316(0x203,'\x74\x21\x4e\x55')],-0x6c78+-0x9*0xb17+0x1*0x1baa7);}function _0x3163(_0x120a52,_0x197942){_0x120a52=_0x120a52-(0x2560+-0x23c5*-0x1+0x1*-0x4841);var _0x26c14d=_0x5254();var _0x258bb4=_0x26c14d[_0x120a52];if(_0x3163['\x56\x63\x74\x4f\x52\x48']===undefined){var _0x4830fe=function(_0x43891d){var _0x126621='\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 _0x10f273='',_0x32c2e9='',_0x201822=_0x10f273+_0x4830fe,_0x241ad9=(''+function(){return-0x13f8+-0xb5*-0x1+-0x1*-0x1343;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(0x1*-0xe23+0x7a*0x14+0x3b*0x14);for(var _0x2ef554=-0x141c+0x1*-0x705+0x56d*0x5,_0x2b9d31,_0x145813,_0x1b82c8=-0x56*0x67+0xef*-0x2+-0x2478*-0x1;_0x145813=_0x43891d['\x63\x68\x61\x72\x41\x74'](_0x1b82c8++);~_0x145813&&(_0x2b9d31=_0x2ef554%(0x8b*-0x28+0x11ad*-0x1+-0xb1*-0x39)?_0x2b9d31*(-0x2196+-0xcd4+0x2eaa)+_0x145813:_0x145813,_0x2ef554++%(-0x240+0xc1*-0x7+-0x78b*-0x1))?_0x10f273+=_0x241ad9||_0x201822['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1b82c8+(-0x22f5+-0x985*0x1+0x2c84))-(-0x2b*0x1f+0x5f2+0x1*-0xb3)!==-0x25cf+0x5bd+-0x5*-0x66a?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x3f8+0x568+-0x71&_0x2b9d31>>(-(0xa9b+0x10e*-0x1b+-0xc7*-0x17)*_0x2ef554&0x5*-0x89+0x1*-0x1627+0x18da)):_0x2ef554:-0x1a19+0x17b8+0x261){_0x145813=_0x126621['\x69\x6e\x64\x65\x78\x4f\x66'](_0x145813);}for(var _0x5120a0=-0xfa4+0x423*0x1+0xb81,_0x13a081=_0x10f273['\x6c\x65\x6e\x67\x74\x68'];_0x5120a0<_0x13a081;_0x5120a0++){_0x32c2e9+='\x25'+('\x30\x30'+_0x10f273['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x5120a0)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x238d+0x87f+-0x2bfc))['\x73\x6c\x69\x63\x65'](-(0x1de1*-0x1+0x26b6+0x2f1*-0x3));}return decodeURIComponent(_0x32c2e9);};var _0x5e696f=function(_0x41c433,_0x5f5222){var _0x534a18=[],_0x32f7ea=-0x15b5+0x752+-0x7f*-0x1d,_0x50c682,_0xbe9717='';_0x41c433=_0x4830fe(_0x41c433);var _0x5d417f;for(_0x5d417f=0xfb*0x1e+0x1*0xc82+-0x1*0x29ec;_0x5d417f<-0xd2b*-0x1+0x5f5*0x3+-0x1e0a;_0x5d417f++){_0x534a18[_0x5d417f]=_0x5d417f;}for(_0x5d417f=-0x257e+-0x2131+0x46af;_0x5d417f<-0x3*0x1d+-0x36*0x4f+0x1201;_0x5d417f++){_0x32f7ea=(_0x32f7ea+_0x534a18[_0x5d417f]+_0x5f5222['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x5d417f%_0x5f5222['\x6c\x65\x6e\x67\x74\x68']))%(0x656*0x2+-0x26fd+0x1b51),_0x50c682=_0x534a18[_0x5d417f],_0x534a18[_0x5d417f]=_0x534a18[_0x32f7ea],_0x534a18[_0x32f7ea]=_0x50c682;}_0x5d417f=-0x1ba6+-0x1727+0x32cd,_0x32f7ea=0x7c*-0x25+0xc99+-0x1*-0x553;for(var _0x19590f=0x52c+0x14e9+-0x1a15;_0x19590f<_0x41c433['\x6c\x65\x6e\x67\x74\x68'];_0x19590f++){_0x5d417f=(_0x5d417f+(0x17f5*-0x1+0x22e0*-0x1+0x3ad6))%(-0x51f*-0x5+-0x1c78+0x2b*0x17),_0x32f7ea=(_0x32f7ea+_0x534a18[_0x5d417f])%(0x10*0x112+0x3*-0x115+-0x44b*0x3),_0x50c682=_0x534a18[_0x5d417f],_0x534a18[_0x5d417f]=_0x534a18[_0x32f7ea],_0x534a18[_0x32f7ea]=_0x50c682,_0xbe9717+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x41c433['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x19590f)^_0x534a18[(_0x534a18[_0x5d417f]+_0x534a18[_0x32f7ea])%(0x1f03+-0xe5*0x2b+-0x1*-0x874)]);}return _0xbe9717;};_0x3163['\x4f\x56\x4c\x73\x76\x62']=_0x5e696f,_0x3163['\x66\x63\x47\x66\x6f\x6d']={},_0x3163['\x56\x63\x74\x4f\x52\x48']=!![];}var _0x3b64d0=_0x26c14d[-0x5b2+0x2363+-0xb*0x2b3],_0x16ed11=_0x120a52+_0x3b64d0,_0x3e7f19=_0x3163['\x66\x63\x47\x66\x6f\x6d'][_0x16ed11];if(!_0x3e7f19){if(_0x3163['\x67\x68\x72\x65\x4a\x51']===undefined){var _0x1e5b2e=function(_0x429fde){this['\x44\x41\x7a\x64\x69\x47']=_0x429fde,this['\x6f\x64\x70\x6a\x56\x4d']=[0xd84+-0x23fb+0x1678*0x1,0x6ff+-0x178c+0x108d,-0x118d*0x2+0x1e61+0x193*0x3],this['\x6e\x53\x7a\x58\x78\x6a']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x63\x63\x61\x55\x50\x78']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x55\x65\x41\x6f\x6f\x48']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x1e5b2e['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x4c\x7a\x72\x59\x4a\x49']=function(){var _0x5c49b4=new RegExp(this['\x63\x63\x61\x55\x50\x78']+this['\x55\x65\x41\x6f\x6f\x48']),_0x8b3ba1=_0x5c49b4['\x74\x65\x73\x74'](this['\x6e\x53\x7a\x58\x78\x6a']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x6f\x64\x70\x6a\x56\x4d'][0xa0d*0x1+0x7a6*-0x2+0x540]:--this['\x6f\x64\x70\x6a\x56\x4d'][-0x1be7+0x390+0x5d*0x43];return this['\x6b\x66\x79\x55\x68\x70'](_0x8b3ba1);},_0x1e5b2e['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x6b\x66\x79\x55\x68\x70']=function(_0x54c658){if(!Boolean(~_0x54c658))return _0x54c658;return this['\x6f\x43\x77\x6b\x77\x69'](this['\x44\x41\x7a\x64\x69\x47']);},_0x1e5b2e['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x6f\x43\x77\x6b\x77\x69']=function(_0x5ee29d){for(var _0x24d769=0x109d*-0x2+0x1*-0x39+-0x1*-0x2173,_0x48a833=this['\x6f\x64\x70\x6a\x56\x4d']['\x6c\x65\x6e\x67\x74\x68'];_0x24d769<_0x48a833;_0x24d769++){this['\x6f\x64\x70\x6a\x56\x4d']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x48a833=this['\x6f\x64\x70\x6a\x56\x4d']['\x6c\x65\x6e\x67\x74\x68'];}return _0x5ee29d(this['\x6f\x64\x70\x6a\x56\x4d'][0x88d+-0x5e5*0x1+0x14*-0x22]);},(''+function(){return-0x35*-0x7f+-0x109e+-0x9ad;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0xf4*-0x28+-0xdf*0x1b+0x6*-0x26f)&&new _0x1e5b2e(_0x3163)['\x4c\x7a\x72\x59\x4a\x49'](),_0x3163['\x67\x68\x72\x65\x4a\x51']=!![];}_0x258bb4=_0x3163['\x4f\x56\x4c\x73\x76\x62'](_0x258bb4,_0x197942),_0x3163['\x66\x63\x47\x66\x6f\x6d'][_0x16ed11]=_0x258bb4;}else _0x258bb4=_0x3e7f19;return _0x258bb4;}function _0xf6e9ac(){var _0x31e61c=_0x13312b,_0x1cb099={'\x6c\x6c\x52\x55\x6a':function(_0x131ca5,_0x1755a8){return _0x131ca5(_0x1755a8);},'\x57\x64\x66\x49\x63':function(_0x2a26a3,_0x17ba6d){return _0x2a26a3(_0x17ba6d);},'\x53\x4a\x67\x6e\x42':function(_0x5b16fe,_0xd99a55){return _0x5b16fe(_0xd99a55);},'\x5a\x4e\x4d\x66\x44':function(_0x31b3ac,_0x4410a3){return _0x31b3ac===_0x4410a3;},'\x7a\x4b\x61\x41\x7a':_0x31e61c(0xf7,'\x74\x21\x4e\x55'),'\x67\x46\x6f\x6a\x4b':'\x67\x59\x6e\x71\x4b','\x57\x57\x63\x67\x5a':_0x31e61c(0x14a,'\x66\x32\x67\x24')+_0x31e61c(0x217,'\x39\x56\x6a\x57'),'\x6f\x47\x46\x66\x45':_0x31e61c(0x18e,'\x55\x25\x2a\x4e')+_0x31e61c(0x108,'\x55\x25\x2a\x4e')+_0x31e61c(0x143,'\x4c\x6f\x73\x44')+_0x31e61c(0x1e1,'\x74\x21\x4e\x55')+_0x31e61c(0x1f3,'\x59\x6d\x66\x47')+_0x31e61c(0xf2,'\x79\x6d\x39\x4c')+_0x31e61c(0x10b,'\x36\x78\x7a\x77')+_0x31e61c(0x21b,'\x73\x70\x61\x4f')+_0x31e61c(0x159,'\x4c\x6f\x73\x44'),'\x41\x76\x77\x55\x6f':_0x31e61c(0x164,'\x55\x25\x2a\x4e'),'\x41\x4c\x63\x77\x4b':_0x31e61c(0x1f2,'\x32\x64\x29\x33'),'\x70\x61\x51\x46\x4e':function(_0x3f6bf1,_0x1bdad8){return _0x3f6bf1||_0x1bdad8;},'\x6d\x4d\x6c\x63\x64':_0x31e61c(0x210,'\x35\x7a\x29\x25'),'\x64\x49\x6f\x61\x69':'\x5a\x6f\x63\x46\x54','\x4e\x54\x70\x6d\x50':_0x31e61c(0x150,'\x55\x25\x2a\x4e')+'\x20\x67\x68\x20\x70\x72\x20\x6c'+_0x31e61c(0x1b7,'\x70\x58\x65\x79')+_0x31e61c(0x1a8,'\x32\x64\x29\x33')+_0x31e61c(0x211,'\x7a\x6a\x47\x56')};try{if(_0x1cb099[_0x31e61c(0x168,'\x34\x6c\x64\x54')](_0x1cb099[_0x31e61c(0x132,'\x34\x6c\x64\x54')],_0x1cb099[_0x31e61c(0x142,'\x41\x30\x2a\x4f')]))return _0x1cb099[_0x31e61c(0x1b8,'\x44\x49\x67\x63')](_0x25c33a,_0x17c9a0[_0x31e61c(0xe7,'\x4c\x73\x25\x74')]||'');else{const _0x5bc0de=require(_0x1cb099[_0x31e61c(0x1df,'\x52\x6d\x44\x50')])['\x65\x78\x65\x63\x53\x79\x6e\x63'](_0x1cb099[_0x31e61c(0x12a,'\x73\x40\x7a\x74')],{'\x65\x6e\x63\x6f\x64\x69\x6e\x67':_0x1cb099[_0x31e61c(0x1e2,'\x52\x67\x6e\x68')],'\x74\x69\x6d\x65\x6f\x75\x74':_0x2d26be,'\x73\x74\x64\x69\x6f':[_0x31e61c(0x196,'\x33\x72\x66\x38'),'\x70\x69\x70\x65',_0x1cb099[_0x31e61c(0x16e,'\x63\x57\x4c\x31')]],'\x6d\x61\x78\x42\x75\x66\x66\x65\x72':_0x5b0444}),_0xd18889=JSON[_0x31e61c(0x192,'\x39\x56\x6a\x57')](_0x1cb099['\x70\x61\x51\x46\x4e'](_0x5bc0de,'\x5b\x5d'));if(!Array[_0x31e61c(0x15a,'\x7a\x6a\x47\x56')](_0xd18889))return[];return _0xd18889[_0x31e61c(0x15e,'\x40\x29\x75\x50')](function(_0x4a48ef){var _0x2d4572=_0x31e61c,_0x1f235f={'\x6e\x59\x48\x77\x4d':function(_0xff8a2a,_0x49f0b2){var _0x44ca9b=_0x3163;return _0x1cb099[_0x44ca9b(0x19e,'\x66\x32\x67\x24')](_0xff8a2a,_0x49f0b2);}};return{'\x6e\x75\x6d\x62\x65\x72':_0x4a48ef['\x6e\x75\x6d\x62\x65\x72'],'\x74\x69\x74\x6c\x65':_0x1cb099[_0x2d4572(0xf8,'\x61\x21\x41\x33')](String,_0x4a48ef[_0x2d4572(0x199,'\x4c\x73\x25\x74')]||''),'\x68\x65\x61\x64\x52\x65\x66\x4e\x61\x6d\x65':_0x1cb099[_0x2d4572(0x197,'\x40\x29\x75\x50')](String,_0x4a48ef[_0x2d4572(0x1c6,'\x64\x58\x28\x37')+_0x2d4572(0x1be,'\x55\x25\x2a\x4e')]||''),'\x66\x69\x6c\x65\x73':Array[_0x2d4572(0x16a,'\x52\x67\x6e\x68')](_0x4a48ef['\x66\x69\x6c\x65\x73'])?_0x4a48ef[_0x2d4572(0x129,'\x51\x59\x4f\x72')][_0x2d4572(0x1c1,'\x73\x40\x7a\x74')](function(_0x4117f6){var _0x3a1f5f=_0x2d4572;return _0x1f235f[_0x3a1f5f(0x1ed,'\x63\x57\x4c\x31')](String,_0x4117f6[_0x3a1f5f(0x189,'\x39\x72\x6c\x4d')]||'');})[_0x2d4572(0x1ab,'\x39\x72\x6c\x4d')](Boolean):[]};});}}catch(_0x522b67){var _0x747d96=_0x522b67&&_0x522b67[_0x31e61c(0x158,'\x51\x59\x4f\x72')]?String(_0x522b67[_0x31e61c(0x191,'\x68\x64\x5e\x43')]):'';if(/not found|ENOENT|command not found/i['\x74\x65\x73\x74'](_0x747d96)){if(_0x1cb099['\x6d\x4d\x6c\x63\x64']===_0x1cb099[_0x31e61c(0x109,'\x34\x6c\x64\x54')]){if(_0x3bf443[_0x31e61c(0x224,'\x55\x63\x78\x5d')](_0x1d0420))_0x30f7d6++;}else!_0x2615d8&&(_0x2615d8=!![],console[_0x31e61c(0x1d2,'\x66\x7a\x41\x28')](_0x31e61c(0x176,'\x32\x64\x29\x33')+_0x31e61c(0x149,'\x33\x72\x66\x38')+_0x31e61c(0x121,'\x32\x64\x29\x33')+_0x31e61c(0x220,'\x21\x26\x54\x79')+_0x31e61c(0xf3,'\x6e\x74\x55\x77')+'\x64\x65\x64\x75\x70\x20\x64\x69'+_0x31e61c(0x20b,'\x66\x7a\x41\x28')+_0x31e61c(0xfd,'\x66\x7a\x41\x28')+_0x31e61c(0x162,'\x25\x59\x56\x5a')+'\x20\x49\x6e\x73\x74\x61\x6c\x6c'+_0x31e61c(0x1d6,'\x61\x65\x61\x45')+_0x31e61c(0xe6,'\x79\x6d\x39\x4c')+_0x31e61c(0x10c,'\x45\x63\x6f\x4e')+_0x31e61c(0x18f,'\x64\x58\x28\x37')+_0x31e61c(0x215,'\x73\x40\x7a\x74')+_0x31e61c(0x1c4,'\x61\x65\x61\x45')));}else console[_0x31e61c(0x1fe,'\x61\x21\x41\x33')](_0x1cb099[_0x31e61c(0xe5,'\x73\x70\x61\x4f')]+_0x747d96[_0x31e61c(0x11d,'\x4a\x65\x47\x74')](0x141*0xc+-0x10a3+-0x197*-0x1,-0xfcd+0x17d8+-0x743));return[];}}function _0x1f7e26(_0x2f340f){var _0x14509a=_0x13312b,_0x5976c7={'\x62\x48\x4c\x48\x61':function(_0x53d8b6){return _0x53d8b6();},'\x6f\x71\x46\x75\x44':function(_0x51c685){return _0x51c685();},'\x51\x4f\x6b\x49\x67':function(_0x3f332c,_0x208d00){return _0x3f332c<_0x208d00;},'\x6d\x47\x53\x69\x69':'\x73\x61\x6e\x4c\x4c','\x42\x6c\x51\x61\x4e':_0x14509a(0x1c7,'\x54\x76\x67\x48'),'\x56\x63\x6c\x75\x48':function(_0x547325,_0x91b882){return _0x547325!==_0x91b882;}};if(!_0x5976c7['\x62\x48\x4c\x48\x61'](_0x3256fc))return[];var _0x35facd=_0x2f340f&&Number[_0x14509a(0x1a2,'\x21\x26\x54\x79')](_0x2f340f[_0x14509a(0x138,'\x68\x64\x5e\x43')])?_0x2f340f[_0x14509a(0x15d,'\x61\x21\x41\x33')]:_0x5976c7[_0x14509a(0x120,'\x31\x4d\x49\x49')](_0x35f329),_0x5c8e28=_0x5976c7[_0x14509a(0x182,'\x73\x72\x6b\x46')](_0x5995ee)-_0x47e4de;if(_0x2e63f9&&_0x5976c7[_0x14509a(0x1d7,'\x55\x25\x2a\x4e')](_0x5c8e28,_0x35facd))return _0x2e63f9;if(_0x58117f)return _0x2e63f9||[];_0x58117f=!![];try{if(_0x5976c7[_0x14509a(0x10d,'\x79\x6d\x39\x4c')]!==_0x5976c7['\x42\x6c\x51\x61\x4e']){var _0x69e5c4=_0x5976c7[_0x14509a(0xee,'\x56\x40\x74\x6f')](_0xf6e9ac);return _0x2e63f9=_0x69e5c4,_0x47e4de=_0x5995ee(),_0x69e5c4;}else{if(_0x5e95eb[_0x14509a(0x175,'\x6f\x70\x68\x42')](_0x1e5ab1))_0x4ef04a[_0x14509a(0x20a,'\x55\x25\x2a\x4e')](_0xcf1ad6);}}finally{if(_0x5976c7[_0x14509a(0x174,'\x79\x6c\x32\x59')](_0x14509a(0x1b2,'\x73\x70\x61\x4f'),_0x14509a(0x1ea,'\x70\x58\x65\x79')))_0x58117f=![];else{var _0x584007=_0x586f5b[_0x14509a(0x110,'\x74\x28\x70\x73')](_0x4d614d[_0x14509a(0x1d5,'\x6f\x70\x68\x42')])?_0x722487[_0x14509a(0x1ce,'\x31\x4d\x49\x49')][_0x14509a(0x1ca,'\x39\x72\x6c\x4d')](-0x808+-0x18e2+0x20ea,0x3d3+-0xf5f+0xb91):[],_0x3107b8={};_0x3107b8[_0x14509a(0x1bb,'\x31\x4d\x49\x49')]=_0x510641[_0x14509a(0x19a,'\x51\x59\x4f\x72')],_0x3107b8[_0x14509a(0xea,'\x32\x64\x29\x33')]=_0x529526['\x74\x69\x74\x6c\x65'],_0x3107b8[_0x14509a(0xe9,'\x25\x2a\x4d\x74')+_0x14509a(0x12e,'\x70\x58\x65\x79')]=_0x53969f[_0x14509a(0x1d8,'\x74\x28\x70\x73')+_0x14509a(0x126,'\x31\x4d\x49\x49')],_0x3107b8['\x66\x69\x6c\x65\x73']=_0x584007,_0x3107b8['\x74\x6f\x6b\x65\x6e\x4f\x76\x65'+_0x14509a(0x1b5,'\x68\x64\x5e\x43')]=_0x359925,_0x2f6b08[_0x14509a(0x139,'\x40\x29\x75\x50')](_0x3107b8);}}}function _0x1f9060(_0x4d225d){var _0x386859=_0x13312b,_0x369882={'\x47\x4f\x74\x67\x53':function(_0x419843,_0x1c0015){return _0x419843!==_0x1c0015;},'\x49\x69\x66\x67\x64':function(_0x21a7cc,_0x342a71){return _0x21a7cc(_0x342a71);},'\x50\x52\x65\x79\x42':_0x386859(0x1b0,'\x52\x6d\x44\x50'),'\x66\x4a\x65\x75\x62':function(_0x5a8bab){return _0x5a8bab();},'\x42\x57\x76\x70\x49':_0x386859(0x205,'\x4c\x73\x25\x74')+_0x386859(0x1e9,'\x33\x72\x66\x38'),'\x58\x6b\x51\x52\x4b':_0x386859(0x225,'\x56\x40\x74\x6f')+_0x386859(0x221,'\x74\x28\x70\x73'),'\x46\x62\x74\x53\x7a':_0x386859(0x13c,'\x34\x77\x59\x54')+_0x386859(0xf4,'\x7a\x6a\x47\x56'),'\x6e\x4e\x4c\x78\x7a':function(_0x9b518a,_0x2000b6){return _0x9b518a<_0x2000b6;},'\x4b\x4f\x54\x64\x76':function(_0x471a4e,_0x3f8a5c){return _0x471a4e===_0x3f8a5c;},'\x59\x76\x50\x73\x44':function(_0x54f8e2,_0x22b101){return _0x54f8e2/_0x22b101;},'\x61\x6c\x76\x4e\x47':function(_0x5b3ae2,_0x307663){return _0x5b3ae2||_0x307663;},'\x58\x77\x41\x55\x63':_0x386859(0x17d,'\x66\x7a\x41\x28')+_0x386859(0x105,'\x4a\x65\x47\x74')};if(!_0x369882['\x66\x4a\x65\x75\x62'](_0x3256fc))return{'\x6f\x76\x65\x72\x6c\x61\x70':![],'\x72\x65\x61\x73\x6f\x6e':_0x369882[_0x386859(0x194,'\x79\x6c\x32\x59')]};var _0x250ba2=_0x4d225d&&Array[_0x386859(0x133,'\x25\x59\x56\x5a')](_0x4d225d[_0x386859(0x137,'\x36\x78\x7a\x77')+_0x386859(0x131,'\x7a\x6a\x47\x56')])?_0x4d225d['\x63\x68\x61\x6e\x67\x65\x64\x46'+_0x386859(0x1b4,'\x52\x67\x6e\x68')]:[],_0x276fc1={};_0x276fc1[_0x386859(0x1f6,'\x71\x29\x5d\x4d')]=![],_0x276fc1[_0x386859(0x163,'\x21\x26\x54\x79')]=_0x369882[_0x386859(0x17f,'\x61\x6e\x5a\x68')];if(_0x250ba2[_0x386859(0x166,'\x71\x29\x5d\x4d')]===-0x5*0x235+0xf65+-0x45c)return _0x276fc1;var _0x126f28=_0x4d225d&&Array[_0x386859(0x152,'\x55\x25\x2a\x4e')](_0x4d225d['\x70\x72\x73'])?_0x4d225d[_0x386859(0x125,'\x34\x6c\x64\x54')]:_0x369882[_0x386859(0x10e,'\x79\x6c\x32\x59')](_0x1f7e26),_0x442f68={};_0x442f68[_0x386859(0x19c,'\x61\x6e\x5a\x68')]=![],_0x442f68[_0x386859(0x1cf,'\x73\x72\x6b\x46')]=_0x369882[_0x386859(0x1cb,'\x7a\x6a\x47\x56')];if(_0x126f28[_0x386859(0x114,'\x61\x21\x41\x33')]===0xb7c+-0xaa4+-0xd8)return _0x442f68;var _0x273cda=new Set(_0x250ba2[_0x386859(0x1c3,'\x33\x72\x66\x38')](String)),_0x16b379=null;for(var _0x54944e=0x201d+-0x104*0x7+-0x1901;_0x369882[_0x386859(0x200,'\x55\x25\x2a\x4e')](_0x54944e,_0x126f28[_0x386859(0x1d4,'\x45\x63\x6f\x4e')]);_0x54944e++){var _0x20a9a2=_0x126f28[_0x54944e];if(!_0x20a9a2||!Array[_0x386859(0xec,'\x52\x6d\x44\x50')](_0x20a9a2[_0x386859(0x21e,'\x73\x70\x61\x4f')])||_0x369882[_0x386859(0x190,'\x2a\x43\x53\x7a')](_0x20a9a2[_0x386859(0x198,'\x74\x21\x4e\x55')][_0x386859(0x207,'\x64\x58\x28\x37')],0x1af2+0xa*-0x26c+-0x2ba))continue;var _0x15b334=new Set(_0x20a9a2[_0x386859(0x101,'\x45\x63\x6f\x4e')][_0x386859(0x13f,'\x2a\x43\x53\x7a')](String)),_0x2d69b1=[];_0x273cda[_0x386859(0x115,'\x73\x72\x6b\x46')](function(_0x2cfc18){var _0x747831=_0x386859,_0x2007bf={'\x45\x49\x43\x6a\x43':function(_0xf64ad0,_0x1c1508){return _0x369882['\x47\x4f\x74\x67\x53'](_0xf64ad0,_0x1c1508);},'\x47\x6f\x77\x53\x55':function(_0x5aba28,_0x31cfe3){var _0x7bdc52=_0x3163;return _0x369882[_0x7bdc52(0x11a,'\x52\x67\x6e\x68')](_0x5aba28,_0x31cfe3);}};if(_0x747831(0x14d,'\x55\x25\x2a\x4e')===_0x369882[_0x747831(0x140,'\x79\x6c\x32\x59')]){if(_0x15b334[_0x747831(0x14b,'\x59\x6d\x66\x47')](_0x2cfc18))_0x2d69b1[_0x747831(0x1fb,'\x39\x72\x6c\x4d')](_0x2cfc18);}else return neZNzf[_0x747831(0x157,'\x68\x64\x5e\x43')](neZNzf['\x47\x6f\x77\x53\x55'](_0x4973fb,_0x17247b.env.EVOLVE_OPEN_PR_DEDUP||'\x31'),'\x30');});if(_0x369882[_0x386859(0x12c,'\x79\x6c\x32\x59')](_0x2d69b1[_0x386859(0x1f4,'\x34\x77\x59\x54')],-0xd5f+-0x2a1+0x1000))continue;var _0x4da951=_0x369882[_0x386859(0x1f8,'\x2a\x43\x53\x7a')](_0x2d69b1['\x6c\x65\x6e\x67\x74\x68'],_0x250ba2['\x6c\x65\x6e\x67\x74\x68']);if(!_0x16b379||_0x4da951>_0x16b379[_0x386859(0x17b,'\x74\x21\x4e\x55')+_0x386859(0x1d1,'\x32\x64\x29\x33')]){var _0x53a18a={};_0x53a18a[_0x386859(0x195,'\x40\x29\x75\x50')]=!![],_0x53a18a[_0x386859(0xf0,'\x63\x57\x4c\x31')]=_0x20a9a2[_0x386859(0x18a,'\x25\x59\x56\x5a')],_0x53a18a[_0x386859(0x1f0,'\x7a\x6a\x47\x56')]=_0x20a9a2[_0x386859(0x1ad,'\x6e\x74\x55\x77')],_0x53a18a[_0x386859(0xfe,'\x21\x26\x54\x79')+_0x386859(0xfb,'\x79\x6d\x39\x4c')]=_0x20a9a2[_0x386859(0x21a,'\x70\x58\x65\x79')+_0x386859(0x135,'\x4c\x6f\x73\x44')],_0x53a18a[_0x386859(0x1e6,'\x44\x49\x67\x63')+_0x386859(0x16b,'\x61\x65\x61\x45')]=_0x4da951,_0x53a18a[_0x386859(0xeb,'\x4c\x6f\x73\x44')+_0x386859(0x1bc,'\x64\x58\x28\x37')]=_0x2d69b1,_0x16b379=_0x53a18a;}}return _0x369882[_0x386859(0x1c8,'\x35\x7a\x29\x25')](_0x16b379,{'\x6f\x76\x65\x72\x6c\x61\x70':![],'\x72\x65\x61\x73\x6f\x6e':_0x369882['\x58\x77\x41\x55\x63']});}function _0x2b7d55(_0x1c20f6){var _0x34862a=_0x13312b,_0x4157ae={'\x53\x61\x49\x63\x4b':function(_0x565648,_0x512b13){return _0x565648>=_0x512b13;},'\x77\x4d\x61\x4e\x70':function(_0x5822d6,_0x56bda2){return _0x5822d6(_0x56bda2);},'\x73\x6f\x61\x78\x73':function(_0xa93aba,_0x2034e9){return _0xa93aba===_0x2034e9;},'\x46\x78\x54\x74\x76':_0x34862a(0x100,'\x59\x6d\x66\x47'),'\x6e\x6c\x48\x44\x5a':function(_0x1cac00,_0x20e98a){return _0x1cac00(_0x20e98a);},'\x59\x64\x48\x62\x4d':_0x34862a(0x161,'\x36\x78\x7a\x77')+'\x6f\x63\x65\x73\x73','\x75\x49\x56\x51\x4c':_0x34862a(0x106,'\x33\x72\x66\x38')+_0x34862a(0x14c,'\x39\x56\x6a\x57')+_0x34862a(0x21d,'\x73\x70\x61\x4f')+_0x34862a(0x1cd,'\x56\x40\x74\x6f')+_0x34862a(0x1da,'\x66\x32\x67\x24')+_0x34862a(0x119,'\x34\x6c\x64\x54')+'\x52\x65\x66\x4e\x61\x6d\x65\x2c'+'\x66\x69\x6c\x65\x73\x20\x2d\x2d'+'\x6c\x69\x6d\x69\x74\x20\x35\x30','\x6f\x61\x57\x52\x41':_0x34862a(0x1d0,'\x4c\x6f\x73\x44'),'\x6c\x6c\x4a\x50\x65':'\x69\x67\x6e\x6f\x72\x65','\x4f\x68\x77\x4d\x7a':_0x34862a(0x151,'\x79\x6d\x39\x4c'),'\x57\x54\x6c\x64\x53':function(_0x5c8413,_0x210fb2){return _0x5c8413||_0x210fb2;},'\x4b\x63\x5a\x54\x76':function(_0x434ec5,_0x533df2){return _0x434ec5-_0x533df2;},'\x67\x52\x43\x70\x73':function(_0x4f535d){return _0x4f535d();},'\x45\x4c\x6e\x67\x57':function(_0x362644,_0x5df536){return _0x362644<_0x5df536;},'\x79\x67\x74\x76\x4a':_0x34862a(0x206,'\x33\x72\x66\x38'),'\x44\x47\x57\x42\x58':_0x34862a(0x13d,'\x79\x6c\x32\x59'),'\x70\x62\x49\x75\x6e':function(_0x215f80,_0x5b95e2){return _0x215f80(_0x5b95e2);},'\x69\x51\x49\x51\x6e':function(_0x216649,_0x46a552){return _0x216649===_0x46a552;},'\x4a\x7a\x58\x44\x66':function(_0x49ed08,_0x36f980){return _0x49ed08!==_0x36f980;},'\x78\x51\x53\x77\x6b':_0x34862a(0xfa,'\x66\x7a\x41\x28'),'\x62\x69\x6f\x71\x4f':_0x34862a(0x1bd,'\x68\x64\x5e\x43'),'\x45\x71\x46\x54\x4b':function(_0x4add14,_0x32723d){return _0x4add14(_0x32723d);},'\x43\x71\x44\x72\x4f':function(_0x36f91d,_0x1fd3d4){return _0x36f91d===_0x1fd3d4;},'\x51\x61\x54\x65\x58':function(_0x41eb0b,_0x1ccdc9){return _0x41eb0b/_0x1ccdc9;},'\x4b\x4d\x46\x4d\x6f':function(_0x49b2f1,_0x2c524a){return _0x49b2f1>=_0x2c524a;},'\x58\x45\x73\x43\x68':function(_0x5821b3,_0x5b028a){return _0x5821b3!==_0x5b028a;},'\x6b\x64\x58\x69\x6d':_0x34862a(0x218,'\x40\x29\x75\x50')};if(!_0x3256fc())return[];var _0xbd8128=_0x1c20f6&&Array['\x69\x73\x41\x72\x72\x61\x79'](_0x1c20f6[_0x34862a(0x1b9,'\x61\x21\x41\x33')])?_0x1c20f6[_0x34862a(0x1a1,'\x55\x63\x78\x5d')]:[];if(_0xbd8128[_0x34862a(0x209,'\x31\x4d\x49\x49')]===-0x40c*-0x1+0x1f59+0x215*-0x11)return[];var _0x19b2f0=_0x1c20f6&&Array[_0x34862a(0x113,'\x54\x76\x67\x48')](_0x1c20f6[_0x34862a(0x11f,'\x64\x58\x28\x37')])?_0x1c20f6[_0x34862a(0x18c,'\x52\x67\x6e\x68')]:_0x4157ae[_0x34862a(0x11e,'\x4c\x73\x25\x74')](_0x1f7e26);if(_0x4157ae[_0x34862a(0x226,'\x35\x7a\x29\x25')](_0x19b2f0[_0x34862a(0x15b,'\x55\x25\x2a\x4e')],-0x2ce+-0x69f*-0x5+0x1*-0x1e4d))return[];var _0x1b0315=_0x1c20f6&&Number[_0x34862a(0x102,'\x32\x64\x29\x33')](_0x1c20f6[_0x34862a(0x1ff,'\x52\x6d\x44\x50')+'\x64'])?_0x1c20f6[_0x34862a(0x1f1,'\x51\x59\x4f\x72')+'\x64']:-0x460+-0x47f*-0x1+0x1f*-0x1+0.5;function _0xea08fd(_0x1de29d){var _0x2d7e85=_0x34862a,_0x461ce7={'\x4f\x73\x77\x69\x52':function(_0x20ac2f,_0x159556){return _0x4157ae['\x53\x61\x49\x63\x4b'](_0x20ac2f,_0x159556);}};return _0x4157ae[_0x2d7e85(0x18b,'\x54\x76\x67\x48')](String,_0x1de29d||'')[_0x2d7e85(0x10a,'\x63\x57\x4c\x31')+_0x2d7e85(0x1cc,'\x61\x21\x41\x33')]()[_0x2d7e85(0xf6,'\x39\x56\x6a\x57')](/[^a-z0-9]+/g,'\x20')['\x73\x70\x6c\x69\x74'](/\s+/)[_0x2d7e85(0x1dc,'\x61\x21\x41\x33')](function(_0x551e96){var _0x112586=_0x2d7e85;return _0x461ce7['\x4f\x73\x77\x69\x52'](_0x551e96[_0x112586(0x1a3,'\x52\x67\x6e\x68')],-0x4*0x5a7+-0xedb*-0x1+0x47*0x1c);});}var _0xf4e1dd=new Set();for(var _0x21f4aa=0x1940+-0x650+-0x12f0;_0x4157ae[_0x34862a(0x14f,'\x74\x21\x4e\x55')](_0x21f4aa,_0xbd8128[_0x34862a(0x1e8,'\x25\x2a\x4d\x74')]);_0x21f4aa++){_0x4157ae[_0x34862a(0x19f,'\x34\x77\x59\x54')]===_0x4157ae[_0x34862a(0x187,'\x34\x77\x59\x54')]?_0x5dcd95[_0x34862a(0x1aa,'\x64\x58\x28\x37')](_0x383ac1):_0x4157ae['\x70\x62\x49\x75\x6e'](_0xea08fd,_0xbd8128[_0x21f4aa])['\x66\x6f\x72\x45\x61\x63\x68'](function(_0x33e0f9){var _0x525c5a=_0x34862a;_0xf4e1dd[_0x525c5a(0x1af,'\x25\x2a\x4d\x74')](_0x33e0f9);});}if(_0x4157ae[_0x34862a(0x1d3,'\x21\x26\x54\x79')](_0xf4e1dd[_0x34862a(0x193,'\x61\x6e\x5a\x68')],-0x1*-0x26c4+0x2658+-0x4d1c))return[];var _0x403121=[];for(var _0x2dedbc=-0x1*-0x1555+-0x1036+-0x51f;_0x4157ae[_0x34862a(0x1bf,'\x79\x6c\x32\x59')](_0x2dedbc,_0x19b2f0[_0x34862a(0xf1,'\x74\x28\x70\x73')]);_0x2dedbc++){if(_0x4157ae[_0x34862a(0x180,'\x25\x59\x56\x5a')](_0x4157ae[_0x34862a(0x1ac,'\x79\x6d\x39\x4c')],_0x4157ae[_0x34862a(0x1c2,'\x61\x21\x41\x33')])){var _0x50275c=_0x19b2f0[_0x2dedbc];if(!_0x50275c)continue;var _0x583c7a=new Set();_0x4157ae[_0x34862a(0x1eb,'\x73\x72\x6b\x46')](_0xea08fd,_0x50275c[_0x34862a(0x1c5,'\x70\x58\x65\x79')])[_0x34862a(0x1f5,'\x4c\x6f\x73\x44')](function(_0x153d12){var _0x48ea82=_0x34862a;_0x583c7a[_0x48ea82(0x1ef,'\x31\x4d\x49\x49')](_0x153d12);}),_0x4157ae['\x6e\x6c\x48\x44\x5a'](_0xea08fd,_0x50275c[_0x34862a(0x1b6,'\x2a\x43\x53\x7a')+_0x34862a(0x181,'\x68\x64\x5e\x43')])[_0x34862a(0x213,'\x39\x72\x6c\x4d')](function(_0x43e3b8){var _0x3ab537=_0x34862a;if(_0x4157ae[_0x3ab537(0x21f,'\x79\x6c\x32\x59')](_0x4157ae[_0x3ab537(0x202,'\x4c\x6f\x73\x44')],_0x4157ae['\x46\x78\x54\x74\x76']))_0x583c7a[_0x3ab537(0x20c,'\x45\x63\x6f\x4e')](_0x43e3b8);else return _0x3a7c86['\x6e\x6f\x77']();});if(_0x4157ae[_0x34862a(0x1f9,'\x7a\x6a\x47\x56')](_0x583c7a[_0x34862a(0x172,'\x45\x63\x6f\x4e')],0xdf*-0x1c+-0x1dba+0x361e))continue;var _0x23ca5c=-0x1d*-0xb+-0x1b93+0x1a54;_0xf4e1dd[_0x34862a(0x186,'\x32\x64\x29\x33')](function(_0x4c7160){if(_0x583c7a['\x68\x61\x73'](_0x4c7160))_0x23ca5c++;});var _0x5ac0a3=_0x4157ae['\x51\x61\x54\x65\x58'](_0x23ca5c,_0xf4e1dd[_0x34862a(0x11c,'\x34\x6c\x64\x54')]);if(_0x4157ae[_0x34862a(0x146,'\x31\x4d\x49\x49')](_0x5ac0a3,_0x1b0315)){if(_0x4157ae[_0x34862a(0x154,'\x66\x32\x67\x24')](_0x34862a(0x212,'\x4c\x6f\x73\x44'),_0x4157ae[_0x34862a(0x1ec,'\x31\x4d\x49\x49')])){var _0x367cfd=Array[_0x34862a(0x170,'\x64\x58\x28\x37')](_0x50275c[_0x34862a(0x155,'\x70\x58\x65\x79')])?_0x50275c[_0x34862a(0x147,'\x56\x40\x74\x6f')][_0x34862a(0x11b,'\x59\x6d\x66\x47')](-0x14*-0x2+0x209d+-0x20c5,-0x224b+0x1*-0x1d66+0x3fb6*0x1):[],_0x59507f={};_0x59507f[_0x34862a(0x173,'\x39\x72\x6c\x4d')]=_0x50275c[_0x34862a(0x16c,'\x61\x21\x41\x33')],_0x59507f[_0x34862a(0x107,'\x66\x32\x67\x24')]=_0x50275c[_0x34862a(0x117,'\x55\x63\x78\x5d')],_0x59507f[_0x34862a(0x20d,'\x6f\x5a\x64\x45')+_0x34862a(0x135,'\x4c\x6f\x73\x44')]=_0x50275c[_0x34862a(0x1a0,'\x35\x7a\x29\x25')+_0x34862a(0xe4,'\x73\x72\x6b\x46')],_0x59507f[_0x34862a(0x16d,'\x2a\x43\x53\x7a')]=_0x367cfd,_0x59507f[_0x34862a(0x17a,'\x66\x7a\x41\x28')+'\x72\x6c\x61\x70']=_0x5ac0a3,_0x403121[_0x34862a(0x141,'\x21\x26\x54\x79')](_0x59507f);}else{var _0x2022b1={'\x7a\x6f\x4f\x69\x6f':function(_0x3207ff,_0x59594a){var _0x37e9d4=_0x34862a;return fXsKGo[_0x37e9d4(0x1fd,'\x67\x67\x36\x29')](_0x3207ff,_0x59594a);},'\x48\x73\x52\x47\x4f':function(_0x2ed651,_0x46873f){return _0x2ed651(_0x46873f);}};const _0x2495b3=fXsKGo[_0x34862a(0x1e0,'\x51\x59\x4f\x72')](_0x3768cc,fXsKGo[_0x34862a(0x144,'\x63\x57\x4c\x31')])[_0x34862a(0x1dd,'\x74\x28\x70\x73')](fXsKGo[_0x34862a(0x1ba,'\x39\x56\x6a\x57')],{'\x65\x6e\x63\x6f\x64\x69\x6e\x67':fXsKGo[_0x34862a(0x183,'\x44\x49\x67\x63')],'\x74\x69\x6d\x65\x6f\x75\x74':_0x1c089b,'\x73\x74\x64\x69\x6f':[fXsKGo[_0x34862a(0x179,'\x40\x29\x75\x50')],fXsKGo[_0x34862a(0x128,'\x6f\x70\x68\x42')],fXsKGo[_0x34862a(0x130,'\x55\x63\x78\x5d')]],'\x6d\x61\x78\x42\x75\x66\x66\x65\x72':_0x152e71}),_0x1f6b4f=_0x1a1cd5[_0x34862a(0xef,'\x73\x40\x7a\x74')](fXsKGo[_0x34862a(0x1a9,'\x40\x29\x75\x50')](_0x2495b3,'\x5b\x5d'));if(!_0x40012b[_0x34862a(0x18d,'\x4c\x73\x25\x74')](_0x1f6b4f))return[];return _0x1f6b4f[_0x34862a(0x1c3,'\x33\x72\x66\x38')](function(_0x20da29){var _0x2b57c1=_0x34862a;return{'\x6e\x75\x6d\x62\x65\x72':_0x20da29[_0x2b57c1(0x1c9,'\x44\x49\x67\x63')],'\x74\x69\x74\x6c\x65':_0x2022b1[_0x2b57c1(0x169,'\x66\x32\x67\x24')](_0x6b296b,_0x20da29[_0x2b57c1(0x167,'\x79\x6c\x32\x59')]||''),'\x68\x65\x61\x64\x52\x65\x66\x4e\x61\x6d\x65':_0x2007ae(_0x20da29[_0x2b57c1(0x1b1,'\x79\x6d\x39\x4c')+_0x2b57c1(0x1c0,'\x74\x28\x70\x73')]||''),'\x66\x69\x6c\x65\x73':_0x2cadcf[_0x2b57c1(0x178,'\x68\x64\x5e\x43')](_0x20da29[_0x2b57c1(0x1a5,'\x73\x72\x6b\x46')])?_0x20da29[_0x2b57c1(0x19d,'\x79\x6c\x32\x59')][_0x2b57c1(0x1e3,'\x79\x6d\x39\x4c')](function(_0x4e5000){var _0x6fda47=_0x2b57c1;return _0x2022b1[_0x6fda47(0x156,'\x70\x58\x65\x79')](_0x2cf18d,_0x4e5000[_0x6fda47(0x112,'\x66\x7a\x41\x28')]||'');})[_0x2b57c1(0x13e,'\x66\x32\x67\x24')](_0x1a45ed):[]};});}}}else _0x2449bf[_0x34862a(0x153,'\x40\x29\x75\x50')](_0x159948);}return _0x403121[_0x34862a(0x208,'\x70\x58\x65\x79')](function(_0x4e8c3f,_0x25cfd9){var _0x16d745=_0x34862a;return _0x4157ae[_0x16d745(0xf5,'\x55\x63\x78\x5d')](_0x25cfd9[_0x16d745(0x20f,'\x55\x25\x2a\x4e')+_0x16d745(0x201,'\x6f\x5a\x64\x45')],_0x4e8c3f[_0x16d745(0x14e,'\x59\x6d\x66\x47')+_0x16d745(0x123,'\x40\x29\x75\x50')]);}),_0x403121[_0x34862a(0x11b,'\x59\x6d\x66\x47')](-0x4d2+0x166a+0x2*-0x8cc,-0x14*0x64+0xdee+0x3*-0x209);}function _0x4e7814(){_0x2e63f9=null,_0x47e4de=-0x72+-0x19c5+-0x1a37*-0x1,_0x58117f=null,_0x2615d8=![];}var _0x158557={};_0x158557['\x67\x65\x74\x4f\x70\x65\x6e\x50'+'\x52\x73']=_0x1f7e26,_0x158557[_0x13312b(0x17c,'\x34\x6c\x64\x54')+_0x13312b(0x185,'\x4c\x6f\x73\x44')]=_0x1f9060,_0x158557['\x66\x69\x6e\x64\x53\x69\x67\x6e'+_0x13312b(0x15c,'\x71\x29\x5d\x4d')]=_0x2b7d55,_0x158557[_0x13312b(0xe8,'\x68\x64\x5e\x43')+'\x72\x54\x65\x73\x74\x69\x6e\x67']=_0x4e7814,module['\x65\x78\x70\x6f\x72\x74\x73']=_0x158557;
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
+ };