@evomap/evolver 1.91.1 → 1.91.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/index.js +1 -1
  2. package/package.json +1 -1
  3. package/src/evolve/guards.js +1 -1
  4. package/src/evolve/pipeline/collect.js +1 -1
  5. package/src/evolve/pipeline/dispatch.js +1 -1
  6. package/src/evolve/pipeline/enrich.js +1 -1
  7. package/src/evolve/pipeline/hub.js +1 -1
  8. package/src/evolve/pipeline/select.js +1 -1
  9. package/src/evolve/pipeline/signals.js +1 -1
  10. package/src/evolve/utils.js +1 -1
  11. package/src/evolve.js +1 -1
  12. package/src/gep/a2aProtocol.js +5175 -1
  13. package/src/gep/antiAbuseTelemetry.js +233 -1
  14. package/src/gep/assetStore.js +3 -2
  15. package/src/gep/autoDistillConv.js +205 -1
  16. package/src/gep/autoDistillLlm.js +315 -1
  17. package/src/gep/candidateEval.js +92 -1
  18. package/src/gep/candidates.js +1 -1
  19. package/src/gep/contentHash.js +30 -1
  20. package/src/gep/conversationDistiller.js +270 -1
  21. package/src/gep/conversationSniffer.js +266 -1
  22. package/src/gep/crypto.js +93 -1
  23. package/src/gep/curriculum.js +1 -1
  24. package/src/gep/deviceId.js +218 -1
  25. package/src/gep/envFingerprint.js +118 -1
  26. package/src/gep/epigenetics.js +31 -1
  27. package/src/gep/execBridge.js +712 -1
  28. package/src/gep/explore.js +289 -1
  29. package/src/gep/hash.js +15 -1
  30. package/src/gep/hubFetch.js +672 -1
  31. package/src/gep/hubReview.js +212 -1
  32. package/src/gep/hubSearch.js +544 -1
  33. package/src/gep/hubVerify.js +306 -1
  34. package/src/gep/learningSignals.js +1 -1
  35. package/src/gep/memoryGraph.js +1449 -1
  36. package/src/gep/memoryGraphAdapter.js +203 -1
  37. package/src/gep/mutation.js +1 -1
  38. package/src/gep/narrativeMemory.js +1 -1
  39. package/src/gep/openPRRegistry.js +205 -1
  40. package/src/gep/personality.js +1 -1
  41. package/src/gep/policyCheck.js +599 -1
  42. package/src/gep/prompt.js +1 -1
  43. package/src/gep/recallInject.js +409 -1
  44. package/src/gep/recallVerifier.js +318 -1
  45. package/src/gep/reflection.js +1 -1
  46. package/src/gep/savingsCore.js +1 -1
  47. package/src/gep/selector.js +1 -1
  48. package/src/gep/skillDistiller.js +1294 -1
  49. package/src/gep/solidify.js +1 -1
  50. package/src/gep/strategy.js +136 -1
  51. package/src/gep/tokenSavings.js +1 -1
  52. package/src/gep/trajectoryExport.js +3841 -1
  53. package/src/gep/workspaceKeychain.js +174 -1
  54. package/src/proxy/extensions/traceControl.js +123 -1
  55. package/src/proxy/inject.js +52 -1
  56. package/src/proxy/trace/extractor.js +2355 -1
  57. package/src/proxy/trace/usage.js +105 -1
  58. package/src/webui/client/clientJs/bootstrap.js +6 -0
  59. package/src/webui/client/clientJs/github.js +225 -0
  60. package/src/webui/client/clientJs/i18n.js +14 -0
  61. package/src/webui/client/clientJs/index.js +3 -0
  62. package/src/webui/client/clientJs/pipelines.js +3 -1
  63. package/src/webui/client/indexHtml.js +10 -0
  64. package/src/webui/client/stylesCss.js +61 -0
  65. package/src/webui/observer/github.js +340 -0
  66. package/src/webui/observer/index.js +4 -0
  67. package/src/webui/server/routes.js +11 -0
@@ -1 +1,266 @@
1
- const _0x3f18d4=_0x3ccf;(function(_0x1439ee,_0x1c7cf1){const _0x3c5469=_0x3ccf,_0xdedbb=_0x1439ee();while(!![]){try{const _0x3f5295=parseInt(_0x3c5469(0x16c,'\x37\x23\x6d\x74'))/(-0x62a*-0x5+-0x673*0x6+0x7e1*0x1)*(parseInt(_0x3c5469(0x1a6,'\x53\x75\x29\x4a'))/(-0x1547+-0xb*0x11+-0x2*-0xb02))+parseInt(_0x3c5469(0x220,'\x72\x56\x6d\x41'))/(0xc2+-0x14ff+0x1440)+parseInt(_0x3c5469(0x17b,'\x64\x2a\x59\x44'))/(0x7*-0x467+-0x957+0x2*0x1416)+parseInt(_0x3c5469(0x15f,'\x69\x61\x29\x5b'))/(0x159e+0x44*-0x69+-0xb3*-0x9)*(-parseInt(_0x3c5469(0x203,'\x25\x4d\x50\x42'))/(-0x2414*-0x1+-0x598+-0x1e76))+-parseInt(_0x3c5469(0x279,'\x26\x61\x66\x7a'))/(-0xb04+-0x904*-0x4+0x393*-0x7)+-parseInt(_0x3c5469(0x132,'\x75\x58\x6e\x64'))/(-0x1637+0x10e7*-0x2+0x380d)*(parseInt(_0x3c5469(0x227,'\x79\x65\x43\x78'))/(-0x11e7*0x1+-0x15+0x1205))+parseInt(_0x3c5469(0x1bb,'\x66\x6c\x6c\x43'))/(0xd56*0x1+-0x17b*0x5+-0x5e5)*(parseInt(_0x3c5469(0x12f,'\x6e\x63\x54\x49'))/(0x1b*-0xc2+-0x1bad+0x302e));if(_0x3f5295===_0x1c7cf1)break;else _0xdedbb['push'](_0xdedbb['shift']());}catch(_0x968b58){_0xdedbb['push'](_0xdedbb['shift']());}}}(_0x5d28,-0xac*-0x381+0xa68cc+-0x965f));const _0x3059a8=(function(){const _0x2a2d28=_0x3ccf,_0x292375={'\x53\x6e\x69\x57\x5a':function(_0x31ce68){return _0x31ce68();},'\x70\x6e\x53\x49\x49':_0x2a2d28(0x187,'\x33\x6f\x64\x59'),'\x73\x58\x41\x50\x6a':function(_0x4c1ec7,_0x25c235){return _0x4c1ec7===_0x25c235;},'\x47\x62\x43\x50\x47':'\x56\x65\x48\x42\x69','\x51\x6f\x4d\x6c\x50':_0x2a2d28(0x274,'\x79\x65\x43\x78')};let _0x27bd1a=!![];return function(_0x4a37d7,_0x508eeb){const _0x2439dc=_0x2a2d28,_0x5742a3={'\x75\x6f\x71\x4e\x4b':function(_0x566895){const _0x5bd6cf=_0x3ccf;return _0x292375[_0x5bd6cf(0x27e,'\x79\x65\x43\x78')](_0x566895);},'\x76\x56\x4b\x49\x56':_0x292375[_0x2439dc(0x2ac,'\x67\x6d\x79\x2a')],'\x53\x64\x59\x49\x51':function(_0x174022,_0x3559ca){return _0x292375['\x73\x58\x41\x50\x6a'](_0x174022,_0x3559ca);},'\x45\x5a\x76\x69\x51':_0x292375[_0x2439dc(0x196,'\x5b\x66\x55\x25')],'\x7a\x69\x68\x43\x6f':_0x292375['\x51\x6f\x4d\x6c\x50']},_0x2de895=_0x27bd1a?function(){const _0x43b94f=_0x2439dc;if(_0x508eeb){if(_0x5742a3[_0x43b94f(0x269,'\x6e\x63\x54\x49')](_0x5742a3[_0x43b94f(0x137,'\x63\x32\x47\x29')],_0x5742a3[_0x43b94f(0x1f7,'\x79\x33\x64\x65')]))return _0x4bce10[_0x43b94f(0x1ce,'\x75\x58\x6e\x64')](_0x2f6c10[_0x43b94f(0x2ad,'\x4c\x77\x35\x40')+_0x43b94f(0x1f3,'\x6a\x74\x59\x41')](_0x5742a3[_0x43b94f(0x2a2,'\x33\x73\x56\x57')](_0x29cea6),_0x5742a3[_0x43b94f(0x226,'\x53\x75\x29\x4a')]));else{const _0x5cf4f3=_0x508eeb[_0x43b94f(0x14a,'\x5b\x66\x55\x25')](_0x4a37d7,arguments);return _0x508eeb=null,_0x5cf4f3;}}}:function(){};return _0x27bd1a=![],_0x2de895;};}()),_0x4816d8=_0x3059a8(this,function(){const _0xee0b3c=_0x3ccf,_0x32386a={};_0x32386a[_0xee0b3c(0x145,'\x4c\x77\x35\x40')]=_0xee0b3c(0x16d,'\x67\x6d\x79\x2a')+_0xee0b3c(0x24e,'\x6f\x42\x2a\x77');const _0x95189d=_0x32386a;return _0x4816d8[_0xee0b3c(0x261,'\x39\x69\x37\x34')]()[_0xee0b3c(0x188,'\x6b\x5d\x63\x46')](_0x95189d[_0xee0b3c(0x1ba,'\x36\x77\x76\x24')])[_0xee0b3c(0x27a,'\x34\x5e\x69\x29')]()[_0xee0b3c(0x21e,'\x69\x61\x29\x5b')+_0xee0b3c(0x169,'\x67\x6d\x79\x2a')](_0x4816d8)[_0xee0b3c(0x14d,'\x39\x43\x37\x4a')](_0x95189d['\x6e\x70\x78\x69\x45']);});_0x4816d8();'use strict';const _0x148131=require('\x66\x73'),_0x302e86=require(_0x3f18d4(0x24b,'\x34\x5e\x26\x56')),_0x58ac6e=require(_0x3f18d4(0x1d7,'\x6a\x74\x59\x41')),{getEvolutionDir:_0xb17f30}=require(_0x3f18d4(0x1b4,'\x4c\x76\x71\x29')),_0x46fd3e=((()=>{const _0x303dc3=_0x3f18d4,_0x1b6b7b={'\x4b\x77\x6c\x42\x6b':function(_0x2e195b,_0x3af54c){return _0x2e195b(_0x3af54c);},'\x76\x75\x75\x73\x55':_0x303dc3(0x1b7,'\x79\x65\x43\x78'),'\x66\x56\x4b\x6b\x77':function(_0x2980c2,_0x570a0d){return _0x2980c2===_0x570a0d;},'\x5a\x78\x51\x70\x4f':_0x303dc3(0x181,'\x40\x63\x63\x31'),'\x43\x50\x69\x6c\x75':_0x303dc3(0x177,'\x34\x5e\x26\x56'),'\x53\x6c\x66\x47\x46':function(_0x500844,_0x3b8c0e){return _0x500844===_0x3b8c0e;},'\x72\x6e\x69\x4f\x52':_0x303dc3(0x1b9,'\x25\x21\x56\x54'),'\x79\x65\x6c\x4a\x67':'\x74\x72\x75\x65'},_0x1fb3b9=_0x1b6b7b[_0x303dc3(0x276,'\x6b\x5d\x63\x46')](String,process.env.EVOLVER_CONV_SNIFF_ENABLED||_0x1b6b7b[_0x303dc3(0x172,'\x39\x43\x37\x4a')])[_0x303dc3(0x180,'\x34\x5e\x26\x56')+_0x303dc3(0x296,'\x36\x77\x76\x24')]()[_0x303dc3(0x14b,'\x40\x63\x63\x31')]();if(_0x1b6b7b['\x66\x56\x4b\x6b\x77'](_0x1fb3b9,_0x1b6b7b[_0x303dc3(0x1a2,'\x49\x79\x71\x39')])||_0x1b6b7b[_0x303dc3(0x168,'\x40\x63\x63\x31')](_0x1fb3b9,_0x1b6b7b[_0x303dc3(0x244,'\x72\x26\x6b\x74')])||_0x1fb3b9==='\x30')return'\x6f\x66\x66';if(_0x1b6b7b['\x53\x6c\x66\x47\x46'](_0x1fb3b9,_0x1b6b7b[_0x303dc3(0x29e,'\x53\x31\x4d\x4d')])||_0x1fb3b9==='\x6f\x6e'||_0x1b6b7b[_0x303dc3(0x23a,'\x36\x77\x76\x24')](_0x1fb3b9,_0x1b6b7b[_0x303dc3(0x23d,'\x5b\x68\x65\x68')])||_0x1b6b7b[_0x303dc3(0x15d,'\x72\x56\x6d\x41')](_0x1fb3b9,'\x31'))return _0x303dc3(0x1d3,'\x6a\x74\x59\x41');return _0x303dc3(0x18f,'\x36\x77\x76\x24');})()),_0x5052cb=parseInt(process.env.EVOLVER_CONV_SNIFF_COOLDOWN_MS||_0x3f18d4(0x128,'\x34\x5e\x69\x29'),-0x22f+-0x1ca5*-0x1+0xb2*-0x26)||-0x35656b+-0x2cb8db+0x13b31*0x66,_0x497d49=0x1c1c+0x98e+0x1a3*-0x17,_0x54fbdc=0x1a4d*-0x1+0x281*-0x1+-0x8d*-0x36,_0x6a3990=_0x3f18d4(0x171,'\x66\x6c\x6c\x43')+'\x61\x62\x69\x6c\x69\x74\x79\x5f'+_0x3f18d4(0x131,'\x6a\x74\x59\x41')+'\x65',_0x35395b=[_0x3f18d4(0x22a,'\x34\x5e\x69\x29'),_0x3f18d4(0x27b,'\x40\x63\x63\x31')+'\x64',_0x3f18d4(0x125,'\x72\x56\x6d\x41'),_0x3f18d4(0x23b,'\x33\x6f\x64\x59')+'\x64',_0x3f18d4(0x237,'\x6d\x72\x59\x50'),_0x3f18d4(0x2a9,'\x6d\x72\x59\x50'),_0x3f18d4(0x24f,'\x53\x31\x4d\x4d')+'\x64','\x63\x72\x65\x61\x74\x65\x64','\x63\x6f\x6d\x70\x6c\x65\x74\x65'+'\x64','\x70\x61\x73\x73\x65\x64',_0x3f18d4(0x189,'\x69\x61\x29\x5b'),'\u6210\u529f','\u5df2\u53d1\u5e03',_0x3f18d4(0x28f,'\x33\x73\x56\x57'),_0x3f18d4(0x1e9,'\x32\x79\x74\x73'),'\u641e\u5b9a','\u8dd1\u901a',_0x3f18d4(0x208,'\x53\x75\x29\x4a')],_0x49f0c2=[[/\blark-cli\b|飞书文档|feishu doc|lark doc/i,_0x3f18d4(0x15a,'\x46\x5d\x63\x28')+_0x3f18d4(0x166,'\x4b\x28\x4e\x6d')+'\x6f\x63'],[/\bgh (pr|issue|release)\b|github api|open(ed)? a pr\b/i,'\x67\x69\x74\x68\x75\x62\x2d\x61'+_0x3f18d4(0x26e,'\x5b\x66\x55\x25')+'\x6e'],[/\bcurl\b.+\b(api|endpoint)\b|\bfetch\(.+\bapi\b/i,_0x3f18d4(0x22f,'\x33\x6f\x64\x59')],[/\bdocker (build|run|compose)\b/i,_0x3f18d4(0x22e,'\x36\x77\x76\x24')+_0x3f18d4(0x212,'\x36\x77\x76\x24')],[/\bkubectl\b|helm (install|upgrade)\b/i,_0x3f18d4(0x123,'\x6f\x42\x2a\x77')+_0x3f18d4(0x250,'\x69\x61\x29\x5b')],[/\bprisma (migrate|db push)\b|\bpsql\b|pg_dump/i,_0x3f18d4(0x1cb,'\x36\x77\x76\x24')+'\x74\x69\x6f\x6e'],[/\bnpm publish\b|\bnpx skills\b/i,_0x3f18d4(0x27c,'\x33\x6f\x64\x59')+_0x3f18d4(0x233,'\x67\x6d\x79\x2a')]];function _0x1c66fd(){const _0x2dd6a5=_0x3f18d4,_0x4e53a4={'\x70\x5a\x56\x68\x54':function(_0xd9c3a7){return _0xd9c3a7();}};return _0x302e86['\x6a\x6f\x69\x6e'](_0x4e53a4[_0x2dd6a5(0x218,'\x79\x65\x43\x78')](_0xb17f30),_0x2dd6a5(0x2aa,'\x6d\x72\x59\x50')+_0x2dd6a5(0x124,'\x7a\x29\x44\x38')+_0x2dd6a5(0x241,'\x29\x54\x21\x28'));}function _0x5579fc(){const _0x2eebec=_0x3f18d4,_0x41572a={'\x41\x4d\x41\x56\x53':function(_0x3f467e){return _0x3f467e();},'\x52\x78\x4f\x50\x4b':'\x63\x6f\x6e\x76\x5f\x73\x6e\x69'+_0x2eebec(0x2a5,'\x39\x43\x37\x4a')+'\x73\x6f\x6e\x6c'};return _0x302e86[_0x2eebec(0x122,'\x6a\x2a\x6c\x4c')](_0x41572a[_0x2eebec(0x1e1,'\x44\x74\x31\x7a')](_0xb17f30),_0x41572a[_0x2eebec(0x206,'\x25\x21\x56\x54')]);}function _0x37bdee(){const _0x2ed2d8=_0x3f18d4,_0x54058f={'\x68\x67\x73\x46\x57':function(_0x4815a1){return _0x4815a1();},'\x57\x69\x41\x78\x67':function(_0x49c089,_0x35a5a3){return _0x49c089(_0x35a5a3);},'\x45\x69\x43\x51\x4c':function(_0x14ae35,_0x2aaf70){return _0x14ae35(_0x2aaf70);},'\x71\x68\x77\x4d\x42':function(_0x3521a1,_0x16c28c){return _0x3521a1===_0x16c28c;},'\x66\x48\x52\x63\x63':function(_0x367d91,_0x45f19d){return _0x367d91+_0x45f19d;},'\x4b\x62\x53\x57\x6f':function(_0x326acc,_0x28b719){return _0x326acc+_0x28b719;},'\x6f\x49\x6e\x73\x57':function(_0x4b0c39,_0x558019){return _0x4b0c39+_0x558019;},'\x59\x48\x71\x51\x4c':function(_0x7c667f,_0x4f303e){return _0x7c667f+_0x4f303e;},'\x49\x59\x69\x46\x7a':_0x2ed2d8(0x20f,'\x72\x26\x6b\x74')+'\x73\x20\x4e\x4f\x54\x20\x69\x6e'+_0x2ed2d8(0x19f,'\x6f\x42\x2a\x77')+_0x2ed2d8(0x1bc,'\x34\x5e\x69\x29')+_0x2ed2d8(0x1e6,'\x49\x79\x71\x39')+_0x2ed2d8(0x260,'\x66\x6c\x6c\x43')+_0x2ed2d8(0x175,'\x6b\x5d\x63\x46')+'\x6e\x66\x6f\x72\x63\x65\x20\x74'+_0x2ed2d8(0x205,'\x33\x6f\x64\x59'),'\x61\x69\x65\x50\x54':function(_0x36f4ac,_0x3d48c3){return _0x36f4ac+_0x3d48c3;},'\x75\x52\x6e\x50\x6a':function(_0x34ae79,_0x52c041){return _0x34ae79+_0x52c041;},'\x43\x46\x79\x50\x6e':function(_0x40e525,_0x3edf19){return _0x40e525+_0x3edf19;},'\x69\x48\x58\x58\x79':function(_0x3ad8e4,_0xff743a){return _0x3ad8e4+_0xff743a;},'\x67\x78\x5a\x67\x6d':_0x2ed2d8(0x246,'\x40\x63\x63\x31')+_0x2ed2d8(0x13e,'\x32\x79\x74\x73')+'\x61\x63\x65\x64\x20','\x6d\x45\x56\x73\x6e':_0x2ed2d8(0x1b5,'\x44\x74\x31\x7a')+'\x69\x74\x79\x20\x63\x61\x6e\x64'+'\x69\x64\x61\x74\x65\x28\x73\x29'+_0x2ed2d8(0x287,'\x6a\x74\x59\x41')+_0x2ed2d8(0x1b1,'\x40\x63\x63\x31'),'\x48\x50\x66\x45\x6a':_0x2ed2d8(0x13b,'\x4c\x76\x71\x29')+_0x2ed2d8(0x139,'\x26\x61\x66\x7a'),'\x56\x6f\x42\x77\x41':function(_0x33d866){return _0x33d866();},'\x67\x54\x4c\x76\x62':_0x2ed2d8(0x197,'\x6f\x42\x2a\x77'),'\x4f\x77\x4d\x51\x55':function(_0x3fb753,_0x2bea1c){return _0x3fb753!==_0x2bea1c;},'\x4a\x50\x77\x46\x72':_0x2ed2d8(0x135,'\x6e\x63\x54\x49')};try{return JSON[_0x2ed2d8(0x245,'\x44\x74\x31\x7a')](_0x148131[_0x2ed2d8(0x157,'\x39\x43\x37\x4a')+'\x53\x79\x6e\x63'](_0x54058f[_0x2ed2d8(0x1ab,'\x26\x61\x66\x7a')](_0x1c66fd),_0x54058f[_0x2ed2d8(0x249,'\x78\x44\x77\x47')]));}catch(_0x279f51){if(_0x54058f[_0x2ed2d8(0x1fb,'\x64\x2a\x59\x44')](_0x54058f[_0x2ed2d8(0x248,'\x67\x6d\x79\x2a')],_0x54058f['\x4a\x50\x77\x46\x72'])){const _0x47c04e=_0x33a67c||_0x54058f[_0x2ed2d8(0x1ee,'\x47\x58\x40\x66')](_0x14d57c),_0x57688f={};_0x57688f[_0x2ed2d8(0x271,'\x5b\x66\x55\x25')]=_0x3ed959,_0x57688f[_0x2ed2d8(0x217,'\x67\x6d\x79\x2a')+'\x65\x73']=[],_0x57688f[_0x2ed2d8(0x239,'\x72\x56\x6d\x41')]=[];if(!_0x5f4bd3(_0x47c04e))return _0x57688f;const _0x1b9341=_0x54058f[_0x2ed2d8(0x293,'\x6a\x4e\x53\x47')](_0x148d58,_0xd66fb6),_0x45e23d=_0x47c04e[_0x2ed2d8(0x26f,'\x33\x73\x56\x57')]||{},_0x2c6147=_0x1b9341['\x66\x69\x6c\x74\x65\x72'](_0x5d7a48=>!_0x45e23d[_0x5d7a48[_0x2ed2d8(0x1e7,'\x74\x26\x4b\x47')]]),_0x35ee5c={};_0x35ee5c[_0x2ed2d8(0x146,'\x6a\x74\x59\x41')]=_0x4d0162,_0x35ee5c[_0x2ed2d8(0x29c,'\x26\x61\x66\x7a')+'\x65\x73']=[],_0x35ee5c[_0x2ed2d8(0x256,'\x28\x6c\x35\x42')]=[];if(_0x2c6147[_0x2ed2d8(0x236,'\x67\x6d\x79\x2a')]===-0x2*0xa82+0x1e90+0x1a*-0x5e)return _0x35ee5c;_0x47c04e[_0x2ed2d8(0x121,'\x34\x5e\x26\x56')+_0x2ed2d8(0x182,'\x33\x6f\x64\x59')]=_0x2331d1[_0x2ed2d8(0x26b,'\x5b\x68\x65\x68')]();for(const _0xeceb94 of _0x2c6147)_0x45e23d[_0xeceb94[_0x2ed2d8(0x1a5,'\x6a\x74\x59\x41')]]={'\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79':_0xeceb94[_0x2ed2d8(0x1c9,'\x5a\x5d\x4f\x73')+'\x74\x79'],'\x61\x74':new _0x41aeb8()[_0x2ed2d8(0x259,'\x6b\x5d\x63\x46')+'\x69\x6e\x67']()};_0x47c04e['\x73\x65\x65\x6e']=_0x45e23d,_0x156515(_0x47c04e);const _0x566364=_0xadd77b(_0x2c6147);_0x54058f[_0x2ed2d8(0x26a,'\x6f\x42\x2a\x77')](_0x2d17c9,{'\x61\x74':new _0x57504a()[_0x2ed2d8(0x288,'\x33\x6f\x64\x59')+_0x2ed2d8(0x2a3,'\x78\x44\x77\x47')](),'\x6d\x6f\x64\x65':_0x4bea92,'\x63\x61\x6e\x64\x69\x64\x61\x74\x65\x73':_0x2c6147[_0x2ed2d8(0x1de,'\x6b\x5d\x63\x46')](_0x2fb576=>({'\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79':_0x2fb576[_0x2ed2d8(0x26c,'\x5b\x66\x55\x25')+'\x74\x79'],'\x6d\x61\x74\x63\x68\x65\x64':_0x2fb576['\x6d\x61\x74\x63\x68\x65\x64'],'\x68\x61\x73\x68':_0x2fb576[_0x2ed2d8(0x1e7,'\x74\x26\x4b\x47')]})),'\x73\x69\x67\x6e\x61\x6c\x73':_0x566364});if(_0x54058f[_0x2ed2d8(0x154,'\x64\x2a\x59\x44')](_0x8947d1,'\x73\x68\x61\x64\x6f\x77')){_0x3962c2[_0x2ed2d8(0x19a,'\x69\x61\x29\x5b')](_0x54058f[_0x2ed2d8(0x299,'\x53\x31\x4d\x4d')](_0x54058f[_0x2ed2d8(0x240,'\x6a\x2a\x6c\x4c')](_0x54058f[_0x2ed2d8(0x194,'\x47\x58\x40\x66')](_0x54058f[_0x2ed2d8(0x275,'\x53\x31\x4d\x4d')](_0x2ed2d8(0x258,'\x6a\x74\x59\x41')+_0x2ed2d8(0x160,'\x33\x6f\x64\x59')+_0x2ed2d8(0x1fa,'\x46\x5d\x63\x28')+_0x2ed2d8(0x1e4,'\x6f\x42\x2a\x77')+'\x20',_0x2c6147[_0x2ed2d8(0x165,'\x47\x58\x40\x66')]),_0x2ed2d8(0x22d,'\x39\x43\x37\x4a')+_0x2ed2d8(0x1d2,'\x4c\x76\x71\x29')+'\x69\x64\x61\x74\x65\x28\x73\x29'+'\x3a\x20'),_0x2c6147['\x6d\x61\x70'](_0x71cc26=>_0x71cc26['\x63\x61\x70\x61\x62\x69\x6c\x69'+'\x74\x79'])[_0x2ed2d8(0x19e,'\x6a\x74\x59\x41')]('\x2c\x20')),_0x54058f[_0x2ed2d8(0x24d,'\x5b\x68\x65\x68')]));const _0x238e8e={};return _0x238e8e['\x6d\x6f\x64\x65']=_0x2a56ab,_0x238e8e[_0x2ed2d8(0x199,'\x44\x74\x31\x7a')+'\x65\x73']=_0x2c6147,_0x238e8e[_0x2ed2d8(0x202,'\x4c\x77\x35\x40')]=[],_0x238e8e;}_0x50d63a[_0x2ed2d8(0x20a,'\x72\x56\x6d\x41')](_0x54058f[_0x2ed2d8(0x21d,'\x7a\x29\x44\x38')](_0x54058f['\x75\x52\x6e\x50\x6a'](_0x54058f[_0x2ed2d8(0x163,'\x63\x32\x47\x29')](_0x54058f[_0x2ed2d8(0x1c3,'\x53\x31\x4d\x4d')](_0x54058f[_0x2ed2d8(0x19c,'\x72\x26\x6b\x74')],_0x2c6147['\x6c\x65\x6e\x67\x74\x68']),_0x54058f[_0x2ed2d8(0x1a8,'\x34\x5e\x26\x56')]),_0x566364[_0x2ed2d8(0x144,'\x4b\x28\x4e\x6d')])+_0x54058f[_0x2ed2d8(0x19d,'\x6f\x77\x43\x4b')],_0x566364[_0x2ed2d8(0x1d0,'\x7a\x29\x44\x38')]('\x2c\x20')));const _0xbb5674={};return _0xbb5674[_0x2ed2d8(0x262,'\x5a\x5d\x4f\x73')]=_0x451806,_0xbb5674[_0x2ed2d8(0x1ff,'\x46\x5d\x63\x28')+'\x65\x73']=_0x2c6147,_0xbb5674[_0x2ed2d8(0x1cc,'\x63\x32\x47\x29')]=_0x566364,_0xbb5674;}else{const _0x577c9b={};return _0x577c9b[_0x2ed2d8(0x207,'\x6f\x42\x2a\x77')]={},_0x577c9b[_0x2ed2d8(0x20c,'\x40\x63\x63\x31')+_0x2ed2d8(0x1f0,'\x7a\x29\x44\x38')]=0x0,_0x577c9b;}}}function _0xf6f7e8(_0x353633){const _0x434239=_0x3f18d4,_0x2b4272={'\x70\x75\x52\x47\x48':function(_0x5cf08f,_0x353ff3){return _0x5cf08f(_0x353ff3);},'\x5a\x78\x72\x48\x4d':function(_0x5aefe5,_0x24d762){return _0x5aefe5||_0x24d762;},'\x77\x6f\x74\x58\x4e':_0x434239(0x28d,'\x53\x75\x29\x4a'),'\x46\x68\x41\x4e\x44':function(_0x5050cf,_0x48055a){return _0x5050cf!==_0x48055a;},'\x59\x6f\x52\x56\x77':_0x434239(0x201,'\x34\x5e\x69\x29'),'\x4b\x4a\x73\x61\x72':_0x434239(0x1a7,'\x44\x74\x31\x7a'),'\x44\x51\x6f\x51\x42':function(_0x25514a){return _0x25514a();},'\x6e\x58\x75\x56\x6a':function(_0x52204a,_0x4b7637){return _0x52204a+_0x4b7637;},'\x61\x6a\x70\x59\x52':function(_0x38dea8){return _0x38dea8();},'\x63\x4d\x41\x48\x46':function(_0x4a3454,_0x23c456){return _0x4a3454+_0x23c456;},'\x41\x62\x54\x6f\x52':_0x434239(0x155,'\x6a\x4e\x53\x47'),'\x69\x4a\x51\x63\x4a':function(_0x4cd07f){return _0x4cd07f();}};try{if(_0x2b4272[_0x434239(0x285,'\x7a\x29\x44\x38')](_0x2b4272[_0x434239(0x2a6,'\x75\x58\x6e\x64')],_0x2b4272[_0x434239(0x151,'\x5a\x5d\x4f\x73')])){const _0x316351=_0x2b4272['\x44\x51\x6f\x51\x42'](_0xb17f30),_0x13222b={};_0x13222b[_0x434239(0x184,'\x5b\x66\x55\x25')+'\x65']=!![];if(!_0x148131[_0x434239(0x120,'\x72\x56\x6d\x41')+'\x6e\x63'](_0x316351))_0x148131[_0x434239(0x20d,'\x66\x6c\x6c\x43')+'\x63'](_0x316351,_0x13222b);const _0x2a2d45=_0x2b4272[_0x434239(0x1c2,'\x6a\x74\x59\x41')](_0x2b4272[_0x434239(0x130,'\x5b\x66\x55\x25')](_0x1c66fd),_0x434239(0x214,'\x63\x32\x47\x29'));_0x148131[_0x434239(0x1c4,'\x5a\x5d\x4f\x73')+_0x434239(0x216,'\x33\x73\x56\x57')](_0x2a2d45,_0x2b4272[_0x434239(0x1ec,'\x66\x6c\x6c\x43')](JSON[_0x434239(0x11f,'\x28\x6c\x35\x42')+'\x79'](_0x353633,null,-0xf*0x1cf+-0x535*0x4+0x3*0xffd),'\x0a'),_0x2b4272[_0x434239(0x223,'\x6a\x2a\x6c\x4c')]),_0x148131[_0x434239(0x21b,'\x5a\x5d\x4f\x73')+'\x6e\x63'](_0x2a2d45,_0x2b4272[_0x434239(0x289,'\x6e\x63\x54\x49')](_0x1c66fd));}else return _0x551797[_0x434239(0x29f,'\x4c\x77\x35\x40')+'\x73\x68'](_0x434239(0x1ea,'\x49\x79\x71\x39'))[_0x434239(0x140,'\x72\x56\x6d\x41')](_0x2b4272[_0x434239(0x1db,'\x5b\x66\x55\x25')](_0x89de5d,_0x2b4272[_0x434239(0x228,'\x36\x77\x76\x24')](_0x3fd148,'')))[_0x434239(0x136,'\x69\x61\x29\x5b')](_0x2b4272[_0x434239(0x1f6,'\x33\x6f\x64\x59')])[_0x434239(0x242,'\x6b\x5d\x63\x46')](0x62b*0x4+-0x1def+0x543,-0x9a0+-0x7*0x593+0x30b5);}catch(_0x539b2c){}}function _0x5dbc8b(_0x19a46e){const _0x166c3a=_0x3f18d4,_0x4a29b0={'\x56\x77\x4b\x6b\x57':function(_0x16084c){return _0x16084c();},'\x77\x70\x4a\x57\x49':function(_0x5260fd){return _0x5260fd();},'\x79\x4c\x66\x74\x55':function(_0x1e83f5,_0x1c910f){return _0x1e83f5+_0x1c910f;}};try{const _0x580b49=_0x4a29b0[_0x166c3a(0x13d,'\x46\x5d\x63\x28')](_0xb17f30),_0x6fa014={};_0x6fa014[_0x166c3a(0x24c,'\x6a\x74\x59\x41')+'\x65']=!![];if(!_0x148131[_0x166c3a(0x1c8,'\x33\x6f\x64\x59')+'\x6e\x63'](_0x580b49))_0x148131['\x6d\x6b\x64\x69\x72\x53\x79\x6e'+'\x63'](_0x580b49,_0x6fa014);_0x148131[_0x166c3a(0x268,'\x34\x5e\x69\x29')+_0x166c3a(0x12e,'\x4b\x28\x4e\x6d')](_0x4a29b0['\x77\x70\x4a\x57\x49'](_0x5579fc),_0x4a29b0[_0x166c3a(0x153,'\x4c\x77\x35\x40')](JSON['\x73\x74\x72\x69\x6e\x67\x69\x66'+'\x79'](_0x19a46e),'\x0a'),_0x166c3a(0x2b1,'\x6b\x5d\x63\x46'));}catch(_0x11173b){}}function _0x452f63(_0x1025e3){const _0x5935d2=_0x3f18d4,_0x44bc03={'\x66\x4d\x52\x74\x72':_0x5935d2(0x13c,'\x36\x77\x76\x24'),'\x63\x44\x64\x58\x42':function(_0x21b86e,_0x17ca30){return _0x21b86e(_0x17ca30);},'\x4c\x67\x68\x64\x58':function(_0x430355,_0x57a221){return _0x430355||_0x57a221;},'\x68\x6e\x52\x57\x69':_0x5935d2(0x200,'\x4b\x28\x4e\x6d')};return _0x58ac6e[_0x5935d2(0x156,'\x6a\x74\x59\x41')+'\x73\x68'](_0x44bc03[_0x5935d2(0x25f,'\x32\x79\x74\x73')])[_0x5935d2(0x18d,'\x69\x61\x29\x5b')](_0x44bc03[_0x5935d2(0x1bd,'\x44\x74\x31\x7a')](String,_0x44bc03[_0x5935d2(0x282,'\x6a\x2a\x6c\x4c')](_0x1025e3,'')))[_0x5935d2(0x27d,'\x6f\x77\x43\x4b')](_0x44bc03[_0x5935d2(0x1f2,'\x33\x6f\x64\x59')])[_0x5935d2(0x127,'\x40\x63\x63\x31')](-0xb5e+-0x131b+0x10d*0x1d,0x49*-0x2+0x617*0x3+-0x5e1*0x3);}function _0x143bb7(){return _0x46fd3e;}function _0x43d50f(_0x2efd40){const _0x4099a6=_0x3f18d4,_0x53c7a7={'\x6d\x55\x4a\x42\x48':function(_0x549aca,_0x25460b){return _0x549aca===_0x25460b;},'\x57\x44\x63\x4f\x47':function(_0x2913ea){return _0x2913ea();},'\x68\x68\x42\x50\x61':function(_0x59db92,_0x17f0e1){return _0x59db92<_0x17f0e1;}};if(_0x53c7a7['\x6d\x55\x4a\x42\x48'](_0x46fd3e,_0x4099a6(0x1fe,'\x7a\x29\x44\x38')))return![];const _0x5cd94c=_0x2efd40||_0x53c7a7['\x57\x44\x63\x4f\x47'](_0x37bdee),_0x512957=_0x5cd94c['\x6c\x61\x73\x74\x5f\x73\x6e\x69'+_0x4099a6(0x243,'\x53\x75\x29\x4a')]||-0x1ed8+0x7*0x3fb+0x7*0x6d;if(_0x53c7a7[_0x4099a6(0x222,'\x46\x5d\x63\x28')](Date[_0x4099a6(0x281,'\x78\x44\x77\x47')]()-_0x512957,_0x5052cb))return![];return!![];}const _0xf52869=-0x1*0x20a1+-0xd25+0x2*0x1747,_0x49d6b3=[_0x3f18d4(0x2a1,'\x6f\x42\x2a\x77'),_0x3f18d4(0x235,'\x39\x43\x37\x4a'),_0x3f18d4(0x28c,'\x63\x32\x47\x29'),_0x3f18d4(0x29d,'\x36\x77\x76\x24'),_0x3f18d4(0x1f9,'\x69\x61\x29\x5b'),_0x3f18d4(0x170,'\x28\x6c\x35\x42'),'\x77\x61\x73\x6e\x27\x74',_0x3f18d4(0x25d,'\x6d\x72\x59\x50'),_0x3f18d4(0x1e3,'\x5a\x5d\x4f\x73'),'\u6ca1','\u672a','\u4e0d','\u5931\u8d25','\u65e0\u6cd5'],_0x182cf7=0xceb+0x228a+-0x2f61;function _0x2dd6a4(_0x42bde1,_0x511c44){const _0x51ae78=_0x3f18d4,_0x55066e={};_0x55066e['\x6b\x47\x4a\x70\x7a']=function(_0x4a6598,_0x1bd7ac){return _0x4a6598-_0x1bd7ac;};const _0x44e193=_0x55066e,_0x4e9020=Math[_0x51ae78(0x1ac,'\x44\x74\x31\x7a')](-0x14c2+-0x256f+0x3a31,_0x44e193['\x6b\x47\x4a\x70\x7a'](_0x511c44,_0x182cf7)),_0x2c63c5=_0x42bde1[_0x51ae78(0x1c7,'\x34\x5e\x26\x56')](_0x4e9020,_0x511c44);return _0x49d6b3[_0x51ae78(0x1a4,'\x66\x6c\x6c\x43')](_0x274f6f=>_0x2c63c5['\x69\x6e\x63\x6c\x75\x64\x65\x73'](_0x274f6f));}function _0x5602fd(_0x4acf74,_0x338233,_0xcf65d1,_0x11152b){const _0x4c328b=_0x3f18d4,_0x47665a={'\x75\x64\x61\x52\x6f':function(_0x45ed1c,_0x22e5bc){return _0x45ed1c(_0x22e5bc);},'\x64\x41\x46\x4d\x4a':_0x4c328b(0x11e,'\x5b\x68\x65\x68'),'\x58\x65\x43\x57\x68':function(_0x456ec5,_0xe640fe){return _0x456ec5===_0xe640fe;},'\x4d\x58\x55\x4f\x6e':_0x4c328b(0x126,'\x5b\x66\x55\x25'),'\x65\x47\x68\x4b\x63':_0x4c328b(0x1dd,'\x39\x69\x37\x34'),'\x79\x63\x53\x4e\x49':function(_0x230984,_0x2e3394){return _0x230984===_0x2e3394;},'\x6e\x5a\x77\x69\x78':function(_0x48892c,_0x379987){return _0x48892c===_0x379987;},'\x55\x76\x78\x47\x66':_0x4c328b(0x1ef,'\x64\x2a\x59\x44'),'\x52\x4d\x76\x61\x52':_0x4c328b(0x164,'\x66\x6c\x6c\x43'),'\x52\x4a\x68\x59\x70':function(_0x38aeb7,_0x1846b5){return _0x38aeb7===_0x1846b5;},'\x71\x76\x74\x79\x42':function(_0x2bb729,_0x470fd3,_0x297094){return _0x2bb729(_0x470fd3,_0x297094);},'\x51\x70\x67\x79\x46':function(_0x369912,_0x557fbd,_0x175b25,_0x33ed75,_0x2fa4cb){return _0x369912(_0x557fbd,_0x175b25,_0x33ed75,_0x2fa4cb);},'\x50\x7a\x43\x68\x64':function(_0x272557,_0x493cfb){return _0x272557+_0x493cfb;},'\x57\x43\x79\x73\x58':function(_0x3af248,_0x58a1c7){return _0x3af248-_0x58a1c7;},'\x5a\x4d\x51\x42\x61':_0x4c328b(0x1aa,'\x6a\x4e\x53\x47'),'\x48\x71\x4a\x79\x65':_0x4c328b(0x174,'\x74\x26\x4b\x47'),'\x47\x43\x65\x44\x72':function(_0x1fd0cf,_0x5e2d6e,_0x513579,_0x38a652,_0xed1b6b){return _0x1fd0cf(_0x5e2d6e,_0x513579,_0x38a652,_0xed1b6b);},'\x6c\x77\x5a\x65\x71':function(_0x47a7b3,_0x544cd6){return _0x47a7b3!==_0x544cd6;},'\x59\x41\x79\x63\x61':function(_0x4dca1f,_0x362bfa){return _0x4dca1f!==_0x362bfa;},'\x52\x72\x77\x4b\x64':'\x61\x64\x66\x77\x41','\x51\x74\x6b\x47\x69':function(_0x3df41e,_0xfc92cb,_0x1675f2){return _0x3df41e(_0xfc92cb,_0x1675f2);}},_0x53c75d=Math[_0x4c328b(0x17a,'\x40\x63\x63\x31')](0xe*-0x18c+-0xf6d+-0x35f*-0xb,_0x47665a[_0x4c328b(0x148,'\x44\x74\x31\x7a')](_0xcf65d1,_0xf52869)),_0x220fb4=Math[_0x4c328b(0x255,'\x36\x77\x76\x24')](_0x338233[_0x4c328b(0x18e,'\x5a\x5d\x4f\x73')],_0x47665a[_0x4c328b(0x265,'\x28\x6c\x35\x42')](_0xcf65d1+_0x11152b,_0xf52869));for(const _0x51bdb6 of _0x35395b){if(_0x47665a['\x5a\x4d\x51\x42\x61']===_0x47665a[_0x4c328b(0x290,'\x33\x6f\x64\x59')]){const _0xa3e742=KarzHh[_0x4c328b(0x1e2,'\x67\x6d\x79\x2a')](_0x1309f1,_0x16b1f6.env.EVOLVER_CONV_SNIFF_ENABLED||KarzHh[_0x4c328b(0x284,'\x26\x61\x66\x7a')])[_0x4c328b(0x1d8,'\x46\x4e\x41\x38')+_0x4c328b(0x1b0,'\x49\x79\x71\x39')]()[_0x4c328b(0x267,'\x25\x4d\x50\x42')]();if(KarzHh[_0x4c328b(0x225,'\x47\x58\x40\x66')](_0xa3e742,KarzHh[_0x4c328b(0x15e,'\x34\x5e\x26\x56')])||KarzHh[_0x4c328b(0x28a,'\x6b\x5d\x63\x46')](_0xa3e742,KarzHh[_0x4c328b(0x198,'\x64\x2a\x59\x44')])||KarzHh[_0x4c328b(0x210,'\x44\x74\x31\x7a')](_0xa3e742,'\x30'))return KarzHh[_0x4c328b(0x234,'\x67\x6d\x79\x2a')];if(KarzHh[_0x4c328b(0x178,'\x46\x5d\x63\x28')](_0xa3e742,KarzHh[_0x4c328b(0x25e,'\x5b\x68\x65\x68')])||_0xa3e742==='\x6f\x6e'||KarzHh[_0x4c328b(0x26d,'\x66\x6c\x6c\x43')](_0xa3e742,KarzHh[_0x4c328b(0x2ab,'\x6b\x5d\x63\x46')])||KarzHh[_0x4c328b(0x2a8,'\x7a\x29\x44\x38')](_0xa3e742,'\x31'))return KarzHh[_0x4c328b(0x1da,'\x6b\x5d\x63\x46')];return KarzHh[_0x4c328b(0x277,'\x25\x4d\x50\x42')];}else{const _0x56ee5b=_0x51bdb6[_0x4c328b(0x209,'\x5a\x5d\x4f\x73')+_0x4c328b(0x191,'\x34\x5e\x26\x56')]();let _0x52f12a=_0x47665a[_0x4c328b(0x15c,'\x66\x6c\x6c\x43')](_0x1673ce,_0x338233,_0x56ee5b,_0x53c75d,_0x220fb4);while(_0x47665a[_0x4c328b(0x213,'\x6a\x2a\x6c\x4c')](_0x52f12a,-(0x95*0x2+-0x31*0xa6+-0x1cd*-0x11))){if(_0x47665a[_0x4c328b(0x1fd,'\x79\x33\x64\x65')]('\x52\x65\x53\x41\x48',_0x47665a[_0x4c328b(0x1b3,'\x79\x33\x64\x65')])){if(!_0x47665a[_0x4c328b(0x28e,'\x69\x61\x29\x5b')](_0x2dd6a4,_0x338233,_0x52f12a))return!![];_0x52f12a=_0x1673ce(_0x338233,_0x56ee5b,_0x47665a[_0x4c328b(0x1d6,'\x25\x4d\x50\x42')](_0x52f12a,0x11e7+0x4b*0x43+0x2e3*-0xd),_0x220fb4);}else{if(!_0x47665a[_0x4c328b(0x162,'\x44\x74\x31\x7a')](_0x4ae897,_0x5626d0,_0xecac08))return!![];_0x4fcaf5=_0x47665a[_0x4c328b(0x12c,'\x6d\x72\x59\x50')](_0x2bbb1f,_0x1689a7,_0x626c18,_0x47665a[_0x4c328b(0x1df,'\x33\x6f\x64\x59')](_0x7c75de,0xdab+0x1f39*-0x1+-0x383*-0x5),_0xba709e);}}}}return![];}function _0x5d28(){const _0x4f8c31=['\x57\x36\x37\x63\x54\x38\x6f\x54\x57\x37\x31\x55','\x68\x30\x66\x47\x57\x51\x31\x54','\x6b\x61\x34\x37\x57\x51\x46\x63\x55\x47','\x64\x53\x6f\x72\x57\x35\x47\x49\x79\x57','\x6e\x4c\x56\x63\x4a\x64\x69','\x7a\x38\x6b\x50\x57\x4f\x70\x64\x52\x53\x6f\x56\x72\x4c\x5a\x64\x51\x71','\x6c\x30\x66\x65\x57\x4f\x52\x64\x4c\x67\x35\x6b\x57\x52\x75','\x57\x4f\x6c\x63\x47\x66\x34\x71\x57\x36\x30','\x57\x4f\x69\x70\x57\x50\x54\x66\x57\x35\x53','\x70\x38\x6b\x7a\x57\x51\x37\x63\x4d\x6d\x6f\x46\x61\x4c\x54\x72','\x6e\x68\x2f\x64\x55\x57','\x62\x6d\x6b\x49\x57\x4f\x47','\x74\x6d\x6b\x55\x57\x34\x53\x31\x6a\x71','\x35\x42\x73\x50\x36\x41\x51\x64\x36\x6b\x2b\x39','\x65\x31\x39\x68\x57\x51\x64\x64\x56\x47','\x72\x38\x6b\x68\x57\x51\x52\x63\x52\x6d\x6f\x65\x57\x36\x56\x63\x52\x78\x6d','\x46\x6d\x6b\x2b\x57\x34\x71','\x7a\x43\x6f\x64\x57\x50\x71\x48\x57\x51\x34','\x73\x76\x71\x30\x57\x35\x68\x64\x4e\x61','\x46\x67\x70\x64\x53\x38\x6b\x77','\x57\x35\x56\x64\x51\x68\x4f','\x6e\x78\x31\x4e','\x77\x65\x64\x64\x4c\x30\x62\x35\x57\x51\x64\x63\x47\x43\x6b\x57','\x72\x43\x6f\x35\x42\x48\x43\x6b','\x74\x4d\x65\x4b\x57\x36\x56\x64\x4c\x61','\x62\x32\x62\x6e\x6b\x72\x79\x51\x57\x51\x71','\x6c\x59\x34\x74\x57\x4f\x37\x63\x4d\x73\x33\x63\x48\x75\x34','\x57\x35\x74\x64\x56\x4d\x4b\x4f\x44\x38\x6f\x37','\x75\x43\x6f\x46\x76\x74\x53\x37','\x6b\x31\x72\x56\x57\x4f\x48\x79\x57\x50\x58\x46\x6a\x61','\x45\x43\x6f\x50\x57\x37\x68\x63\x50\x4c\x64\x64\x50\x57\x37\x63\x4e\x57','\x6c\x53\x6b\x73\x68\x67\x61','\x57\x51\x35\x47\x74\x43\x6f\x70\x57\x52\x34','\x7a\x73\x4a\x63\x4b\x57','\x41\x43\x6b\x4f\x57\x34\x4b\x46','\x64\x58\x70\x64\x4a\x31\x58\x6d\x57\x4f\x4a\x64\x51\x53\x6b\x49','\x57\x34\x46\x63\x4b\x38\x6b\x67\x57\x35\x5a\x63\x4c\x71','\x6d\x4e\x4c\x30\x68\x33\x39\x66\x79\x32\x34','\x67\x53\x6f\x5a\x57\x37\x65\x31\x76\x57','\x6d\x48\x33\x64\x48\x68\x4b\x57\x45\x38\x6f\x69','\x6a\x48\x33\x64\x4d\x67\x71\x67\x7a\x53\x6f\x62\x70\x61','\x57\x4f\x47\x4e\x57\x51\x35\x5a\x57\x36\x65','\x57\x36\x30\x38\x61\x66\x6e\x51','\x6f\x4b\x6e\x52\x57\x4f\x31\x51\x57\x50\x62\x37\x69\x61','\x42\x31\x61\x4d\x57\x37\x46\x64\x4e\x57','\x67\x6d\x6b\x31\x57\x4f\x4e\x64\x56\x77\x79\x50\x6c\x53\x6b\x6d','\x45\x65\x52\x63\x56\x78\x72\x47','\x57\x51\x38\x45\x57\x52\x34\x51','\x67\x4b\x64\x63\x4c\x6d\x6b\x75\x79\x38\x6b\x68\x6e\x43\x6f\x50','\x63\x53\x6b\x2f\x57\x50\x4f\x61\x75\x4a\x53','\x72\x38\x6b\x42\x57\x52\x46\x63\x53\x6d\x6f\x67\x57\x36\x4a\x63\x4c\x33\x53','\x45\x53\x6b\x63\x57\x51\x42\x63\x4d\x38\x6f\x6b\x65\x32\x66\x65','\x57\x4f\x57\x73\x57\x52\x4a\x63\x49\x66\x65\x78\x70\x53\x6f\x51','\x57\x34\x4a\x63\x56\x38\x6f\x53\x57\x37\x43','\x6b\x38\x6f\x66\x67\x32\x31\x70\x73\x6d\x6b\x74\x71\x71','\x6c\x53\x6f\x46\x57\x34\x79\x46\x75\x38\x6b\x63\x6b\x67\x38','\x41\x43\x6b\x46\x57\x52\x33\x63\x47\x43\x6f\x79\x63\x76\x44\x7a','\x57\x51\x4a\x63\x4c\x62\x53','\x57\x34\x4c\x43\x63\x53\x6f\x4c\x57\x36\x75','\x57\x4f\x44\x4e\x6d\x53\x6f\x4f\x57\x36\x35\x54\x7a\x47','\x57\x36\x4f\x47\x6f\x4d\x35\x67\x6b\x6d\x6f\x6a\x41\x61','\x63\x32\x58\x65\x7a\x47\x43\x2f\x57\x52\x4b\x58','\x46\x6d\x6b\x34\x57\x34\x4b\x45\x6a\x72\x50\x43\x68\x71','\x66\x61\x6c\x64\x4b\x77\x53\x46','\x42\x53\x6f\x34\x70\x43\x6b\x4e\x57\x34\x4b','\x66\x75\x74\x63\x54\x38\x6b\x6d\x42\x38\x6b\x6e','\x57\x35\x52\x64\x56\x4a\x54\x68\x57\x50\x68\x64\x51\x78\x50\x37\x79\x4a\x37\x63\x49\x43\x6b\x6c\x57\x35\x34\x70','\x57\x51\x42\x63\x4d\x61\x33\x64\x51\x53\x6f\x5a','\x70\x38\x6f\x4f\x57\x4f\x74\x64\x50\x6d\x6f\x53\x72\x31\x37\x64\x51\x71','\x57\x51\x2f\x64\x4a\x6d\x6f\x4a\x57\x52\x4a\x64\x4c\x66\x30\x73\x57\x51\x2f\x64\x47\x6d\x6f\x43\x71\x4d\x56\x64\x47\x65\x65','\x57\x36\x64\x63\x54\x5a\x65','\x71\x6d\x6b\x44\x57\x51\x5a\x63\x54\x61','\x57\x51\x46\x63\x50\x77\x4b\x2f\x57\x36\x4b','\x45\x43\x6b\x5a\x57\x34\x43\x78\x70\x58\x4f','\x68\x30\x52\x63\x52\x78\x78\x63\x4f\x57','\x70\x53\x6f\x5a\x57\x52\x64\x64\x4c\x43\x6f\x4e','\x70\x32\x7a\x68\x57\x34\x4f','\x68\x38\x6b\x77\x57\x51\x30\x6d\x77\x71','\x78\x72\x52\x64\x49\x4c\x42\x63\x52\x6d\x6f\x32\x57\x52\x2f\x64\x4a\x47','\x57\x34\x4e\x64\x53\x33\x35\x2f\x6d\x6d\x6f\x54','\x57\x35\x2f\x63\x50\x48\x5a\x64\x47\x53\x6f\x65','\x72\x6d\x6f\x6d\x57\x34\x70\x64\x51\x68\x78\x64\x47\x72\x6c\x63\x4b\x61','\x69\x4d\x74\x63\x4f\x43\x6f\x41\x57\x35\x78\x64\x52\x6d\x6b\x39\x57\x35\x57','\x41\x53\x6b\x6b\x57\x51\x56\x63\x49\x43\x6f\x6b\x62\x71','\x57\x50\x52\x64\x51\x67\x4f\x2f\x79\x38\x6b\x36\x44\x73\x57','\x57\x34\x4a\x64\x56\x4d\x38\x48\x7a\x6d\x6b\x34\x43\x57','\x79\x4d\x78\x64\x53\x6d\x6b\x44\x57\x37\x4e\x64\x50\x6d\x6b\x4e','\x66\x75\x74\x63\x49\x53\x6b\x73\x44\x43\x6b\x67','\x6a\x4c\x7a\x59\x57\x4f\x62\x50','\x6d\x43\x6f\x4d\x57\x4f\x37\x64\x50\x71','\x57\x36\x34\x6f\x57\x36\x4f\x47\x57\x37\x4e\x64\x50\x77\x4c\x50','\x72\x4b\x2f\x64\x52\x53\x6b\x61\x57\x34\x61','\x43\x43\x6b\x2f\x57\x34\x34\x76\x6f\x61\x79','\x57\x51\x42\x63\x47\x47\x33\x64\x4e\x38\x6f\x79','\x57\x34\x35\x63\x63\x53\x6f\x52','\x57\x35\x6d\x49\x6b\x4c\x54\x53','\x67\x48\x64\x64\x53\x75\x6a\x61\x57\x4f\x43','\x57\x36\x33\x63\x4b\x6d\x6b\x39\x57\x36\x4e\x63\x48\x57','\x57\x4f\x71\x79\x71\x38\x6b\x78\x57\x4f\x4b\x54\x6c\x61','\x57\x37\x39\x5a\x6c\x43\x6f\x62\x57\x35\x69','\x57\x36\x64\x64\x4d\x57\x7a\x66\x71\x57','\x57\x52\x43\x34\x57\x52\x58\x37\x57\x37\x79','\x6d\x77\x50\x53\x57\x50\x31\x35','\x74\x38\x6f\x62\x6f\x6d\x6b\x45\x57\x36\x75','\x72\x38\x6f\x45\x57\x52\x6e\x48','\x70\x38\x6f\x37\x57\x4f\x2f\x64\x4f\x43\x6f\x58\x72\x4e\x46\x64\x56\x61','\x67\x58\x64\x64\x53\x76\x72\x4c\x57\x4f\x42\x63\x51\x6d\x6b\x54','\x57\x35\x66\x6c\x57\x37\x52\x64\x4a\x74\x44\x74\x79\x6d\x6f\x32\x57\x34\x69\x2f\x57\x50\x68\x63\x4b\x53\x6f\x67','\x57\x4f\x58\x34\x76\x38\x6f\x47\x57\x52\x65','\x57\x37\x4e\x63\x50\x64\x78\x64\x48\x43\x6f\x36\x57\x36\x64\x63\x4c\x38\x6b\x36','\x67\x6d\x6b\x73\x57\x4f\x47\x64\x77\x47','\x6f\x6d\x6b\x50\x57\x36\x6e\x45\x57\x4f\x53','\x45\x43\x6b\x53\x57\x4f\x74\x63\x47\x38\x6f\x6a','\x57\x51\x30\x52\x57\x50\x37\x63\x53\x32\x61','\x6c\x6d\x6f\x56\x57\x36\x43\x63\x66\x49\x66\x47\x78\x57','\x70\x75\x47\x33\x57\x51\x52\x64\x53\x31\x58\x41\x57\x51\x47','\x69\x75\x48\x55\x57\x4f\x58\x75\x57\x52\x7a\x58','\x79\x68\x52\x64\x4f\x38\x6b\x6b\x57\x35\x4f','\x67\x76\x42\x63\x4f\x4b\x5a\x63\x4e\x61','\x63\x38\x6b\x79\x57\x37\x6e\x2f','\x57\x35\x6e\x7a\x69\x77\x5a\x64\x50\x38\x6f\x35','\x68\x30\x74\x63\x4a\x43\x6b\x67\x41\x43\x6b\x42\x44\x6d\x6f\x4b','\x67\x4c\x78\x64\x4e\x4e\x39\x33\x57\x34\x2f\x63\x52\x43\x6b\x4d','\x57\x35\x58\x4d\x6b\x6d\x6f\x54\x57\x37\x43','\x57\x36\x4b\x39\x69\x71','\x57\x37\x71\x38\x6e\x33\x39\x42','\x57\x50\x48\x46\x61\x43\x6b\x7a\x57\x52\x4f','\x41\x73\x47\x4a\x77\x59\x69\x7a\x42\x49\x54\x76\x42\x53\x6b\x37\x57\x52\x54\x57','\x57\x52\x76\x36\x45\x5a\x71\x69\x75\x53\x6b\x77\x69\x61','\x57\x35\x4e\x64\x55\x4e\x65\x50\x42\x6d\x6b\x2f\x44\x5a\x30','\x6c\x38\x6f\x48\x57\x4f\x56\x64\x50\x6d\x6f\x51\x76\x61','\x71\x43\x6b\x62\x57\x51\x74\x63\x55\x38\x6f\x65\x57\x36\x4f','\x68\x6d\x6b\x66\x57\x36\x48\x53\x57\x51\x79\x4f\x63\x4b\x69','\x68\x57\x64\x64\x50\x75\x6e\x32','\x68\x30\x4a\x63\x49\x6d\x6b\x62\x7a\x6d\x6b\x43','\x57\x34\x4b\x65\x57\x36\x31\x64\x57\x36\x53','\x57\x50\x71\x52\x57\x50\x50\x45\x57\x37\x42\x64\x56\x65\x6e\x2f','\x57\x35\x75\x71\x61\x53\x6f\x4c\x57\x37\x72\x67\x77\x47','\x57\x4f\x79\x73\x57\x51\x46\x63\x4a\x32\x53','\x57\x36\x46\x63\x49\x59\x64\x64\x47\x6d\x6f\x52','\x57\x36\x78\x63\x54\x64\x4e\x64\x4a\x53\x6f\x4e\x57\x37\x53','\x57\x35\x44\x72\x67\x57','\x64\x6d\x6b\x44\x45\x6d\x6f\x4d\x57\x50\x6d\x79\x57\x37\x4f\x71\x6b\x61\x69\x58\x57\x35\x52\x64\x4f\x57','\x57\x52\x79\x70\x57\x52\x7a\x31\x57\x34\x46\x64\x4b\x61','\x57\x35\x58\x44\x69\x77\x2f\x64\x55\x53\x6f\x31\x61\x30\x30','\x42\x31\x6a\x30\x62\x48\x75','\x70\x78\x6c\x64\x47\x6d\x6b\x58\x57\x52\x46\x63\x51\x53\x6f\x46\x57\x37\x5a\x63\x52\x75\x75\x7a\x41\x71\x53','\x57\x50\x71\x43\x57\x4f\x46\x63\x4b\x33\x4b\x62\x69\x53\x6f\x61','\x57\x35\x76\x77\x62\x71','\x70\x75\x48\x73\x57\x51\x33\x64\x51\x61','\x57\x37\x52\x63\x53\x4a\x42\x64\x48\x38\x6f\x71\x57\x37\x5a\x63\x4a\x43\x6f\x4e','\x57\x52\x78\x63\x4c\x58\x37\x64\x48\x53\x6f\x74\x6a\x6d\x6b\x47\x77\x61','\x57\x50\x6d\x77\x57\x51\x37\x63\x4b\x47','\x57\x37\x74\x63\x4b\x38\x6b\x39\x57\x36\x71','\x6c\x4c\x50\x52\x57\x36\x65','\x57\x51\x4b\x70\x57\x52\x4c\x47\x57\x35\x64\x64\x4b\x61','\x45\x43\x6b\x31\x57\x34\x34\x78','\x6b\x43\x6f\x38\x57\x36\x4f\x6c\x71\x61','\x57\x52\x62\x38\x57\x34\x42\x63\x54\x33\x4f','\x76\x6d\x6b\x6a\x57\x37\x65\x38\x6e\x61','\x41\x6d\x6b\x51\x57\x34\x71\x74\x6f\x61\x53','\x57\x34\x46\x64\x54\x62\x54\x64\x72\x76\x38','\x57\x34\x4e\x64\x53\x33\x34\x50\x41\x53\x6b\x53','\x71\x4e\x42\x63\x47\x4c\x6e\x6c\x46\x47\x37\x64\x54\x57','\x57\x4f\x65\x61\x57\x51\x34','\x57\x4f\x30\x48\x57\x51\x2f\x63\x4c\x75\x53','\x57\x35\x5a\x64\x56\x75\x6a\x54\x76\x53\x6b\x55\x7a\x63\x38','\x57\x35\x62\x31\x69\x78\x4a\x64\x48\x61','\x41\x32\x70\x63\x4f\x43\x6f\x45\x57\x35\x68\x63\x50\x53\x6b\x4e\x57\x50\x4b','\x57\x4f\x64\x63\x4b\x64\x37\x64\x4f\x38\x6f\x4d','\x6e\x43\x6b\x6a\x64\x4e\x47','\x77\x38\x6f\x55\x6a\x38\x6b\x79\x57\x34\x71','\x43\x4d\x33\x64\x55\x43\x6b\x78\x57\x37\x68\x64\x52\x6d\x6b\x31\x45\x71','\x43\x43\x6b\x31\x57\x34\x43','\x63\x4e\x4c\x6f','\x57\x50\x39\x4c\x57\x36\x52\x63\x4f\x77\x71','\x46\x4c\x66\x64\x65\x4a\x65','\x6e\x53\x6f\x4d\x57\x4f\x70\x64\x52\x47','\x6b\x53\x6b\x79\x63\x5a\x72\x66\x78\x6d\x6f\x6e\x65\x57','\x70\x48\x4a\x64\x4a\x78\x78\x63\x49\x61','\x57\x4f\x4a\x63\x50\x77\x65\x66\x57\x37\x4a\x63\x56\x63\x30\x34','\x57\x34\x58\x46\x57\x35\x2f\x63\x48\x53\x6b\x79','\x57\x51\x4b\x6d\x7a\x61','\x64\x6d\x6b\x66\x57\x36\x54\x2f','\x6e\x6d\x6f\x4f\x57\x50\x4e\x64\x51\x61','\x78\x53\x6b\x61\x57\x52\x68\x64\x4f\x76\x38\x57\x6d\x47','\x75\x4c\x42\x64\x53\x6d\x6b\x76\x57\x36\x53','\x57\x4f\x30\x32\x57\x50\x33\x63\x4a\x32\x61','\x57\x36\x30\x45\x57\x36\x31\x4f','\x76\x6d\x6f\x43\x57\x52\x61\x32\x57\x51\x75','\x67\x49\x61\x2f\x57\x50\x33\x63\x53\x71','\x46\x67\x33\x64\x52\x57','\x74\x53\x6f\x66\x57\x37\x4b','\x57\x35\x74\x63\x4e\x53\x6f\x6b\x57\x35\x72\x39','\x57\x51\x57\x4b\x57\x50\x44\x46\x57\x37\x47','\x57\x37\x44\x75\x57\x36\x53','\x57\x35\x6e\x45\x62\x6d\x6b\x4d','\x69\x58\x37\x64\x4c\x33\x75\x51','\x57\x50\x6d\x46\x79\x6d\x6b\x7a\x6b\x61','\x75\x30\x42\x64\x4b\x31\x64\x63\x54\x53\x6f\x2f\x57\x51\x61','\x6d\x77\x2f\x64\x54\x53\x6b\x64\x57\x37\x4e\x64\x51\x53\x6b\x39\x79\x71','\x6f\x4d\x54\x2b\x57\x52\x37\x64\x56\x61','\x57\x52\x39\x4c\x44\x78\x79\x7a\x57\x51\x75','\x6b\x65\x66\x34\x57\x51\x56\x64\x55\x66\x47','\x45\x68\x4e\x64\x55\x53\x6f\x59\x57\x37\x6c\x63\x4a\x67\x71','\x57\x35\x74\x64\x51\x32\x43\x4b\x71\x61','\x74\x53\x6f\x41\x57\x36\x31\x7a\x57\x4f\x61\x50\x6d\x75\x43','\x57\x34\x75\x36\x44\x53\x6f\x34\x57\x50\x53\x6c\x67\x71\x57','\x43\x4b\x4a\x64\x53\x38\x6b\x52\x57\x35\x4f','\x6d\x49\x2f\x63\x4c\x4b\x75\x32\x79\x6d\x6f\x64\x6d\x71','\x67\x62\x42\x64\x51\x66\x6a\x48','\x57\x37\x71\x4d\x6b\x4a\x50\x61\x67\x53\x6f\x74\x42\x71','\x67\x43\x6b\x50\x57\x4f\x70\x64\x48\x4d\x65\x4d\x70\x61','\x6d\x53\x6f\x72\x57\x50\x2f\x64\x4c\x53\x6f\x56','\x73\x53\x6f\x35\x7a\x63\x57\x71','\x57\x35\x5a\x64\x4f\x58\x58\x71\x76\x68\x68\x64\x4d\x66\x53','\x57\x51\x56\x63\x4c\x58\x70\x64\x4c\x6d\x6f\x76\x70\x57','\x57\x35\x70\x64\x54\x78\x53\x4f\x46\x71','\x57\x50\x6d\x46\x57\x51\x6c\x63\x4e\x32\x53','\x70\x4c\x7a\x4b\x57\x51\x52\x64\x52\x30\x35\x54\x57\x52\x34','\x57\x34\x4a\x64\x53\x61\x76\x66\x75\x31\x37\x64\x4e\x76\x34','\x70\x65\x4c\x67\x57\x4f\x7a\x42\x57\x50\x58\x4c\x62\x47','\x57\x35\x37\x64\x55\x74\x69\x49\x44\x43\x6b\x2b\x7a\x63\x47','\x6b\x78\x4e\x63\x56\x68\x6c\x63\x4b\x30\x42\x63\x53\x47','\x68\x6d\x6b\x6c\x57\x37\x7a\x37\x57\x50\x53\x49\x62\x31\x53','\x57\x36\x37\x63\x4e\x43\x6b\x4d\x57\x37\x4e\x63\x48\x57','\x57\x51\x35\x2f\x57\x36\x42\x63\x52\x65\x53','\x69\x53\x6f\x77\x57\x37\x61\x63','\x79\x63\x70\x63\x4d\x53\x6f\x4d\x57\x37\x56\x64\x55\x47','\x66\x62\x33\x64\x4d\x48\x68\x63\x4f\x43\x6f\x32\x57\x52\x33\x63\x47\x47','\x6f\x43\x6f\x4e\x57\x4f\x5a\x64\x52\x38\x6f\x33\x71\x66\x4f','\x77\x30\x2f\x63\x52\x77\x31\x46','\x44\x38\x6b\x31\x57\x34\x4b\x43','\x57\x51\x35\x4b\x66\x6d\x6b\x7a\x57\x52\x4f','\x70\x38\x6f\x37\x57\x50\x70\x64\x53\x6d\x6f\x58\x74\x61','\x74\x66\x47\x61\x57\x35\x5a\x64\x51\x43\x6b\x45\x75\x43\x6b\x66','\x62\x68\x72\x43\x69\x72\x43','\x57\x4f\x38\x43\x57\x51\x62\x76\x57\x35\x75','\x57\x52\x46\x63\x48\x59\x2f\x64\x54\x6d\x6f\x50','\x61\x53\x6f\x43\x57\x37\x42\x64\x52\x6d\x6b\x72\x57\x52\x56\x63\x4d\x4e\x65\x72\x57\x51\x57\x34\x57\x37\x69','\x6c\x77\x68\x63\x52\x6d\x6f\x44\x57\x35\x75','\x57\x52\x43\x6c\x57\x51\x47','\x63\x31\x72\x6f\x57\x52\x68\x64\x56\x57','\x76\x77\x62\x6c\x6d\x5a\x69\x6a\x6e\x64\x57','\x75\x65\x68\x64\x4c\x53\x6b\x4c\x57\x34\x53','\x57\x36\x47\x32\x6d\x4b\x48\x6d','\x57\x34\x2f\x64\x55\x62\x66\x6b\x66\x4b\x6d','\x79\x6d\x6b\x6f\x68\x74\x6a\x67\x77\x43\x6b\x76\x76\x47','\x57\x34\x57\x51\x79\x6d\x6f\x65\x57\x36\x52\x63\x50\x76\x52\x63\x47\x6d\x6b\x56\x57\x37\x75\x48\x76\x6d\x6f\x64','\x57\x34\x62\x49\x57\x35\x5a\x63\x51\x43\x6b\x75\x77\x53\x6b\x6b\x67\x61','\x57\x37\x75\x6b\x57\x36\x31\x4f','\x44\x73\x78\x63\x56\x6d\x6f\x77\x57\x34\x61','\x36\x41\x51\x55\x36\x6b\x32\x52\x36\x79\x6b\x65\x36\x6c\x59\x70','\x57\x36\x76\x70\x57\x36\x2f\x64\x48\x6d\x6f\x49\x69\x57','\x57\x4f\x46\x63\x50\x77\x47','\x68\x6d\x6b\x4e\x57\x34\x44\x73\x57\x52\x38','\x57\x37\x47\x51\x6e\x4e\x4b','\x57\x35\x44\x42\x70\x65\x33\x64\x48\x61','\x77\x38\x6f\x68\x6b\x43\x6b\x38\x57\x35\x76\x63\x57\x51\x4b','\x6c\x53\x6f\x46\x57\x34\x79\x79\x76\x61','\x68\x30\x46\x63\x55\x38\x6b\x62\x43\x47','\x6d\x30\x62\x46\x57\x4f\x37\x64\x53\x47','\x64\x38\x6f\x57\x57\x4f\x74\x64\x4f\x57','\x66\x61\x46\x64\x48\x61','\x63\x76\x68\x63\x4a\x6d\x6b\x59\x74\x57','\x6c\x65\x66\x35\x57\x4f\x68\x64\x4c\x71','\x57\x52\x53\x65\x46\x38\x6b\x72\x69\x57','\x75\x43\x6f\x67\x57\x37\x46\x63\x51\x30\x6d','\x45\x38\x6b\x37\x57\x34\x4b\x45','\x57\x37\x37\x63\x4a\x68\x46\x64\x56\x53\x6f\x38\x57\x36\x42\x63\x4b\x38\x6f\x5a','\x43\x43\x6f\x45\x61\x53\x6b\x63\x57\x37\x69','\x57\x35\x44\x72\x65\x57','\x57\x50\x47\x53\x42\x53\x6b\x58\x6c\x71','\x6a\x38\x6f\x46\x57\x37\x38','\x57\x36\x52\x63\x53\x64\x4e\x64\x4a\x43\x6f\x36\x57\x37\x46\x63\x4e\x53\x6f\x4a','\x65\x75\x74\x63\x4e\x61','\x57\x34\x61\x68\x74\x38\x6b\x7a\x57\x50\x69','\x6f\x30\x39\x54\x57\x4f\x44\x6e\x57\x50\x76\x4b','\x57\x34\x47\x54\x7a\x6d\x6f\x65\x57\x36\x46\x63\x51\x61\x4a\x63\x49\x53\x6b\x62\x57\x36\x61\x32\x44\x57','\x75\x77\x4e\x63\x48\x67\x6a\x47','\x6e\x61\x35\x53\x57\x52\x52\x64\x52\x58\x71\x71','\x74\x32\x2f\x64\x4b\x38\x6f\x6e\x57\x34\x53','\x6d\x38\x6b\x79\x64\x73\x34','\x36\x79\x67\x32\x36\x6c\x59\x61\x35\x6c\x4d\x32','\x57\x35\x2f\x64\x56\x4a\x4c\x6c\x72\x4c\x6c\x64\x47\x33\x71','\x43\x38\x6b\x76\x57\x51\x47','\x7a\x43\x6f\x44\x57\x52\x34\x34\x57\x4f\x30','\x57\x35\x7a\x72\x65\x6d\x6f\x59\x57\x35\x38\x43\x67\x49\x71','\x65\x53\x6b\x62\x57\x36\x6a\x5a\x57\x4f\x53\x79\x65\x4c\x57','\x57\x34\x6c\x64\x4f\x4a\x72\x77\x71\x31\x42\x64\x49\x61','\x57\x35\x47\x31\x57\x34\x70\x63\x52\x32\x35\x6e\x57\x51\x68\x64\x47\x57','\x41\x67\x2f\x64\x48\x6d\x6b\x39\x57\x35\x65','\x6e\x6d\x6b\x62\x57\x50\x79\x4a\x76\x71','\x57\x35\x78\x64\x51\x78\x71\x52\x41\x43\x6b\x30\x79\x71','\x57\x34\x37\x63\x50\x38\x6f\x46\x57\x37\x58\x68','\x44\x67\x74\x63\x54\x4d\x57','\x64\x33\x6a\x67\x70\x5a\x38\x44\x6a\x57','\x57\x52\x35\x43\x72\x43\x6f\x56\x57\x50\x79','\x57\x37\x34\x5a\x70\x78\x35\x6b\x68\x38\x6f\x43\x46\x71','\x57\x52\x58\x78\x71\x4e\x4f\x49','\x57\x4f\x72\x43\x44\x43\x6f\x67\x57\x52\x56\x64\x49\x57\x47','\x69\x4d\x37\x63\x4f\x38\x6f\x63\x57\x34\x78\x63\x4f\x6d\x6b\x52\x57\x4f\x79','\x57\x35\x4e\x64\x54\x62\x54\x66\x78\x66\x6c\x64\x4f\x4b\x34','\x57\x4f\x4a\x63\x51\x33\x38\x73\x57\x34\x78\x63\x54\x49\x61\x48','\x6b\x43\x6f\x71\x57\x37\x57\x38\x43\x57','\x46\x53\x6b\x31\x57\x34\x34\x62\x6f\x62\x58\x71\x72\x61','\x71\x6d\x6b\x50\x57\x4f\x68\x63\x4f\x43\x6f\x34\x6a\x4d\x31\x34','\x6c\x53\x6f\x63\x57\x37\x37\x64\x4d\x43\x6b\x68\x76\x57\x6a\x69\x76\x6d\x6b\x45\x69\x6d\x6f\x65\x70\x57','\x63\x66\x4e\x63\x56\x4c\x74\x63\x49\x47','\x57\x36\x68\x63\x55\x72\x78\x64\x55\x43\x6f\x59','\x57\x36\x70\x63\x53\x53\x6f\x72\x57\x37\x7a\x4b','\x57\x36\x46\x63\x49\x6d\x6b\x65\x57\x34\x64\x63\x47\x61','\x57\x36\x44\x7a\x64\x66\x5a\x64\x55\x57','\x67\x53\x6b\x72\x57\x52\x56\x64\x50\x31\x34','\x57\x37\x76\x2b\x44\x33\x4f\x73\x57\x51\x69\x74','\x57\x36\x64\x64\x4f\x32\x30\x66\x73\x61','\x6b\x49\x4c\x68\x57\x50\x4e\x63\x4d\x63\x4a\x63\x47\x66\x75','\x57\x34\x75\x51\x79\x43\x6b\x37\x57\x52\x53\x55\x6a\x71','\x41\x76\x52\x64\x4d\x43\x6f\x42\x57\x34\x57','\x57\x50\x4a\x63\x50\x4d\x79\x71\x57\x34\x69','\x73\x72\x42\x64\x53\x75\x62\x63\x57\x4f\x33\x63\x52\x43\x6b\x4b','\x57\x35\x37\x64\x54\x68\x57\x4d\x79\x6d\x6b\x50\x6f\x5a\x34','\x6f\x4c\x35\x4b\x57\x37\x74\x64\x55\x66\x58\x73\x57\x51\x53','\x57\x52\x6d\x6f\x57\x52\x4c\x4d\x57\x35\x42\x63\x4b\x61\x30\x5a','\x61\x6d\x6b\x49\x57\x50\x37\x64\x49\x78\x57\x4f','\x64\x75\x37\x63\x52\x43\x6b\x4d\x74\x53\x6b\x39\x6c\x43\x6f\x59','\x57\x36\x30\x4e\x6d\x78\x7a\x6b\x63\x6d\x6f\x76','\x57\x35\x61\x6b\x62\x4c\x76\x6e','\x62\x31\x6c\x64\x50\x62\x61','\x57\x37\x65\x33\x70\x78\x31\x78\x65\x57','\x6d\x48\x33\x64\x48\x68\x4b\x51','\x41\x38\x6b\x6d\x57\x34\x47\x51\x62\x47','\x42\x6d\x6b\x74\x57\x51\x4a\x63\x48\x53\x6f\x46\x64\x65\x65','\x57\x35\x5a\x64\x4a\x76\x71\x4d\x43\x47','\x6c\x75\x39\x48\x57\x52\x64\x64\x56\x31\x58\x6b\x57\x51\x69','\x76\x38\x6f\x68\x6b\x6d\x6f\x5a','\x61\x6d\x6b\x59\x57\x50\x43\x55\x77\x47','\x6d\x78\x2f\x64\x56\x53\x6b\x75\x57\x37\x42\x64\x51\x43\x6b\x34\x6a\x71','\x57\x36\x46\x63\x56\x49\x61','\x57\x36\x4e\x63\x53\x53\x6f\x77\x57\x34\x35\x7a','\x64\x33\x70\x63\x4e\x30\x50\x61','\x57\x51\x4b\x67\x57\x52\x66\x58\x57\x35\x79','\x63\x53\x6b\x48\x57\x51\x2f\x64\x4d\x4e\x53','\x57\x52\x54\x6e\x57\x35\x4e\x63\x51\x4e\x57','\x79\x77\x33\x64\x50\x43\x6b\x61\x57\x37\x30','\x57\x36\x66\x5a\x64\x6d\x6f\x4f\x57\x37\x79\x38\x67\x49\x71','\x68\x61\x33\x64\x48\x57','\x57\x35\x43\x63\x6a\x66\x58\x72','\x41\x58\x6c\x63\x55\x6d\x6f\x33\x57\x36\x30','\x63\x43\x6f\x65\x57\x51\x4a\x64\x4b\x53\x6f\x61\x42\x33\x70\x64\x4e\x61','\x57\x50\x61\x73\x57\x52\x2f\x63\x4c\x61','\x6c\x53\x6f\x53\x57\x4f\x4e\x64\x54\x43\x6f\x33\x75\x66\x42\x64\x51\x57','\x6d\x6d\x6b\x6f\x57\x50\x69\x49\x72\x57','\x41\x38\x6f\x75\x71\x32\x71','\x75\x38\x6f\x65\x78\x48\x47\x61\x57\x4f\x42\x63\x53\x62\x65','\x46\x6d\x6b\x55\x57\x34\x4b\x44\x69\x47','\x6f\x53\x6b\x63\x57\x51\x6c\x64\x53\x75\x53\x70\x62\x53\x6b\x38','\x65\x68\x31\x43\x69\x4a\x43\x51\x57\x52\x79\x48','\x57\x37\x2f\x63\x4e\x38\x6b\x58\x57\x36\x37\x64\x47\x47','\x66\x71\x4a\x64\x4b\x66\x4b','\x57\x35\x46\x64\x53\x4e\x65','\x72\x38\x6b\x67\x57\x51\x6c\x63\x54\x38\x6f\x6a\x57\x36\x70\x63\x4a\x71','\x57\x35\x54\x64\x62\x47','\x62\x38\x6f\x6b\x57\x4f\x78\x64\x52\x53\x6f\x5a\x43\x66\x68\x64\x54\x61','\x57\x51\x34\x66\x57\x50\x66\x62\x57\x37\x5a\x64\x51\x57\x50\x4f','\x57\x4f\x46\x63\x51\x33\x57\x68\x57\x37\x4a\x63\x52\x63\x69\x48','\x57\x36\x64\x63\x56\x5a\x61','\x66\x75\x64\x63\x4c\x38\x6b\x62\x78\x53\x6b\x44\x6e\x38\x6f\x50','\x6c\x61\x68\x64\x4d\x64\x75\x54','\x6c\x6d\x6b\x48\x57\x4f\x6d\x4a\x77\x57','\x72\x6d\x6f\x4e\x57\x34\x5a\x63\x56\x66\x71','\x69\x6d\x6b\x35\x57\x34\x48\x74\x57\x52\x38\x6e\x6e\x68\x43','\x70\x32\x2f\x63\x4b\x38\x6f\x41\x57\x34\x6c\x63\x52\x43\x6b\x47\x57\x50\x69','\x57\x34\x42\x64\x56\x48\x66\x62','\x42\x77\x6c\x64\x52\x38\x6f\x31','\x74\x38\x6f\x66\x57\x37\x52\x63\x52\x71','\x7a\x6d\x6b\x76\x57\x4f\x42\x63\x53\x43\x6f\x6d','\x42\x43\x6b\x39\x57\x35\x37\x63\x54\x6d\x6b\x5a\x66\x71\x4e\x63\x52\x53\x6f\x50\x46\x75\x2f\x63\x54\x78\x37\x64\x54\x57','\x57\x4f\x50\x53\x70\x53\x6b\x43','\x57\x35\x43\x56\x43\x53\x6b\x39\x57\x52\x61\x35\x65\x63\x4b','\x57\x52\x4a\x63\x52\x4c\x79\x36\x57\x37\x79','\x62\x43\x6b\x75\x6b\x58\x66\x53','\x66\x38\x6b\x34\x57\x4f\x57','\x57\x51\x74\x63\x4b\x57\x33\x64\x4b\x53\x6f\x64\x70\x53\x6b\x4c\x72\x57','\x62\x53\x6b\x6a\x57\x35\x76\x75\x57\x52\x61','\x57\x52\x6c\x63\x48\x48\x6c\x64\x4e\x53\x6f\x61\x69\x38\x6b\x47\x71\x71','\x57\x51\x48\x51\x77\x43\x6f\x56','\x57\x4f\x31\x37\x6d\x53\x6b\x46','\x57\x51\x52\x63\x4e\x72\x4e\x64\x4c\x47','\x64\x75\x37\x63\x4d\x43\x6f\x46\x57\x36\x61','\x6b\x49\x68\x64\x4e\x33\x75\x33\x44\x6d\x6f\x64\x6a\x47','\x57\x51\x66\x52\x44\x31\x57\x74','\x45\x53\x6f\x35\x74\x73\x75\x4c','\x57\x50\x65\x44\x57\x52\x72\x71\x57\x35\x47','\x57\x50\x50\x46\x65\x43\x6b\x38\x57\x50\x71','\x77\x65\x78\x64\x55\x33\x6e\x41\x57\x4f\x33\x63\x4e\x53\x6b\x39','\x46\x78\x39\x6c\x57\x35\x2f\x64\x47\x68\x56\x64\x4c\x47\x52\x64\x50\x68\x71\x6a\x57\x52\x65\x74\x65\x47','\x57\x34\x69\x57\x75\x43\x6b\x53\x57\x51\x57\x30\x6f\x63\x43','\x57\x34\x4c\x66\x61\x6d\x6f\x4c\x57\x36\x75\x6b\x65\x63\x47','\x6b\x30\x39\x55\x57\x52\x6c\x64\x55\x4c\x50\x42\x57\x36\x4f','\x75\x4d\x48\x63\x6d\x49\x47\x7a','\x57\x50\x39\x4a\x46\x75\x75\x53','\x57\x37\x35\x67\x57\x37\x33\x63\x4e\x47','\x79\x63\x46\x63\x48\x38\x6f\x31\x57\x34\x42\x64\x56\x6d\x6b\x6e\x57\x37\x57','\x79\x49\x4e\x63\x47\x57'];_0x5d28=function(){return _0x4f8c31;};return _0x5d28();}function _0x1673ce(_0x3c334f,_0x7e0ada,_0xf8df33,_0x5a486f){const _0x535804=_0x3f18d4,_0x303f98={};_0x303f98[_0x535804(0x29a,'\x46\x4e\x41\x38')]=function(_0xd2f687,_0x51ccba){return _0xd2f687===_0x51ccba;},_0x303f98['\x46\x4e\x59\x71\x50']=function(_0xf504d4,_0xfb9b6b){return _0xf504d4>=_0xfb9b6b;};const _0x41384a=_0x303f98,_0x5ba170=_0x3c334f[_0x535804(0x161,'\x4c\x77\x35\x40')](_0x7e0ada,_0xf8df33);if(_0x41384a[_0x535804(0x238,'\x69\x61\x29\x5b')](_0x5ba170,-(-0x1d80+-0x1*-0x2a1+0x1ae0))||_0x41384a[_0x535804(0x272,'\x39\x69\x37\x34')](_0x5ba170,_0x5a486f))return-(-0x26b*-0x7+0xe95+-0x1f81);return _0x5ba170;}function _0x41f4da(_0x33e81a,_0x4fbe6d,_0x2d6979){const _0x438081=_0x3f18d4,_0x5d7927={};_0x5d7927[_0x438081(0x12d,'\x64\x2a\x59\x44')]=function(_0x1e089f,_0x41953b){return _0x1e089f+_0x41953b;},_0x5d7927[_0x438081(0x13a,'\x5b\x68\x65\x68')]=function(_0x36e445,_0x49abf7){return _0x36e445+_0x49abf7;},_0x5d7927[_0x438081(0x1af,'\x6b\x5d\x63\x46')]=function(_0x2375a8,_0x3eca55){return _0x2375a8+_0x3eca55;};const _0x157521=_0x5d7927;if(!_0x33e81a||!_0x33e81a[_0x438081(0x2a4,'\x69\x61\x29\x5b')]())return;const _0x250e74=_0x33e81a[_0x438081(0x1ca,'\x4c\x77\x35\x40')+_0x438081(0x257,'\x40\x63\x63\x31')]();for(const [_0x25fb8c,_0x3db5fe]of _0x49f0c2){if(_0x2d6979[_0x438081(0x1a3,'\x79\x33\x64\x65')](_0x3db5fe))continue;const _0x35a80f=new RegExp(_0x25fb8c[_0x438081(0x1b8,'\x33\x6f\x64\x59')],_0x25fb8c['\x66\x6c\x61\x67\x73'][_0x438081(0x21a,'\x39\x69\x37\x34')]('\x67')?_0x25fb8c[_0x438081(0x1d9,'\x58\x6a\x6c\x28')]:_0x157521['\x50\x51\x72\x74\x6e'](_0x25fb8c[_0x438081(0x1b2,'\x6d\x72\x59\x50')],'\x67'));let _0x5c0669,_0x596510=null;while((_0x5c0669=_0x35a80f[_0x438081(0x1ed,'\x67\x6d\x79\x2a')](_0x33e81a))!==null){if(_0x5c0669[-0xb9d+-0x79+0x5b*0x22][_0x438081(0x179,'\x46\x5d\x63\x28')]===-0x761+0x1375+-0x305*0x4){_0x35a80f[_0x438081(0x280,'\x78\x44\x77\x47')+'\x78']++;continue;}if(_0x5602fd(_0x33e81a,_0x250e74,_0x5c0669[_0x438081(0x1c6,'\x36\x77\x76\x24')],_0x5c0669[0x2ba*0x7+-0x7f3+-0x1*0xb23][_0x438081(0x1c5,'\x5b\x66\x55\x25')])){_0x596510=_0x5c0669;break;}}if(!_0x596510)continue;_0x2d6979[_0x438081(0x247,'\x4c\x76\x71\x29')](_0x3db5fe);const _0x17a8a1=Math['\x6d\x61\x78'](-0xa52*-0x3+0x6c3+-0x25b9,_0x596510[_0x438081(0x16a,'\x67\x6d\x79\x2a')]-(0x1*0x17f3+0x1818+-0xfe9*0x3)),_0x252259=_0x33e81a[_0x438081(0x22c,'\x6e\x63\x54\x49')](_0x17a8a1,_0x157521[_0x438081(0x16b,'\x25\x4d\x50\x42')](_0x17a8a1,_0x54fbdc))[_0x438081(0x142,'\x36\x77\x76\x24')](/\s+/g,'\x20')[_0x438081(0x134,'\x28\x6c\x35\x42')]();_0x4fbe6d[_0x438081(0x263,'\x25\x21\x56\x54')]({'\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79':_0x3db5fe,'\x6d\x61\x74\x63\x68\x65\x64':_0x596510[-0x1*0x1d7+0x80e*-0x1+0x9e5][_0x438081(0x1f8,'\x32\x79\x74\x73')](0x838*-0x2+-0x410+0xa4*0x20,-0x17e5*-0x1+-0x643*0x1+-0x1166),'\x73\x6e\x69\x70\x70\x65\x74':_0x252259,'\x68\x61\x73\x68':_0x452f63(_0x157521[_0x438081(0x1ae,'\x6a\x2a\x6c\x4c')](_0x3db5fe,'\x7c')+_0x252259)});}}function _0x38fe41(_0x50155c){const _0x3271aa=_0x3f18d4,_0x4c4b24={'\x4e\x70\x79\x41\x4f':function(_0x2960eb,_0xa68374,_0x2e25ea,_0xdd0dd9){return _0x2960eb(_0xa68374,_0x2e25ea,_0xdd0dd9);},'\x79\x63\x48\x57\x4f':function(_0x356042,_0xa134ce){return _0x356042(_0xa134ce);},'\x7a\x56\x41\x48\x71':function(_0x33b926,_0x59768b){return _0x33b926||_0x59768b;}},_0x531af9=Array[_0x3271aa(0x20e,'\x5a\x5d\x4f\x73')](_0x50155c)?_0x50155c:[_0x50155c],_0x1ecf20=[],_0x3d9119=new Set();for(const _0x19fa93 of _0x531af9){if(_0x1ecf20[_0x3271aa(0x1d1,'\x78\x44\x77\x47')]>=_0x497d49)break;_0x4c4b24[_0x3271aa(0x14c,'\x67\x6d\x79\x2a')](_0x41f4da,_0x4c4b24[_0x3271aa(0x1e8,'\x78\x44\x77\x47')](String,_0x4c4b24[_0x3271aa(0x1d4,'\x29\x54\x21\x28')](_0x19fa93,'')),_0x1ecf20,_0x3d9119);}return _0x1ecf20[_0x3271aa(0x14e,'\x75\x58\x6e\x64')](-0x10*0xd6+-0x2f8*0x5+0x1c38,_0x497d49);}function _0x3ccf(_0xba709e,_0x49bc77){_0xba709e=_0xba709e-(0xc49*-0x1+0x10d*-0x1+0x3*0x4d1);const _0x19adba=_0x5d28();let _0x34a980=_0x19adba[_0xba709e];if(_0x3ccf['\x6b\x66\x53\x6b\x41\x76']===undefined){var _0x239519=function(_0x26f679){const _0x1f8d09='\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 _0x4c552c='',_0x10f38b='',_0x202de3=_0x4c552c+_0x239519,_0x1ce7cd=(''+function(){return-0x7e4*0x2+0x2e*-0xa6+0x2d9c*0x1;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(-0x189*0x18+0x555+0x1f84);for(let _0x350173=0xc44+0x1eb7*0x1+0x2afb*-0x1,_0x5e2116,_0x462ab8,_0x2f2b98=-0x2412+-0x13a8+-0x3fb*-0xe;_0x462ab8=_0x26f679['\x63\x68\x61\x72\x41\x74'](_0x2f2b98++);~_0x462ab8&&(_0x5e2116=_0x350173%(0x2*-0x887+0x7ae*-0x2+0x206e)?_0x5e2116*(-0x8fe+0x1709+-0xdcb)+_0x462ab8:_0x462ab8,_0x350173++%(-0x1e7+-0x6*-0x20e+0x1*-0xa69))?_0x4c552c+=_0x1ce7cd||_0x202de3['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x2f2b98+(-0x26d*-0x6+-0x21*0x6+0xdbe*-0x1))-(-0x13*-0x1d7+-0x7*0x1ba+-0x16d5)!==-0x635*0x4+0x1a59*0x1+-0x1*0x185?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](0x1ad0+-0x195b*0x1+-0x76&_0x5e2116>>(-(0x1*-0x1731+0x14e3*-0x1+0x4e6*0x9)*_0x350173&0x16*0xb7+-0x55e+-0x1*0xa56)):_0x350173:-0x1ccb+-0x1*0x1d6+0x1ea1){_0x462ab8=_0x1f8d09['\x69\x6e\x64\x65\x78\x4f\x66'](_0x462ab8);}for(let _0x56761d=0x1190+0xa41+-0x1*0x1bd1,_0x286f25=_0x4c552c['\x6c\x65\x6e\x67\x74\x68'];_0x56761d<_0x286f25;_0x56761d++){_0x10f38b+='\x25'+('\x30\x30'+_0x4c552c['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x56761d)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x2*-0x129e+-0x1eb2+0x43fe))['\x73\x6c\x69\x63\x65'](-(-0x129+-0x171b+0xc23*0x2));}return decodeURIComponent(_0x10f38b);};const _0x36a52f=function(_0x3d8e67,_0x258d51){let _0x5eb387=[],_0x37be7d=-0xc16*-0x3+-0x1477+-0xfcb,_0xd11ab1,_0x1f56a9='';_0x3d8e67=_0x239519(_0x3d8e67);let _0x4a77f3;for(_0x4a77f3=-0x1a55+-0x9de+0x1*0x2433;_0x4a77f3<0x68f*0x5+0x12e+-0x1*0x20f9;_0x4a77f3++){_0x5eb387[_0x4a77f3]=_0x4a77f3;}for(_0x4a77f3=0x2*-0xd69+-0x1d2c+0x37fe;_0x4a77f3<-0x4c0+-0x1*-0x166d+-0x10ad;_0x4a77f3++){_0x37be7d=(_0x37be7d+_0x5eb387[_0x4a77f3]+_0x258d51['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x4a77f3%_0x258d51['\x6c\x65\x6e\x67\x74\x68']))%(-0x1e7f*-0x1+-0x54*-0x58+-0x3a5f),_0xd11ab1=_0x5eb387[_0x4a77f3],_0x5eb387[_0x4a77f3]=_0x5eb387[_0x37be7d],_0x5eb387[_0x37be7d]=_0xd11ab1;}_0x4a77f3=-0x11*-0x181+0x8a1*-0x1+0x10*-0x10f,_0x37be7d=0x43*-0x2+0xd0f+0xc89*-0x1;for(let _0x519655=-0x407*0x1+0xe4d*-0x1+0x1254;_0x519655<_0x3d8e67['\x6c\x65\x6e\x67\x74\x68'];_0x519655++){_0x4a77f3=(_0x4a77f3+(-0x412+0x596+-0x9*0x2b))%(0x2*0xf47+0x35e*-0x1+-0x1a30),_0x37be7d=(_0x37be7d+_0x5eb387[_0x4a77f3])%(-0x1ff0+0x1*0xdcd+0x1323),_0xd11ab1=_0x5eb387[_0x4a77f3],_0x5eb387[_0x4a77f3]=_0x5eb387[_0x37be7d],_0x5eb387[_0x37be7d]=_0xd11ab1,_0x1f56a9+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x3d8e67['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x519655)^_0x5eb387[(_0x5eb387[_0x4a77f3]+_0x5eb387[_0x37be7d])%(-0x26ea+0x16f7+0x10f3)]);}return _0x1f56a9;};_0x3ccf['\x71\x49\x43\x69\x68\x52']=_0x36a52f,_0x3ccf['\x4d\x56\x71\x65\x58\x65']={},_0x3ccf['\x6b\x66\x53\x6b\x41\x76']=!![];}const _0x3e8755=_0x19adba[-0x1211+-0x1053+-0x1f*-0x11c],_0x1fcd79=_0xba709e+_0x3e8755,_0x3ff75b=_0x3ccf['\x4d\x56\x71\x65\x58\x65'][_0x1fcd79];if(!_0x3ff75b){if(_0x3ccf['\x52\x74\x51\x54\x56\x54']===undefined){const _0x8a9388=function(_0x3f7163){this['\x4d\x55\x57\x63\x52\x59']=_0x3f7163,this['\x6b\x66\x78\x79\x7a\x66']=[-0xa82+-0x14b1*0x1+0x1f34,0x437+-0x7e5+0x3ae,-0x1cfc+-0x1c4+0x1ec0],this['\x45\x76\x44\x5a\x59\x4b']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x42\x66\x57\x5a\x61\x59']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x5a\x6c\x6b\x62\x74\x78']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x8a9388['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x7a\x42\x6a\x43\x63\x65']=function(){const _0x52cddf=new RegExp(this['\x42\x66\x57\x5a\x61\x59']+this['\x5a\x6c\x6b\x62\x74\x78']),_0x45c28d=_0x52cddf['\x74\x65\x73\x74'](this['\x45\x76\x44\x5a\x59\x4b']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x6b\x66\x78\x79\x7a\x66'][0x6e4*0x3+-0x15*-0x1bf+-0x3956]:--this['\x6b\x66\x78\x79\x7a\x66'][-0x535+-0x20cc+0x1*0x2601];return this['\x49\x7a\x4b\x76\x47\x54'](_0x45c28d);},_0x8a9388['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x49\x7a\x4b\x76\x47\x54']=function(_0x2c76b8){if(!Boolean(~_0x2c76b8))return _0x2c76b8;return this['\x6e\x4c\x64\x4e\x46\x4d'](this['\x4d\x55\x57\x63\x52\x59']);},_0x8a9388['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x6e\x4c\x64\x4e\x46\x4d']=function(_0x447ada){for(let _0x12febf=-0x23da+-0x4e9*-0x4+0x1036,_0x4c248f=this['\x6b\x66\x78\x79\x7a\x66']['\x6c\x65\x6e\x67\x74\x68'];_0x12febf<_0x4c248f;_0x12febf++){this['\x6b\x66\x78\x79\x7a\x66']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x4c248f=this['\x6b\x66\x78\x79\x7a\x66']['\x6c\x65\x6e\x67\x74\x68'];}return _0x447ada(this['\x6b\x66\x78\x79\x7a\x66'][0x7e4+-0xa7f+0x29b]);},(''+function(){return-0x16f6*0x1+0xaf1*-0x3+-0x37c9*-0x1;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(0x1a4e+-0x33e+-0x170f)&&new _0x8a9388(_0x3ccf)['\x7a\x42\x6a\x43\x63\x65'](),_0x3ccf['\x52\x74\x51\x54\x56\x54']=!![];}_0x34a980=_0x3ccf['\x71\x49\x43\x69\x68\x52'](_0x34a980,_0x49bc77),_0x3ccf['\x4d\x56\x71\x65\x58\x65'][_0x1fcd79]=_0x34a980;}else _0x34a980=_0x3ff75b;return _0x34a980;}function _0xd01940(_0x120a3b){const _0x434999=_0x3f18d4,_0x13f488={};_0x13f488[_0x434999(0x283,'\x4c\x77\x35\x40')]=_0x434999(0x1a1,'\x6e\x63\x54\x49')+_0x434999(0x12b,'\x69\x61\x29\x5b'),_0x13f488[_0x434999(0x1f5,'\x4b\x28\x4e\x6d')]=function(_0x3020ba,_0x293337){return _0x3020ba!==_0x293337;},_0x13f488[_0x434999(0x159,'\x33\x73\x56\x57')]=_0x434999(0x192,'\x34\x5e\x26\x56'),_0x13f488[_0x434999(0x17e,'\x6f\x77\x43\x4b')]=function(_0x10b6e3,_0xde0c05){return _0x10b6e3>_0xde0c05;};const _0x5ef07f=_0x13f488,_0x300530=[],_0x4a7fd9=new Set();for(const _0x4085e2 of _0x120a3b){const _0x29cdca=_0x5ef07f[_0x434999(0x2ae,'\x46\x4e\x41\x38')]+_0x4085e2[_0x434999(0x11d,'\x4b\x28\x4e\x6d')+'\x74\x79'];if(!_0x4a7fd9[_0x434999(0x19b,'\x58\x6a\x6c\x28')](_0x29cdca)){if(_0x5ef07f[_0x434999(0x204,'\x29\x54\x21\x28')](_0x5ef07f[_0x434999(0x20b,'\x6a\x4e\x53\x47')],_0x434999(0x152,'\x6b\x5d\x63\x46'))){const _0x229b74={};return _0x229b74[_0x434999(0x270,'\x25\x4d\x50\x42')]={},_0x229b74[_0x434999(0x25a,'\x6e\x63\x54\x49')+'\x66\x66\x5f\x74\x73']=0x0,_0x229b74;}else _0x4a7fd9[_0x434999(0x292,'\x69\x61\x29\x5b')](_0x29cdca),_0x300530[_0x434999(0x1a9,'\x74\x26\x4b\x47')](_0x29cdca);}}if(_0x5ef07f[_0x434999(0x2b0,'\x29\x54\x21\x28')](_0x300530[_0x434999(0x231,'\x53\x75\x29\x4a')],0x1e*0x65+-0x1f0a+0x1334))_0x300530[_0x434999(0x1c1,'\x53\x75\x29\x4a')](_0x6a3990);return _0x300530;}function _0x1e7c85(_0x58ff87,_0x5de7a9){const _0x235f12=_0x3f18d4,_0x2796d2={'\x52\x49\x65\x48\x78':function(_0x4a7665,_0x655721){return _0x4a7665===_0x655721;},'\x61\x45\x73\x67\x67':function(_0x4c3d43,_0x13cd11){return _0x4c3d43(_0x13cd11);},'\x45\x43\x4e\x47\x52':function(_0x404dce,_0x229f7f){return _0x404dce===_0x229f7f;},'\x71\x63\x78\x62\x42':function(_0x4a93a1,_0x11341d){return _0x4a93a1+_0x11341d;},'\x4d\x56\x6d\x47\x68':function(_0x126211,_0x11eb2c){return _0x126211+_0x11eb2c;},'\x71\x45\x55\x51\x48':function(_0x520386,_0x350a5f){return _0x520386+_0x350a5f;},'\x74\x4d\x45\x46\x4c':_0x235f12(0x2a0,'\x32\x79\x74\x73')+_0x235f12(0x229,'\x26\x61\x66\x7a')+_0x235f12(0x1be,'\x6d\x72\x59\x50')+_0x235f12(0x141,'\x36\x77\x76\x24')+'\x20','\x43\x71\x6e\x44\x4a':'\x20\x28\x73\x69\x67\x6e\x61\x6c'+_0x235f12(0x167,'\x39\x43\x37\x4a')+_0x235f12(0x2a7,'\x37\x23\x6d\x74')+_0x235f12(0x147,'\x74\x26\x4b\x47')+_0x235f12(0x251,'\x53\x75\x29\x4a')+_0x235f12(0x21f,'\x72\x56\x6d\x41')+'\x4e\x41\x42\x4c\x45\x44\x3d\x65'+'\x6e\x66\x6f\x72\x63\x65\x20\x74'+_0x235f12(0x176,'\x40\x63\x63\x31'),'\x49\x53\x51\x4e\x78':function(_0x360b34,_0x4f6a5d){return _0x360b34+_0x4f6a5d;},'\x62\x7a\x5a\x55\x62':function(_0x23c86a,_0x2bee7f){return _0x23c86a+_0x2bee7f;},'\x56\x62\x56\x6a\x42':'\x5b\x43\x6f\x6e\x76\x53\x6e\x69'+_0x235f12(0x193,'\x36\x77\x76\x24')+_0x235f12(0x253,'\x75\x58\x6e\x64'),'\x48\x61\x76\x71\x73':_0x235f12(0x28b,'\x72\x56\x6d\x41')+_0x235f12(0x1c0,'\x67\x6d\x79\x2a')+_0x235f12(0x230,'\x6b\x5d\x63\x46')+'\x3b\x20\x69\x6e\x6a\x65\x63\x74'+_0x235f12(0x23c,'\x64\x2a\x59\x44'),'\x79\x74\x50\x4a\x62':_0x235f12(0x23e,'\x44\x74\x31\x7a')+_0x235f12(0x286,'\x6d\x72\x59\x50')},_0x316170=_0x5de7a9||_0x37bdee(),_0x112396={};_0x112396['\x6d\x6f\x64\x65']=_0x46fd3e,_0x112396[_0x235f12(0x16e,'\x36\x77\x76\x24')+'\x65\x73']=[],_0x112396['\x73\x69\x67\x6e\x61\x6c\x73']=[];if(!_0x43d50f(_0x316170))return _0x112396;const _0x1612f7=_0x38fe41(_0x58ff87),_0x12e8d9=_0x316170[_0x235f12(0x185,'\x34\x5e\x26\x56')]||{},_0x3b8b87=_0x1612f7[_0x235f12(0x173,'\x4b\x28\x4e\x6d')](_0x148dee=>!_0x12e8d9[_0x148dee['\x68\x61\x73\x68']]),_0x378b7b={};_0x378b7b['\x6d\x6f\x64\x65']=_0x46fd3e,_0x378b7b['\x63\x61\x6e\x64\x69\x64\x61\x74'+'\x65\x73']=[],_0x378b7b['\x73\x69\x67\x6e\x61\x6c\x73']=[];if(_0x2796d2[_0x235f12(0x221,'\x63\x32\x47\x29')](_0x3b8b87[_0x235f12(0x149,'\x69\x61\x29\x5b')],0x2252+-0x1cfe+-0x155*0x4))return _0x378b7b;_0x316170[_0x235f12(0x25c,'\x4b\x28\x4e\x6d')+_0x235f12(0x1f1,'\x4b\x28\x4e\x6d')]=Date[_0x235f12(0x23f,'\x46\x5d\x63\x28')]();for(const _0x5d38d8 of _0x3b8b87)_0x12e8d9[_0x5d38d8[_0x235f12(0x254,'\x4c\x76\x71\x29')]]={'\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79':_0x5d38d8[_0x235f12(0x1cd,'\x66\x6c\x6c\x43')+'\x74\x79'],'\x61\x74':new Date()[_0x235f12(0x232,'\x4b\x28\x4e\x6d')+_0x235f12(0x1f4,'\x4c\x76\x71\x29')]()};_0x316170[_0x235f12(0x185,'\x34\x5e\x26\x56')]=_0x12e8d9,_0x2796d2[_0x235f12(0x1b6,'\x33\x6f\x64\x59')](_0xf6f7e8,_0x316170);const _0xd24a5f=_0x2796d2[_0x235f12(0x18a,'\x7a\x29\x44\x38')](_0xd01940,_0x3b8b87);_0x2796d2[_0x235f12(0x15b,'\x5b\x68\x65\x68')](_0x5dbc8b,{'\x61\x74':new Date()['\x74\x6f\x49\x53\x4f\x53\x74\x72'+_0x235f12(0x25b,'\x46\x5d\x63\x28')](),'\x6d\x6f\x64\x65':_0x46fd3e,'\x63\x61\x6e\x64\x69\x64\x61\x74\x65\x73':_0x3b8b87[_0x235f12(0x297,'\x37\x23\x6d\x74')](_0x20b37=>({'\x63\x61\x70\x61\x62\x69\x6c\x69\x74\x79':_0x20b37[_0x235f12(0x21c,'\x6e\x63\x54\x49')+'\x74\x79'],'\x6d\x61\x74\x63\x68\x65\x64':_0x20b37['\x6d\x61\x74\x63\x68\x65\x64'],'\x68\x61\x73\x68':_0x20b37[_0x235f12(0x27f,'\x49\x79\x71\x39')]})),'\x73\x69\x67\x6e\x61\x6c\x73':_0xd24a5f});if(_0x2796d2[_0x235f12(0x150,'\x40\x63\x63\x31')](_0x46fd3e,_0x235f12(0x16f,'\x6a\x74\x59\x41'))){console[_0x235f12(0x1ad,'\x32\x79\x74\x73')](_0x2796d2[_0x235f12(0x1bf,'\x39\x43\x37\x4a')](_0x2796d2[_0x235f12(0x211,'\x5b\x68\x65\x68')](_0x2796d2[_0x235f12(0x294,'\x46\x4e\x41\x38')](_0x2796d2['\x71\x45\x55\x51\x48'](_0x2796d2[_0x235f12(0x22b,'\x25\x21\x56\x54')],_0x3b8b87['\x6c\x65\x6e\x67\x74\x68']),_0x235f12(0x195,'\x39\x69\x37\x34')+_0x235f12(0x12a,'\x58\x6a\x6c\x28')+_0x235f12(0x13f,'\x39\x69\x37\x34')+'\x3a\x20'),_0x3b8b87[_0x235f12(0x1fc,'\x40\x63\x63\x31')](_0x3c6bf9=>_0x3c6bf9['\x63\x61\x70\x61\x62\x69\x6c\x69'+'\x74\x79'])[_0x235f12(0x186,'\x75\x58\x6e\x64')]('\x2c\x20')),_0x2796d2[_0x235f12(0x1a0,'\x4c\x76\x71\x29')]));const _0x17d43e={};return _0x17d43e[_0x235f12(0x295,'\x44\x74\x31\x7a')]=_0x46fd3e,_0x17d43e[_0x235f12(0x17d,'\x47\x58\x40\x66')+'\x65\x73']=_0x3b8b87,_0x17d43e[_0x235f12(0x143,'\x44\x74\x31\x7a')]=[],_0x17d43e;}console[_0x235f12(0x1eb,'\x6e\x63\x54\x49')](_0x2796d2['\x71\x63\x78\x62\x42'](_0x2796d2[_0x235f12(0x18c,'\x69\x61\x29\x5b')](_0x2796d2['\x62\x7a\x5a\x55\x62'](_0x2796d2[_0x235f12(0x138,'\x6a\x74\x59\x41')](_0x2796d2[_0x235f12(0x1cf,'\x72\x26\x6b\x74')],_0x3b8b87[_0x235f12(0x17c,'\x6b\x5d\x63\x46')])+_0x2796d2[_0x235f12(0x18b,'\x72\x26\x6b\x74')],_0xd24a5f[_0x235f12(0x231,'\x53\x75\x29\x4a')]),_0x2796d2[_0x235f12(0x224,'\x75\x58\x6e\x64')]),_0xd24a5f[_0x235f12(0x1d5,'\x69\x61\x29\x5b')]('\x2c\x20')));const _0x32b878={};return _0x32b878[_0x235f12(0x264,'\x32\x79\x74\x73')]=_0x46fd3e,_0x32b878[_0x235f12(0x1e0,'\x6f\x77\x43\x4b')+'\x65\x73']=_0x3b8b87,_0x32b878['\x73\x69\x67\x6e\x61\x6c\x73']=_0xd24a5f,_0x32b878;}const _0x1c82ae={};_0x1c82ae['\x67\x65\x74\x4d\x6f\x64\x65']=_0x143bb7,_0x1c82ae[_0x3f18d4(0x291,'\x28\x6c\x35\x42')+_0x3f18d4(0x133,'\x46\x5d\x63\x28')]=_0x43d50f,_0x1c82ae[_0x3f18d4(0x183,'\x46\x5d\x63\x28')+'\x75\x73']=_0x38fe41,_0x1c82ae[_0x3f18d4(0x190,'\x29\x54\x21\x28')+_0x3f18d4(0x273,'\x6d\x72\x59\x50')]=_0xd01940,_0x1c82ae[_0x3f18d4(0x2af,'\x53\x75\x29\x4a')]=_0x1e7c85,_0x1c82ae[_0x3f18d4(0x252,'\x58\x6a\x6c\x28')+'\x65']=_0x37bdee,_0x1c82ae[_0x3f18d4(0x129,'\x67\x6d\x79\x2a')+'\x74\x65']=_0xf6f7e8,_0x1c82ae[_0x3f18d4(0x24a,'\x6a\x74\x59\x41')+_0x3f18d4(0x219,'\x33\x73\x56\x57')]=_0x6a3990,module[_0x3f18d4(0x29b,'\x58\x6a\x6c\x28')]=_0x1c82ae;
1
+ 'use strict';
2
+
3
+ // Conversation Capability Sniffer
4
+ // --------------------------------
5
+ // evolver autonomously surfaces evolution opportunities from CODE (errsig /
6
+ // recurring_error), from MISSING features (capability_gap), and at idle time
7
+ // from external knowledge (explore.js: TODO scan, arxiv). The one blind spot:
8
+ // a human-verified, deterministic capability demonstrated *in the conversation*
9
+ // (e.g. "I just published a Feishu doc via lark-cli and validated it") never
10
+ // surfaces, because signal extraction maps free text onto the closed
11
+ // OPPORTUNITY_SIGNALS vocabulary and there is no extractor that reads the
12
+ // transcript for "the user just proved a reusable capability worth keeping".
13
+ //
14
+ // This module is that extractor. It mirrors explore.js: env gating + cooldown,
15
+ // a scan that produces results, dedup state on disk, and convertToSignals().
16
+ // Like the rest of evolver it does NOT call an LLM directly (evolver builds
17
+ // prompts and lets the bridged executor — the Hand — do the reasoning). The
18
+ // scan here is a lightweight RULE-BASED pre-filter; when it fires it injects a
19
+ // candidate signal so the selector/distiller can pick the work up on the
20
+ // executor side.
21
+ //
22
+ // Default posture is SHADOW (observe-only): it logs what it *would* surface
23
+ // without injecting, so the behaviour can be validated before it influences
24
+ // real cycles. Set EVOLVER_CONV_SNIFF_ENABLED=enforce to inject for real.
25
+
26
+ const fs = require('fs');
27
+ const path = require('path');
28
+ const crypto = require('crypto');
29
+
30
+ const { getEvolutionDir } = require('./paths');
31
+
32
+ // off | shadow | enforce. Default 'shadow' so a fresh install observes before
33
+ // it acts. 'off' disables entirely; 'enforce' injects candidate signals.
34
+ const MODE = (() => {
35
+ const raw = String(process.env.EVOLVER_CONV_SNIFF_ENABLED || 'shadow').toLowerCase().trim();
36
+ if (raw === 'off' || raw === 'false' || raw === '0') return 'off';
37
+ if (raw === 'enforce' || raw === 'on' || raw === 'true' || raw === '1') return 'enforce';
38
+ return 'shadow';
39
+ })();
40
+
41
+ const COOLDOWN_MS = parseInt(process.env.EVOLVER_CONV_SNIFF_COOLDOWN_MS || '1800000', 10) || 1800000;
42
+ const MAX_CANDIDATES = 5;
43
+ const SNIPPET_MAX = 240;
44
+
45
+ // Signals injected (enforce mode). The umbrella signal lets a dedicated gene
46
+ // (or the distiller) match "there is a conversation-surfaced capability".
47
+ const UMBRELLA_SIGNAL = 'conv_capability_candidate';
48
+
49
+ // Evidence that a reusable capability was just *successfully exercised* in the
50
+ // transcript. We require (a) a success/completion marker AND (b) a reusable
51
+ // action verb, so idle chatter or failed attempts do not trigger.
52
+ const SUCCESS_MARKERS = [
53
+ 'success', 'succeeded', 'verified', 'validated', 'works', 'working',
54
+ 'published', 'created', 'completed', 'passed', 'done',
55
+ '成功', '已发布', '已验证', '验证通过', '搞定', '跑通', '通过了',
56
+ ];
57
+
58
+ // Reusable, deterministic actions worth keeping as a capability. Each entry is
59
+ // [regex, capability-slug]. Kept deliberately conservative.
60
+ const CAPABILITY_PATTERNS = [
61
+ [/\blark-cli\b|飞书文档|feishu doc|lark doc/i, 'publish-feishu-doc'],
62
+ [/\bgh (pr|issue|release)\b|github api|open(ed)? a pr\b/i, 'github-automation'],
63
+ [/\bcurl\b.+\b(api|endpoint)\b|\bfetch\(.+\bapi\b/i, 'api-call'],
64
+ [/\bdocker (build|run|compose)\b/i, 'docker-workflow'],
65
+ [/\bkubectl\b|helm (install|upgrade)\b/i, 'k8s-operation'],
66
+ [/\bprisma (migrate|db push)\b|\bpsql\b|pg_dump/i, 'db-operation'],
67
+ [/\bnpm publish\b|\bnpx skills\b/i, 'package-publish'],
68
+ ];
69
+
70
+ function _statePath() { return path.join(getEvolutionDir(), 'conv_sniff_state.json'); }
71
+ function _logPath() { return path.join(getEvolutionDir(), 'conv_sniff_log.jsonl'); }
72
+
73
+ function readState() {
74
+ try { return JSON.parse(fs.readFileSync(_statePath(), 'utf8')); }
75
+ catch (_) { return { seen: {}, last_sniff_ts: 0 }; }
76
+ }
77
+
78
+ function writeState(state) {
79
+ try {
80
+ const dir = getEvolutionDir();
81
+ if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
82
+ const tmp = _statePath() + '.tmp';
83
+ fs.writeFileSync(tmp, JSON.stringify(state, null, 2) + '\n', 'utf8');
84
+ fs.renameSync(tmp, _statePath());
85
+ } catch (_) {}
86
+ }
87
+
88
+ function _appendLog(obj) {
89
+ try {
90
+ const dir = getEvolutionDir();
91
+ if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
92
+ fs.appendFileSync(_logPath(), JSON.stringify(obj) + '\n', 'utf8');
93
+ } catch (_) {}
94
+ }
95
+
96
+ function _shortHash(s) {
97
+ return crypto.createHash('sha256').update(String(s || '')).digest('hex').slice(0, 16);
98
+ }
99
+
100
+ function getMode() { return MODE; }
101
+
102
+ function shouldSniff(state) {
103
+ if (MODE === 'off') return false;
104
+ const st = state || readState();
105
+ const last = st.last_sniff_ts || 0;
106
+ // Date.now is fine here — this runs in the live process, not the workflow VM.
107
+ if (Date.now() - last < COOLDOWN_MS) return false;
108
+ return true;
109
+ }
110
+
111
+ // Proximity window (chars): a success marker must appear within this distance
112
+ // of the capability match for the pair to count. A global "success anywhere +
113
+ // capability anywhere" co-occurrence is NOT enough — that lets an unrelated
114
+ // "tests passed" pair with a *failed* lark-cli/kubectl mention and surface a
115
+ // false candidate (Bugbot #175, High). Require LOCAL co-occurrence instead.
116
+ const PROXIMITY_WINDOW = 200;
117
+
118
+ // Negators that flip a success marker ("not verified", "未发布", "failed to
119
+ // publish"). If one appears within NEGATION_LOOKBACK chars before the marker,
120
+ // the marker does not count as success (Bugbot #175 round 2, Medium).
121
+ const NEGATORS = ['not ', "n't ", 'no ', 'never ', 'fail', 'unable', "wasn't", "isn't", "didn't",
122
+ '没', '未', '不', '失败', '无法'];
123
+ const NEGATION_LOOKBACK = 20;
124
+
125
+ function _markerIsNegated(lowerText, markerStart) {
126
+ const from = Math.max(0, markerStart - NEGATION_LOOKBACK);
127
+ const before = lowerText.slice(from, markerStart);
128
+ return NEGATORS.some((n) => before.includes(n));
129
+ }
130
+
131
+ function _hasSuccessNear(text, lowerText, matchIndex, matchLen) {
132
+ const from = Math.max(0, matchIndex - PROXIMITY_WINDOW);
133
+ const to = Math.min(lowerText.length, matchIndex + matchLen + PROXIMITY_WINDOW);
134
+ for (const m of SUCCESS_MARKERS) {
135
+ const needle = m.toLowerCase();
136
+ // walk every occurrence of this marker inside the window; accept only a
137
+ // non-negated one.
138
+ let rel = windowIndexOf(lowerText, needle, from, to);
139
+ while (rel !== -1) {
140
+ if (!_markerIsNegated(lowerText, rel)) return true;
141
+ rel = windowIndexOf(lowerText, needle, rel + 1, to);
142
+ }
143
+ }
144
+ return false;
145
+ }
146
+
147
+ // indexOf for `needle` constrained to [from, to); returns absolute index in
148
+ // lowerText or -1. Keeps negation checks anchored to the full text so the
149
+ // lookback can see chars just before the window edge.
150
+ function windowIndexOf(lowerText, needle, from, to) {
151
+ const idx = lowerText.indexOf(needle, from);
152
+ if (idx === -1 || idx >= to) return -1;
153
+ return idx;
154
+ }
155
+
156
+ // Scan ONE segment for candidates (success marker within PROXIMITY_WINDOW of a
157
+ // capability match, non-negated). Returns [{capability, matched, snippet, hash}].
158
+ function _scanSegment(text, sink, seenSlugs) {
159
+ if (!text || !text.trim()) return;
160
+ const lower = text.toLowerCase();
161
+ for (const [re, slug] of CAPABILITY_PATTERNS) {
162
+ if (seenSlugs.has(slug)) continue;
163
+ const gre = new RegExp(re.source, re.flags.includes('g') ? re.flags : re.flags + 'g');
164
+ let m;
165
+ let accepted = null;
166
+ while ((m = gre.exec(text)) !== null) {
167
+ if (m[0].length === 0) { gre.lastIndex++; continue; } // guard zero-width
168
+ if (_hasSuccessNear(text, lower, m.index, m[0].length)) { accepted = m; break; }
169
+ }
170
+ if (!accepted) continue;
171
+ seenSlugs.add(slug);
172
+ const idx = Math.max(0, accepted.index - 80);
173
+ const snippet = text.slice(idx, idx + SNIPPET_MAX).replace(/\s+/g, ' ').trim();
174
+ sink.push({
175
+ capability: slug,
176
+ matched: accepted[0].slice(0, 60),
177
+ snippet,
178
+ hash: _shortHash(slug + '|' + snippet),
179
+ });
180
+ }
181
+ }
182
+
183
+ // Pure scan. Accepts a single string OR an array of segments (e.g. master log
184
+ // and today log). Each segment is scanned INDEPENDENTLY so a success marker in
185
+ // one segment can never falsely sit "near" a capability match in another
186
+ // (Bugbot #175 round 2: joined logs caused false cross-boundary proximity).
187
+ // A candidate requires a non-negated success marker within PROXIMITY_WINDOW of
188
+ // the capability match, scanning all occurrences so a later successful use wins
189
+ // over an earlier failed mention.
190
+ function scanCorpus(corpus) {
191
+ const segments = Array.isArray(corpus) ? corpus : [corpus];
192
+ const candidates = [];
193
+ const seenSlugs = new Set();
194
+ for (const seg of segments) {
195
+ if (candidates.length >= MAX_CANDIDATES) break;
196
+ _scanSegment(String(seg || ''), candidates, seenSlugs);
197
+ }
198
+ return candidates.slice(0, MAX_CANDIDATES);
199
+ }
200
+
201
+ function convertToSignals(candidates) {
202
+ const signals = [];
203
+ const seen = new Set();
204
+ for (const c of candidates) {
205
+ const sig = 'conv_capability:' + c.capability;
206
+ if (!seen.has(sig)) { seen.add(sig); signals.push(sig); }
207
+ }
208
+ if (signals.length > 0) signals.unshift(UMBRELLA_SIGNAL);
209
+ return signals;
210
+ }
211
+
212
+ // Main entry, mirrors explore.tryExplore(): gate -> scan -> dedup -> (shadow|enforce).
213
+ // Returns { mode, candidates, signals } — signals is [] in shadow/off so the
214
+ // caller can inject unconditionally without leaking shadow candidates.
215
+ function trySniff(corpus, state) {
216
+ const st = state || readState();
217
+ if (!shouldSniff(st)) return { mode: MODE, candidates: [], signals: [] };
218
+
219
+ const all = scanCorpus(corpus);
220
+
221
+ // dedup against already-processed candidate hashes
222
+ const seenMap = st.seen || {};
223
+ const fresh = all.filter((c) => !seenMap[c.hash]);
224
+
225
+ // Only start the cooldown when we actually surfaced something new. An empty
226
+ // sniff (no candidates, or all already-seen) must NOT arm the cooldown —
227
+ // otherwise a barren cycle blocks detection until the window elapses even
228
+ // when the transcript gains real evidence moments later (Bugbot #175, Med).
229
+ if (fresh.length === 0) return { mode: MODE, candidates: [], signals: [] };
230
+
231
+ st.last_sniff_ts = Date.now();
232
+ for (const c of fresh) seenMap[c.hash] = { capability: c.capability, at: new Date().toISOString() };
233
+ st.seen = seenMap;
234
+ writeState(st);
235
+
236
+ const signals = convertToSignals(fresh);
237
+
238
+ // Always log what was surfaced (both shadow and enforce) for auditing.
239
+ _appendLog({
240
+ at: new Date().toISOString(),
241
+ mode: MODE,
242
+ candidates: fresh.map((c) => ({ capability: c.capability, matched: c.matched, hash: c.hash })),
243
+ signals,
244
+ });
245
+
246
+ if (MODE === 'shadow') {
247
+ console.log('[ConvSniff:shadow] Would surface ' + fresh.length + ' capability candidate(s): ' +
248
+ fresh.map((c) => c.capability).join(', ') + ' (signals NOT injected; set EVOLVER_CONV_SNIFF_ENABLED=enforce to act).');
249
+ return { mode: MODE, candidates: fresh, signals: [] };
250
+ }
251
+
252
+ console.log('[ConvSniff] Surfaced ' + fresh.length + ' capability candidate(s); injecting ' +
253
+ signals.length + ' signal(s): ' + signals.join(', '));
254
+ return { mode: MODE, candidates: fresh, signals };
255
+ }
256
+
257
+ module.exports = {
258
+ getMode,
259
+ shouldSniff,
260
+ scanCorpus,
261
+ convertToSignals,
262
+ trySniff,
263
+ readState,
264
+ writeState,
265
+ UMBRELLA_SIGNAL,
266
+ };
package/src/gep/crypto.js CHANGED
@@ -1 +1,93 @@
1
- const _0x54376e=_0x2710;(function(_0x414806,_0x24df02){const _0x15f5fa=_0x2710,_0x21a30c=_0x414806();while(!![]){try{const _0x50c816=parseInt(_0x15f5fa(0x1b4,'\x41\x48\x30\x39'))/(-0x876+0x23*-0x27+0xdcc)*(-parseInt(_0x15f5fa(0x1c4,'\x53\x43\x70\x68'))/(0x3a9*0x1+-0x1*-0x1f10+-0x22b7))+parseInt(_0x15f5fa(0x195,'\x77\x71\x47\x5a'))/(-0x1b02+-0x1*0x1fef+0x3af4)*(-parseInt(_0x15f5fa(0x1d0,'\x59\x23\x68\x32'))/(-0x4a*0x4f+-0x1ea1+0x1*0x357b))+-parseInt(_0x15f5fa(0x1c7,'\x4e\x52\x41\x31'))/(0x249a+0x64c*0x1+0xe4b*-0x3)+parseInt(_0x15f5fa(0x18e,'\x38\x48\x55\x5d'))/(-0x24a0+0x146*-0xc+0x33ee)+-parseInt(_0x15f5fa(0x176,'\x70\x43\x52\x2a'))/(0x413*0x1+-0x1*-0x1715+-0x1b21)+-parseInt(_0x15f5fa(0x170,'\x53\x76\x46\x65'))/(0x2218+-0x47*0x58+-0x1*0x9a8)*(parseInt(_0x15f5fa(0x15b,'\x45\x66\x29\x26'))/(0x83d+0x1549+-0x1d7d))+parseInt(_0x15f5fa(0x1dc,'\x48\x38\x31\x65'))/(-0x2294+0x24f+0x204f);if(_0x50c816===_0x24df02)break;else _0x21a30c['push'](_0x21a30c['shift']());}catch(_0x5b471c){_0x21a30c['push'](_0x21a30c['shift']());}}}(_0x1763,-0x3fa49+-0x6032e+0x115f3d));const _0x9483ea=(function(){const _0x1f8e29=_0x2710,_0x58fdc0={};_0x58fdc0[_0x1f8e29(0x1cc,'\x48\x38\x31\x65')]=function(_0xbc4d28,_0x3980b9){return _0xbc4d28!==_0x3980b9;},_0x58fdc0[_0x1f8e29(0x17c,'\x51\x45\x7a\x69')]=_0x1f8e29(0x1ed,'\x77\x71\x47\x5a')+_0x1f8e29(0x1b3,'\x45\x66\x29\x26')+_0x1f8e29(0x1e8,'\x51\x45\x7a\x69')+_0x1f8e29(0x1bf,'\x4f\x67\x4e\x74')+_0x1f8e29(0x193,'\x6a\x33\x34\x67'),_0x58fdc0[_0x1f8e29(0x1a8,'\x76\x50\x71\x71')]=_0x1f8e29(0x16d,'\x29\x55\x39\x55'),_0x58fdc0['\x56\x7a\x4c\x43\x63']=function(_0x356d07,_0x186bdb){return _0x356d07===_0x186bdb;},_0x58fdc0[_0x1f8e29(0x155,'\x52\x73\x54\x47')]=_0x1f8e29(0x1c2,'\x77\x71\x47\x5a'),_0x58fdc0[_0x1f8e29(0x17e,'\x76\x50\x71\x71')]='\x68\x4b\x59\x45\x47';const _0x5792d9=_0x58fdc0;let _0x21a7a6=!![];return function(_0x3e6253,_0x590591){const _0x209333=_0x1f8e29,_0x57c1ea={'\x44\x4a\x76\x42\x4a':function(_0x1cb387,_0xd995a5){const _0x530de4=_0x2710;return _0x5792d9[_0x530de4(0x1cb,'\x63\x74\x52\x61')](_0x1cb387,_0xd995a5);},'\x53\x70\x51\x53\x42':_0x5792d9[_0x209333(0x173,'\x41\x48\x30\x39')],'\x42\x79\x6d\x5a\x63':_0x5792d9[_0x209333(0x181,'\x29\x55\x39\x55')]};if(_0x5792d9[_0x209333(0x1d1,'\x65\x23\x6a\x48')](_0x5792d9[_0x209333(0x15c,'\x48\x38\x31\x65')],_0x5792d9[_0x209333(0x1aa,'\x5a\x63\x6a\x7a')])){if(!_0x5c9f17||_0x57c1ea['\x44\x4a\x76\x42\x4a'](_0x4e0790[_0x209333(0x1e3,'\x70\x43\x52\x2a')],_0x2d3434))throw new _0x56bb3d(_0x57c1ea[_0x209333(0x1af,'\x6e\x78\x62\x75')]);const _0x4703b8=_0x442fc4[_0x209333(0x1e0,'\x48\x43\x26\x6c')+_0x209333(0x1ad,'\x45\x58\x46\x34')](_0x1df2e9),_0xb5f8fa={};_0xb5f8fa[_0x209333(0x15f,'\x77\x71\x47\x5a')+'\x65\x6e\x67\x74\x68']=_0x25608d;const _0x42c905=_0x477beb[_0x209333(0x18b,'\x2a\x35\x61\x2a')+_0x209333(0x183,'\x66\x54\x40\x77')](_0x3e5b6c,_0x103f77,_0x4703b8,_0xb5f8fa),_0x13d2ce=_0x2e1b3d[_0x209333(0x1d6,'\x65\x23\x6a\x48')](_0x6ea5a8)?_0x3ab4b1:_0x19ad4f[_0x209333(0x167,'\x58\x70\x23\x79')](_0x123893,_0x57c1ea[_0x209333(0x1bd,'\x28\x32\x34\x47')]),_0x209a43=_0x58fbbf[_0x209333(0x153,'\x41\x48\x30\x39')]([_0x42c905[_0x209333(0x1c3,'\x53\x7a\x61\x51')](_0x13d2ce),_0x42c905[_0x209333(0x19a,'\x41\x48\x30\x39')]()]),_0x44c7b3=_0x42c905['\x67\x65\x74\x41\x75\x74\x68\x54'+'\x61\x67'](),_0x43b623={};return _0x43b623['\x63\x69\x70\x68\x65\x72\x74\x65'+'\x78\x74']=_0x209a43,_0x43b623['\x69\x76']=_0x4703b8,_0x43b623[_0x209333(0x156,'\x61\x6b\x4e\x24')]=_0x44c7b3,_0x43b623;}else{const _0x2f76ed=_0x21a7a6?function(){const _0x5f01c1=_0x209333;if(_0x590591){const _0x5e77a3=_0x590591[_0x5f01c1(0x1a7,'\x66\x54\x40\x77')](_0x3e6253,arguments);return _0x590591=null,_0x5e77a3;}}:function(){};return _0x21a7a6=![],_0x2f76ed;}};}()),_0x1a3c88=_0x9483ea(this,function(){const _0x2a9ca8=_0x2710,_0x2cd497={};_0x2cd497[_0x2a9ca8(0x1e5,'\x58\x72\x63\x30')]=_0x2a9ca8(0x1b1,'\x53\x76\x46\x65')+_0x2a9ca8(0x1bb,'\x4f\x67\x4e\x74');const _0x5d3727=_0x2cd497;return _0x1a3c88['\x74\x6f\x53\x74\x72\x69\x6e\x67']()['\x73\x65\x61\x72\x63\x68'](_0x5d3727[_0x2a9ca8(0x197,'\x2a\x4d\x75\x31')])[_0x2a9ca8(0x191,'\x6e\x73\x34\x24')]()[_0x2a9ca8(0x1d3,'\x6a\x33\x34\x67')+'\x74\x6f\x72'](_0x1a3c88)[_0x2a9ca8(0x166,'\x48\x43\x26\x6c')](_0x5d3727[_0x2a9ca8(0x19b,'\x68\x41\x44\x36')]);});_0x1a3c88();const _0x4c718a=require(_0x54376e(0x1ca,'\x53\x7a\x61\x51')),_0x1a8f5f='\x61\x65\x73\x2d\x32\x35\x36\x2d'+_0x54376e(0x1db,'\x68\x41\x44\x36'),_0x2aaa02=-0x19de+-0x30+0x1a1a,_0x102833=-0x1cdc+-0x1*-0x93+-0x3b*-0x7b,_0x5b1ede=0x5*-0x320+0x1e41+-0xe81;function _0x2b899d(){const _0x112d43=_0x54376e;return _0x4c718a[_0x112d43(0x1da,'\x77\x71\x47\x5a')+_0x112d43(0x1a9,'\x48\x43\x26\x6c')](_0x5b1ede);}function _0x3d1738(_0x4b67a7,_0x2ea59c){const _0x266146=_0x54376e,_0x47b959={};_0x47b959[_0x266146(0x1b9,'\x6e\x73\x34\x24')]=function(_0x231a11,_0x5c4bc4){return _0x231a11!==_0x5c4bc4;},_0x47b959['\x55\x56\x56\x51\x50']=function(_0x32f64b,_0x5b4d88){return _0x32f64b===_0x5b4d88;},_0x47b959[_0x266146(0x1cd,'\x31\x6b\x29\x5d')]=_0x266146(0x1d8,'\x53\x43\x70\x68'),_0x47b959[_0x266146(0x16a,'\x59\x23\x68\x32')]=_0x266146(0x1d9,'\x45\x66\x29\x26')+_0x266146(0x152,'\x6f\x58\x74\x38')+_0x266146(0x190,'\x59\x23\x68\x32')+'\x74\x6c\x79\x20\x33\x32\x20\x62'+'\x79\x74\x65\x73',_0x47b959[_0x266146(0x164,'\x68\x41\x44\x36')]=_0x266146(0x1bc,'\x6e\x78\x62\x75');const _0x2ea2bd=_0x47b959;if(!_0x2ea59c||_0x2ea2bd[_0x266146(0x1ea,'\x48\x43\x26\x6c')](_0x2ea59c['\x6c\x65\x6e\x67\x74\x68'],_0x5b1ede)){if(_0x2ea2bd[_0x266146(0x1b2,'\x53\x73\x79\x43')](_0x2ea2bd[_0x266146(0x160,'\x6e\x73\x34\x24')],_0x2ea2bd[_0x266146(0x1dd,'\x4d\x79\x26\x26')]))throw new Error(_0x2ea2bd[_0x266146(0x1cf,'\x5e\x76\x62\x31')]);else throw new _0x4fc3c1(_0x266146(0x1e4,'\x37\x28\x36\x4f')+_0x266146(0x1a5,'\x48\x43\x26\x6c')+_0x266146(0x1df,'\x6e\x73\x34\x24')+_0x266146(0x15d,'\x21\x35\x44\x64')+_0x266146(0x18d,'\x76\x50\x71\x71'));}const _0x28e8a3=_0x4c718a[_0x266146(0x189,'\x21\x35\x44\x64')+_0x266146(0x158,'\x45\x66\x29\x26')](_0x2aaa02),_0x5194a9={};_0x5194a9[_0x266146(0x1a2,'\x2a\x4d\x75\x31')+_0x266146(0x1ab,'\x29\x55\x39\x55')]=_0x102833;const _0x2294fe=_0x4c718a[_0x266146(0x17f,'\x37\x28\x36\x4f')+'\x70\x68\x65\x72\x69\x76'](_0x1a8f5f,_0x2ea59c,_0x28e8a3,_0x5194a9),_0x26d731=Buffer[_0x266146(0x154,'\x2a\x4d\x75\x31')](_0x4b67a7)?_0x4b67a7:Buffer[_0x266146(0x1c8,'\x31\x6b\x29\x5d')](_0x4b67a7,_0x2ea2bd[_0x266146(0x199,'\x70\x43\x52\x2a')]),_0x9e2c09=Buffer[_0x266146(0x174,'\x35\x6d\x24\x5d')]([_0x2294fe[_0x266146(0x168,'\x42\x41\x79\x75')](_0x26d731),_0x2294fe[_0x266146(0x1e1,'\x52\x73\x54\x47')]()]),_0x27c78d=_0x2294fe[_0x266146(0x1b6,'\x6e\x78\x62\x75')+'\x61\x67'](),_0x16e20b={};return _0x16e20b[_0x266146(0x186,'\x53\x7a\x61\x51')+'\x78\x74']=_0x9e2c09,_0x16e20b['\x69\x76']=_0x28e8a3,_0x16e20b[_0x266146(0x1d5,'\x49\x4c\x37\x5d')]=_0x27c78d,_0x16e20b;}function _0x1763(){const _0x36ba0a=['\x69\x43\x6b\x79\x42\x57\x52\x64\x48\x53\x6b\x35\x57\x51\x5a\x64\x52\x61','\x45\x71\x4f\x72\x57\x50\x4b\x32','\x57\x36\x33\x64\x48\x31\x79\x6e\x42\x57\x72\x53','\x44\x53\x6b\x47\x7a\x62\x33\x64\x4b\x38\x6b\x2b\x57\x35\x47','\x57\x52\x46\x63\x4b\x6d\x6b\x46\x69\x53\x6b\x4b\x78\x38\x6f\x6d\x57\x52\x71','\x66\x72\x2f\x63\x54\x71\x33\x63\x55\x61','\x57\x34\x2f\x64\x4f\x6d\x6b\x48\x79\x4a\x43','\x57\x50\x74\x63\x4f\x38\x6f\x39\x57\x4f\x42\x64\x50\x75\x43','\x64\x4e\x47\x69\x57\x50\x71\x4e\x57\x52\x54\x35\x57\x50\x4f\x2b\x68\x53\x6b\x4e','\x66\x43\x6b\x58\x57\x36\x56\x63\x51\x53\x6f\x73\x57\x34\x53\x6d\x57\x4f\x38','\x57\x50\x78\x63\x56\x6d\x6b\x70\x57\x35\x5a\x64\x52\x49\x4a\x63\x49\x53\x6f\x66','\x6e\x53\x6b\x47\x69\x77\x4b\x58\x6c\x43\x6b\x52\x65\x71','\x57\x51\x38\x67\x57\x51\x65\x30\x57\x37\x65\x66','\x57\x34\x39\x57\x66\x43\x6f\x51\x57\x4f\x75\x52\x41\x78\x79','\x57\x52\x4a\x63\x4b\x53\x6b\x43\x57\x35\x4e\x64\x4a\x47','\x57\x50\x42\x64\x4d\x38\x6f\x52\x57\x52\x38\x37\x57\x36\x37\x64\x49\x71','\x57\x37\x53\x34\x57\x4f\x64\x64\x47\x66\x2f\x63\x4e\x72\x5a\x63\x4f\x57','\x57\x50\x76\x6b\x6f\x57','\x57\x37\x78\x64\x48\x4b\x43\x77','\x57\x35\x37\x64\x51\x38\x6b\x78\x41\x64\x61','\x57\x35\x69\x45\x45\x66\x70\x64\x55\x6d\x6b\x6c\x65\x38\x6f\x4a\x6a\x43\x6f\x34\x6f\x38\x6b\x68','\x57\x50\x33\x63\x4d\x31\x34\x61\x57\x36\x30','\x57\x37\x48\x72\x57\x50\x62\x34\x57\x52\x65\x53\x6c\x53\x6f\x41','\x75\x72\x71\x59\x57\x50\x34\x62\x57\x36\x30\x6d\x68\x47','\x66\x38\x6b\x32\x57\x36\x42\x63\x53\x53\x6f\x59\x57\x34\x76\x72\x57\x36\x6d','\x6d\x38\x6f\x37\x57\x51\x74\x64\x4c\x6d\x6f\x4d','\x62\x53\x6f\x7a\x57\x51\x4a\x64\x4c\x6d\x6f\x75','\x6b\x58\x37\x64\x54\x71','\x57\x4f\x4a\x63\x48\x78\x79\x37\x57\x37\x33\x63\x4e\x59\x37\x63\x50\x47','\x57\x35\x39\x51\x63\x59\x74\x63\x53\x57','\x57\x52\x4b\x70\x57\x51\x4b\x59\x57\x36\x6a\x72\x57\x51\x78\x64\x4e\x71','\x57\x35\x74\x64\x47\x6d\x6b\x72\x75\x71\x44\x6e','\x76\x53\x6b\x35\x57\x34\x4f\x6f','\x57\x37\x4b\x54\x57\x52\x44\x77\x57\x37\x6c\x63\x47\x71','\x43\x76\x56\x64\x48\x65\x33\x64\x4e\x43\x6f\x49\x66\x53\x6f\x66\x46\x43\x6f\x44\x44\x38\x6b\x61','\x6f\x61\x70\x63\x48\x61\x4a\x63\x51\x57','\x57\x51\x33\x63\x4a\x6d\x6b\x30\x57\x36\x6c\x64\x4e\x47\x70\x63\x56\x38\x6f\x35','\x68\x61\x34\x43\x42\x62\x71\x51\x57\x36\x62\x4d','\x66\x71\x2f\x64\x51\x47\x53','\x6b\x6d\x6f\x43\x57\x51\x33\x64\x4c\x38\x6f\x59','\x65\x6d\x6f\x39\x57\x52\x2f\x64\x4c\x53\x6b\x78\x57\x37\x47\x67','\x57\x52\x31\x54\x70\x6d\x6f\x35\x63\x6d\x6f\x69\x6c\x76\x6d','\x68\x66\x74\x64\x56\x53\x6f\x4d\x57\x34\x71','\x57\x52\x64\x63\x4f\x63\x6c\x64\x56\x6d\x6f\x33\x77\x38\x6b\x6d\x65\x32\x68\x64\x53\x38\x6f\x30\x57\x36\x58\x67','\x57\x4f\x6d\x41\x57\x50\x38\x36\x57\x34\x47','\x57\x50\x56\x63\x51\x43\x6f\x39\x57\x4f\x6c\x64\x53\x66\x53','\x57\x4f\x37\x63\x56\x43\x6b\x70\x57\x37\x6c\x64\x56\x57','\x57\x52\x38\x64\x43\x38\x6b\x62\x57\x4f\x56\x64\x4d\x53\x6b\x58\x69\x48\x70\x63\x54\x43\x6b\x79\x42\x62\x47','\x57\x34\x35\x6b\x6f\x53\x6f\x51\x57\x50\x4f','\x69\x57\x6a\x4b\x57\x50\x54\x49\x6f\x78\x42\x64\x56\x47','\x57\x37\x4b\x2f\x57\x50\x68\x64\x49\x78\x2f\x63\x4d\x74\x2f\x63\x49\x47','\x41\x59\x46\x63\x55\x38\x6f\x54\x57\x52\x4f','\x78\x47\x6d\x4c\x57\x4f\x4b\x62\x57\x36\x4f','\x57\x35\x4a\x63\x47\x43\x6b\x51\x42\x38\x6b\x7a','\x63\x48\x72\x53\x57\x4f\x7a\x76','\x74\x38\x6b\x45\x76\x38\x6b\x6a\x57\x34\x4b','\x69\x43\x6b\x79\x43\x58\x56\x64\x48\x53\x6b\x5a\x57\x35\x78\x63\x50\x71','\x57\x50\x57\x69\x57\x4f\x61\x4e\x57\x36\x4b','\x65\x72\x42\x64\x48\x76\x44\x67','\x57\x36\x4a\x64\x4c\x30\x65\x78\x71\x48\x76\x2f','\x71\x38\x6b\x4a\x57\x50\x68\x64\x4a\x67\x44\x6d','\x57\x34\x57\x2b\x41\x6d\x6b\x53\x61\x47','\x42\x53\x6f\x62\x57\x50\x64\x64\x56\x58\x65','\x78\x63\x66\x6b\x57\x34\x58\x57\x57\x51\x50\x39\x57\x52\x57','\x71\x38\x6b\x64\x61\x38\x6f\x51\x6a\x43\x6f\x49\x62\x59\x64\x63\x56\x4a\x68\x64\x51\x43\x6f\x4a\x45\x4d\x57','\x42\x57\x4e\x64\x4a\x38\x6f\x30\x66\x53\x6f\x43','\x57\x37\x35\x43\x57\x4f\x43\x38\x57\x36\x31\x5a\x74\x6d\x6f\x62','\x69\x57\x5a\x63\x53\x38\x6b\x34\x57\x51\x79\x53\x57\x52\x47\x69','\x68\x76\x56\x64\x4b\x38\x6b\x4d\x57\x35\x42\x63\x48\x49\x71\x32','\x57\x36\x39\x45\x6c\x43\x6f\x74\x57\x35\x34','\x7a\x38\x6b\x70\x7a\x6d\x6b\x5a','\x7a\x31\x43\x33\x57\x34\x79\x2b\x42\x4d\x6c\x64\x48\x6d\x6b\x69\x74\x38\x6b\x56\x57\x37\x64\x63\x4a\x61','\x57\x51\x4c\x2f\x57\x35\x42\x64\x51\x4b\x37\x63\x56\x59\x5a\x63\x4c\x4a\x69','\x79\x47\x4a\x63\x4b\x76\x4a\x63\x4a\x38\x6b\x4f\x61\x38\x6f\x53','\x62\x43\x6f\x65\x57\x50\x78\x64\x4c\x43\x6f\x73\x61\x38\x6f\x31\x57\x4f\x69','\x6d\x53\x6b\x6c\x44\x72\x65','\x57\x51\x46\x64\x4c\x38\x6b\x58\x61\x57','\x57\x51\x48\x35\x66\x59\x74\x63\x4c\x53\x6f\x54\x69\x53\x6f\x36','\x72\x38\x6f\x32\x57\x51\x68\x63\x4b\x43\x6f\x64\x57\x36\x6e\x63\x57\x37\x2f\x63\x53\x57','\x65\x53\x6f\x65\x57\x51\x4a\x64\x47\x53\x6f\x62\x68\x47','\x57\x36\x31\x56\x64\x43\x6f\x4f\x57\x51\x61','\x57\x50\x4a\x63\x47\x4d\x30\x51\x57\x37\x56\x63\x47\x4e\x78\x64\x56\x57','\x57\x37\x35\x39\x67\x38\x6f\x52\x57\x36\x47','\x57\x51\x4f\x61\x57\x51\x65\x32\x57\x37\x57','\x57\x36\x6e\x6d\x63\x71\x52\x63\x51\x47','\x57\x36\x66\x2b\x6c\x53\x6f\x68\x57\x34\x53','\x57\x36\x30\x4f\x57\x51\x44\x46\x57\x35\x6c\x63\x48\x43\x6b\x35','\x62\x31\x56\x63\x47\x5a\x2f\x63\x4c\x71','\x63\x68\x46\x63\x56\x73\x37\x63\x4b\x62\x4c\x42\x57\x36\x57','\x74\x64\x31\x79\x57\x34\x76\x4e\x57\x51\x50\x4f\x57\x51\x61','\x42\x57\x2f\x64\x4b\x43\x6f\x2f\x65\x53\x6f\x41\x57\x52\x52\x63\x55\x71','\x57\x34\x44\x32\x69\x38\x6f\x33\x57\x52\x43\x53\x41\x30\x47','\x65\x78\x74\x63\x54\x73\x5a\x63\x4c\x4c\x65','\x42\x57\x65\x33\x57\x35\x2f\x63\x4a\x47','\x57\x34\x5a\x64\x47\x6d\x6b\x6a\x61\x57\x4c\x71\x57\x35\x46\x63\x4a\x57','\x57\x50\x52\x63\x48\x77\x61\x59\x57\x35\x56\x63\x4a\x63\x47','\x75\x53\x6b\x37\x57\x4f\x74\x64\x4b\x4e\x43','\x42\x38\x6b\x77\x73\x6d\x6b\x4b\x57\x36\x53','\x57\x35\x70\x64\x47\x6d\x6b\x64','\x57\x34\x71\x53\x76\x43\x6b\x74\x6a\x71','\x62\x72\x78\x64\x51\x30\x44\x35','\x57\x34\x74\x64\x4a\x6d\x6b\x61\x73\x57\x66\x78\x57\x35\x64\x63\x4e\x47','\x63\x38\x6b\x34\x57\x52\x38','\x57\x35\x56\x63\x54\x71\x52\x64\x48\x43\x6f\x58\x7a\x43\x6b\x45\x57\x51\x69','\x57\x34\x53\x36\x57\x52\x74\x64\x53\x4d\x4b','\x57\x34\x74\x63\x4b\x53\x6b\x55\x67\x5a\x6d','\x57\x51\x72\x5a\x7a\x43\x6b\x70\x74\x53\x6b\x71\x44\x49\x4f','\x57\x36\x78\x63\x48\x49\x78\x63\x54\x6d\x6f\x6d','\x57\x4f\x50\x6b\x6d\x75\x42\x63\x4f\x53\x6f\x6d\x66\x6d\x6f\x44','\x57\x37\x31\x7a\x57\x37\x31\x4e\x57\x51\x69\x73\x57\x51\x68\x64\x53\x43\x6f\x37\x57\x37\x44\x4c','\x57\x51\x37\x63\x4d\x6d\x6b\x31\x57\x36\x4a\x64\x49\x72\x78\x64\x56\x53\x6f\x49','\x57\x37\x38\x56\x57\x50\x68\x64\x4f\x66\x37\x63\x4a\x64\x64\x63\x4b\x47','\x57\x34\x64\x63\x48\x38\x6b\x57\x64\x48\x69','\x57\x35\x4c\x5a\x67\x53\x6f\x64\x57\x36\x65','\x67\x43\x6f\x55\x57\x50\x46\x64\x4f\x6d\x6f\x5a','\x6a\x4b\x76\x4d\x57\x52\x74\x63\x4d\x61\x42\x64\x49\x47','\x57\x51\x46\x63\x4d\x57\x4c\x62','\x57\x36\x30\x2b\x57\x4f\x70\x63\x4d\x71','\x6c\x71\x69\x74\x76\x57\x75','\x57\x35\x53\x4f\x57\x50\x6a\x63\x57\x35\x71','\x57\x37\x4a\x64\x4e\x4c\x54\x66\x63\x66\x43\x52\x57\x35\x57','\x70\x30\x64\x64\x4b\x38\x6f\x33\x57\x34\x2f\x63\x47\x38\x6b\x30\x57\x37\x34','\x6b\x31\x64\x64\x4e\x38\x6f\x5a\x57\x34\x2f\x63\x4b\x6d\x6b\x48\x57\x36\x69','\x6e\x6d\x6b\x66\x57\x35\x46\x63\x52\x53\x6f\x63','\x73\x4a\x48\x45\x57\x34\x76\x48\x57\x52\x30','\x57\x52\x64\x64\x4e\x4d\x64\x63\x52\x43\x6b\x56\x61\x6d\x6f\x32','\x72\x64\x69\x73\x57\x50\x43\x61','\x57\x35\x6d\x76\x57\x4f\x4e\x63\x4a\x74\x33\x64\x56\x4d\x2f\x64\x52\x38\x6f\x65\x77\x48\x38','\x57\x35\x75\x45\x57\x4f\x4e\x63\x47\x4a\x42\x63\x51\x4a\x37\x64\x47\x6d\x6f\x62\x72\x4a\x52\x64\x52\x6d\x6f\x4c','\x46\x59\x43\x62\x57\x34\x53','\x57\x4f\x52\x63\x51\x6d\x6b\x72\x57\x36\x46\x64\x4e\x47','\x78\x64\x50\x64\x57\x35\x72\x48\x57\x52\x43','\x57\x4f\x42\x63\x4d\x4c\x6c\x63\x54\x38\x6b\x6a','\x57\x51\x4a\x63\x53\x4c\x6d\x61\x57\x36\x71','\x77\x57\x75\x6d\x57\x35\x70\x63\x56\x71','\x57\x34\x78\x63\x4f\x62\x46\x63\x48\x6d\x6f\x4f\x44\x71','\x6d\x57\x58\x4c\x57\x51\x5a\x63\x54\x47','\x44\x4c\x4e\x64\x47\x65\x68\x64\x4d\x6d\x6b\x58\x61\x38\x6f\x48\x44\x38\x6f\x6c\x77\x57','\x57\x4f\x64\x64\x50\x38\x6f\x61\x57\x50\x46\x64\x56\x71','\x57\x50\x72\x62\x6f\x61\x46\x63\x52\x6d\x6f\x73','\x57\x52\x33\x64\x4a\x6d\x6b\x36\x61\x30\x68\x64\x4d\x76\x2f\x63\x4c\x61','\x69\x43\x6b\x64\x7a\x48\x6c\x64\x4c\x38\x6b\x4b\x57\x37\x2f\x63\x55\x47','\x45\x6d\x6f\x32\x57\x35\x64\x64\x54\x53\x6f\x33\x57\x50\x56\x64\x48\x61','\x57\x52\x2f\x64\x52\x53\x6f\x6f\x57\x51\x68\x64\x55\x66\x7a\x6c\x57\x4f\x34','\x74\x58\x2f\x64\x48\x38\x6b\x46\x57\x34\x2f\x63\x4b\x48\x43\x70','\x57\x35\x6c\x64\x50\x4e\x5a\x63\x4a\x38\x6b\x42','\x57\x4f\x6a\x44\x6d\x72\x42\x63\x55\x38\x6f\x77\x78\x43\x6b\x6a','\x62\x6d\x6b\x49\x57\x37\x5a\x63\x56\x53\x6f\x6a\x57\x34\x4c\x30\x57\x35\x79','\x57\x34\x39\x64\x70\x47','\x57\x34\x52\x64\x49\x63\x6e\x54\x57\x52\x56\x64\x4d\x4e\x46\x64\x52\x38\x6f\x35\x57\x36\x6a\x7a\x6a\x53\x6b\x2f\x57\x35\x6d','\x69\x43\x6f\x5a\x57\x52\x47\x4d\x57\x36\x71','\x57\x51\x50\x59\x57\x35\x68\x63\x4c\x58\x6c\x64\x4a\x77\x4a\x63\x48\x58\x5a\x63\x4e\x6d\x6b\x32\x57\x52\x56\x63\x52\x57','\x75\x43\x6f\x6a\x57\x51\x70\x63\x47\x43\x6f\x66\x65\x53\x6f\x36\x57\x4f\x79','\x57\x35\x78\x64\x48\x6d\x6b\x45\x72\x57\x54\x69\x57\x36\x42\x63\x47\x47','\x57\x52\x4a\x63\x4b\x6d\x6b\x34\x57\x36\x6c\x64\x47\x61','\x42\x49\x43\x61\x57\x35\x70\x63\x4a\x57','\x57\x36\x76\x73\x6c\x43\x6f\x76\x57\x34\x42\x63\x48\x61'];_0x1763=function(){return _0x36ba0a;};return _0x1763();}function _0x273099(_0x102a62,_0x588ab5,_0x58aa50,_0x151d42){const _0x414f1f=_0x54376e,_0x972186={};_0x972186[_0x414f1f(0x180,'\x41\x48\x30\x39')]=function(_0x5435dc,_0x1161ca){return _0x5435dc<_0x1161ca;},_0x972186[_0x414f1f(0x1be,'\x42\x41\x79\x75')]=function(_0x1f1230,_0x746153){return _0x1f1230+_0x746153;},_0x972186[_0x414f1f(0x17d,'\x38\x48\x55\x5d')]=function(_0x2c93f0,_0x38ce55){return _0x2c93f0+_0x38ce55;},_0x972186[_0x414f1f(0x1c5,'\x58\x72\x63\x30')]=_0x414f1f(0x198,'\x48\x38\x31\x65')+_0x414f1f(0x178,'\x38\x48\x55\x5d')+_0x414f1f(0x165,'\x41\x48\x30\x39')+_0x414f1f(0x16f,'\x45\x58\x46\x34'),_0x972186[_0x414f1f(0x161,'\x6e\x73\x34\x24')]=function(_0x1d407a,_0x3a9ead){return _0x1d407a+_0x3a9ead;},_0x972186[_0x414f1f(0x1b7,'\x6f\x76\x29\x4c')]=function(_0x160eee,_0x4d0c5f){return _0x160eee!==_0x4d0c5f;},_0x972186[_0x414f1f(0x17a,'\x43\x7a\x58\x4a')]=_0x414f1f(0x15a,'\x48\x43\x26\x6c'),_0x972186[_0x414f1f(0x19e,'\x35\x40\x54\x55')]='\x63\x72\x79\x70\x74\x6f\x3a\x20'+_0x414f1f(0x1ae,'\x53\x73\x79\x43')+_0x414f1f(0x18a,'\x43\x7a\x58\x4a')+'\x74\x6c\x79\x20\x33\x32\x20\x62'+_0x414f1f(0x159,'\x4f\x67\x4e\x74');const _0x351388=_0x972186;if(!_0x588ab5||_0x588ab5[_0x414f1f(0x17b,'\x58\x72\x63\x30')]!==_0x5b1ede){if(_0x351388[_0x414f1f(0x1c9,'\x52\x73\x54\x47')](_0x351388[_0x414f1f(0x177,'\x2a\x4d\x75\x31')],_0x351388[_0x414f1f(0x19c,'\x70\x43\x52\x2a')])){if(!_0x277db2['\x69\x73\x42\x75\x66\x66\x65\x72'](_0x3510a0)||_0x351388[_0x414f1f(0x171,'\x47\x21\x33\x52')](_0x2a5f4c[_0x414f1f(0x1a3,'\x35\x40\x54\x55')],_0x351388[_0x414f1f(0x1e9,'\x59\x23\x68\x32')](_0x351388[_0x414f1f(0x16e,'\x6e\x73\x34\x24')](_0x480c55,_0x51a3d3),-0x3*-0x8ec+0x3*-0x3b+-0x1a12)))throw new _0x1c88d0(_0x351388[_0x414f1f(0x1a4,'\x31\x6b\x29\x5d')]);const _0x28aa5e=_0x24d160[_0x414f1f(0x163,'\x48\x38\x31\x65')](-0x103a+-0xdb9*-0x2+0xb38*-0x1,_0xe6a3f8),_0x40c992=_0x11ca16[_0x414f1f(0x16c,'\x28\x32\x34\x47')](_0x1c579d,_0x351388[_0x414f1f(0x184,'\x5a\x63\x6a\x7a')](_0x29bfd1,_0x52b6ac)),_0x3c6065=_0x393386[_0x414f1f(0x1c0,'\x47\x21\x33\x52')](_0x351388[_0x414f1f(0x1e2,'\x31\x6b\x29\x5d')](_0x130f39,_0x43e3b3)),_0x296653={};return _0x296653['\x63\x69\x70\x68\x65\x72\x74\x65'+'\x78\x74']=_0x3c6065,_0x296653['\x69\x76']=_0x28aa5e,_0x296653[_0x414f1f(0x1a6,'\x48\x38\x31\x65')]=_0x40c992,_0x296653;}else throw new Error(_0x351388[_0x414f1f(0x185,'\x21\x24\x73\x46')]);}const _0x574a57={};_0x574a57[_0x414f1f(0x179,'\x6e\x78\x62\x75')+'\x65\x6e\x67\x74\x68']=_0x102833;const _0x5b40bd=_0x4c718a[_0x414f1f(0x157,'\x6e\x78\x62\x75')+_0x414f1f(0x1d4,'\x37\x28\x36\x4f')](_0x1a8f5f,_0x588ab5,_0x58aa50,_0x574a57);return _0x5b40bd['\x73\x65\x74\x41\x75\x74\x68\x54'+'\x61\x67'](_0x151d42),Buffer[_0x414f1f(0x196,'\x6e\x73\x34\x24')]([_0x5b40bd[_0x414f1f(0x1ce,'\x53\x73\x79\x43')](_0x102a62),_0x5b40bd[_0x414f1f(0x18c,'\x70\x43\x52\x2a')]()]);}function _0x46e347(_0x1cfea8){const _0x181c0=_0x54376e;return Buffer[_0x181c0(0x188,'\x4f\x6f\x42\x6a')]([_0x1cfea8['\x69\x76'],_0x1cfea8[_0x181c0(0x1e6,'\x4f\x67\x4e\x74')],_0x1cfea8[_0x181c0(0x1a1,'\x4f\x6f\x42\x6a')+'\x78\x74']]);}function _0x460408(_0x5c1075){const _0x4d291c=_0x54376e,_0x169c17={};_0x169c17[_0x4d291c(0x1b8,'\x70\x43\x52\x2a')]=function(_0x4118d2,_0x507b79){return _0x4118d2+_0x507b79;};const _0x6f341f=_0x169c17;if(!Buffer[_0x4d291c(0x154,'\x2a\x4d\x75\x31')](_0x5c1075)||_0x5c1075[_0x4d291c(0x1eb,'\x35\x6d\x24\x5d')]<_0x6f341f[_0x4d291c(0x175,'\x52\x73\x54\x47')](_0x2aaa02,_0x102833)+(-0x8ed+-0xc08+0x14f6))throw new Error(_0x4d291c(0x15e,'\x58\x72\x63\x30')+_0x4d291c(0x1b5,'\x52\x73\x54\x47')+_0x4d291c(0x19f,'\x35\x40\x54\x55')+_0x4d291c(0x1ba,'\x5e\x76\x62\x31'));const _0x20d7f3=_0x5c1075[_0x4d291c(0x16b,'\x52\x73\x54\x47')](0x2b*-0x7b+-0x20e6+0x358f,_0x2aaa02),_0x39945d=_0x5c1075[_0x4d291c(0x1a0,'\x53\x7a\x61\x51')](_0x2aaa02,_0x6f341f[_0x4d291c(0x1b0,'\x6f\x76\x29\x4c')](_0x2aaa02,_0x102833)),_0x200f71=_0x5c1075['\x73\x75\x62\x61\x72\x72\x61\x79'](_0x6f341f['\x50\x44\x59\x71\x53'](_0x2aaa02,_0x102833)),_0x262c4f={};return _0x262c4f[_0x4d291c(0x1ac,'\x48\x43\x26\x6c')+'\x78\x74']=_0x200f71,_0x262c4f['\x69\x76']=_0x20d7f3,_0x262c4f[_0x4d291c(0x19d,'\x42\x41\x79\x75')]=_0x39945d,_0x262c4f;}const _0x2e7df8={};function _0x2710(_0x255df3,_0x365dcd){_0x255df3=_0x255df3-(-0x1*0x125b+0xb66+0x847);const _0x4cee71=_0x1763();let _0x57476a=_0x4cee71[_0x255df3];if(_0x2710['\x71\x73\x73\x75\x70\x66']===undefined){var _0x1c020c=function(_0x40b208){const _0x3c621d='\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 _0x584692='',_0x33e4ca='',_0x1cdb86=_0x584692+_0x1c020c,_0x3ecb43=(''+function(){return 0xc9*-0x9+-0x47*-0x6a+-0x1655;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(0xa*0x9+-0x1ed2+0x1e79);for(let _0x6bec5e=-0x94+0x1bdc+0x918*-0x3,_0x45c5c6,_0x5ee2ae,_0x42ec8d=-0x1c*-0x6+0x7*0x58+-0x310;_0x5ee2ae=_0x40b208['\x63\x68\x61\x72\x41\x74'](_0x42ec8d++);~_0x5ee2ae&&(_0x45c5c6=_0x6bec5e%(-0x14ed*0x1+-0x2542+0x13d*0x2f)?_0x45c5c6*(-0x209+-0x965+0xd*0xe6)+_0x5ee2ae:_0x5ee2ae,_0x6bec5e++%(-0x19c3+-0x873+-0x1a*-0x151))?_0x584692+=_0x3ecb43||_0x1cdb86['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x42ec8d+(0x1*-0x1825+0x21d5+-0x9a6))-(-0x64f*0x5+-0x1989*0x1+-0x391e*-0x1)!==0x2e3*-0x3+-0x117d+0x1a26?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](0x1240+0x1530+-0x2f5*0xd&_0x45c5c6>>(-(-0xd48+0x5ff*0x2+0x1*0x14c)*_0x6bec5e&0x36*0x15+-0xb93+0x72b)):_0x6bec5e:0x99f*0x1+0x191*-0x11+0x1102){_0x5ee2ae=_0x3c621d['\x69\x6e\x64\x65\x78\x4f\x66'](_0x5ee2ae);}for(let _0x15f157=0xb*0x2+0x1d9*0x3+0x5a1*-0x1,_0x5e7ed5=_0x584692['\x6c\x65\x6e\x67\x74\x68'];_0x15f157<_0x5e7ed5;_0x15f157++){_0x33e4ca+='\x25'+('\x30\x30'+_0x584692['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x15f157)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0xe4c+0xdb7+-0x31b*0x9))['\x73\x6c\x69\x63\x65'](-(-0x5*-0x18c+0x23d*-0x3+-0x1*0x103));}return decodeURIComponent(_0x33e4ca);};const _0x4b3e0a=function(_0x29c87b,_0x34c9b9){let _0x20890a=[],_0x5238e3=-0x1b43+-0x187f+0xa*0x52d,_0x2721d0,_0x2c0a6d='';_0x29c87b=_0x1c020c(_0x29c87b);let _0x36f299;for(_0x36f299=-0x1775+0x108d+0x6e8;_0x36f299<0x49*-0x3b+-0xbd9+-0xed6*-0x2;_0x36f299++){_0x20890a[_0x36f299]=_0x36f299;}for(_0x36f299=-0xe93+0x1*0x347+-0x4*-0x2d3;_0x36f299<0x2114*-0x1+0x8*-0x391+-0xfa7*-0x4;_0x36f299++){_0x5238e3=(_0x5238e3+_0x20890a[_0x36f299]+_0x34c9b9['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x36f299%_0x34c9b9['\x6c\x65\x6e\x67\x74\x68']))%(0x1*0x20f7+0xd9f*-0x2+-0x4b9),_0x2721d0=_0x20890a[_0x36f299],_0x20890a[_0x36f299]=_0x20890a[_0x5238e3],_0x20890a[_0x5238e3]=_0x2721d0;}_0x36f299=-0x5*0x3c5+0x62a+-0x1*-0xcaf,_0x5238e3=-0xafd*-0x1+0x11c*-0x2+-0x5*0x1c1;for(let _0x47ea9d=-0x4e1*0x1+0x1035+-0x5*0x244;_0x47ea9d<_0x29c87b['\x6c\x65\x6e\x67\x74\x68'];_0x47ea9d++){_0x36f299=(_0x36f299+(0xb*0x298+0xd21+-0x29a8))%(-0x1*0x190b+0x13*0x50+0x141b),_0x5238e3=(_0x5238e3+_0x20890a[_0x36f299])%(0x40b+0x1a5*0x11+-0x1*0x1f00),_0x2721d0=_0x20890a[_0x36f299],_0x20890a[_0x36f299]=_0x20890a[_0x5238e3],_0x20890a[_0x5238e3]=_0x2721d0,_0x2c0a6d+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x29c87b['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x47ea9d)^_0x20890a[(_0x20890a[_0x36f299]+_0x20890a[_0x5238e3])%(0x2*-0xbfe+0x1*0x24fc+-0xc00)]);}return _0x2c0a6d;};_0x2710['\x65\x54\x43\x6a\x54\x4a']=_0x4b3e0a,_0x2710['\x63\x50\x44\x48\x6f\x67']={},_0x2710['\x71\x73\x73\x75\x70\x66']=!![];}const _0x204fdc=_0x4cee71[-0x13b3+0x2681+-0xa6*0x1d],_0x47f843=_0x255df3+_0x204fdc,_0x4401ce=_0x2710['\x63\x50\x44\x48\x6f\x67'][_0x47f843];if(!_0x4401ce){if(_0x2710['\x62\x53\x58\x64\x63\x79']===undefined){const _0x28e620=function(_0x42ff3a){this['\x54\x57\x72\x46\x4c\x75']=_0x42ff3a,this['\x71\x70\x50\x45\x76\x44']=[-0x19f+-0x8d*0xc+-0x22*-0x3e,0x89e*0x1+-0x1*-0xa4e+-0x12ec,-0xa93+0x11a+0x979],this['\x42\x4c\x55\x45\x68\x4c']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x77\x4a\x6d\x6e\x4f\x66']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x72\x79\x50\x43\x6b\x54']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x28e620['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x50\x49\x71\x58\x52\x6a']=function(){const _0x4f8e4f=new RegExp(this['\x77\x4a\x6d\x6e\x4f\x66']+this['\x72\x79\x50\x43\x6b\x54']),_0x7c669d=_0x4f8e4f['\x74\x65\x73\x74'](this['\x42\x4c\x55\x45\x68\x4c']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x71\x70\x50\x45\x76\x44'][0x1*0x135+-0x1e2*-0xf+-0x1d72]:--this['\x71\x70\x50\x45\x76\x44'][-0x209e+-0xaf3*-0x2+-0x2*-0x55c];return this['\x76\x4d\x61\x50\x5a\x72'](_0x7c669d);},_0x28e620['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x76\x4d\x61\x50\x5a\x72']=function(_0x249ec1){if(!Boolean(~_0x249ec1))return _0x249ec1;return this['\x49\x61\x52\x46\x48\x4d'](this['\x54\x57\x72\x46\x4c\x75']);},_0x28e620['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x49\x61\x52\x46\x48\x4d']=function(_0x9b8655){for(let _0x2d1100=-0x9e7+-0x48a*0x3+-0x3*-0x7d7,_0xeb2ed=this['\x71\x70\x50\x45\x76\x44']['\x6c\x65\x6e\x67\x74\x68'];_0x2d1100<_0xeb2ed;_0x2d1100++){this['\x71\x70\x50\x45\x76\x44']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0xeb2ed=this['\x71\x70\x50\x45\x76\x44']['\x6c\x65\x6e\x67\x74\x68'];}return _0x9b8655(this['\x71\x70\x50\x45\x76\x44'][-0x233c+0x4*0x840+0x23c]);},(''+function(){return 0x96b+-0x1696+0xd2b*0x1;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0x2554+-0xfeb*0x1+0x20*0x1aa)&&new _0x28e620(_0x2710)['\x50\x49\x71\x58\x52\x6a'](),_0x2710['\x62\x53\x58\x64\x63\x79']=!![];}_0x57476a=_0x2710['\x65\x54\x43\x6a\x54\x4a'](_0x57476a,_0x365dcd),_0x2710['\x63\x50\x44\x48\x6f\x67'][_0x47f843]=_0x57476a;}else _0x57476a=_0x4401ce;return _0x57476a;}_0x2e7df8['\x41\x4c\x47\x4f\x52\x49\x54\x48'+'\x4d']=_0x1a8f5f,_0x2e7df8[_0x54376e(0x1ee,'\x52\x73\x54\x47')+'\x53']=_0x5b1ede,_0x2e7df8[_0x54376e(0x194,'\x45\x66\x29\x26')]=_0x2aaa02,_0x2e7df8['\x54\x41\x47\x5f\x42\x59\x54\x45'+'\x53']=_0x102833,_0x2e7df8[_0x54376e(0x1c1,'\x47\x21\x33\x52')+_0x54376e(0x162,'\x29\x55\x39\x55')]=_0x2b899d,_0x2e7df8['\x65\x6e\x63\x72\x79\x70\x74']=_0x3d1738,_0x2e7df8[_0x54376e(0x182,'\x4f\x67\x4e\x74')]=_0x273099,_0x2e7df8[_0x54376e(0x192,'\x37\x28\x36\x4f')]=_0x46e347,_0x2e7df8[_0x54376e(0x1d2,'\x45\x66\x29\x26')]=_0x460408,module['\x65\x78\x70\x6f\x72\x74\x73']=_0x2e7df8;
1
+ // AES-256-GCM symmetric encryption for sealed / privacy computing blobs.
2
+ // Keys are generated locally and never leave the client.
3
+
4
+ const crypto = require('crypto');
5
+
6
+ const ALGORITHM = 'aes-256-gcm';
7
+ const IV_BYTES = 12;
8
+ const TAG_BYTES = 16;
9
+ const KEY_BYTES = 32;
10
+
11
+ /**
12
+ * Generate a random 256-bit key.
13
+ * @returns {Buffer}
14
+ */
15
+ function generateKey() {
16
+ return crypto.randomBytes(KEY_BYTES);
17
+ }
18
+
19
+ /**
20
+ * Encrypt plaintext with AES-256-GCM.
21
+ * @param {Buffer|string} plaintext
22
+ * @param {Buffer} key - 32-byte key
23
+ * @returns {{ ciphertext: Buffer, iv: Buffer, authTag: Buffer }}
24
+ */
25
+ function encrypt(plaintext, key) {
26
+ if (!key || key.length !== KEY_BYTES) {
27
+ throw new Error('crypto: key must be exactly 32 bytes');
28
+ }
29
+ const iv = crypto.randomBytes(IV_BYTES);
30
+ // authTagLength is set explicitly (matches the 16-byte default we already
31
+ // rely on) so the GCM tag length is pinned rather than left implicit. On
32
+ // decrypt this lets the cipher reject a truncated tag instead of silently
33
+ // accepting a weaker authenticator (Semgrep gcm-no-tag-length, issue #285).
34
+ const cipher = crypto.createCipheriv(ALGORITHM, key, iv, { authTagLength: TAG_BYTES });
35
+ const input = Buffer.isBuffer(plaintext) ? plaintext : Buffer.from(plaintext, 'utf8');
36
+ const encrypted = Buffer.concat([cipher.update(input), cipher.final()]);
37
+ const authTag = cipher.getAuthTag();
38
+ return { ciphertext: encrypted, iv, authTag };
39
+ }
40
+
41
+ /**
42
+ * Decrypt ciphertext with AES-256-GCM.
43
+ * @param {Buffer} ciphertext
44
+ * @param {Buffer} key - 32-byte key
45
+ * @param {Buffer} iv - 12-byte IV
46
+ * @param {Buffer} authTag - 16-byte auth tag
47
+ * @returns {Buffer} plaintext
48
+ */
49
+ function decrypt(ciphertext, key, iv, authTag) {
50
+ if (!key || key.length !== KEY_BYTES) {
51
+ throw new Error('crypto: key must be exactly 32 bytes');
52
+ }
53
+ const decipher = crypto.createDecipheriv(ALGORITHM, key, iv, { authTagLength: TAG_BYTES });
54
+ decipher.setAuthTag(authTag);
55
+ return Buffer.concat([decipher.update(ciphertext), decipher.final()]);
56
+ }
57
+
58
+ /**
59
+ * Pack ciphertext + iv + authTag into a single buffer for transport.
60
+ * Layout: [iv (12)] [authTag (16)] [ciphertext (...)]
61
+ * @param {{ ciphertext: Buffer, iv: Buffer, authTag: Buffer }} parts
62
+ * @returns {Buffer}
63
+ */
64
+ function pack(parts) {
65
+ return Buffer.concat([parts.iv, parts.authTag, parts.ciphertext]);
66
+ }
67
+
68
+ /**
69
+ * Unpack a buffer produced by pack().
70
+ * @param {Buffer} packed
71
+ * @returns {{ ciphertext: Buffer, iv: Buffer, authTag: Buffer }}
72
+ */
73
+ function unpack(packed) {
74
+ if (!Buffer.isBuffer(packed) || packed.length < IV_BYTES + TAG_BYTES + 1) {
75
+ throw new Error('crypto: packed buffer too short');
76
+ }
77
+ const iv = packed.subarray(0, IV_BYTES);
78
+ const authTag = packed.subarray(IV_BYTES, IV_BYTES + TAG_BYTES);
79
+ const ciphertext = packed.subarray(IV_BYTES + TAG_BYTES);
80
+ return { ciphertext, iv, authTag };
81
+ }
82
+
83
+ module.exports = {
84
+ ALGORITHM,
85
+ KEY_BYTES,
86
+ IV_BYTES,
87
+ TAG_BYTES,
88
+ generateKey,
89
+ encrypt,
90
+ decrypt,
91
+ pack,
92
+ unpack,
93
+ };