@evomap/evolver 1.91.0 → 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 (72) hide show
  1. package/index.js +1 -1
  2. package/package.json +1 -1
  3. package/src/atp/hubClient.js +13 -1
  4. package/src/evolve/guards.js +1 -1
  5. package/src/evolve/pipeline/collect.js +1 -1
  6. package/src/evolve/pipeline/dispatch.js +1 -1
  7. package/src/evolve/pipeline/enrich.js +1 -1
  8. package/src/evolve/pipeline/hub.js +1 -1
  9. package/src/evolve/pipeline/select.js +1 -1
  10. package/src/evolve/pipeline/signals.js +1 -1
  11. package/src/evolve/utils.js +1 -1
  12. package/src/evolve.js +1 -1
  13. package/src/gep/a2aProtocol.js +5175 -1
  14. package/src/gep/antiAbuseTelemetry.js +233 -1
  15. package/src/gep/assetStore.js +3 -2
  16. package/src/gep/autoDistillConv.js +205 -1
  17. package/src/gep/autoDistillLlm.js +315 -1
  18. package/src/gep/candidateEval.js +92 -1
  19. package/src/gep/candidates.js +1 -1
  20. package/src/gep/contentHash.js +30 -1
  21. package/src/gep/conversationDistiller.js +270 -1
  22. package/src/gep/conversationSniffer.js +266 -1
  23. package/src/gep/crypto.js +93 -1
  24. package/src/gep/curriculum.js +1 -1
  25. package/src/gep/deviceId.js +218 -1
  26. package/src/gep/envFingerprint.js +118 -1
  27. package/src/gep/epigenetics.js +31 -1
  28. package/src/gep/execBridge.js +712 -1
  29. package/src/gep/explore.js +289 -1
  30. package/src/gep/hash.js +15 -1
  31. package/src/gep/hubFetch.js +672 -1
  32. package/src/gep/hubReview.js +212 -1
  33. package/src/gep/hubSearch.js +544 -1
  34. package/src/gep/hubVerify.js +306 -1
  35. package/src/gep/learningSignals.js +1 -1
  36. package/src/gep/memoryGraph.js +1449 -1
  37. package/src/gep/memoryGraphAdapter.js +203 -1
  38. package/src/gep/mutation.js +1 -1
  39. package/src/gep/narrativeMemory.js +1 -1
  40. package/src/gep/openPRRegistry.js +205 -1
  41. package/src/gep/personality.js +1 -1
  42. package/src/gep/policyCheck.js +599 -1
  43. package/src/gep/prompt.js +1 -1
  44. package/src/gep/recallInject.js +409 -1
  45. package/src/gep/recallVerifier.js +318 -1
  46. package/src/gep/reflection.js +1 -1
  47. package/src/gep/savingsCore.js +1 -1
  48. package/src/gep/selector.js +1 -1
  49. package/src/gep/skillDistiller.js +1294 -1
  50. package/src/gep/solidify.js +1 -1
  51. package/src/gep/strategy.js +136 -1
  52. package/src/gep/tokenSavings.js +1 -1
  53. package/src/gep/trajectoryExport.js +3841 -1
  54. package/src/gep/workspaceKeychain.js +174 -1
  55. package/src/proxy/extensions/sessionHandler.js +123 -53
  56. package/src/proxy/extensions/traceControl.js +123 -1
  57. package/src/proxy/index.js +57 -2
  58. package/src/proxy/inject.js +52 -1
  59. package/src/proxy/router/messages_route.js +6 -0
  60. package/src/proxy/server/routes.js +40 -62
  61. package/src/proxy/trace/extractor.js +2355 -1
  62. package/src/proxy/trace/usage.js +105 -1
  63. package/src/webui/client/clientJs/bootstrap.js +6 -0
  64. package/src/webui/client/clientJs/github.js +225 -0
  65. package/src/webui/client/clientJs/i18n.js +14 -0
  66. package/src/webui/client/clientJs/index.js +3 -0
  67. package/src/webui/client/clientJs/pipelines.js +3 -1
  68. package/src/webui/client/indexHtml.js +10 -0
  69. package/src/webui/client/stylesCss.js +61 -0
  70. package/src/webui/observer/github.js +340 -0
  71. package/src/webui/observer/index.js +4 -0
  72. package/src/webui/server/routes.js +11 -0
@@ -1 +1,409 @@
1
- const _0x121674=_0x5543;(function(_0x3feeae,_0x1bd482){const _0x3d59c4=_0x5543,_0x587fa9=_0x3feeae();while(!![]){try{const _0x3b1165=parseInt(_0x3d59c4(0x25c,'\x54\x79\x55\x73'))/(0x14d1*0x1+-0x4f*0x3b+-0x29b)+parseInt(_0x3d59c4(0x1fb,'\x23\x57\x48\x45'))/(0x20c4+0x1cfb+-0x6d*0x91)+parseInt(_0x3d59c4(0x268,'\x65\x38\x43\x6e'))/(-0x28d*0x5+-0xc7d+0x86b*0x3)*(parseInt(_0x3d59c4(0x29c,'\x5a\x70\x6f\x67'))/(0x1b68+-0x4a6+-0x16be))+parseInt(_0x3d59c4(0x390,'\x6e\x51\x74\x7a'))/(0x257c+-0x1c88+-0x8ef*0x1)+parseInt(_0x3d59c4(0x315,'\x26\x6c\x69\x69'))/(-0x171e+0x2e*0x89+-0x17a)*(-parseInt(_0x3d59c4(0x34e,'\x75\x68\x33\x30'))/(-0x1d3*-0xd+0xd60*0x1+-0x1288*0x2))+parseInt(_0x3d59c4(0x2bf,'\x51\x68\x33\x4d'))/(0x22bd+-0x42*0x59+0xbc3*-0x1)*(parseInt(_0x3d59c4(0x227,'\x28\x4d\x72\x35'))/(0x1*0x769+-0x71d+-0x43))+-parseInt(_0x3d59c4(0x205,'\x4e\x68\x53\x48'))/(-0x1f9+-0x1481*0x1+0x20c*0xb)*(parseInt(_0x3d59c4(0x29f,'\x65\x38\x43\x6e'))/(0x1*-0xf69+-0xba9+0x1b1d));if(_0x3b1165===_0x1bd482)break;else _0x587fa9['push'](_0x587fa9['shift']());}catch(_0x3e49bf){_0x587fa9['push'](_0x587fa9['shift']());}}}(_0x358a,0xb062+-0x851*-0x11b+0x1*-0x1b4ba));const _0x552ca2=(function(){let _0x58a185=!![];return function(_0x3ce065,_0x40446e){const _0x1f8590=_0x58a185?function(){const _0x81a8d4=_0x5543;if(_0x40446e){const _0x28ecf8=_0x40446e[_0x81a8d4(0x207,'\x48\x6d\x31\x70')](_0x3ce065,arguments);return _0x40446e=null,_0x28ecf8;}}:function(){};return _0x58a185=![],_0x1f8590;};}()),_0x2ea8b0=_0x552ca2(this,function(){const _0x157cd5=_0x5543,_0x1173b1={};_0x1173b1[_0x157cd5(0x234,'\x79\x68\x5d\x5b')]='\x28\x28\x28\x2e\x2b\x29\x2b\x29'+_0x157cd5(0x318,'\x23\x28\x4c\x38');const _0x31be1c=_0x1173b1;return _0x2ea8b0[_0x157cd5(0x327,'\x34\x4f\x57\x7a')]()[_0x157cd5(0x24e,'\x75\x68\x33\x30')](_0x31be1c[_0x157cd5(0x37f,'\x26\x6c\x69\x69')])[_0x157cd5(0x286,'\x26\x71\x40\x35')]()[_0x157cd5(0x2ca,'\x5d\x66\x75\x6c')+_0x157cd5(0x285,'\x5d\x66\x75\x6c')](_0x2ea8b0)[_0x157cd5(0x2d9,'\x24\x39\x42\x5d')](_0x31be1c['\x4a\x44\x53\x42\x58']);});_0x2ea8b0();const _0x19293b=require(_0x121674(0x3b4,'\x26\x6c\x69\x69'));function _0x281f83(){const _0x591eb9=_0x121674,_0x463dde={'\x77\x56\x4b\x58\x74':function(_0x17e602,_0x6b4487){return _0x17e602(_0x6b4487);},'\x6b\x6b\x67\x64\x72':function(_0x43d945,_0xbc3798){return _0x43d945===_0xbc3798;},'\x5a\x78\x72\x53\x42':_0x591eb9(0x26b,'\x5d\x75\x66\x35'),'\x48\x69\x77\x46\x5a':function(_0xced6f3,_0x3ecd7a){return _0xced6f3===_0x3ecd7a;},'\x50\x73\x4a\x6e\x66':_0x591eb9(0x356,'\x5d\x75\x66\x35'),'\x66\x43\x45\x70\x4a':_0x591eb9(0x358,'\x5d\x66\x75\x6c')},_0x21795a=_0x463dde[_0x591eb9(0x289,'\x44\x5a\x6a\x63')](String,process.env.EVOLVER_RECALL_MODE||'')[_0x591eb9(0x2ec,'\x6c\x76\x5e\x64')+'\x61\x73\x65']()[_0x591eb9(0x2ea,'\x61\x53\x57\x66')]();return _0x463dde['\x6b\x6b\x67\x64\x72'](_0x21795a,_0x463dde[_0x591eb9(0x388,'\x54\x79\x55\x73')])||_0x463dde[_0x591eb9(0x3b0,'\x48\x6d\x31\x70')](_0x21795a,_0x463dde['\x50\x73\x4a\x6e\x66'])?_0x21795a:_0x463dde[_0x591eb9(0x216,'\x78\x67\x38\x38')];}function _0x1f66c4(){const _0xbbd183=_0x121674,_0x8b7add={'\x6f\x49\x73\x76\x76':function(_0x202b6b,_0x244437){return _0x202b6b(_0x244437);}},_0x6a5825=_0x8b7add[_0xbbd183(0x258,'\x78\x67\x38\x38')](Number,process.env.EVOLVER_RECALL_MIN_SIM);return Number[_0xbbd183(0x26c,'\x56\x4a\x47\x51')](_0x6a5825)&&_0x6a5825>-0x3af*0x4+-0x64e+0x150a*0x1&&_0x6a5825<=-0x955+0x15*0x15f+-0x125*0x11?_0x6a5825:0x1d9e+0x21b8+-0x3f56+0.75;}function _0x9c8db1(){const _0x4068d0=_0x121674,_0x70282c={'\x41\x75\x62\x45\x75':function(_0x30a443,_0x597b32,_0x57f380){return _0x30a443(_0x597b32,_0x57f380);},'\x73\x43\x59\x57\x59':function(_0x40576b,_0x2e0b23){return _0x40576b>_0x2e0b23;},'\x6d\x79\x61\x61\x51':function(_0x32694d,_0x82a385){return _0x32694d<=_0x82a385;}},_0x78a109=_0x70282c[_0x4068d0(0x3a4,'\x65\x38\x43\x6e')](parseInt,process.env.EVOLVER_RECALL_MAX,-0x1132+-0x93c*-0x2+0x1*-0x13c);return Number[_0x4068d0(0x279,'\x29\x68\x64\x5e')](_0x78a109)&&_0x70282c[_0x4068d0(0x283,'\x4d\x58\x79\x33')](_0x78a109,-0xd1e+0x125+-0x265*-0x5)&&_0x70282c[_0x4068d0(0x36e,'\x5d\x6a\x6b\x4b')](_0x78a109,-0xf3+-0xb5*0x23+0x19bc)?_0x78a109:-0x219*-0x8+-0x14f2+-0x61*-0xb;}const _0x264a6c=-0x22cd+0x190d+0xce0,_0x45f797=-0x24dd+-0xa2+0x2647;function _0x358a(){const _0x2bbb4d=['\x57\x37\x56\x64\x4c\x6d\x6f\x63\x57\x50\x54\x67','\x6a\x47\x42\x63\x48\x38\x6b\x65\x57\x34\x30','\x6c\x38\x6f\x63\x71\x6d\x6f\x4e\x57\x34\x69','\x61\x31\x4e\x63\x4b\x67\x78\x64\x4a\x6d\x6f\x59\x44\x53\x6b\x4c','\x6b\x6d\x6b\x68\x6e\x75\x4b','\x62\x38\x6b\x74\x57\x37\x6c\x64\x53\x75\x46\x63\x4f\x6d\x6b\x52\x57\x35\x34','\x46\x6d\x6f\x64\x67\x6d\x6b\x4b','\x77\x38\x6b\x78\x57\x51\x4c\x43\x73\x49\x46\x63\x50\x38\x6b\x4f','\x57\x51\x2f\x64\x4c\x63\x62\x50','\x62\x48\x52\x64\x4f\x78\x4e\x64\x47\x38\x6f\x30\x57\x50\x64\x63\x48\x71','\x57\x51\x70\x64\x4f\x76\x61\x38\x57\x52\x6d','\x64\x43\x6f\x56\x6f\x59\x57\x74','\x57\x35\x56\x64\x4a\x43\x6f\x6d','\x57\x34\x64\x63\x53\x6d\x6b\x54\x57\x52\x4a\x64\x4b\x57','\x71\x38\x6f\x79\x42\x6d\x6f\x6c\x57\x35\x76\x72','\x6f\x38\x6f\x51\x72\x43\x6f\x73\x57\x35\x79','\x57\x37\x70\x64\x56\x6d\x6b\x31\x57\x50\x39\x5a','\x57\x34\x64\x63\x48\x59\x71\x36','\x57\x34\x2f\x63\x4a\x6d\x6f\x39\x57\x34\x70\x64\x53\x47','\x57\x34\x68\x63\x4f\x38\x6b\x6a\x57\x50\x42\x64\x50\x47','\x57\x36\x74\x64\x47\x38\x6f\x2f\x57\x4f\x6a\x4a\x57\x50\x4a\x64\x55\x75\x69','\x75\x4b\x79\x56\x57\x34\x35\x73\x57\x34\x65\x72\x57\x52\x38','\x57\x36\x37\x64\x53\x43\x6b\x54\x57\x50\x7a\x68','\x65\x53\x6b\x47\x64\x65\x71\x2f','\x62\x6d\x6f\x75\x57\x51\x48\x57','\x57\x51\x68\x63\x54\x58\x35\x6d\x57\x50\x78\x64\x49\x68\x70\x63\x4a\x71','\x57\x36\x4a\x64\x52\x76\x72\x6c\x57\x50\x69','\x44\x53\x6b\x7a\x64\x38\x6f\x2b\x57\x52\x62\x44\x57\x35\x4f\x76','\x71\x53\x6b\x6a\x65\x53\x6f\x4a\x57\x51\x34','\x72\x75\x57\x4c\x57\x34\x47','\x77\x31\x68\x64\x47\x38\x6f\x31\x57\x4f\x2f\x63\x51\x53\x6b\x4e\x57\x35\x70\x63\x4e\x31\x4e\x64\x53\x43\x6f\x68\x71\x47','\x6d\x6d\x6f\x7a\x75\x43\x6f\x4e\x57\x35\x4f\x68\x57\x4f\x64\x63\x4a\x57','\x41\x78\x38\x79\x57\x35\x39\x77','\x57\x52\x70\x64\x53\x31\x69','\x78\x43\x6f\x32\x7a\x53\x6f\x52\x57\x34\x47','\x57\x36\x69\x58\x69\x30\x47\x4b\x57\x51\x4e\x63\x47\x57','\x66\x53\x6b\x4d\x68\x4e\x38\x61','\x79\x77\x42\x64\x48\x31\x46\x64\x52\x4a\x74\x64\x55\x47','\x62\x48\x5a\x64\x55\x77\x6c\x64\x4a\x6d\x6f\x57\x57\x52\x33\x63\x47\x47','\x6c\x6d\x6b\x78\x70\x4c\x75','\x68\x53\x6b\x79\x6e\x38\x6b\x43\x57\x34\x4e\x64\x4c\x76\x33\x63\x51\x71','\x57\x36\x6e\x55\x57\x4f\x2f\x63\x48\x63\x56\x64\x48\x47','\x76\x4c\x70\x64\x4a\x66\x70\x64\x54\x61','\x57\x35\x37\x63\x47\x6d\x6b\x4e\x57\x51\x7a\x52\x77\x38\x6f\x71','\x57\x52\x4c\x59\x57\x52\x4a\x64\x4e\x5a\x42\x63\x56\x6d\x6f\x4b','\x57\x36\x57\x77\x57\x36\x4a\x64\x4b\x43\x6b\x6e','\x57\x35\x4e\x63\x48\x43\x6f\x55\x73\x67\x34\x2b\x57\x50\x33\x63\x54\x57','\x57\x35\x5a\x63\x4c\x53\x6b\x32\x57\x51\x76\x51','\x57\x37\x50\x6e\x57\x36\x5a\x63\x54\x71','\x6a\x38\x6f\x75\x57\x51\x44\x58\x75\x59\x52\x63\x47\x38\x6b\x47','\x69\x38\x6b\x6d\x57\x34\x4e\x64\x51\x47','\x57\x35\x54\x6a\x6a\x53\x6b\x42\x66\x33\x6d\x49\x6b\x57','\x57\x37\x70\x64\x48\x6d\x6b\x7a\x57\x4f\x7a\x36\x57\x4f\x74\x63\x56\x71','\x57\x4f\x4a\x64\x55\x43\x6b\x50\x57\x51\x4e\x63\x53\x43\x6f\x6f\x74\x63\x4e\x63\x55\x64\x68\x63\x4b\x53\x6b\x39','\x57\x4f\x4e\x64\x49\x43\x6b\x57\x6c\x6d\x6b\x36\x6c\x5a\x58\x7a','\x57\x36\x48\x64\x67\x38\x6b\x6b','\x57\x52\x58\x47\x57\x4f\x33\x64\x49\x63\x78\x63\x51\x61','\x6c\x38\x6b\x78\x69\x66\x61\x35\x57\x34\x37\x64\x55\x57','\x64\x38\x6b\x69\x57\x34\x52\x64\x49\x6d\x6f\x65','\x74\x66\x64\x64\x56\x67\x4e\x64\x4a\x57','\x65\x57\x52\x64\x54\x67\x4e\x64\x4c\x71','\x57\x35\x70\x63\x4b\x64\x4b\x41\x57\x51\x66\x48\x45\x43\x6b\x45','\x57\x36\x4a\x63\x56\x53\x6b\x6b\x77\x75\x34','\x57\x35\x4e\x63\x4f\x38\x6f\x57\x57\x36\x2f\x64\x50\x38\x6b\x6d','\x68\x48\x78\x63\x4e\x6d\x6b\x54\x57\x35\x37\x64\x52\x53\x6f\x51','\x57\x36\x6a\x4f\x57\x52\x78\x63\x49\x67\x6c\x64\x4b\x38\x6b\x41\x57\x4f\x53','\x57\x34\x6c\x63\x56\x38\x6b\x33\x57\x4f\x46\x64\x4c\x4b\x68\x64\x56\x38\x6b\x42','\x57\x50\x56\x64\x53\x76\x4b\x34\x57\x51\x30','\x72\x6d\x6f\x54\x57\x34\x52\x63\x50\x4b\x4f','\x57\x37\x5a\x64\x52\x62\x39\x65\x57\x4f\x42\x64\x47\x33\x78\x63\x4d\x61','\x6e\x6d\x6f\x32\x57\x4f\x4c\x2f\x57\x37\x56\x64\x55\x63\x53','\x57\x51\x6d\x6a\x76\x4e\x33\x63\x53\x47','\x68\x53\x6f\x41\x6c\x74\x78\x63\x56\x57','\x7a\x38\x6b\x57\x62\x6d\x6b\x4d\x57\x36\x65','\x57\x35\x58\x61\x75\x33\x33\x63\x4c\x6d\x6f\x54','\x57\x37\x35\x44\x57\x36\x33\x63\x53\x38\x6b\x52\x6a\x72\x38\x45','\x6d\x43\x6f\x2f\x64\x64\x5a\x63\x52\x57','\x57\x36\x42\x64\x55\x47\x58\x33\x57\x50\x65','\x57\x37\x58\x71\x69\x43\x6b\x4d\x69\x57','\x57\x36\x64\x64\x4a\x53\x6b\x52\x57\x51\x44\x33\x57\x4f\x70\x63\x4a\x66\x79','\x73\x6d\x6f\x65\x57\x52\x4c\x79\x74\x48\x4e\x63\x52\x6d\x6b\x4c','\x6a\x53\x6f\x61\x66\x58\x69\x34','\x57\x37\x70\x63\x56\x38\x6b\x71\x57\x4f\x70\x64\x48\x76\x74\x64\x51\x6d\x6b\x6b','\x6b\x32\x37\x63\x56\x33\x2f\x64\x4e\x57','\x57\x37\x46\x64\x4e\x53\x6b\x53\x57\x4f\x43','\x43\x53\x6b\x6e\x57\x51\x31\x2f\x7a\x61','\x66\x76\x4e\x63\x4a\x77\x34','\x6f\x38\x6f\x33\x57\x51\x44\x47','\x57\x35\x4a\x63\x4d\x49\x57\x5a\x57\x4f\x44\x38\x78\x53\x6b\x76','\x6c\x6d\x6b\x64\x6f\x76\x75','\x57\x35\x33\x63\x4b\x43\x6b\x37\x57\x52\x31\x38\x78\x71','\x67\x38\x6f\x4d\x57\x51\x76\x70\x57\x36\x30','\x57\x34\x42\x64\x52\x57\x76\x50\x57\x4f\x69','\x78\x78\x69\x34\x73\x4e\x34','\x57\x37\x37\x63\x4a\x4d\x79\x37\x57\x51\x31\x49\x6f\x38\x6b\x48\x57\x35\x42\x64\x55\x4c\x70\x63\x4f\x57','\x57\x35\x78\x63\x52\x38\x6f\x2f\x57\x36\x2f\x64\x4e\x43\x6b\x6e\x46\x71\x38','\x57\x34\x74\x64\x48\x4d\x35\x47\x57\x50\x46\x64\x4b\x61','\x68\x48\x74\x63\x47\x38\x6b\x50\x57\x35\x68\x64\x55\x57','\x69\x38\x6b\x78\x57\x34\x33\x64\x4f\x53\x6f\x42\x57\x4f\x4a\x64\x48\x47\x38','\x57\x4f\x6c\x64\x4b\x53\x6b\x5a\x6a\x43\x6b\x39\x63\x61','\x6a\x43\x6f\x79\x57\x51\x50\x48\x77\x4a\x65','\x75\x38\x6b\x71\x57\x37\x50\x6e\x76\x48\x68\x63\x56\x43\x6f\x53','\x57\x51\x64\x64\x4c\x67\x4c\x32\x57\x50\x37\x63\x52\x6d\x6f\x74\x62\x57','\x57\x35\x44\x6e\x57\x34\x70\x63\x49\x30\x75\x30\x64\x66\x79','\x6e\x6d\x6b\x4d\x57\x35\x52\x64\x47\x43\x6f\x45','\x78\x30\x57\x63\x57\x34\x58\x77\x57\x35\x4b\x65\x57\x51\x34','\x57\x50\x4a\x64\x4b\x38\x6b\x53\x6d\x53\x6b\x39\x67\x71\x50\x71','\x57\x4f\x6d\x71\x74\x68\x33\x63\x4a\x71','\x78\x43\x6f\x32\x68\x38\x6b\x2b\x57\x52\x61','\x57\x52\x66\x4c\x57\x50\x30','\x57\x4f\x52\x64\x4b\x6d\x6b\x31','\x68\x43\x6b\x75\x6b\x38\x6b\x34\x57\x37\x4f','\x7a\x78\x39\x46\x64\x65\x33\x64\x4f\x38\x6f\x4f\x74\x38\x6f\x6e\x69\x53\x6f\x38\x69\x57','\x64\x6d\x6f\x45\x6e\x5a\x53','\x41\x43\x6b\x70\x6f\x38\x6f\x2b\x57\x52\x48\x6e\x57\x4f\x34\x73','\x57\x37\x48\x31\x69\x43\x6b\x79\x68\x61','\x6a\x6d\x6f\x41\x44\x77\x4a\x64\x4c\x62\x37\x63\x56\x72\x30','\x57\x34\x5a\x63\x4a\x38\x6b\x43\x57\x51\x72\x58','\x57\x36\x4a\x64\x56\x72\x4c\x54\x57\x4f\x46\x64\x48\x65\x46\x63\x4b\x57','\x76\x38\x6f\x75\x43\x6d\x6f\x74\x57\x35\x66\x61\x57\x50\x4f','\x6d\x43\x6f\x47\x57\x51\x7a\x51\x57\x37\x33\x64\x53\x71','\x6f\x53\x6f\x74\x61\x72\x47\x6a\x69\x6d\x6b\x4e','\x76\x48\x5a\x63\x49\x4b\x37\x64\x4d\x53\x6f\x5a\x42\x43\x6b\x68','\x57\x36\x6a\x6e\x57\x37\x33\x63\x47\x53\x6b\x6d\x6c\x59\x65\x77','\x77\x38\x6b\x75\x57\x51\x50\x76\x72\x57','\x57\x35\x4a\x63\x53\x38\x6b\x68\x57\x50\x4e\x64\x48\x61','\x6f\x6d\x6f\x74\x61\x71\x75','\x57\x52\x6c\x64\x56\x31\x6a\x2b\x57\x37\x4e\x63\x4b\x57','\x57\x52\x2f\x64\x4a\x5a\x44\x38\x57\x36\x47','\x6c\x38\x6f\x4f\x46\x65\x4e\x64\x4e\x61\x70\x63\x56\x71','\x57\x34\x33\x63\x51\x53\x6b\x79\x57\x4f\x78\x64\x4d\x66\x74\x64\x51\x6d\x6b\x77','\x57\x4f\x37\x63\x53\x6d\x6f\x48\x70\x62\x68\x63\x52\x77\x56\x63\x4a\x71','\x64\x53\x6b\x64\x6e\x38\x6b\x79','\x73\x53\x6f\x78\x7a\x47','\x76\x78\x71\x4c','\x6f\x53\x6f\x50\x57\x50\x35\x4c\x57\x37\x61','\x57\x35\x53\x39\x67\x4c\x38\x47','\x57\x50\x37\x64\x4c\x4e\x47\x4a\x57\x4f\x74\x63\x56\x43\x6f\x69\x67\x57','\x57\x34\x56\x63\x52\x38\x6f\x56\x57\x36\x38','\x6f\x38\x6f\x67\x57\x4f\x31\x39\x57\x34\x6d','\x70\x59\x30\x68\x75\x47\x37\x63\x55\x71','\x6b\x75\x6c\x63\x51\x66\x68\x64\x54\x61','\x6b\x53\x6f\x6d\x6c\x43\x6f\x79\x73\x43\x6b\x33','\x57\x35\x33\x64\x49\x6d\x6f\x42\x57\x50\x48\x5a\x63\x5a\x52\x64\x4e\x61','\x57\x4f\x4a\x64\x49\x71\x6a\x4d\x57\x35\x79','\x57\x50\x33\x63\x4c\x38\x6f\x44\x57\x50\x39\x5a\x62\x59\x52\x64\x47\x61','\x57\x37\x56\x64\x53\x71\x62\x61\x57\x50\x33\x64\x4b\x32\x42\x63\x52\x61','\x57\x36\x31\x4f\x57\x34\x74\x63\x49\x6d\x6f\x6a\x66\x6d\x6f\x6a\x57\x35\x47','\x57\x34\x64\x63\x48\x53\x6b\x79\x76\x68\x53','\x57\x34\x4a\x63\x4a\x6d\x6b\x32\x57\x52\x54\x54\x78\x6d\x6f\x30\x57\x51\x61','\x42\x4b\x57\x4c\x57\x34\x48\x66\x57\x34\x57\x74\x57\x52\x38','\x57\x34\x5a\x64\x4d\x76\x66\x6a\x57\x50\x78\x64\x4c\x53\x6b\x79\x6f\x47','\x66\x53\x6f\x43\x57\x52\x6e\x65\x78\x47','\x57\x36\x78\x64\x55\x38\x6b\x6c\x57\x51\x4c\x36','\x57\x35\x33\x63\x4c\x5a\x71\x67\x57\x52\x79','\x57\x52\x2f\x63\x4b\x53\x6b\x4d\x57\x51\x75\x57\x68\x53\x6f\x43\x57\x50\x61','\x57\x52\x79\x54\x76\x30\x69\x66\x78\x6d\x6f\x72\x64\x47','\x7a\x67\x46\x64\x4d\x30\x6c\x64\x51\x47\x37\x64\x54\x57\x6d','\x57\x36\x35\x44\x57\x37\x37\x63\x55\x43\x6b\x74\x69\x59\x69\x73','\x57\x51\x6e\x50\x57\x50\x42\x64\x4e\x5a\x64\x63\x47\x53\x6f\x50\x57\x34\x43','\x57\x36\x74\x63\x4e\x43\x6b\x56\x57\x52\x31\x52\x74\x53\x6f\x61\x57\x52\x30','\x70\x53\x6b\x44\x57\x36\x78\x64\x51\x43\x6f\x76\x57\x50\x2f\x64\x4e\x49\x43','\x57\x36\x42\x64\x48\x43\x6b\x52\x57\x34\x39\x59\x57\x50\x70\x63\x53\x65\x53','\x57\x36\x37\x64\x51\x62\x31\x78\x57\x50\x33\x64\x48\x33\x68\x63\x49\x71','\x57\x35\x69\x6c\x57\x37\x4e\x64\x51\x38\x6b\x52\x57\x36\x78\x64\x4a\x47','\x77\x53\x6f\x46\x57\x37\x5a\x63\x53\x75\x70\x63\x54\x38\x6b\x38\x57\x35\x38','\x57\x51\x64\x64\x4c\x32\x34\x5a\x57\x4f\x70\x63\x48\x38\x6b\x62\x71\x57','\x6e\x38\x6f\x46\x73\x53\x6f\x52','\x57\x35\x42\x64\x48\x78\x44\x45\x57\x50\x56\x64\x4b\x53\x6b\x50\x69\x61','\x6a\x38\x6b\x4f\x66\x53\x6b\x2f\x57\x36\x75','\x57\x35\x56\x63\x55\x6d\x6f\x5a\x57\x36\x56\x64\x53\x53\x6b\x42\x43\x71','\x6e\x38\x6f\x79\x57\x52\x6a\x35\x77\x47','\x64\x38\x6f\x43\x6f\x49\x37\x63\x4b\x49\x6a\x6b\x77\x47','\x57\x37\x35\x4b\x57\x52\x78\x63\x53\x59\x56\x64\x4c\x47','\x57\x51\x52\x64\x47\x49\x50\x31\x57\x36\x65','\x57\x36\x66\x31\x57\x51\x70\x63\x48\x61','\x57\x35\x70\x63\x4b\x64\x4b\x46\x57\x52\x76\x37\x7a\x43\x6b\x63','\x57\x35\x74\x63\x4d\x53\x6b\x39\x57\x51\x58\x36\x77\x57','\x57\x37\x33\x64\x53\x30\x54\x6c\x57\x4f\x4b','\x57\x36\x78\x64\x4f\x6d\x6b\x6e\x57\x34\x68\x64\x52\x61','\x6c\x4d\x50\x6d\x57\x51\x70\x64\x48\x68\x57\x62','\x78\x38\x6b\x43\x57\x51\x35\x6c\x78\x58\x56\x63\x55\x53\x6b\x46','\x57\x36\x68\x64\x4e\x43\x6f\x6a\x57\x50\x39\x4e','\x57\x52\x66\x30\x57\x4f\x33\x64\x48\x73\x56\x63\x52\x38\x6f\x63\x57\x34\x61','\x71\x53\x6b\x53\x66\x43\x6b\x78\x57\x37\x33\x63\x4e\x43\x6f\x6b\x57\x4f\x47','\x6c\x53\x6f\x45\x57\x51\x6a\x57','\x6f\x6d\x6f\x61\x77\x4c\x2f\x64\x55\x71','\x41\x68\x78\x64\x4e\x65\x74\x64\x54\x47\x68\x64\x56\x58\x6d','\x41\x43\x6b\x45\x68\x6d\x6f\x66\x57\x52\x75','\x57\x36\x50\x30\x77\x4e\x6d\x46\x73\x6d\x6f\x78\x44\x47','\x63\x6d\x6f\x78\x63\x5a\x56\x63\x4c\x59\x76\x32\x73\x47','\x64\x47\x4a\x63\x4b\x6d\x6b\x50\x57\x35\x68\x64\x47\x38\x6f\x36\x57\x34\x65','\x57\x36\x37\x63\x4b\x6d\x6f\x35\x57\x37\x2f\x64\x4c\x61','\x57\x34\x75\x63\x57\x37\x70\x64\x4f\x43\x6b\x51','\x6d\x53\x6f\x4d\x7a\x78\x46\x64\x4c\x48\x78\x63\x4c\x48\x4f','\x57\x35\x58\x64\x66\x6d\x6b\x44\x62\x4e\x69','\x57\x51\x4a\x64\x51\x4c\x71\x73\x57\x50\x38','\x63\x75\x64\x63\x4e\x49\x2f\x63\x4c\x47','\x57\x34\x6c\x63\x55\x6d\x6b\x44\x57\x51\x74\x64\x48\x47','\x6c\x53\x6f\x74\x61\x71\x75\x6a\x6d\x71','\x6b\x6d\x6f\x4e\x45\x4d\x64\x64\x4c\x47\x71','\x57\x35\x52\x63\x50\x6d\x6f\x36\x57\x37\x74\x64\x53\x6d\x6b\x44\x43\x61','\x57\x4f\x46\x64\x4a\x68\x72\x4a\x57\x37\x47\x4f\x77\x53\x6b\x31\x64\x38\x6b\x50\x66\x43\x6f\x33','\x61\x4b\x6c\x63\x4e\x32\x52\x64\x49\x57','\x42\x6d\x6f\x31\x57\x34\x6c\x63\x4c\x75\x65','\x6d\x53\x6f\x6d\x57\x52\x54\x37\x57\x37\x38','\x61\x38\x6f\x56\x65\x63\x5a\x63\x55\x57','\x42\x43\x6b\x45\x57\x52\x76\x38\x77\x63\x33\x63\x4a\x6d\x6b\x50','\x57\x50\x44\x4b\x57\x50\x46\x64\x49\x67\x74\x64\x56\x57','\x57\x4f\x76\x78\x57\x51\x70\x63\x54\x53\x6f\x33\x57\x52\x68\x64\x47\x6d\x6b\x46\x57\x36\x4e\x63\x4c\x78\x53\x48','\x57\x52\x64\x63\x4a\x43\x6b\x48','\x78\x4b\x69\x54\x57\x35\x31\x79','\x66\x48\x6c\x64\x4f\x61','\x41\x78\x68\x64\x48\x4b\x64\x64\x51\x4a\x4b','\x68\x57\x79\x55\x57\x35\x4c\x42\x57\x34\x47\x74\x57\x52\x38','\x57\x50\x4a\x64\x49\x6d\x6b\x52\x69\x43\x6b\x51\x67\x74\x6a\x68','\x70\x48\x42\x64\x54\x77\x46\x64\x47\x6d\x6f\x4e\x57\x4f\x42\x63\x56\x57','\x57\x37\x6e\x36\x74\x78\x38\x42','\x77\x53\x6f\x6a\x57\x37\x37\x63\x52\x4b\x46\x63\x47\x53\x6b\x47','\x43\x53\x6b\x35\x7a\x65\x33\x64\x4c\x58\x4a\x63\x56\x74\x47','\x61\x38\x6b\x71\x57\x37\x70\x64\x4c\x6d\x6f\x4d','\x66\x6d\x6f\x30\x69\x38\x6b\x4f\x57\x35\x2f\x63\x4b\x38\x6f\x51\x57\x4f\x34','\x57\x36\x56\x64\x4b\x38\x6b\x66\x57\x51\x44\x73','\x57\x36\x69\x39\x6e\x66\x61','\x57\x4f\x6d\x69\x71\x78\x64\x63\x4c\x53\x6b\x36','\x57\x51\x78\x64\x49\x62\x72\x4c\x57\x37\x75\x2f\x68\x53\x6b\x66','\x73\x43\x6b\x69\x57\x52\x6e\x41\x77\x57','\x42\x6d\x6f\x37\x68\x6d\x6b\x2b\x57\x50\x75','\x77\x53\x6f\x69\x57\x37\x42\x63\x53\x31\x75','\x57\x51\x37\x64\x52\x30\x39\x58','\x6d\x6d\x6f\x69\x71\x53\x6f\x30\x57\x34\x30\x6b\x57\x51\x2f\x63\x47\x57','\x57\x4f\x56\x63\x50\x53\x6b\x79\x57\x4f\x71\x54','\x57\x51\x33\x64\x54\x75\x35\x54','\x61\x71\x78\x63\x4e\x38\x6b\x4e\x57\x34\x56\x64\x54\x61','\x62\x30\x7a\x63\x57\x52\x33\x64\x4a\x47','\x64\x4d\x7a\x56\x57\x4f\x46\x64\x51\x57','\x57\x35\x72\x77\x57\x35\x37\x63\x4a\x4b\x69\x55\x68\x65\x43','\x57\x50\x64\x63\x50\x43\x6f\x4e\x70\x47\x33\x63\x48\x67\x70\x63\x4c\x57','\x57\x51\x4a\x64\x4c\x31\x53\x2f\x57\x50\x4e\x63\x53\x43\x6b\x43\x71\x47','\x6b\x6d\x6f\x4d\x46\x4d\x74\x64\x4d\x73\x2f\x63\x50\x72\x53','\x57\x34\x46\x64\x49\x53\x6f\x68\x57\x50\x43','\x57\x34\x44\x6e\x57\x34\x74\x63\x52\x4b\x75','\x57\x4f\x71\x6a\x76\x68\x4a\x63\x4e\x61','\x57\x37\x54\x68\x61\x43\x6b\x37\x63\x71','\x57\x50\x65\x74\x75\x33\x68\x63\x4a\x43\x6b\x73\x57\x37\x46\x63\x47\x71','\x57\x51\x2f\x63\x47\x43\x6f\x39\x67\x4a\x30','\x57\x34\x64\x64\x55\x38\x6f\x67\x57\x52\x62\x78','\x57\x37\x74\x64\x48\x38\x6b\x32\x57\x4f\x58\x4e','\x66\x43\x6f\x34\x64\x72\x4a\x63\x50\x57','\x6e\x6d\x6b\x64\x70\x47','\x57\x35\x68\x64\x48\x78\x61','\x57\x37\x35\x78\x57\x34\x5a\x63\x51\x43\x6b\x6e\x69\x59\x69\x71','\x6c\x38\x6f\x75\x57\x51\x48\x59\x73\x59\x53','\x65\x53\x6f\x31\x67\x58\x33\x63\x54\x47','\x57\x51\x4e\x63\x54\x6d\x6b\x44\x57\x4f\x38\x52','\x57\x34\x42\x63\x4c\x49\x75','\x57\x52\x2f\x64\x4c\x63\x44\x2b\x57\x37\x47\x5a\x6e\x43\x6b\x6f','\x45\x53\x6f\x64\x66\x53\x6b\x64\x57\x52\x48\x2f\x57\x50\x50\x2f','\x77\x31\x5a\x64\x50\x67\x78\x64\x4a\x43\x6f\x67\x57\x4f\x46\x63\x4a\x71','\x64\x53\x6f\x57\x6a\x53\x6f\x66\x73\x57','\x64\x66\x2f\x63\x55\x67\x2f\x64\x4c\x53\x6f\x59\x42\x43\x6b\x55','\x75\x4c\x6c\x64\x52\x33\x33\x64\x49\x57','\x6d\x53\x6b\x46\x69\x6d\x6b\x71\x57\x35\x5a\x64\x4e\x4b\x37\x63\x55\x71','\x57\x35\x74\x63\x56\x43\x6f\x31\x57\x34\x52\x64\x4a\x47','\x57\x35\x78\x63\x4a\x6d\x6b\x2b\x57\x51\x50\x67\x72\x38\x6f\x6b\x57\x51\x34','\x68\x6d\x6b\x7a\x69\x53\x6b\x74\x57\x37\x57','\x57\x36\x37\x63\x47\x59\x65\x79\x57\x51\x65','\x66\x30\x48\x6a\x57\x4f\x2f\x64\x52\x57','\x6c\x38\x6f\x68\x69\x43\x6f\x50','\x57\x37\x64\x64\x4a\x43\x6b\x33\x57\x51\x71\x53\x67\x53\x6f\x6c\x57\x51\x53','\x57\x4f\x52\x64\x4b\x6d\x6b\x31\x64\x6d\x6b\x58\x67\x57','\x75\x4b\x65\x38\x57\x35\x76\x7a\x57\x37\x69\x7a\x57\x51\x38','\x57\x50\x52\x64\x4b\x43\x6b\x30\x6c\x6d\x6b\x36','\x57\x52\x34\x55\x57\x4f\x70\x64\x4d\x53\x6b\x6c\x46\x38\x6f\x58\x57\x37\x46\x63\x47\x5a\x52\x63\x4d\x6d\x6b\x6d','\x57\x37\x46\x63\x4b\x59\x54\x56\x57\x34\x64\x64\x51\x53\x6b\x46\x79\x43\x6f\x58\x57\x51\x57\x6a\x6c\x57','\x57\x4f\x6c\x63\x4f\x43\x6f\x4c\x6c\x72\x42\x63\x47\x67\x46\x63\x48\x47','\x66\x6d\x6f\x39\x76\x53\x6f\x73\x57\x51\x5a\x64\x47\x6d\x6f\x4f\x57\x50\x52\x63\x4a\x59\x71\x65\x57\x37\x79','\x57\x36\x4e\x64\x52\x6d\x6b\x64\x57\x36\x64\x64\x4f\x57','\x66\x4b\x78\x63\x4b\x32\x2f\x64\x4c\x6d\x6f\x36\x41\x38\x6b\x49','\x66\x61\x64\x64\x56\x33\x78\x64\x4d\x38\x6f\x43\x57\x4f\x79','\x57\x34\x39\x57\x74\x33\x71\x73\x78\x38\x6f\x78','\x57\x35\x6d\x4f\x57\x34\x33\x64\x47\x6d\x6b\x2f','\x63\x53\x6b\x6a\x6d\x43\x6b\x5a\x57\x35\x6c\x64\x4c\x66\x2f\x63\x4d\x71','\x57\x35\x4a\x63\x53\x38\x6b\x43\x57\x50\x56\x64\x4b\x47','\x57\x51\x4a\x63\x54\x38\x6b\x67\x57\x4f\x71\x55','\x57\x37\x4a\x63\x4d\x58\x53\x61\x57\x4f\x57','\x6e\x38\x6f\x71\x57\x52\x76\x2b\x79\x64\x68\x63\x49\x6d\x6b\x4d','\x57\x37\x37\x63\x47\x38\x6b\x4a\x75\x32\x43\x51\x57\x50\x5a\x63\x55\x57','\x57\x35\x56\x63\x56\x5a\x47\x34\x57\x52\x71','\x67\x72\x6c\x63\x4d\x6d\x6b\x54','\x73\x38\x6b\x4b\x66\x47','\x57\x37\x76\x4c\x57\x52\x70\x63\x48\x73\x42\x64\x4c\x38\x6b\x6e','\x57\x34\x69\x63\x57\x37\x38','\x71\x38\x6b\x75\x6c\x6d\x6b\x62\x57\x35\x4b','\x74\x6d\x6f\x63\x71\x43\x6f\x6e\x57\x34\x6a\x63\x57\x4f\x79','\x57\x36\x71\x34\x6a\x71','\x57\x36\x75\x36\x6b\x30\x43\x4e\x57\x52\x6c\x64\x4c\x57','\x72\x53\x6f\x6f\x57\x37\x52\x63\x50\x65\x2f\x63\x4e\x47','\x57\x50\x6e\x6b\x57\x4f\x33\x64\x47\x74\x43','\x6e\x53\x6f\x44\x6a\x43\x6f\x51\x71\x43\x6b\x48\x6d\x57','\x42\x38\x6f\x52\x57\x36\x42\x63\x54\x30\x71','\x70\x63\x57\x6d\x41\x48\x70\x63\x54\x71','\x6f\x49\x78\x64\x4e\x75\x46\x64\x49\x57','\x57\x4f\x5a\x63\x4f\x38\x6f\x38\x6f\x62\x64\x63\x4a\x57','\x57\x34\x4a\x64\x49\x33\x4f','\x6a\x53\x6b\x6a\x70\x6d\x6b\x6b\x57\x35\x6c\x64\x47\x4c\x37\x63\x47\x57','\x61\x43\x6b\x6a\x6b\x38\x6b\x41\x57\x34\x4e\x64\x4d\x61','\x57\x52\x52\x64\x56\x31\x62\x38\x57\x37\x4e\x63\x4e\x47','\x62\x73\x6a\x58\x69\x4a\x4a\x64\x55\x53\x6b\x58\x66\x43\x6f\x62\x57\x36\x74\x64\x4c\x33\x58\x72','\x57\x35\x61\x68\x57\x37\x42\x64\x54\x53\x6b\x51\x57\x37\x69','\x57\x35\x37\x63\x47\x38\x6b\x34\x57\x52\x4e\x64\x47\x71','\x74\x53\x6b\x62\x57\x51\x6a\x6e','\x57\x36\x42\x64\x48\x38\x6b\x79\x57\x4f\x50\x53\x57\x4f\x74\x63\x51\x47','\x6d\x38\x6f\x37\x44\x6d\x6f\x70\x57\x35\x53','\x57\x52\x2f\x64\x51\x75\x39\x38\x57\x37\x4e\x63\x50\x6d\x6f\x45\x75\x47','\x76\x38\x6b\x6a\x7a\x68\x42\x64\x4a\x4d\x43\x55\x45\x6d\x6b\x34\x57\x52\x64\x64\x4c\x33\x4b\x48','\x79\x45\x6b\x63\x4e\x74\x61','\x79\x43\x6b\x70\x64\x53\x6f\x59\x57\x51\x6a\x37\x57\x50\x6d\x74','\x57\x36\x6a\x30\x57\x51\x6c\x63\x4a\x74\x42\x64\x4c\x38\x6b\x6f\x57\x4f\x65','\x57\x34\x42\x64\x48\x77\x58\x46\x57\x4f\x5a\x64\x48\x43\x6b\x64\x6c\x71','\x57\x36\x6d\x37\x6e\x76\x53\x52\x57\x51\x64\x64\x50\x53\x6b\x6b','\x6d\x43\x6b\x64\x6f\x76\x34\x57\x57\x36\x5a\x64\x4f\x38\x6f\x4e','\x63\x4b\x37\x63\x4c\x67\x70\x64\x4d\x38\x6f\x56','\x57\x37\x4c\x54\x57\x52\x56\x63\x4c\x4a\x47','\x57\x51\x2f\x64\x4b\x68\x71\x31\x57\x51\x4a\x63\x53\x6d\x6b\x62\x71\x61','\x57\x36\x48\x4e\x72\x33\x43\x45\x71\x57','\x7a\x43\x6f\x79\x61\x38\x6b\x52\x57\x51\x6a\x57\x57\x50\x48\x4c','\x57\x34\x79\x31\x78\x4d\x69\x45\x71\x53\x6f\x77\x42\x61','\x71\x33\x30\x38\x57\x34\x39\x43','\x57\x37\x52\x63\x4a\x53\x6b\x48\x57\x4f\x33\x64\x4a\x71','\x57\x36\x62\x79\x57\x37\x68\x63\x4d\x53\x6f\x30','\x57\x35\x72\x44\x57\x35\x70\x63\x4d\x38\x6f\x54','\x57\x51\x6e\x31\x57\x4f\x56\x64\x4a\x64\x64\x63\x55\x6d\x6f\x36\x57\x35\x43','\x57\x34\x75\x41\x57\x37\x56\x64\x4f\x6d\x6b\x4a\x57\x36\x78\x64\x54\x43\x6b\x50','\x6c\x4e\x50\x61\x57\x52\x5a\x64\x48\x4d\x79','\x57\x34\x31\x7a\x57\x37\x46\x63\x51\x53\x6b\x54','\x57\x35\x5a\x63\x54\x53\x6b\x72\x57\x50\x37\x64\x4d\x76\x6c\x63\x50\x71','\x79\x53\x6f\x6e\x61\x53\x6b\x48\x57\x4f\x4c\x4e\x57\x50\x50\x2f','\x57\x37\x31\x50\x57\x51\x74\x63\x4c\x72\x38','\x57\x37\x72\x47\x71\x33\x30\x77\x78\x38\x6f\x44','\x76\x77\x6d\x59\x46\x4e\x5a\x63\x4b\x38\x6f\x53\x6a\x47','\x6d\x33\x2f\x63\x4a\x67\x37\x64\x53\x47','\x71\x6d\x6f\x70\x57\x35\x6c\x63\x53\x76\x74\x63\x4b\x43\x6b\x47','\x45\x78\x57\x78\x44\x78\x47','\x45\x38\x6f\x6e\x62\x43\x6b\x50\x57\x52\x34','\x6e\x53\x6f\x72\x43\x75\x4a\x64\x4d\x61','\x57\x52\x68\x64\x56\x4c\x4c\x67\x57\x36\x74\x63\x4e\x57','\x57\x51\x70\x64\x4e\x5a\x44\x74\x57\x37\x69\x59','\x57\x51\x33\x64\x47\x78\x6d\x58\x57\x4f\x70\x63\x53\x61','\x57\x36\x56\x63\x4d\x43\x6b\x62\x57\x50\x5a\x64\x4e\x57','\x57\x4f\x74\x64\x4e\x6d\x6f\x6c\x57\x4f\x54\x32\x67\x61\x34','\x61\x71\x68\x64\x50\x78\x30','\x57\x36\x46\x63\x48\x43\x6b\x4e\x76\x61','\x57\x34\x64\x63\x4d\x47\x65\x34\x57\x52\x44\x38\x71\x53\x6b\x5a','\x57\x37\x37\x63\x48\x53\x6b\x4e\x77\x77\x34','\x57\x34\x7a\x4f\x70\x6d\x6b\x52\x64\x71','\x57\x35\x7a\x4c\x57\x52\x37\x63\x49\x71','\x57\x35\x37\x64\x4d\x43\x6f\x45','\x57\x52\x66\x48\x57\x37\x64\x63\x4e\x64\x46\x64\x4b\x6d\x6b\x66\x57\x50\x65','\x57\x37\x37\x64\x4b\x71\x4c\x56\x57\x4f\x47','\x62\x6d\x6b\x46\x66\x53\x6b\x79\x57\x35\x64\x64\x4b\x76\x74\x63\x50\x61','\x57\x34\x52\x63\x50\x53\x6f\x4f\x57\x36\x47','\x57\x36\x70\x64\x4d\x75\x58\x79\x57\x52\x38','\x6c\x38\x6b\x6c\x6b\x4c\x6d\x35\x57\x35\x64\x64\x53\x43\x6f\x6d','\x7a\x31\x43\x4c\x42\x32\x69','\x46\x6d\x6b\x5a\x63\x53\x6b\x53\x57\x37\x75','\x57\x35\x42\x64\x48\x4d\x54\x70\x57\x50\x30','\x43\x68\x46\x64\x49\x30\x6c\x64\x52\x73\x6c\x64\x47\x72\x43','\x75\x43\x6f\x75\x45\x6d\x6f\x6c','\x57\x4f\x6c\x64\x4a\x38\x6b\x46\x6b\x43\x6b\x57\x66\x73\x66\x42','\x57\x35\x54\x64\x62\x38\x6b\x62\x6d\x78\x75\x46\x6a\x71','\x6f\x43\x6f\x47\x57\x51\x54\x4b\x57\x36\x33\x64\x56\x64\x79','\x75\x53\x6b\x53\x63\x38\x6b\x67\x57\x37\x56\x63\x48\x6d\x6f\x73\x57\x51\x61','\x57\x50\x2f\x64\x4b\x38\x6b\x76\x6c\x38\x6b\x50\x67\x73\x44\x39','\x57\x51\x74\x64\x4b\x77\x76\x32\x57\x35\x47','\x57\x35\x31\x49\x57\x36\x4e\x63\x53\x43\x6b\x73','\x57\x34\x2f\x64\x4a\x32\x66\x79','\x6e\x53\x6b\x6e\x6a\x66\x6d','\x73\x43\x6b\x71\x57\x51\x48\x71\x75\x62\x38','\x57\x52\x2f\x64\x4b\x4a\x76\x49\x57\x37\x4f\x36\x67\x71','\x6c\x53\x6f\x54\x44\x76\x52\x64\x4e\x62\x71','\x6d\x33\x6e\x2b\x57\x52\x33\x64\x4b\x67\x6d\x76\x57\x4f\x43','\x57\x36\x39\x36\x57\x35\x53','\x69\x53\x6f\x63\x57\x52\x76\x57\x73\x58\x5a\x63\x48\x6d\x6b\x48','\x57\x35\x31\x7a\x57\x35\x4b','\x57\x37\x4e\x63\x4e\x43\x6f\x50\x57\x36\x2f\x64\x4f\x61','\x57\x51\x72\x4f\x57\x4f\x33\x64\x47\x73\x65','\x75\x53\x6b\x6a\x57\x52\x66\x64\x72\x61','\x73\x43\x6b\x71\x57\x51\x48\x79\x73\x48\x33\x63\x51\x43\x6b\x31','\x69\x6d\x6b\x7a\x57\x35\x42\x64\x48\x43\x6f\x42','\x72\x4e\x34\x45\x43\x32\x68\x63\x55\x61','\x57\x34\x46\x63\x4d\x4a\x47\x4c\x57\x51\x6e\x38\x42\x38\x6b\x45','\x6e\x53\x6b\x72\x57\x34\x42\x64\x4e\x53\x6f\x31','\x64\x38\x6f\x47\x57\x51\x39\x4f\x57\x37\x65','\x41\x53\x6f\x74\x46\x57\x48\x4f\x57\x4f\x52\x63\x54\x53\x6f\x4c\x46\x77\x33\x64\x52\x33\x70\x63\x54\x71','\x57\x35\x42\x64\x47\x4d\x31\x45\x57\x4f\x5a\x64\x51\x6d\x6b\x63\x6a\x57','\x57\x37\x31\x56\x57\x52\x70\x63\x4a\x73\x37\x63\x4e\x53\x6f\x6a\x57\x4f\x30','\x64\x53\x6b\x79\x6b\x38\x6b\x42','\x57\x52\x39\x31\x57\x50\x4a\x64\x4a\x59\x53','\x57\x36\x7a\x72\x57\x35\x5a\x63\x4a\x4d\x4f','\x63\x43\x6f\x6d\x6a\x6d\x6b\x6e\x57\x34\x33\x64\x47\x4c\x78\x63\x53\x71','\x6f\x43\x6f\x6c\x57\x4f\x76\x39\x57\x37\x53','\x57\x4f\x4e\x63\x56\x53\x6f\x38\x6d\x71','\x6d\x38\x6f\x65\x57\x52\x76\x39','\x57\x52\x68\x64\x4b\x77\x34\x2b','\x57\x4f\x37\x64\x53\x53\x6f\x4c\x57\x34\x4e\x64\x53\x6d\x6b\x70\x79\x63\x57','\x57\x37\x4a\x64\x55\x38\x6b\x35\x57\x34\x4e\x64\x53\x47','\x57\x52\x2f\x63\x4b\x43\x6b\x5a','\x78\x6d\x6b\x72\x57\x52\x72\x41\x73\x48\x68\x63\x4f\x43\x6b\x49','\x63\x68\x6a\x75\x57\x50\x2f\x64\x48\x61','\x57\x36\x6a\x53\x57\x52\x4e\x63\x4a\x59\x43','\x42\x59\x43\x72\x57\x37\x2f\x63\x4e\x74\x38\x32\x57\x50\x68\x63\x49\x6d\x6f\x43\x57\x4f\x64\x63\x48\x61','\x43\x78\x56\x64\x55\x31\x70\x64\x52\x64\x4a\x64\x53\x61\x61','\x7a\x53\x6f\x7a\x61\x53\x6b\x49','\x57\x37\x64\x49\x47\x6a\x78\x64\x4d\x43\x6f\x46\x69\x43\x6b\x58\x57\x37\x4a\x64\x4d\x61','\x6e\x33\x4c\x75\x57\x4f\x74\x64\x53\x71','\x57\x51\x46\x64\x47\x77\x4b\x31\x57\x50\x2f\x63\x49\x38\x6b\x6e\x73\x47','\x6a\x6d\x6f\x39\x6b\x49\x78\x64\x4c\x72\x46\x63\x52\x61\x71','\x57\x36\x6c\x63\x4a\x53\x6b\x52\x7a\x77\x69\x56','\x57\x36\x42\x64\x4a\x38\x6b\x37','\x57\x4f\x5a\x63\x54\x43\x6f\x57\x61\x62\x64\x63\x48\x71','\x7a\x43\x6f\x79\x66\x6d\x6b\x36\x57\x51\x75','\x57\x35\x4a\x64\x47\x53\x6b\x58\x57\x50\x54\x4e\x57\x50\x70\x63\x54\x30\x75','\x57\x34\x7a\x75\x57\x34\x70\x63\x48\x65\x71','\x57\x37\x39\x56\x57\x34\x78\x63\x4a\x6d\x6f\x6a\x6c\x53\x6f\x68\x57\x34\x38','\x71\x53\x6f\x75\x44\x6d\x6f\x59\x57\x35\x39\x68\x57\x50\x4f','\x57\x50\x4a\x64\x4c\x43\x6b\x2b\x6c\x53\x6b\x2f\x65\x63\x7a\x48','\x6a\x6d\x6b\x6b\x63\x38\x6b\x57\x57\x36\x34','\x6e\x73\x42\x63\x4c\x43\x6b\x32\x57\x36\x38','\x69\x53\x6f\x45\x75\x6d\x6f\x4a\x57\x35\x4f\x39\x57\x4f\x37\x63\x4b\x47','\x6e\x43\x6f\x41\x57\x51\x50\x53\x57\x36\x46\x64\x56\x71','\x41\x43\x6b\x45\x57\x4f\x64\x63\x52\x38\x6f\x42\x57\x4f\x2f\x63\x4b\x49\x69','\x57\x36\x50\x65\x44\x33\x75\x42','\x57\x52\x74\x63\x4a\x43\x6b\x2f\x57\x52\x4b','\x68\x53\x6b\x66\x69\x53\x6b\x74\x57\x35\x5a\x64\x4e\x65\x4b','\x6b\x43\x6f\x51\x57\x50\x54\x35\x57\x37\x56\x64\x53\x64\x57\x4f','\x57\x52\x4a\x64\x4c\x61\x66\x34\x57\x36\x4b\x2f\x62\x6d\x6b\x68','\x6e\x38\x6f\x75\x75\x38\x6f\x4a','\x6e\x38\x6f\x73\x6c\x58\x4f\x6c\x6a\x6d\x6b\x36','\x6d\x53\x6f\x47\x46\x77\x5a\x64\x4d\x72\x68\x63\x55\x58\x30','\x61\x71\x2f\x63\x4b\x53\x6b\x48\x57\x35\x70\x64\x47\x38\x6f\x30\x57\x34\x61','\x6b\x43\x6f\x4b\x57\x52\x54\x4d\x57\x51\x46\x63\x55\x72\x6d\x52','\x57\x35\x4a\x64\x49\x5a\x4c\x73\x57\x4f\x53','\x72\x67\x75\x59\x43\x57','\x57\x35\x46\x64\x49\x53\x6f\x62\x57\x4f\x50\x56\x62\x59\x30','\x57\x36\x72\x65\x57\x35\x78\x63\x4a\x6d\x6f\x74\x6c\x57','\x57\x52\x78\x64\x4a\x77\x4b\x36\x57\x50\x69','\x6a\x6d\x6b\x39\x57\x34\x4a\x64\x4a\x43\x6f\x38','\x57\x51\x6c\x64\x4a\x68\x57\x2f\x57\x50\x4e\x63\x48\x38\x6b\x62\x71\x57','\x57\x36\x5a\x64\x48\x58\x35\x6d\x57\x50\x2f\x64\x4a\x33\x37\x63\x47\x61','\x6e\x53\x6b\x6e\x57\x35\x70\x64\x4f\x53\x6f\x61\x57\x51\x6c\x64\x4d\x59\x79','\x57\x50\x48\x63\x65\x6d\x6b\x45\x64\x67\x61\x6c','\x57\x50\x4e\x64\x4d\x43\x6b\x50\x6c\x6d\x6b\x2f\x68\x5a\x61','\x57\x37\x31\x46\x57\x37\x5a\x63\x52\x6d\x6b\x75','\x57\x51\x78\x63\x48\x53\x6f\x47\x6b\x58\x53','\x73\x43\x6f\x66\x41\x38\x6f\x50\x57\x34\x4f','\x63\x4c\x37\x63\x4c\x32\x68\x64\x4b\x43\x6f\x31','\x72\x33\x57\x4f\x45\x67\x30','\x57\x37\x56\x64\x51\x47\x72\x69','\x57\x50\x75\x6f\x72\x4e\x56\x63\x49\x38\x6b\x55\x57\x37\x53','\x57\x37\x70\x63\x56\x53\x6f\x74\x57\x35\x37\x64\x4b\x47','\x57\x34\x52\x64\x4a\x67\x71','\x57\x50\x65\x65\x72\x61','\x74\x53\x6b\x6c\x57\x51\x48\x43'];_0x358a=function(){return _0x2bbb4d;};return _0x358a();}function _0x5543(_0x16e620,_0x3dc66b){_0x16e620=_0x16e620-(-0x77*0x29+-0x18fe*-0x1+-0xb*0x5d);const _0x9681fc=_0x358a();let _0xc5d912=_0x9681fc[_0x16e620];if(_0x5543['\x52\x6b\x7a\x71\x43\x75']===undefined){var _0x28c4b1=function(_0x77de35){const _0x1f068b='\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 _0x9d1950='',_0x56395a='',_0x1b6b7b=_0x9d1950+_0x28c4b1,_0x4a45f8=(''+function(){return-0x868+0x21cc+-0x1964;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(-0x140c+-0x2dc+-0x55*-0x45);for(let _0x230519=-0x2*0x60f+-0x26f7*-0x1+0x1d*-0xed,_0x4893eb,_0x2cb7ca,_0x3f7150=-0x2*0x117a+0xa*-0x37e+0x45e0;_0x2cb7ca=_0x77de35['\x63\x68\x61\x72\x41\x74'](_0x3f7150++);~_0x2cb7ca&&(_0x4893eb=_0x230519%(0x2667+-0x1699+0x5e*-0x2b)?_0x4893eb*(0x10bf+-0x1242+0x1c3)+_0x2cb7ca:_0x2cb7ca,_0x230519++%(-0x1685+0x1*0xd15+0x974))?_0x9d1950+=_0x4a45f8||_0x1b6b7b['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x3f7150+(-0x1dda+0x4f7+0x18ed))-(-0x1e0c+0x3*-0x4ed+0x2cdd)!==-0x1*0x146f+-0x143*0x7+-0x4*-0x751?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](0x186b+-0x2113*0x1+-0x9a7*-0x1&_0x4893eb>>(-(0xc5*-0x6+0xde7+-0x947)*_0x230519&-0x3*0x57+0x4*-0x518+0x156b)):_0x230519:0x2547+0x25d*-0xe+-0x25*0x1d){_0x2cb7ca=_0x1f068b['\x69\x6e\x64\x65\x78\x4f\x66'](_0x2cb7ca);}for(let _0x4f3482=-0x95*-0xf+-0x124b+0xcc*0xc,_0xb57fc8=_0x9d1950['\x6c\x65\x6e\x67\x74\x68'];_0x4f3482<_0xb57fc8;_0x4f3482++){_0x56395a+='\x25'+('\x30\x30'+_0x9d1950['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x4f3482)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x1b06+0x1*-0x23e3+0x1*0x8ed))['\x73\x6c\x69\x63\x65'](-(-0x4e4+0x1511+0x102b*-0x1));}return decodeURIComponent(_0x56395a);};const _0x50edaf=function(_0x2006c8,_0x4c21ab){let _0xf4b64c=[],_0x55767=-0xd95*0x1+-0x16e8+-0x247d*-0x1,_0x1968a8,_0x17ed0a='';_0x2006c8=_0x28c4b1(_0x2006c8);let _0x5a4f18;for(_0x5a4f18=-0x489*0x4+0x6*0x1fd+-0x35*-0x1e;_0x5a4f18<0x20f+-0xd3*0x2f+0xe*0x2b1;_0x5a4f18++){_0xf4b64c[_0x5a4f18]=_0x5a4f18;}for(_0x5a4f18=0x19ea*0x1+0x23c2+0x4*-0xf6b;_0x5a4f18<-0x37f*-0x5+-0xe83+-0x1f8;_0x5a4f18++){_0x55767=(_0x55767+_0xf4b64c[_0x5a4f18]+_0x4c21ab['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x5a4f18%_0x4c21ab['\x6c\x65\x6e\x67\x74\x68']))%(0x20b*0x5+0x1ab*-0x7+0x5*0x7e),_0x1968a8=_0xf4b64c[_0x5a4f18],_0xf4b64c[_0x5a4f18]=_0xf4b64c[_0x55767],_0xf4b64c[_0x55767]=_0x1968a8;}_0x5a4f18=0x45f+0x191b+0x31*-0x9a,_0x55767=0x1*0x67d+0x24dc+-0x9*0x4d1;for(let _0x1c3007=0x659*0x3+0x17a5*-0x1+0x49a;_0x1c3007<_0x2006c8['\x6c\x65\x6e\x67\x74\x68'];_0x1c3007++){_0x5a4f18=(_0x5a4f18+(0x579+0x8dd+0x3*-0x4c7))%(0x1b1c+-0xacb+0x3*-0x51b),_0x55767=(_0x55767+_0xf4b64c[_0x5a4f18])%(0x37c*0x7+0x998+-0x20fc),_0x1968a8=_0xf4b64c[_0x5a4f18],_0xf4b64c[_0x5a4f18]=_0xf4b64c[_0x55767],_0xf4b64c[_0x55767]=_0x1968a8,_0x17ed0a+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x2006c8['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1c3007)^_0xf4b64c[(_0xf4b64c[_0x5a4f18]+_0xf4b64c[_0x55767])%(-0x1*-0x24a8+0x1327+0x1*-0x36cf)]);}return _0x17ed0a;};_0x5543['\x62\x4f\x54\x59\x69\x48']=_0x50edaf,_0x5543['\x44\x6c\x41\x48\x64\x6c']={},_0x5543['\x52\x6b\x7a\x71\x43\x75']=!![];}const _0x2b99e3=_0x9681fc[0xee+0x1*0x1169+0x5*-0x3ab],_0x474c2a=_0x16e620+_0x2b99e3,_0x420880=_0x5543['\x44\x6c\x41\x48\x64\x6c'][_0x474c2a];if(!_0x420880){if(_0x5543['\x41\x6b\x76\x4b\x51\x50']===undefined){const _0x378843=function(_0x195888){this['\x55\x55\x41\x45\x6f\x51']=_0x195888,this['\x56\x78\x46\x43\x75\x68']=[-0x234c+-0x4*-0xd6+-0x1ff5*-0x1,-0x2561+0x1d0e*-0x1+0x426f*0x1,0x1d5f*0x1+0xa4*-0x23+-0x6f3],this['\x65\x72\x71\x69\x76\x6f']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x71\x57\x69\x63\x78\x55']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x51\x49\x62\x57\x72\x69']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x378843['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x5a\x43\x5a\x51\x53\x42']=function(){const _0x4bed27=new RegExp(this['\x71\x57\x69\x63\x78\x55']+this['\x51\x49\x62\x57\x72\x69']),_0x429935=_0x4bed27['\x74\x65\x73\x74'](this['\x65\x72\x71\x69\x76\x6f']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x56\x78\x46\x43\x75\x68'][0x5f*-0x3e+0xf*0x3d+-0x4*-0x4dc]:--this['\x56\x78\x46\x43\x75\x68'][-0x22eb+0x194*0x8+0x1*0x164b];return this['\x6e\x57\x55\x6d\x5a\x43'](_0x429935);},_0x378843['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x6e\x57\x55\x6d\x5a\x43']=function(_0x2c1afb){if(!Boolean(~_0x2c1afb))return _0x2c1afb;return this['\x43\x54\x7a\x79\x46\x4e'](this['\x55\x55\x41\x45\x6f\x51']);},_0x378843['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x43\x54\x7a\x79\x46\x4e']=function(_0x54866d){for(let _0x33d0e2=-0x1*-0x14cb+-0xfd*-0x26+-0x3a59,_0x1ca38e=this['\x56\x78\x46\x43\x75\x68']['\x6c\x65\x6e\x67\x74\x68'];_0x33d0e2<_0x1ca38e;_0x33d0e2++){this['\x56\x78\x46\x43\x75\x68']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x1ca38e=this['\x56\x78\x46\x43\x75\x68']['\x6c\x65\x6e\x67\x74\x68'];}return _0x54866d(this['\x56\x78\x46\x43\x75\x68'][-0x117*0x1f+-0x25ba+0x4783]);},(''+function(){return-0x31*-0x89+-0x1667+0x2*-0x1e9;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(0x21dd+0xea0+-0x307c)&&new _0x378843(_0x5543)['\x5a\x43\x5a\x51\x53\x42'](),_0x5543['\x41\x6b\x76\x4b\x51\x50']=!![];}_0xc5d912=_0x5543['\x62\x4f\x54\x59\x69\x48'](_0xc5d912,_0x3dc66b),_0x5543['\x44\x6c\x41\x48\x64\x6c'][_0x474c2a]=_0xc5d912;}else _0xc5d912=_0x420880;return _0xc5d912;}function _0x48e69f(_0x3e1e9c){const _0x4be1fa=_0x121674,_0x198e43={'\x47\x61\x68\x77\x52':function(_0x4b16df,_0x165b98,_0x3a3964){return _0x4b16df(_0x165b98,_0x3a3964);},'\x49\x66\x4e\x4d\x53':function(_0x1bd0ae,_0x3ee63a){return _0x1bd0ae>_0x3ee63a;},'\x65\x51\x4a\x62\x4d':function(_0x14131b,_0x3b1038){return _0x14131b<=_0x3b1038;},'\x57\x53\x54\x77\x79':function(_0x6a9631,_0x9b120a){return _0x6a9631(_0x9b120a);},'\x61\x6f\x66\x59\x41':_0x4be1fa(0x374,'\x7a\x6c\x5d\x55')+'\x73','\x70\x46\x61\x58\x70':function(_0x379604,_0x33d0d9){return _0x379604===_0x33d0d9;},'\x58\x5a\x56\x44\x48':_0x4be1fa(0x32a,'\x24\x39\x42\x5d'),'\x71\x49\x64\x4a\x7a':_0x4be1fa(0x2d8,'\x54\x79\x55\x73')+_0x4be1fa(0x2fa,'\x34\x4f\x57\x7a')+_0x4be1fa(0x393,'\x44\x25\x6b\x37')},_0x3b70b8=_0x198e43[_0x4be1fa(0x345,'\x7a\x6c\x5d\x55')](String,_0x3e1e9c||''),_0x3bef03=_0x3b70b8[_0x4be1fa(0x300,'\x43\x21\x30\x6d')+_0x4be1fa(0x322,'\x44\x5a\x6a\x63')](),_0x2d4933=/\b(error|exception|fail(?:ed|ure)?)\b|错误|异常|报错|失败/i[_0x4be1fa(0x215,'\x6e\x51\x74\x7a')](_0x3bef03);let _0x3d4fae=[],_0x213094=[];try{const _0x1d85c5=_0x198e43[_0x4be1fa(0x1fe,'\x75\x68\x33\x30')](require,_0x198e43[_0x4be1fa(0x313,'\x42\x45\x73\x43')]);_0x3d4fae=_0x1d85c5[_0x4be1fa(0x22b,'\x41\x78\x41\x6d')+_0x4be1fa(0x314,'\x78\x67\x38\x38')](_0x3b70b8,_0x3bef03,_0x2d4933)||[],_0x213094=_0x1d85c5[_0x4be1fa(0x3ad,'\x5d\x6a\x6b\x4b')+_0x4be1fa(0x263,'\x61\x53\x57\x66')+_0x4be1fa(0x20f,'\x79\x68\x5d\x5b')](_0x3bef03)||[];}catch(_0x16ac33){if(_0x198e43[_0x4be1fa(0x36d,'\x6e\x51\x74\x7a')]('\x6a\x66\x75\x4a\x54',_0x198e43['\x58\x5a\x56\x44\x48']))return[];else{const _0x32298f=VXIHpV[_0x4be1fa(0x2da,'\x26\x71\x40\x35')](_0x3c490b,_0x28d606.env.EVOLVER_RECALL_MAX,-0x3b*-0x26+0x1d59*0x1+-0x2611);return _0x5e8faf[_0x4be1fa(0x1fd,'\x74\x76\x70\x79')](_0x32298f)&&VXIHpV[_0x4be1fa(0x336,'\x79\x68\x5d\x5b')](_0x32298f,-0x1ec*-0x1+0x841+-0xa2d)&&VXIHpV[_0x4be1fa(0x2b0,'\x65\x38\x43\x6e')](_0x32298f,-0x1a16+-0x8*-0x4c7+-0x48*0x2b)?_0x32298f:-0x18*-0xbf+0x1916+0x5*-0x899;}}const _0x4bfcaf=new Set();for(const _0x3eb2b7 of _0x3d4fae)_0x4bfcaf['\x61\x64\x64'](_0x3eb2b7);for(const _0x32a41e of _0x213094)_0x4bfcaf[_0x4be1fa(0x211,'\x51\x68\x33\x4d')](_0x32a41e);return _0x4bfcaf[_0x4be1fa(0x2be,'\x57\x21\x36\x68')](_0x198e43[_0x4be1fa(0x2f2,'\x7a\x6c\x5d\x55')]),Array[_0x4be1fa(0x209,'\x44\x21\x6c\x51')](_0x4bfcaf);}const _0x3be934=0x3*-0x73b+0x1b5f+-0x2*0x2d1;function _0x17fee2(_0x568b80){const _0x34d447=_0x121674,_0x3ec5a7={'\x4b\x69\x5a\x76\x68':function(_0x430577,_0x5f5057){return _0x430577===_0x5f5057;},'\x75\x59\x77\x59\x63':_0x34d447(0x305,'\x48\x6d\x31\x70'),'\x6c\x74\x6b\x56\x7a':function(_0x427a0d,_0x4f1bab){return _0x427a0d(_0x4f1bab);},'\x74\x43\x57\x7a\x55':function(_0x3394bd,_0xbfd83c){return _0x3394bd!==_0xbfd83c;},'\x6f\x6b\x70\x61\x6f':_0x34d447(0x23d,'\x5d\x66\x75\x6c'),'\x57\x44\x58\x73\x51':function(_0x5ec6c2,_0x2d4fcf){return _0x5ec6c2(_0x2d4fcf);},'\x45\x49\x51\x56\x67':_0x34d447(0x21c,'\x72\x70\x28\x41')+'\x6f\x72','\x78\x61\x79\x7a\x41':'\x45\x41\x66\x71\x62','\x4c\x74\x4f\x45\x50':function(_0x38f404,_0x492b47){return _0x38f404>=_0x492b47;}},_0x4e5490=_0x3ec5a7[_0x34d447(0x352,'\x23\x28\x4c\x38')](_0x48e69f,_0x568b80);let _0x56be09=[];try{if(_0x3ec5a7['\x74\x43\x57\x7a\x55'](_0x3ec5a7[_0x34d447(0x25e,'\x68\x57\x50\x6d')],_0x3ec5a7['\x6f\x6b\x70\x61\x6f']))return[];else{const {tokenize:_0x5542ea}=_0x3ec5a7[_0x34d447(0x3a7,'\x4d\x58\x79\x33')](require,_0x3ec5a7[_0x34d447(0x257,'\x72\x6d\x43\x31')]),_0x450060=new Set();for(const _0x3b51dc of _0x5542ea(_0x568b80)){if(!_0x450060[_0x34d447(0x284,'\x26\x6c\x69\x69')](_0x3b51dc)){if(_0x3ec5a7[_0x34d447(0x3ac,'\x44\x21\x6c\x51')]!==_0x3ec5a7[_0x34d447(0x3a3,'\x4d\x58\x79\x33')]){const _0x3eec26=[];if(_0x379b6a[_0x34d447(0x2b1,'\x23\x28\x4c\x38')](_0x5cac94[_0x34d447(0x2d1,'\x5b\x5e\x21\x78')]['\x73\x74\x65\x70\x73']))_0x3eec26[_0x34d447(0x23a,'\x28\x30\x5e\x66')](_0x3107e0[_0x34d447(0x2c9,'\x28\x30\x5e\x66')][_0x34d447(0x20b,'\x56\x4a\x47\x51')][_0x34d447(0x282,'\x23\x4a\x49\x59')](-0x5f7+-0x2*0x284+0xaff,0x1f5*0xb+-0x1b32*-0x1+-0x30b6)['\x6a\x6f\x69\x6e']('\x3b\x20'));if(_0x3ec5a7[_0x34d447(0x213,'\x59\x70\x4f\x5e')](typeof _0x38e803[_0x34d447(0x333,'\x5a\x70\x6f\x67')][_0x34d447(0x226,'\x44\x5a\x6a\x63')],_0x3ec5a7[_0x34d447(0x2a0,'\x6c\x41\x73\x72')]))_0x3eec26[_0x34d447(0x3af,'\x23\x4a\x49\x59')](_0x1437c1[_0x34d447(0x383,'\x79\x68\x5d\x5b')][_0x34d447(0x20d,'\x5d\x6a\x6b\x4b')]);_0x496791=_0x3eec26[_0x34d447(0x39a,'\x6e\x51\x74\x7a')](_0x239f87)[_0x34d447(0x297,'\x43\x6b\x65\x5e')]('\x20\u2014\x20')[_0x34d447(0x36c,'\x6c\x76\x5e\x64')]();}else _0x450060[_0x34d447(0x32e,'\x23\x4a\x49\x59')](_0x3b51dc),_0x56be09[_0x34d447(0x31e,'\x7a\x72\x70\x5e')](_0x3b51dc);}if(_0x3ec5a7[_0x34d447(0x357,'\x6e\x51\x74\x7a')](_0x56be09[_0x34d447(0x217,'\x23\x57\x48\x45')],_0x3be934))break;}}}catch(_0x9f1a11){_0x56be09=[];}const _0x212990=new Set();for(const _0xf28671 of _0x4e5490)_0x212990[_0x34d447(0x211,'\x51\x68\x33\x4d')](_0xf28671);for(const _0x377e14 of _0x56be09)_0x212990[_0x34d447(0x1f8,'\x44\x25\x6b\x37')](_0x377e14);return Array[_0x34d447(0x3b2,'\x78\x67\x38\x38')](_0x212990);}async function _0x434f72(_0xdf57a,_0x332dcf){const _0x1f6b64=_0x121674,_0xd93379={'\x57\x46\x47\x5a\x55':function(_0x137ceb,_0xced11b){return _0x137ceb(_0xced11b);},'\x6c\x78\x5a\x48\x50':_0x1f6b64(0x373,'\x7a\x72\x70\x5e'),'\x57\x5a\x76\x6c\x6d':function(_0x48d932,_0x56675a){return _0x48d932===_0x56675a;},'\x4d\x6c\x56\x6e\x70':_0x1f6b64(0x367,'\x72\x70\x28\x41'),'\x54\x61\x74\x54\x6c':_0x1f6b64(0x206,'\x26\x71\x40\x35')+_0x1f6b64(0x2cf,'\x29\x68\x64\x5e')+_0x1f6b64(0x348,'\x5a\x70\x6f\x67'),'\x43\x4b\x74\x6c\x73':_0x1f6b64(0x343,'\x47\x44\x69\x4d')+_0x1f6b64(0x1f4,'\x68\x57\x50\x6d')+_0x1f6b64(0x311,'\x51\x68\x33\x4d'),'\x65\x76\x6f\x4c\x59':_0x1f6b64(0x2a9,'\x7a\x72\x70\x5e')+'\x61\x6c\x6c','\x68\x6d\x6b\x7a\x7a':function(_0x5266ec,_0x5e35f3){return _0x5266ec(_0x5e35f3);},'\x74\x57\x6a\x70\x71':'\x2e\x2f\x61\x73\x73\x65\x74\x43'+_0x1f6b64(0x3bb,'\x5d\x66\x75\x6c'),'\x42\x75\x6f\x74\x78':function(_0x1c6c9b,_0x96bd7a){return _0x1c6c9b+_0x96bd7a;},'\x71\x75\x67\x6e\x41':_0x1f6b64(0x248,'\x28\x4d\x72\x35')+'\x20','\x65\x41\x66\x67\x4a':function(_0x2722a9,_0x5a491b){return _0x2722a9(_0x5a491b);},'\x55\x44\x4e\x53\x72':_0x1f6b64(0x28d,'\x61\x53\x57\x66')+_0x1f6b64(0x28a,'\x6c\x76\x5e\x64'),'\x6e\x62\x75\x53\x71':_0x1f6b64(0x360,'\x72\x6d\x43\x31')+_0x1f6b64(0x264,'\x28\x4d\x72\x35'),'\x78\x47\x66\x54\x78':function(_0x432c06,_0x356ca6){return _0x432c06!==_0x356ca6;},'\x70\x56\x57\x49\x75':_0x1f6b64(0x2f7,'\x51\x68\x33\x4d'),'\x6b\x77\x69\x51\x4c':_0x1f6b64(0x35e,'\x4e\x68\x53\x48'),'\x69\x62\x61\x52\x63':function(_0x556f38,_0x1218da){return _0x556f38===_0x1218da;},'\x4a\x57\x68\x41\x4a':_0x1f6b64(0x288,'\x4d\x58\x79\x33'),'\x70\x64\x70\x67\x4f':_0x1f6b64(0x319,'\x44\x25\x6b\x37'),'\x58\x56\x45\x63\x61':function(_0x428c02){return _0x428c02();},'\x79\x55\x79\x78\x6c':'\x4b\x58\x6e\x42\x6b','\x58\x46\x64\x76\x50':_0x1f6b64(0x375,'\x5d\x66\x75\x6c'),'\x4b\x5a\x6e\x74\x66':function(_0x1c2fdc,_0x17b93e){return _0x1c2fdc!==_0x17b93e;},'\x45\x57\x55\x75\x54':_0x1f6b64(0x2cd,'\x4e\x68\x53\x48'),'\x4b\x66\x76\x44\x72':function(_0x2e6cf,_0x5e468f){return _0x2e6cf===_0x5e468f;}};let _0x48daee,_0x54b197;try{_0x48daee=_0xd93379['\x65\x41\x66\x67\x4a'](require,_0xd93379[_0x1f6b64(0x272,'\x44\x5a\x6a\x63')]),_0x54b197=require(_0xd93379[_0x1f6b64(0x251,'\x5d\x6a\x6b\x4b')]);}catch(_0x3f88de){return[];}try{if(_0xd93379[_0x1f6b64(0x36a,'\x58\x59\x6e\x66')](_0xd93379[_0x1f6b64(0x2c4,'\x58\x59\x6e\x66')],_0x1f6b64(0x385,'\x34\x4f\x57\x7a')))try{_0xd93379[_0x1f6b64(0x290,'\x34\x4f\x57\x7a')](_0x28c4b1,{'\x72\x75\x6e\x5f\x69\x64':_0x2b99e3,'\x61\x63\x74\x69\x6f\x6e':_0x474c2a,'\x61\x73\x73\x65\x74\x5f\x69\x64':_0x420880[_0x1f6b64(0x231,'\x29\x68\x64\x5e')]||_0x50edaf,'\x61\x73\x73\x65\x74\x5f\x74\x79\x70\x65':_0xd93379[_0x1f6b64(0x269,'\x23\x4a\x49\x59')],'\x73\x6f\x75\x72\x63\x65\x5f\x6e\x6f\x64\x65\x5f\x69\x64':_0x77de35[_0x1f6b64(0x2cb,'\x59\x70\x4f\x5e')+_0x1f6b64(0x307,'\x25\x21\x38\x51')]||_0x1f068b,'\x63\x68\x61\x69\x6e\x5f\x69\x64':_0x9d1950[_0x1f6b64(0x24a,'\x47\x44\x69\x4d')]||_0x56395a,'\x73\x63\x6f\x72\x65':_0x1b6b7b[_0x1f6b64(0x2a1,'\x4e\x68\x53\x48')+'\x74\x79'],'\x73\x69\x67\x6e\x61\x6c\x73':_0x4a45f8[_0x1f6b64(0x354,'\x51\x68\x33\x4d')](-0x5*-0x419+-0x1c59+0x7dc,0x77c*-0x2+0x4*-0x10+-0x7a0*-0x2),'\x72\x65\x61\x73\x6f\x6e':_0xd93379[_0x1f6b64(0x302,'\x26\x71\x40\x35')](_0x230519[_0x1f6b64(0x2ba,'\x51\x39\x35\x4b')],_0xd93379[_0x1f6b64(0x21f,'\x40\x52\x76\x43')])?_0xd93379[_0x1f6b64(0x27e,'\x75\x68\x33\x30')]:_0xd93379[_0x1f6b64(0x2b5,'\x44\x25\x6b\x37')],'\x65\x78\x74\x72\x61':{'\x76\x69\x61':_0xd93379['\x65\x76\x6f\x4c\x59'],'\x61\x74\x74\x72\x69\x62\x75\x74\x69\x6f\x6e':_0x1f6b64(0x370,'\x68\x57\x50\x6d')+_0x1f6b64(0x27a,'\x25\x21\x38\x51')+_0x1f6b64(0x25f,'\x61\x53\x57\x66'),'\x6f\x72\x69\x67\x69\x6e':_0x4893eb[_0x1f6b64(0x353,'\x4e\x68\x53\x48')]}});}catch(_0x4bb82f){}else{if(typeof _0x48daee[_0x1f6b64(0x2f3,'\x79\x68\x5d\x5b')+'\x69\x63\x45\x6e\x61\x62\x6c\x65'+'\x64']===_0xd93379[_0x1f6b64(0x292,'\x6e\x51\x74\x7a')]&&!_0x48daee[_0x1f6b64(0x222,'\x5d\x66\x75\x6c')+_0x1f6b64(0x22c,'\x42\x45\x73\x43')+'\x64']())return[];}}catch(_0x2d7e8d){}let _0x290752='';try{_0x290752=(_0xd93379['\x69\x62\x61\x52\x63'](typeof _0x54b197[_0x1f6b64(0x23b,'\x6c\x76\x5e\x64')+'\x6c'],_0x1f6b64(0x323,'\x48\x6d\x31\x70'))?_0x54b197[_0x1f6b64(0x201,'\x7a\x6c\x5d\x55')+'\x6c']():_0x48daee[_0x1f6b64(0x3aa,'\x23\x4a\x49\x59')+'\x6c']())||'',_0x290752=_0x290752[_0x1f6b64(0x202,'\x23\x28\x4c\x38')](/\/+$/,'');}catch(_0x5b2923){_0xd93379[_0x1f6b64(0x37d,'\x23\x28\x4c\x38')](_0xd93379[_0x1f6b64(0x296,'\x24\x39\x42\x5d')],_0xd93379['\x70\x64\x70\x67\x4f'])?_0x290752='':_0x399163='';}if(!_0x290752)return[];let _0x5563e3={};try{_0x5563e3=_0x54b197[_0x1f6b64(0x1f2,'\x24\x47\x70\x28')+_0x1f6b64(0x2a3,'\x28\x4d\x72\x35')]();}catch(_0x514b8d){_0x5563e3={};}let _0x4f6f9a=[];try{_0x4f6f9a=await _0x48daee[_0x1f6b64(0x32b,'\x29\x68\x64\x5e')+_0x1f6b64(0x277,'\x24\x47\x70\x28')+_0x1f6b64(0x2f4,'\x6e\x51\x74\x7a')](_0x290752,_0x5563e3,_0xdf57a,_0x332dcf);}catch(_0x3ac862){return[];}if(!Array[_0x1f6b64(0x387,'\x44\x25\x6b\x37')](_0x4f6f9a))return[];const _0x1217bd=_0xd93379[_0x1f6b64(0x37b,'\x68\x57\x50\x6d')](_0x1f66c4);let _0x1bdd07='';try{_0xd93379[_0x1f6b64(0x247,'\x74\x76\x70\x79')](_0x1f6b64(0x28e,'\x43\x6b\x65\x5e'),_0xd93379[_0x1f6b64(0x23e,'\x6c\x41\x73\x72')])?_0x1bdd07=_0x54b197[_0x1f6b64(0x2a5,'\x79\x68\x5d\x5b')+'\x64']()||'':{logAssetCall:_0x5d86a5}=_0xd93379[_0x1f6b64(0x2ce,'\x28\x30\x5e\x66')](_0x57612e,_0xd93379[_0x1f6b64(0x36b,'\x23\x4a\x49\x59')]);}catch(_0x258d0f){_0x1bdd07='';}const _0x935c25=[];for(const _0x301c7b of _0x4f6f9a){if(_0xd93379[_0x1f6b64(0x3a8,'\x7a\x6c\x5d\x55')](_0xd93379[_0x1f6b64(0x2d6,'\x5a\x70\x6f\x67')],_0xd93379[_0x1f6b64(0x337,'\x47\x44\x69\x4d')])){if(!_0x301c7b||_0xd93379[_0x1f6b64(0x1f7,'\x5b\x5e\x21\x78')](typeof _0x301c7b,_0xd93379['\x45\x57\x55\x75\x54']))continue;const _0x131fc8=_0xd93379[_0x1f6b64(0x30e,'\x48\x6d\x31\x70')](Number,_0x301c7b[_0x1f6b64(0x291,'\x79\x68\x5d\x5b')+_0x1f6b64(0x34c,'\x7a\x6c\x5d\x55')+_0x1f6b64(0x26a,'\x59\x70\x4f\x5e')]);if(!Number[_0x1f6b64(0x28f,'\x4e\x68\x53\x48')](_0x131fc8)||_0x131fc8<_0x1217bd)continue;if(_0x1bdd07&&_0x301c7b[_0x1f6b64(0x28b,'\x56\x4a\x47\x51')+_0x1f6b64(0x2b8,'\x23\x57\x48\x45')]&&_0xd93379[_0x1f6b64(0x35c,'\x47\x44\x69\x4d')](_0x301c7b[_0x1f6b64(0x24d,'\x25\x21\x38\x51')+_0x1f6b64(0x2e5,'\x57\x21\x36\x68')],_0x1bdd07))continue;const _0x403cf6={};_0x403cf6[_0x1f6b64(0x338,'\x58\x59\x6e\x66')]=_0x301c7b[_0x1f6b64(0x30a,'\x7a\x72\x70\x5e')]||_0x301c7b[_0x1f6b64(0x2a2,'\x61\x53\x57\x66')]||'',_0x403cf6[_0x1f6b64(0x233,'\x5d\x66\x75\x6c')+_0x1f6b64(0x32f,'\x51\x39\x35\x4b')]=_0x301c7b[_0x1f6b64(0x1f5,'\x43\x21\x30\x6d')+_0x1f6b64(0x2e6,'\x56\x4a\x47\x51')]||'',_0x403cf6[_0x1f6b64(0x34b,'\x29\x68\x64\x5e')]=_0x301c7b['\x63\x68\x61\x69\x6e\x5f\x69\x64']||'',_0x403cf6['\x73\x69\x6d\x69\x6c\x61\x72\x69'+'\x74\x79']=_0x131fc8,_0x403cf6[_0x1f6b64(0x349,'\x29\x68\x64\x5e')]=_0x301c7b[_0x1f6b64(0x22a,'\x44\x25\x6b\x37')+_0x1f6b64(0x2b2,'\x59\x70\x4f\x5e')]||_0x301c7b[_0x1f6b64(0x249,'\x4d\x58\x79\x33')]||_0x301c7b['\x6e\x61\x6d\x65']||'',_0x403cf6[_0x1f6b64(0x2b6,'\x43\x6b\x65\x5e')]=_0x301c7b[_0x1f6b64(0x308,'\x24\x39\x42\x5d')+'\x72\x79']||_0x301c7b[_0x1f6b64(0x265,'\x72\x6d\x43\x31')]||'',_0x403cf6[_0x1f6b64(0x2b4,'\x72\x6d\x43\x31')]=_0xd93379[_0x1f6b64(0x2e2,'\x51\x68\x33\x4d')],_0x935c25[_0x1f6b64(0x270,'\x57\x21\x36\x68')](_0x403cf6);}else{const _0x506c12=_0x58c0b0[_0x1f6b64(0x2f0,'\x72\x70\x28\x41')](_0x208098=>_0x365ddb(_0x208098)['\x73\x70\x6c\x69\x74']('\x7c')[0x10f1+0x1812+-0x2903])[_0x1f6b64(0x2c0,'\x54\x79\x55\x73')](_0x20a367=>_0x20a367&&!_0x20a367['\x73\x74\x61\x72\x74\x73\x57\x69'+'\x74\x68']('\x2f'))[_0x1f6b64(0x24c,'\x54\x79\x55\x73')](0x1da1+-0x4a*-0x4c+-0x103*0x33,0xa5f+-0x1*0xc69+0x20e);if(_0x506c12[_0x1f6b64(0x203,'\x78\x67\x38\x38')])_0x2b85ce=_0xd93379[_0x1f6b64(0x377,'\x74\x76\x70\x79')](_0xd93379[_0x1f6b64(0x294,'\x79\x68\x5d\x5b')],_0x506c12[_0x1f6b64(0x33c,'\x44\x5a\x6a\x63')]('\x2c\x20'));}}return _0x935c25;}function _0x486ccc(_0x12efcc){const _0x4cfffd=_0x121674,_0x5c6158={'\x77\x67\x76\x42\x6f':function(_0x147cc1,_0x539dcb){return _0x147cc1(_0x539dcb);},'\x69\x5a\x72\x79\x45':function(_0x3b7d1e,_0x35e864){return _0x3b7d1e(_0x35e864);},'\x4e\x79\x44\x56\x67':_0x4cfffd(0x261,'\x68\x57\x50\x6d')+'\x6f\x72','\x46\x57\x75\x74\x62':function(_0x417cdd,_0x3d55ec){return _0x417cdd===_0x3d55ec;},'\x5a\x76\x6c\x4f\x61':_0x4cfffd(0x301,'\x57\x21\x36\x68'),'\x5a\x55\x44\x6e\x5a':function(_0x4faedd,_0x528192){return _0x4faedd!==_0x528192;},'\x47\x43\x69\x6b\x68':_0x4cfffd(0x392,'\x75\x68\x33\x30'),'\x73\x43\x68\x4a\x48':_0x4cfffd(0x21b,'\x56\x4a\x47\x51'),'\x65\x46\x57\x42\x70':_0x4cfffd(0x23c,'\x41\x78\x41\x6d'),'\x67\x6c\x56\x68\x79':_0x4cfffd(0x3bc,'\x47\x44\x69\x4d'),'\x49\x44\x54\x4e\x51':_0x4cfffd(0x2c7,'\x25\x21\x38\x51'),'\x79\x49\x4a\x5a\x4c':function(_0x2bc0be,_0x324174){return _0x2bc0be!==_0x324174;},'\x71\x6d\x6d\x6c\x64':_0x4cfffd(0x2b9,'\x61\x53\x57\x66'),'\x69\x62\x79\x51\x76':function(_0x3014fc,_0x1df3b3){return _0x3014fc+_0x1df3b3;},'\x48\x6c\x6c\x61\x59':_0x4cfffd(0x248,'\x28\x4d\x72\x35')+'\x20','\x5a\x59\x63\x73\x6b':function(_0x457461,_0x338789){return _0x457461*_0x338789;},'\x64\x66\x42\x77\x50':function(_0x1a55a9,_0x370cde){return _0x1a55a9*_0x370cde;},'\x49\x77\x68\x4c\x70':_0x4cfffd(0x35d,'\x58\x59\x6e\x66')};let _0x258fc5=[],_0x3e57c6;try{_0x258fc5=_0x5c6158[_0x4cfffd(0x310,'\x42\x45\x73\x43')](require,_0x4cfffd(0x298,'\x44\x5a\x6a\x63')+_0x4cfffd(0x35a,'\x48\x6d\x31\x70'))[_0x4cfffd(0x3b3,'\x6c\x76\x5e\x64')+'\x73']()||[],_0x3e57c6=_0x5c6158[_0x4cfffd(0x371,'\x23\x4a\x49\x59')](require,_0x5c6158['\x4e\x79\x44\x56\x67']);}catch(_0x4272ae){return[];}if(!Array[_0x4cfffd(0x341,'\x44\x21\x6c\x51')](_0x258fc5)||_0x5c6158[_0x4cfffd(0x2b7,'\x72\x6d\x43\x31')](_0x258fc5[_0x4cfffd(0x287,'\x7a\x72\x70\x5e')],-0x2bb+-0x250d+0x27c8)||!_0x3e57c6)return[];const _0x2d2296=[];for(const _0x455f2f of _0x258fc5){if(_0x5c6158[_0x4cfffd(0x2f8,'\x65\x38\x43\x6e')]!==_0x5c6158[_0x4cfffd(0x295,'\x6c\x76\x5e\x64')]){if(_0x4658e9[_0x4cfffd(0x2cc,'\x26\x6c\x69\x69')+_0x4cfffd(0x3a6,'\x26\x71\x40\x35')+_0x4cfffd(0x38a,'\x41\x78\x41\x6d')](_0x45057e,_0x1df977))_0x562ff8++;}else{if(!_0x455f2f||_0x5c6158[_0x4cfffd(0x39e,'\x29\x68\x64\x5e')](_0x455f2f[_0x4cfffd(0x340,'\x58\x59\x6e\x66')],_0x5c6158[_0x4cfffd(0x2e8,'\x5d\x6a\x6b\x4b')]))continue;const _0x56fd66=Array[_0x4cfffd(0x3a1,'\x78\x67\x38\x38')](_0x455f2f[_0x4cfffd(0x335,'\x43\x21\x30\x6d')+_0x4cfffd(0x2e3,'\x5b\x5e\x21\x78')])?_0x455f2f[_0x4cfffd(0x2f6,'\x26\x6c\x69\x69')+_0x4cfffd(0x2e3,'\x5b\x5e\x21\x78')]:[];let _0x2a3e7c=0x1d3b+-0xcf0+0x104b*-0x1;for(const _0x352a5d of _0x56fd66){try{if(_0x5c6158[_0x4cfffd(0x351,'\x51\x39\x35\x4b')](_0x5c6158[_0x4cfffd(0x281,'\x72\x70\x28\x41')],_0x5c6158[_0x4cfffd(0x34a,'\x42\x45\x73\x43')])){if(_0x3e57c6[_0x4cfffd(0x246,'\x34\x4f\x57\x7a')+_0x4cfffd(0x2fd,'\x75\x68\x33\x30')+_0x4cfffd(0x256,'\x4e\x68\x53\x48')](_0x352a5d,_0x12efcc))_0x2a3e7c++;}else _0x5b8e12=_0x1f1c56['\x67\x65\x74\x4e\x6f\x64\x65\x49'+'\x64']()||'';}catch(_0x11bac5){}}if(_0x2a3e7c<0x20b6+-0x1a1*-0x3+-0x2598)continue;let _0x750a0a=-0x63e+0x1338+-0xcfa;try{_0x750a0a=_0x3e57c6[_0x4cfffd(0x230,'\x72\x6d\x43\x31')+_0x4cfffd(0x1ff,'\x25\x21\x38\x51')+'\x63'](_0x455f2f,_0x12efcc)||-0x1*-0x1a69+0x1*0x11c7+0x10*-0x2c3;}catch(_0x176829){_0x750a0a=0x23*-0x5+0x1482+-0x13d3;}let _0x2cf8fa=(_0x455f2f[_0x4cfffd(0x23f,'\x24\x39\x42\x5d')]||'')[_0x4cfffd(0x33f,'\x56\x4a\x47\x51')]()[_0x4cfffd(0x2ac,'\x47\x44\x69\x4d')]();if(!_0x2cf8fa&&_0x455f2f[_0x4cfffd(0x37a,'\x58\x59\x6e\x66')]&&_0x5c6158['\x46\x57\x75\x74\x62'](typeof _0x455f2f[_0x4cfffd(0x30f,'\x48\x6d\x31\x70')],_0x5c6158[_0x4cfffd(0x2a4,'\x54\x79\x55\x73')])){const _0x5594f0=[];if(Array[_0x4cfffd(0x2e1,'\x72\x6d\x43\x31')](_0x455f2f[_0x4cfffd(0x3a0,'\x7a\x6c\x5d\x55')][_0x4cfffd(0x330,'\x5b\x5e\x21\x78')]))_0x5594f0[_0x4cfffd(0x382,'\x26\x6c\x69\x69')](_0x455f2f[_0x4cfffd(0x262,'\x43\x21\x30\x6d')][_0x4cfffd(0x26f,'\x72\x6d\x43\x31')]['\x73\x6c\x69\x63\x65'](0x168e+0x325+-0x33*0x81,-0x15e5+-0x859*-0x1+0xd8f*0x1)[_0x4cfffd(0x361,'\x5b\x5e\x21\x78')]('\x3b\x20'));if(_0x5c6158[_0x4cfffd(0x30c,'\x6e\x51\x74\x7a')](typeof _0x455f2f[_0x4cfffd(0x278,'\x51\x39\x35\x4b')][_0x4cfffd(0x29e,'\x51\x39\x35\x4b')],_0x5c6158[_0x4cfffd(0x212,'\x78\x67\x38\x38')]))_0x5594f0[_0x4cfffd(0x3b1,'\x4e\x68\x53\x48')](_0x455f2f[_0x4cfffd(0x2d7,'\x44\x25\x6b\x37')][_0x4cfffd(0x22e,'\x7a\x6c\x5d\x55')]);_0x2cf8fa=_0x5594f0[_0x4cfffd(0x369,'\x23\x28\x4c\x38')](Boolean)[_0x4cfffd(0x304,'\x26\x6c\x69\x69')](_0x5c6158[_0x4cfffd(0x396,'\x34\x4f\x57\x7a')])[_0x4cfffd(0x38d,'\x42\x45\x73\x43')]();}if(!_0x2cf8fa){if(_0x5c6158[_0x4cfffd(0x245,'\x25\x21\x38\x51')](_0x5c6158['\x71\x6d\x6d\x6c\x64'],_0x5c6158[_0x4cfffd(0x29b,'\x43\x21\x30\x6d')]))return[];else{const _0x4f29aa=_0x56fd66[_0x4cfffd(0x2ad,'\x65\x38\x43\x6e')](_0x3127b4=>String(_0x3127b4)[_0x4cfffd(0x1f6,'\x5d\x75\x66\x35')]('\x7c')[0xa*-0x131+0x1*0x59f+0x64b])[_0x4cfffd(0x3b5,'\x41\x78\x41\x6d')](_0x239fa4=>_0x239fa4&&!_0x239fa4[_0x4cfffd(0x220,'\x41\x78\x41\x6d')+'\x74\x68']('\x2f'))[_0x4cfffd(0x332,'\x24\x47\x70\x28')](0x1*-0x20e9+-0x1fd5+0x40be,0x95*0x13+0x1510+-0x201b*0x1);if(_0x4f29aa[_0x4cfffd(0x274,'\x47\x44\x69\x4d')])_0x2cf8fa=_0x5c6158[_0x4cfffd(0x225,'\x6c\x76\x5e\x64')](_0x5c6158[_0x4cfffd(0x35b,'\x72\x70\x28\x41')],_0x4f29aa[_0x4cfffd(0x2eb,'\x40\x52\x76\x43')]('\x2c\x20'));}}_0x2d2296[_0x4cfffd(0x328,'\x5b\x5e\x21\x78')]({'\x61\x73\x73\x65\x74\x5f\x69\x64':_0x455f2f['\x61\x73\x73\x65\x74\x5f\x69\x64']||'','\x73\x6f\x75\x72\x63\x65\x5f\x6e\x6f\x64\x65\x5f\x69\x64':_0x455f2f[_0x4cfffd(0x312,'\x6c\x76\x5e\x64')+_0x4cfffd(0x238,'\x28\x30\x5e\x66')]||_0x455f2f[_0x4cfffd(0x242,'\x44\x25\x6b\x37')+_0x4cfffd(0x219,'\x43\x6b\x65\x5e')]||'','\x63\x68\x61\x69\x6e\x5f\x69\x64':_0x455f2f['\x63\x68\x61\x69\x6e\x5f\x69\x64']||'','\x73\x69\x6d\x69\x6c\x61\x72\x69\x74\x79':Math[_0x4cfffd(0x37c,'\x57\x21\x36\x68')](-0xb*0x269+0xa18+0x106c,_0x5c6158['\x69\x62\x79\x51\x76'](_0x5c6158[_0x4cfffd(0x3b8,'\x51\x68\x33\x4d')](-0x3*0x4bd+-0xa0a+-0x1841*-0x1+0.75,_0x5c6158[_0x4cfffd(0x275,'\x24\x39\x42\x5d')](0x3cb+0x2*0x9dd+-0x1785+0.05,_0x2a3e7c)),_0x5c6158['\x64\x66\x42\x77\x50'](0xd55*-0x1+0x1344+-0x31*0x1f+0.1,_0x750a0a))),'\x74\x69\x74\x6c\x65':_0x455f2f['\x69\x64']||_0x455f2f[_0x4cfffd(0x316,'\x5d\x66\x75\x6c')+_0x4cfffd(0x2af,'\x54\x79\x55\x73')]||'','\x73\x75\x6d\x6d\x61\x72\x79':_0x2cf8fa,'\x6f\x72\x69\x67\x69\x6e':_0x5c6158[_0x4cfffd(0x3b7,'\x7a\x6c\x5d\x55')],'\x5f\x68\x69\x74\x73':_0x2a3e7c});}}return _0x2d2296;}function _0x3ff875(_0x3b2aca){const _0x22c549=_0x121674,_0x2417d0={'\x6f\x4a\x75\x6f\x74':function(_0x2dd070,_0x4fe1cf){return _0x2dd070(_0x4fe1cf);},'\x76\x55\x50\x53\x71':function(_0x5187ec,_0x42c432){return _0x5187ec||_0x42c432;}},_0x19f3fe=(_0x3b2aca&&_0x3b2aca[_0x22c549(0x236,'\x7a\x72\x70\x5e')]?_0x2417d0[_0x22c549(0x2ab,'\x6c\x76\x5e\x64')](String,_0x3b2aca[_0x22c549(0x30d,'\x44\x25\x6b\x37')]):'')[_0x22c549(0x27b,'\x72\x70\x28\x41')](),_0x904310=(_0x3b2aca&&_0x3b2aca[_0x22c549(0x39b,'\x47\x44\x69\x4d')]?String(_0x3b2aca[_0x22c549(0x394,'\x26\x6c\x69\x69')]):'')[_0x22c549(0x355,'\x7a\x6c\x5d\x55')]();return!!_0x2417d0[_0x22c549(0x2a7,'\x44\x5a\x6a\x63')](_0x19f3fe,_0x904310);}function _0xcae5e5(_0x1597ff){const _0x5b8358=_0x121674,_0x2b8019={};_0x2b8019['\x77\x58\x61\x4d\x6d']=_0x5b8358(0x25a,'\x7a\x72\x70\x5e')+'\x73',_0x2b8019[_0x5b8358(0x239,'\x56\x4a\x47\x51')]='\x5b\x45\x76\x6f\x6c\x76\x65\x72'+_0x5b8358(0x329,'\x44\x25\x6b\x37')+_0x5b8358(0x22d,'\x23\x4a\x49\x59')+_0x5b8358(0x3ab,'\x48\x6d\x31\x70')+_0x5b8358(0x2dd,'\x28\x30\x5e\x66'),_0x2b8019[_0x5b8358(0x3a2,'\x5d\x75\x66\x35')]=function(_0x5c9849,_0x560505){return _0x5c9849===_0x560505;},_0x2b8019[_0x5b8358(0x399,'\x40\x52\x76\x43')]=_0x5b8358(0x1fa,'\x79\x68\x5d\x5b'),_0x2b8019[_0x5b8358(0x321,'\x6c\x41\x73\x72')]=_0x5b8358(0x317,'\x28\x30\x5e\x66')+_0x5b8358(0x21a,'\x72\x70\x28\x41')+'\x65\x64',_0x2b8019[_0x5b8358(0x395,'\x42\x45\x73\x43')]=_0x5b8358(0x2d2,'\x28\x4d\x72\x35')+_0x5b8358(0x243,'\x65\x38\x43\x6e')+_0x5b8358(0x31b,'\x79\x68\x5d\x5b')+_0x5b8358(0x36f,'\x23\x4a\x49\x59')+_0x5b8358(0x1f0,'\x48\x6d\x31\x70')+_0x5b8358(0x344,'\x78\x67\x38\x38')+_0x5b8358(0x1f1,'\x29\x68\x64\x5e')+_0x5b8358(0x376,'\x74\x76\x70\x79')+'\x65\x66\x6f\x72\x65\x20\x61\x70'+_0x5b8358(0x2db,'\x5d\x6a\x6b\x4b'),_0x2b8019[_0x5b8358(0x2a8,'\x6c\x76\x5e\x64')]=_0x5b8358(0x389,'\x40\x52\x76\x43')+_0x5b8358(0x2f1,'\x28\x30\x5e\x66')+_0x5b8358(0x39c,'\x28\x30\x5e\x66')+_0x5b8358(0x32c,'\x25\x21\x38\x51')+_0x5b8358(0x214,'\x29\x68\x64\x5e')+_0x5b8358(0x228,'\x34\x4f\x57\x7a')+_0x5b8358(0x33a,'\x42\x45\x73\x43')+'\x67\x65\x70\x5f\x72\x65\x63\x61'+_0x5b8358(0x250,'\x4e\x68\x53\x48'),_0x2b8019[_0x5b8358(0x223,'\x7a\x72\x70\x5e')]=function(_0x428ad5,_0xa81200){return _0x428ad5>_0xa81200;};const _0x37d128=_0x2b8019,_0x5357f2=(_0x1597ff||[])[_0x5b8358(0x2c0,'\x54\x79\x55\x73')](_0x3ff875);if(!_0x5357f2[_0x5b8358(0x260,'\x34\x4f\x57\x7a')])return'';const _0x3a5c1e=[_0x37d128[_0x5b8358(0x397,'\x61\x53\x57\x66')]];let _0x1bc4b4=![];for(const _0x38b0d8 of _0x5357f2){if(_0x37d128[_0x5b8358(0x31a,'\x24\x47\x70\x28')]('\x70\x78\x6e\x45\x47',_0x37d128[_0x5b8358(0x259,'\x4d\x58\x79\x33')])){const _0x1f30fe=(_0x38b0d8[_0x5b8358(0x27d,'\x5d\x75\x66\x35')]||'')[_0x5b8358(0x38e,'\x75\x68\x33\x30')]()[_0x5b8358(0x325,'\x28\x30\x5e\x66')](0x17a*0x4+-0x6b*-0x23+-0x1489,-0x17*-0x19a+0x1987+-0x2d*0x161),_0x3f4133=(_0x38b0d8[_0x5b8358(0x2de,'\x28\x4d\x72\x35')]||'')[_0x5b8358(0x33e,'\x78\x67\x38\x38')]()[_0x5b8358(0x34f,'\x43\x21\x30\x6d')](/\s+/g,'\x20')[_0x5b8358(0x232,'\x58\x59\x6e\x66')]()[_0x5b8358(0x26d,'\x48\x6d\x31\x70')](0x1*0x1345+-0x6aa+0x1*-0xc9b,_0x45f797),_0x37a27d=_0x38b0d8['\x73\x69\x6d\x69\x6c\x61\x72\x69'+'\x74\x79']!=null?_0x38b0d8[_0x5b8358(0x364,'\x61\x53\x57\x66')+'\x74\x79'][_0x5b8358(0x38f,'\x23\x4a\x49\x59')](-0xc*-0x32b+0x12e0*-0x1+-0x4f*0x3e):'\x3f',_0xbb3566=_0x38b0d8[_0x5b8358(0x27f,'\x5d\x75\x66\x35')]?'\x61\x73\x73\x65\x74\x20'+_0x38b0d8[_0x5b8358(0x2df,'\x51\x68\x33\x4d')]:_0x37d128[_0x5b8358(0x31c,'\x78\x67\x38\x38')];if(_0x38b0d8[_0x5b8358(0x2c8,'\x74\x76\x70\x79')])_0x1bc4b4=!![];_0x3a5c1e[_0x5b8358(0x346,'\x51\x68\x33\x4d')]('\x2d\x20'+(_0x1f30fe?_0x5b8358(0x25b,'\x44\x25\x6b\x37')+_0x1f30fe+'\x22':_0x5b8358(0x2ef,'\x28\x30\x5e\x66'))+'\x20\x28'+_0xbb3566+_0x5b8358(0x3a5,'\x5d\x75\x66\x35')+_0x37a27d+'\x29'+(_0x3f4133?'\x3a\x20'+_0x3f4133:''));}else{const _0x3cc5d4=_0x3eb987(FQmAul[_0x5b8358(0x2e4,'\x25\x21\x38\x51')]);_0x2cb25a=_0x3cc5d4[_0x5b8358(0x22b,'\x41\x78\x41\x6d')+_0x5b8358(0x241,'\x72\x70\x28\x41')](_0x382712,_0x92f7f6,_0x32c94a)||[],_0x1a40a7=_0x3cc5d4[_0x5b8358(0x221,'\x68\x57\x50\x6d')+_0x5b8358(0x2bc,'\x79\x68\x5d\x5b')+_0x5b8358(0x363,'\x56\x4a\x47\x51')](_0x4d7d49)||[];}}_0x3a5c1e[_0x5b8358(0x38b,'\x26\x71\x40\x35')](_0x37d128['\x58\x76\x6a\x4f\x70']);if(_0x1bc4b4)_0x3a5c1e['\x70\x75\x73\x68'](_0x37d128[_0x5b8358(0x218,'\x4e\x68\x53\x48')]);const _0x5ab6a7=_0x3a5c1e[_0x5b8358(0x31d,'\x51\x39\x35\x4b')]('\x0a');return _0x37d128[_0x5b8358(0x324,'\x24\x39\x42\x5d')](_0x5ab6a7['\x6c\x65\x6e\x67\x74\x68'],_0x264a6c)?_0x5ab6a7[_0x5b8358(0x2ed,'\x40\x52\x76\x43')](0x2027*-0x1+-0x1fb4+-0x3fdb*-0x1,_0x264a6c):_0x5ab6a7;}function _0x3fbf3b(_0x8be63f,_0x830bf2,_0x1254eb,_0xae844){const _0x514b09=_0x121674,_0x5c885d={'\x62\x50\x54\x46\x78':function(_0x5769a1,_0x28ef68){return _0x5769a1(_0x28ef68);},'\x56\x54\x49\x7a\x7a':'\x2e\x2f\x61\x73\x73\x65\x74\x43'+_0x514b09(0x299,'\x43\x21\x30\x6d'),'\x6c\x6a\x45\x4f\x64':function(_0x145fd5,_0x18aa0a){return _0x145fd5===_0x18aa0a;},'\x72\x59\x50\x4e\x76':_0x514b09(0x254,'\x6e\x51\x74\x7a'),'\x7a\x57\x6d\x74\x43':_0x514b09(0x21e,'\x5a\x70\x6f\x67')+_0x514b09(0x1fc,'\x4d\x58\x79\x33'),'\x68\x72\x79\x58\x54':_0x514b09(0x2c5,'\x57\x21\x36\x68')+_0x514b09(0x3ba,'\x6e\x51\x74\x7a')+'\x64\x6f\x77','\x46\x73\x4e\x74\x47':_0x514b09(0x24b,'\x6e\x51\x74\x7a'),'\x53\x76\x54\x49\x46':_0x514b09(0x200,'\x41\x78\x41\x6d'),'\x73\x78\x62\x70\x42':function(_0x1ff29f,_0x5da8b1){return _0x1ff29f(_0x5da8b1);},'\x56\x53\x72\x68\x4a':'\x68\x75\x62','\x54\x6e\x53\x53\x52':'\x68\x75\x62\x5f\x73\x65\x6d\x61'+_0x514b09(0x293,'\x41\x78\x41\x6d')+_0x514b09(0x339,'\x78\x67\x38\x38'),'\x53\x4e\x55\x44\x6a':'\x6c\x6f\x63\x61\x6c\x5f\x67\x65'+_0x514b09(0x39d,'\x5d\x6a\x6b\x4b')+_0x514b09(0x384,'\x28\x30\x5e\x66'),'\x75\x4f\x79\x45\x74':_0x514b09(0x2dc,'\x5b\x5e\x21\x78')+_0x514b09(0x1f9,'\x43\x21\x30\x6d'),'\x71\x70\x69\x58\x75':'\x63\x6f\x72\x72\x65\x6c\x61\x74'+'\x69\x6f\x6e\x61\x6c\x5f\x6c\x6f'+_0x514b09(0x309,'\x5a\x70\x6f\x67')};let _0x4a1ad8;try{({logAssetCall:_0x4a1ad8}=_0x5c885d[_0x514b09(0x224,'\x23\x4a\x49\x59')](require,_0x5c885d[_0x514b09(0x2d4,'\x5d\x6a\x6b\x4b')]));}catch(_0x225623){return;}const _0x225172=_0x5c885d[_0x514b09(0x368,'\x5d\x6a\x6b\x4b')](_0x830bf2,_0x5c885d[_0x514b09(0x2c1,'\x5d\x6a\x6b\x4b')])?_0x5c885d[_0x514b09(0x26e,'\x5b\x5e\x21\x78')]:_0x5c885d['\x68\x72\x79\x58\x54'];for(const _0x30f72a of _0x8be63f){if(_0x5c885d['\x6c\x6a\x45\x4f\x64'](_0x5c885d[_0x514b09(0x2f5,'\x5d\x66\x75\x6c')],_0x5c885d[_0x514b09(0x3a9,'\x75\x68\x33\x30')]))return[];else try{_0x5c885d['\x73\x78\x62\x70\x42'](_0x4a1ad8,{'\x72\x75\x6e\x5f\x69\x64':_0x1254eb,'\x61\x63\x74\x69\x6f\x6e':_0x225172,'\x61\x73\x73\x65\x74\x5f\x69\x64':_0x30f72a[_0x514b09(0x362,'\x48\x6d\x31\x70')]||undefined,'\x61\x73\x73\x65\x74\x5f\x74\x79\x70\x65':'\x47\x65\x6e\x65','\x73\x6f\x75\x72\x63\x65\x5f\x6e\x6f\x64\x65\x5f\x69\x64':_0x30f72a[_0x514b09(0x381,'\x61\x53\x57\x66')+_0x514b09(0x32d,'\x40\x52\x76\x43')]||undefined,'\x63\x68\x61\x69\x6e\x5f\x69\x64':_0x30f72a[_0x514b09(0x29a,'\x68\x57\x50\x6d')]||undefined,'\x73\x63\x6f\x72\x65':_0x30f72a[_0x514b09(0x342,'\x25\x21\x38\x51')+'\x74\x79'],'\x73\x69\x67\x6e\x61\x6c\x73':_0xae844[_0x514b09(0x2f9,'\x5d\x66\x75\x6c')](0x13a1+0x2549*-0x1+-0x1*-0x11a8,0x39*0x2b+-0x1d59+-0xc3*-0x1a),'\x72\x65\x61\x73\x6f\x6e':_0x30f72a['\x6f\x72\x69\x67\x69\x6e']===_0x5c885d[_0x514b09(0x2e0,'\x4e\x68\x53\x48')]?_0x5c885d[_0x514b09(0x267,'\x42\x45\x73\x43')]:_0x5c885d[_0x514b09(0x366,'\x44\x21\x6c\x51')],'\x65\x78\x74\x72\x61':{'\x76\x69\x61':_0x5c885d['\x75\x4f\x79\x45\x74'],'\x61\x74\x74\x72\x69\x62\x75\x74\x69\x6f\x6e':_0x5c885d['\x71\x70\x69\x58\x75'],'\x6f\x72\x69\x67\x69\x6e':_0x30f72a[_0x514b09(0x2d0,'\x28\x4d\x72\x35')]}});}catch(_0x66e765){}}}async function _0x38818b(_0x485613){const _0x5510fd=_0x121674,_0x48668b={'\x53\x79\x4e\x49\x4e':_0x5510fd(0x210,'\x23\x28\x4c\x38'),'\x6d\x51\x59\x65\x6c':function(_0x316d66,_0x399a45){return _0x316d66(_0x399a45);},'\x78\x49\x58\x52\x79':function(_0x821c1,_0x221504){return _0x821c1>_0x221504;},'\x6c\x43\x46\x77\x49':function(_0xbbacf,_0x1223dd){return _0xbbacf-_0x1223dd;},'\x73\x4e\x76\x57\x78':function(_0x1905d5,_0x4d5bb1,_0x8f8bba){return _0x1905d5(_0x4d5bb1,_0x8f8bba);},'\x69\x4e\x49\x44\x68':function(_0x273b09,_0x325655){return _0x273b09===_0x325655;},'\x77\x67\x63\x71\x6b':_0x5510fd(0x3ae,'\x4e\x68\x53\x48'),'\x46\x63\x6d\x42\x64':function(_0x3aab3d){return _0x3aab3d();},'\x63\x58\x7a\x46\x6a':function(_0x158e9c,_0x35ed1d){return _0x158e9c-_0x35ed1d;},'\x62\x45\x4d\x6a\x44':function(_0x121c18,_0x3242db,_0x29e758,_0x5e2084,_0x535acb){return _0x121c18(_0x3242db,_0x29e758,_0x5e2084,_0x535acb);},'\x4c\x50\x68\x45\x44':'\x65\x6e\x66\x6f\x72\x63\x65'},_0x7aaf5d=_0x485613||{},_0x52f59b=_0x7aaf5d[_0x5510fd(0x244,'\x7a\x72\x70\x5e')]||_0x281f83(),_0x37f3ce={};_0x37f3ce[_0x5510fd(0x3be,'\x43\x21\x30\x6d')]=![],_0x37f3ce[_0x5510fd(0x2c2,'\x48\x6d\x31\x70')]=null,_0x37f3ce[_0x5510fd(0x22f,'\x54\x79\x55\x73')]=[],_0x37f3ce[_0x5510fd(0x204,'\x44\x21\x6c\x51')]=0x0,_0x37f3ce[_0x5510fd(0x306,'\x56\x4a\x47\x51')]=[];if(_0x52f59b===_0x48668b[_0x5510fd(0x276,'\x24\x39\x42\x5d')])return _0x37f3ce;const _0x12956a=_0x48668b[_0x5510fd(0x33b,'\x28\x4d\x72\x35')](_0x17fee2,_0x7aaf5d[_0x5510fd(0x252,'\x44\x21\x6c\x51')]),_0x399cde={};_0x399cde['\x69\x6e\x6a\x65\x63\x74']=![],_0x399cde[_0x5510fd(0x2fb,'\x23\x28\x4c\x38')]=null,_0x399cde[_0x5510fd(0x2fe,'\x78\x67\x38\x38')]=[],_0x399cde[_0x5510fd(0x347,'\x72\x70\x28\x41')]=0x0,_0x399cde['\x73\x69\x67\x6e\x61\x6c\x73']=[];if(!_0x12956a['\x6c\x65\x6e\x67\x74\x68'])return _0x399cde;const _0x1bd824=_0x48668b[_0x5510fd(0x39f,'\x72\x6d\x43\x31')](_0x486ccc,_0x12956a),_0x2d150b=0x377*-0x2+-0x120c+-0x2*-0xcc8;let _0x50f0c7=Number['\x69\x73\x46\x69\x6e\x69\x74\x65'](_0x7aaf5d[_0x5510fd(0x3bd,'\x42\x45\x73\x43')+'\x73'])&&_0x48668b['\x78\x49\x58\x52\x79'](_0x7aaf5d[_0x5510fd(0x2ff,'\x65\x38\x43\x6e')+'\x73'],0x1b05+0x9*0x31c+0x3701*-0x1)?_0x7aaf5d[_0x5510fd(0x21d,'\x7a\x6c\x5d\x55')+'\x73']:-0x3*0xe+-0x721+0xf1b*0x1;if(Number[_0x5510fd(0x2fc,'\x43\x21\x30\x6d')](_0x7aaf5d[_0x5510fd(0x229,'\x26\x71\x40\x35')+'\x4d\x73'])){const _0x26bfa4=_0x48668b[_0x5510fd(0x2d5,'\x5a\x70\x6f\x67')](_0x7aaf5d[_0x5510fd(0x38c,'\x7a\x72\x70\x5e')+'\x4d\x73']-Date[_0x5510fd(0x25d,'\x44\x5a\x6a\x63')](),_0x2d150b);_0x50f0c7=Math[_0x5510fd(0x37c,'\x57\x21\x36\x68')](_0x50f0c7,_0x26bfa4);}const _0x1e5cb7=_0x50f0c7>=-0xe3f+0x3ad*0x5+-0x2f6?await _0x48668b['\x73\x4e\x76\x57\x78'](_0x434f72,_0x12956a,_0x50f0c7):[],_0x586d71=new Set(),_0x4a8f18=[];let _0x53beb2=-0xc*-0x14f+0x1dc9+0x2d7d*-0x1;for(const _0x35288f of[..._0x1e5cb7,..._0x1bd824]){if(_0x48668b[_0x5510fd(0x2ee,'\x75\x68\x33\x30')](_0x5510fd(0x372,'\x26\x6c\x69\x69'),_0x48668b[_0x5510fd(0x350,'\x26\x71\x40\x35')])){const _0x39580b=_0x35288f[_0x5510fd(0x34d,'\x42\x45\x73\x43')]||_0x35288f['\x6f\x72\x69\x67\x69\x6e']+'\x3a'+_0x35288f[_0x5510fd(0x2a6,'\x5d\x6a\x6b\x4b')];if(_0x39580b&&_0x586d71[_0x5510fd(0x30b,'\x24\x47\x70\x28')](_0x39580b)){_0x53beb2++;continue;}if(_0x39580b)_0x586d71[_0x5510fd(0x359,'\x5d\x75\x66\x35')](_0x39580b);_0x4a8f18[_0x5510fd(0x31f,'\x29\x68\x64\x5e')](_0x35288f);}else _0xc1c3cd=[];}_0x4a8f18[_0x5510fd(0x273,'\x57\x21\x36\x68')]((_0x41f807,_0x243d52)=>(_0x243d52[_0x5510fd(0x2a1,'\x4e\x68\x53\x48')+'\x74\x79']||0x6ef+-0x1*-0x1ba1+-0x13c*0x1c)-(_0x41f807[_0x5510fd(0x2aa,'\x40\x52\x76\x43')+'\x74\x79']||-0xd3+-0x3*0x588+0x116b));const _0xda6ff0=_0x4a8f18['\x73\x6c\x69\x63\x65'](0x1b85+0x33*0x44+0x2911*-0x1,_0x48668b[_0x5510fd(0x3b6,'\x78\x67\x38\x38')](_0x9c8db1));_0x53beb2+=Math[_0x5510fd(0x2bb,'\x5d\x66\x75\x6c')](-0x6*-0x3f+-0x1783+0x1609,_0x48668b['\x6c\x43\x46\x77\x49'](_0x4a8f18['\x6c\x65\x6e\x67\x74\x68'],_0xda6ff0[_0x5510fd(0x20a,'\x57\x21\x36\x68')]));const _0x488945=_0xda6ff0[_0x5510fd(0x3bf,'\x7a\x72\x70\x5e')](_0x3ff875);_0x53beb2+=_0x48668b[_0x5510fd(0x1f3,'\x42\x45\x73\x43')](_0xda6ff0[_0x5510fd(0x2e7,'\x29\x68\x64\x5e')],_0x488945[_0x5510fd(0x2bd,'\x79\x68\x5d\x5b')]);const _0x1214b9={};_0x1214b9['\x69\x6e\x6a\x65\x63\x74']=![],_0x1214b9[_0x5510fd(0x35f,'\x26\x6c\x69\x69')]=null,_0x1214b9[_0x5510fd(0x2ae,'\x28\x30\x5e\x66')]=[],_0x1214b9[_0x5510fd(0x380,'\x34\x4f\x57\x7a')]=_0x53beb2,_0x1214b9['\x73\x69\x67\x6e\x61\x6c\x73']=_0x12956a;if(!_0x488945[_0x5510fd(0x274,'\x47\x44\x69\x4d')])return _0x1214b9;const _0x179d02=_0xcae5e5(_0x488945),_0x5d16ed={};_0x5d16ed[_0x5510fd(0x253,'\x25\x21\x38\x51')]=![],_0x5d16ed[_0x5510fd(0x378,'\x68\x57\x50\x6d')]=null,_0x5d16ed['\x64\x65\x63\x69\x64\x65\x64']=[],_0x5d16ed[_0x5510fd(0x235,'\x6e\x51\x74\x7a')]=_0x53beb2,_0x5d16ed[_0x5510fd(0x33d,'\x79\x68\x5d\x5b')]=_0x12956a;if(!_0x179d02)return _0x5d16ed;const _0x4a071b=_0x7aaf5d[_0x5510fd(0x27c,'\x24\x47\x70\x28')]||_0x5510fd(0x37e,'\x59\x70\x4f\x5e')+(_0x7aaf5d['\x73\x65\x73\x73\x69\x6f\x6e\x49'+'\x64']||_0x5510fd(0x2b3,'\x59\x70\x4f\x5e'));return _0x48668b[_0x5510fd(0x365,'\x29\x68\x64\x5e')](_0x3fbf3b,_0x488945,_0x52f59b,_0x4a071b,_0x12956a),{'\x69\x6e\x6a\x65\x63\x74':_0x48668b[_0x5510fd(0x24f,'\x29\x68\x64\x5e')](_0x52f59b,_0x48668b[_0x5510fd(0x280,'\x51\x39\x35\x4b')]),'\x74\x65\x78\x74':_0x179d02,'\x64\x65\x63\x69\x64\x65\x64':_0x488945,'\x64\x72\x6f\x70\x70\x65\x64':_0x53beb2,'\x73\x69\x67\x6e\x61\x6c\x73':_0x12956a};}const _0x4d502b={};_0x4d502b[_0x121674(0x271,'\x58\x59\x6e\x66')+'\x62']=_0x434f72,_0x4d502b[_0x121674(0x20e,'\x51\x39\x35\x4b')+_0x121674(0x2c3,'\x23\x4a\x49\x59')]=_0x486ccc,_0x4d502b[_0x121674(0x28c,'\x5b\x5e\x21\x78')+_0x121674(0x208,'\x5d\x6a\x6b\x4b')]=_0x3fbf3b;const _0x21b1a9={};_0x21b1a9['\x72\x65\x63\x61\x6c\x6c\x46\x6f'+_0x121674(0x2d3,'\x68\x57\x50\x6d')]=_0x38818b,_0x21b1a9[_0x121674(0x334,'\x23\x28\x4c\x38')]=_0x281f83,_0x21b1a9['\x67\x65\x74\x4d\x69\x6e\x53\x69'+'\x6d']=_0x1f66c4,_0x21b1a9[_0x121674(0x398,'\x6c\x76\x5e\x64')+_0x121674(0x303,'\x5d\x66\x75\x6c')]=_0x9c8db1,_0x21b1a9[_0x121674(0x240,'\x48\x6d\x31\x70')+_0x121674(0x237,'\x4d\x58\x79\x33')+'\x72\x65']=_0x48e69f,_0x21b1a9[_0x121674(0x391,'\x43\x21\x30\x6d')+_0x121674(0x20c,'\x25\x21\x38\x51')]=_0x17fee2,_0x21b1a9['\x62\x75\x69\x6c\x64\x49\x6e\x6a'+'\x65\x63\x74\x54\x65\x78\x74']=_0xcae5e5,_0x21b1a9[_0x121674(0x331,'\x23\x4a\x49\x59')+'\x6c\x73']=_0x4d502b,module[_0x121674(0x386,'\x41\x78\x41\x6d')]=_0x21b1a9;
1
+ // recallInject.js
2
+ // Harness-agnostic core for "runtime asset injection" (P4-c): when a general
3
+ // agent is about to work on a task, find GEP assets (Hub genes + local genes)
4
+ // that match the task and surface a distilled hint the agent can use.
5
+ //
6
+ // This module is PURE: no stdin/stdout, no process.exit. It is driven by the
7
+ // per-harness hook entrypoint (src/adapters/scripts/evolver-task-recall.js) and
8
+ // is unit-testable in isolation. The entrypoint owns the fail-open latch +
9
+ // watchdog + stdout shape; this module owns the matching/gating/logging.
10
+ //
11
+ // HARD INVARIANTS (do not regress — these are the P4-c scope contract):
12
+ // 1. SEARCH-ONLY. We call fetchSemanticResults (a free GET
13
+ // /a2a/assets/semantic-search) and NEVER hubSearch()/fetchAssetById() —
14
+ // Phase-2 fetch SPENDS CREDITS (hubSearch.js:379 logs "Fetch cost"). The
15
+ // recall path must never spend a credit, in any mode. No money surface.
16
+ // 2. LLM-FREE / NO CHILD PROCESS. We extract signals with ONLY the pure
17
+ // extractors _extractRegex + _extractKeywordScore. We must NOT call
18
+ // extractSignals() — it calls _extractLLM(), a SYNC execFileSync('curl',
19
+ // ['-m','10',...]) that (a) blocks the event loop for up to 10s so the
20
+ // entrypoint watchdog can't fire, and (b) ships a raw-prompt corpus to the
21
+ // Hub. Both are forbidden here.
22
+ // 3. SHADOW-FIRST. In 'shadow' we compute + log what WOULD inject but return
23
+ // inject:false (the entrypoint injects nothing). In 'off' the entrypoint
24
+ // never calls us. Only 'enforce' returns inject:true.
25
+ // 4. HIGH-CONFIDENCE ONLY. Hub rows must clear the similarity HIGH band
26
+ // (>= EVOLVER_RECALL_MIN_SIM, default 0.75). Local genes must have >=1
27
+ // real signal-pattern hit (not bag-of-words noise).
28
+ // 5. NO Hub used_asset_ids / reuse-credit reporting. Attribution is a LOCAL
29
+ // JSONL artifact only (assetCallLog). Promoting it to Hub credit needs a
30
+ // stronger usage signal AND team sign-off (it changes money).
31
+
32
+ const path = require('path');
33
+
34
+ // ---------------------------------------------------------------------------
35
+ // Mode parsing: EVOLVER_RECALL_MODE ∈ off (default) | shadow | enforce.
36
+ // Anything unknown/absent -> off (safest). Mirrors the conv-distill/P3 cadence
37
+ // of a single 3-state env var.
38
+ // ---------------------------------------------------------------------------
39
+ function getMode() {
40
+ const v = String(process.env.EVOLVER_RECALL_MODE || '').toLowerCase().trim();
41
+ return v === 'shadow' || v === 'enforce' ? v : 'off';
42
+ }
43
+
44
+ // Similarity HIGH band. Ported as an in-repo literal from
45
+ // gep-mcp-server/src/searchEnrich.js (SIMILARITY_BAND_HIGH = 0.75) — that file
46
+ // is a separate ESM repo and must NOT be imported. Operator-tunable.
47
+ function getMinSim() {
48
+ const n = Number(process.env.EVOLVER_RECALL_MIN_SIM);
49
+ return Number.isFinite(n) && n > 0 && n <= 1 ? n : 0.75;
50
+ }
51
+
52
+ // Max assets injected per turn. Default 1 (top hit only) to minimise context
53
+ // pollution; the entrypoint blocks every prompt, so we stay terse.
54
+ function getMaxInject() {
55
+ const n = parseInt(process.env.EVOLVER_RECALL_MAX, 10);
56
+ return Number.isFinite(n) && n > 0 && n <= 10 ? n : 1;
57
+ }
58
+
59
+ // Hard ceiling on injected text length (defense against a giant nl_summary
60
+ // bloating the agent's context window).
61
+ const INJECT_CHAR_CEILING = 800;
62
+ const SUMMARY_CLIP = 200;
63
+
64
+ // ---------------------------------------------------------------------------
65
+ // LLM-free signal extraction. Uses ONLY the pure extractors. We deliberately
66
+ // do NOT call signals.extractSignals (curl/event-loop-block, see invariant 2)
67
+ // and do NOT call _mergeSignals (it console.log()s to STDOUT — which would
68
+ // corrupt the hook's single-JSON stdout contract; we inline a Set-merge).
69
+ // ---------------------------------------------------------------------------
70
+ function extractSignalsPure(prompt) {
71
+ const corpus = String(prompt || '');
72
+ const lower = corpus.toLowerCase();
73
+ const errorHit = /\b(error|exception|fail(?:ed|ure)?)\b|错误|异常|报错|失败/i.test(lower);
74
+
75
+ let regexSignals = [];
76
+ let scoreSignals = [];
77
+ try {
78
+ const sig = require('./signals');
79
+ regexSignals = sig._extractRegex(corpus, lower, errorHit) || [];
80
+ scoreSignals = sig._extractKeywordScore(lower) || [];
81
+ } catch (_) {
82
+ // signals.js unreachable — degrade to no signals (local/Hub then no-op).
83
+ return [];
84
+ }
85
+
86
+ // Inline Set-merge (do NOT use sig._mergeSignals — it writes to stdout).
87
+ const merged = new Set();
88
+ for (const s of regexSignals) merged.add(s);
89
+ for (const s of scoreSignals) merged.add(s);
90
+ // 'stable_success_plateau' is the extractor's "nothing interesting" default;
91
+ // it carries no task content, so drop it to avoid a noise query.
92
+ merged.delete('stable_success_plateau');
93
+ return Array.from(merged);
94
+ }
95
+
96
+ // The closed-vocabulary extractors above only fire on the evolver's own corpus
97
+ // shapes (errors, specific feature-request phrasings). A normal task prompt
98
+ // ("add retry with backoff to the http client") yields NO closed-vocab signal,
99
+ // so on its own the recall hook would almost never fire for real coding work.
100
+ // Embedding-based semantic search wants the actual task WORDS, so we also add a
101
+ // token projection of the prompt. tokenize() drops stop-words and short tokens;
102
+ // buildSemanticQuery (inside fetchSemanticResults) caps the outgoing query to
103
+ // 12 terms, so this stays a bounded token-projection — never the verbatim
104
+ // prompt. Capped here too as defense-in-depth.
105
+ const MAX_QUERY_TOKENS = 12;
106
+ function buildSignalList(prompt) {
107
+ const coreSignals = extractSignalsPure(prompt);
108
+ let tokens = [];
109
+ try {
110
+ const { tokenize } = require('./selector');
111
+ // De-dup while preserving order, then cap.
112
+ const seen = new Set();
113
+ for (const t of tokenize(prompt)) {
114
+ if (!seen.has(t)) { seen.add(t); tokens.push(t); }
115
+ if (tokens.length >= MAX_QUERY_TOKENS) break;
116
+ }
117
+ } catch (_) { tokens = []; }
118
+
119
+ const merged = new Set();
120
+ for (const s of coreSignals) merged.add(s);
121
+ for (const t of tokens) merged.add(t);
122
+ return Array.from(merged);
123
+ }
124
+
125
+ // ---------------------------------------------------------------------------
126
+ // Hub search — SEARCH-ONLY, credit-free. Returns the rows that clear the HIGH
127
+ // similarity band, best-effort self-suppressed, never spending a credit.
128
+ // ---------------------------------------------------------------------------
129
+ async function searchHub(signalList, timeoutMs) {
130
+ let hs, a2a;
131
+ try {
132
+ hs = require('./hubSearch');
133
+ a2a = require('./a2aProtocol');
134
+ } catch (_) {
135
+ return [];
136
+ }
137
+ // Honor the HUBSEARCH_SEMANTIC kill-switch the same way hubSearch() does:
138
+ // an operator who set it to false/0 to stop semantic Hub traffic must not
139
+ // have this hook keep issuing semantic GETs on every prompt (Bugbot #183
140
+ // medium). When disabled -> no Hub call, local genes only.
141
+ try { if (typeof hs.isSemanticEnabled === 'function' && !hs.isSemanticEnabled()) return []; } catch (_) {}
142
+ // Resolve the Hub URL via a2aProtocol.getHubUrl(), the canonical resolver
143
+ // that honors BOTH A2A_HUB_URL and the legacy EVOMAP_HUB_URL fallback.
144
+ // hubSearch.getHubUrl() reads only A2A_HUB_URL, so a node configured with the
145
+ // legacy var alone would silently skip recall while every other Hub feature
146
+ // (auth, heartbeat, memory) still worked (Bugbot #183 medium). Strip trailing
147
+ // slashes to match hubSearch's own normalization. Fall back to hs.getHubUrl()
148
+ // only if a2a is unavailable.
149
+ let hubUrl = '';
150
+ try {
151
+ hubUrl = (typeof a2a.getHubUrl === 'function' ? a2a.getHubUrl() : hs.getHubUrl()) || '';
152
+ hubUrl = hubUrl.replace(/\/+$/, '');
153
+ } catch (_) { hubUrl = ''; }
154
+ // Air-gapped / no Hub configured -> zero egress, local genes only.
155
+ if (!hubUrl) return [];
156
+
157
+ let headers = {};
158
+ try { headers = a2a.buildHubHeaders(); } catch (_) { headers = {}; }
159
+
160
+ let rows = [];
161
+ try {
162
+ // fetchSemanticResults already owns an AbortController bound to timeoutMs
163
+ // and returns [] on timeout/error/non-200 (hubSearch.js:160). It hits
164
+ // GET /a2a/assets/semantic-search?...&type=Gene -> genes only, no fetch,
165
+ // no credit. The query is a token-trimmed projection of the signals
166
+ // (buildSemanticQuery), NOT the verbatim prompt.
167
+ rows = await hs.fetchSemanticResults(hubUrl, headers, signalList, timeoutMs);
168
+ } catch (_) {
169
+ return [];
170
+ }
171
+ if (!Array.isArray(rows)) return [];
172
+
173
+ const minSim = getMinSim();
174
+ let selfId = '';
175
+ try { selfId = a2a.getNodeId() || ''; } catch (_) { selfId = ''; }
176
+
177
+ const out = [];
178
+ for (const r of rows) {
179
+ if (!r || typeof r !== 'object') continue;
180
+ const sim = Number(r._semantic_similarity);
181
+ if (!Number.isFinite(sim) || sim < minSim) continue; // drop drag-net matches
182
+ // Best-effort self-suppression: only when source_node_id is present (the
183
+ // semantic endpoint often omits it — do NOT treat absence as a hard gate).
184
+ if (selfId && r.source_node_id && r.source_node_id === selfId) continue;
185
+ out.push({
186
+ asset_id: r.asset_id || r.assetId || '',
187
+ source_node_id: r.source_node_id || '',
188
+ chain_id: r.chain_id || '',
189
+ similarity: sim,
190
+ title: r.short_title || r.nl_title || r.name || '',
191
+ summary: r.nl_summary || r.summary || '',
192
+ origin: 'hub',
193
+ });
194
+ }
195
+ return out;
196
+ }
197
+
198
+ // ---------------------------------------------------------------------------
199
+ // Local genes — match against on-disk genes with a real signal-pattern hit.
200
+ // We use the EXPORTED scorers (scoreGene is NOT exported, and selectGene uses
201
+ // Math.random + env I/O so it's unsuitable). Require >=1 pattern hit so we
202
+ // inject only genes whose signals_match actually fire for this task, not
203
+ // bag-of-words near-misses.
204
+ // ---------------------------------------------------------------------------
205
+ function matchLocalGenes(signalList) {
206
+ let genes = [];
207
+ let sel;
208
+ try {
209
+ genes = require('./assetStore').loadGenes() || [];
210
+ sel = require('./selector');
211
+ } catch (_) {
212
+ return [];
213
+ }
214
+ if (!Array.isArray(genes) || genes.length === 0 || !sel) return [];
215
+
216
+ const out = [];
217
+ for (const gene of genes) {
218
+ if (!gene || gene.type !== 'Gene') continue;
219
+ const patterns = Array.isArray(gene.signals_match) ? gene.signals_match : [];
220
+ let hits = 0;
221
+ for (const p of patterns) {
222
+ try { if (sel.matchPatternToSignals(p, signalList)) hits++; } catch (_) { /* skip */ }
223
+ }
224
+ if (hits < 1) continue; // require a real pattern hit, not noise
225
+ let sem = 0;
226
+ try { sem = sel.scoreGeneSemantic(gene, signalList) || 0; } catch (_) { sem = 0; }
227
+ // Many genes (incl. genesis genes) carry no `summary`. Fall back to a terse
228
+ // projection of the strategy/avoid text or the matched signal patterns so
229
+ // the injected line is actionable rather than a dangling "...: " (caught by
230
+ // real-gene E2E where synthetic fixtures had summaries).
231
+ let summary = (gene.summary || '').toString().trim();
232
+ if (!summary && gene.strategy && typeof gene.strategy === 'object') {
233
+ const pieces = [];
234
+ if (Array.isArray(gene.strategy.steps)) pieces.push(gene.strategy.steps.slice(0, 3).join('; '));
235
+ if (typeof gene.strategy.approach === 'string') pieces.push(gene.strategy.approach);
236
+ summary = pieces.filter(Boolean).join(' — ').trim();
237
+ }
238
+ if (!summary) {
239
+ const pats = patterns
240
+ .map(p => String(p).split('|')[0]) // first alias of each multi-lang pattern
241
+ .filter(p => p && !p.startsWith('/'))
242
+ .slice(0, 4);
243
+ if (pats.length) summary = 'matches: ' + pats.join(', ');
244
+ }
245
+ out.push({
246
+ asset_id: gene.asset_id || '',
247
+ source_node_id: gene.source_node_id || gene.author_node_id || '',
248
+ chain_id: gene.chain_id || '',
249
+ // Map local score into a 0..1-ish band for ranking next to Hub similarity.
250
+ // hits dominate; semantic cosine breaks ties.
251
+ similarity: Math.min(1, 0.75 + 0.05 * hits + 0.1 * sem),
252
+ title: gene.id || gene.short_title || '',
253
+ summary,
254
+ origin: 'local',
255
+ _hits: hits,
256
+ });
257
+ }
258
+ return out;
259
+ }
260
+
261
+ // ---------------------------------------------------------------------------
262
+ // Build the injected text. Distilled hint, NOT raw JSON. Each line uses
263
+ // nl_summary/title (always present in list/search responses) — never
264
+ // payload.strategy (often empty for distilled/sybil assets). Hard char ceiling.
265
+ // ---------------------------------------------------------------------------
266
+ // A candidate is "hollow" when it has neither a title nor a summary: there is
267
+ // nothing actionable to render (a dangling "Gene "": " helps no one). Hollow
268
+ // candidates are excluded from BOTH the injected text and the attribution log,
269
+ // so the log can never claim an asset was injected that never appeared in the
270
+ // hook context (Bugbot #183 low: log/inject must agree by construction).
271
+ function isRenderable(d) {
272
+ const title = (d && d.title ? String(d.title) : '').trim();
273
+ const summary = (d && d.summary ? String(d.summary) : '').trim();
274
+ return !!(title || summary);
275
+ }
276
+
277
+ function buildInjectText(decided) {
278
+ const renderable = (decided || []).filter(isRenderable);
279
+ if (!renderable.length) return '';
280
+ const lines = ['[Evolver — relevant prior capability]'];
281
+ let anyPublished = false;
282
+ for (const d of renderable) {
283
+ const title = (d.title || '').toString().slice(0, 80);
284
+ const summary = (d.summary || '').toString().replace(/\s+/g, ' ').trim().slice(0, SUMMARY_CLIP);
285
+ const sim = d.similarity != null ? d.similarity.toFixed(2) : '?';
286
+ const idTag = d.asset_id ? `asset ${d.asset_id}` : 'local, unpublished';
287
+ if (d.asset_id) anyPublished = true;
288
+ lines.push(`- ${title ? `Gene "${title}"` : 'Gene'} (${idTag}, sim ${sim})${summary ? ': ' + summary : ''}`);
289
+ }
290
+ lines.push('A prior distilled approach may fit this task. Adapt it; verify before applying.');
291
+ if (anyPublished) lines.push('To reuse a published asset: `gep_reuse <asset_id>` (or `gep_recall`).');
292
+ const text = lines.join('\n');
293
+ return text.length > INJECT_CHAR_CEILING ? text.slice(0, INJECT_CHAR_CEILING) : text;
294
+ }
295
+
296
+ // ---------------------------------------------------------------------------
297
+ // Local reuse logging. Records WHICH assets were (would be) injected, keyed by
298
+ // a stable run_id derived from the session, so a later Stop hook can correlate
299
+ // "asset injected -> session outcome" LOCALLY. This is correlational/local
300
+ // only — it is NOT Hub credit and must not be promoted to one without sign-off.
301
+ // ---------------------------------------------------------------------------
302
+ function logInjections(decided, mode, runId, signalList) {
303
+ let logAssetCall;
304
+ try { ({ logAssetCall } = require('./assetCallLog')); } catch (_) { return; }
305
+ const action = mode === 'enforce' ? 'asset_inject' : 'asset_inject_shadow';
306
+ for (const d of decided) {
307
+ try {
308
+ logAssetCall({
309
+ run_id: runId,
310
+ action,
311
+ asset_id: d.asset_id || undefined,
312
+ asset_type: 'Gene',
313
+ source_node_id: d.source_node_id || undefined,
314
+ chain_id: d.chain_id || undefined,
315
+ score: d.similarity,
316
+ signals: signalList.slice(0, 8),
317
+ reason: d.origin === 'hub' ? 'hub_semantic_high_band' : 'local_gene_pattern_hit',
318
+ extra: { via: 'task_recall', attribution: 'correlational_local', origin: d.origin },
319
+ });
320
+ } catch (_) { /* logging is best-effort; never block injection */ }
321
+ }
322
+ }
323
+
324
+ // ---------------------------------------------------------------------------
325
+ // Entry point of the core. Returns:
326
+ // { inject: bool, text: string|null, decided: [], dropped: number, signals: [] }
327
+ // inject is true ONLY in enforce mode with >=1 decided asset. In shadow we log
328
+ // but return inject:false. Throwing is acceptable — the hook entrypoint wraps
329
+ // this in try/.catch -> finish({}) (fail-open).
330
+ // ---------------------------------------------------------------------------
331
+ async function recallForTask(opts) {
332
+ const o = opts || {};
333
+ const mode = o.mode || getMode();
334
+ if (mode === 'off') return { inject: false, text: null, decided: [], dropped: 0, signals: [] };
335
+
336
+ const signalList = buildSignalList(o.prompt);
337
+ if (!signalList.length) return { inject: false, text: null, decided: [], dropped: 0, signals: [] };
338
+
339
+ // Do LOCAL gene work (synchronous disk I/O via loadGenes + ranking) BEFORE
340
+ // the Hub await, so it runs while the full budget is available — never after
341
+ // the Hub search has consumed most of the watchdog window (Bugbot #183
342
+ // medium: post-await local work could overrun the watchdog and spuriously
343
+ // skip injection). After the Hub await, only in-memory merge/text/log remain.
344
+ const localRows = matchLocalGenes(signalList);
345
+
346
+ // Bound the Hub call by the time REMAINING until the entrypoint's absolute
347
+ // deadline (passed as deadlineMs, ms-since-epoch), minus a safety margin for
348
+ // the in-memory post-processing + finish(). If too little remains, skip the
349
+ // Hub call (local genes still apply). Falls back to the static timeoutMs when
350
+ // no deadline is supplied (e.g. unit tests / non-hook callers).
351
+ const POST_AWAIT_SAFETY_MS = 150;
352
+ let hubBudget = Number.isFinite(o.timeoutMs) && o.timeoutMs > 0 ? o.timeoutMs : 2000;
353
+ if (Number.isFinite(o.deadlineMs)) {
354
+ const remaining = o.deadlineMs - Date.now() - POST_AWAIT_SAFETY_MS;
355
+ hubBudget = Math.min(hubBudget, remaining);
356
+ }
357
+
358
+ // Hub (search-only, credit-free), only if there's a usable budget left.
359
+ const hubRows = hubBudget >= 300 ? await searchHub(signalList, hubBudget) : [];
360
+
361
+ const seen = new Set();
362
+ const candidates = [];
363
+ let dropped = 0;
364
+ for (const r of [...hubRows, ...localRows]) {
365
+ const key = r.asset_id || `${r.origin}:${r.title}`;
366
+ if (key && seen.has(key)) { dropped++; continue; } // de-dup local vs hub
367
+ if (key) seen.add(key);
368
+ candidates.push(r);
369
+ }
370
+ candidates.sort((a, b) => (b.similarity || 0) - (a.similarity || 0));
371
+
372
+ const topN = candidates.slice(0, getMaxInject());
373
+ dropped += Math.max(0, candidates.length - topN.length);
374
+
375
+ // Filter out hollow candidates ONCE, so the injected text and the attribution
376
+ // log operate on the exact same set — the log can never claim an asset was
377
+ // injected that wasn't rendered into the hook context (Bugbot #183 low).
378
+ const decided = topN.filter(isRenderable);
379
+ dropped += topN.length - decided.length;
380
+ if (!decided.length) return { inject: false, text: null, decided: [], dropped, signals: signalList };
381
+
382
+ const text = buildInjectText(decided);
383
+ if (!text) return { inject: false, text: null, decided: [], dropped, signals: signalList };
384
+
385
+ const runId = o.runId || ('recall:' + (o.sessionId || 'unknown'));
386
+ logInjections(decided, mode, runId, signalList);
387
+
388
+ // SHADOW returns the computed text (for tests/inspection) but inject:false —
389
+ // the entrypoint only injects when inject is true (enforce).
390
+ return {
391
+ inject: mode === 'enforce',
392
+ text,
393
+ decided,
394
+ dropped,
395
+ signals: signalList,
396
+ };
397
+ }
398
+
399
+ module.exports = {
400
+ recallForTask,
401
+ // exported for unit tests:
402
+ getMode,
403
+ getMinSim,
404
+ getMaxInject,
405
+ extractSignalsPure,
406
+ buildSignalList,
407
+ buildInjectText,
408
+ _internals: { searchHub, matchLocalGenes, logInjections },
409
+ };