@evomap/evolver 1.88.3 → 1.89.0

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 (94) hide show
  1. package/.cursor/BUGBOT.md +182 -0
  2. package/.env.example +68 -0
  3. package/.git-commit-guard-token +1 -0
  4. package/.github/CODEOWNERS +63 -0
  5. package/.github/ISSUE_TEMPLATE/good_first_issue.md +23 -0
  6. package/.github/pull_request_template.md +45 -0
  7. package/.github/workflows/test.yml +75 -0
  8. package/CHANGELOG.md +1123 -0
  9. package/README.md +86 -543
  10. package/README.public.md +594 -0
  11. package/SECURITY.md +108 -0
  12. package/assets/gep/events.jsonl +3 -0
  13. package/examples/atp-consumer-quickstart.md +100 -0
  14. package/examples/hello-world.md +38 -0
  15. package/index.js +30 -1
  16. package/package.json +5 -15
  17. package/proxy-package.json +39 -0
  18. package/public.manifest.json +141 -0
  19. package/src/evolve/guards.js +721 -1
  20. package/src/evolve/pipeline/collect.js +1283 -1
  21. package/src/evolve/pipeline/dispatch.js +421 -1
  22. package/src/evolve/pipeline/enrich.js +434 -1
  23. package/src/evolve/pipeline/hub.js +319 -1
  24. package/src/evolve/pipeline/select.js +274 -1
  25. package/src/evolve/pipeline/signals.js +206 -1
  26. package/src/evolve/utils.js +264 -1
  27. package/src/evolve.js +350 -1
  28. package/src/gep/a2aProtocol.js +4395 -1
  29. package/src/gep/assetCallLog.js +30 -2
  30. package/src/gep/autoDistillConv.js +205 -1
  31. package/src/gep/autoDistillLlm.js +315 -1
  32. package/src/gep/candidateEval.js +92 -1
  33. package/src/gep/candidates.js +198 -1
  34. package/src/gep/contentHash.js +30 -1
  35. package/src/gep/conversationSniffer.js +266 -1
  36. package/src/gep/crypto.js +89 -1
  37. package/src/gep/curriculum.js +163 -1
  38. package/src/gep/deviceId.js +218 -1
  39. package/src/gep/envFingerprint.js +118 -1
  40. package/src/gep/epigenetics.js +31 -1
  41. package/src/gep/execBridge.js +711 -1
  42. package/src/gep/explore.js +289 -1
  43. package/src/gep/hash.js +15 -1
  44. package/src/gep/hubFetch.js +359 -1
  45. package/src/gep/hubReview.js +207 -1
  46. package/src/gep/hubSearch.js +526 -1
  47. package/src/gep/hubVerify.js +306 -1
  48. package/src/gep/learningSignals.js +89 -1
  49. package/src/gep/memoryGraph.js +1374 -1
  50. package/src/gep/memoryGraphAdapter.js +203 -1
  51. package/src/gep/mutation.js +203 -1
  52. package/src/gep/narrativeMemory.js +108 -1
  53. package/src/gep/oauthLogin.js +143 -0
  54. package/src/gep/openPRRegistry.js +205 -1
  55. package/src/gep/personality.js +423 -1
  56. package/src/gep/policyCheck.js +599 -1
  57. package/src/gep/prompt.js +836 -1
  58. package/src/gep/recallInject.js +409 -1
  59. package/src/gep/recallVerifier.js +318 -1
  60. package/src/gep/reflection.js +177 -1
  61. package/src/gep/schemas/capsule.js +26 -0
  62. package/src/gep/selector.js +602 -1
  63. package/src/gep/skillDistiller.js +1294 -1
  64. package/src/gep/solidify.js +1699 -1
  65. package/src/gep/strategy.js +136 -1
  66. package/src/gep/tokenSavings.js +88 -0
  67. package/src/gep/workspaceKeychain.js +174 -1
  68. package/src/proxy/extensions/traceControl.js +99 -1
  69. package/src/proxy/index.js +36 -6
  70. package/src/proxy/inject.js +52 -1
  71. package/src/proxy/trace/extractor.js +534 -1
  72. package/src/proxy/trace/usage.js +105 -0
  73. package/CONTRIBUTING.md +0 -11
  74. package/assets/cover.png +0 -0
  75. package/scripts/a2a_export.js +0 -63
  76. package/scripts/a2a_ingest.js +0 -79
  77. package/scripts/a2a_promote.js +0 -118
  78. package/scripts/analyze_by_skill.js +0 -121
  79. package/scripts/build_binaries.js +0 -479
  80. package/scripts/check-changelog.js +0 -166
  81. package/scripts/extract_log.js +0 -85
  82. package/scripts/generate_history.js +0 -75
  83. package/scripts/gep_append_event.js +0 -96
  84. package/scripts/gep_personality_report.js +0 -234
  85. package/scripts/human_report.js +0 -147
  86. package/scripts/recall-verify-report.js +0 -234
  87. package/scripts/recover_loop.js +0 -61
  88. package/scripts/seed-merchants.js +0 -91
  89. package/scripts/suggest_version.js +0 -89
  90. package/scripts/validate-modules.js +0 -38
  91. package/scripts/validate-suite.js +0 -78
  92. package/skills/index.json +0 -14
  93. /package/assets/gep/{genes.seed.json → genes.json} +0 -0
  94. /package/{skills → bundled-skills}/_meta/SKILL.md +0 -0
@@ -1 +1,163 @@
1
- var _0xe4ac66=_0x181f;(function(_0x3765a7,_0x1daa89){var _0xb522=_0x181f,_0x2ddc82=_0x3765a7();while(!![]){try{var _0xfc4f2=-parseInt(_0xb522(0x1b8,'\x4a\x6d\x44\x48'))/(-0x166b+-0x180*0x10+0x2e6c)+parseInt(_0xb522(0x190,'\x42\x51\x59\x5b'))/(0x2008+-0x9*0x1f3+-0xe7b)+-parseInt(_0xb522(0x17c,'\x5e\x2a\x58\x25'))/(-0xf55*0x2+-0x1854+0x1*0x3701)+parseInt(_0xb522(0x20d,'\x73\x24\x74\x52'))/(0xde*-0x2a+0x25*-0x3d+0x2d41)+parseInt(_0xb522(0x1b2,'\x7a\x49\x56\x31'))/(0x1d*-0x45+0xfb6+-0x7e0)+parseInt(_0xb522(0x156,'\x54\x38\x32\x32'))/(0x267+0xed4+-0x371*0x5)+parseInt(_0xb522(0x14d,'\x54\x4d\x50\x64'))/(0x3*-0xa84+0x3bf+0x1bd4)*(parseInt(_0xb522(0x1d0,'\x54\x77\x34\x26'))/(-0x1*-0x10fa+-0x317*0x1+0xddb*-0x1));if(_0xfc4f2===_0x1daa89)break;else _0x2ddc82['push'](_0x2ddc82['shift']());}catch(_0x4b6d6c){_0x2ddc82['push'](_0x2ddc82['shift']());}}}(_0x3e86,0x1*0x1784c3+0x3f486*0x5+-0x1e4748));var _0x2f1834=(function(){var _0x71e2a=!![];return function(_0x3d190f,_0x2f6f92){var _0x22b962=_0x71e2a?function(){var _0x5cfa56=_0x181f;if(_0x2f6f92){var _0x2a998f=_0x2f6f92[_0x5cfa56(0x1d9,'\x29\x64\x42\x43')](_0x3d190f,arguments);return _0x2f6f92=null,_0x2a998f;}}:function(){};return _0x71e2a=![],_0x22b962;};}()),_0x6c639c=_0x2f1834(this,function(){var _0x116233=_0x181f,_0x4f8c29={};_0x4f8c29[_0x116233(0x1bc,'\x5e\x25\x4e\x44')]=_0x116233(0x1f2,'\x59\x28\x4e\x41')+_0x116233(0x220,'\x29\x65\x6a\x69');var _0x16e6ad=_0x4f8c29;return _0x6c639c[_0x116233(0xf9,'\x39\x56\x30\x30')]()['\x73\x65\x61\x72\x63\x68'](_0x16e6ad[_0x116233(0x224,'\x69\x26\x70\x70')])[_0x116233(0xf9,'\x39\x56\x30\x30')]()[_0x116233(0x1b7,'\x44\x57\x70\x6f')+_0x116233(0x195,'\x75\x46\x34\x4e')](_0x6c639c)[_0x116233(0x159,'\x29\x64\x42\x43')](_0x116233(0x123,'\x39\x56\x30\x30')+'\x2b\x29\x2b\x24');});function _0x181f(_0x32cd0b,_0x160a77){_0x32cd0b=_0x32cd0b-(-0x6*-0x133+0x1*-0x1979+0x1339);var _0x45b3dd=_0x3e86();var _0x405995=_0x45b3dd[_0x32cd0b];if(_0x181f['\x58\x7a\x6b\x4d\x6e\x7a']===undefined){var _0x483a88=function(_0x30f9da){var _0x170ddb='\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x2b\x2f\x3d';var _0x52684f='',_0x3375e1='',_0x25ccae=_0x52684f+_0x483a88,_0x4676b6=(''+function(){return-0x266*0x3+-0x699*-0x3+-0xc99;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(-0x18e4+0x1a2b+-0x146);for(var _0x4cbaa0=-0x1ce2+0x24fe*-0x1+-0x1078*-0x4,_0x4aa310,_0xf285a9,_0x286b59=0x1*-0x19ed+0xeda+-0x13b*-0x9;_0xf285a9=_0x30f9da['\x63\x68\x61\x72\x41\x74'](_0x286b59++);~_0xf285a9&&(_0x4aa310=_0x4cbaa0%(-0x1360+0x22c0+-0x3d7*0x4)?_0x4aa310*(-0x51f+0xca*-0xa+-0xd43*-0x1)+_0xf285a9:_0xf285a9,_0x4cbaa0++%(0x2*-0x12cd+-0x1*-0x5d4+-0x1fca*-0x1))?_0x52684f+=_0x4676b6||_0x25ccae['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x286b59+(-0x7bd*-0x1+0x1bc7+-0x237a))-(0xd*0x19c+0x1d9b+-0x327d)!==-0x1573+0x2*-0xefd+0x336d?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x2323+0x9d*-0x1f+0x3725&_0x4aa310>>(-(-0x1503+0x1*-0x18+-0x2f*-0x73)*_0x4cbaa0&-0xef*0x1f+-0x2693+-0x1c7*-0x26)):_0x4cbaa0:-0x1*-0xa6d+0x816+-0x1283){_0xf285a9=_0x170ddb['\x69\x6e\x64\x65\x78\x4f\x66'](_0xf285a9);}for(var _0xcc06c4=-0xdd0+-0x12ec+0x20bc,_0x71aec8=_0x52684f['\x6c\x65\x6e\x67\x74\x68'];_0xcc06c4<_0x71aec8;_0xcc06c4++){_0x3375e1+='\x25'+('\x30\x30'+_0x52684f['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0xcc06c4)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0x68d*-0x2+-0x1*-0x20a7+-0x2db1))['\x73\x6c\x69\x63\x65'](-(0x1*0x9a5+0x34*-0xbe+0x1cf5));}return decodeURIComponent(_0x3375e1);};var _0x164ff8=function(_0x44e9c2,_0x23e063){var _0x1b3655=[],_0x5e263a=0x1616+0x1be*0x6+0x31*-0xaa,_0xc6f28b,_0x46e083='';_0x44e9c2=_0x483a88(_0x44e9c2);var _0x4c1946;for(_0x4c1946=0x7d*-0x46+0x355*-0xa+-0x10e*-0x40;_0x4c1946<-0x13a*-0x3+0x1e8c+-0x213a;_0x4c1946++){_0x1b3655[_0x4c1946]=_0x4c1946;}for(_0x4c1946=0x1*0x1b1b+0x3*-0x70f+-0x2e*0x21;_0x4c1946<0x6c*-0x2e+-0x1*-0x21a1+-0xd39;_0x4c1946++){_0x5e263a=(_0x5e263a+_0x1b3655[_0x4c1946]+_0x23e063['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x4c1946%_0x23e063['\x6c\x65\x6e\x67\x74\x68']))%(0x1*0x233d+-0xe8c+0x13b1*-0x1),_0xc6f28b=_0x1b3655[_0x4c1946],_0x1b3655[_0x4c1946]=_0x1b3655[_0x5e263a],_0x1b3655[_0x5e263a]=_0xc6f28b;}_0x4c1946=-0xb4+-0x1*0xbba+-0x2b*-0x4a,_0x5e263a=-0x1*0x1257+-0x2494+0x36eb;for(var _0x435e8e=0x1ceb+0x2113*0x1+-0x3dfe;_0x435e8e<_0x44e9c2['\x6c\x65\x6e\x67\x74\x68'];_0x435e8e++){_0x4c1946=(_0x4c1946+(0x5b*-0xb+-0x406+-0x8*-0xfe))%(-0x2*-0x187+0x2387+-0x2595),_0x5e263a=(_0x5e263a+_0x1b3655[_0x4c1946])%(-0x1a1e+0x859*-0x1+0x2377),_0xc6f28b=_0x1b3655[_0x4c1946],_0x1b3655[_0x4c1946]=_0x1b3655[_0x5e263a],_0x1b3655[_0x5e263a]=_0xc6f28b,_0x46e083+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x44e9c2['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x435e8e)^_0x1b3655[(_0x1b3655[_0x4c1946]+_0x1b3655[_0x5e263a])%(0xe13+0x17a6+-0x4f*0x77)]);}return _0x46e083;};_0x181f['\x46\x65\x4e\x74\x44\x6a']=_0x164ff8,_0x181f['\x53\x55\x43\x7a\x57\x73']={},_0x181f['\x58\x7a\x6b\x4d\x6e\x7a']=!![];}var _0x18d069=_0x45b3dd[-0x26*0xef+0x2*0x3bb+0x1c04],_0x307e59=_0x32cd0b+_0x18d069,_0x320b19=_0x181f['\x53\x55\x43\x7a\x57\x73'][_0x307e59];if(!_0x320b19){if(_0x181f['\x5a\x64\x6c\x58\x46\x77']===undefined){var _0x5aa794=function(_0x348e15){this['\x44\x6e\x6f\x6f\x53\x4c']=_0x348e15,this['\x66\x56\x5a\x56\x7a\x62']=[-0x16*0x17+-0x132e+0x1529,-0x24a0+-0x2609+0x4aa9,0x200+-0x11be+0x136*0xd],this['\x52\x63\x48\x61\x6b\x77']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x58\x68\x71\x75\x53\x44']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x59\x54\x79\x51\x42\x79']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x5aa794['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x6b\x4f\x6f\x48\x6c\x57']=function(){var _0x633fa9=new RegExp(this['\x58\x68\x71\x75\x53\x44']+this['\x59\x54\x79\x51\x42\x79']),_0x3faa39=_0x633fa9['\x74\x65\x73\x74'](this['\x52\x63\x48\x61\x6b\x77']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x66\x56\x5a\x56\x7a\x62'][0x1124*0x2+0x154+-0x239b]:--this['\x66\x56\x5a\x56\x7a\x62'][0x1cf*-0x6+0x3d9+0x701];return this['\x78\x4d\x67\x4a\x77\x61'](_0x3faa39);},_0x5aa794['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x78\x4d\x67\x4a\x77\x61']=function(_0x247195){if(!Boolean(~_0x247195))return _0x247195;return this['\x66\x6f\x7a\x47\x61\x69'](this['\x44\x6e\x6f\x6f\x53\x4c']);},_0x5aa794['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x66\x6f\x7a\x47\x61\x69']=function(_0x311c4c){for(var _0x521259=0x39d+-0x147b+-0x2*-0x86f,_0x163207=this['\x66\x56\x5a\x56\x7a\x62']['\x6c\x65\x6e\x67\x74\x68'];_0x521259<_0x163207;_0x521259++){this['\x66\x56\x5a\x56\x7a\x62']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x163207=this['\x66\x56\x5a\x56\x7a\x62']['\x6c\x65\x6e\x67\x74\x68'];}return _0x311c4c(this['\x66\x56\x5a\x56\x7a\x62'][-0x1*0xe14+0x1589+-0x1*0x775]);},(''+function(){return 0x123b+0x1a91+-0x5e*0x7a;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0x2dd*-0x1+-0x45*-0x71+-0x3*0xb1b)&&new _0x5aa794(_0x181f)['\x6b\x4f\x6f\x48\x6c\x57'](),_0x181f['\x5a\x64\x6c\x58\x46\x77']=!![];}_0x405995=_0x181f['\x46\x65\x4e\x74\x44\x6a'](_0x405995,_0x160a77),_0x181f['\x53\x55\x43\x7a\x57\x73'][_0x307e59]=_0x405995;}else _0x405995=_0x320b19;return _0x405995;}_0x6c639c();'use strict';const _0x25ec4d=require('\x66\x73'),_0x3b0273=require('\x70\x61\x74\x68'),{getEvolutionDir:_0x22fe74,getMemoryDir:_0x39a792}=require(_0xe4ac66(0x107,'\x73\x24\x74\x52'));var _0x50689a=-0x1f91+0xabf+-0xcd*-0x1a+0.8,_0x92820a=0x25*-0x67+-0x158a+0x2470,_0x2dbf64=0x4*-0x755+-0x196d+-0x83*-0x6b+0.3,_0x36c109=0x2*-0x7d8+-0xf*-0x4d+0xb2f;function _0x11a8bb(){var _0x2fbfc8=_0xe4ac66,_0x557391={'\x6f\x67\x49\x6d\x61':function(_0x3e0fd3){return _0x3e0fd3();},'\x64\x6c\x42\x64\x78':_0x2fbfc8(0x175,'\x39\x56\x30\x30')+_0x2fbfc8(0x125,'\x42\x51\x59\x5b')+_0x2fbfc8(0x1f3,'\x42\x51\x59\x5b')};return _0x3b0273[_0x2fbfc8(0x1fc,'\x72\x37\x64\x48')](_0x557391[_0x2fbfc8(0x172,'\x43\x72\x37\x24')](_0x22fe74),_0x557391[_0x2fbfc8(0xfd,'\x48\x40\x72\x61')]);}function _0x29146c(_0x257097,_0x5577cf){var _0x1c4188=_0xe4ac66,_0x3cbfd5={};_0x3cbfd5[_0x1c4188(0x118,'\x5e\x25\x4e\x44')]=function(_0x3a7ccd,_0x10df23){return _0x3a7ccd-_0x10df23;},_0x3cbfd5[_0x1c4188(0x205,'\x72\x37\x64\x48')]=function(_0xd68738,_0x2887f6){return _0xd68738-_0x2887f6;},_0x3cbfd5[_0x1c4188(0x1db,'\x23\x53\x23\x29')]=function(_0xf928c2,_0x260cf9){return _0xf928c2===_0x260cf9;},_0x3cbfd5[_0x1c4188(0x1b1,'\x50\x62\x6e\x32')]=_0x1c4188(0x164,'\x49\x32\x35\x6d'),_0x3cbfd5[_0x1c4188(0x149,'\x78\x4e\x6c\x5a')]=_0x1c4188(0x15c,'\x35\x31\x68\x40');var _0x57d9c1=_0x3cbfd5;try{if(_0x57d9c1['\x6f\x74\x48\x43\x41'](_0x1c4188(0x16f,'\x42\x51\x59\x5b'),_0x57d9c1[_0x1c4188(0x1c1,'\x47\x63\x5a\x26')])){if(!_0x25ec4d[_0x1c4188(0x112,'\x4f\x6b\x45\x73')+'\x6e\x63'](_0x257097))return _0x5577cf;var _0xe4f6fd=_0x25ec4d[_0x1c4188(0x211,'\x75\x46\x34\x4e')+_0x1c4188(0x18a,'\x63\x69\x71\x4b')](_0x257097,_0x57d9c1[_0x1c4188(0x137,'\x44\x57\x70\x6f')]);if(!_0xe4f6fd[_0x1c4188(0x1fb,'\x6f\x35\x29\x6f')]())return _0x5577cf;return JSON['\x70\x61\x72\x73\x65'](_0xe4f6fd);}else return _0x57d9c1[_0x1c4188(0x185,'\x31\x48\x34\x71')](_0x1682f1[_0x1c4188(0x198,'\x4a\x53\x37\x6c')](_0x57d9c1['\x67\x71\x50\x46\x4b'](_0x31d159[_0x1c4188(0x21e,'\x31\x48\x34\x71')],-0x17*-0x18e+-0xae6+-0x4*0x637+0.5)),_0x2e6414[_0x1c4188(0x19b,'\x69\x26\x70\x70')](_0x57d9c1['\x6b\x75\x43\x70\x65'](_0x57c23e[_0x1c4188(0xf7,'\x69\x32\x6c\x23')],-0x1820+-0x24e4+0x3d04+0.5)));}catch(_0x4fef9d){return _0x5577cf;}}function _0x1cb646(_0x39a518,_0xe38708){var _0x57b938=_0xe4ac66,_0x199302={};_0x199302['\x55\x72\x57\x49\x58']=function(_0x5480ab,_0x4210ec){return _0x5480ab+_0x4210ec;},_0x199302[_0x57b938(0x1dd,'\x54\x77\x34\x26')]=_0x57b938(0x1ae,'\x72\x75\x6b\x56'),_0x199302[_0x57b938(0x1ad,'\x7a\x49\x56\x31')]=function(_0xc6c1de,_0x41818a){return _0xc6c1de+_0x41818a;},_0x199302[_0x57b938(0x20f,'\x50\x62\x6e\x32')]='\x2e\x74\x6d\x70';var _0x5a7708=_0x199302;try{var _0x2eeca6=(_0x57b938(0x1dc,'\x73\x24\x74\x52')+'\x34')[_0x57b938(0x181,'\x59\x28\x4e\x41')]('\x7c'),_0xbd074f=0x1dee+0x13f1+-0x2ef*0x11;while(!![]){switch(_0x2eeca6[_0xbd074f++]){case'\x30':_0x25ec4d[_0x57b938(0x136,'\x40\x55\x48\x77')+_0x57b938(0x1aa,'\x65\x59\x50\x25')](_0x2d8f51,_0x5a7708[_0x57b938(0x177,'\x31\x48\x34\x71')](JSON[_0x57b938(0x19e,'\x78\x4e\x6c\x5a')+'\x79'](_0xe38708,null,0xe*0x1+-0x43*-0x42+0x1*-0x1152),'\x0a'),_0x5a7708[_0x57b938(0x14f,'\x42\x4e\x46\x47')]);continue;case'\x31':var _0x4bc217=_0x3b0273[_0x57b938(0x176,'\x63\x38\x44\x24')](_0x39a518);continue;case'\x32':var _0x2d8f51=_0x5a7708[_0x57b938(0x14e,'\x42\x4e\x46\x47')](_0x39a518,_0x5a7708[_0x57b938(0x18c,'\x56\x6b\x51\x47')]);continue;case'\x33':var _0x551629={};_0x551629[_0x57b938(0x162,'\x56\x6b\x51\x47')+'\x65']=!![];if(!_0x25ec4d[_0x57b938(0x222,'\x6a\x5b\x39\x6f')+'\x6e\x63'](_0x4bc217))_0x25ec4d[_0x57b938(0x1f7,'\x63\x69\x71\x4b')+'\x63'](_0x4bc217,_0x551629);continue;case'\x34':_0x25ec4d[_0x57b938(0x1bd,'\x75\x46\x34\x4e')+'\x6e\x63'](_0x2d8f51,_0x39a518);continue;}break;}}catch(_0x3246fe){}}function _0xf13b1b(){var _0x405f63=_0xe4ac66,_0x2cb8c6={'\x44\x58\x65\x53\x77':function(_0xb6d232,_0x5cbd78,_0x222519){return _0xb6d232(_0x5cbd78,_0x222519);}},_0x26546e={};return _0x26546e[_0x405f63(0x16e,'\x4f\x23\x6b\x73')]=0x1,_0x26546e[_0x405f63(0x157,'\x54\x4d\x50\x64')+_0x405f63(0x13b,'\x35\x2a\x57\x51')]=[],_0x26546e[_0x405f63(0x171,'\x5d\x23\x65\x31')+'\x64']=[],_0x26546e[_0x405f63(0x132,'\x5d\x23\x65\x31')+'\x61\x74']=null,_0x2cb8c6['\x44\x58\x65\x53\x77'](_0x29146c,_0x11a8bb(),_0x26546e);}function _0x361c0e(_0x10a49a){var _0x223819=_0xe4ac66,_0x1eccaa={'\x74\x55\x71\x73\x63':function(_0x344219,_0x1bd3a6,_0x149066){return _0x344219(_0x1bd3a6,_0x149066);},'\x61\x50\x48\x76\x6b':function(_0x56ff13){return _0x56ff13();}};_0x10a49a[_0x223819(0x146,'\x59\x28\x4e\x41')+'\x61\x74']=new Date()[_0x223819(0x1b9,'\x43\x72\x37\x24')+_0x223819(0x1b6,'\x40\x55\x48\x77')](),_0x1eccaa[_0x223819(0x216,'\x23\x53\x23\x29')](_0x1cb646,_0x1eccaa[_0x223819(0x1c2,'\x54\x77\x34\x26')](_0x11a8bb),_0x10a49a);}function _0x998f9a(_0x19dfe4){var _0x51963e=_0xe4ac66,_0x47257d={'\x73\x4d\x51\x4b\x4a':_0x51963e(0x111,'\x35\x31\x68\x40')+_0x51963e(0x209,'\x43\x48\x36\x79'),'\x47\x71\x41\x45\x5a':_0x51963e(0x161,'\x48\x40\x72\x61'),'\x57\x42\x7a\x47\x71':function(_0x5772cb,_0x63d63b){return _0x5772cb>_0x63d63b;},'\x59\x61\x4f\x7a\x6e':function(_0x1c44c7,_0x1e2b80){return _0x1c44c7===_0x1e2b80;},'\x42\x68\x75\x45\x56':function(_0xbcab43,_0x241dd8){return _0xbcab43<_0x241dd8;},'\x74\x71\x59\x57\x79':function(_0x43365d,_0x245cfb){return _0x43365d(_0x245cfb);},'\x78\x61\x75\x54\x76':function(_0x23754e,_0x9ed239){return _0x23754e===_0x9ed239;},'\x54\x46\x78\x48\x50':_0x51963e(0x15f,'\x65\x59\x50\x25'),'\x76\x56\x44\x56\x55':_0x51963e(0x1ff,'\x5d\x23\x65\x31'),'\x64\x42\x49\x4f\x5a':function(_0x3a59e9,_0xc23966){return _0x3a59e9!==_0xc23966;},'\x61\x4d\x70\x78\x41':_0x51963e(0x1c6,'\x54\x4d\x50\x64')},_0x2089e6={};try{if(_0x47257d[_0x51963e(0x194,'\x29\x65\x6a\x69')](_0x51963e(0x147,'\x65\x59\x50\x25'),_0x47257d[_0x51963e(0x103,'\x5e\x25\x4e\x44')])){var _0x290828=_0x47257d[_0x51963e(0x1be,'\x54\x4d\x50\x64')][_0x51963e(0x14c,'\x61\x79\x65\x53')]('\x7c'),_0x18410c=-0xb36+-0x1125+0x1c5b;while(!![]){switch(_0x290828[_0x18410c++]){case'\x30':if(!_0x48a65f[_0x51963e(0x17e,'\x5e\x2a\x58\x25')](_0x2688d8[_0x51963e(0x223,'\x35\x2a\x57\x51')+'\x64']))_0x2688d8[_0x51963e(0x16c,'\x59\x28\x4e\x41')+'\x64']=[];continue;case'\x31':var _0x2688d8=_0x493bed();continue;case'\x32':_0x2f36ff(_0x2688d8);continue;case'\x33':var _0x5d2587={};_0x5d2587[_0x51963e(0x1ab,'\x73\x24\x74\x52')]=function(_0x395dbf,_0xb45095){return _0x395dbf===_0xb45095;},_0x5d2587[_0x51963e(0x1ce,'\x72\x37\x64\x48')]=_0x47257d[_0x51963e(0x13d,'\x5e\x25\x4e\x44')];var _0x226610=_0x5d2587;continue;case'\x34':_0x47257d[_0x51963e(0x1e9,'\x54\x38\x32\x32')](_0x37a20d,-0x53*-0x78+-0x1*0x3d1+-0x2317)&&_0x47257d[_0x51963e(0x213,'\x35\x31\x68\x40')](_0x37a20d%(0xa67*0x2+0x1c65+-0x312e),0x21db+0x1345+-0x3520)&&_0x47257d[_0x51963e(0x1c0,'\x48\x32\x76\x4f')](_0x2688d8[_0x51963e(0x1eb,'\x69\x26\x70\x70')],-0x21*0x1f+0x126e*0x1+-0xf6*0xf)&&_0x2688d8['\x6c\x65\x76\x65\x6c']++;continue;case'\x35':_0x2688d8[_0x51963e(0x11f,'\x4a\x6d\x44\x48')+'\x64'][_0x51963e(0x12f,'\x35\x31\x68\x40')]({'\x73\x69\x67\x6e\x61\x6c':_0x47257d[_0x51963e(0x20c,'\x62\x2a\x79\x59')](_0x1e7a68,_0x2fcd00)[_0x51963e(0x135,'\x78\x4e\x6c\x5a')](-0x1387+0x5cb+0xdbc,-0xd0f*0x1+0x1d12+-0xf9f),'\x6f\x75\x74\x63\x6f\x6d\x65':_0x47257d['\x74\x71\x59\x57\x79'](_0x3419a0,_0x16b19c)[_0x51963e(0x1fa,'\x40\x55\x48\x77')](0x1e0e+-0x19f*0xc+-0xa9a,0x613+-0x2*-0xe9+0x45*-0x1d),'\x61\x74':new _0x187973()[_0x51963e(0x119,'\x29\x64\x42\x43')+_0x51963e(0x225,'\x43\x48\x36\x79')]()});continue;case'\x36':var _0x37a20d=_0x2688d8[_0x51963e(0x126,'\x54\x77\x34\x26')+'\x64']['\x66\x69\x6c\x74\x65\x72'](function(_0x2d2463){var _0x1cc8ea=_0x51963e;return _0x226610[_0x1cc8ea(0x120,'\x47\x63\x5a\x26')](_0x2d2463[_0x1cc8ea(0x1ac,'\x63\x69\x71\x4b')],_0x226610[_0x1cc8ea(0x219,'\x62\x2a\x79\x59')]);})[_0x51963e(0x199,'\x5e\x2a\x58\x25')];continue;case'\x37':if(_0x2688d8[_0x51963e(0x1f8,'\x72\x37\x64\x48')+'\x64'][_0x51963e(0x131,'\x62\x2a\x79\x59')]>-0x2*0xcd9+-0xe5*-0xb+-0x1*-0x100d)_0x2688d8[_0x51963e(0x167,'\x69\x32\x6c\x23')+'\x64']=_0x2688d8[_0x51963e(0x208,'\x39\x56\x30\x30')+'\x64'][_0x51963e(0x13e,'\x5d\x23\x65\x31')](-(-0xb*-0x25b+-0xa*0x4c+-0x16bf*0x1));continue;}break;}}else{if(!_0x25ec4d[_0x51963e(0x139,'\x63\x69\x71\x4b')+'\x6e\x63'](_0x19dfe4))return _0x2089e6;var _0x23a20d=_0x25ec4d['\x72\x65\x61\x64\x46\x69\x6c\x65'+_0x51963e(0x21c,'\x4f\x6b\x45\x73')](_0x19dfe4,_0x47257d[_0x51963e(0x1e4,'\x72\x37\x64\x48')])['\x74\x72\x69\x6d']()[_0x51963e(0x16d,'\x6a\x75\x77\x68')]('\x0a')[_0x51963e(0x108,'\x69\x26\x70\x70')](Boolean),_0x31d665=_0x23a20d[_0x51963e(0x1fa,'\x40\x55\x48\x77')](-(0x12be*0x2+0xad0+0x17c2*-0x2));for(var _0x385759=0x21e7+0x24ce+-0x46b5;_0x47257d[_0x51963e(0x200,'\x6f\x35\x29\x6f')](_0x385759,_0x31d665[_0x51963e(0x1d4,'\x7a\x49\x56\x31')]);_0x385759++){try{var _0x303364=JSON[_0x51963e(0xfa,'\x39\x56\x30\x30')](_0x31d665[_0x385759]);if(_0x47257d[_0x51963e(0x127,'\x2a\x79\x5a\x5a')](_0x303364[_0x51963e(0x13c,'\x48\x40\x72\x61')],_0x47257d[_0x51963e(0x104,'\x6f\x35\x29\x6f')])||!_0x303364[_0x51963e(0x116,'\x48\x40\x72\x61')])continue;var _0xe9325a=_0x303364[_0x51963e(0x11d,'\x72\x75\x6b\x56')+'\x65\x79']||_0x303364[_0x51963e(0x20a,'\x61\x79\x65\x53')]||'';if(!_0xe9325a)continue;var _0x330592={};_0x330592[_0x51963e(0x19c,'\x5d\x23\x65\x31')]=0x0,_0x330592[_0x51963e(0x148,'\x35\x31\x68\x40')]=0x0,_0x330592[_0x51963e(0x1a4,'\x50\x62\x6e\x32')]=0x0;if(!_0x2089e6[_0xe9325a])_0x2089e6[_0xe9325a]=_0x330592;if(_0x303364[_0x51963e(0x114,'\x40\x55\x48\x77')][_0x51963e(0x1e7,'\x31\x48\x34\x71')]===_0x47257d[_0x51963e(0x202,'\x40\x55\x48\x77')])_0x2089e6[_0xe9325a][_0x51963e(0x12c,'\x65\x59\x50\x25')]++;else{if(_0x303364[_0x51963e(0x1a0,'\x43\x72\x37\x24')][_0x51963e(0x10b,'\x5d\x23\x65\x31')]===_0x51963e(0x1f4,'\x29\x52\x4f\x5a'))_0x2089e6[_0xe9325a][_0x51963e(0x1de,'\x29\x52\x4f\x5a')]++;}_0x2089e6[_0xe9325a][_0x51963e(0x1d8,'\x4f\x6b\x45\x73')]++;}catch(_0x2d81dc){}}}}catch(_0x2cd924){}return _0x2089e6;}function _0x2ec3f4(_0x54ac59){var _0x21162b=_0xe4ac66,_0x1072fd={};_0x1072fd['\x66\x44\x6f\x6b\x6b']=function(_0x31c226,_0x241419){return _0x31c226-_0x241419;},_0x1072fd[_0x21162b(0x1d6,'\x2a\x79\x5a\x5a')]=function(_0x3fa083,_0x56a098){return _0x3fa083<_0x56a098;},_0x1072fd[_0x21162b(0x115,'\x5e\x25\x4e\x44')]=function(_0x4ddf4b,_0x52a4af){return _0x4ddf4b<_0x52a4af;},_0x1072fd[_0x21162b(0x1b4,'\x26\x7a\x73\x29')]=function(_0x53a5d7,_0x4664b2){return _0x53a5d7/_0x4664b2;},_0x1072fd[_0x21162b(0x1a3,'\x72\x37\x64\x48')]=function(_0x1e6a25,_0xb28439){return _0x1e6a25>=_0xb28439;},_0x1072fd[_0x21162b(0x1cc,'\x31\x48\x34\x71')]=function(_0x5011ef,_0x5925e1){return _0x5011ef>=_0x5925e1;},_0x1072fd[_0x21162b(0x15e,'\x62\x2a\x79\x59')]=function(_0x1f82f2,_0x27e85){return _0x1f82f2<=_0x27e85;};var _0x1f2725=_0x1072fd,_0x5cb20c=[],_0x3c08ee=[],_0x3c52d7=[],_0x31388c=Object[_0x21162b(0x16a,'\x72\x75\x6b\x56')](_0x54ac59);for(var _0x2f940b=0x2*0x773+0x4*-0x5ae+0x7d2;_0x1f2725[_0x21162b(0x196,'\x4f\x23\x6b\x73')](_0x2f940b,_0x31388c[_0x21162b(0x212,'\x63\x69\x71\x4b')]);_0x2f940b++){var _0x15cd3c=_0x31388c[_0x2f940b],_0x3eda4a=_0x54ac59[_0x15cd3c];if(_0x1f2725[_0x21162b(0x206,'\x42\x51\x59\x5b')](_0x3eda4a[_0x21162b(0x1df,'\x40\x55\x48\x77')],-0x25c0*0x1+0x17f9+-0x1*-0xdc9))continue;var _0xc31cbc=_0x1f2725[_0x21162b(0x141,'\x63\x38\x44\x24')](_0x3eda4a['\x73\x75\x63\x63\x65\x73\x73'],_0x3eda4a[_0x21162b(0x153,'\x4a\x53\x37\x6c')]);if(_0x1f2725[_0x21162b(0x180,'\x48\x40\x72\x61')](_0xc31cbc,_0x50689a)&&_0x1f2725['\x77\x45\x57\x6f\x50'](_0x3eda4a[_0x21162b(0x10f,'\x5d\x23\x65\x31')],_0x92820a)){var _0x341f57={};_0x341f57[_0x21162b(0x1d3,'\x63\x69\x71\x4b')]=_0x15cd3c,_0x341f57[_0x21162b(0x21b,'\x54\x4d\x50\x64')]=_0xc31cbc,_0x341f57[_0x21162b(0x12b,'\x6a\x5b\x39\x6f')]=_0x3eda4a['\x74\x6f\x74\x61\x6c'],_0x5cb20c[_0x21162b(0x1b3,'\x54\x77\x34\x26')](_0x341f57);}else{if(_0x1f2725['\x63\x51\x5a\x50\x4c'](_0xc31cbc,_0x2dbf64)&&_0x3eda4a[_0x21162b(0x14a,'\x72\x75\x6b\x56')]>=0x4e7*0x4+0x247a+-0x3814){var _0x3998fa={};_0x3998fa['\x6b\x65\x79']=_0x15cd3c,_0x3998fa[_0x21162b(0x20b,'\x59\x28\x4e\x41')]=_0xc31cbc,_0x3998fa['\x74\x6f\x74\x61\x6c']=_0x3eda4a[_0x21162b(0x1a2,'\x4a\x6d\x44\x48')],_0x3c08ee[_0x21162b(0x11e,'\x4f\x23\x6b\x73')](_0x3998fa);}else{var _0x380938={};_0x380938[_0x21162b(0x19d,'\x54\x38\x32\x32')]=_0x15cd3c,_0x380938[_0x21162b(0x187,'\x63\x38\x44\x24')]=_0xc31cbc,_0x380938[_0x21162b(0x1a4,'\x50\x62\x6e\x32')]=_0x3eda4a[_0x21162b(0x113,'\x48\x40\x72\x61')],_0x3c52d7[_0x21162b(0x214,'\x29\x64\x42\x43')](_0x380938);}}}_0x3c52d7[_0x21162b(0xf2,'\x75\x46\x34\x4e')](function(_0x2d8339,_0x254a31){var _0xa92905=_0x21162b;return Math[_0xa92905(0x207,'\x59\x28\x4e\x41')](_0x1f2725[_0xa92905(0x133,'\x42\x4e\x46\x47')](_0x2d8339[_0xa92905(0x1fd,'\x35\x31\x68\x40')],-0x4c7+-0x2b3*0xe+-0x11*-0x281+0.5))-Math['\x61\x62\x73'](_0x1f2725[_0xa92905(0x121,'\x49\x32\x35\x6d')](_0x254a31[_0xa92905(0x1e3,'\x49\x32\x35\x6d')],0x2256+-0x2*0x843+0x14*-0xe4+0.5));});var _0x917c43={};return _0x917c43[_0x21162b(0x18d,'\x4f\x6b\x45\x73')]=_0x5cb20c,_0x917c43[_0x21162b(0x143,'\x35\x31\x68\x40')]=_0x3c08ee,_0x917c43[_0x21162b(0x1a1,'\x29\x64\x42\x43')]=_0x3c52d7,_0x917c43;}function _0x3e86(){var _0x3f31f5=['\x44\x43\x6b\x4a\x57\x51\x72\x69\x57\x34\x69','\x57\x51\x33\x63\x47\x47\x64\x63\x50\x32\x68\x63\x4a\x61','\x57\x36\x33\x63\x4e\x43\x6f\x6c\x6a\x53\x6b\x50\x6e\x30\x61','\x57\x36\x44\x6e\x74\x32\x5a\x63\x51\x43\x6f\x73\x57\x34\x57','\x57\x37\x61\x2f\x57\x50\x70\x63\x49\x33\x30\x6d\x45\x48\x61','\x57\x36\x2f\x63\x48\x53\x6f\x77\x6a\x53\x6b\x38\x6d\x30\x62\x52','\x57\x36\x42\x64\x54\x38\x6f\x6c\x57\x52\x46\x64\x4a\x61','\x63\x43\x6b\x2b\x66\x43\x6b\x5a\x6b\x61','\x57\x35\x68\x64\x53\x53\x6f\x59\x57\x34\x64\x64\x56\x71','\x41\x32\x33\x64\x49\x67\x62\x63','\x71\x43\x6f\x4a\x66\x5a\x37\x64\x50\x53\x6b\x6e\x57\x4f\x61','\x57\x34\x76\x5a\x68\x43\x6f\x4e\x57\x51\x58\x59','\x78\x47\x74\x63\x56\x38\x6b\x32\x57\x35\x75\x35\x57\x51\x71','\x57\x35\x35\x47\x57\x51\x56\x64\x55\x6d\x6f\x6c','\x57\x35\x53\x78\x57\x4f\x48\x71\x65\x74\x79','\x57\x37\x75\x4f\x57\x50\x74\x63\x4e\x4e\x75\x56\x71\x61\x75','\x57\x35\x78\x64\x4c\x6d\x6f\x44\x57\x50\x52\x64\x52\x4d\x34\x4a\x57\x37\x71','\x57\x4f\x4b\x49\x57\x35\x2f\x63\x49\x6d\x6f\x45','\x57\x35\x57\x6d\x57\x50\x31\x66\x63\x61','\x46\x67\x6c\x63\x4e\x53\x6b\x67\x57\x36\x76\x64\x57\x52\x74\x63\x48\x57','\x57\x51\x78\x64\x54\x6d\x6b\x47\x57\x51\x4a\x63\x49\x6d\x6f\x59\x57\x51\x62\x4f','\x78\x30\x70\x64\x4f\x66\x7a\x55\x57\x50\x34\x48\x71\x61','\x7a\x43\x6b\x47\x57\x50\x6a\x6e\x57\x35\x79','\x6d\x53\x6f\x76\x78\x6d\x6f\x66\x72\x71\x37\x63\x51\x61','\x57\x34\x52\x64\x54\x53\x6f\x32\x57\x4f\x78\x64\x52\x57','\x46\x53\x6b\x36\x57\x50\x6a\x70\x57\x35\x78\x63\x52\x77\x4f','\x63\x53\x6f\x46\x57\x35\x42\x64\x4f\x73\x4a\x64\x4f\x32\x69\x65','\x57\x35\x4e\x64\x48\x6d\x6f\x57\x57\x4f\x2f\x64\x55\x71','\x57\x36\x6a\x74\x66\x58\x70\x63\x50\x58\x38\x30\x75\x57','\x57\x51\x43\x7a\x57\x50\x42\x63\x48\x43\x6f\x6e\x57\x52\x71','\x44\x6d\x6f\x41\x41\x31\x78\x64\x50\x58\x5a\x63\x4e\x38\x6b\x4f','\x57\x37\x78\x64\x56\x43\x6f\x4a\x57\x51\x42\x64\x4b\x43\x6f\x54\x57\x36\x62\x34','\x6a\x38\x6f\x77\x57\x36\x64\x63\x48\x71\x46\x63\x55\x53\x6b\x79\x57\x4f\x30','\x44\x6d\x6b\x44\x57\x36\x5a\x64\x4c\x57','\x63\x43\x6f\x50\x57\x52\x6a\x51\x6f\x53\x6f\x64\x57\x35\x78\x64\x48\x47','\x41\x64\x56\x63\x50\x43\x6b\x69\x57\x36\x61','\x57\x35\x58\x4b\x65\x53\x6f\x4c\x79\x47','\x61\x38\x6f\x4f\x57\x52\x54\x2f\x6c\x53\x6f\x50\x57\x34\x43','\x57\x50\x56\x64\x4a\x4b\x74\x63\x55\x74\x34\x2f\x68\x62\x34','\x42\x32\x6d\x54\x57\x36\x75\x72','\x57\x34\x4a\x63\x4f\x4d\x56\x64\x53\x4e\x4b\x48\x6b\x6d\x6b\x6f','\x57\x51\x47\x74\x57\x50\x78\x63\x4b\x53\x6f\x76\x57\x52\x4e\x63\x56\x65\x4f','\x57\x4f\x34\x72\x57\x35\x4e\x63\x51\x53\x6f\x6e','\x42\x67\x52\x63\x4b\x38\x6b\x75\x57\x36\x76\x76\x57\x4f\x70\x63\x4f\x71','\x70\x6d\x6f\x71\x71\x6d\x6f\x32\x73\x58\x46\x63\x50\x71','\x57\x34\x64\x63\x49\x47\x78\x64\x54\x68\x61','\x6f\x53\x6f\x46\x73\x43\x6f\x42\x76\x61','\x57\x37\x31\x77\x73\x67\x52\x63\x54\x6d\x6f\x55\x57\x35\x4b','\x57\x37\x7a\x49\x57\x34\x74\x64\x55\x73\x30\x59\x57\x37\x64\x64\x48\x47','\x57\x52\x76\x62\x72\x6d\x6f\x52\x72\x57','\x57\x36\x42\x64\x56\x43\x6f\x49\x57\x52\x57','\x62\x6d\x6b\x77\x63\x38\x6b\x53\x68\x43\x6b\x48','\x43\x38\x6b\x79\x6e\x73\x74\x63\x51\x61\x30','\x57\x35\x30\x74\x57\x4f\x31\x66\x65\x63\x61\x2b\x45\x71','\x57\x36\x2f\x63\x53\x6d\x6f\x77\x69\x38\x6b\x4a','\x57\x34\x6c\x63\x4c\x58\x4f\x57\x72\x61','\x70\x31\x78\x63\x4e\x73\x50\x72','\x6b\x53\x6f\x73\x71\x43\x6f\x73\x74\x59\x78\x63\x50\x6d\x6b\x42','\x73\x4b\x65\x59\x57\x34\x30\x56','\x43\x53\x6f\x45\x79\x71','\x57\x4f\x30\x44\x57\x36\x78\x63\x51\x43\x6f\x5a\x57\x50\x2f\x64\x47\x73\x53','\x62\x4e\x47\x76\x57\x36\x4e\x64\x49\x57','\x57\x37\x6c\x63\x51\x4b\x6d\x45\x6a\x4e\x62\x56','\x45\x53\x6b\x4d\x57\x4f\x48\x69','\x57\x37\x78\x64\x47\x6d\x6f\x59\x57\x52\x52\x64\x48\x47','\x57\x35\x53\x70\x57\x4f\x62\x68\x61\x71','\x76\x66\x37\x64\x55\x4d\x7a\x34','\x57\x4f\x52\x63\x4e\x74\x4a\x63\x55\x66\x6d','\x61\x53\x6f\x6f\x57\x36\x52\x63\x52\x6d\x6b\x30','\x57\x34\x74\x63\x4f\x38\x6f\x4a\x57\x36\x76\x75\x6a\x53\x6b\x30','\x57\x37\x64\x64\x51\x43\x6f\x34\x57\x52\x4a\x64\x4b\x43\x6f\x47\x57\x37\x69','\x42\x6d\x6f\x77\x72\x31\x78\x64\x4f\x58\x5a\x63\x4e\x43\x6b\x50','\x57\x36\x61\x37\x57\x52\x35\x66\x6b\x47','\x67\x38\x6b\x30\x6d\x43\x6b\x44\x71\x43\x6f\x67\x72\x68\x69','\x57\x34\x6e\x5a\x73\x67\x64\x63\x50\x47','\x57\x37\x64\x64\x51\x43\x6f\x34\x57\x52\x47','\x67\x68\x4a\x63\x53\x73\x31\x71','\x69\x6d\x6f\x71\x57\x37\x70\x63\x49\x47\x4f','\x57\x51\x4a\x63\x56\x31\x57\x6a','\x75\x66\x50\x4f\x6b\x38\x6b\x4c','\x46\x47\x76\x4f\x57\x36\x64\x64\x4d\x48\x34\x63\x57\x37\x4e\x64\x53\x71','\x57\x36\x46\x63\x48\x6d\x6f\x2f\x6a\x43\x6b\x73','\x57\x36\x2f\x63\x4a\x43\x6f\x77\x6d\x53\x6b\x72','\x64\x43\x6b\x4c\x6a\x43\x6b\x44\x76\x38\x6f\x6b\x74\x65\x71','\x73\x6d\x6b\x69\x57\x51\x62\x79\x57\x37\x30','\x57\x36\x31\x6d\x72\x4e\x4e\x63\x56\x43\x6f\x34\x57\x35\x37\x64\x4d\x47','\x69\x53\x6b\x4b\x64\x43\x6f\x34\x57\x34\x57','\x45\x6d\x6b\x53\x57\x50\x6e\x61\x57\x34\x2f\x63\x52\x76\x58\x2b','\x43\x43\x6b\x66\x57\x34\x5a\x64\x4c\x4d\x57\x74\x57\x34\x38\x6d','\x57\x37\x6c\x64\x4b\x76\x2f\x64\x53\x73\x78\x64\x4c\x33\x50\x7a\x71\x53\x6b\x4b\x57\x51\x64\x63\x54\x43\x6b\x72','\x6c\x4b\x61\x49\x57\x37\x4a\x64\x54\x58\x65\x62\x57\x37\x65','\x57\x34\x52\x64\x48\x53\x6f\x75\x57\x4f\x2f\x64\x55\x57','\x57\x36\x76\x7a\x70\x5a\x6c\x63\x49\x59\x71','\x42\x4d\x75\x66\x57\x35\x4f\x4b\x57\x52\x4c\x6a\x43\x71','\x74\x59\x64\x63\x4f\x61\x4e\x64\x4e\x73\x4e\x63\x4e\x4a\x30','\x57\x36\x70\x64\x56\x6d\x6f\x33\x57\x36\x57','\x69\x75\x38\x35\x57\x34\x2f\x64\x4a\x57','\x46\x6d\x6b\x53\x61\x72\x70\x63\x4b\x61','\x57\x36\x4c\x68\x7a\x33\x33\x63\x56\x47','\x57\x34\x72\x37\x57\x36\x52\x64\x4e\x64\x43','\x79\x53\x6b\x36\x57\x4f\x76\x70\x57\x35\x2f\x63\x53\x33\x57','\x72\x43\x6f\x66\x57\x4f\x52\x64\x47\x6d\x6b\x67\x57\x50\x69\x2b\x57\x34\x30','\x57\x34\x64\x64\x4c\x6d\x6f\x71\x57\x4f\x52\x64\x52\x4e\x57\x2b\x57\x36\x43','\x57\x35\x48\x57\x65\x53\x6f\x6b\x7a\x57','\x57\x36\x39\x7a\x57\x34\x64\x64\x4d\x71\x69','\x68\x43\x6f\x46\x57\x37\x6c\x64\x47\x47\x56\x64\x4c\x77\x69\x74','\x57\x50\x54\x51\x77\x43\x6f\x38\x45\x53\x6f\x37\x76\x4c\x75','\x78\x66\x6c\x64\x50\x76\x66\x2f\x57\x50\x38','\x76\x4c\x35\x49\x45\x47','\x70\x38\x6f\x41\x57\x37\x37\x63\x4d\x61','\x78\x53\x6f\x74\x57\x51\x4a\x64\x48\x38\x6b\x67\x57\x4f\x61\x55','\x64\x43\x6b\x52\x6f\x6d\x6b\x6d\x77\x43\x6f\x67\x76\x65\x47','\x41\x4d\x52\x63\x4d\x38\x6b\x43\x57\x36\x75','\x41\x6d\x6b\x6e\x57\x36\x4e\x64\x4d\x4d\x43','\x57\x35\x2f\x63\x4e\x31\x56\x64\x48\x77\x6d','\x66\x38\x6b\x4c\x57\x4f\x38','\x57\x34\x53\x6d\x57\x4f\x72\x75\x63\x63\x61\x55\x71\x57','\x62\x78\x4f\x51\x57\x36\x68\x64\x48\x47','\x78\x43\x6f\x30\x42\x43\x6b\x77\x46\x43\x6f\x63\x76\x33\x52\x64\x55\x47','\x6f\x6d\x6f\x38\x57\x34\x61','\x57\x35\x64\x63\x4b\x58\x37\x64\x50\x78\x58\x31\x71\x4c\x53','\x6d\x38\x6f\x65\x57\x36\x52\x63\x50\x53\x6b\x56\x57\x35\x64\x64\x55\x57','\x45\x74\x70\x63\x48\x59\x68\x64\x50\x57','\x67\x38\x6f\x6c\x57\x4f\x48\x2b\x68\x57','\x57\x36\x70\x63\x53\x33\x47\x58\x69\x71','\x70\x43\x6f\x73\x57\x37\x78\x64\x4f\x30\x61','\x79\x53\x6b\x4a\x57\x4f\x39\x70\x57\x35\x38','\x57\x52\x62\x50\x57\x34\x37\x64\x4d\x59\x66\x43\x68\x58\x4e\x64\x56\x77\x56\x63\x50\x53\x6b\x47\x6b\x71','\x57\x35\x44\x31\x62\x43\x6f\x59\x57\x51\x75','\x57\x36\x53\x50\x57\x52\x5a\x63\x4d\x67\x69\x69\x75\x61','\x6a\x53\x6b\x6d\x61\x6d\x6b\x77\x45\x61','\x76\x38\x6b\x62\x57\x51\x58\x43\x57\x34\x38','\x68\x43\x6b\x30\x6f\x43\x6b\x76\x71\x71','\x57\x50\x53\x65\x57\x35\x6c\x63\x4b\x6d\x6f\x6e','\x6b\x64\x44\x70\x57\x50\x31\x37\x57\x50\x62\x59\x42\x43\x6b\x75\x57\x51\x43\x33','\x57\x51\x70\x63\x55\x6d\x6b\x4e\x57\x36\x78\x63\x49\x6d\x6b\x2b\x57\x35\x31\x31\x57\x35\x62\x79\x63\x6d\x6b\x6a','\x72\x5a\x74\x63\x4b\x58\x4a\x64\x4d\x47','\x67\x53\x6f\x2b\x6d\x53\x6b\x44\x72\x43\x6b\x7a','\x6a\x43\x6f\x6d\x57\x36\x5a\x63\x52\x71','\x57\x34\x37\x63\x50\x43\x6f\x71\x57\x36\x76\x64\x6b\x43\x6b\x35\x72\x57','\x67\x4e\x4f\x50\x57\x34\x46\x64\x55\x57','\x57\x52\x53\x43\x57\x36\x6c\x63\x55\x71','\x57\x35\x2f\x63\x4a\x72\x4b','\x75\x6d\x6f\x4f\x57\x52\x70\x64\x47\x38\x6b\x49','\x76\x31\x52\x64\x55\x4c\x66\x2f\x57\x50\x38\x78\x78\x71','\x57\x35\x2f\x63\x4c\x57\x43','\x65\x6d\x6f\x74\x57\x35\x5a\x64\x56\x48\x79','\x57\x4f\x5a\x64\x54\x57\x5a\x63\x53\x64\x31\x32\x41\x53\x6b\x6d\x57\x35\x64\x63\x51\x4a\x58\x44\x57\x51\x65','\x6f\x53\x6b\x55\x64\x38\x6f\x38\x57\x34\x57','\x78\x6d\x6f\x36\x76\x4d\x37\x63\x4f\x53\x6f\x77\x57\x34\x46\x64\x54\x64\x56\x64\x51\x4d\x79\x42\x76\x47','\x76\x78\x74\x63\x48\x38\x6b\x36\x57\x35\x71','\x57\x35\x78\x63\x53\x43\x6f\x78\x57\x34\x6e\x71','\x62\x53\x6b\x34\x57\x34\x43','\x79\x6d\x6b\x45\x57\x35\x68\x64\x48\x75\x61','\x62\x6d\x6f\x42\x57\x35\x2f\x64\x55\x64\x42\x64\x4c\x77\x38\x70','\x6e\x38\x6b\x50\x63\x47','\x57\x36\x34\x2f\x57\x50\x70\x63\x4a\x77\x71\x62','\x67\x43\x6f\x66\x57\x34\x4a\x64\x55\x71','\x57\x34\x6a\x34\x61\x47','\x57\x35\x53\x77\x57\x4f\x50\x68\x61\x74\x79\x50','\x57\x51\x52\x63\x47\x48\x43','\x70\x30\x33\x63\x48\x49\x62\x41\x57\x35\x6a\x39\x41\x47','\x43\x6d\x6f\x73\x57\x37\x4e\x64\x4a\x77\x71\x74\x57\x35\x4f\x6a','\x62\x77\x47\x78\x57\x36\x2f\x64\x49\x6d\x6f\x49\x43\x47','\x57\x37\x62\x6f\x6d\x73\x37\x63\x4e\x63\x75\x4c\x75\x57','\x68\x53\x6f\x50\x57\x51\x54\x37\x6f\x47','\x57\x35\x2f\x64\x50\x6d\x6f\x56\x57\x35\x68\x64\x48\x47','\x42\x43\x6f\x75\x42\x65\x64\x64\x52\x47','\x71\x6d\x6b\x72\x57\x36\x33\x64\x4c\x68\x34','\x6a\x6d\x6f\x51\x57\x4f\x4c\x42\x65\x61','\x6f\x43\x6b\x31\x57\x37\x7a\x6b\x57\x52\x69','\x75\x43\x6f\x57\x76\x53\x6f\x6d\x57\x35\x38','\x57\x4f\x61\x67\x57\x51\x37\x63\x4d\x53\x6f\x2f','\x57\x36\x54\x57\x75\x4d\x46\x63\x53\x47','\x70\x6d\x6b\x6c\x64\x71\x37\x64\x4c\x71','\x57\x4f\x43\x71\x57\x37\x4a\x63\x55\x43\x6f\x4f\x57\x4f\x68\x64\x54\x57','\x57\x37\x54\x39\x57\x36\x2f\x64\x50\x62\x53','\x69\x43\x6f\x6c\x57\x36\x68\x64\x4b\x57','\x57\x35\x4a\x63\x47\x58\x75','\x57\x36\x68\x63\x54\x48\x4b\x30\x73\x61','\x46\x38\x6f\x7a\x76\x75\x42\x64\x4a\x47','\x57\x51\x61\x39\x57\x50\x2f\x63\x55\x68\x66\x4e\x57\x34\x5a\x64\x47\x53\x6f\x77\x69\x71\x37\x64\x4b\x57','\x57\x52\x53\x6a\x57\x4f\x56\x63\x49\x47','\x62\x53\x6f\x36\x57\x34\x56\x64\x49\x68\x34','\x57\x4f\x31\x4f\x41\x38\x6f\x34\x44\x38\x6f\x53\x72\x76\x75','\x6e\x6d\x6f\x6f\x74\x57','\x46\x77\x38\x7a\x57\x35\x4f\x2f\x57\x51\x76\x44\x46\x47','\x77\x38\x6b\x32\x57\x36\x79\x56\x79\x38\x6b\x74\x57\x50\x70\x64\x52\x4d\x74\x63\x4f\x43\x6b\x63\x57\x51\x33\x63\x54\x61','\x68\x4e\x69\x51\x57\x35\x2f\x64\x51\x6d\x6f\x43\x79\x38\x6b\x42','\x57\x34\x6a\x31\x66\x43\x6f\x35\x57\x52\x38','\x57\x37\x79\x31\x57\x4f\x4e\x63\x49\x33\x57','\x57\x35\x56\x64\x47\x53\x6f\x66\x57\x52\x52\x64\x4b\x61','\x61\x6d\x6b\x59\x57\x35\x54\x36\x57\x52\x6d\x56\x57\x50\x35\x53','\x70\x4e\x47\x62\x57\x34\x68\x64\x4d\x61','\x57\x34\x4f\x39\x62\x38\x6b\x35\x69\x6d\x6b\x54\x66\x65\x6a\x65\x6a\x38\x6b\x70\x73\x59\x53','\x6b\x38\x6f\x79\x57\x34\x37\x64\x4c\x62\x69','\x78\x72\x37\x63\x47\x53\x6b\x2b\x57\x36\x53','\x57\x51\x4f\x53\x57\x52\x64\x63\x4c\x6d\x6f\x73','\x41\x4e\x4b\x57\x57\x34\x47\x37\x57\x51\x71','\x42\x43\x6b\x62\x46\x30\x64\x64\x53\x4c\x71','\x57\x35\x57\x63\x57\x50\x54\x64\x61\x74\x65\x50','\x69\x4b\x61\x4b\x57\x36\x4e\x64\x56\x72\x69\x71','\x57\x37\x62\x45\x57\x35\x64\x64\x50\x59\x69','\x64\x53\x6b\x62\x63\x53\x6b\x4c\x68\x43\x6b\x47\x57\x51\x37\x63\x51\x47','\x67\x43\x6f\x5a\x57\x52\x58\x35\x6d\x38\x6f\x76\x57\x35\x69','\x57\x35\x76\x45\x57\x50\x6c\x64\x49\x43\x6f\x4b\x57\x34\x56\x63\x4b\x4e\x69','\x57\x37\x4c\x70\x57\x34\x56\x64\x4b\x38\x6b\x69\x57\x36\x4e\x64\x56\x4c\x38\x30\x57\x34\x30\x48\x57\x50\x56\x64\x4b\x61','\x77\x57\x74\x63\x48\x57\x46\x64\x52\x57','\x57\x34\x4c\x6d\x66\x6d\x6f\x54\x42\x61','\x57\x34\x52\x64\x47\x53\x6f\x68\x57\x37\x78\x64\x56\x71','\x76\x76\x5a\x64\x55\x30\x62\x50\x57\x50\x34','\x57\x37\x31\x6c\x57\x34\x64\x64\x4c\x53\x6b\x6a\x57\x50\x56\x63\x4b\x4c\x38\x69\x57\x34\x65\x7a','\x57\x34\x35\x70\x63\x43\x6f\x56\x7a\x71','\x75\x65\x76\x50\x6a\x57','\x57\x4f\x6d\x61\x57\x37\x75','\x57\x37\x4c\x4f\x57\x34\x46\x64\x52\x4a\x75\x2f','\x57\x52\x70\x63\x48\x48\x52\x63\x50\x71','\x57\x4f\x34\x4c\x57\x35\x37\x63\x4e\x38\x6f\x43','\x45\x67\x38\x45\x57\x37\x61\x2b','\x74\x4c\x74\x64\x56\x75\x72\x32','\x57\x37\x44\x6d\x6c\x49\x5a\x63\x4b\x71','\x57\x50\x62\x4d\x71\x6d\x6f\x31\x75\x57','\x7a\x47\x2f\x63\x4b\x62\x70\x64\x52\x61','\x78\x53\x6b\x57\x76\x63\x70\x63\x4f\x6d\x6b\x7a\x57\x34\x70\x64\x4b\x61','\x57\x51\x30\x66\x57\x50\x46\x63\x4d\x6d\x6f\x47','\x57\x35\x64\x63\x4d\x61\x4b\x76','\x6b\x43\x6f\x70\x78\x6d\x6f\x68\x72\x47','\x57\x37\x56\x64\x56\x38\x6f\x6c\x57\x51\x42\x64\x4b\x71','\x57\x35\x2f\x63\x47\x57\x6c\x64\x53\x67\x66\x2b','\x57\x37\x50\x6d\x57\x34\x68\x64\x4c\x38\x6b\x6d\x57\x36\x4e\x64\x55\x4d\x69\x67\x57\x37\x4b\x4e\x57\x4f\x4e\x64\x4c\x57','\x57\x34\x48\x62\x63\x43\x6f\x52','\x57\x36\x2f\x64\x56\x6d\x6f\x48\x57\x37\x46\x64\x50\x47','\x62\x43\x6f\x58\x57\x50\x7a\x39\x70\x71','\x77\x6d\x6f\x76\x57\x50\x33\x64\x4c\x53\x6b\x42\x57\x4f\x57\x59','\x78\x5a\x78\x63\x53\x72\x5a\x64\x49\x4a\x6d','\x7a\x43\x6b\x32\x57\x51\x66\x6e\x57\x34\x52\x63\x53\x57','\x57\x50\x42\x63\x50\x72\x74\x63\x48\x32\x71','\x57\x35\x31\x52\x57\x34\x5a\x64\x56\x4a\x69','\x57\x34\x39\x2f\x62\x38\x6f\x32\x57\x51\x75','\x68\x43\x6b\x4f\x70\x6d\x6b\x46\x75\x61','\x57\x35\x4c\x44\x57\x52\x74\x64\x51\x38\x6b\x33\x57\x35\x52\x63\x50\x64\x78\x63\x52\x53\x6f\x36\x57\x34\x39\x4b\x57\x50\x69','\x42\x78\x71\x66\x57\x34\x61\x4c\x57\x52\x62\x62\x45\x57','\x79\x72\x4a\x63\x52\x63\x4e\x64\x51\x61','\x57\x52\x47\x74\x57\x50\x78\x63\x48\x57','\x6e\x6d\x6f\x63\x57\x37\x78\x63\x55\x6d\x6b\x49\x57\x35\x4a\x64\x51\x4b\x4b','\x72\x53\x6f\x53\x46\x43\x6f\x73\x68\x53\x6b\x6b\x63\x57\x71','\x57\x50\x70\x63\x50\x75\x46\x64\x52\x4d\x6d','\x57\x35\x64\x63\x4d\x61\x4b\x76\x72\x6d\x6b\x61','\x6e\x6d\x6f\x79\x57\x36\x52\x63\x55\x53\x6b\x4e\x57\x35\x37\x64\x51\x30\x61','\x61\x43\x6b\x58\x69\x43\x6b\x46\x77\x53\x6f\x6f\x72\x71','\x57\x4f\x75\x6f\x57\x36\x4a\x63\x53\x38\x6f\x31\x57\x52\x2f\x64\x51\x5a\x57','\x57\x37\x52\x64\x48\x43\x6f\x69\x57\x35\x68\x64\x4e\x38\x6b\x4b\x74\x53\x6f\x45','\x45\x6d\x6b\x48\x57\x4f\x6a\x6a\x57\x34\x6c\x63\x4a\x32\x4b','\x6c\x53\x6f\x6d\x71\x43\x6f\x66\x74\x57','\x68\x6d\x6b\x62\x64\x6d\x6b\x4d','\x57\x37\x70\x64\x48\x43\x6f\x6d\x57\x34\x38','\x57\x36\x74\x64\x51\x43\x6f\x4c\x57\x52\x65','\x57\x37\x56\x64\x52\x43\x6f\x38\x57\x52\x56\x64\x49\x53\x6f\x33\x57\x35\x6a\x4d','\x57\x35\x30\x78\x57\x4f\x38\x43','\x6b\x53\x6b\x42\x65\x6d\x6b\x6f\x70\x57','\x77\x53\x6f\x62\x57\x50\x56\x64\x4e\x53\x6b\x33\x57\x50\x71\x4c\x57\x34\x4b','\x67\x53\x6f\x72\x41\x43\x6f\x4a\x43\x61','\x79\x48\x33\x63\x4e\x38\x6b\x78\x57\x34\x61','\x57\x34\x64\x63\x53\x43\x6f\x72\x57\x36\x6e\x64\x6e\x43\x6b\x4f\x46\x61','\x57\x37\x37\x64\x4d\x38\x6f\x31\x57\x36\x46\x64\x55\x61','\x57\x34\x78\x63\x49\x68\x68\x64\x55\x33\x34','\x64\x38\x6b\x4d\x6a\x47','\x57\x35\x64\x63\x49\x71\x68\x64\x50\x33\x4c\x5a\x71\x31\x69','\x64\x38\x6f\x56\x6d\x38\x6f\x45\x57\x50\x30\x68\x46\x47','\x73\x65\x39\x39','\x68\x6d\x6b\x4c\x69\x43\x6b\x7a','\x41\x38\x6b\x6d\x61\x48\x74\x63\x50\x71','\x78\x43\x6f\x30\x76\x67\x52\x63\x50\x6d\x6f\x77\x57\x34\x78\x64\x4e\x48\x33\x64\x4d\x75\x79\x6c\x46\x71','\x57\x51\x6c\x63\x49\x61\x70\x63\x53\x68\x4e\x63\x47\x74\x50\x4b','\x46\x53\x6f\x5a\x71\x4c\x46\x64\x4c\x61','\x70\x75\x61\x4a\x57\x36\x69','\x61\x6d\x6b\x59\x57\x35\x72\x2f\x57\x50\x47\x4a\x57\x51\x66\x57','\x57\x4f\x71\x61\x57\x36\x6c\x63\x56\x43\x6f\x5a\x57\x4f\x71','\x57\x34\x2f\x64\x51\x43\x6f\x45\x57\x51\x37\x64\x4c\x47','\x57\x36\x7a\x6a\x6c\x73\x47','\x68\x75\x4b\x6c\x57\x37\x74\x64\x4a\x61','\x46\x73\x37\x63\x51\x73\x70\x64\x4a\x47','\x43\x30\x66\x31\x63\x53\x6b\x77','\x76\x43\x6f\x59\x46\x71','\x74\x6d\x6b\x76\x6f\x72\x46\x63\x4b\x47','\x57\x36\x78\x64\x50\x38\x6f\x38\x57\x52\x65','\x70\x31\x71\x4b\x57\x36\x38','\x41\x75\x6c\x64\x50\x30\x79','\x57\x51\x61\x7a\x57\x4f\x65','\x78\x49\x64\x63\x50\x61\x30','\x63\x43\x6b\x58\x6d\x43\x6b\x58\x65\x71','\x57\x4f\x42\x64\x55\x43\x6b\x6a\x57\x52\x6d','\x6f\x66\x47\x70\x57\x37\x37\x64\x53\x57\x30\x73\x57\x34\x53','\x6b\x38\x6f\x69\x76\x6d\x6f\x6a\x74\x6d\x6f\x6d\x63\x76\x57','\x57\x36\x78\x63\x50\x66\x57\x6a\x6c\x32\x66\x4f\x57\x52\x69','\x57\x34\x50\x50\x62\x38\x6f\x77\x57\x4f\x75','\x75\x43\x6f\x39\x79\x47','\x61\x43\x6b\x34\x57\x34\x44\x56','\x57\x4f\x43\x36\x57\x37\x34','\x57\x51\x34\x6b\x57\x35\x2f\x63\x56\x43\x6f\x44','\x75\x62\x4e\x63\x54\x47','\x57\x4f\x2f\x63\x49\x5a\x4a\x63\x47\x76\x6d','\x57\x4f\x50\x4b\x71\x6d\x6f\x50','\x74\x43\x6f\x47\x74\x6d\x6f\x6c\x57\x36\x47','\x57\x34\x46\x63\x49\x74\x2f\x64\x4f\x32\x44\x2f\x77\x76\x61','\x57\x34\x70\x63\x48\x58\x37\x64\x50\x68\x61','\x78\x72\x4e\x63\x4b\x5a\x6c\x64\x4e\x61','\x44\x58\x6c\x63\x56\x38\x6b\x77\x57\x36\x69'];_0x3e86=function(){return _0x3f31f5;};return _0x3e86();}function _0x3d89b3(_0x1392ed){var _0x4ade5f=_0xe4ac66,_0x19565b={'\x75\x73\x49\x69\x41':'\x30\x7c\x34\x7c\x32\x7c\x31\x7c'+'\x33','\x68\x63\x74\x79\x45':function(_0xe7c79a,_0x5a3a92){return _0xe7c79a+_0x5a3a92;},'\x66\x66\x75\x59\x42':_0x4ade5f(0x169,'\x61\x79\x65\x53'),'\x70\x52\x6a\x47\x72':_0x4ade5f(0x14b,'\x35\x2a\x57\x51'),'\x4c\x6e\x70\x4f\x45':function(_0x45618e,_0x29beea){return _0x45618e>=_0x29beea;},'\x77\x54\x68\x78\x6b':function(_0x559c80,_0x48acd2,_0x461fca){return _0x559c80(_0x48acd2,_0x461fca);},'\x59\x61\x50\x4e\x67':_0x4ade5f(0x1c9,'\x4a\x6d\x44\x48'),'\x4e\x6c\x56\x41\x46':function(_0x12623d,_0x12b6f6){return _0x12623d(_0x12b6f6);},'\x4b\x62\x43\x51\x6c':function(_0x4fb6fb){return _0x4fb6fb();},'\x53\x57\x54\x75\x56':function(_0x4e65b4,_0x527d27){return _0x4e65b4>_0x527d27;},'\x4d\x44\x70\x67\x51':function(_0x2c92c3,_0x59fb21){return _0x2c92c3!==_0x59fb21;},'\x68\x51\x54\x41\x43':_0x4ade5f(0x179,'\x35\x2a\x57\x51'),'\x45\x55\x70\x61\x45':'\x65\x77\x4f\x79\x62','\x61\x42\x54\x7a\x78':_0x4ade5f(0x11c,'\x35\x31\x68\x40')+_0x4ade5f(0x221,'\x54\x4d\x50\x64')+_0x4ade5f(0x186,'\x59\x28\x4e\x41'),'\x49\x4e\x78\x59\x4d':function(_0xd52cfb,_0x102386){return _0xd52cfb<_0x102386;},'\x51\x76\x43\x55\x76':_0x4ade5f(0x1a9,'\x54\x77\x34\x26'),'\x6e\x65\x73\x43\x62':function(_0x2cc5d7,_0x2989ee){return _0x2cc5d7===_0x2989ee;},'\x57\x4f\x79\x4d\x69':_0x4ade5f(0x178,'\x4a\x6d\x44\x48'),'\x61\x6f\x64\x6a\x76':_0x4ade5f(0x11c,'\x35\x31\x68\x40')+_0x4ade5f(0x1b5,'\x69\x32\x6c\x23')+_0x4ade5f(0x19f,'\x4f\x23\x6b\x73')+_0x4ade5f(0x170,'\x75\x46\x34\x4e'),'\x74\x6e\x7a\x49\x65':function(_0x98d46b,_0x1dd887){return _0x98d46b>_0x1dd887;},'\x54\x62\x4b\x62\x71':function(_0x30cbe7,_0x5d93d4){return _0x30cbe7===_0x5d93d4;},'\x48\x58\x57\x61\x4e':_0x4ade5f(0x217,'\x61\x79\x65\x53'),'\x44\x79\x72\x6b\x75':function(_0x470382,_0x52a75d){return _0x470382(_0x52a75d);}},_0x223c68=Array[_0x4ade5f(0x142,'\x29\x65\x6a\x69')](_0x1392ed[_0x4ade5f(0x150,'\x59\x28\x4e\x41')+_0x4ade5f(0x1c3,'\x44\x57\x70\x6f')])?_0x1392ed[_0x4ade5f(0x15b,'\x31\x48\x34\x71')+_0x4ade5f(0x1e8,'\x48\x40\x72\x61')]:[],_0x24eb2b=_0x1392ed[_0x4ade5f(0x1fe,'\x35\x31\x68\x40')+_0x4ade5f(0x129,'\x40\x55\x48\x77')]||'',_0x479bbb=_0x1392ed[_0x4ade5f(0x15a,'\x44\x57\x70\x6f')+_0x4ade5f(0x18b,'\x29\x52\x4f\x5a')]||{},_0x487127=[];try{var _0x221003=_0x19565b[_0x4ade5f(0xf6,'\x54\x38\x32\x32')](_0x998f9a,_0x24eb2b),_0x4b3f39=_0x2ec3f4(_0x221003),_0x214885=_0x19565b[_0x4ade5f(0x1a7,'\x75\x46\x34\x4e')](_0xf13b1b);if(_0x19565b['\x53\x57\x54\x75\x56'](_0x223c68['\x6c\x65\x6e\x67\x74\x68'],-0x1d5c+0xf*0xeb+-0x133*-0xd)){if(_0x19565b[_0x4ade5f(0x12e,'\x69\x32\x6c\x23')]('\x65\x78\x49\x48\x62',_0x19565b[_0x4ade5f(0x10a,'\x65\x79\x6b\x73')]))try{var _0x36dd9e=yjsoGa[_0x4ade5f(0xf8,'\x43\x48\x36\x79')][_0x4ade5f(0x14c,'\x61\x79\x65\x53')]('\x7c'),_0x36dd51=0x2106+-0x8f6+0x8c*-0x2c;while(!![]){switch(_0x36dd9e[_0x36dd51++]){case'\x30':var _0x550a=_0xc5d6ea[_0x4ade5f(0xff,'\x42\x4e\x46\x47')](_0x9b864);continue;case'\x31':_0x5eba90[_0x4ade5f(0x10c,'\x5e\x2a\x58\x25')+_0x4ade5f(0x1c7,'\x7a\x49\x56\x31')](_0x5aa518,yjsoGa[_0x4ade5f(0x1ef,'\x23\x53\x23\x29')](_0xf902a6[_0x4ade5f(0x1ee,'\x44\x57\x70\x6f')+'\x79'](_0x3c69a6,null,-0x1b79*0x1+-0x1*-0x1532+-0x1*-0x649),'\x0a'),yjsoGa['\x66\x66\x75\x59\x42']);continue;case'\x32':var _0x5aa518=yjsoGa['\x68\x63\x74\x79\x45'](_0xb0aead,yjsoGa['\x70\x52\x6a\x47\x72']);continue;case'\x33':_0x398e34[_0x4ade5f(0x101,'\x5e\x2a\x58\x25')+'\x6e\x63'](_0x5aa518,_0x3411ef);continue;case'\x34':var _0x5eed1e={};_0x5eed1e[_0x4ade5f(0x163,'\x5e\x25\x4e\x44')+'\x65']=!![];if(!_0x59e19e[_0x4ade5f(0x110,'\x6a\x75\x77\x68')+'\x6e\x63'](_0x550a))_0xd77ac7[_0x4ade5f(0x197,'\x48\x32\x76\x4f')+'\x63'](_0x550a,_0x5eed1e);continue;}break;}}catch(_0x2feb5c){}else{var _0x2d34e3=_0x223c68[-0x382+0xa62+0x8*-0xdc],_0x490c69=_0x4b3f39[_0x4ade5f(0x11b,'\x50\x62\x6e\x32')][_0x4ade5f(0x1f0,'\x54\x77\x34\x26')](function(_0x128639){var _0x5dbc3=_0x4ade5f;return _0x19565b[_0x5dbc3(0x193,'\x6a\x75\x77\x68')](_0x128639[_0x5dbc3(0x174,'\x26\x7a\x73\x29')][_0x5dbc3(0x1f9,'\x48\x40\x72\x61')](_0x2d34e3),0xcf*-0x20+0xfcd+0xa13);});if(!_0x490c69){if(_0x19565b['\x45\x55\x70\x61\x45']===_0x4ade5f(0x124,'\x44\x57\x70\x6f')){var _0x3e5e73={};_0x3e5e73[_0x4ade5f(0xf5,'\x47\x63\x5a\x26')]=_0x58bb8d,_0x3e5e73[_0x4ade5f(0x21e,'\x31\x48\x34\x71')]=_0x3ed3e1,_0x3e5e73[_0x4ade5f(0x1d1,'\x49\x32\x35\x6d')]=_0x4abbe4[_0x4ade5f(0x1bb,'\x5e\x2a\x58\x25')],_0x180035['\x70\x75\x73\x68'](_0x3e5e73);}else _0x487127[_0x4ade5f(0x19a,'\x48\x32\x76\x4f')](_0x19565b[_0x4ade5f(0x21f,'\x6f\x35\x29\x6f')]+_0x19565b[_0x4ade5f(0x1a6,'\x4a\x6d\x44\x48')](String,_0x2d34e3)[_0x4ade5f(0x1ec,'\x59\x28\x4e\x41')](-0x1e*-0x6d+-0xf20+-0x1*-0x25a,0xba5+-0x1*0x256f+0x1a06));}}}if(_0x19565b[_0x4ade5f(0x1e0,'\x5e\x25\x4e\x44')](_0x487127[_0x4ade5f(0x11a,'\x54\x77\x34\x26')],_0x36c109)&&_0x4b3f39[_0x4ade5f(0x102,'\x42\x4e\x46\x47')][_0x4ade5f(0x1e1,'\x39\x56\x30\x30')]>0x88a+-0x1a7a+0x11f0){if(_0x19565b[_0x4ade5f(0x160,'\x7a\x49\x56\x31')]===_0x4ade5f(0x140,'\x54\x38\x32\x32')){var _0x10f3d9=_0x4b3f39[_0x4ade5f(0x1c8,'\x6f\x35\x29\x6f')][0x3*-0x52d+0x1*0x1e75+-0xeee],_0x26a03c=_0x487127[_0x4ade5f(0x21a,'\x35\x31\x68\x40')](function(_0x424b78){var _0x362d19=_0x4ade5f;return _0x19565b[_0x362d19(0xfc,'\x47\x63\x5a\x26')](_0x424b78[_0x362d19(0x122,'\x4a\x6d\x44\x48')](_0x10f3d9[_0x362d19(0x21d,'\x54\x77\x34\x26')]),-0x3*-0x283+-0x277*0xe+0x1af9);});if(!_0x26a03c){if(_0x19565b[_0x4ade5f(0x13f,'\x4f\x6b\x45\x73')](_0x19565b[_0x4ade5f(0x1b0,'\x29\x52\x4f\x5a')],_0x19565b[_0x4ade5f(0x189,'\x54\x4d\x50\x64')]))_0x487127['\x70\x75\x73\x68'](_0x19565b[_0x4ade5f(0x1da,'\x69\x32\x6c\x23')](_0x19565b[_0x4ade5f(0x1ba,'\x69\x26\x70\x70')],String(_0x10f3d9[_0x4ade5f(0x1af,'\x39\x56\x30\x30')])['\x73\x6c\x69\x63\x65'](-0x422*0x1+-0x55d*0x1+0xbb*0xd,-0x254a+-0x23*-0xb0+0xd76)));else{var _0x33b2a2={};_0x33b2a2[_0x4ade5f(0x1af,'\x39\x56\x30\x30')]=_0x15d844,_0x33b2a2[_0x4ade5f(0x1d5,'\x54\x38\x32\x32')]=_0x310397,_0x33b2a2[_0x4ade5f(0x17d,'\x69\x26\x70\x70')]=_0x2fc855[_0x4ade5f(0x17d,'\x69\x26\x70\x70')],_0x50c5eb[_0x4ade5f(0x210,'\x54\x4d\x50\x64')](_0x33b2a2);}}}else _0x4ab44e[_0x4ade5f(0x128,'\x6a\x75\x77\x68')+'\x61\x74']=new _0x39575c()[_0x4ade5f(0x166,'\x48\x32\x76\x4f')+'\x69\x6e\x67'](),yjsoGa[_0x4ade5f(0x215,'\x43\x72\x37\x24')](_0x127ecd,_0x342deb(),_0x54f923);}if(_0x19565b[_0x4ade5f(0x134,'\x29\x52\x4f\x5a')](_0x487127[_0x4ade5f(0x130,'\x6f\x35\x29\x6f')],-0x2*-0xc19+0x5*0xd6+-0x1c60)){if(_0x19565b[_0x4ade5f(0xfb,'\x23\x53\x23\x29')](_0x19565b[_0x4ade5f(0x145,'\x5d\x23\x65\x31')],_0x19565b[_0x4ade5f(0x105,'\x72\x37\x64\x48')]))_0x214885[_0x4ade5f(0x188,'\x29\x65\x6a\x69')+_0x4ade5f(0x1c5,'\x5d\x23\x65\x31')]=_0x487127['\x73\x6c\x69\x63\x65'](),_0x214885[_0x4ade5f(0x191,'\x4a\x53\x37\x6c')]=Math[_0x4ade5f(0x218,'\x43\x48\x36\x79')](-0x1b35+0x42*-0x16+0x20e2,Math[_0x4ade5f(0xf3,'\x2a\x79\x5a\x5a')](0x1aab+0x5*-0x59f+-0x175*-0x1,_0x214885['\x6c\x65\x76\x65\x6c'])),_0x19565b[_0x4ade5f(0x1a5,'\x4f\x23\x6b\x73')](_0x361c0e,_0x214885);else return _0x5f2ffb[_0x4ade5f(0x1e6,'\x56\x6b\x51\x47')]===_0x19565b[_0x4ade5f(0x203,'\x47\x63\x5a\x26')];}}catch(_0x23f5d3){}return _0x487127['\x73\x6c\x69\x63\x65'](0x7*0x2bb+-0x1e01+0x22*0x52,_0x36c109);}function _0x3858f4(_0x9eaf0d,_0x5297e7){var _0x4391e1=_0xe4ac66,_0x493ced={'\x4b\x52\x5a\x43\x68':function(_0x1b4d0a,_0x147a75){return _0x1b4d0a>=_0x147a75;},'\x6e\x4b\x4c\x4f\x44':_0x4391e1(0x1f5,'\x63\x38\x44\x24')+_0x4391e1(0x144,'\x50\x62\x6e\x32')+_0x4391e1(0x1c4,'\x50\x62\x6e\x32'),'\x59\x47\x46\x74\x47':function(_0x318758,_0x2d8b72){return _0x318758(_0x2d8b72);},'\x78\x77\x67\x70\x67':function(_0x315356,_0x593ed9){return _0x315356!==_0x593ed9;},'\x66\x6f\x69\x59\x75':_0x4391e1(0x106,'\x4f\x6b\x45\x73'),'\x48\x66\x65\x77\x73':_0x4391e1(0x165,'\x7a\x49\x56\x31'),'\x63\x71\x4f\x6d\x49':function(_0xfa2806){return _0xfa2806();},'\x6f\x77\x49\x67\x6b':function(_0x1b53d6,_0x46bc25){return _0x1b53d6(_0x46bc25);},'\x48\x48\x55\x6a\x4d':function(_0x4832e7,_0x421b13){return _0x4832e7>_0x421b13;},'\x79\x63\x67\x6f\x52':function(_0x5ae279,_0x5bef8f){return _0x5ae279<_0x5bef8f;}};try{var _0x3d01e2=_0x493ced[_0x4391e1(0x10e,'\x2a\x79\x5a\x5a')](_0xf13b1b);if(!Array[_0x4391e1(0x16b,'\x56\x6b\x51\x47')](_0x3d01e2[_0x4391e1(0x20e,'\x54\x38\x32\x32')+'\x64']))_0x3d01e2[_0x4391e1(0x12d,'\x7a\x49\x56\x31')+'\x64']=[];_0x3d01e2[_0x4391e1(0x1f1,'\x63\x38\x44\x24')+'\x64'][_0x4391e1(0x19a,'\x48\x32\x76\x4f')]({'\x73\x69\x67\x6e\x61\x6c':_0x493ced[_0x4391e1(0x1e5,'\x4a\x6d\x44\x48')](String,_0x9eaf0d)[_0x4391e1(0x1cd,'\x49\x32\x35\x6d')](-0x977*-0x1+0x16fd+-0x2074,0x1c4a+-0x1183+-0x1*0xa63),'\x6f\x75\x74\x63\x6f\x6d\x65':String(_0x5297e7)[_0x4391e1(0x12a,'\x39\x56\x30\x30')](0x22*-0x26+0x630+-0x1*0x124,-0x1f*-0x36+0x447+-0xabd),'\x61\x74':new Date()['\x74\x6f\x49\x53\x4f\x53\x74\x72'+_0x4391e1(0x18e,'\x29\x52\x4f\x5a')]()});if(_0x3d01e2[_0x4391e1(0x11f,'\x4a\x6d\x44\x48')+'\x64'][_0x4391e1(0xfe,'\x54\x38\x32\x32')]>-0x2*-0x1062+-0x163*0x1a+-0x2*-0x1be)_0x3d01e2[_0x4391e1(0x117,'\x48\x32\x76\x4f')+'\x64']=_0x3d01e2[_0x4391e1(0x152,'\x65\x59\x50\x25')+'\x64'][_0x4391e1(0x17b,'\x48\x40\x72\x61')](-(-0x1*-0x183f+-0x1*-0x2e1+-0x1aee));var _0x15dae8=_0x3d01e2[_0x4391e1(0x1ca,'\x65\x79\x6b\x73')+'\x64'][_0x4391e1(0x168,'\x4f\x6b\x45\x73')](function(_0x3289b3){var _0x1fa9af=_0x4391e1,_0x49f7e9={'\x69\x63\x53\x6e\x76':function(_0x984b3,_0x87a6c5){var _0x4a0196=_0x181f;return _0x493ced[_0x4a0196(0x15d,'\x43\x72\x37\x24')](_0x984b3,_0x87a6c5);},'\x71\x57\x42\x75\x5a':_0x493ced[_0x1fa9af(0x17a,'\x26\x7a\x73\x29')],'\x4f\x75\x47\x66\x45':function(_0x5be58a,_0x45d262){var _0x5cb19d=_0x1fa9af;return _0x493ced[_0x5cb19d(0x151,'\x48\x40\x72\x61')](_0x5be58a,_0x45d262);}};if(_0x493ced[_0x1fa9af(0x158,'\x5e\x25\x4e\x44')](_0x493ced[_0x1fa9af(0x1d7,'\x44\x57\x70\x6f')],_0x493ced[_0x1fa9af(0x1ea,'\x7a\x49\x56\x31')]))return _0x3289b3[_0x1fa9af(0x1f6,'\x59\x28\x4e\x41')]==='\x73\x75\x63\x63\x65\x73\x73';else{var _0x4d000f={'\x44\x59\x4f\x58\x4a':function(_0x21b480,_0x5c4698){var _0x513f17=_0x1fa9af;return yIPKWY[_0x513f17(0x1a8,'\x43\x48\x36\x79')](_0x21b480,_0x5c4698);}},_0xbfb283=_0x2d423a[-0x15ce+0x9e8*0x3+0x3f5*-0x2],_0x408bf6=_0x2c8956[_0x1fa9af(0x204,'\x29\x65\x6a\x69')][_0x1fa9af(0x1d2,'\x61\x79\x65\x53')](function(_0x3f2422){var _0x4b5f6c=_0x1fa9af;return _0x4d000f[_0x4b5f6c(0xf4,'\x2a\x79\x5a\x5a')](_0x3f2422[_0x4b5f6c(0x138,'\x50\x62\x6e\x32')][_0x4b5f6c(0x100,'\x65\x59\x50\x25')](_0xbfb283),-0xdcc*-0x2+0x871+-0x267*0xf);});!_0x408bf6&&_0x580de9[_0x1fa9af(0x12f,'\x35\x31\x68\x40')](yIPKWY[_0x1fa9af(0x182,'\x2a\x79\x5a\x5a')]+yIPKWY['\x4f\x75\x47\x66\x45'](_0x233be3,_0xbfb283)[_0x1fa9af(0x135,'\x78\x4e\x6c\x5a')](0x1eb*-0xf+-0x157a+0x1*0x323f,0x1*0x1553+-0x2*0xcaf+0x447));}})[_0x4391e1(0x131,'\x62\x2a\x79\x59')];_0x493ced[_0x4391e1(0x17f,'\x59\x28\x4e\x41')](_0x15dae8,-0x2611+-0x16c2+0x3cd3)&&_0x15dae8%(0x4*-0x19+-0x349*0x5+0x10d6)===-0x7e5+0xa*-0x2c+-0x99d*-0x1&&_0x493ced[_0x4391e1(0x18f,'\x48\x32\x76\x4f')](_0x3d01e2['\x6c\x65\x76\x65\x6c'],-0x243a+-0x1805+0x3c44)&&_0x3d01e2[_0x4391e1(0x13a,'\x43\x72\x37\x24')]++,_0x493ced['\x6f\x77\x49\x67\x6b'](_0x361c0e,_0x3d01e2);}catch(_0x515cad){}}var _0x4fe155={};_0x4fe155[_0xe4ac66(0x10d,'\x5e\x25\x4e\x44')+'\x43\x75\x72\x72\x69\x63\x75\x6c'+_0xe4ac66(0x155,'\x4f\x23\x6b\x73')+'\x73']=_0x3d89b3,_0x4fe155[_0xe4ac66(0x201,'\x56\x6b\x51\x47')+'\x69\x63\x75\x6c\x75\x6d\x50\x72'+_0xe4ac66(0x1cf,'\x4f\x6b\x45\x73')]=_0x3858f4,_0x4fe155['\x6c\x6f\x61\x64\x43\x75\x72\x72'+_0xe4ac66(0x154,'\x48\x40\x72\x61')+'\x61\x74\x65']=_0xf13b1b,module[_0xe4ac66(0x109,'\x47\x63\x5a\x26')]=_0x4fe155;
1
+ 'use strict';
2
+
3
+ const fs = require('fs');
4
+ const path = require('path');
5
+ const { getEvolutionDir, getMemoryDir } = require('./paths');
6
+
7
+ var MASTERY_THRESHOLD = 0.8;
8
+ var MASTERY_MIN_ATTEMPTS = 3;
9
+ var FAILURE_THRESHOLD = 0.3;
10
+ var MAX_CURRICULUM_SIGNALS = 2;
11
+
12
+ function curriculumStatePath() {
13
+ return path.join(getEvolutionDir(), 'curriculum_state.json');
14
+ }
15
+
16
+ function readJsonSafe(filePath, fallback) {
17
+ try {
18
+ if (!fs.existsSync(filePath)) return fallback;
19
+ var raw = fs.readFileSync(filePath, 'utf8');
20
+ if (!raw.trim()) return fallback;
21
+ return JSON.parse(raw);
22
+ } catch (_) {
23
+ return fallback;
24
+ }
25
+ }
26
+
27
+ function writeJsonAtomic(filePath, obj) {
28
+ try {
29
+ var dir = path.dirname(filePath);
30
+ if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
31
+ var tmp = filePath + '.tmp';
32
+ fs.writeFileSync(tmp, JSON.stringify(obj, null, 2) + '\n', 'utf8');
33
+ fs.renameSync(tmp, filePath);
34
+ } catch (_) {}
35
+ }
36
+
37
+ function loadCurriculumState() {
38
+ return readJsonSafe(curriculumStatePath(), {
39
+ level: 1,
40
+ current_targets: [],
41
+ completed: [],
42
+ updated_at: null,
43
+ });
44
+ }
45
+
46
+ function saveCurriculumState(state) {
47
+ state.updated_at = new Date().toISOString();
48
+ writeJsonAtomic(curriculumStatePath(), state);
49
+ }
50
+
51
+ function aggregateOutcomes(memoryGraphPath) {
52
+ var outcomes = {};
53
+ try {
54
+ if (!fs.existsSync(memoryGraphPath)) return outcomes;
55
+ var lines = fs.readFileSync(memoryGraphPath, 'utf8').trim().split('\n').filter(Boolean);
56
+ var recent = lines.slice(-200);
57
+ for (var i = 0; i < recent.length; i++) {
58
+ try {
59
+ var ev = JSON.parse(recent[i]);
60
+ if (ev.kind !== 'outcome' || !ev.outcome) continue;
61
+ var key = ev.signal_key || ev.key || '';
62
+ if (!key) continue;
63
+ if (!outcomes[key]) outcomes[key] = { success: 0, fail: 0, total: 0 };
64
+ if (ev.outcome.status === 'success') outcomes[key].success++;
65
+ else if (ev.outcome.status === 'failed') outcomes[key].fail++;
66
+ outcomes[key].total++;
67
+ } catch (_) {}
68
+ }
69
+ } catch (_) {}
70
+ return outcomes;
71
+ }
72
+
73
+ function identifyFrontier(outcomes) {
74
+ var mastered = [];
75
+ var failing = [];
76
+ var frontier = [];
77
+
78
+ var keys = Object.keys(outcomes);
79
+ for (var i = 0; i < keys.length; i++) {
80
+ var k = keys[i];
81
+ var o = outcomes[k];
82
+ if (o.total < 2) continue;
83
+ var rate = o.success / o.total;
84
+ if (rate >= MASTERY_THRESHOLD && o.total >= MASTERY_MIN_ATTEMPTS) {
85
+ mastered.push({ key: k, rate: rate, total: o.total });
86
+ } else if (rate <= FAILURE_THRESHOLD && o.total >= 2) {
87
+ failing.push({ key: k, rate: rate, total: o.total });
88
+ } else {
89
+ frontier.push({ key: k, rate: rate, total: o.total });
90
+ }
91
+ }
92
+
93
+ frontier.sort(function (a, b) {
94
+ return Math.abs(a.rate - 0.5) - Math.abs(b.rate - 0.5);
95
+ });
96
+
97
+ return { mastered: mastered, failing: failing, frontier: frontier };
98
+ }
99
+
100
+ function generateCurriculumSignals(opts) {
101
+ var capabilityGaps = Array.isArray(opts.capabilityGaps) ? opts.capabilityGaps : [];
102
+ var memoryGraphPath = opts.memoryGraphPath || '';
103
+ var personality = opts.personality || {};
104
+
105
+ var signals = [];
106
+
107
+ try {
108
+ var outcomes = aggregateOutcomes(memoryGraphPath);
109
+ var analysis = identifyFrontier(outcomes);
110
+ var state = loadCurriculumState();
111
+
112
+ if (capabilityGaps.length > 0) {
113
+ var gapTarget = capabilityGaps[0];
114
+ var alreadyMastered = analysis.mastered.some(function (m) {
115
+ return m.key.indexOf(gapTarget) >= 0;
116
+ });
117
+ if (!alreadyMastered) {
118
+ signals.push('curriculum_target:gap:' + String(gapTarget).slice(0, 60));
119
+ }
120
+ }
121
+
122
+ if (signals.length < MAX_CURRICULUM_SIGNALS && analysis.frontier.length > 0) {
123
+ var best = analysis.frontier[0];
124
+ var alreadyTargeted = signals.some(function (s) { return s.indexOf(best.key) >= 0; });
125
+ if (!alreadyTargeted) {
126
+ signals.push('curriculum_target:frontier:' + String(best.key).slice(0, 60));
127
+ }
128
+ }
129
+
130
+ if (signals.length > 0) {
131
+ state.current_targets = signals.slice();
132
+ state.level = Math.max(1, Math.min(5, state.level));
133
+ saveCurriculumState(state);
134
+ }
135
+ } catch (_) {}
136
+
137
+ return signals.slice(0, MAX_CURRICULUM_SIGNALS);
138
+ }
139
+
140
+ function markCurriculumProgress(signal, outcome) {
141
+ try {
142
+ var state = loadCurriculumState();
143
+ if (!Array.isArray(state.completed)) state.completed = [];
144
+ state.completed.push({
145
+ signal: String(signal).slice(0, 100),
146
+ outcome: String(outcome).slice(0, 20),
147
+ at: new Date().toISOString(),
148
+ });
149
+ if (state.completed.length > 50) state.completed = state.completed.slice(-50);
150
+
151
+ var successCount = state.completed.filter(function (c) { return c.outcome === 'success'; }).length;
152
+ if (successCount > 0 && successCount % 5 === 0 && state.level < 5) {
153
+ state.level++;
154
+ }
155
+ saveCurriculumState(state);
156
+ } catch (_) {}
157
+ }
158
+
159
+ module.exports = {
160
+ generateCurriculumSignals: generateCurriculumSignals,
161
+ markCurriculumProgress: markCurriculumProgress,
162
+ loadCurriculumState: loadCurriculumState,
163
+ };
@@ -1 +1,218 @@
1
- const _0x2032fd=_0x5f2e;(function(_0x489c5f,_0x68c300){const _0x5d04ba=_0x5f2e,_0x283d87=_0x489c5f();while(!![]){try{const _0x2b26a5=-parseInt(_0x5d04ba(0xcd,'\x77\x64\x6a\x39'))/(0xf49+-0x17*-0xd4+-0x2254)+parseInt(_0x5d04ba(0x16f,'\x50\x46\x40\x5b'))/(0x1369*0x1+0x2210+-0x3577)+parseInt(_0x5d04ba(0x17c,'\x58\x56\x59\x66'))/(0xbf8+0x2396+0x2f8b*-0x1)+-parseInt(_0x5d04ba(0x9e,'\x71\x34\x5e\x44'))/(-0x7c*-0xa+-0x8d5+0x401)*(parseInt(_0x5d04ba(0xc7,'\x73\x7a\x52\x45'))/(0x252+0x7e8+-0xa35))+parseInt(_0x5d04ba(0x9a,'\x78\x37\x4b\x36'))/(-0x1c12*-0x1+-0x4fd+-0x170f)*(parseInt(_0x5d04ba(0x135,'\x57\x45\x24\x2a'))/(0x13b4+-0x1*0x1e0a+-0xa5d*-0x1))+parseInt(_0x5d04ba(0x98,'\x37\x23\x72\x4b'))/(-0x119f+-0x641+0x88*0x2d)*(parseInt(_0x5d04ba(0x8e,'\x23\x65\x6b\x75'))/(0x9f2+-0x8a4+0x5*-0x41))+-parseInt(_0x5d04ba(0x145,'\x6e\x31\x5a\x74'))/(-0x214d+0xad*-0xe+0x1*0x2acd);if(_0x2b26a5===_0x68c300)break;else _0x283d87['push'](_0x283d87['shift']());}catch(_0x422f09){_0x283d87['push'](_0x283d87['shift']());}}}(_0x44d1,0xd*-0x117a8+0x5dd3a+0x2*0x858b6));const _0x43d101=(function(){const _0x110538=_0x5f2e,_0x45fb5f={};_0x45fb5f['\x66\x76\x7a\x4c\x48']=function(_0x29a22e,_0x37629e){return _0x29a22e!==_0x37629e;},_0x45fb5f[_0x110538(0x165,'\x64\x79\x4f\x6c')]=_0x110538(0x1c1,'\x6c\x6c\x54\x32'),_0x45fb5f[_0x110538(0x1e0,'\x50\x46\x40\x5b')]=_0x110538(0x14e,'\x73\x7a\x52\x45'),_0x45fb5f[_0x110538(0x1b1,'\x5e\x28\x40\x72')]=function(_0x3862c4,_0x2c3e91){return _0x3862c4+_0x2c3e91;},_0x45fb5f['\x64\x4e\x42\x44\x59']=_0x110538(0xbf,'\x5e\x28\x40\x72');const _0x145d01=_0x45fb5f;let _0x115974=!![];return function(_0x49a692,_0x677764){const _0x16857f=_0x110538,_0x1da598={'\x77\x4a\x69\x4b\x72':_0x145d01[_0x16857f(0x10b,'\x33\x5b\x64\x46')],'\x67\x68\x74\x70\x71':function(_0x3665a8,_0x5e9fda){const _0x6645a1=_0x16857f;return _0x145d01[_0x6645a1(0x15f,'\x74\x53\x64\x31')](_0x3665a8,_0x5e9fda);},'\x6f\x65\x76\x43\x46':_0x145d01[_0x16857f(0x15b,'\x58\x56\x59\x66')]},_0x455bd1=_0x115974?function(){const _0x5387d2=_0x16857f;if(_0x677764){if(_0x145d01[_0x5387d2(0x108,'\x57\x45\x24\x2a')](_0x145d01[_0x5387d2(0x19b,'\x74\x53\x64\x31')],_0x5387d2(0x140,'\x33\x75\x2a\x52'))){const _0x345a31=_0x677764['\x61\x70\x70\x6c\x79'](_0x49a692,arguments);return _0x677764=null,_0x345a31;}else return _0xcd981c[_0x5387d2(0xe0,'\x26\x26\x32\x28')+'\x73\x68'](_0x1da598[_0x5387d2(0xb3,'\x33\x24\x78\x4a')])[_0x5387d2(0x14b,'\x30\x66\x53\x24')](_0x1da598['\x67\x68\x74\x70\x71'](_0x5387d2(0x9b,'\x67\x74\x43\x54'),_0xf09ebb))[_0x5387d2(0x172,'\x59\x41\x6a\x43')](_0x1da598[_0x5387d2(0xce,'\x61\x58\x52\x32')])[_0x5387d2(0x1cd,'\x34\x24\x5d\x50')](0x60d*-0x5+-0xc7*-0x20+-0x9*-0x99,-0x41a+0x5a+-0x4*-0xf8);}}:function(){};return _0x115974=![],_0x455bd1;};}()),_0x580ee3=_0x43d101(this,function(){const _0x37f6d0=_0x5f2e,_0x59e006={};_0x59e006[_0x37f6d0(0xa3,'\x69\x58\x32\x67')]=_0x37f6d0(0xfc,'\x4e\x40\x69\x6b')+'\x2b\x29\x2b\x24';const _0x3cfab3=_0x59e006;return _0x580ee3[_0x37f6d0(0xff,'\x63\x6c\x5a\x43')]()[_0x37f6d0(0x16a,'\x33\x75\x2a\x52')](_0x3cfab3['\x51\x6c\x43\x63\x74'])[_0x37f6d0(0xfb,'\x50\x46\x40\x5b')]()['\x63\x6f\x6e\x73\x74\x72\x75\x63'+_0x37f6d0(0x1da,'\x71\x34\x5e\x44')](_0x580ee3)[_0x37f6d0(0x19c,'\x5e\x28\x40\x72')](_0x3cfab3[_0x37f6d0(0x14f,'\x64\x79\x4f\x6c')]);});_0x580ee3();const _0x796217=require('\x6f\x73'),_0x5279d3=require('\x66\x73'),_0x430b5c=require(_0x2032fd(0x143,'\x67\x74\x43\x54')),_0x3f3536=require(_0x2032fd(0x18a,'\x41\x4b\x35\x44')),{getEvomapDir:_0x156fc4}=require(_0x2032fd(0x11b,'\x58\x36\x49\x5d'));function _0x48d021(){const _0x465263={'\x47\x6d\x58\x72\x54':function(_0xdb329b){return _0xdb329b();}};return _0x465263['\x47\x6d\x58\x72\x54'](_0x156fc4);}function _0x586a70(){const _0x324377=_0x2032fd,_0x1c842f={'\x6c\x57\x68\x6a\x71':function(_0x576c9d){return _0x576c9d();}};return _0x430b5c['\x6a\x6f\x69\x6e'](_0x1c842f[_0x324377(0xaa,'\x30\x66\x53\x24')](_0x48d021),_0x324377(0x107,'\x28\x4c\x42\x49')+'\x64');}function _0x5f2e(_0x2faa5c,_0x57e8b2){_0x2faa5c=_0x2faa5c-(-0x8c3+0xf2*-0x1+0xa38*0x1);const _0x5c9c82=_0x44d1();let _0x1d464e=_0x5c9c82[_0x2faa5c];if(_0x5f2e['\x51\x73\x66\x73\x54\x58']===undefined){var _0x5a75c1=function(_0x132674){const _0x31228b='\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 _0xdcadc4='',_0x1127f8='',_0x7ed61c=_0xdcadc4+_0x5a75c1,_0x597063=(''+function(){return 0xacb+-0x19*-0x167+-0x2dda;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(-0xc3c+0x1ab3+-0xe76);for(let _0x2ca3bb=-0x14ae+-0x1*0x2234+-0x32*-0x119,_0x1ae5b0,_0x40c27b,_0x32ea58=0x129f+0x1089+-0x2328;_0x40c27b=_0x132674['\x63\x68\x61\x72\x41\x74'](_0x32ea58++);~_0x40c27b&&(_0x1ae5b0=_0x2ca3bb%(0x225b+-0x153f+-0xd18)?_0x1ae5b0*(0x227*-0x3+0x1d08+0x7f*-0x2d)+_0x40c27b:_0x40c27b,_0x2ca3bb++%(0x1*-0xa21+0x821+0x2b*0xc))?_0xdcadc4+=_0x597063||_0x7ed61c['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x32ea58+(0xbf*-0xd+-0x172+-0x7*-0x199))-(-0x236b+0x1a04+0x971)!==0x135f+0x92f+-0x2b*0xaa?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x227f+0x3*0x107+0x2069*0x1&_0x1ae5b0>>(-(0x873+0x1bcd+-0x243e)*_0x2ca3bb&-0x1*0x1673+0x8b6+-0x10f*-0xd)):_0x2ca3bb:0x1462+0x10d1+0x59*-0x6b){_0x40c27b=_0x31228b['\x69\x6e\x64\x65\x78\x4f\x66'](_0x40c27b);}for(let _0x1f9b24=0xfea+-0x249b+0x14b1,_0x1f8358=_0xdcadc4['\x6c\x65\x6e\x67\x74\x68'];_0x1f9b24<_0x1f8358;_0x1f9b24++){_0x1127f8+='\x25'+('\x30\x30'+_0xdcadc4['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x1f9b24)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](-0x3*0xa99+0xe42+0x1199))['\x73\x6c\x69\x63\x65'](-(0x862+-0x849+-0x17));}return decodeURIComponent(_0x1127f8);};const _0xe259cf=function(_0x2e5a98,_0x2fc770){let _0x341d9b=[],_0x2863fd=0x4*-0x33e+0x41d*0x3+0xa1,_0x2b143f,_0x1351a8='';_0x2e5a98=_0x5a75c1(_0x2e5a98);let _0x2c90ba;for(_0x2c90ba=-0x193e+0x1c8b*-0x1+0x31*0x119;_0x2c90ba<-0x26b9+-0x2044+0x1*0x47fd;_0x2c90ba++){_0x341d9b[_0x2c90ba]=_0x2c90ba;}for(_0x2c90ba=-0x147c+-0xd01+0x217d;_0x2c90ba<0x1386+0x1de2+0x4*-0xc1a;_0x2c90ba++){_0x2863fd=(_0x2863fd+_0x341d9b[_0x2c90ba]+_0x2fc770['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x2c90ba%_0x2fc770['\x6c\x65\x6e\x67\x74\x68']))%(-0x40f*0x5+0x1bfc+-0x6b1),_0x2b143f=_0x341d9b[_0x2c90ba],_0x341d9b[_0x2c90ba]=_0x341d9b[_0x2863fd],_0x341d9b[_0x2863fd]=_0x2b143f;}_0x2c90ba=0x1*0x210d+0x231e+0x442b*-0x1,_0x2863fd=0x144d+0x1fb4+0x1*-0x3401;for(let _0x46f7fc=-0x2*-0xdbb+0x99f+-0x2515;_0x46f7fc<_0x2e5a98['\x6c\x65\x6e\x67\x74\x68'];_0x46f7fc++){_0x2c90ba=(_0x2c90ba+(-0x954+0x15d3*0x1+-0xc7e))%(0x6*-0x59c+-0x127*-0x1+0x2181),_0x2863fd=(_0x2863fd+_0x341d9b[_0x2c90ba])%(0x247c+0x47*-0x5+0x2219*-0x1),_0x2b143f=_0x341d9b[_0x2c90ba],_0x341d9b[_0x2c90ba]=_0x341d9b[_0x2863fd],_0x341d9b[_0x2863fd]=_0x2b143f,_0x1351a8+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x2e5a98['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x46f7fc)^_0x341d9b[(_0x341d9b[_0x2c90ba]+_0x341d9b[_0x2863fd])%(0x1367*-0x2+-0x3f1*0x2+0xe*0x368)]);}return _0x1351a8;};_0x5f2e['\x48\x44\x4b\x56\x47\x47']=_0xe259cf,_0x5f2e['\x6b\x4d\x54\x4d\x7a\x57']={},_0x5f2e['\x51\x73\x66\x73\x54\x58']=!![];}const _0x5bdaf0=_0x5c9c82[-0x167a+-0x2108+0x3782],_0x178980=_0x2faa5c+_0x5bdaf0,_0x1f5f32=_0x5f2e['\x6b\x4d\x54\x4d\x7a\x57'][_0x178980];if(!_0x1f5f32){if(_0x5f2e['\x61\x71\x41\x4d\x54\x4d']===undefined){const _0x2f069b=function(_0x410d45){this['\x79\x69\x67\x4f\x51\x66']=_0x410d45,this['\x69\x70\x5a\x5a\x66\x58']=[-0x1e7*-0x5+-0xb23+0x1a1,-0xfa4+0xacc*-0x1+-0x34e*-0x8,0x11d+0x15a7+-0x16c4],this['\x52\x6a\x6e\x78\x70\x49']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x5a\x78\x79\x75\x55\x66']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x45\x44\x46\x4f\x4b\x4e']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x2f069b['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x71\x62\x51\x74\x72\x72']=function(){const _0x431c72=new RegExp(this['\x5a\x78\x79\x75\x55\x66']+this['\x45\x44\x46\x4f\x4b\x4e']),_0x5255c6=_0x431c72['\x74\x65\x73\x74'](this['\x52\x6a\x6e\x78\x70\x49']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x69\x70\x5a\x5a\x66\x58'][0x1690+0x11*0x1+-0x16a0]:--this['\x69\x70\x5a\x5a\x66\x58'][0x5eb+0x5f8*-0x5+0x17ed];return this['\x45\x66\x77\x52\x58\x4f'](_0x5255c6);},_0x2f069b['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x45\x66\x77\x52\x58\x4f']=function(_0x4db924){if(!Boolean(~_0x4db924))return _0x4db924;return this['\x4c\x52\x50\x56\x70\x72'](this['\x79\x69\x67\x4f\x51\x66']);},_0x2f069b['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x4c\x52\x50\x56\x70\x72']=function(_0x2c3a31){for(let _0x20cb46=-0x4*0x65a+0x2*0xcb6+0x1*-0x4,_0x1030d9=this['\x69\x70\x5a\x5a\x66\x58']['\x6c\x65\x6e\x67\x74\x68'];_0x20cb46<_0x1030d9;_0x20cb46++){this['\x69\x70\x5a\x5a\x66\x58']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x1030d9=this['\x69\x70\x5a\x5a\x66\x58']['\x6c\x65\x6e\x67\x74\x68'];}return _0x2c3a31(this['\x69\x70\x5a\x5a\x66\x58'][-0x81e*0x1+0x1add+-0x12bf*0x1]);},(''+function(){return 0x895+-0x1c1*-0x5+0x2*-0x8ad;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(-0x1b2f*-0x1+-0x15*0x10c+-0x5*0x10a)&&new _0x2f069b(_0x5f2e)['\x71\x62\x51\x74\x72\x72'](),_0x5f2e['\x61\x71\x41\x4d\x54\x4d']=!![];}_0x1d464e=_0x5f2e['\x48\x44\x4b\x56\x47\x47'](_0x1d464e,_0x57e8b2),_0x5f2e['\x6b\x4d\x54\x4d\x7a\x57'][_0x178980]=_0x1d464e;}else _0x1d464e=_0x1f5f32;return _0x1d464e;}const _0x3872d3=_0x430b5c[_0x2032fd(0xa8,'\x37\x23\x72\x4b')](__dirname,'\x2e\x2e','\x2e\x2e',_0x2032fd(0x18e,'\x77\x64\x6a\x39')+_0x2032fd(0x19f,'\x65\x4f\x54\x56')+'\x64');let _0x3b9680=null;const _0x2e52e5=/^[a-f0-9]{16,64}$/;function _0x119310(){const _0x5e90c3=_0x2032fd,_0x1c2aac={};_0x1c2aac[_0x5e90c3(0x17b,'\x5a\x44\x44\x4d')]=function(_0x3a8a6d,_0x281da7){return _0x3a8a6d+_0x281da7;},_0x1c2aac['\x6a\x72\x47\x44\x50']=_0x5e90c3(0x84,'\x71\x34\x5e\x44'),_0x1c2aac[_0x5e90c3(0xd0,'\x33\x24\x78\x4a')]=function(_0x33acbf,_0xed97d8){return _0x33acbf+_0xed97d8;},_0x1c2aac[_0x5e90c3(0xdb,'\x57\x45\x24\x2a')]=_0x5e90c3(0x114,'\x26\x26\x32\x28'),_0x1c2aac[_0x5e90c3(0xfe,'\x26\x26\x32\x28')]=_0x5e90c3(0x133,'\x67\x74\x43\x54'),_0x1c2aac[_0x5e90c3(0xcf,'\x58\x56\x59\x66')]=function(_0x4f380a,_0xd0ebcb){return _0x4f380a===_0xd0ebcb;},_0x1c2aac[_0x5e90c3(0xed,'\x23\x65\x6b\x75')]=_0x5e90c3(0x85,'\x58\x36\x49\x5d'),_0x1c2aac[_0x5e90c3(0x1e8,'\x50\x46\x40\x5b')]=_0x5e90c3(0x1df,'\x28\x4c\x42\x49'),_0x1c2aac[_0x5e90c3(0x89,'\x6e\x31\x5a\x74')]=_0x5e90c3(0xa0,'\x28\x31\x6a\x72')+_0x5e90c3(0x13f,'\x5e\x28\x40\x72'),_0x1c2aac['\x79\x66\x6d\x62\x6e']=_0x5e90c3(0xe9,'\x37\x5b\x4e\x51')+_0x5e90c3(0x157,'\x43\x33\x40\x74'),_0x1c2aac[_0x5e90c3(0xba,'\x65\x4f\x54\x56')]=_0x5e90c3(0xe5,'\x67\x74\x43\x54'),_0x1c2aac[_0x5e90c3(0x1b2,'\x78\x37\x4b\x36')]=_0x5e90c3(0xe6,'\x30\x66\x53\x24')+_0x5e90c3(0x1bd,'\x6c\x6c\x54\x32')+'\x6e\x76';const _0x5537fa=_0x1c2aac;try{if(_0x5537fa[_0x5e90c3(0xfd,'\x74\x53\x64\x31')](_0x5537fa[_0x5e90c3(0x116,'\x6e\x31\x5a\x74')],_0x5537fa[_0x5e90c3(0x1a5,'\x4f\x47\x30\x24')])){const _0x301b12=_0x5537fa[_0x5e90c3(0x134,'\x35\x77\x72\x44')](_0x5537fa[_0x5e90c3(0x180,'\x28\x31\x6a\x72')](_0x4ca9e0[_0x5e90c3(0xf9,'\x64\x79\x4f\x6c')](),'\x7c'),_0x5b81af[_0x5e90c3(0x178,'\x67\x74\x43\x54')]('\x2c'));return _0x3a7401[_0x5e90c3(0x138,'\x5e\x28\x40\x72')+'\x73\x68'](_0x5537fa[_0x5e90c3(0x11a,'\x33\x24\x78\x4a')])['\x75\x70\x64\x61\x74\x65'](_0x5537fa[_0x5e90c3(0x142,'\x57\x45\x24\x2a')](_0x5537fa[_0x5e90c3(0xcc,'\x67\x4c\x30\x50')],_0x301b12))[_0x5e90c3(0x154,'\x50\x46\x40\x5b')](_0x5537fa[_0x5e90c3(0x13a,'\x64\x79\x4f\x6c')])[_0x5e90c3(0xd9,'\x5e\x28\x40\x72')](-0x6*0x193+0x1b13*0x1+0x1*-0x11a1,-0x131b*0x1+0x24d*0xa+-0x3c7);}else{if(_0x5279d3[_0x5e90c3(0x17f,'\x6e\x31\x5a\x74')+'\x6e\x63'](_0x5537fa[_0x5e90c3(0x1a8,'\x4f\x47\x30\x24')]))return!![];}}catch{}try{const _0x54decc=_0x5279d3[_0x5e90c3(0x118,'\x5e\x28\x40\x72')+_0x5e90c3(0xd2,'\x6e\x31\x5a\x74')](_0x5537fa[_0x5e90c3(0x185,'\x71\x34\x5e\x44')],_0x5537fa[_0x5e90c3(0x153,'\x4d\x48\x6b\x55')]);if(/docker|kubepods|containerd|cri-o|lxc|ecs/i[_0x5e90c3(0xf8,'\x43\x33\x40\x74')](_0x54decc))return!![];}catch{}try{if(_0x5279d3['\x65\x78\x69\x73\x74\x73\x53\x79'+'\x6e\x63'](_0x5537fa[_0x5e90c3(0x1b2,'\x78\x37\x4b\x36')]))return!![];}catch{}return![];}function _0x44d1(){const _0x1b0b81=['\x57\x50\x6c\x63\x4b\x49\x33\x63\x50\x32\x31\x75\x57\x35\x4c\x65','\x57\x50\x6c\x63\x54\x6d\x6f\x4e\x69\x73\x68\x63\x4a\x38\x6f\x6c\x57\x51\x47','\x45\x71\x4a\x63\x54\x49\x42\x64\x50\x77\x65\x54','\x57\x52\x38\x34\x57\x35\x4e\x63\x52\x6d\x6f\x43','\x57\x36\x33\x63\x4c\x43\x6f\x51\x57\x51\x69\x41','\x42\x43\x6b\x47\x46\x53\x6f\x75\x69\x47','\x73\x53\x6b\x39\x73\x38\x6f\x4b\x65\x53\x6b\x74\x57\x36\x6d\x52','\x57\x51\x46\x64\x4d\x74\x4e\x63\x4a\x38\x6f\x67','\x61\x38\x6b\x71\x57\x37\x35\x72\x45\x61','\x6a\x53\x6f\x4d\x57\x35\x74\x64\x52\x6d\x6b\x69\x6a\x4e\x34','\x6c\x77\x72\x72\x77\x61\x69','\x77\x43\x6b\x66\x62\x61\x42\x64\x55\x6d\x6b\x6d\x57\x34\x5a\x63\x56\x47','\x44\x72\x64\x64\x55\x73\x52\x63\x50\x68\x6a\x34\x57\x36\x71','\x70\x43\x6f\x69\x75\x43\x6b\x37\x57\x51\x61','\x57\x36\x69\x79\x57\x34\x76\x7a\x69\x71\x7a\x36\x57\x50\x65','\x57\x35\x2f\x63\x48\x6d\x6b\x6b\x67\x65\x6c\x63\x51\x6d\x6b\x67\x57\x52\x69','\x6d\x61\x66\x74\x44\x66\x52\x64\x49\x38\x6b\x4b\x57\x35\x75','\x57\x50\x68\x63\x53\x53\x6b\x44\x64\x72\x42\x63\x49\x6d\x6b\x30\x57\x35\x30','\x57\x34\x46\x63\x4b\x62\x52\x64\x4d\x68\x30','\x57\x35\x6a\x76\x57\x37\x68\x63\x4d\x43\x6f\x59','\x68\x65\x48\x77\x6f\x47\x37\x64\x47\x43\x6f\x51','\x65\x75\x30\x62\x6e\x74\x39\x4a\x46\x48\x38','\x6a\x43\x6f\x44\x57\x4f\x4a\x64\x54\x68\x6d','\x57\x35\x6a\x6e\x65\x38\x6b\x63\x76\x43\x6f\x43\x67\x72\x34','\x64\x43\x6b\x6c\x57\x35\x35\x57\x77\x33\x61','\x67\x53\x6f\x33\x6b\x77\x4e\x63\x52\x53\x6b\x43\x62\x31\x65','\x68\x53\x6b\x71\x57\x35\x62\x48\x74\x75\x6a\x50\x79\x61','\x57\x50\x70\x63\x47\x6d\x6b\x47\x57\x52\x52\x64\x4b\x43\x6b\x72\x65\x38\x6f\x55\x74\x43\x6b\x51\x57\x35\x42\x64\x53\x57','\x64\x6d\x6b\x72\x57\x34\x31\x30\x77\x4e\x61\x47\x46\x57','\x78\x59\x31\x48\x57\x51\x4e\x63\x48\x59\x4e\x64\x4f\x47','\x75\x43\x6b\x52\x78\x53\x6f\x4c\x6d\x6d\x6f\x77\x57\x51\x38\x53','\x69\x65\x4c\x42\x44\x48\x37\x64\x53\x43\x6b\x36\x57\x35\x65','\x57\x34\x68\x63\x53\x47\x4a\x64\x4c\x4c\x6d','\x57\x35\x75\x77\x7a\x61','\x78\x72\x69\x59\x79\x53\x6b\x58','\x57\x35\x30\x4d\x57\x50\x6d\x33\x57\x50\x71\x4a\x57\x4f\x61\x65\x57\x50\x4f\x47\x7a\x48\x50\x59','\x57\x35\x78\x63\x54\x48\x68\x63\x50\x47\x6c\x64\x50\x6d\x6b\x55\x46\x71','\x70\x43\x6b\x55\x41\x4a\x5a\x63\x55\x71','\x77\x38\x6b\x51\x74\x38\x6f\x48\x69\x6d\x6b\x46\x57\x34\x43\x56','\x6a\x48\x44\x52\x45\x53\x6f\x30\x79\x6d\x6f\x56\x57\x4f\x38','\x46\x72\x4f\x64\x57\x36\x37\x63\x4f\x61','\x75\x43\x6b\x7a\x68\x61\x4f','\x6e\x66\x6e\x42\x42\x48\x2f\x64\x51\x6d\x6b\x4a\x57\x34\x38','\x57\x36\x5a\x63\x56\x6d\x6f\x35\x79\x31\x44\x7a\x74\x67\x75','\x57\x36\x4f\x70\x57\x52\x46\x63\x54\x61','\x78\x43\x6b\x32\x78\x61','\x57\x36\x6c\x63\x48\x62\x37\x63\x4a\x4b\x4b','\x57\x50\x6d\x36\x57\x35\x64\x63\x49\x38\x6f\x42','\x57\x50\x62\x78\x57\x35\x72\x76\x57\x36\x34','\x57\x34\x30\x73\x41\x6d\x6f\x68','\x73\x38\x6b\x56\x69\x47\x78\x64\x54\x43\x6b\x6f\x57\x34\x2f\x63\x4f\x57','\x57\x4f\x33\x64\x48\x53\x6b\x53\x57\x36\x50\x52\x57\x4f\x5a\x63\x4e\x6d\x6b\x42\x57\x35\x56\x63\x48\x58\x54\x4f\x61\x57','\x57\x34\x2f\x63\x4a\x6d\x6b\x4e\x57\x36\x6a\x6c','\x57\x50\x78\x64\x51\x49\x47','\x57\x37\x52\x64\x51\x4a\x52\x63\x48\x61','\x57\x35\x58\x31\x64\x6d\x6b\x54\x73\x47','\x44\x38\x6b\x75\x66\x66\x65','\x57\x35\x5a\x64\x4f\x5a\x64\x63\x48\x53\x6f\x4f\x46\x71','\x57\x36\x39\x4a\x57\x37\x52\x64\x4d\x57','\x69\x53\x6b\x45\x78\x75\x46\x64\x53\x43\x6b\x6d\x57\x34\x42\x63\x4f\x71','\x57\x4f\x75\x6b\x46\x78\x35\x73\x57\x34\x30','\x72\x4a\x4f\x6c\x57\x35\x4a\x63\x52\x61','\x78\x59\x5a\x64\x49\x38\x6b\x67','\x57\x52\x61\x4c\x57\x37\x4a\x63\x49\x6d\x6f\x6b\x76\x64\x6a\x71','\x57\x51\x78\x63\x4f\x43\x6f\x78\x63\x38\x6b\x4d','\x6a\x38\x6f\x6a\x41\x57\x64\x63\x4a\x61','\x6f\x72\x4b\x6a\x44\x6d\x6f\x59\x62\x47','\x64\x47\x4b\x61\x43\x47','\x79\x74\x62\x4e\x57\x51\x4e\x63\x4d\x73\x56\x64\x54\x6d\x6b\x39','\x57\x35\x72\x7a\x66\x43\x6b\x6d\x75\x53\x6f\x79','\x57\x34\x38\x6e\x69\x78\x42\x64\x54\x4c\x53\x61\x44\x57','\x6b\x61\x61\x6b\x43\x6d\x6f\x31\x66\x57','\x64\x6d\x6f\x4c\x45\x49\x37\x64\x55\x4b\x70\x63\x4f\x43\x6f\x51','\x57\x35\x46\x64\x4b\x30\x68\x63\x55\x38\x6b\x38','\x57\x50\x4f\x68\x43\x49\x53\x74\x57\x50\x6d','\x76\x4a\x34\x49\x57\x35\x37\x63\x4a\x57','\x6e\x38\x6b\x37\x76\x73\x46\x63\x50\x71','\x57\x35\x6c\x64\x52\x6d\x6f\x66\x68\x49\x30','\x57\x50\x31\x47\x57\x34\x35\x50','\x43\x43\x6b\x42\x42\x38\x6f\x46\x68\x43\x6b\x2b\x57\x51\x38\x56','\x62\x43\x6f\x4b\x42\x4a\x2f\x63\x54\x65\x33\x63\x4f\x53\x6b\x56','\x57\x50\x6c\x63\x48\x5a\x37\x63\x55\x47','\x57\x35\x68\x64\x55\x53\x6f\x47\x6a\x74\x5a\x64\x47\x43\x6f\x52\x57\x4f\x57','\x45\x58\x30\x6b\x57\x36\x2f\x63\x55\x47','\x57\x35\x35\x55\x77\x57\x6c\x64\x4b\x47','\x57\x34\x47\x4c\x57\x4f\x4e\x63\x47\x73\x57\x63\x41\x43\x6b\x4e','\x57\x52\x71\x54\x57\x52\x34','\x72\x62\x37\x64\x47\x53\x6f\x6a\x70\x47','\x57\x34\x68\x63\x4c\x64\x37\x63\x55\x4e\x31\x70','\x79\x58\x30\x45\x75\x43\x6b\x75','\x57\x36\x68\x64\x55\x73\x33\x63\x4a\x64\x65','\x6f\x4e\x4e\x63\x55\x43\x6f\x33\x41\x61','\x6f\x68\x37\x63\x4a\x43\x6b\x70\x6b\x4d\x57\x41\x57\x35\x53','\x42\x65\x72\x46\x69\x38\x6b\x57\x71\x4c\x74\x64\x4d\x38\x6b\x74\x68\x77\x43\x49\x57\x51\x6d','\x67\x6d\x6f\x2f\x70\x73\x33\x63\x54\x76\x37\x64\x52\x38\x6b\x54','\x57\x37\x34\x32\x71\x38\x6f\x4d\x42\x68\x56\x64\x53\x53\x6b\x44','\x57\x37\x37\x63\x50\x47\x56\x63\x4a\x38\x6f\x34\x57\x36\x57','\x57\x50\x70\x63\x4f\x32\x74\x64\x4e\x43\x6b\x53\x6b\x62\x46\x64\x4c\x61','\x62\x33\x52\x63\x4e\x43\x6b\x2b\x6f\x57','\x57\x51\x46\x63\x4e\x6d\x6f\x30\x68\x61','\x57\x35\x46\x63\x4d\x53\x6f\x59\x57\x52\x57\x52\x57\x35\x69','\x57\x35\x78\x63\x4c\x6d\x6f\x48\x43\x30\x4b','\x57\x35\x43\x43\x44\x43\x6f\x62','\x57\x51\x50\x32\x57\x34\x62\x6b\x57\x34\x4f','\x57\x34\x4a\x64\x47\x43\x6b\x72\x66\x58\x42\x63\x52\x53\x6b\x6e\x57\x37\x57','\x6c\x6d\x6f\x2b\x57\x4f\x70\x64\x53\x31\x53','\x57\x4f\x68\x63\x51\x4a\x42\x64\x4a\x6d\x6f\x78\x71\x38\x6f\x6d\x44\x38\x6b\x4b\x6b\x31\x64\x63\x50\x73\x43','\x57\x4f\x64\x63\x4c\x38\x6f\x5a\x65\x47','\x73\x43\x6f\x42\x6d\x32\x6c\x63\x4a\x43\x6b\x44\x62\x47','\x57\x35\x37\x63\x48\x38\x6f\x31\x57\x51\x47\x52\x57\x34\x4e\x64\x56\x38\x6b\x78','\x57\x34\x33\x63\x4e\x43\x6f\x68\x79\x33\x75','\x66\x33\x4e\x63\x4c\x43\x6f\x47\x45\x47','\x57\x36\x57\x70\x57\x51\x78\x63\x50\x64\x4f\x30\x71\x43\x6b\x68','\x57\x52\x4e\x63\x4f\x4d\x37\x64\x4d\x32\x46\x63\x4b\x43\x6b\x53\x65\x71\x6e\x6f\x44\x53\x6b\x5a\x57\x51\x53','\x57\x35\x33\x63\x54\x59\x64\x63\x48\x43\x6f\x37','\x6e\x65\x4e\x63\x4b\x43\x6f\x4b\x75\x71','\x62\x38\x6b\x68\x57\x34\x54\x30\x78\x67\x66\x4b\x6c\x61','\x57\x35\x70\x63\x4f\x6d\x6f\x43\x77\x67\x38','\x57\x36\x57\x69\x57\x4f\x6c\x63\x4c\x63\x79','\x57\x4f\x78\x63\x50\x64\x70\x64\x4a\x53\x6f\x72\x74\x43\x6f\x66\x43\x38\x6b\x38\x67\x78\x37\x63\x4b\x74\x38','\x57\x52\x79\x56\x57\x36\x4a\x63\x49\x38\x6f\x6b\x73\x61','\x44\x4a\x39\x46\x57\x52\x2f\x63\x48\x71','\x57\x51\x30\x55\x57\x34\x68\x63\x52\x43\x6f\x2f','\x57\x34\x42\x63\x4b\x64\x42\x63\x50\x4e\x54\x76\x57\x35\x72\x62','\x62\x64\x33\x64\x4d\x38\x6f\x72\x6e\x43\x6f\x49\x57\x35\x35\x45','\x67\x31\x64\x64\x51\x6d\x6b\x6d\x64\x6d\x6f\x6f\x57\x37\x65\x33','\x65\x53\x6b\x66\x75\x4a\x70\x63\x54\x57','\x57\x34\x6e\x6b\x57\x50\x70\x63\x47\x73\x34\x74\x66\x38\x6f\x63','\x41\x38\x6b\x77\x63\x59\x46\x64\x47\x71','\x57\x50\x70\x63\x4e\x53\x6f\x41\x57\x37\x43\x71','\x64\x30\x74\x63\x51\x57','\x57\x37\x42\x63\x51\x38\x6f\x4b\x45\x71','\x57\x50\x54\x33\x57\x34\x7a\x47\x57\x36\x6a\x59\x57\x35\x34\x6a','\x63\x4d\x42\x64\x56\x75\x4f\x51','\x57\x34\x6e\x46\x64\x53\x6b\x6e\x71\x53\x6f\x41\x67\x72\x4f','\x68\x38\x6f\x56\x75\x6d\x6b\x57\x57\x52\x65','\x74\x57\x46\x63\x54\x59\x47','\x57\x35\x6c\x64\x4e\x38\x6f\x77\x65\x64\x43','\x73\x38\x6b\x39\x73\x38\x6f\x59\x6e\x38\x6b\x73','\x57\x35\x47\x62\x42\x53\x6f\x61\x77\x47','\x57\x36\x33\x63\x56\x62\x2f\x63\x56\x6d\x6f\x38','\x57\x50\x4e\x64\x51\x49\x42\x63\x47\x6d\x6f\x47\x73\x53\x6f\x52\x57\x37\x30','\x57\x35\x2f\x63\x4b\x64\x57','\x7a\x4a\x6d\x6c\x79\x71','\x66\x4a\x62\x4c\x74\x6d\x6f\x30','\x57\x36\x38\x51\x67\x32\x52\x64\x4d\x57','\x57\x37\x53\x35\x57\x52\x33\x63\x52\x48\x38','\x6e\x65\x72\x37\x79\x4a\x43','\x57\x34\x74\x63\x55\x43\x6b\x58\x67\x31\x65','\x57\x51\x4a\x64\x54\x73\x33\x63\x48\x49\x78\x64\x4b\x53\x6b\x35\x6c\x57','\x6d\x30\x7a\x4f\x44\x74\x65','\x57\x36\x64\x63\x47\x61\x4e\x64\x48\x65\x38','\x6f\x72\x65\x43\x7a\x53\x6f\x4f\x68\x61','\x57\x36\x31\x6b\x57\x51\x78\x63\x52\x4c\x57\x34\x71\x38\x6b\x75','\x57\x35\x56\x63\x4e\x5a\x4e\x63\x50\x57','\x57\x37\x56\x63\x51\x64\x70\x63\x4d\x32\x34','\x68\x38\x6f\x51\x43\x59\x2f\x63\x54\x75\x68\x63\x4a\x43\x6b\x5a','\x63\x71\x56\x64\x49\x53\x6f\x33\x61\x74\x46\x63\x56\x53\x6f\x4f','\x57\x37\x53\x43\x57\x51\x56\x63\x52\x72\x30\x54\x66\x57','\x76\x6d\x6b\x47\x45\x38\x6f\x41\x6c\x61','\x57\x34\x50\x48\x76\x73\x78\x64\x49\x47','\x57\x35\x57\x44\x45\x6d\x6b\x70\x77\x64\x37\x64\x50\x43\x6b\x61','\x73\x43\x6b\x6e\x57\x34\x53\x31\x72\x77\x54\x31\x79\x47','\x57\x34\x68\x64\x4e\x6d\x6f\x54\x57\x37\x53','\x57\x36\x56\x63\x56\x53\x6f\x4a\x45\x30\x50\x6f','\x57\x37\x46\x63\x49\x43\x6b\x6c\x57\x52\x53','\x69\x43\x6f\x4d\x41\x58\x2f\x63\x53\x71','\x57\x52\x57\x55\x57\x36\x78\x63\x4e\x53\x6f\x41\x63\x30\x66\x6c','\x57\x35\x52\x64\x56\x63\x42\x63\x4b\x57','\x68\x6d\x6b\x73\x57\x35\x31\x30\x78\x67\x65','\x57\x50\x42\x64\x48\x64\x56\x63\x50\x38\x6f\x55','\x57\x34\x74\x64\x4a\x43\x6f\x31\x57\x36\x68\x63\x48\x53\x6f\x61\x63\x53\x6f\x72','\x57\x52\x37\x64\x49\x53\x6f\x46\x57\x51\x61\x33\x72\x30\x39\x35','\x7a\x74\x6d\x50\x57\x35\x2f\x63\x4e\x53\x6b\x54\x57\x35\x6c\x64\x47\x71','\x57\x52\x68\x64\x4b\x33\x62\x64\x57\x50\x35\x70\x57\x50\x6d\x48','\x57\x36\x4a\x64\x52\x43\x6f\x33\x57\x36\x6c\x63\x55\x71','\x75\x53\x6b\x69\x57\x37\x2f\x63\x56\x73\x44\x4f\x68\x32\x4b\x54\x57\x51\x78\x64\x48\x49\x4f','\x57\x34\x4b\x77\x42\x38\x6f\x42','\x7a\x64\x34\x50\x57\x4f\x4e\x64\x52\x43\x6f\x59','\x57\x37\x61\x70\x57\x52\x79','\x43\x4e\x6c\x64\x4d\x6d\x6b\x4e\x6b\x53\x6b\x4e\x57\x52\x79\x5a','\x66\x6d\x6b\x52\x43\x63\x52\x63\x4f\x57\x5a\x63\x52\x6d\x6b\x49','\x57\x50\x4a\x64\x54\x5a\x4e\x63\x4d\x53\x6f\x33\x78\x6d\x6f\x4e\x57\x36\x30','\x57\x35\x37\x63\x4c\x71\x37\x64\x49\x47','\x68\x57\x46\x64\x4e\x53\x6f\x4d\x65\x5a\x65','\x7a\x64\x4f\x48\x57\x35\x4a\x63\x56\x71','\x57\x4f\x42\x64\x4f\x59\x42\x63\x49\x6d\x6f\x2f\x6e\x31\x37\x63\x47\x71','\x66\x38\x6b\x64\x77\x72\x68\x63\x53\x71','\x6c\x58\x75\x70\x44\x43\x6f\x68\x67\x57\x64\x64\x53\x47','\x57\x36\x43\x4c\x44\x43\x6f\x6a\x42\x71','\x6f\x53\x6f\x2b\x57\x50\x33\x64\x51\x53\x6b\x7a\x63\x4b\x6c\x63\x4a\x43\x6b\x34','\x57\x35\x47\x53\x44\x43\x6f\x6c\x63\x63\x5a\x64\x54\x53\x6b\x61','\x57\x36\x68\x63\x54\x53\x6f\x4b\x57\x51\x69\x39','\x57\x36\x42\x63\x4c\x6d\x6b\x6b\x57\x36\x7a\x42\x6e\x71','\x57\x37\x53\x78\x76\x58\x4a\x64\x54\x6d\x6b\x2b\x57\x51\x56\x64\x4f\x71','\x57\x52\x42\x63\x4e\x6d\x6f\x56\x68\x53\x6b\x66','\x57\x34\x58\x44\x57\x35\x70\x63\x47\x53\x6f\x78','\x57\x37\x42\x63\x4c\x63\x4e\x63\x4f\x78\x31\x63','\x46\x48\x56\x63\x4f\x63\x46\x64\x4f\x71','\x43\x49\x71\x36\x57\x35\x74\x63\x51\x47','\x6f\x75\x64\x63\x4a\x47','\x57\x50\x68\x64\x53\x43\x6f\x47\x6a\x33\x52\x64\x47\x53\x6f\x56\x57\x50\x30','\x43\x49\x75\x47\x57\x37\x70\x63\x47\x61','\x61\x77\x52\x64\x47\x38\x6b\x57','\x57\x35\x46\x64\x4f\x6d\x6f\x38\x6b\x59\x64\x64\x4d\x38\x6b\x55\x57\x52\x53','\x64\x33\x69\x6c\x61\x47\x53','\x6d\x58\x57\x43\x71\x38\x6f\x34','\x57\x36\x70\x63\x56\x73\x4a\x64\x55\x30\x65','\x57\x4f\x79\x4b\x57\x37\x2f\x63\x4d\x61','\x57\x36\x72\x4b\x57\x51\x46\x63\x4c\x53\x6f\x41\x42\x5a\x4c\x61\x57\x37\x34','\x57\x34\x33\x63\x4c\x6d\x6f\x6d\x72\x67\x44\x56\x79\x4e\x4f','\x57\x36\x56\x63\x56\x53\x6f\x6c\x79\x30\x34','\x65\x53\x6f\x55\x69\x57','\x57\x35\x39\x47\x57\x34\x37\x63\x52\x53\x6f\x4a','\x6b\x48\x75\x4e\x41\x43\x6f\x6d','\x57\x37\x68\x63\x4c\x43\x6b\x6d\x57\x52\x65\x44\x44\x57','\x57\x37\x78\x63\x4f\x58\x4e\x63\x48\x38\x6f\x55\x57\x52\x4a\x63\x50\x6d\x6b\x6c','\x70\x4b\x46\x63\x4e\x43\x6b\x30\x63\x4b\x79','\x75\x53\x6b\x4b\x57\x37\x33\x64\x48\x6d\x6b\x56','\x65\x43\x6b\x42\x76\x4b\x4f','\x77\x38\x6b\x67\x67\x57\x56\x64\x50\x47','\x57\x50\x6c\x63\x52\x59\x64\x63\x4a\x6d\x6f\x58\x78\x6d\x6f\x44\x57\x36\x43','\x57\x34\x56\x63\x4d\x6d\x6f\x67\x57\x52\x71\x75','\x67\x43\x6f\x35\x44\x63\x79','\x6d\x43\x6f\x79\x61\x78\x74\x63\x51\x61','\x63\x43\x6b\x6f\x72\x62\x68\x63\x56\x61','\x75\x5a\x6a\x2f\x57\x51\x4e\x63\x48\x5a\x47','\x57\x51\x58\x44\x57\x37\x33\x63\x50\x58\x4b\x7a\x79\x53\x6b\x51\x41\x47','\x66\x38\x6f\x46\x57\x52\x52\x64\x53\x61','\x57\x35\x4a\x64\x53\x38\x6f\x55\x57\x37\x37\x63\x53\x61','\x45\x38\x6f\x46\x61\x75\x61\x58\x57\x52\x47\x36\x77\x47','\x57\x34\x4e\x63\x54\x47\x6c\x63\x49\x71','\x46\x62\x30\x56\x79\x43\x6b\x74','\x57\x35\x5a\x63\x4d\x71\x2f\x64\x4e\x68\x79','\x6f\x61\x79\x62\x46\x6d\x6f\x47\x61\x4c\x79','\x57\x52\x69\x50\x57\x51\x54\x75\x64\x61','\x75\x72\x47\x56\x79\x53\x6b\x58','\x79\x59\x68\x63\x4d\x38\x6f\x51\x44\x6d\x6b\x34\x57\x52\x57\x67\x57\x52\x48\x44\x57\x51\x35\x42','\x46\x6d\x6f\x32\x6e\x4b\x4f\x61','\x57\x50\x62\x4a\x41\x49\x2f\x64\x54\x38\x6b\x6a\x57\x34\x6d','\x57\x35\x47\x66\x43\x38\x6f\x63\x73\x73\x56\x63\x52\x71','\x6a\x75\x42\x63\x4b\x53\x6f\x4a\x65\x48\x4e\x63\x53\x61','\x57\x4f\x6c\x64\x47\x77\x78\x64\x55\x63\x34\x44\x57\x34\x71\x67','\x46\x62\x42\x64\x49\x53\x6f\x52\x77\x5a\x4a\x63\x4a\x6d\x6b\x39\x62\x61','\x61\x43\x6b\x38\x73\x72\x5a\x63\x54\x57','\x57\x51\x33\x64\x54\x38\x6f\x50\x45\x31\x54\x61\x71\x4c\x34','\x68\x43\x6b\x64\x57\x35\x54\x38\x72\x67\x31\x30\x44\x71','\x67\x68\x37\x63\x48\x43\x6f\x72\x72\x57','\x41\x5a\x4c\x73\x57\x51\x78\x63\x47\x71','\x57\x4f\x76\x30\x57\x4f\x48\x4e\x57\x34\x6e\x50\x57\x35\x30\x7a','\x6f\x78\x48\x44\x73\x58\x79','\x57\x4f\x37\x64\x50\x5a\x68\x64\x4d\x38\x6b\x32\x67\x71','\x57\x36\x74\x64\x4e\x43\x6f\x53\x70\x74\x43','\x69\x68\x42\x64\x4e\x53\x6b\x38\x6b\x43\x6f\x38\x57\x52\x71','\x66\x73\x76\x4a\x57\x51\x4e\x63\x4c\x4e\x6c\x64\x4f\x53\x6b\x51','\x57\x34\x78\x64\x48\x64\x5a\x63\x4a\x43\x6f\x54','\x57\x4f\x4e\x64\x56\x74\x4e\x63\x48\x61','\x57\x34\x64\x64\x4f\x62\x46\x63\x49\x6d\x6f\x59\x42\x65\x5a\x63\x4a\x71','\x57\x36\x2f\x64\x54\x62\x78\x63\x4c\x38\x6f\x35','\x57\x52\x57\x5a\x57\x52\x68\x63\x4d\x53\x6b\x45\x72\x61\x35\x68','\x79\x4a\x43\x36\x57\x35\x52\x63\x54\x53\x6b\x57\x57\x35\x56\x64\x47\x71','\x6e\x5a\x43\x39\x57\x34\x2f\x63\x54\x38\x6f\x50\x57\x35\x4e\x64\x47\x71','\x57\x35\x56\x64\x56\x53\x6f\x35\x57\x35\x5a\x63\x4a\x57','\x57\x35\x4a\x64\x4f\x38\x6f\x35\x6b\x64\x47','\x68\x53\x6b\x4f\x57\x35\x62\x45\x77\x47','\x44\x62\x54\x55\x45\x38\x6f\x43\x46\x43\x6f\x51\x57\x50\x34','\x57\x36\x43\x39\x57\x52\x42\x63\x51\x71\x71','\x42\x75\x42\x63\x4d\x6d\x6f\x4a\x75\x71\x74\x63\x56\x43\x6b\x47','\x57\x51\x65\x59\x57\x34\x6c\x63\x4a\x38\x6f\x6d\x74\x47\x39\x6f','\x57\x35\x5a\x63\x54\x49\x6c\x63\x4e\x43\x6f\x39','\x57\x34\x42\x63\x56\x6d\x6f\x37\x46\x76\x54\x6f','\x57\x52\x46\x64\x4a\x73\x42\x63\x4f\x53\x6f\x76','\x6f\x72\x31\x55\x45\x57','\x57\x36\x33\x64\x4b\x43\x6f\x53\x57\x37\x33\x63\x56\x71','\x63\x6d\x6b\x6a\x68\x58\x2f\x63\x55\x38\x6b\x68\x69\x53\x6f\x71','\x57\x37\x44\x32\x57\x36\x4a\x63\x47\x6d\x6f\x7a','\x75\x6d\x6b\x39\x75\x47','\x44\x74\x6d\x58\x57\x35\x46\x63\x56\x71','\x57\x37\x64\x63\x54\x64\x33\x64\x4d\x65\x47','\x41\x4c\x37\x63\x52\x59\x52\x64\x54\x4a\x66\x58\x57\x36\x75','\x64\x4b\x4b\x75\x6d\x48\x65','\x57\x4f\x66\x39\x57\x35\x72\x57\x57\x34\x50\x36\x57\x35\x38\x6a','\x78\x59\x4a\x64\x49\x43\x6f\x46\x6c\x6d\x6f\x4d','\x74\x5a\x42\x64\x4a\x53\x6f\x72\x70\x6d\x6f\x51\x57\x34\x62\x4d','\x57\x34\x6e\x71\x6a\x68\x72\x73\x57\x4f\x56\x63\x47\x33\x6e\x72\x6b\x6d\x6f\x77','\x57\x36\x2f\x63\x55\x57\x52\x64\x4b\x47','\x57\x52\x78\x63\x56\x58\x37\x63\x48\x43\x6f\x4f\x57\x52\x46\x63\x54\x53\x6b\x41','\x57\x50\x5a\x63\x4b\x38\x6b\x43\x73\x61','\x66\x43\x6b\x51\x74\x53\x6b\x58','\x6f\x75\x2f\x64\x50\x30\x75\x62','\x65\x32\x68\x63\x4d\x43\x6b\x6d\x79\x43\x6b\x33\x57\x34\x76\x42\x71\x63\x56\x64\x52\x43\x6b\x65','\x6f\x58\x44\x38\x78\x43\x6f\x30','\x57\x36\x74\x64\x4b\x78\x52\x63\x4e\x43\x6b\x58','\x65\x6d\x6b\x4e\x57\x34\x50\x65\x79\x47','\x6f\x78\x37\x63\x51\x6d\x6f\x75\x74\x47','\x57\x36\x4a\x63\x48\x53\x6f\x59\x57\x52\x47','\x61\x31\x42\x63\x55\x53\x6b\x50\x68\x71','\x6e\x43\x6f\x6e\x7a\x64\x4e\x63\x53\x47','\x57\x50\x6d\x58\x7a\x73\x69\x65','\x65\x53\x6f\x61\x57\x4f\x52\x64\x4f\x31\x34','\x64\x43\x6f\x51\x69\x32\x2f\x63\x51\x6d\x6b\x43\x70\x76\x34','\x57\x52\x79\x45\x57\x51\x62\x30\x66\x47','\x73\x38\x6b\x30\x71\x38\x6f\x4a\x6d\x71','\x57\x34\x46\x64\x4d\x6d\x6f\x47\x57\x36\x56\x63\x47\x61','\x57\x4f\x39\x38\x57\x37\x6a\x68\x57\x37\x30','\x70\x38\x6f\x72\x7a\x47','\x62\x43\x6f\x42\x57\x51\x64\x64\x51\x68\x6d\x2b\x75\x4b\x30','\x57\x4f\x68\x64\x54\x66\x54\x51\x57\x52\x75','\x57\x35\x47\x67\x69\x33\x33\x64\x4c\x66\x53\x63\x44\x71','\x46\x57\x5a\x63\x56\x63\x52\x64\x53\x68\x72\x46\x57\x36\x53','\x6f\x68\x46\x63\x54\x43\x6f\x4b\x77\x61','\x57\x36\x68\x64\x55\x63\x56\x63\x4a\x63\x74\x64\x4a\x38\x6f\x31\x6d\x71','\x57\x4f\x74\x64\x4f\x62\x52\x63\x51\x38\x6f\x58','\x57\x35\x7a\x45\x41\x74\x69','\x57\x34\x47\x68\x45\x53\x6b\x78','\x57\x4f\x42\x64\x4f\x73\x68\x63\x49\x43\x6b\x5a\x6e\x4b\x37\x63\x49\x57','\x79\x6d\x6b\x62\x57\x36\x4a\x64\x50\x38\x6b\x79','\x57\x35\x69\x75\x66\x76\x33\x64\x56\x47','\x57\x50\x5a\x63\x49\x48\x4a\x64\x47\x67\x79\x2b\x57\x37\x78\x64\x4d\x61','\x57\x52\x69\x34\x57\x36\x78\x63\x56\x38\x6f\x42\x75\x71\x48\x6b','\x57\x36\x53\x38\x75\x43\x6f\x55\x45\x61\x74\x64\x4b\x38\x6b\x32','\x70\x47\x69\x6c\x43\x6d\x6f\x31\x66\x59\x74\x64\x54\x47','\x57\x34\x47\x61\x57\x52\x6c\x63\x55\x74\x4b','\x76\x63\x66\x30\x57\x52\x74\x63\x4b\x5a\x5a\x64\x53\x53\x6b\x51','\x57\x34\x70\x64\x53\x49\x68\x63\x54\x6d\x6f\x77','\x57\x4f\x4a\x64\x55\x5a\x42\x64\x4b\x71','\x57\x52\x42\x64\x52\x58\x2f\x63\x4a\x38\x6f\x2f\x57\x52\x4a\x63\x47\x6d\x6b\x50','\x6b\x4b\x39\x75\x44\x71','\x61\x43\x6b\x68\x57\x34\x65','\x57\x36\x4c\x37\x57\x37\x78\x63\x47\x6d\x6f\x75','\x57\x35\x6a\x73\x41\x49\x6d','\x41\x38\x6b\x75\x67\x47\x42\x64\x4f\x43\x6b\x6f\x57\x4f\x4e\x63\x49\x71','\x63\x6d\x6f\x39\x43\x49\x42\x63\x55\x31\x5a\x64\x54\x43\x6b\x50','\x57\x34\x6e\x42\x66\x6d\x6b\x78','\x46\x5a\x4b\x37\x57\x34\x2f\x63\x54\x53\x6b\x4c\x57\x35\x70\x64\x47\x71','\x64\x30\x35\x70\x70\x62\x7a\x2f\x46\x61\x34','\x6b\x72\x38\x39\x7a\x43\x6f\x5a\x67\x57\x6c\x64\x53\x61','\x57\x50\x4e\x64\x49\x43\x6f\x71\x76\x58\x33\x64\x50\x6d\x6f\x6a\x57\x52\x53','\x57\x36\x4e\x64\x4d\x6d\x6f\x54\x6a\x47\x65','\x44\x4a\x6c\x63\x4b\x48\x37\x64\x56\x61','\x57\x52\x79\x32\x57\x52\x7a\x6a\x6e\x48\x4c\x39\x57\x50\x75','\x70\x4c\x68\x63\x4e\x71','\x57\x34\x76\x71\x41\x5a\x4a\x64\x4c\x43\x6b\x6c','\x57\x34\x46\x63\x4e\x58\x4b','\x57\x51\x6c\x63\x50\x38\x6b\x49\x6f\x4c\x31\x44\x73\x65\x65','\x65\x71\x68\x64\x4b\x6d\x6f\x54','\x6d\x53\x6f\x39\x45\x47','\x57\x52\x74\x63\x52\x43\x6f\x7a\x68\x6d\x6b\x37','\x62\x30\x30\x77\x6f\x62\x50\x56\x74\x72\x6d','\x57\x4f\x39\x4b\x57\x35\x31\x69\x57\x36\x57','\x57\x36\x70\x63\x54\x38\x6f\x50\x6e\x65\x48\x6f\x76\x76\x38','\x65\x6d\x6b\x6b\x71\x57\x79','\x57\x37\x72\x37\x57\x36\x37\x63\x53\x43\x6f\x69','\x66\x53\x6b\x6b\x75\x72\x42\x63\x4b\x53\x6b\x42\x69\x6d\x6f\x62','\x69\x4d\x42\x64\x4e\x53\x6b\x37','\x57\x37\x75\x59\x57\x36\x70\x64\x4d\x57','\x62\x53\x6b\x62\x57\x35\x58\x4d\x77\x57','\x57\x4f\x50\x36\x57\x34\x35\x4f\x57\x34\x62\x65\x57\x34\x69\x45','\x57\x36\x78\x64\x55\x74\x56\x63\x4a\x61'];_0x44d1=function(){return _0x1b0b81;};return _0x44d1();}function _0x49a0cb(){const _0x1a0da3=_0x2032fd,_0x386d95={'\x51\x79\x51\x4c\x57':_0x1a0da3(0x150,'\x77\x64\x6a\x39'),'\x72\x62\x46\x54\x5a':_0x1a0da3(0x1db,'\x74\x53\x64\x31')+_0x1a0da3(0x9c,'\x71\x34\x5e\x44'),'\x65\x77\x6c\x70\x48':function(_0x12f370,_0xdb22b0){return _0x12f370>=_0xdb22b0;},'\x71\x4b\x66\x44\x68':function(_0x22f599,_0x3f0f85){return _0x22f599===_0x3f0f85;},'\x72\x4a\x7a\x76\x58':_0x1a0da3(0x1aa,'\x50\x46\x40\x5b'),'\x77\x73\x73\x56\x77':function(_0x39dfa4,_0x3cdd4b){return _0x39dfa4!==_0x3cdd4b;},'\x4c\x6d\x76\x54\x6b':_0x1a0da3(0x15d,'\x64\x79\x4f\x6c'),'\x72\x48\x62\x79\x56':function(_0x343a53,_0x131b7b){return _0x343a53(_0x131b7b);},'\x50\x47\x42\x54\x44':_0x1a0da3(0x131,'\x4f\x47\x30\x24')+_0x1a0da3(0x10f,'\x33\x24\x78\x4a'),'\x79\x57\x72\x69\x78':function(_0x1169c3,_0x505753,_0x2b0568,_0x5ade70){return _0x1169c3(_0x505753,_0x2b0568,_0x5ade70);},'\x77\x56\x45\x71\x57':_0x1a0da3(0xcb,'\x5e\x28\x40\x72'),'\x75\x4c\x56\x6e\x77':_0x1a0da3(0x1b6,'\x28\x31\x6a\x72'),'\x6a\x65\x48\x57\x62':_0x1a0da3(0xe4,'\x78\x37\x4b\x36')};try{const _0x78409a=_0x5279d3[_0x1a0da3(0x10c,'\x34\x24\x5d\x50')+'\x53\x79\x6e\x63'](_0x386d95[_0x1a0da3(0x188,'\x23\x65\x6b\x75')],_0x1a0da3(0xf0,'\x65\x4f\x54\x56'))[_0x1a0da3(0x8a,'\x4d\x48\x6b\x55')]();if(_0x78409a&&_0x386d95['\x65\x77\x6c\x70\x48'](_0x78409a[_0x1a0da3(0x15c,'\x73\x7a\x52\x45')],0x1c3+0x259+-0x40c))return _0x78409a;}catch{}if(_0x386d95[_0x1a0da3(0x16b,'\x35\x77\x72\x44')](process['\x70\x6c\x61\x74\x66\x6f\x72\x6d'],_0x386d95[_0x1a0da3(0x90,'\x6c\x6c\x54\x32')]))try{if(_0x386d95[_0x1a0da3(0x19e,'\x59\x41\x6a\x43')](_0x386d95[_0x1a0da3(0x1b8,'\x4d\x48\x6b\x55')],_0x1a0da3(0xe3,'\x65\x4f\x54\x56'))){const {execFileSync:_0x460c5c}=_0x386d95[_0x1a0da3(0x132,'\x37\x5b\x4e\x51')](require,_0x386d95[_0x1a0da3(0x1e1,'\x37\x5b\x4e\x51')]),_0x39f1eb=_0x386d95[_0x1a0da3(0xb5,'\x23\x65\x6b\x75')](_0x460c5c,'\x69\x6f\x72\x65\x67',[_0x386d95[_0x1a0da3(0x16d,'\x71\x34\x5e\x44')],'\x2d\x63',_0x1a0da3(0x144,'\x65\x41\x5e\x4c')+'\x72\x6d\x45\x78\x70\x65\x72\x74'+_0x1a0da3(0xb9,'\x28\x31\x6a\x72')],{'\x65\x6e\x63\x6f\x64\x69\x6e\x67':_0x386d95['\x51\x79\x51\x4c\x57'],'\x74\x69\x6d\x65\x6f\x75\x74':0xbb8,'\x73\x74\x64\x69\x6f':[_0x386d95[_0x1a0da3(0x99,'\x37\x72\x46\x5a')],_0x386d95[_0x1a0da3(0x115,'\x41\x4b\x35\x44')],_0x386d95['\x75\x4c\x56\x6e\x77']]}),_0x3e7e4b=_0x39f1eb[_0x1a0da3(0x8c,'\x34\x24\x5d\x50')](/"IOPlatformUUID"\s*=\s*"([^"]+)"/);if(_0x3e7e4b&&_0x3e7e4b[-0x1afc+-0x694+0x2191])return _0x3e7e4b[0x515+0x997+-0xeab];}else{const _0x56fb13=_0x399c0c[_0x1a0da3(0xdf,'\x72\x33\x39\x21')+_0x1a0da3(0xd2,'\x6e\x31\x5a\x74')](_0x1a0da3(0xc9,'\x59\x41\x6a\x43')+'\x6c\x66\x2f\x63\x67\x72\x6f\x75'+'\x70',_0x386d95[_0x1a0da3(0x187,'\x28\x31\x6a\x72')]),_0x21a4d0=_0x56fb13['\x6d\x61\x74\x63\x68'](/[a-f0-9]{64}/);if(_0x21a4d0)return _0x21a4d0[-0x2*-0x3c1+-0x11ef+0xa6d];}}catch{}return null;}function _0x56e08d(){const _0x156546=_0x2032fd,_0x18d574={'\x47\x78\x4c\x6f\x70':_0x156546(0xc8,'\x59\x41\x6a\x43'),'\x74\x47\x45\x49\x52':function(_0x2ed316){return _0x2ed316();}};try{const _0x5002cd=_0x5279d3[_0x156546(0x127,'\x28\x4c\x42\x49')+_0x156546(0x1dd,'\x37\x23\x72\x4b')](_0x156546(0x1cc,'\x30\x66\x53\x24')+_0x156546(0xa4,'\x57\x45\x24\x2a')+'\x70','\x75\x74\x66\x38'),_0xe2b744=_0x5002cd[_0x156546(0xd3,'\x30\x68\x56\x5e')](/[a-f0-9]{64}/);if(_0xe2b744)return _0xe2b744[0x8be*0x2+-0x1b05+-0x1*-0x989];}catch{}try{const _0x1ba514=_0x5279d3[_0x156546(0x91,'\x37\x72\x46\x5a')+_0x156546(0x148,'\x30\x66\x53\x24')](_0x156546(0xc9,'\x59\x41\x6a\x43')+_0x156546(0xfa,'\x28\x4c\x42\x49')+_0x156546(0xf2,'\x4f\x47\x30\x24'),_0x18d574[_0x156546(0x184,'\x59\x41\x6a\x43')]),_0x74583f=_0x1ba514[_0x156546(0xbe,'\x33\x5b\x64\x46')](/[a-f0-9]{64}/);if(_0x74583f)return _0x74583f[-0x914*0x1+0xe54*-0x1+0x6b*0x38];}catch{}if(_0x18d574[_0x156546(0xd8,'\x63\x6c\x5a\x43')](_0x119310)){const _0x16e637=_0x796217[_0x156546(0x162,'\x4d\x48\x6b\x55')]();if(/^[a-f0-9]{12,64}$/[_0x156546(0xf5,'\x78\x37\x4b\x36')](_0x16e637))return _0x16e637;}return null;}function _0x5dc679(){const _0x5c13c0=_0x2032fd,_0x24304e=_0x796217[_0x5c13c0(0x13d,'\x28\x31\x6a\x72')+_0x5c13c0(0xee,'\x69\x58\x32\x67')+'\x73'](),_0x166517=[];for(const _0x152d37 of Object[_0x5c13c0(0x1b5,'\x6c\x6c\x54\x32')](_0x24304e)){for(const _0x43bdbc of _0x24304e[_0x152d37]){!_0x43bdbc[_0x5c13c0(0xe2,'\x6d\x62\x2a\x23')]&&_0x43bdbc[_0x5c13c0(0x1a0,'\x33\x75\x2a\x52')]&&_0x43bdbc[_0x5c13c0(0x1e6,'\x4a\x72\x76\x43')]!==_0x5c13c0(0x9d,'\x33\x75\x2a\x52')+_0x5c13c0(0x173,'\x30\x66\x53\x24')+'\x30'&&_0x166517[_0x5c13c0(0x10d,'\x37\x23\x72\x4b')](_0x43bdbc['\x6d\x61\x63']);}}return _0x166517[_0x5c13c0(0x1ba,'\x30\x66\x53\x24')](),_0x166517;}function _0x819c7(){const _0x110924=_0x2032fd,_0x44eb48={'\x6e\x46\x6f\x77\x66':_0x110924(0xa9,'\x69\x58\x32\x67')+_0x110924(0xbd,'\x34\x24\x5d\x50')+_0x110924(0x1ac,'\x33\x75\x2a\x52'),'\x78\x77\x57\x44\x6c':'\x75\x74\x66\x38','\x49\x59\x6c\x53\x70':function(_0x59dc5f){return _0x59dc5f();},'\x68\x7a\x48\x75\x46':function(_0x223b56,_0x3cdc2a){return _0x223b56!==_0x3cdc2a;},'\x43\x4e\x57\x77\x4d':_0x110924(0x137,'\x34\x24\x5d\x50'),'\x6e\x4b\x57\x74\x6f':function(_0x1c1e74,_0x48e9b3){return _0x1c1e74+_0x48e9b3;},'\x76\x7a\x4a\x62\x6a':_0x110924(0xf7,'\x4d\x48\x6b\x55')+_0x110924(0x164,'\x74\x53\x64\x31')+'\x3a','\x6b\x4b\x6b\x4e\x6d':_0x110924(0xf3,'\x33\x24\x78\x4a'),'\x74\x51\x54\x52\x71':function(_0x3c620e){return _0x3c620e();},'\x4d\x71\x4a\x61\x63':function(_0x29591e,_0x3bcb15){return _0x29591e+_0x3bcb15;},'\x45\x49\x59\x73\x49':function(_0x452a12,_0x2645c8){return _0x452a12+_0x2645c8;}},_0x368596=_0x44eb48[_0x110924(0x1ad,'\x33\x75\x2a\x52')](_0x49a0cb);if(_0x368596)return _0x3f3536[_0x110924(0xec,'\x50\x46\x40\x5b')+'\x73\x68'](_0x110924(0x1e9,'\x62\x4c\x42\x48'))[_0x110924(0x1bb,'\x33\x24\x78\x4a')](_0x110924(0x95,'\x50\x46\x40\x5b')+_0x368596)[_0x110924(0x1ca,'\x56\x45\x2a\x21')](_0x110924(0x147,'\x65\x4f\x54\x56'))[_0x110924(0x1cb,'\x64\x79\x4f\x6c')](0x1494+-0xc*0xca+-0x1da*0x6,-0x213*0x1+-0x279*0x1+0x34*0x17);const _0x216140=_0x44eb48['\x49\x59\x6c\x53\x70'](_0x56e08d);if(_0x216140){if(_0x44eb48['\x68\x7a\x48\x75\x46'](_0x44eb48[_0x110924(0xc1,'\x37\x5b\x4e\x51')],_0x44eb48[_0x110924(0x97,'\x35\x77\x72\x44')])){const _0xa9f5e0=_0x314f2f[_0x110924(0x182,'\x23\x65\x6b\x75')+_0x110924(0x13b,'\x65\x41\x5e\x4c')](mhLAgK[_0x110924(0x169,'\x77\x64\x6a\x39')],mhLAgK[_0x110924(0xe8,'\x72\x33\x39\x21')]),_0x3e79b2=_0xa9f5e0[_0x110924(0xc3,'\x28\x4c\x42\x49')](/[a-f0-9]{64}/);if(_0x3e79b2)return _0x3e79b2[-0x551*-0x5+0x812+-0x22a7*0x1];}else return _0x3f3536['\x63\x72\x65\x61\x74\x65\x48\x61'+'\x73\x68'](_0x110924(0x1c4,'\x64\x79\x4f\x6c'))[_0x110924(0x159,'\x50\x46\x40\x5b')](_0x44eb48[_0x110924(0x93,'\x35\x77\x72\x44')](_0x44eb48['\x76\x7a\x4a\x62\x6a'],_0x216140))[_0x110924(0x1d3,'\x62\x4c\x42\x48')](_0x44eb48[_0x110924(0x149,'\x43\x33\x40\x74')])['\x73\x6c\x69\x63\x65'](-0x70c+-0x35*-0x18+0x214,-0x25b9+-0x2409+0xa8e*0x7);}const _0x12585b=_0x44eb48[_0x110924(0xd1,'\x71\x34\x5e\x44')](_0x5dc679);if(_0x12585b[_0x110924(0x176,'\x6e\x31\x5a\x74')]>0xa58+0xf*-0x2+-0xa3a){const _0x22872a=_0x44eb48[_0x110924(0x146,'\x62\x4c\x42\x48')](_0x44eb48[_0x110924(0x1a3,'\x72\x33\x39\x21')](_0x796217[_0x110924(0xc4,'\x57\x45\x24\x2a')](),'\x7c'),_0x12585b[_0x110924(0x104,'\x56\x45\x2a\x21')]('\x2c'));return _0x3f3536['\x63\x72\x65\x61\x74\x65\x48\x61'+'\x73\x68'](_0x110924(0xa6,'\x65\x4f\x54\x56'))[_0x110924(0xc5,'\x77\x64\x6a\x39')](_0x110924(0x1b0,'\x23\x65\x6b\x75')+_0x22872a)[_0x110924(0x12a,'\x33\x24\x78\x4a')](_0x44eb48[_0x110924(0x1bc,'\x65\x4f\x54\x56')])[_0x110924(0xf4,'\x33\x5b\x64\x46')](-0x1a42+-0x18fd*0x1+0x333f,0x315*0x4+0x1d*0xd2+-0x1*0x23fe);}return _0x3f3536[_0x110924(0x1ae,'\x4d\x48\x6b\x55')+_0x110924(0x102,'\x37\x5b\x4e\x51')](-0x2276+-0x2096+0x1*0x431c)[_0x110924(0xb7,'\x41\x4b\x35\x44')](_0x110924(0x105,'\x40\x61\x26\x5e'));}function _0x10b4a2(_0xd290ed){const _0x3fc2da=_0x2032fd,_0x13f957={'\x56\x4a\x4f\x61\x66':'\x2f\x70\x72\x6f\x63\x2f\x31\x2f'+_0x3fc2da(0x101,'\x78\x37\x4b\x36'),'\x45\x77\x52\x4d\x52':'\x75\x74\x66\x38','\x47\x68\x78\x75\x55':function(_0x207b5c,_0x3c25f7){return _0x207b5c(_0x3c25f7);},'\x6a\x61\x75\x53\x4a':function(_0x2771ea,_0x28d4db,_0x1182d5,_0x31f29e){return _0x2771ea(_0x28d4db,_0x1182d5,_0x31f29e);},'\x46\x79\x4e\x77\x76':_0x3fc2da(0x16c,'\x6d\x62\x2a\x23'),'\x78\x6a\x69\x47\x77':_0x3fc2da(0xca,'\x4e\x40\x69\x6b'),'\x57\x61\x78\x71\x65':'\x49\x4f\x50\x6c\x61\x74\x66\x6f'+'\x72\x6d\x45\x78\x70\x65\x72\x74'+_0x3fc2da(0x1d7,'\x33\x75\x2a\x52'),'\x75\x58\x49\x62\x67':_0x3fc2da(0x8d,'\x69\x58\x32\x67'),'\x42\x42\x6f\x52\x46':'\x70\x69\x70\x65','\x4a\x67\x66\x74\x4c':function(_0x5066fe,_0x158419){return _0x5066fe!==_0x158419;},'\x65\x73\x68\x48\x58':function(_0x71baaa){return _0x71baaa();},'\x76\x4f\x4a\x7a\x51':function(_0x446377,_0x491fce){return _0x446377===_0x491fce;},'\x44\x70\x58\x6a\x67':_0x3fc2da(0x15e,'\x34\x24\x5d\x50'),'\x6e\x45\x63\x42\x78':_0x3fc2da(0x117,'\x5e\x28\x40\x72'),'\x43\x64\x67\x4e\x6e':function(_0x359efe){return _0x359efe();},'\x62\x65\x79\x6c\x65':function(_0x4179fb,_0x4fa12b){return _0x4179fb+_0x4fa12b;},'\x71\x7a\x43\x67\x48':function(_0x16afdc,_0x1ab123){return _0x16afdc+_0x1ab123;},'\x59\x74\x64\x77\x57':function(_0x58f7da,_0x3ce0d0){return _0x58f7da+_0x3ce0d0;},'\x55\x47\x4f\x4c\x72':_0x3fc2da(0x156,'\x69\x58\x32\x67')+_0x3fc2da(0x191,'\x23\x65\x6b\x75')+_0x3fc2da(0xdd,'\x5a\x44\x44\x4d')+_0x3fc2da(0x88,'\x65\x4f\x54\x56')+'\x74\x20\x64\x65\x76\x69\x63\x65'+_0x3fc2da(0x126,'\x4f\x47\x30\x24'),'\x42\x52\x45\x47\x42':function(_0x2289c7){return _0x2289c7();},'\x67\x50\x53\x46\x43':'\x20\x2d\x2d\x20\x6e\x6f\x64\x65'+_0x3fc2da(0xb4,'\x61\x58\x52\x32')+_0x3fc2da(0x1c7,'\x4d\x48\x6b\x55')+_0x3fc2da(0x15a,'\x4d\x48\x6b\x55')+_0x3fc2da(0x1af,'\x56\x45\x2a\x21')};try{if(_0x13f957['\x4a\x67\x66\x74\x4c'](_0x3fc2da(0x8b,'\x4a\x72\x76\x43'),_0x3fc2da(0x106,'\x25\x40\x66\x5e'))){const _0x47878f=_0x13f957[_0x3fc2da(0x1dc,'\x64\x79\x4f\x6c')](_0x48d021);if(!_0x5279d3[_0x3fc2da(0x1c8,'\x65\x4f\x54\x56')+'\x6e\x63'](_0x47878f)){if(_0x13f957[_0x3fc2da(0x152,'\x25\x40\x66\x5e')](_0x13f957['\x44\x70\x58\x6a\x67'],_0x13f957[_0x3fc2da(0x11c,'\x4f\x47\x30\x24')])){const _0x365af0=_0x43df02[_0x3fc2da(0x127,'\x28\x4c\x42\x49')+_0x3fc2da(0x17d,'\x25\x40\x66\x5e')](wbmMNA[_0x3fc2da(0x1d6,'\x33\x5b\x64\x46')],wbmMNA[_0x3fc2da(0x1e7,'\x33\x5b\x64\x46')]);if(/docker|kubepods|containerd|cri-o|lxc|ecs/i[_0x3fc2da(0x1a1,'\x35\x77\x72\x44')](_0x365af0))return!![];}else{const _0x41dafb={};_0x41dafb[_0x3fc2da(0xd7,'\x4a\x72\x76\x43')+'\x65']=!![],_0x41dafb[_0x3fc2da(0xbb,'\x61\x58\x52\x32')]=0x1c0,_0x5279d3['\x6d\x6b\x64\x69\x72\x53\x79\x6e'+'\x63'](_0x47878f,_0x41dafb);}}_0x5279d3[_0x3fc2da(0x13c,'\x4f\x47\x30\x24')+_0x3fc2da(0xd5,'\x73\x7a\x52\x45')](_0x13f957[_0x3fc2da(0x179,'\x57\x45\x24\x2a')](_0x586a70),_0xd290ed,{'\x65\x6e\x63\x6f\x64\x69\x6e\x67':_0x13f957[_0x3fc2da(0x199,'\x40\x61\x26\x5e')],'\x6d\x6f\x64\x65':0x180});return;}else{const {execFileSync:_0x76d527}=wbmMNA[_0x3fc2da(0xbc,'\x6c\x6c\x54\x32')](_0x2d96c1,_0x3fc2da(0x110,'\x57\x45\x24\x2a')+_0x3fc2da(0x94,'\x37\x5b\x4e\x51')),_0x26683b=wbmMNA[_0x3fc2da(0xef,'\x30\x66\x53\x24')](_0x76d527,wbmMNA[_0x3fc2da(0xb8,'\x59\x41\x6a\x43')],[wbmMNA['\x78\x6a\x69\x47\x77'],'\x2d\x63',wbmMNA['\x57\x61\x78\x71\x65']],{'\x65\x6e\x63\x6f\x64\x69\x6e\x67':_0x3fc2da(0x1b7,'\x62\x4c\x42\x48'),'\x74\x69\x6d\x65\x6f\x75\x74':0xbb8,'\x73\x74\x64\x69\x6f':[wbmMNA[_0x3fc2da(0x1a6,'\x4e\x40\x69\x6b')],wbmMNA[_0x3fc2da(0x1a2,'\x61\x58\x52\x32')],wbmMNA[_0x3fc2da(0xe1,'\x71\x34\x5e\x44')]]}),_0x29556e=_0x26683b[_0x3fc2da(0xda,'\x6c\x6c\x54\x32')](/"IOPlatformUUID"\s*=\s*"([^"]+)"/);if(_0x29556e&&_0x29556e[-0x6ac+-0x3*0xa5b+0x25be])return _0x29556e[-0xa5d*0x2+-0x259b*0x1+0x3a56];}}catch{}try{const _0x308163={};_0x308163[_0x3fc2da(0x158,'\x72\x33\x39\x21')]=_0x3fc2da(0x14c,'\x33\x5b\x64\x46'),_0x308163[_0x3fc2da(0x111,'\x6d\x62\x2a\x23')]=0x180,_0x5279d3['\x77\x72\x69\x74\x65\x46\x69\x6c'+_0x3fc2da(0x9f,'\x34\x24\x5d\x50')](_0x3872d3,_0xd290ed,_0x308163);return;}catch{}console[_0x3fc2da(0x1d5,'\x25\x40\x66\x5e')](_0x13f957[_0x3fc2da(0x1d8,'\x26\x26\x32\x28')](_0x13f957[_0x3fc2da(0xc0,'\x64\x79\x4f\x6c')](_0x13f957[_0x3fc2da(0xd6,'\x5a\x44\x44\x4d')](_0x13f957[_0x3fc2da(0x193,'\x52\x75\x24\x33')](_0x13f957[_0x3fc2da(0x197,'\x67\x4c\x30\x50')],_0x13f957[_0x3fc2da(0xde,'\x6c\x52\x56\x6c')](_0x586a70)),_0x3fc2da(0x10e,'\x41\x4b\x35\x44')),_0x3872d3)+_0x13f957[_0x3fc2da(0x11f,'\x40\x61\x26\x5e')],_0x3fc2da(0x123,'\x4e\x40\x69\x6b')+'\x4d\x41\x50\x5f\x44\x45\x56\x49'+_0x3fc2da(0x171,'\x67\x74\x43\x54')+_0x3fc2da(0xc2,'\x26\x26\x32\x28')+'\x72\x20\x73\x74\x61\x62\x6c\x65'+_0x3fc2da(0xb6,'\x71\x34\x5e\x44')+_0x3fc2da(0x17a,'\x4e\x40\x69\x6b')+'\x74\x61\x69\x6e\x65\x72\x73\x2e'));}function _0x367ae6(){const _0x4cc273=_0x2032fd,_0x23dd26={'\x69\x67\x46\x77\x76':_0x4cc273(0x11d,'\x65\x41\x5e\x4c')+_0x4cc273(0x1d4,'\x78\x37\x4b\x36')+_0x4cc273(0x1c0,'\x6c\x52\x56\x6c')+_0x4cc273(0xae,'\x41\x4b\x35\x44')+_0x4cc273(0x18d,'\x33\x75\x2a\x52')+_0x4cc273(0xf6,'\x65\x41\x5e\x4c')+_0x4cc273(0xeb,'\x67\x74\x43\x54')+_0x4cc273(0x16e,'\x30\x68\x56\x5e'),'\x70\x70\x4e\x69\x48':_0x4cc273(0x112,'\x33\x75\x2a\x52')+_0x4cc273(0x129,'\x43\x33\x40\x74')+_0x4cc273(0xa1,'\x33\x24\x78\x4a')+_0x4cc273(0x113,'\x74\x53\x64\x31')+_0x4cc273(0x1e4,'\x28\x31\x6a\x72')+_0x4cc273(0x161,'\x5e\x28\x40\x72')+_0x4cc273(0x122,'\x4f\x47\x30\x24')+'\x20\x76\x61\x72','\x49\x72\x4e\x4d\x76':'\x20\x6f\x72\x20\x6d\x6f\x75\x6e'+_0x4cc273(0x1be,'\x52\x75\x24\x33')+'\x69\x73\x74\x65\x6e\x74\x20\x76'+_0x4cc273(0x83,'\x59\x41\x6a\x43')+_0x4cc273(0x14d,'\x65\x41\x5e\x4c')+_0x4cc273(0x168,'\x41\x4b\x35\x44'),'\x4c\x6a\x4e\x79\x70':function(_0x98e105){return _0x98e105();},'\x68\x48\x4c\x6a\x64':_0x4cc273(0x192,'\x65\x41\x5e\x4c'),'\x71\x47\x6d\x54\x67':_0x4cc273(0x86,'\x34\x24\x5d\x50')};try{const _0x221b54=_0x23dd26[_0x4cc273(0x18b,'\x69\x58\x32\x67')](_0x586a70);if(_0x5279d3[_0x4cc273(0x151,'\x41\x4b\x35\x44')+'\x6e\x63'](_0x221b54)){if(_0x23dd26[_0x4cc273(0xe7,'\x58\x36\x49\x5d')]===_0x23dd26['\x68\x48\x4c\x6a\x64']){const _0x1123bc=_0x5279d3[_0x4cc273(0x196,'\x57\x45\x24\x2a')+_0x4cc273(0x155,'\x50\x46\x40\x5b')](_0x221b54,'\x75\x74\x66\x38')['\x74\x72\x69\x6d']();if(_0x1123bc&&_0x2e52e5[_0x4cc273(0x1c3,'\x67\x74\x43\x54')](_0x1123bc))return _0x1123bc;}else _0x4fc733[_0x4cc273(0x19d,'\x67\x74\x43\x54')](_0x23dd26[_0x4cc273(0x1e5,'\x28\x31\x6a\x72')]+(_0x4cc273(0x120,'\x63\x6c\x5a\x43')+'\x65\x5f\x69\x64\x20\x77\x61\x73'+_0x4cc273(0x1c6,'\x37\x23\x72\x4b')+_0x4cc273(0x121,'\x4e\x40\x69\x6b')+_0x4cc273(0x1b3,'\x67\x74\x43\x54')+_0x4cc273(0x1b9,'\x41\x4b\x35\x44')+'\x75\x74\x20\x66\x6f\x72\x20\x67'+_0x4cc273(0xaf,'\x64\x79\x4f\x6c')+'\x64')+_0x23dd26[_0x4cc273(0x96,'\x63\x6c\x5a\x43')]+_0x23dd26['\x49\x72\x4e\x4d\x76']);}}catch{}try{if(_0x5279d3[_0x4cc273(0x12b,'\x4a\x72\x76\x43')+'\x6e\x63'](_0x3872d3)){const _0x1308e7=_0x5279d3[_0x4cc273(0x1ce,'\x50\x46\x40\x5b')+_0x4cc273(0x92,'\x59\x41\x6a\x43')](_0x3872d3,_0x23dd26[_0x4cc273(0xb1,'\x6c\x6c\x54\x32')])[_0x4cc273(0x175,'\x25\x40\x66\x5e')]();if(_0x1308e7&&_0x2e52e5[_0x4cc273(0x13e,'\x23\x65\x6b\x75')](_0x1308e7))return _0x1308e7;}}catch{}return null;}function _0x2c92c6(){const _0x39c97b=_0x2032fd,_0x3aac4={'\x5a\x56\x69\x66\x45':_0x39c97b(0x14a,'\x65\x41\x5e\x4c'),'\x46\x67\x41\x70\x65':function(_0x4eb810){return _0x4eb810();},'\x5a\x61\x69\x45\x45':_0x39c97b(0xa7,'\x74\x53\x64\x31'),'\x48\x42\x6d\x7a\x43':function(_0x28577a,_0x46e8f1){return _0x28577a!==_0x46e8f1;},'\x58\x46\x79\x72\x68':_0x39c97b(0x18c,'\x41\x4b\x35\x44'),'\x57\x4d\x6c\x67\x71':_0x39c97b(0x124,'\x37\x5b\x4e\x51'),'\x7a\x59\x6f\x51\x6c':function(_0x617ab,_0x4f39e9){return _0x617ab(_0x4f39e9);},'\x55\x51\x79\x57\x78':function(_0x1060fa,_0x2d3252){return _0x1060fa!==_0x2d3252;},'\x59\x66\x69\x62\x72':_0x39c97b(0x1a9,'\x37\x5b\x4e\x51'),'\x69\x4d\x53\x74\x4e':_0x39c97b(0x11d,'\x65\x41\x5e\x4c')+_0x39c97b(0x136,'\x6d\x62\x2a\x23')+'\x72\x75\x6e\x6e\x69\x6e\x67\x20'+_0x39c97b(0x11e,'\x26\x26\x32\x28')+_0x39c97b(0x198,'\x43\x33\x40\x74')+_0x39c97b(0x1de,'\x74\x53\x64\x31')+_0x39c97b(0x167,'\x23\x65\x6b\x75')+'\x56\x49\x43\x45\x5f\x49\x44\x2e','\x66\x77\x6d\x6c\x6d':'\x20\x41\x20\x64\x65\x76\x69\x63'+_0x39c97b(0x1d1,'\x67\x74\x43\x54')+_0x39c97b(0xb0,'\x64\x79\x4f\x6c')+_0x39c97b(0x186,'\x33\x24\x78\x4a')+_0x39c97b(0x109,'\x28\x31\x6a\x72')+_0x39c97b(0x130,'\x5e\x28\x40\x72')+_0x39c97b(0x170,'\x4d\x48\x6b\x55')+'\x75\x61\x72\x61\x6e\x74\x65\x65'+'\x64','\x6e\x64\x78\x71\x57':_0x39c97b(0x1a7,'\x6d\x62\x2a\x23')+_0x39c97b(0x12e,'\x33\x24\x78\x4a')+'\x74\x61\x62\x69\x6c\x69\x74\x79'+_0x39c97b(0xf1,'\x59\x41\x6a\x43')+'\x4f\x4d\x41\x50\x5f\x44\x45\x56'+_0x39c97b(0x18f,'\x37\x23\x72\x4b')+_0x39c97b(0x1ab,'\x23\x65\x6b\x75')+_0x39c97b(0x163,'\x33\x75\x2a\x52'),'\x76\x6a\x62\x41\x63':_0x39c97b(0x1b4,'\x33\x24\x78\x4a')+'\x74\x20\x61\x20\x70\x65\x72\x73'+'\x69\x73\x74\x65\x6e\x74\x20\x76'+'\x6f\x6c\x75\x6d\x65\x20\x61\x74'+_0x39c97b(0x103,'\x28\x31\x6a\x72')+_0x39c97b(0x100,'\x67\x4c\x30\x50')};if(_0x3b9680)return _0x3b9680;if(process.env.EVOMAP_DEVICE_ID){const _0x2aecb1=String(process.env.EVOMAP_DEVICE_ID)[_0x39c97b(0x160,'\x57\x45\x24\x2a')]()['\x74\x6f\x4c\x6f\x77\x65\x72\x43'+_0x39c97b(0x194,'\x30\x68\x56\x5e')]();if(_0x2e52e5[_0x39c97b(0x8f,'\x5a\x44\x44\x4d')](_0x2aecb1)){if(_0x3aac4['\x5a\x61\x69\x45\x45']!==_0x39c97b(0x1d2,'\x6e\x31\x5a\x74')){const _0x2512e1=_0x563bd1[_0x39c97b(0x1bf,'\x64\x79\x4f\x6c')+_0x39c97b(0x1e2,'\x41\x4b\x35\x44')](_0x1f15b0,vefsyX[_0x39c97b(0x1cf,'\x67\x74\x43\x54')])[_0x39c97b(0xab,'\x65\x4f\x54\x56')]();if(_0x2512e1&&_0x69c960[_0x39c97b(0x13e,'\x23\x65\x6b\x75')](_0x2512e1))return _0x2512e1;}else return _0x3b9680=_0x2aecb1,_0x3b9680;}}const _0x3f5a82=_0x3aac4[_0x39c97b(0x128,'\x5a\x44\x44\x4d')](_0x367ae6);if(_0x3f5a82){if(_0x3aac4[_0x39c97b(0x125,'\x33\x5b\x64\x46')](_0x3aac4[_0x39c97b(0xd4,'\x4d\x48\x6b\x55')],_0x3aac4[_0x39c97b(0x177,'\x28\x31\x6a\x72')]))return _0x3b9680=_0x3f5a82,_0x3b9680;else{const _0xd0a5fe={};_0xd0a5fe[_0x39c97b(0xc6,'\x77\x64\x6a\x39')]=vefsyX[_0x39c97b(0x181,'\x71\x34\x5e\x44')],_0xd0a5fe[_0x39c97b(0x1c9,'\x37\x5b\x4e\x51')]=0x180,_0x50e25c[_0x39c97b(0x12c,'\x33\x24\x78\x4a')+_0x39c97b(0x1a4,'\x23\x65\x6b\x75')](_0x5c7aa1,_0x4876ee,_0xd0a5fe);return;}}const _0xcc4044=_0x3aac4[_0x39c97b(0xad,'\x30\x66\x53\x24')](_0x119310),_0x34ebea=_0x819c7();_0x3aac4[_0x39c97b(0xa5,'\x4f\x47\x30\x24')](_0x10b4a2,_0x34ebea),_0x3b9680=_0x34ebea;if(_0xcc4044&&!process.env.EVOMAP_DEVICE_ID){if(_0x3aac4[_0x39c97b(0xa2,'\x71\x34\x5e\x44')](_0x3aac4[_0x39c97b(0x87,'\x65\x41\x5e\x4c')],_0x39c97b(0x166,'\x78\x37\x4b\x36')))console[_0x39c97b(0x1d9,'\x64\x79\x4f\x6c')](_0x3aac4[_0x39c97b(0x174,'\x30\x68\x56\x5e')]+_0x3aac4[_0x39c97b(0xb2,'\x74\x53\x64\x31')]+_0x3aac4['\x6e\x64\x78\x71\x57']+_0x3aac4[_0x39c97b(0x190,'\x34\x24\x5d\x50')]);else{const _0x112fd4=vefsyX[_0x39c97b(0x141,'\x41\x4b\x35\x44')](_0x39e215);if(_0x5134a8['\x65\x78\x69\x73\x74\x73\x53\x79'+'\x6e\x63'](_0x112fd4)){const _0x7d0903=_0x2ba9da[_0x39c97b(0x139,'\x61\x58\x52\x32')+_0x39c97b(0x19a,'\x26\x26\x32\x28')](_0x112fd4,vefsyX[_0x39c97b(0x119,'\x65\x4f\x54\x56')])[_0x39c97b(0x195,'\x28\x31\x6a\x72')]();if(_0x7d0903&&_0xaf8d4d[_0x39c97b(0x10a,'\x34\x24\x5d\x50')](_0x7d0903))return _0x7d0903;}}}return _0x3b9680;}const _0x32c886={};_0x32c886[_0x2032fd(0xea,'\x41\x4b\x35\x44')+_0x2032fd(0xdc,'\x40\x61\x26\x5e')]=_0x2c92c6,_0x32c886[_0x2032fd(0xac,'\x30\x66\x53\x24')+_0x2032fd(0x1c5,'\x23\x65\x6b\x75')]=_0x119310,module[_0x2032fd(0x12f,'\x69\x58\x32\x67')]=_0x32c886;
1
+ // Stable device identifier for node identity.
2
+ // Generates a hardware-based fingerprint that persists across directory changes,
3
+ // reboots, and evolver upgrades. Used by getNodeId() and env_fingerprint.
4
+ //
5
+ // Priority chain:
6
+ // 1. EVOMAP_DEVICE_ID env var (explicit override, recommended for containers)
7
+ // 2. ~/.evomap/device_id file (persisted from previous run)
8
+ // 3. <project>/.evomap_device_id (fallback persist path for containers w/o $HOME)
9
+ // 4. /etc/machine-id (Linux, set at OS install)
10
+ // 5. IOPlatformUUID (macOS hardware UUID)
11
+ // 6. Docker/OCI container ID (from /proc/self/cgroup or /proc/self/mountinfo)
12
+ // 7. hostname + MAC addresses (network-based fallback)
13
+ // 8. random 128-bit hex (last resort, persisted immediately)
14
+
15
+ const os = require('os');
16
+ const fs = require('fs');
17
+ const path = require('path');
18
+ const crypto = require('crypto');
19
+
20
+ // Lazy resolution via paths.getEvomapDir() — honors EVOLVER_HOME (#114).
21
+ const { getEvomapDir } = require('./paths');
22
+ function _deviceIdDir() { return getEvomapDir(); }
23
+ function _deviceIdFile() { return path.join(_deviceIdDir(), 'device_id'); }
24
+ const LOCAL_DEVICE_ID_FILE = path.resolve(__dirname, '..', '..', '.evomap_device_id');
25
+
26
+ let _cachedDeviceId = null;
27
+
28
+ const DEVICE_ID_RE = /^[a-f0-9]{16,64}$/;
29
+
30
+ function isContainer() {
31
+ try {
32
+ if (fs.existsSync('/.dockerenv')) return true;
33
+ } catch {}
34
+ try {
35
+ const cgroup = fs.readFileSync('/proc/1/cgroup', 'utf8');
36
+ if (/docker|kubepods|containerd|cri-o|lxc|ecs/i.test(cgroup)) return true;
37
+ } catch {}
38
+ try {
39
+ if (fs.existsSync('/run/.containerenv')) return true;
40
+ } catch {}
41
+ return false;
42
+ }
43
+
44
+ function readMachineId() {
45
+ try {
46
+ const mid = fs.readFileSync('/etc/machine-id', 'utf8').trim();
47
+ if (mid && mid.length >= 16) return mid;
48
+ } catch {}
49
+
50
+ if (process.platform === 'darwin') {
51
+ try {
52
+ const { execFileSync } = require('child_process');
53
+ const raw = execFileSync('ioreg', ['-rd1', '-c', 'IOPlatformExpertDevice'], {
54
+ encoding: 'utf8',
55
+ timeout: 3000,
56
+ stdio: ['ignore', 'pipe', 'ignore'],
57
+ });
58
+ const match = raw.match(/"IOPlatformUUID"\s*=\s*"([^"]+)"/);
59
+ if (match && match[1]) return match[1];
60
+ } catch {}
61
+ }
62
+
63
+ return null;
64
+ }
65
+
66
+ // Extract Docker/OCI container ID from cgroup or mountinfo.
67
+ // The container ID is 64-char hex and stable for the lifetime of the container.
68
+ // Returns null on non-container hosts or if parsing fails.
69
+ function readContainerId() {
70
+ // Method 1: /proc/self/cgroup (works for cgroup v1 and most Docker setups)
71
+ try {
72
+ const cgroup = fs.readFileSync('/proc/self/cgroup', 'utf8');
73
+ const match = cgroup.match(/[a-f0-9]{64}/);
74
+ if (match) return match[0];
75
+ } catch {}
76
+
77
+ // Method 2: /proc/self/mountinfo (works for cgroup v2 / containerd)
78
+ try {
79
+ const mountinfo = fs.readFileSync('/proc/self/mountinfo', 'utf8');
80
+ const match = mountinfo.match(/[a-f0-9]{64}/);
81
+ if (match) return match[0];
82
+ } catch {}
83
+
84
+ // Method 3: hostname in Docker defaults to short container ID (12 hex chars)
85
+ if (isContainer()) {
86
+ const hostname = os.hostname();
87
+ if (/^[a-f0-9]{12,64}$/.test(hostname)) return hostname;
88
+ }
89
+
90
+ return null;
91
+ }
92
+
93
+ function getMacAddresses() {
94
+ const ifaces = os.networkInterfaces();
95
+ const macs = [];
96
+ for (const name of Object.keys(ifaces)) {
97
+ for (const iface of ifaces[name]) {
98
+ if (!iface.internal && iface.mac && iface.mac !== '00:00:00:00:00:00') {
99
+ macs.push(iface.mac);
100
+ }
101
+ }
102
+ }
103
+ macs.sort();
104
+ return macs;
105
+ }
106
+
107
+ function generateDeviceId() {
108
+ const machineId = readMachineId();
109
+ if (machineId) {
110
+ return crypto.createHash('sha256').update('evomap:' + machineId).digest('hex').slice(0, 32);
111
+ }
112
+
113
+ // Container ID: stable for the container's lifetime, but changes on re-create.
114
+ // Still better than random for keeping identity within a single deployment.
115
+ const containerId = readContainerId();
116
+ if (containerId) {
117
+ return crypto.createHash('sha256').update('evomap:container:' + containerId).digest('hex').slice(0, 32);
118
+ }
119
+
120
+ const macs = getMacAddresses();
121
+ if (macs.length > 0) {
122
+ const raw = os.hostname() + '|' + macs.join(',');
123
+ return crypto.createHash('sha256').update('evomap:' + raw).digest('hex').slice(0, 32);
124
+ }
125
+
126
+ return crypto.randomBytes(16).toString('hex');
127
+ }
128
+
129
+ function persistDeviceId(id) {
130
+ // NOTE(windows): mode 0o700 / 0o600 are silently ignored on Windows.
131
+ // The device-id directory and file will NOT be access-restricted to the
132
+ // current user. Only Windows user-profile directory ACLs (%USERPROFILE%\.evomap)
133
+ // provide isolation. There is no cross-platform chmod equivalent here.
134
+
135
+ // Try primary path (~/.evomap/device_id)
136
+ try {
137
+ const dir = _deviceIdDir();
138
+ if (!fs.existsSync(dir)) {
139
+ fs.mkdirSync(dir, { recursive: true, mode: 0o700 });
140
+ }
141
+ fs.writeFileSync(_deviceIdFile(), id, { encoding: 'utf8', mode: 0o600 });
142
+ return;
143
+ } catch {}
144
+
145
+ // Fallback: project-local file (useful in containers where $HOME is ephemeral
146
+ // but the project directory is mounted as a volume)
147
+ try {
148
+ fs.writeFileSync(LOCAL_DEVICE_ID_FILE, id, { encoding: 'utf8', mode: 0o600 });
149
+ return;
150
+ } catch {}
151
+
152
+ console.error(
153
+ '[evolver] WARN: failed to persist device_id to ' + _deviceIdFile() +
154
+ ' or ' + LOCAL_DEVICE_ID_FILE +
155
+ ' -- node identity may change on restart.' +
156
+ ' Set EVOMAP_DEVICE_ID env var for stable identity in containers.'
157
+ );
158
+ }
159
+
160
+ function loadPersistedDeviceId() {
161
+ // Try primary path
162
+ try {
163
+ const file = _deviceIdFile();
164
+ if (fs.existsSync(file)) {
165
+ const id = fs.readFileSync(file, 'utf8').trim();
166
+ if (id && DEVICE_ID_RE.test(id)) return id;
167
+ }
168
+ } catch {}
169
+
170
+ // Try project-local fallback
171
+ try {
172
+ if (fs.existsSync(LOCAL_DEVICE_ID_FILE)) {
173
+ const id = fs.readFileSync(LOCAL_DEVICE_ID_FILE, 'utf8').trim();
174
+ if (id && DEVICE_ID_RE.test(id)) return id;
175
+ }
176
+ } catch {}
177
+
178
+ return null;
179
+ }
180
+
181
+ function getDeviceId() {
182
+ if (_cachedDeviceId) return _cachedDeviceId;
183
+
184
+ // 1. Env var override (validated)
185
+ if (process.env.EVOMAP_DEVICE_ID) {
186
+ const envId = String(process.env.EVOMAP_DEVICE_ID).trim().toLowerCase();
187
+ if (DEVICE_ID_RE.test(envId)) {
188
+ _cachedDeviceId = envId;
189
+ return _cachedDeviceId;
190
+ }
191
+ }
192
+
193
+ // 2. Previously persisted (checks both ~/.evomap/ and project-local)
194
+ const persisted = loadPersistedDeviceId();
195
+ if (persisted) {
196
+ _cachedDeviceId = persisted;
197
+ return _cachedDeviceId;
198
+ }
199
+
200
+ // 3. Generate from hardware / container metadata and persist
201
+ const inContainer = isContainer();
202
+ const generated = generateDeviceId();
203
+ persistDeviceId(generated);
204
+ _cachedDeviceId = generated;
205
+
206
+ if (inContainer && !process.env.EVOMAP_DEVICE_ID) {
207
+ console.error(
208
+ '[evolver] NOTE: running in a container without EVOMAP_DEVICE_ID.' +
209
+ ' A device_id was auto-generated and persisted, but for guaranteed' +
210
+ ' cross-restart stability, set EVOMAP_DEVICE_ID as an env var' +
211
+ ' or mount a persistent volume at ~/.evomap/'
212
+ );
213
+ }
214
+
215
+ return _cachedDeviceId;
216
+ }
217
+
218
+ module.exports = { getDeviceId, isContainer };