@evomap/evolver 1.89.20 → 2.0.0-beta.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 (231) hide show
  1. package/README.md +27 -564
  2. package/bin/evolver-llm-proxy.js +3 -0
  3. package/bin/evolver-mcp.js +2 -0
  4. package/bin/evolver-proxy.js +3 -0
  5. package/bin/evolver.js +4 -0
  6. package/index.js +1 -3586
  7. package/package.json +32 -62
  8. package/CONTRIBUTING.md +0 -19
  9. package/LICENSE +0 -641
  10. package/README.ja-JP.md +0 -521
  11. package/README.ko-KR.md +0 -520
  12. package/README.zh-CN.md +0 -531
  13. package/SKILL.md +0 -365
  14. package/assets/cover.png +0 -0
  15. package/assets/gep/genes.seed.json +0 -496
  16. package/conformance/savings-core/constants.json +0 -30
  17. package/conformance/savings-core/golden-vectors.json +0 -333
  18. package/scripts/a2a_export.js +0 -63
  19. package/scripts/a2a_ingest.js +0 -79
  20. package/scripts/a2a_promote.js +0 -118
  21. package/scripts/analyze_by_skill.js +0 -121
  22. package/scripts/build_binaries.js +0 -479
  23. package/scripts/check-changelog.js +0 -166
  24. package/scripts/extract_log.js +0 -85
  25. package/scripts/generate_history.js +0 -75
  26. package/scripts/gep_append_event.js +0 -96
  27. package/scripts/gep_personality_report.js +0 -234
  28. package/scripts/human_report.js +0 -147
  29. package/scripts/recall-verify-report.js +0 -234
  30. package/scripts/recover_loop.js +0 -61
  31. package/scripts/refresh_stars_badge.js +0 -168
  32. package/scripts/seed-merchants.js +0 -91
  33. package/scripts/skill2recipes.js +0 -118
  34. package/scripts/suggest_version.js +0 -89
  35. package/scripts/validate-modules.js +0 -38
  36. package/scripts/validate-suite.js +0 -78
  37. package/skills/_meta/SKILL.md +0 -41
  38. package/skills/index.json +0 -14
  39. package/src/adapters/claudeCode.js +0 -194
  40. package/src/adapters/codex.js +0 -216
  41. package/src/adapters/cursor.js +0 -91
  42. package/src/adapters/hookAdapter.js +0 -469
  43. package/src/adapters/kiro.js +0 -195
  44. package/src/adapters/opencode.js +0 -326
  45. package/src/adapters/scripts/_lockPaths.js +0 -74
  46. package/src/adapters/scripts/_memoryFiltering.js +0 -35
  47. package/src/adapters/scripts/_runtimePaths.js +0 -440
  48. package/src/adapters/scripts/evolver-session-end.js +0 -321
  49. package/src/adapters/scripts/evolver-session-start.js +0 -587
  50. package/src/adapters/scripts/evolver-signal-detect.js +0 -98
  51. package/src/adapters/scripts/evolver-task-recall.js +0 -173
  52. package/src/atp/atpExecute.js +0 -283
  53. package/src/atp/atpTaskPickup.js +0 -233
  54. package/src/atp/autoBuyer.js +0 -382
  55. package/src/atp/autoDeliver.js +0 -215
  56. package/src/atp/cli.js +0 -354
  57. package/src/atp/cliAutobuyPrompt.js +0 -154
  58. package/src/atp/consumerAgent.js +0 -157
  59. package/src/atp/defaultHandler.js +0 -69
  60. package/src/atp/heartbeatSignalsHandler.js +0 -254
  61. package/src/atp/hubClient.js +0 -317
  62. package/src/atp/index.js +0 -38
  63. package/src/atp/merchantAgent.js +0 -118
  64. package/src/atp/protocol.js +0 -41
  65. package/src/atp/questionComposer.js +0 -133
  66. package/src/atp/serviceHelper.js +0 -92
  67. package/src/canary.js +0 -13
  68. package/src/config.js +0 -351
  69. package/src/evolve/guards.js +0 -1
  70. package/src/evolve/pipeline/collect.js +0 -1
  71. package/src/evolve/pipeline/dispatch.js +0 -1
  72. package/src/evolve/pipeline/enrich.js +0 -1
  73. package/src/evolve/pipeline/hub.js +0 -1
  74. package/src/evolve/pipeline/select.js +0 -1
  75. package/src/evolve/pipeline/signals.js +0 -1
  76. package/src/evolve/utils.js +0 -1
  77. package/src/evolve.js +0 -1
  78. package/src/experiment/agentRunner.js +0 -229
  79. package/src/experiment/cli.js +0 -159
  80. package/src/experiment/comparison.js +0 -233
  81. package/src/experiment/metrics.js +0 -75
  82. package/src/forceUpdate.js +0 -991
  83. package/src/gep/a2a.js +0 -173
  84. package/src/gep/a2aProtocol.js +0 -1
  85. package/src/gep/analyzer.js +0 -35
  86. package/src/gep/antiAbuseTelemetry.js +0 -1
  87. package/src/gep/assetCallLog.js +0 -197
  88. package/src/gep/assetStore.js +0 -723
  89. package/src/gep/assets.js +0 -36
  90. package/src/gep/autoDistillConv.js +0 -1
  91. package/src/gep/autoDistillLlm.js +0 -1
  92. package/src/gep/bridge.js +0 -138
  93. package/src/gep/candidateEval.js +0 -1
  94. package/src/gep/candidates.js +0 -1
  95. package/src/gep/claimNudge.js +0 -121
  96. package/src/gep/cliContracts.js +0 -1190
  97. package/src/gep/contentHash.js +0 -1
  98. package/src/gep/conversationDistiller.js +0 -1
  99. package/src/gep/conversationSniffer.js +0 -1
  100. package/src/gep/crypto.js +0 -1
  101. package/src/gep/curriculum.js +0 -1
  102. package/src/gep/deviceId.js +0 -1
  103. package/src/gep/directoryClient.js +0 -115
  104. package/src/gep/envFingerprint.js +0 -1
  105. package/src/gep/epigenetics.js +0 -1
  106. package/src/gep/execBridge.js +0 -1
  107. package/src/gep/executionTrace.js +0 -291
  108. package/src/gep/explore.js +0 -1
  109. package/src/gep/featureFlags.js +0 -121
  110. package/src/gep/gitOps.js +0 -265
  111. package/src/gep/hash.js +0 -1
  112. package/src/gep/hostErrorClassifier.js +0 -34
  113. package/src/gep/hubFetch.js +0 -1
  114. package/src/gep/hubReview.js +0 -1
  115. package/src/gep/hubSearch.js +0 -1
  116. package/src/gep/hubVerify.js +0 -1
  117. package/src/gep/idleScheduler.js +0 -400
  118. package/src/gep/issueReporter.js +0 -416
  119. package/src/gep/learningSignals.js +0 -1
  120. package/src/gep/llmReview.js +0 -92
  121. package/src/gep/localStateAwareness.js +0 -243
  122. package/src/gep/mailboxTransport.js +0 -119
  123. package/src/gep/memoryGraph.js +0 -1
  124. package/src/gep/memoryGraphAdapter.js +0 -1
  125. package/src/gep/mutation.js +0 -1
  126. package/src/gep/narrativeMemory.js +0 -1
  127. package/src/gep/oauthLogin.js +0 -181
  128. package/src/gep/openPRRegistry.js +0 -1
  129. package/src/gep/paths.js +0 -522
  130. package/src/gep/personality.js +0 -1
  131. package/src/gep/policyCheck.js +0 -1
  132. package/src/gep/portable.js +0 -103
  133. package/src/gep/privacyClient.js +0 -235
  134. package/src/gep/prompt.js +0 -1
  135. package/src/gep/questionGenerator.js +0 -518
  136. package/src/gep/recallInject.js +0 -1
  137. package/src/gep/recallVerifier.js +0 -1
  138. package/src/gep/reflection.js +0 -1
  139. package/src/gep/sanitize.js +0 -264
  140. package/src/gep/savingsCore.js +0 -1
  141. package/src/gep/schemas/capsule.js +0 -170
  142. package/src/gep/schemas/gene.js +0 -154
  143. package/src/gep/schemas/index.js +0 -8
  144. package/src/gep/schemas/protocol.js +0 -51
  145. package/src/gep/schemas/task.js +0 -74
  146. package/src/gep/selector.js +0 -1
  147. package/src/gep/selfPR.js +0 -469
  148. package/src/gep/signals.js +0 -776
  149. package/src/gep/skill2gep.js +0 -1056
  150. package/src/gep/skill2gepAudit.js +0 -303
  151. package/src/gep/skill2recipes.js +0 -511
  152. package/src/gep/skillDistiller.js +0 -1
  153. package/src/gep/skillPublisher.js +0 -358
  154. package/src/gep/solidify.js +0 -1
  155. package/src/gep/strategy.js +0 -1
  156. package/src/gep/taskReceiver.js +0 -575
  157. package/src/gep/tokenSavings.js +0 -1
  158. package/src/gep/trajectoryExport.js +0 -1
  159. package/src/gep/validationReport.js +0 -55
  160. package/src/gep/validator/index.js +0 -411
  161. package/src/gep/validator/reporter.js +0 -210
  162. package/src/gep/validator/sandboxExecutor.js +0 -480
  163. package/src/gep/validator/stakeBootstrap.js +0 -357
  164. package/src/gep/workspaceKeychain.js +0 -1
  165. package/src/ops/cleanup.js +0 -80
  166. package/src/ops/commentary.js +0 -60
  167. package/src/ops/health_check.js +0 -104
  168. package/src/ops/index.js +0 -11
  169. package/src/ops/innovation.js +0 -67
  170. package/src/ops/lifecycle.js +0 -798
  171. package/src/ops/self_repair.js +0 -76
  172. package/src/ops/skills_monitor.js +0 -147
  173. package/src/ops/trigger.js +0 -33
  174. package/src/proxy/clientSettings.js +0 -405
  175. package/src/proxy/envelope.js +0 -59
  176. package/src/proxy/extensions/dmHandler.js +0 -45
  177. package/src/proxy/extensions/sessionHandler.js +0 -141
  178. package/src/proxy/extensions/skillUpdater.js +0 -64
  179. package/src/proxy/extensions/traceControl.js +0 -1
  180. package/src/proxy/index.js +0 -1395
  181. package/src/proxy/inject.js +0 -1
  182. package/src/proxy/lifecycle/manager.js +0 -1568
  183. package/src/proxy/mailbox/state.js +0 -207
  184. package/src/proxy/mailbox/store.js +0 -590
  185. package/src/proxy/router/cache_passthrough.js +0 -26
  186. package/src/proxy/router/features.js +0 -84
  187. package/src/proxy/router/gemini_route.js +0 -154
  188. package/src/proxy/router/messages_route.js +0 -535
  189. package/src/proxy/router/model_router.js +0 -113
  190. package/src/proxy/router/models_route.js +0 -52
  191. package/src/proxy/router/ollama_route.js +0 -103
  192. package/src/proxy/router/responses_route.js +0 -170
  193. package/src/proxy/router/vertex_route.js +0 -110
  194. package/src/proxy/server/http.js +0 -363
  195. package/src/proxy/server/routes.js +0 -558
  196. package/src/proxy/server/settings.js +0 -115
  197. package/src/proxy/sync/engine.js +0 -179
  198. package/src/proxy/sync/inbound.js +0 -211
  199. package/src/proxy/sync/outbound.js +0 -320
  200. package/src/proxy/task/monitor.js +0 -131
  201. package/src/proxy/trace/extractor.js +0 -1
  202. package/src/proxy/trace/usage.js +0 -1
  203. package/src/webui/client/clientJs/assets.js +0 -111
  204. package/src/webui/client/clientJs/bootstrap.js +0 -92
  205. package/src/webui/client/clientJs/common.js +0 -77
  206. package/src/webui/client/clientJs/i18n.js +0 -366
  207. package/src/webui/client/clientJs/index.js +0 -35
  208. package/src/webui/client/clientJs/interactions.js +0 -351
  209. package/src/webui/client/clientJs/overview.js +0 -152
  210. package/src/webui/client/clientJs/personality.js +0 -285
  211. package/src/webui/client/clientJs/pipelines.js +0 -330
  212. package/src/webui/client/indexHtml.js +0 -221
  213. package/src/webui/client/static.js +0 -23
  214. package/src/webui/client/stylesCss.js +0 -639
  215. package/src/webui/client/vendor/README.md +0 -15
  216. package/src/webui/client/vendor/echarts.min.js +0 -45
  217. package/src/webui/index.js +0 -14
  218. package/src/webui/observer/assets.js +0 -146
  219. package/src/webui/observer/index.js +0 -37
  220. package/src/webui/observer/interactions.js +0 -127
  221. package/src/webui/observer/jsonl.js +0 -75
  222. package/src/webui/observer/paths.js +0 -46
  223. package/src/webui/observer/personality.js +0 -43
  224. package/src/webui/observer/pipelineEvents.js +0 -58
  225. package/src/webui/observer/redact.js +0 -63
  226. package/src/webui/observer/runs.js +0 -356
  227. package/src/webui/observer/safety.js +0 -57
  228. package/src/webui/observer/skills.js +0 -70
  229. package/src/webui/observer/status.js +0 -71
  230. package/src/webui/server/http.js +0 -138
  231. package/src/webui/server/routes.js +0 -41
@@ -1 +0,0 @@
1
- const _0x83241d=_0x299c;(function(_0x425aec,_0x164896){const _0x549c14=_0x299c,_0x265807=_0x425aec();while(!![]){try{const _0x38c931=-parseInt(_0x549c14(0x188,'\x54\x39\x21\x78'))/(-0x21af+0x26a5+-0x4f5)+-parseInt(_0x549c14(0x24b,'\x35\x26\x26\x47'))/(-0xfa4+-0x1f58+-0x177f*-0x2)+parseInt(_0x549c14(0x1b4,'\x39\x67\x46\x77'))/(0x1cce+0x1314+-0x2fdf)+parseInt(_0x549c14(0x24d,'\x21\x6d\x6a\x68'))/(-0x4e3+0xf4a+-0x1*0xa63)+-parseInt(_0x549c14(0x178,'\x50\x5a\x31\x30'))/(-0xb*-0x3e+0xb3*-0x13+0xaa4)+parseInt(_0x549c14(0x24c,'\x4f\x39\x6e\x63'))/(-0x965*0x1+0x96d*-0x4+0x2f1f)*(-parseInt(_0x549c14(0x128,'\x50\x5a\x31\x30'))/(0x1b94+0x1af+0x4*-0x74f))+parseInt(_0x549c14(0xf2,'\x50\x55\x31\x65'))/(-0x962*0x2+-0x1fab+-0x3277*-0x1)*(parseInt(_0x549c14(0x224,'\x36\x32\x6a\x52'))/(0x1374+0xdc7+-0x2132));if(_0x38c931===_0x164896)break;else _0x265807['push'](_0x265807['shift']());}catch(_0x33e4f8){_0x265807['push'](_0x265807['shift']());}}}(_0x35e3,-0x38b05+0x1e8bf+-0x10c*-0x394));const _0x5b63ae=(function(){const _0x2e375a=_0x299c,_0x58330f={};_0x58330f[_0x2e375a(0x100,'\x61\x71\x70\x39')]=_0x2e375a(0x151,'\x77\x52\x44\x33'),_0x58330f[_0x2e375a(0x165,'\x32\x6d\x45\x24')]=_0x2e375a(0x22f,'\x77\x4b\x39\x28');const _0x18fcf0=_0x58330f;let _0x285f58=!![];return function(_0x45cf1c,_0x51d2ed){const _0x25ee65=_0x285f58?function(){const _0x172d3e=_0x299c;if(_0x51d2ed){if(_0x18fcf0[_0x172d3e(0x131,'\x49\x33\x40\x61')]===_0x18fcf0[_0x172d3e(0x18c,'\x77\x52\x44\x33')]){var _0x19732a=_0x664e29['\x64\x69\x72\x6e\x61\x6d\x65'](_0x47c43d());const _0x4a4a38={};_0x4a4a38[_0x172d3e(0x1ba,'\x31\x65\x49\x43')+'\x65']=!![];if(!_0x490b7f[_0x172d3e(0x209,'\x25\x6a\x30\x7a')+'\x6e\x63'](_0x19732a))_0x92dc30[_0x172d3e(0x107,'\x77\x4b\x39\x28')+'\x63'](_0x19732a,_0x4a4a38);}else{const _0x507548=_0x51d2ed[_0x172d3e(0x192,'\x49\x33\x40\x61')](_0x45cf1c,arguments);return _0x51d2ed=null,_0x507548;}}}:function(){};return _0x285f58=![],_0x25ee65;};}()),_0x22151f=_0x5b63ae(this,function(){const _0x2fde8e=_0x299c,_0x35bfc1={};_0x35bfc1['\x42\x42\x75\x49\x55']=_0x2fde8e(0x1d3,'\x4f\x78\x67\x51')+_0x2fde8e(0x1e5,'\x35\x54\x7a\x5a');const _0xb2cc77=_0x35bfc1;return _0x22151f[_0x2fde8e(0x174,'\x32\x6d\x45\x24')]()[_0x2fde8e(0xe8,'\x4f\x78\x67\x51')](_0xb2cc77[_0x2fde8e(0x126,'\x35\x54\x7a\x5a')])[_0x2fde8e(0x1f7,'\x77\x52\x44\x33')]()['\x63\x6f\x6e\x73\x74\x72\x75\x63'+_0x2fde8e(0x1ac,'\x5b\x33\x5d\x36')](_0x22151f)[_0x2fde8e(0x1b2,'\x54\x39\x21\x78')](_0xb2cc77[_0x2fde8e(0x23a,'\x6c\x58\x77\x54')]);});function _0x35e3(){const _0x2d79a2=['\x57\x37\x4b\x54\x57\x36\x53\x30\x57\x35\x47','\x78\x65\x64\x63\x48\x38\x6b\x72\x57\x4f\x43','\x57\x50\x6d\x46\x79\x64\x38\x6c\x57\x37\x50\x5a\x6f\x57','\x42\x33\x48\x56','\x57\x50\x78\x64\x55\x53\x6b\x76\x57\x37\x70\x64\x52\x57','\x66\x43\x6b\x39\x68\x49\x52\x64\x4c\x47','\x77\x77\x5a\x63\x4d\x59\x64\x63\x56\x47','\x79\x58\x68\x63\x49\x78\x4c\x74\x57\x52\x52\x63\x52\x4d\x43','\x64\x4b\x6d\x4a\x71\x57','\x57\x35\x5a\x64\x47\x47\x68\x64\x47\x6d\x6b\x50\x57\x34\x37\x64\x49\x72\x69','\x57\x52\x39\x48\x57\x50\x6e\x73\x57\x37\x57','\x57\x36\x58\x62\x57\x34\x43\x47\x66\x61','\x57\x36\x5a\x64\x4f\x48\x64\x64\x4a\x53\x6b\x67','\x57\x50\x2f\x64\x4a\x53\x6b\x31\x57\x35\x4e\x64\x47\x61','\x65\x33\x78\x64\x47\x6d\x6f\x75\x64\x38\x6f\x71\x57\x35\x70\x63\x4a\x57','\x57\x34\x65\x36\x57\x37\x6d\x6b\x57\x35\x37\x63\x56\x64\x4a\x64\x48\x61','\x6a\x32\x57\x46\x75\x32\x34','\x7a\x67\x4c\x59\x41\x71','\x57\x4f\x62\x46\x57\x37\x34\x4d\x57\x4f\x56\x64\x4d\x59\x72\x30','\x7a\x33\x43\x6b\x6d\x32\x4a\x64\x55\x53\x6b\x6a\x69\x53\x6f\x47\x57\x50\x6a\x76\x57\x51\x6d','\x79\x62\x33\x63\x4d\x30\x47','\x57\x51\x74\x63\x4e\x6d\x6f\x2b\x57\x35\x61\x46\x64\x43\x6b\x6b\x57\x37\x6d','\x78\x43\x6f\x35\x57\x35\x4e\x63\x53\x61\x5a\x64\x47\x4a\x46\x64\x48\x47','\x68\x62\x72\x53\x44\x72\x61','\x57\x52\x47\x79\x57\x52\x68\x63\x4d\x43\x6b\x44\x57\x35\x61\x42\x57\x34\x57','\x76\x53\x6b\x4e\x57\x34\x33\x63\x52\x53\x6f\x45','\x41\x53\x6f\x6a\x67\x43\x6b\x42\x57\x36\x70\x63\x50\x5a\x38\x67\x57\x50\x76\x75\x57\x4f\x6e\x64','\x78\x66\x6c\x64\x4c\x78\x48\x7a','\x79\x58\x68\x63\x49\x78\x58\x64\x57\x52\x78\x63\x4a\x33\x4f','\x57\x4f\x47\x6f\x75\x62\x43\x2f','\x65\x67\x69\x2b\x45\x75\x53\x78\x6f\x53\x6b\x67','\x65\x38\x6b\x33\x62\x49\x64\x64\x4c\x6d\x6f\x35\x65\x47','\x70\x73\x76\x7a\x41\x49\x37\x63\x4e\x6d\x6b\x51\x68\x47','\x57\x35\x46\x64\x4a\x53\x6f\x38','\x57\x52\x7a\x4d\x75\x53\x6b\x59\x64\x47','\x41\x77\x44\x78\x57\x51\x38\x61\x57\x51\x75\x73\x77\x38\x6b\x79\x77\x33\x57','\x67\x53\x6f\x61\x57\x37\x76\x6c\x6f\x66\x71','\x57\x36\x31\x37\x57\x35\x69\x59\x6a\x71','\x62\x6d\x6f\x38\x57\x37\x69\x33\x57\x52\x37\x63\x49\x38\x6f\x72\x76\x47','\x66\x6d\x6b\x67\x79\x53\x6f\x49\x57\x51\x61','\x57\x34\x6d\x6b\x57\x34\x31\x52\x78\x71','\x43\x74\x52\x64\x56\x64\x54\x46\x77\x4c\x64\x64\x55\x57','\x57\x51\x70\x63\x47\x38\x6b\x6d\x70\x74\x43\x48','\x57\x50\x79\x47\x57\x34\x71','\x57\x4f\x39\x6a\x57\x52\x43\x52\x45\x61','\x57\x34\x50\x41\x57\x50\x58\x63\x75\x57','\x76\x57\x33\x63\x4b\x31\x69','\x46\x67\x4a\x63\x51\x6d\x6b\x46\x57\x50\x61','\x57\x50\x68\x63\x51\x5a\x61\x2b','\x73\x6d\x6b\x46\x57\x37\x46\x63\x52\x38\x6f\x55','\x76\x6d\x6b\x6b\x57\x52\x65','\x57\x36\x74\x64\x4c\x68\x31\x58\x68\x71','\x57\x51\x42\x63\x4b\x43\x6f\x38\x57\x35\x75\x65\x6d\x6d\x6b\x77\x57\x34\x69','\x7a\x43\x6b\x61\x57\x52\x35\x6f\x57\x36\x5a\x63\x47\x33\x66\x62','\x46\x76\x78\x63\x48\x53\x6f\x72\x57\x51\x69\x4e','\x57\x4f\x33\x64\x53\x6d\x6b\x35\x57\x35\x74\x64\x4a\x31\x30\x57\x57\x50\x71','\x57\x37\x33\x64\x56\x61\x42\x64\x48\x38\x6b\x70','\x41\x53\x6f\x6c\x67\x43\x6b\x79\x57\x36\x68\x63\x4f\x72\x69\x38\x57\x52\x58\x36\x57\x52\x44\x5a','\x6b\x38\x6b\x4d\x46\x5a\x4e\x64\x47\x71','\x57\x34\x71\x4e\x6f\x4b\x4c\x31\x57\x34\x71\x53\x57\x52\x43','\x57\x51\x74\x63\x4e\x38\x6b\x69\x6a\x57','\x66\x6d\x6b\x64\x70\x47','\x6e\x33\x46\x64\x47\x53\x6f\x43','\x76\x77\x44\x44\x57\x50\x48\x43','\x76\x73\x57\x71\x61\x6d\x6f\x57\x57\x50\x70\x63\x52\x57','\x67\x68\x6c\x64\x55\x53\x6b\x6a\x63\x43\x6b\x38\x57\x37\x4f\x30','\x57\x50\x68\x64\x48\x6d\x6f\x57','\x62\x6d\x6b\x6a\x41\x48\x34','\x57\x35\x31\x77\x57\x34\x62\x45','\x46\x65\x78\x63\x50\x6d\x6b\x66\x57\x52\x57','\x57\x37\x35\x6b\x57\x50\x70\x64\x53\x71','\x41\x4c\x42\x63\x50\x71','\x46\x31\x4e\x63\x50\x6d\x6f\x66\x57\x51\x71\x59\x71\x57','\x79\x74\x5a\x64\x4e\x73\x66\x6d\x78\x4c\x53','\x57\x4f\x38\x4e\x46\x65\x4b','\x76\x4e\x6c\x63\x4a\x71\x56\x63\x4c\x61','\x57\x35\x4f\x5a\x57\x34\x79\x73\x57\x34\x78\x63\x55\x5a\x70\x64\x56\x61','\x69\x5a\x71\x6f\x57\x36\x31\x77\x57\x4f\x6d','\x57\x37\x6a\x4d\x57\x36\x69\x6e\x61\x57','\x57\x36\x6c\x64\x47\x6d\x6f\x44\x45\x4e\x76\x47\x66\x6d\x6f\x44\x57\x34\x48\x77\x57\x50\x72\x69','\x6b\x43\x6f\x47\x69\x61','\x57\x36\x65\x6a\x57\x36\x44\x76','\x71\x72\x64\x64\x50\x48\x31\x35','\x57\x50\x6c\x63\x53\x74\x57\x4b\x57\x4f\x76\x6e\x57\x36\x69\x46','\x77\x53\x6f\x37\x61\x62\x42\x63\x51\x61','\x57\x52\x57\x7a\x57\x34\x33\x63\x4c\x6d\x6b\x49\x44\x53\x6f\x59\x57\x35\x57','\x63\x67\x53\x62\x75\x38\x6b\x58\x57\x34\x30','\x70\x59\x69\x31\x57\x35\x48\x77','\x57\x50\x34\x33\x42\x30\x65\x2f','\x6a\x53\x6f\x59\x69\x61','\x45\x4e\x37\x64\x4e\x32\x58\x53\x44\x4c\x64\x63\x56\x47','\x57\x51\x68\x64\x54\x43\x6f\x48\x43\x4d\x35\x68\x57\x52\x71','\x57\x35\x4c\x4c\x57\x36\x75\x59\x62\x61','\x57\x36\x66\x2f\x57\x52\x74\x64\x50\x53\x6b\x4d','\x57\x36\x31\x36\x57\x36\x53\x43\x66\x47','\x57\x52\x38\x6a\x57\x34\x68\x63\x4c\x43\x6b\x58\x77\x53\x6f\x2b\x57\x35\x69','\x57\x4f\x48\x6f\x73\x43\x6b\x67\x65\x6d\x6f\x48\x57\x35\x57','\x57\x36\x6d\x64\x57\x37\x79','\x57\x51\x30\x48\x45\x5a\x71\x6b','\x57\x51\x38\x58\x57\x36\x4a\x63\x48\x38\x6b\x34','\x57\x51\x2f\x63\x4b\x38\x6f\x2f\x57\x35\x4b\x66\x66\x57','\x67\x62\x50\x50\x75\x33\x57','\x57\x34\x4b\x48\x57\x34\x39\x50\x44\x71','\x57\x52\x42\x64\x56\x6d\x6b\x37\x57\x35\x52\x64\x55\x57','\x62\x32\x79\x34\x71\x4c\x53','\x57\x35\x5a\x64\x4e\x48\x6c\x63\x4d\x38\x6f\x59\x57\x50\x38','\x68\x4e\x71\x7a\x78\x4c\x69\x43\x65\x6d\x6b\x61','\x57\x52\x6a\x6c\x57\x51\x50\x64','\x65\x53\x6f\x42\x57\x37\x4b\x57\x57\x52\x6d','\x74\x38\x6b\x44\x57\x4f\x6e\x55\x57\x37\x61','\x57\x36\x70\x64\x4b\x53\x6b\x57\x57\x50\x6a\x44\x73\x53\x6f\x65\x57\x4f\x75','\x78\x38\x6b\x47\x57\x51\x48\x57\x57\x37\x56\x64\x48\x43\x6b\x74\x67\x71','\x57\x4f\x7a\x46\x57\x36\x57\x76\x57\x4f\x42\x64\x4b\x64\x76\x6f','\x57\x36\x76\x51\x57\x36\x34\x6a\x70\x61','\x57\x34\x6d\x38\x57\x37\x50\x45\x74\x61','\x74\x4b\x78\x64\x47\x66\x76\x42','\x57\x34\x4a\x64\x56\x4c\x6e\x69','\x57\x34\x58\x64\x57\x35\x69\x68','\x43\x67\x64\x64\x4b\x61','\x57\x34\x52\x64\x48\x61\x68\x64\x48\x53\x6b\x31','\x57\x52\x4f\x2b\x57\x35\x4e\x63\x4c\x43\x6b\x48','\x57\x34\x42\x64\x56\x74\x37\x64\x4d\x43\x6b\x6b','\x57\x52\x57\x7a\x57\x34\x2f\x63\x48\x43\x6b\x77\x42\x6d\x6f\x33\x57\x34\x38','\x57\x51\x56\x64\x4d\x74\x70\x63\x4b\x48\x38','\x57\x4f\x71\x7a\x45\x62\x38\x4d','\x57\x36\x5a\x64\x54\x6d\x6f\x54\x57\x50\x50\x66','\x79\x63\x33\x64\x48\x4a\x58\x7a\x71\x67\x33\x64\x50\x71','\x42\x65\x4a\x63\x48\x38\x6b\x6d','\x65\x43\x6f\x6d\x57\x36\x30\x6a','\x6e\x74\x58\x70\x42\x63\x34','\x57\x37\x30\x77\x57\x34\x72\x4a\x44\x47','\x70\x43\x6b\x67\x71\x6d\x6f\x42\x57\x51\x64\x64\x50\x4a\x71\x4d','\x79\x58\x68\x63\x49\x77\x6e\x64\x57\x51\x4a\x63\x4a\x31\x4f','\x57\x35\x6e\x53\x57\x50\x33\x64\x53\x5a\x6d','\x57\x35\x54\x64\x57\x50\x35\x6c\x74\x47','\x57\x37\x38\x6a\x57\x37\x58\x45','\x43\x65\x6a\x42\x57\x52\x54\x36','\x57\x35\x56\x64\x4a\x4e\x58\x54\x44\x72\x66\x36\x57\x37\x79','\x63\x53\x6f\x63\x57\x36\x6e\x66\x70\x47','\x57\x34\x56\x64\x4b\x59\x64\x64\x4a\x6d\x6b\x4b\x57\x35\x56\x64\x48\x71\x61','\x42\x76\x70\x63\x47\x53\x6f\x42\x57\x52\x30','\x73\x30\x7a\x79\x57\x50\x6e\x45','\x75\x6d\x6b\x6a\x57\x34\x78\x63\x54\x6d\x6f\x70\x43\x61','\x6c\x43\x6b\x30\x74\x53\x6f\x6f\x57\x50\x61','\x57\x4f\x31\x6b\x74\x38\x6b\x67\x62\x43\x6f\x4a\x57\x35\x30','\x6e\x31\x68\x64\x48\x6d\x6f\x7a\x7a\x61','\x6c\x6d\x6b\x72\x45\x53\x6f\x43\x57\x51\x42\x64\x56\x61\x4b\x34','\x43\x4c\x52\x63\x4c\x48\x33\x63\x47\x57','\x57\x35\x5a\x64\x4e\x58\x74\x64\x48\x38\x6b\x4d\x57\x34\x78\x64\x4b\x57','\x57\x52\x54\x6c\x57\x51\x7a\x54\x57\x35\x43\x38\x57\x37\x6c\x63\x4c\x61','\x57\x34\x4f\x51\x57\x35\x66\x74\x79\x61\x5a\x63\x4c\x71\x65','\x65\x4e\x75\x34\x78\x4b\x57','\x43\x65\x2f\x63\x4f\x6d\x6f\x67\x57\x51\x6d\x59\x76\x47','\x57\x51\x74\x63\x52\x59\x38\x73\x57\x50\x65','\x57\x52\x74\x63\x4e\x53\x6b\x46\x6a\x59\x6d\x2f\x6b\x71','\x57\x34\x39\x46\x57\x50\x35\x70\x78\x53\x6b\x44\x57\x34\x4a\x63\x4c\x57','\x57\x50\x6e\x42\x74\x53\x6b\x43\x63\x53\x6f\x4a\x57\x35\x68\x63\x52\x57','\x57\x51\x65\x41\x57\x34\x4a\x63\x4a\x43\x6b\x35\x41\x38\x6f\x2b','\x57\x36\x48\x4f\x57\x50\x37\x64\x4e\x63\x53','\x41\x31\x2f\x64\x4d\x32\x50\x58','\x57\x34\x56\x64\x4b\x53\x6f\x70\x57\x4f\x62\x44','\x68\x4d\x38\x4d\x41\x78\x38','\x76\x38\x6b\x61\x57\x52\x76\x45\x57\x36\x4a\x63\x47\x78\x61','\x57\x37\x76\x65\x57\x50\x6d','\x57\x34\x4e\x64\x50\x30\x35\x41\x6d\x6d\x6f\x48\x74\x43\x6f\x32','\x57\x4f\x58\x62\x57\x37\x4f\x71\x57\x50\x33\x64\x4d\x59\x6e\x71','\x57\x35\x53\x50\x57\x35\x31\x56','\x6c\x43\x6b\x6f\x74\x43\x6f\x6a\x57\x51\x64\x64\x53\x61','\x6c\x6d\x6b\x42\x77\x53\x6f\x43','\x6f\x4d\x4a\x64\x4b\x43\x6f\x71\x78\x71','\x57\x34\x71\x55\x57\x37\x31\x47\x68\x38\x6b\x2b\x57\x36\x53\x4a','\x57\x34\x56\x64\x4a\x59\x56\x64\x52\x53\x6b\x6d','\x65\x38\x6b\x33\x66\x4a\x52\x64\x49\x53\x6f\x38\x68\x53\x6f\x56','\x57\x34\x46\x64\x55\x61\x52\x64\x50\x43\x6b\x4c','\x41\x4a\x70\x64\x49\x73\x6e\x65\x78\x76\x56\x64\x47\x57','\x57\x34\x2f\x64\x47\x32\x4b\x78\x6e\x75\x75','\x62\x6d\x6b\x47\x62\x59\x64\x64\x49\x47','\x61\x38\x6f\x46\x57\x37\x6a\x62\x65\x31\x46\x63\x55\x4e\x57','\x57\x51\x78\x63\x47\x38\x6b\x6c\x43\x71','\x57\x35\x61\x4d\x57\x34\x6a\x62\x73\x57','\x57\x52\x4f\x74\x57\x36\x6c\x63\x4a\x53\x6b\x4e\x79\x6d\x6f\x50\x57\x36\x4b','\x57\x50\x4c\x32\x57\x52\x65\x56\x71\x6d\x6f\x59','\x65\x53\x6f\x57\x6b\x43\x6b\x4b\x61\x71','\x57\x36\x43\x38\x57\x36\x72\x72\x76\x57','\x6d\x5a\x58\x79\x79\x49\x4a\x63\x51\x53\x6b\x42\x65\x71','\x67\x4b\x6d\x36\x43\x33\x65','\x57\x4f\x4e\x64\x55\x6d\x6b\x47\x57\x35\x75','\x57\x35\x4c\x44\x57\x52\x33\x64\x56\x5a\x43','\x72\x67\x56\x63\x4a\x6d\x6b\x57\x57\x4f\x5a\x64\x48\x6d\x6f\x43\x57\x36\x79','\x57\x51\x72\x58\x57\x50\x38\x75\x79\x57','\x57\x36\x57\x64\x57\x37\x50\x33\x7a\x6d\x6b\x55\x57\x35\x39\x39','\x57\x50\x42\x64\x4e\x5a\x64\x64\x52\x43\x6b\x4b\x57\x37\x52\x64\x54\x71','\x69\x64\x47\x44\x57\x37\x50\x72','\x77\x38\x6f\x35\x6f\x49\x52\x63\x4a\x71','\x74\x32\x52\x64\x52\x67\x48\x44','\x57\x34\x37\x64\x48\x4d\x66\x72','\x74\x43\x6b\x73\x57\x37\x56\x63\x52\x38\x6f\x43\x7a\x43\x6f\x6d\x57\x51\x6d','\x41\x67\x50\x5a\x45\x30\x75','\x68\x32\x4f\x68\x62\x6d\x6f\x33\x57\x4f\x38','\x57\x37\x4e\x64\x4d\x43\x6f\x62\x57\x37\x56\x63\x4b\x47','\x57\x4f\x69\x47\x43\x78\x57\x50','\x68\x4d\x2f\x64\x55\x43\x6b\x74\x63\x71','\x62\x38\x6f\x7a\x57\x37\x47\x78\x57\x51\x4b','\x46\x43\x6f\x64\x64\x71\x2f\x63\x52\x47','\x57\x35\x35\x7a\x57\x50\x75','\x70\x66\x75\x48\x44\x75\x53','\x57\x4f\x39\x37\x57\x35\x47\x2b\x57\x50\x53','\x57\x51\x33\x64\x55\x43\x6f\x72\x78\x76\x75','\x6d\x33\x2f\x64\x4a\x43\x6f\x79\x77\x38\x6f\x6d','\x57\x34\x4e\x64\x4a\x43\x6f\x78\x57\x4f\x66\x77\x6b\x43\x6b\x50\x6d\x47','\x57\x51\x46\x64\x51\x58\x68\x63\x53\x47\x71\x36\x73\x71','\x6e\x64\x47\x69\x57\x37\x50\x67\x57\x50\x38','\x57\x35\x78\x64\x56\x38\x6f\x62\x57\x35\x74\x63\x4b\x71','\x57\x37\x4f\x6e\x57\x34\x76\x2b\x43\x57','\x57\x51\x74\x64\x51\x62\x4e\x63\x55\x72\x4b\x38','\x65\x53\x6b\x2b\x68\x63\x5a\x64\x4e\x71','\x45\x75\x6a\x65\x57\x4f\x6a\x2b','\x57\x52\x2f\x63\x4b\x43\x6b\x6c\x6a\x73\x53\x38\x6b\x43\x6f\x42','\x74\x6d\x6b\x42\x57\x34\x6c\x63\x52\x6d\x6f\x74\x42\x43\x6f\x66\x57\x50\x75','\x61\x59\x47\x62\x57\x37\x57','\x57\x4f\x78\x63\x54\x38\x6f\x5a\x57\x35\x79\x66','\x57\x34\x6c\x64\x4e\x72\x46\x64\x47\x6d\x6b\x31\x57\x37\x52\x64\x4d\x72\x4f','\x57\x37\x42\x64\x47\x38\x6f\x75\x57\x37\x5a\x63\x49\x47','\x57\x52\x4c\x6d\x57\x52\x48\x6f\x57\x35\x47\x30\x57\x37\x53','\x57\x4f\x79\x6e\x57\x35\x79\x68\x61\x43\x6b\x58\x43\x71','\x57\x52\x39\x66\x57\x52\x61\x6e\x57\x35\x53\x50\x57\x37\x68\x63\x4b\x57','\x70\x59\x48\x42\x42\x5a\x78\x63\x4f\x43\x6b\x32','\x57\x34\x30\x37\x57\x35\x79\x70','\x65\x32\x34\x62\x61\x47','\x57\x52\x4a\x63\x4b\x53\x6b\x76','\x6d\x77\x5a\x63\x4c\x4e\x43\x41\x61\x30\x2f\x64\x56\x49\x47\x66\x42\x73\x38','\x65\x4a\x48\x75\x57\x52\x76\x68\x57\x52\x37\x64\x4b\x38\x6b\x6d','\x57\x36\x43\x44\x57\x36\x34\x77\x57\x36\x79\x6f\x57\x35\x33\x63\x54\x43\x6f\x79\x57\x52\x53','\x70\x4e\x72\x75\x73\x75\x53\x53\x6f\x71','\x57\x37\x6e\x4b\x57\x51\x6a\x61\x43\x47','\x6e\x4a\x61\x64\x57\x36\x58\x71','\x57\x50\x48\x51\x57\x50\x47\x46\x42\x47','\x57\x51\x6c\x63\x4b\x53\x6b\x6f\x70\x64\x61\x48\x6a\x43\x6f\x59','\x75\x6d\x6b\x64\x69\x38\x6b\x50','\x77\x6d\x6f\x69\x62\x71\x33\x63\x56\x57','\x57\x50\x2f\x63\x52\x30\x31\x52\x6d\x38\x6f\x30\x43\x43\x6f\x2f','\x57\x52\x76\x79\x57\x51\x44\x73\x57\x34\x75\x31','\x57\x35\x4f\x5a\x57\x34\x79\x73\x57\x34\x78\x63\x55\x5a\x6d','\x57\x37\x65\x4c\x57\x34\x48\x54\x42\x47','\x57\x50\x78\x64\x51\x43\x6b\x74\x57\x35\x2f\x64\x4d\x61','\x43\x38\x6f\x78\x61\x53\x6b\x6d','\x57\x35\x39\x67\x57\x4f\x6c\x64\x4e\x63\x75','\x57\x4f\x4e\x63\x4d\x43\x6f\x77\x57\x35\x71\x46','\x57\x50\x33\x64\x4b\x53\x6f\x66\x7a\x76\x43','\x67\x4b\x56\x64\x4e\x43\x6b\x69\x66\x57','\x57\x35\x6c\x64\x4c\x53\x6f\x55\x57\x35\x4f','\x45\x66\x2f\x63\x55\x5a\x52\x63\x4f\x57\x5a\x64\x55\x4d\x75','\x43\x76\x2f\x63\x53\x74\x2f\x63\x50\x61\x46\x64\x4a\x57','\x76\x43\x6f\x52\x74\x68\x46\x63\x4a\x38\x6b\x2f\x62\x53\x6f\x37\x6e\x4e\x75\x6f\x76\x57','\x44\x43\x6b\x72\x57\x4f\x62\x48\x57\x34\x69','\x57\x4f\x58\x62\x57\x36\x6d\x6b\x57\x50\x56\x64\x4a\x71\x6e\x4f','\x46\x30\x52\x63\x53\x47','\x57\x34\x76\x66\x57\x52\x6e\x67\x78\x38\x6b\x77\x57\x37\x4a\x63\x4a\x61','\x57\x50\x52\x64\x50\x64\x42\x63\x4a\x5a\x53','\x44\x63\x64\x64\x47\x59\x50\x67','\x57\x36\x58\x5a\x57\x52\x68\x64\x4f\x74\x47','\x61\x6d\x6b\x39\x6a\x57\x2f\x63\x4e\x4b\x65\x44\x65\x71','\x75\x67\x56\x63\x52\x43\x6b\x34\x57\x4f\x42\x64\x47\x53\x6f\x4d\x57\x37\x61','\x46\x74\x64\x63\x4c\x65\x6d','\x57\x51\x76\x62\x78\x43\x6b\x78\x63\x6d\x6f\x48\x57\x35\x57','\x57\x4f\x71\x6b\x7a\x4a\x43','\x57\x37\x5a\x64\x4c\x62\x64\x64\x52\x43\x6b\x76','\x71\x33\x5a\x63\x4c\x38\x6b\x50\x57\x4f\x64\x64\x54\x53\x6f\x51\x57\x36\x47','\x57\x52\x76\x41\x57\x52\x4c\x50\x57\x34\x6d','\x57\x35\x30\x57\x57\x35\x47','\x57\x52\x6e\x73\x57\x51\x35\x6e\x57\x34\x6d\x55\x57\x36\x30','\x57\x4f\x7a\x50\x57\x52\x57\x47','\x57\x51\x44\x6e\x57\x51\x38\x43\x7a\x61','\x71\x6d\x6f\x39\x6b\x58\x2f\x63\x52\x32\x69\x42\x66\x57','\x77\x6d\x6b\x4e\x57\x4f\x4c\x39\x57\x34\x6d','\x57\x34\x6a\x6d\x57\x51\x78\x64\x4b\x4a\x6d','\x6e\x43\x6b\x42\x72\x6d\x6f\x68\x57\x51\x42\x64\x52\x61','\x57\x34\x46\x64\x4e\x57\x4e\x64\x4f\x43\x6b\x44','\x57\x52\x42\x64\x51\x6d\x6f\x59\x41\x68\x50\x7a','\x57\x36\x65\x77\x57\x36\x66\x70\x79\x61','\x57\x51\x70\x64\x51\x43\x6f\x30\x45\x66\x53','\x57\x52\x4a\x63\x4e\x38\x6f\x35\x57\x34\x34\x76\x63\x57','\x57\x50\x72\x2b\x57\x51\x58\x34\x57\x36\x6d','\x6e\x4a\x58\x73\x42\x47','\x57\x36\x78\x64\x4c\x43\x6f\x4f\x57\x35\x30\x63\x63\x38\x6b\x43','\x57\x34\x54\x71\x57\x34\x6d\x68\x61\x43\x6b\x38\x73\x4c\x57','\x57\x36\x42\x63\x4f\x48\x42\x64\x52\x61\x57\x65\x78\x49\x75','\x70\x43\x6f\x73\x57\x34\x4c\x5a\x69\x47','\x7a\x65\x6e\x41\x57\x52\x35\x77','\x57\x51\x48\x37\x41\x6d\x6b\x4c\x6f\x38\x6f\x71\x57\x36\x52\x63\x49\x61','\x57\x36\x37\x64\x52\x38\x6f\x6e\x57\x51\x31\x58\x67\x6d\x6b\x73\x67\x47','\x57\x35\x35\x2b\x70\x48\x48\x4a\x57\x4f\x44\x37\x57\x4f\x74\x64\x4e\x6d\x6b\x30\x57\x34\x7a\x56\x44\x61','\x41\x65\x5a\x64\x4d\x75\x35\x62','\x6a\x53\x6f\x4e\x61\x38\x6b\x72\x69\x71','\x79\x53\x6b\x72\x57\x35\x37\x63\x47\x53\x6f\x6c','\x41\x4c\x42\x63\x56\x64\x42\x63\x4f\x5a\x42\x64\x4a\x33\x47','\x57\x35\x4b\x57\x57\x34\x34\x7a\x57\x35\x4a\x63\x56\x71','\x6d\x59\x66\x74\x43\x63\x4e\x63\x4f\x53\x6b\x32\x70\x57','\x68\x38\x6f\x70\x57\x34\x53\x4e\x57\x52\x57','\x6f\x77\x4a\x64\x4a\x6d\x6f\x73','\x75\x77\x68\x63\x47\x4a\x64\x63\x4f\x61','\x57\x50\x4f\x75\x43\x4d\x34\x6b','\x57\x35\x52\x64\x48\x72\x42\x64\x4a\x43\x6b\x65\x57\x34\x42\x64\x4c\x72\x4f','\x43\x38\x6b\x49\x57\x52\x58\x6f\x57\x34\x75','\x65\x43\x6f\x70\x57\x35\x4f\x6a\x57\x51\x4b','\x57\x35\x66\x36\x57\x37\x69\x56\x6a\x47','\x77\x38\x6f\x5a\x57\x35\x68\x63\x4f\x62\x64\x64\x52\x4a\x56\x64\x49\x61','\x57\x52\x4a\x63\x4a\x53\x6f\x51\x57\x35\x75\x79\x62\x6d\x6b\x67\x57\x34\x4f','\x69\x49\x54\x45\x44\x49\x37\x63\x56\x6d\x6b\x36\x62\x47','\x57\x52\x71\x66\x57\x34\x4a\x64\x53\x58\x64\x63\x4d\x38\x6b\x73\x57\x34\x43','\x78\x6d\x6b\x45\x6a\x43\x6b\x51','\x57\x37\x39\x72\x57\x51\x4e\x63\x48\x53\x6b\x70\x57\x36\x38\x66\x57\x34\x4f','\x67\x53\x6f\x4a\x57\x36\x71\x33\x57\x51\x6c\x63\x56\x38\x6f\x62\x78\x47','\x57\x37\x47\x6b\x57\x36\x44\x79\x79\x61','\x79\x43\x6f\x70\x57\x36\x52\x63\x49\x49\x5a\x64\x50\x71\x68\x64\x50\x61','\x57\x36\x62\x74\x57\x34\x2f\x63\x4b\x53\x6b\x4a\x79\x6d\x6f\x56\x57\x37\x4b','\x71\x4a\x39\x38\x61\x71\x44\x61\x72\x53\x6b\x4f\x69\x38\x6b\x4e\x76\x31\x76\x76','\x63\x38\x6b\x71\x71\x6d\x6f\x65\x57\x4f\x30','\x66\x4c\x68\x64\x4a\x38\x6f\x4d\x74\x47','\x57\x35\x34\x39\x57\x35\x39\x41','\x73\x62\x68\x64\x4d\x59\x54\x61','\x57\x35\x48\x70\x57\x4f\x31\x43\x73\x43\x6b\x43','\x57\x36\x35\x6f\x57\x50\x2f\x64\x50\x61','\x73\x38\x6f\x4c\x57\x36\x64\x63\x52\x57\x34','\x62\x38\x6f\x76\x57\x36\x4b','\x73\x43\x6b\x65\x6b\x38\x6f\x31\x46\x38\x6b\x56','\x67\x5a\x4c\x50\x41\x61\x79','\x57\x50\x6a\x53\x72\x43\x6b\x35\x6d\x61','\x42\x66\x70\x63\x4c\x4a\x46\x63\x47\x61','\x6d\x77\x70\x64\x47\x68\x62\x30\x43\x32\x42\x63\x54\x71','\x7a\x67\x6c\x63\x50\x6d\x6b\x51\x57\x51\x61','\x57\x35\x79\x51\x57\x36\x39\x64\x73\x71\x37\x63\x4e\x61\x4f','\x57\x4f\x75\x41\x57\x36\x78\x63\x52\x43\x6b\x4d','\x63\x43\x6b\x43\x79\x47\x37\x64\x4e\x38\x6b\x41\x74\x71\x75','\x62\x43\x6f\x6c\x57\x37\x4b\x73\x57\x4f\x71','\x57\x4f\x56\x64\x56\x6d\x6b\x31\x57\x35\x4e\x64\x50\x31\x6d\x70\x57\x50\x61','\x78\x43\x6f\x46\x57\x34\x70\x63\x49\x73\x4f','\x6f\x4a\x34\x67\x57\x37\x65','\x71\x30\x76\x43\x57\x50\x48\x7a','\x63\x53\x6b\x45\x6c\x64\x56\x64\x54\x47','\x57\x50\x78\x64\x56\x6d\x6b\x36\x57\x35\x52\x64\x4c\x76\x69','\x6e\x31\x4e\x64\x4f\x6d\x6b\x2b\x63\x57','\x57\x4f\x65\x50\x79\x75\x79','\x45\x6d\x6b\x4e\x57\x52\x6e\x4b\x57\x35\x57','\x57\x51\x66\x2b\x57\x50\x69\x64\x72\x61','\x79\x4e\x53\x6e\x6d\x32\x4e\x64\x55\x38\x6b\x4d\x65\x38\x6f\x51\x57\x50\x6a\x44\x57\x52\x65','\x6d\x5a\x58\x79\x79\x49\x4a\x63\x51\x53\x6b\x42\x68\x71','\x57\x52\x56\x63\x54\x38\x6f\x39\x57\x35\x71\x79','\x57\x52\x2f\x63\x4b\x38\x6f\x31\x57\x35\x4b\x7a\x66\x53\x6b\x42','\x57\x51\x5a\x64\x53\x6d\x6b\x38\x57\x37\x42\x64\x48\x47','\x57\x34\x70\x64\x49\x38\x6f\x36\x57\x4f\x58\x66\x69\x43\x6b\x4f','\x57\x35\x64\x64\x4a\x43\x6f\x49\x57\x35\x74\x63\x4a\x38\x6b\x65\x57\x36\x38','\x57\x51\x74\x64\x52\x6d\x6f\x4a\x43\x67\x7a\x6a\x57\x52\x61\x2b','\x79\x4a\x64\x64\x4d\x57\x66\x63\x76\x31\x56\x64\x4c\x71','\x57\x35\x6a\x59\x57\x52\x48\x4e\x45\x71','\x6b\x67\x4a\x64\x49\x53\x6f\x6c\x73\x53\x6f\x49\x57\x35\x70\x63\x4a\x47','\x61\x4a\x6d\x33\x57\x34\x7a\x42','\x57\x52\x30\x69\x57\x35\x5a\x63\x49\x6d\x6b\x2b\x79\x47','\x65\x49\x54\x43\x43\x74\x4e\x63\x56\x43\x6f\x5a','\x64\x4c\x46\x64\x53\x38\x6b\x43\x6f\x71','\x67\x38\x6b\x69\x43\x38\x6f\x68\x57\x50\x57','\x68\x4d\x57\x76\x66\x71','\x46\x53\x6b\x49\x57\x4f\x6e\x6a\x57\x37\x30','\x73\x6d\x6f\x5a\x69\x57\x4e\x63\x4d\x71','\x57\x52\x6e\x6d\x57\x36\x38\x70\x57\x4f\x34','\x57\x36\x2f\x64\x55\x4b\x50\x71\x75\x47','\x73\x38\x6b\x71\x57\x51\x50\x69\x57\x36\x69','\x57\x4f\x70\x63\x50\x48\x61\x48\x57\x50\x76\x51\x57\x36\x43','\x6b\x53\x6b\x42\x77\x53\x6f\x68\x57\x52\x4a\x64\x4f\x57\x69','\x72\x4d\x31\x6b\x57\x52\x50\x76\x57\x52\x78\x64\x4b\x38\x6b\x6f','\x57\x4f\x53\x72\x57\x34\x56\x63\x52\x43\x6b\x6b','\x46\x33\x74\x63\x4b\x74\x78\x63\x50\x71','\x66\x57\x58\x6a\x72\x5a\x79','\x63\x68\x43\x73\x63\x6d\x6f\x51\x57\x50\x5a\x63\x54\x72\x34','\x57\x4f\x79\x6e\x57\x34\x44\x75\x66\x6d\x6b\x6a\x43\x66\x69','\x41\x68\x54\x58\x79\x75\x65\x72\x63\x71','\x6d\x33\x6d\x77\x6a\x38\x6f\x51','\x6a\x38\x6f\x4a\x57\x37\x44\x74\x67\x71','\x57\x4f\x52\x64\x54\x43\x6b\x39\x57\x35\x37\x64\x48\x61','\x57\x34\x53\x67\x66\x38\x6f\x72','\x72\x33\x31\x7a\x57\x50\x6e\x4b','\x57\x4f\x71\x47\x42\x47','\x57\x37\x6a\x73\x57\x4f\x70\x64\x4a\x53\x6b\x46\x57\x37\x69\x6d\x57\x35\x43','\x43\x4d\x35\x59\x41\x77\x53\x71\x67\x43\x6f\x62','\x77\x53\x6f\x33\x57\x34\x2f\x63\x4c\x71\x38','\x64\x30\x47\x70\x61\x6d\x6f\x61','\x6f\x43\x6b\x58\x41\x53\x6f\x59\x57\x50\x53','\x70\x38\x6b\x42\x72\x38\x6f\x6e\x57\x50\x33\x64\x53\x71','\x42\x77\x70\x64\x48\x32\x50\x39\x44\x4e\x46\x63\x4c\x61','\x57\x36\x5a\x64\x48\x31\x6a\x73\x72\x71','\x57\x51\x2f\x63\x4d\x38\x6f\x53\x57\x35\x30','\x57\x34\x4c\x37\x57\x50\x46\x64\x4d\x72\x53','\x57\x50\x39\x4a\x57\x52\x71\x38\x76\x38\x6f\x2f','\x66\x43\x6b\x7a\x67\x49\x37\x64\x56\x61','\x57\x37\x58\x63\x57\x4f\x6c\x64\x4f\x57','\x57\x35\x74\x64\x4a\x53\x6f\x48\x57\x4f\x66\x62','\x46\x66\x4e\x63\x49\x53\x6b\x58\x57\x51\x6d','\x75\x53\x6b\x61\x57\x52\x34','\x57\x4f\x47\x67\x43\x5a\x75','\x57\x51\x30\x36\x7a\x62\x43\x54','\x61\x72\x53\x6b\x57\x35\x6e\x2f','\x57\x52\x46\x63\x51\x48\x71\x62\x57\x52\x79','\x78\x77\x48\x59\x45\x30\x4b','\x64\x33\x6c\x64\x54\x38\x6b\x76\x65\x71','\x67\x6d\x6b\x4c\x57\x4f\x33\x64\x54\x75\x52\x63\x48\x61\x74\x64\x4f\x4b\x74\x63\x4f\x78\x56\x64\x52\x57','\x57\x35\x37\x64\x51\x75\x44\x31\x73\x47'];_0x35e3=function(){return _0x2d79a2;};return _0x35e3();}_0x22151f();const _0x1e95ac=require(_0x83241d(0xc0,'\x21\x6d\x6a\x68')),_0x19c792=require('\x66\x73'),_0x1a5cb7=require(_0x83241d(0x21f,'\x4a\x65\x6c\x30')),{hubFetch:_0x36da3a}=require(_0x83241d(0xd4,'\x5e\x70\x4b\x38')+'\x63\x68'),{withFileLock:_0x3c6cd6}=require(_0x83241d(0x10a,'\x31\x65\x49\x43')+_0x83241d(0x1ec,'\x6e\x57\x66\x4b'));function _0x332f8d(_0x31e4db,_0x3ebb39){const _0x2cbed2=_0x83241d,_0x1c8320={};_0x1c8320[_0x2cbed2(0x1f4,'\x77\x52\x44\x33')]=_0x2cbed2(0x1c6,'\x6e\x57\x66\x4b');const _0x555573=_0x1c8320;return _0x1e95ac[_0x2cbed2(0x129,'\x50\x5a\x31\x30')+'\x61\x63'](_0x2cbed2(0x114,'\x43\x6d\x28\x77'),_0x31e4db)['\x75\x70\x64\x61\x74\x65'](_0x3ebb39)[_0x2cbed2(0x22b,'\x46\x32\x2a\x4b')](_0x555573[_0x2cbed2(0x136,'\x44\x71\x70\x74')]);}function _0x13d73d(_0x978d0e){const _0xccfaea=_0x83241d,_0x2527a9={'\x59\x59\x51\x78\x46':function(_0x1c2526,_0x46515c){return _0x1c2526(_0x46515c);},'\x48\x5a\x74\x65\x49':function(_0x14ce5b,_0x55d210){return _0x14ce5b||_0x55d210;},'\x55\x69\x68\x4b\x67':_0xccfaea(0x186,'\x36\x59\x4c\x45')};return _0x1e95ac[_0xccfaea(0x21d,'\x50\x5a\x31\x30')+'\x73\x68'](_0xccfaea(0x1bb,'\x46\x32\x2a\x4b'))[_0xccfaea(0x189,'\x35\x6d\x45\x77')](_0x2527a9[_0xccfaea(0xe6,'\x6c\x58\x77\x54')](String,_0x2527a9[_0xccfaea(0x1d7,'\x6e\x57\x66\x4b')](_0x978d0e,'')))[_0xccfaea(0x19b,'\x41\x25\x51\x64')](_0x2527a9[_0xccfaea(0x12c,'\x4a\x65\x6c\x30')])[_0xccfaea(0x23c,'\x24\x54\x7a\x79')](-0x1*0xb1e+-0x46f+-0x52f*-0x3,0x43d+0xcd*-0x6+0xa1);}function _0x5ea833({geneId:_0x1f9e77,signals:_0x1bb4d4,mutation:_0x3ffbfc}){const _0x45fbdb=_0x83241d,_0x49e7f8={'\x52\x69\x41\x51\x56':function(_0xb3b089,_0x5ba79f){return _0xb3b089(_0x5ba79f);},'\x6b\x4c\x59\x74\x4e':_0x45fbdb(0xed,'\x6f\x54\x73\x41')+_0x45fbdb(0x1f1,'\x41\x25\x51\x64'),'\x4d\x44\x74\x64\x6d':_0x45fbdb(0x1ce,'\x36\x32\x6a\x52'),'\x49\x4b\x6c\x59\x61':_0x45fbdb(0x113,'\x35\x6d\x45\x77'),'\x51\x43\x76\x4a\x43':function(_0x5c4848,_0x92bf0b){return _0x5c4848(_0x92bf0b);},'\x45\x4b\x64\x49\x66':function(_0x3f45f1,_0x45aec5){return _0x3f45f1||_0x45aec5;},'\x76\x5a\x4a\x77\x43':function(_0x150a08,_0x33f860,_0x2a4444){return _0x150a08(_0x33f860,_0x2a4444);}};let _0x5dfb52=null;try{_0x5dfb52=_0x49e7f8[_0x45fbdb(0xd1,'\x6f\x54\x73\x41')](require,_0x49e7f8['\x6b\x4c\x59\x74\x4e'])[_0x45fbdb(0x1ee,'\x35\x68\x78\x44')+_0x45fbdb(0x1f0,'\x36\x32\x6a\x52')]();}catch(_0x639e87){}if(!_0x5dfb52)return null;let _0x2c409e=null;try{_0x2c409e=_0x49e7f8[_0x45fbdb(0x160,'\x51\x5a\x26\x30')](require,_0x49e7f8[_0x45fbdb(0x122,'\x24\x54\x7a\x79')])[_0x45fbdb(0x130,'\x35\x26\x26\x47')+'\x64']();}catch(_0x1ee26c){}if(!_0x2c409e)return null;const _0xba16b7=_0x1e95ac[_0x45fbdb(0xec,'\x61\x71\x70\x39')+'\x73\x68'](_0x49e7f8[_0x45fbdb(0x10f,'\x35\x26\x26\x47')])[_0x45fbdb(0x21a,'\x35\x28\x50\x39')](_0x5dfb52)[_0x45fbdb(0x1c9,'\x4f\x78\x67\x51')](_0x49e7f8[_0x45fbdb(0x10d,'\x77\x36\x4b\x5e')]),_0x27474c=Date['\x6e\x6f\x77'](),_0x129ecf=_0x49e7f8['\x51\x43\x76\x4a\x43'](_0x13d73d,JSON[_0x45fbdb(0x16e,'\x36\x32\x6a\x52')+'\x79'](Array[_0x45fbdb(0x1fd,'\x41\x25\x51\x64')](_0x1bb4d4)?_0x1bb4d4[_0x45fbdb(0x108,'\x6e\x57\x66\x4b')](0x334+0x17dd*0x1+0x1b11*-0x1,0x1*-0x101+0x3*-0x167+0x53e):[])),_0x4d5425=_0x13d73d(JSON['\x73\x74\x72\x69\x6e\x67\x69\x66'+'\x79'](_0x3ffbfc||{})),_0x424763=[_0x2c409e,_0x49e7f8[_0x45fbdb(0xef,'\x4f\x39\x6e\x63')](_0x1f9e77,''),_0x129ecf,_0x4d5425,_0x49e7f8[_0x45fbdb(0x1d8,'\x51\x4f\x6e\x32')](String,_0x27474c)][_0x45fbdb(0x253,'\x43\x6d\x28\x77')]('\x7c'),_0x43fec4=_0x49e7f8[_0x45fbdb(0x254,'\x5e\x70\x4b\x38')](_0x332f8d,_0xba16b7,_0x424763);return{'\x6e\x6f\x64\x65\x49\x64':_0x2c409e,'\x6e\x6f\x64\x65\x53\x65\x63\x72\x65\x74':_0x5dfb52,'\x62\x6f\x64\x79':{'\x73\x65\x6e\x64\x65\x72\x5f\x69\x64':_0x2c409e,'\x67\x65\x6e\x65\x5f\x69\x64':_0x49e7f8['\x45\x4b\x64\x49\x66'](_0x1f9e77,''),'\x73\x69\x67\x6e\x61\x6c\x73\x5f\x68\x61\x73\x68':_0x129ecf,'\x6d\x75\x74\x61\x74\x69\x6f\x6e\x5f\x68\x61\x73\x68':_0x4d5425,'\x74\x73':_0x27474c,'\x63\x6c\x69\x65\x6e\x74\x5f\x73\x69\x67\x6e\x61\x74\x75\x72\x65':_0x43fec4}};}function _0x299c(_0x1d1e74,_0x2fa500){_0x1d1e74=_0x1d1e74-(-0x94*-0x16+0x268e+-0x2*0x1943);const _0x5026ed=_0x35e3();let _0x358d68=_0x5026ed[_0x1d1e74];if(_0x299c['\x4e\x4e\x55\x6d\x58\x51']===undefined){var _0x7ff347=function(_0x3188a5){const _0x2caac7='\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 _0x105cb2='',_0x15f8f3='',_0xcd2c10=_0x105cb2+_0x7ff347,_0x5be898=(''+function(){return 0x2*-0x1193+0x1273+-0x10b3*-0x1;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!==-(-0x1277+0xc25*-0x1+0x1cd*0x11);for(let _0x22b7b8=-0x796*-0x3+-0x44*0x6e+-0x676*-0x1,_0x26ec4b,_0x463cab,_0x5af1f5=-0x1c94*0x1+0x1a0a+-0x2*-0x145;_0x463cab=_0x3188a5['\x63\x68\x61\x72\x41\x74'](_0x5af1f5++);~_0x463cab&&(_0x26ec4b=_0x22b7b8%(0x1256+0x1c13+-0x2e65)?_0x26ec4b*(0x15*0x6d+-0x17d1+0xf20)+_0x463cab:_0x463cab,_0x22b7b8++%(0xb02*-0x2+-0x1bba*0x1+-0x243*-0x16))?_0x105cb2+=_0x5be898||_0xcd2c10['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x5af1f5+(0x1b90+0x431*0x4+0x1625*-0x2))-(0xae7*0x1+0x1a*-0x8d+0x375)!==0xd1*0xd+-0x1d65+0x12c8?String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](-0x13a7+-0x1*-0x63b+0xe6b&_0x26ec4b>>(-(0x33*-0x89+-0x1884+-0x5*-0xa5d)*_0x22b7b8&-0x1e25+0x391+0x1a9a)):_0x22b7b8:0x1e*-0x45+0x29*-0x1f+-0xd0d*-0x1){_0x463cab=_0x2caac7['\x69\x6e\x64\x65\x78\x4f\x66'](_0x463cab);}for(let _0x485398=-0x10c+-0x1*0x161c+-0x27*-0x98,_0x41230d=_0x105cb2['\x6c\x65\x6e\x67\x74\x68'];_0x485398<_0x41230d;_0x485398++){_0x15f8f3+='\x25'+('\x30\x30'+_0x105cb2['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x485398)['\x74\x6f\x53\x74\x72\x69\x6e\x67'](0x29a+0x12d2+-0x155c))['\x73\x6c\x69\x63\x65'](-(-0x2374+-0x10d0+-0x1a23*-0x2));}return decodeURIComponent(_0x15f8f3);};const _0x1d4c90=function(_0x2ec395,_0x4f1beb){let _0x26f8c0=[],_0x495b43=-0x9b*-0x35+-0x1*-0x23d8+-0x43ef,_0x11affd,_0x16ec14='';_0x2ec395=_0x7ff347(_0x2ec395);let _0x33d815;for(_0x33d815=0x50b*-0x1+0x25dc+-0x20d1;_0x33d815<0x109c+0x15c7+0x233*-0x11;_0x33d815++){_0x26f8c0[_0x33d815]=_0x33d815;}for(_0x33d815=-0xfb*0x24+0x17*0x9f+0x1503;_0x33d815<-0xa0c*-0x2+-0x89*0x41+0xfb1;_0x33d815++){_0x495b43=(_0x495b43+_0x26f8c0[_0x33d815]+_0x4f1beb['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x33d815%_0x4f1beb['\x6c\x65\x6e\x67\x74\x68']))%(-0x229a+0xecf+0x1*0x14cb),_0x11affd=_0x26f8c0[_0x33d815],_0x26f8c0[_0x33d815]=_0x26f8c0[_0x495b43],_0x26f8c0[_0x495b43]=_0x11affd;}_0x33d815=-0x13b2+-0x21*-0xca+-0xe*0x74,_0x495b43=-0x18a8+0x3a*0x1d+0x90b*0x2;for(let _0x33ef82=0x26a4+0x9b*-0x15+-0x1*0x19ed;_0x33ef82<_0x2ec395['\x6c\x65\x6e\x67\x74\x68'];_0x33ef82++){_0x33d815=(_0x33d815+(0xe*0x1e2+-0xd40+-0xd1b*0x1))%(0x10fd*0x1+0x1314+0xbf*-0x2f),_0x495b43=(_0x495b43+_0x26f8c0[_0x33d815])%(0x2b*0xb+0x1944+-0x1a1d),_0x11affd=_0x26f8c0[_0x33d815],_0x26f8c0[_0x33d815]=_0x26f8c0[_0x495b43],_0x26f8c0[_0x495b43]=_0x11affd,_0x16ec14+=String['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](_0x2ec395['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](_0x33ef82)^_0x26f8c0[(_0x26f8c0[_0x33d815]+_0x26f8c0[_0x495b43])%(-0x99e*0x3+0x1*0x6b9+-0xbf*-0x1f)]);}return _0x16ec14;};_0x299c['\x72\x75\x6b\x65\x7a\x77']=_0x1d4c90,_0x299c['\x44\x7a\x6d\x45\x6b\x6c']={},_0x299c['\x4e\x4e\x55\x6d\x58\x51']=!![];}const _0x2718ab=_0x5026ed[-0xacc*-0x1+0x1*-0x17b3+-0x44d*-0x3],_0x3e3d01=_0x1d1e74+_0x2718ab,_0x28e62b=_0x299c['\x44\x7a\x6d\x45\x6b\x6c'][_0x3e3d01];if(!_0x28e62b){if(_0x299c['\x65\x6f\x6d\x6e\x71\x71']===undefined){const _0x7b344f=function(_0x26f63b){this['\x64\x65\x50\x5a\x64\x6e']=_0x26f63b,this['\x75\x61\x44\x41\x5a\x70']=[-0xf3d+-0x17*0x8a+-0x1d*-0xf4,-0x9eb+0x2567+-0x2*0xdbe,0x1e*0xa6+-0x1bb0+0x44*0x1f],this['\x4c\x59\x6f\x59\x6a\x53']=function(){return'\x6e\x65\x77\x53\x74\x61\x74\x65';},this['\x66\x70\x47\x4e\x54\x49']='\x5c\x77\x2b\x20\x2a\x5c\x28\x5c\x29\x20\x2a\x7b\x5c\x77\x2b\x20\x2a',this['\x5a\x62\x49\x48\x43\x72']='\x5b\x27\x7c\x22\x5d\x2e\x2b\x5b\x27\x7c\x22\x5d\x3b\x3f\x20\x2a\x7d';};_0x7b344f['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x54\x4c\x71\x79\x6d\x6a']=function(){const _0x48c0da=new RegExp(this['\x66\x70\x47\x4e\x54\x49']+this['\x5a\x62\x49\x48\x43\x72']),_0x78c8ac=_0x48c0da['\x74\x65\x73\x74'](this['\x4c\x59\x6f\x59\x6a\x53']['\x74\x6f\x53\x74\x72\x69\x6e\x67']())?--this['\x75\x61\x44\x41\x5a\x70'][0x884+0xbf6+-0x6d3*0x3]:--this['\x75\x61\x44\x41\x5a\x70'][-0x1*-0x6d7+-0x998+0x2c1];return this['\x61\x46\x6c\x71\x76\x64'](_0x78c8ac);},_0x7b344f['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x61\x46\x6c\x71\x76\x64']=function(_0x3f3dd3){if(!Boolean(~_0x3f3dd3))return _0x3f3dd3;return this['\x5a\x68\x41\x47\x5a\x56'](this['\x64\x65\x50\x5a\x64\x6e']);},_0x7b344f['\x70\x72\x6f\x74\x6f\x74\x79\x70\x65']['\x5a\x68\x41\x47\x5a\x56']=function(_0x5c63ec){for(let _0x4b1098=0x1dd8+-0x4*0x6ad+-0x3*0x10c,_0x4d94d3=this['\x75\x61\x44\x41\x5a\x70']['\x6c\x65\x6e\x67\x74\x68'];_0x4b1098<_0x4d94d3;_0x4b1098++){this['\x75\x61\x44\x41\x5a\x70']['\x70\x75\x73\x68'](Math['\x72\x6f\x75\x6e\x64'](Math['\x72\x61\x6e\x64\x6f\x6d']())),_0x4d94d3=this['\x75\x61\x44\x41\x5a\x70']['\x6c\x65\x6e\x67\x74\x68'];}return _0x5c63ec(this['\x75\x61\x44\x41\x5a\x70'][0xde0+-0x6d0*-0x1+0x8*-0x296]);},(''+function(){return 0x19b0+-0x1734+-0x27c;})['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')===-(0x7c*0x1e+0xe6d+-0x73d*0x4)&&new _0x7b344f(_0x299c)['\x54\x4c\x71\x79\x6d\x6a'](),_0x299c['\x65\x6f\x6d\x6e\x71\x71']=!![];}_0x358d68=_0x299c['\x72\x75\x6b\x65\x7a\x77'](_0x358d68,_0x2fa500),_0x299c['\x44\x7a\x6d\x45\x6b\x6c'][_0x3e3d01]=_0x358d68;}else _0x358d68=_0x28e62b;return _0x358d68;}function _0x271d7d({geneId:_0x1cd26d,signals:_0x53bd0d,mutation:_0x5929da}){const _0xed6561=_0x83241d,_0x51d1a3={'\x49\x68\x50\x44\x6c':function(_0x1eecce,_0x5dcb5f){return _0x1eecce>=_0x5dcb5f;},'\x45\x6d\x65\x4c\x5a':function(_0x3bc267,_0x40d26e){return _0x3bc267+_0x40d26e;},'\x58\x4e\x4e\x6e\x58':_0xed6561(0x1ca,'\x50\x5a\x31\x30'),'\x4b\x77\x54\x6b\x5a':function(_0x15b155,_0x23de15){return _0x15b155(_0x23de15);},'\x4f\x65\x6f\x67\x5a':function(_0x1f2f49,_0x42425a){return _0x1f2f49(_0x42425a);},'\x6c\x63\x41\x4e\x4e':function(_0x333bec,_0xa476ba){return _0x333bec===_0xa476ba;},'\x66\x47\x5a\x57\x79':'\x64\x79\x5a\x6a\x70','\x74\x69\x4f\x6c\x54':function(_0x258125,_0x5efe00){return _0x258125===_0x5efe00;},'\x5a\x52\x76\x46\x51':_0xed6561(0xe4,'\x36\x32\x6a\x52'),'\x4d\x78\x47\x4d\x70':_0xed6561(0xc6,'\x4f\x78\x67\x51'),'\x6c\x5a\x6a\x6a\x52':function(_0x3dd26a,_0x1ae602){return _0x3dd26a!==_0x1ae602;},'\x52\x62\x58\x59\x6e':_0xed6561(0x204,'\x51\x4f\x6e\x32'),'\x50\x52\x78\x6f\x69':function(_0x1b7118){return _0x1b7118();},'\x71\x75\x6c\x65\x6b':_0xed6561(0xd9,'\x36\x32\x6a\x52'),'\x44\x45\x49\x52\x54':_0xed6561(0xd0,'\x49\x33\x40\x61')+'\x72\x6c','\x48\x57\x74\x6c\x46':_0xed6561(0x1a0,'\x50\x55\x31\x65')+_0xed6561(0x106,'\x21\x46\x56\x41')+_0xed6561(0x179,'\x6d\x24\x24\x71'),'\x64\x79\x58\x47\x4b':_0xed6561(0x104,'\x6f\x5d\x6e\x4b')+'\x67','\x74\x42\x77\x74\x71':_0xed6561(0x12f,'\x37\x5a\x61\x5a')+_0xed6561(0x246,'\x21\x6d\x6a\x68'),'\x4d\x4a\x69\x62\x6f':function(_0x340ccc,_0x5adb0e){return _0x340ccc+_0x5adb0e;},'\x74\x6c\x4d\x51\x5a':_0xed6561(0x135,'\x50\x5a\x31\x30')},_0x7fcecb=(process.env.A2A_HUB_URL||'')['\x72\x65\x70\x6c\x61\x63\x65'](/\/+$/,''),_0x448654={};_0x448654['\x6f\x6b']=![],_0x448654['\x65\x72\x72\x6f\x72']=_0x51d1a3[_0xed6561(0x1b7,'\x35\x26\x26\x47')],_0x448654['\x6f\x66\x66\x6c\x69\x6e\x65']=!![];if(!_0x7fcecb)return Promise[_0xed6561(0x184,'\x24\x54\x7a\x79')](_0x448654);const _0x24d154={};_0x24d154[_0xed6561(0x152,'\x77\x52\x44\x33')]=_0x1cd26d,_0x24d154[_0xed6561(0x1f9,'\x36\x32\x6a\x52')]=_0x53bd0d,_0x24d154['\x6d\x75\x74\x61\x74\x69\x6f\x6e']=_0x5929da;const _0x572a4b=_0x5ea833(_0x24d154),_0x2fd9d5={};_0x2fd9d5['\x6f\x6b']=![],_0x2fd9d5[_0xed6561(0x1dc,'\x36\x32\x6a\x52')]=_0xed6561(0x236,'\x4d\x72\x48\x4a')+'\x6e\x74\x69\x61\x6c\x73',_0x2fd9d5[_0xed6561(0x247,'\x50\x5a\x31\x30')]=!![];if(!_0x572a4b)return Promise[_0xed6561(0x13f,'\x77\x52\x44\x33')](_0x2fd9d5);const _0xdfa0b1=_0x7fcecb+_0x51d1a3[_0xed6561(0x15b,'\x25\x57\x44\x49')],_0x2e8fca=require(_0x51d1a3[_0xed6561(0x210,'\x36\x32\x6a\x52')])[_0xed6561(0xf0,'\x29\x4f\x67\x49')+_0xed6561(0x109,'\x7a\x52\x59\x76')+_0xed6561(0xf1,'\x4d\x72\x48\x4a')+'\x53']||0x3974+-0x4c86+0x3a22,_0x2f2713={'\x43\x6f\x6e\x74\x65\x6e\x74\x2d\x54\x79\x70\x65':_0x51d1a3[_0xed6561(0x1dd,'\x31\x65\x49\x43')],'\x41\x75\x74\x68\x6f\x72\x69\x7a\x61\x74\x69\x6f\x6e':_0x51d1a3[_0xed6561(0x1c7,'\x32\x6c\x77\x65')](_0x51d1a3[_0xed6561(0x251,'\x35\x28\x50\x39')],_0x572a4b[_0xed6561(0xe0,'\x5e\x70\x4b\x38')+'\x65\x74'])};return _0x36da3a(_0xdfa0b1,{'\x6d\x65\x74\x68\x6f\x64':_0xed6561(0x20b,'\x6e\x57\x66\x4b'),'\x68\x65\x61\x64\x65\x72\x73':_0x2f2713,'\x62\x6f\x64\x79':JSON[_0xed6561(0x18b,'\x77\x4b\x39\x28')+'\x79'](_0x572a4b['\x62\x6f\x64\x79']),'\x73\x69\x67\x6e\x61\x6c':AbortSignal[_0xed6561(0x12b,'\x4f\x78\x67\x51')](_0x2e8fca)})['\x74\x68\x65\x6e'](function(_0x5d5f60){const _0x3ebb0a=_0xed6561,_0x4d1b6a={'\x4b\x52\x6b\x44\x75':function(_0x21df3d,_0x2049f0){const _0x3b0f55=_0x299c;return _0x51d1a3[_0x3b0f55(0x1cc,'\x4a\x65\x6c\x30')](_0x21df3d,_0x2049f0);},'\x4d\x6b\x4d\x4d\x55':_0x3ebb0a(0x145,'\x61\x71\x70\x39')+_0x3ebb0a(0x162,'\x44\x71\x70\x74'),'\x42\x47\x41\x52\x70':function(_0xa3a287,_0x487462){const _0x482e8=_0x3ebb0a;return _0x51d1a3[_0x482e8(0x169,'\x4a\x65\x6c\x30')](_0xa3a287,_0x487462);},'\x4d\x48\x48\x6f\x49':_0x51d1a3[_0x3ebb0a(0xff,'\x77\x4b\x39\x28')]};if(_0x51d1a3[_0x3ebb0a(0x1b9,'\x5e\x70\x4b\x38')](_0x51d1a3['\x5a\x52\x76\x46\x51'],_0x51d1a3[_0x3ebb0a(0x127,'\x35\x28\x50\x39')]))return _0x4d1b6a[_0x3ebb0a(0x232,'\x59\x40\x21\x62')](_0x6322a5,_0x4d1b6a['\x4d\x6b\x4d\x4d\x55'])[_0x3ebb0a(0x16c,'\x6d\x24\x24\x71')+_0x3ebb0a(0xd5,'\x25\x57\x44\x49')]()||null;else{if(_0x5d5f60[_0x3ebb0a(0x18f,'\x39\x67\x46\x77')]<-0x1d5b+-0x1*-0x2121+-0x1d2){if(_0x51d1a3[_0x3ebb0a(0x21c,'\x6e\x57\x66\x4b')](_0x51d1a3[_0x3ebb0a(0xee,'\x35\x6d\x45\x77')],_0x51d1a3[_0x3ebb0a(0x133,'\x54\x39\x21\x78')]))return null;else _0x51d1a3['\x50\x52\x78\x6f\x69'](_0x2df179);}if(!_0x5d5f60['\x6f\x6b'])return _0x51d1a3[_0x3ebb0a(0x1f8,'\x5b\x33\x5d\x36')](_0x51d1a3[_0x3ebb0a(0x13d,'\x35\x54\x7a\x5a')],_0x51d1a3[_0x3ebb0a(0xd2,'\x35\x26\x26\x47')])?_0x5d5f60['\x74\x65\x78\x74']()[_0x3ebb0a(0x195,'\x51\x5a\x26\x30')](function(_0x20dfec){const _0x2a9ca2=_0x3ebb0a,_0x3099fa=_0x51d1a3[_0x2a9ca2(0x243,'\x36\x59\x4c\x45')](_0x5d5f60[_0x2a9ca2(0xe5,'\x37\x5a\x61\x5a')],-0x1ee2+-0x890+0x2f5*0xe);return{'\x6f\x6b':![],'\x65\x72\x72\x6f\x72':_0x51d1a3[_0x2a9ca2(0x141,'\x31\x65\x49\x43')](_0x51d1a3[_0x2a9ca2(0xc5,'\x6f\x5d\x6e\x4b')](_0x51d1a3[_0x2a9ca2(0x24f,'\x49\x33\x40\x61')]+_0x5d5f60[_0x2a9ca2(0x1f3,'\x75\x29\x54\x46')],'\x3a\x20'),_0x20dfec['\x73\x6c\x69\x63\x65'](0x1*0x1a26+0x13d4+-0x2dfa,-0x1*-0x964+0x1d3d+0x25d9*-0x1)),'\x6f\x66\x66\x6c\x69\x6e\x65':_0x3099fa};}):_0x51d1a3[_0x3ebb0a(0x115,'\x50\x5a\x31\x30')](_0x21d94f,_0x3ebb0a(0xeb,'\x4f\x78\x67\x51'))[_0x3ebb0a(0x140,'\x4f\x39\x6e\x63')+_0x3ebb0a(0x16d,'\x59\x40\x21\x62')]();return _0x5d5f60['\x6a\x73\x6f\x6e']()[_0x3ebb0a(0x1a1,'\x39\x67\x46\x77')](function(_0x4dd5a4){const _0x671fec=_0x3ebb0a;return _0x4d1b6a[_0x671fec(0x1cb,'\x6e\x57\x66\x4b')](_0x4d1b6a[_0x671fec(0x1d6,'\x61\x71\x70\x39')],_0x671fec(0x112,'\x7a\x52\x59\x76'))?(_0x4dd5a4&&_0x4dd5a4['\x6f\x6b']&&_0x4dd5a4[_0x671fec(0x1b1,'\x32\x6d\x45\x24')+_0x671fec(0x16a,'\x24\x54\x7a\x79')]&&_0x4d0c02(_0x4dd5a4[_0x671fec(0x213,'\x35\x26\x26\x47')+'\x74\x6f\x6b\x65\x6e']),_0x4dd5a4):null;});}})['\x63\x61\x74\x63\x68'](function(_0x5e7959){const _0x569d7f=_0xed6561,_0x5de7aa={};return _0x5de7aa['\x6f\x6b']=![],_0x5de7aa['\x65\x72\x72\x6f\x72']=_0x5e7959[_0x569d7f(0x207,'\x35\x54\x7a\x5a')],_0x5de7aa[_0x569d7f(0x202,'\x31\x65\x49\x43')]=!![],_0x5de7aa;});}var _0x20ebd1=null,_0x2f94ba=null;function _0x45fb17(){const _0x1c0908=_0x83241d,_0x1d2ee9={'\x43\x54\x63\x67\x41':function(_0x14028b,_0xc26eac){return _0x14028b(_0xc26eac);},'\x4f\x58\x55\x63\x6d':_0x1c0908(0x10c,'\x77\x52\x44\x33'),'\x64\x72\x6a\x49\x43':_0x1c0908(0x17c,'\x50\x5a\x31\x30'),'\x63\x4f\x62\x65\x4c':_0x1c0908(0x1a5,'\x46\x32\x2a\x4b'),'\x75\x6b\x75\x50\x71':_0x1c0908(0x118,'\x51\x4f\x6e\x32'),'\x45\x59\x74\x54\x50':_0x1c0908(0xe3,'\x77\x52\x44\x33')};try{return _0x1d2ee9[_0x1c0908(0x180,'\x51\x4f\x6e\x32')](require,_0x1c0908(0x245,'\x61\x71\x70\x39'))[_0x1c0908(0x181,'\x6d\x24\x24\x71')+_0x1c0908(0xd6,'\x6d\x24\x24\x71')]();}catch(_0xc4aa9){try{return _0x1d2ee9[_0x1c0908(0xfb,'\x5b\x33\x5d\x36')]!==_0x1d2ee9[_0x1c0908(0x1e1,'\x32\x6c\x77\x65')]?_0x1a5cb7[_0x1c0908(0x1b6,'\x6e\x57\x66\x4b')](_0x1d2ee9[_0x1c0908(0x171,'\x36\x32\x6a\x52')](require,_0x1d2ee9[_0x1c0908(0x191,'\x35\x28\x50\x39')])[_0x1c0908(0x1e9,'\x6d\x24\x24\x71')+_0x1c0908(0x208,'\x6f\x5d\x6e\x4b')](),_0x1d2ee9[_0x1c0908(0x14f,'\x7a\x52\x59\x76')],_0x1d2ee9[_0x1c0908(0x1e7,'\x6c\x58\x77\x54')]):_0x4f71a7['\x63\x72\x65\x61\x74\x65\x48\x6d'+'\x61\x63'](_0x1c0908(0x214,'\x35\x68\x78\x44'),_0x4b7798)[_0x1c0908(0x20c,'\x77\x52\x44\x33')](_0xc073a8)[_0x1c0908(0x238,'\x54\x39\x21\x78')](_0x1c0908(0xdc,'\x32\x6d\x45\x24'));}catch(_0x401d03){return _0x1a5cb7['\x6a\x6f\x69\x6e'](process[_0x1c0908(0x1b5,'\x63\x40\x53\x48')](),_0x1d2ee9[_0x1c0908(0x226,'\x5e\x70\x4b\x38')],_0x1d2ee9[_0x1c0908(0x18a,'\x61\x71\x70\x39')]);}}}function _0x4fee8e(){const _0x5a8c9c=_0x83241d,_0x302a62={'\x66\x42\x52\x47\x74':function(_0x31f22e){return _0x31f22e();},'\x44\x47\x45\x64\x74':_0x5a8c9c(0x1a7,'\x36\x59\x4c\x45')};return!_0x20ebd1&&(_0x20ebd1=_0x1a5cb7['\x6a\x6f\x69\x6e'](_0x302a62[_0x5a8c9c(0x233,'\x69\x66\x51\x5b')](_0x45fb17),_0x302a62[_0x5a8c9c(0x139,'\x35\x54\x7a\x5a')])),_0x20ebd1;}function _0x306bcd(){const _0x2e2f10=_0x83241d,_0x12cff0={};_0x12cff0[_0x2e2f10(0x158,'\x24\x54\x7a\x79')]=_0x2e2f10(0x20f,'\x35\x28\x50\x39')+_0x2e2f10(0x14a,'\x29\x4f\x67\x49'),_0x12cff0[_0x2e2f10(0x220,'\x6f\x5d\x6e\x4b')]=function(_0x23fe2d,_0x5bfc1e){return _0x23fe2d===_0x5bfc1e;},_0x12cff0[_0x2e2f10(0x16f,'\x21\x6d\x6a\x68')]=_0x2e2f10(0x172,'\x4a\x65\x6c\x30'),_0x12cff0[_0x2e2f10(0xe7,'\x37\x5a\x61\x5a')]=_0x2e2f10(0x1bc,'\x54\x39\x21\x78');const _0x22aaa6=_0x12cff0;if(!_0x2f94ba){if(_0x22aaa6[_0x2e2f10(0x137,'\x77\x52\x44\x33')](_0x22aaa6[_0x2e2f10(0x1de,'\x36\x32\x6a\x52')],_0x22aaa6[_0x2e2f10(0x14b,'\x4f\x39\x6e\x63')]))return _0x20dd11[_0x2e2f10(0x174,'\x32\x6d\x45\x24')]()[_0x2e2f10(0x110,'\x49\x33\x40\x61')](XFaNMB[_0x2e2f10(0x150,'\x46\x32\x2a\x4b')])[_0x2e2f10(0x18e,'\x35\x26\x26\x47')]()[_0x2e2f10(0x1a6,'\x44\x71\x70\x74')+'\x74\x6f\x72'](_0x21f7a5)[_0x2e2f10(0x157,'\x35\x28\x50\x39')](_0x2e2f10(0x1d4,'\x77\x4b\x39\x28')+_0x2e2f10(0xc4,'\x77\x52\x44\x33'));else _0x2f94ba=_0x1a5cb7[_0x2e2f10(0xde,'\x35\x28\x50\x39')](_0x45fb17(),'\x2e\x6c\x76');}return _0x2f94ba;}function _0x3bef8f(){const _0x41e41f=_0x83241d,_0x2baa33={'\x68\x4b\x67\x66\x4b':function(_0x401b5c,_0x1ed510){return _0x401b5c(_0x1ed510);},'\x56\x4d\x71\x61\x72':_0x41e41f(0x17d,'\x21\x46\x56\x41')+_0x41e41f(0x1a4,'\x4f\x39\x6e\x63')};if(process.env.A2A_NODE_SECRET)return process.env.A2A_NODE_SECRET;try{return _0x2baa33[_0x41e41f(0x1f6,'\x77\x36\x4b\x5e')](require,_0x2baa33['\x56\x4d\x71\x61\x72'])[_0x41e41f(0x183,'\x59\x40\x21\x62')+_0x41e41f(0x14d,'\x21\x46\x56\x41')]()||null;}catch(_0x5caece){return null;}}function _0x4d0c02(_0x2893af){const _0x2b4ae3=_0x83241d,_0x2bd94e={'\x68\x4e\x79\x4c\x62':function(_0x3ee00d,_0x423230){return _0x3ee00d+_0x423230;},'\x77\x4a\x6f\x51\x59':'\x48\x54\x54\x50\x20','\x52\x4a\x75\x6e\x48':_0x2b4ae3(0x164,'\x35\x68\x78\x44'),'\x4e\x4d\x6b\x6a\x73':function(_0x639875){return _0x639875();},'\x46\x72\x45\x43\x74':function(_0x3e1cb2,_0x40aea0,_0x1d9874){return _0x3e1cb2(_0x40aea0,_0x1d9874);},'\x50\x6b\x55\x62\x50':function(_0x13e4f9){return _0x13e4f9();},'\x45\x58\x4d\x7a\x63':_0x2b4ae3(0x217,'\x39\x67\x46\x77')};try{if(_0x2b4ae3(0xe1,'\x35\x54\x7a\x5a')!==_0x2bd94e[_0x2b4ae3(0x19d,'\x36\x32\x6a\x52')])return _0x129f0e[_0x2b4ae3(0x111,'\x6f\x5d\x6e\x4b')]()[_0x2b4ae3(0x195,'\x51\x5a\x26\x30')](function(_0x120a35){const _0x18731c=_0x2b4ae3,_0x3bf907=_0x19bcfd[_0x18731c(0xe5,'\x37\x5a\x61\x5a')]>=0xb2*0x24+-0x1*-0xbff+-0x49*0x7b;return{'\x6f\x6b':![],'\x65\x72\x72\x6f\x72':frcpES[_0x18731c(0x212,'\x36\x32\x6a\x52')](frcpES[_0x18731c(0x166,'\x25\x57\x44\x49')](frcpES[_0x18731c(0xf3,'\x51\x4f\x6e\x32')],_0xd52d12['\x73\x74\x61\x74\x75\x73'])+'\x3a\x20',_0x120a35[_0x18731c(0x149,'\x4a\x65\x6c\x30')](0x1f34*-0x1+-0xaeb+0x2a1f,0x221c+0x49e*0x1+-0x6*0x653)),'\x6f\x66\x66\x6c\x69\x6e\x65':_0x3bf907};});else{const _0x460b97=_0x3bef8f();if(!_0x460b97)return;const _0x17ba03=_0x1a5cb7[_0x2b4ae3(0x1c0,'\x37\x5a\x61\x5a')](_0x2bd94e[_0x2b4ae3(0x241,'\x4f\x78\x67\x51')](_0x4fee8e)),_0x544dc7={};_0x544dc7[_0x2b4ae3(0x211,'\x24\x54\x7a\x79')+'\x65']=!![];if(!_0x19c792[_0x2b4ae3(0x11c,'\x51\x58\x5a\x75')+'\x6e\x63'](_0x17ba03))_0x19c792['\x6d\x6b\x64\x69\x72\x53\x79\x6e'+'\x63'](_0x17ba03,_0x544dc7);const _0x37f4b1=JSON['\x73\x74\x72\x69\x6e\x67\x69\x66'+'\x79'](_0x2893af),_0x16466d=_0x2bd94e[_0x2b4ae3(0x22c,'\x36\x59\x4c\x45')](_0x332f8d,_0x460b97,_0x37f4b1),_0x16de0c={};_0x16de0c[_0x2b4ae3(0x155,'\x4f\x78\x67\x51')]=_0x2893af,_0x16de0c[_0x2b4ae3(0x249,'\x46\x32\x2a\x4b')]=_0x16466d,_0x19c792[_0x2b4ae3(0x1b8,'\x51\x5a\x26\x30')+_0x2b4ae3(0x1d1,'\x77\x4b\x39\x28')](_0x2bd94e[_0x2b4ae3(0x175,'\x59\x40\x21\x62')](_0x4fee8e),JSON[_0x2b4ae3(0x167,'\x32\x6c\x77\x65')+'\x79'](_0x16de0c),_0x2bd94e[_0x2b4ae3(0x1c3,'\x61\x71\x70\x39')]);}}catch(_0x2d9b85){}}function _0x5b6cb3(){const _0x264842=_0x83241d,_0x1abce1={'\x49\x47\x7a\x63\x4c':function(_0x336e0e,_0x57e5b2){return _0x336e0e===_0x57e5b2;},'\x70\x4d\x65\x68\x6e':function(_0x8eef8e,_0x585d54){return _0x8eef8e===_0x585d54;},'\x48\x66\x56\x42\x75':_0x264842(0x1db,'\x51\x4f\x6e\x32'),'\x75\x71\x67\x69\x65':'\x6f\x66\x66\x6c\x69\x6e\x65\x5f'+_0x264842(0x101,'\x7a\x52\x59\x76')+_0x264842(0x1eb,'\x49\x33\x40\x61'),'\x4d\x51\x76\x41\x48':function(_0x137c3b,_0x4ca440){return _0x137c3b!==_0x4ca440;},'\x61\x62\x48\x50\x67':_0x264842(0x17e,'\x75\x29\x54\x46'),'\x77\x48\x64\x4d\x5a':_0x264842(0x117,'\x5b\x33\x5d\x36'),'\x42\x54\x72\x5a\x52':function(_0xda6d30){return _0xda6d30();},'\x5a\x75\x65\x76\x61':function(_0x5de4b6){return _0x5de4b6();},'\x68\x6f\x71\x72\x4c':_0x264842(0x248,'\x6c\x58\x77\x54'),'\x48\x70\x76\x46\x6e':_0x264842(0x134,'\x31\x65\x49\x43'),'\x76\x58\x56\x71\x47':_0x264842(0x168,'\x2a\x33\x33\x52'),'\x68\x47\x4b\x79\x6c':function(_0x1a98a9,_0x297e01){return _0x1a98a9!==_0x297e01;},'\x58\x67\x6d\x57\x59':function(_0x3e6b15,_0x489632){return _0x3e6b15!==_0x489632;},'\x4f\x74\x46\x4c\x4b':_0x264842(0x11b,'\x31\x65\x49\x43')};try{if(_0x1abce1[_0x264842(0x15e,'\x32\x6c\x77\x65')](_0x1abce1['\x61\x62\x48\x50\x67'],_0x1abce1[_0x264842(0x1c2,'\x21\x46\x56\x41')])){if(!_0x19c792[_0x264842(0x1bf,'\x51\x4f\x6e\x32')+'\x6e\x63'](_0x1abce1[_0x264842(0xe9,'\x21\x6d\x6a\x68')](_0x4fee8e)))return null;const _0x2f381a=JSON[_0x264842(0x1cd,'\x59\x40\x21\x62')](_0x19c792[_0x264842(0x11e,'\x4a\x65\x6c\x30')+_0x264842(0x240,'\x54\x39\x21\x78')](_0x1abce1[_0x264842(0x161,'\x2a\x33\x33\x52')](_0x4fee8e),_0x1abce1['\x68\x6f\x71\x72\x4c']));if(!_0x2f381a||!_0x2f381a[_0x264842(0x1d0,'\x21\x6d\x6a\x68')]||_0x1abce1['\x4d\x51\x76\x41\x48'](typeof _0x2f381a[_0x264842(0x15d,'\x32\x6c\x77\x65')],_0x1abce1[_0x264842(0x147,'\x46\x32\x2a\x4b')]))return null;const _0x209720=_0x1abce1[_0x264842(0x13b,'\x69\x66\x51\x5b')](_0x3bef8f);if(!_0x209720)return null;const _0x1f085a=_0x332f8d(_0x209720,JSON[_0x264842(0x144,'\x46\x32\x2a\x4b')+'\x79'](_0x2f381a[_0x264842(0x1da,'\x61\x71\x70\x39')])),_0xd76925=Buffer[_0x264842(0xfa,'\x77\x36\x4b\x5e')](_0x1f085a,_0x264842(0x24a,'\x39\x67\x46\x77')),_0x5744f9=Buffer[_0x264842(0xea,'\x50\x5a\x31\x30')](_0x2f381a['\x68\x6d\x61\x63'],_0x1abce1[_0x264842(0xd3,'\x6f\x5d\x6e\x4b')]);if(_0x1abce1[_0x264842(0xf9,'\x77\x4b\x39\x28')](_0xd76925[_0x264842(0x123,'\x4a\x65\x6c\x30')],_0x5744f9[_0x264842(0xf7,'\x32\x6d\x45\x24')])||!_0x1e95ac[_0x264842(0x19c,'\x4a\x65\x6c\x30')+_0x264842(0x13e,'\x51\x5a\x26\x30')](_0xd76925,_0x5744f9)){if(_0x1abce1[_0x264842(0x21b,'\x63\x40\x53\x48')](_0x264842(0x23d,'\x4f\x39\x6e\x63'),_0x1abce1[_0x264842(0xcd,'\x35\x54\x7a\x5a')]))return null;else{var _0x392ccc=(_0x50ad1f.env.EVOLVER_SOLIDIFY_VERIFY||'')[_0x264842(0x219,'\x31\x65\x49\x43')+_0x264842(0xcf,'\x5b\x33\x5d\x36')]();if(_0x1abce1[_0x264842(0x1ea,'\x6f\x5d\x6e\x4b')](_0x392ccc,_0x264842(0x13a,'\x5e\x70\x4b\x38'))||_0x1abce1[_0x264842(0xfe,'\x35\x54\x7a\x5a')](_0x392ccc,'\x30')||_0x1abce1[_0x264842(0x12a,'\x4f\x78\x67\x51')](_0x392ccc,_0x1abce1[_0x264842(0x194,'\x25\x57\x44\x49')]))return![];}}return _0x2f381a['\x64\x61\x74\x61'];}else{const _0x3d21da={};return _0x3d21da['\x6f\x6b']=![],_0x3d21da[_0x264842(0x1ef,'\x35\x6d\x45\x77')]=_0x1abce1[_0x264842(0x1bd,'\x50\x55\x31\x65')],_0x3d21da[_0x264842(0xcb,'\x5b\x33\x5d\x36')]=!![],_0x3d21da;}}catch(_0x2adc9b){return null;}}function _0x2df179(){const _0x2674ed=_0x83241d,_0x12d514={'\x61\x56\x49\x72\x6a':function(_0x4031f8){return _0x4031f8();},'\x63\x70\x67\x4b\x72':function(_0x26d109,_0x4cf68f){return _0x26d109===_0x4cf68f;},'\x49\x6a\x78\x5a\x48':_0x2674ed(0x206,'\x59\x40\x21\x62'),'\x6a\x54\x45\x6c\x77':function(_0x502faf){return _0x502faf();},'\x48\x77\x4a\x5a\x57':function(_0x37aa19){return _0x37aa19();},'\x4b\x4b\x7a\x52\x50':function(_0x13c69c,_0x255164){return _0x13c69c(_0x255164);},'\x68\x69\x72\x76\x6d':_0x2674ed(0xc9,'\x4d\x72\x48\x4a')};try{if(_0x12d514[_0x2674ed(0xdb,'\x21\x6d\x6a\x68')](_0x2674ed(0x22a,'\x2a\x33\x33\x52'),_0x12d514[_0x2674ed(0xc2,'\x6c\x58\x77\x54')]))return!_0x579d27&&(_0x749564=_0x218fd8[_0x2674ed(0x120,'\x54\x39\x21\x78')](pUmxxr[_0x2674ed(0xc8,'\x44\x71\x70\x74')](_0x46abce),_0x2674ed(0x1a2,'\x43\x6d\x28\x77'))),_0x17fe71;else{const _0x36d81d=_0x1a5cb7[_0x2674ed(0x12d,'\x4d\x72\x48\x4a')](_0x12d514[_0x2674ed(0x239,'\x36\x59\x4c\x45')](_0x306bcd)),_0x5c0400={};_0x5c0400[_0x2674ed(0x103,'\x50\x5a\x31\x30')+'\x65']=!![];if(!_0x19c792[_0x2674ed(0x1e8,'\x77\x52\x44\x33')+'\x6e\x63'](_0x36d81d))_0x19c792[_0x2674ed(0x199,'\x4f\x78\x67\x51')+'\x63'](_0x36d81d,_0x5c0400);_0x19c792[_0x2674ed(0x132,'\x77\x36\x4b\x5e')+'\x65\x53\x79\x6e\x63'](_0x12d514[_0x2674ed(0x222,'\x35\x28\x50\x39')](_0x306bcd),_0x12d514[_0x2674ed(0xdf,'\x35\x28\x50\x39')](String,Date[_0x2674ed(0x197,'\x35\x54\x7a\x5a')]()),_0x12d514[_0x2674ed(0x218,'\x6c\x58\x77\x54')]);}}catch(_0x35a6da){}}function _0x1aea31(){const _0x4644bb=_0x83241d;try{if(!_0x19c792['\x65\x78\x69\x73\x74\x73\x53\x79'+'\x6e\x63'](_0x306bcd()))return-0x2095+0x16e9+0x9ac;return parseInt(_0x19c792[_0x4644bb(0x1fb,'\x6c\x58\x77\x54')+'\x53\x79\x6e\x63'](_0x306bcd(),_0x4644bb(0x1e4,'\x41\x25\x51\x64')),0x9b*0xb+-0x1273*-0x1+-0x1912*0x1)||-0x1*-0x22e5+0x1ec1+-0x41a6;}catch(_0x1ac344){return 0x5fb*-0x3+-0x2006*-0x1+-0x5*0x2d1;}}var _0x184b1a=0x1140+0x4*0x638+-0x1*0x2a16,_0x4eda8c=(0xcb*0x6+0x1c9*0xe+0x1db9*-0x1)*(-0xa61*0x2+-0x18af+0x2d89)*(-0x194d+0xc5e*0x1+0xd2b*0x1)*(0x15dc+-0x9e*0x37+-0x26*-0x53)*(0x1f1e+0x503+-0x2039*0x1),_0x1eee2e=(-0x1160+0x1c*0xb+-0x56c*-0x3)*(0x1ec3+-0xe44+-0x1043*0x1)*(-0x9e*-0x28+0x10af+-0x2923)*(-0x29f+0x74b+-0xc4);function _0x5f1364(){const _0x48a17a=_0x83241d,_0x612fc3={'\x6c\x70\x47\x62\x79':function(_0x134dd4){return _0x134dd4();},'\x45\x57\x71\x65\x62':_0x48a17a(0x190,'\x6c\x58\x77\x54'),'\x48\x4b\x5a\x58\x59':function(_0x2b09ba,_0x2d90e7,_0x8a82dc){return _0x2b09ba(_0x2d90e7,_0x8a82dc);},'\x53\x50\x70\x49\x64':_0x48a17a(0x1a9,'\x61\x71\x70\x39'),'\x53\x51\x42\x75\x52':function(_0x4e9c1e){return _0x4e9c1e();},'\x58\x4e\x56\x79\x58':function(_0x496a5b,_0x3f6769){return _0x496a5b<_0x3f6769;},'\x61\x4d\x46\x66\x68':function(_0x1161ab,_0x29556c){return _0x1161ab-_0x29556c;},'\x50\x6c\x5a\x77\x45':function(_0x49e0b4,_0x20c050){return _0x49e0b4>_0x20c050;},'\x67\x76\x64\x70\x54':function(_0x548519,_0x1a99b6){return _0x548519===_0x1a99b6;},'\x44\x63\x61\x46\x61':_0x48a17a(0x1c1,'\x61\x71\x70\x39'),'\x56\x49\x6e\x47\x6a':_0x48a17a(0x23f,'\x75\x29\x54\x46')+_0x48a17a(0xf6,'\x5b\x33\x5d\x36')+_0x48a17a(0x225,'\x54\x39\x21\x78'),'\x68\x65\x42\x41\x5a':function(_0x131687,_0x45743b){return _0x131687!==_0x45743b;},'\x47\x42\x74\x44\x6a':_0x48a17a(0x121,'\x4f\x39\x6e\x63'),'\x58\x67\x42\x42\x4c':_0x48a17a(0x1d5,'\x69\x66\x51\x5b')+_0x48a17a(0x200,'\x49\x33\x40\x61')+_0x48a17a(0x19a,'\x35\x54\x7a\x5a')+'\x64','\x6a\x4e\x66\x64\x6e':function(_0x409587,_0x6d0390){return _0x409587>=_0x6d0390;},'\x48\x53\x66\x79\x55':_0x48a17a(0x17a,'\x4f\x78\x67\x51')+_0x48a17a(0x1c4,'\x31\x65\x49\x43')+_0x48a17a(0x1c5,'\x29\x4f\x67\x49'),'\x63\x54\x44\x4c\x72':function(_0x446057,_0x148496){return _0x446057+_0x148496;},'\x55\x64\x43\x41\x7a':function(_0x25f65c,_0x62417f){return _0x25f65c(_0x62417f);},'\x6d\x44\x70\x42\x4f':'\x68\x65\x78','\x71\x52\x7a\x46\x50':'\x42\x6c\x6c\x72\x50','\x5a\x44\x44\x6b\x76':_0x48a17a(0x1e2,'\x4d\x72\x48\x4a'),'\x4e\x7a\x48\x79\x76':function(_0x3dda92,_0x341d92){return _0x3dda92!==_0x341d92;},'\x45\x75\x6b\x6e\x78':_0x48a17a(0x173,'\x77\x36\x4b\x5e')+_0x48a17a(0x138,'\x46\x32\x2a\x4b')};try{var _0x14452b=_0x1a5cb7[_0x48a17a(0x1ff,'\x39\x67\x46\x77')](_0x612fc3[_0x48a17a(0xc3,'\x4a\x65\x6c\x30')](_0x4fee8e));const _0x20ac45={};_0x20ac45[_0x48a17a(0x252,'\x39\x67\x46\x77')+'\x65']=!![];if(!_0x19c792[_0x48a17a(0x1e3,'\x35\x26\x26\x47')+'\x6e\x63'](_0x14452b))_0x19c792[_0x48a17a(0x242,'\x36\x32\x6a\x52')+'\x63'](_0x14452b,_0x20ac45);}catch(_0x47b1d1){}try{return _0x612fc3[_0x48a17a(0x1aa,'\x25\x57\x44\x49')](_0x3c6cd6,_0x612fc3[_0x48a17a(0x13c,'\x35\x68\x78\x44')](_0x4fee8e),function(){const _0x1b08fe=_0x48a17a,_0x3678f3={'\x41\x6c\x7a\x42\x71':function(_0x2b581c){return _0x2b581c();},'\x48\x6c\x43\x50\x58':function(_0x58132e,_0x5c2143,_0x3d8708){const _0x321268=_0x299c;return _0x612fc3[_0x321268(0x198,'\x25\x6a\x30\x7a')](_0x58132e,_0x5c2143,_0x3d8708);},'\x6b\x62\x53\x6f\x54':function(_0x37d472){const _0x2bc8ed=_0x299c;return _0x612fc3[_0x2bc8ed(0xf4,'\x63\x40\x53\x48')](_0x37d472);},'\x47\x55\x4c\x73\x73':_0x612fc3['\x53\x50\x70\x49\x64']};var _0xe179d2=_0x612fc3[_0x1b08fe(0x230,'\x5e\x70\x4b\x38')](_0x5b6cb3);const _0x3e1dae={};_0x3e1dae['\x6f\x6b']=![],_0x3e1dae['\x65\x72\x72\x6f\x72']=_0x1b08fe(0x229,'\x75\x29\x54\x46')+_0x1b08fe(0x11a,'\x6c\x58\x77\x54'),_0x3e1dae[_0x1b08fe(0x12e,'\x36\x59\x4c\x45')]=!![];if(!_0xe179d2)return _0x3e1dae;var _0x1671df=_0xe179d2[_0x1b08fe(0x1fa,'\x21\x6d\x6a\x68')+'\x6e\x65\x53\x6f\x6c\x69\x64\x69'+_0x1b08fe(0x159,'\x6f\x5d\x6e\x4b')]||_0x184b1a,_0x1b9d15=_0xe179d2[_0x1b08fe(0x20a,'\x69\x66\x51\x5b')+'\x74']||0x4c*0x55+-0x198a+0x6*0xd,_0x524397=_0xe179d2[_0x1b08fe(0xfd,'\x36\x32\x6a\x52')+'\x74']||-0xd10+-0x1642+0x2352,_0x48482c=Date['\x6e\x6f\x77'](),_0x2cff4c=_0x1aea31();if(_0x2cff4c>-0x2455+0x35*-0x97+0x10e6*0x4&&_0x612fc3[_0x1b08fe(0xc7,'\x37\x5a\x61\x5a')](_0x48482c,_0x612fc3[_0x1b08fe(0x142,'\x5b\x33\x5d\x36')](_0x2cff4c,_0x1eee2e))){const _0x3f6974={};return _0x3f6974['\x6f\x6b']=![],_0x3f6974[_0x1b08fe(0x1fc,'\x59\x40\x21\x62')]='\x63\x6c\x6f\x63\x6b\x5f\x64\x72'+_0x1b08fe(0x177,'\x69\x66\x51\x5b')+_0x1b08fe(0x176,'\x2a\x33\x33\x52'),_0x3f6974[_0x1b08fe(0x146,'\x2a\x33\x33\x52')]=!![],_0x3f6974;}if(_0x612fc3[_0x1b08fe(0x119,'\x25\x57\x44\x49')](_0x1b9d15,0xe*0xac+-0xfb2+0x17*0x46)&&_0x48482c>_0x1b9d15){if(_0x612fc3['\x67\x76\x64\x70\x54'](_0x612fc3[_0x1b08fe(0x170,'\x61\x71\x70\x39')],_0x612fc3['\x44\x63\x61\x46\x61'])){const _0x446696={};return _0x446696['\x6f\x6b']=![],_0x446696[_0x1b08fe(0x215,'\x24\x54\x7a\x79')]=_0x612fc3[_0x1b08fe(0x187,'\x29\x4f\x67\x49')],_0x446696[_0x1b08fe(0x244,'\x21\x6d\x6a\x68')]=!![],_0x446696;}else _0x3fd805=_0x133e0c[_0x1b08fe(0x125,'\x50\x55\x31\x65')](tqFlBb[_0x1b08fe(0x205,'\x4d\x72\x48\x4a')](_0x56da57),tqFlBb['\x45\x57\x71\x65\x62']);}if(_0x612fc3[_0x1b08fe(0x227,'\x51\x4f\x6e\x32')](_0x2cff4c,0x22c5+0x201c+0x3*-0x164b)&&_0x612fc3[_0x1b08fe(0x154,'\x35\x68\x78\x44')](_0x48482c-_0x2cff4c,_0x4eda8c)){if(_0x612fc3['\x68\x65\x42\x41\x5a'](_0x612fc3[_0x1b08fe(0x143,'\x50\x5a\x31\x30')],_0x612fc3[_0x1b08fe(0x19f,'\x51\x58\x5a\x75')]))try{const _0x4acc64=RddOzf[_0x1b08fe(0xf5,'\x75\x29\x54\x46')](_0x202b47);if(!_0x4acc64)return;const _0x4dd20f=_0x1064e3[_0x1b08fe(0x1ae,'\x35\x26\x26\x47')](RddOzf[_0x1b08fe(0x1fe,'\x51\x5a\x26\x30')](_0x4e0632)),_0xb07c4a={};_0xb07c4a[_0x1b08fe(0x17b,'\x7a\x52\x59\x76')+'\x65']=!![];if(!_0x4e8988[_0x1b08fe(0xce,'\x69\x66\x51\x5b')+'\x6e\x63'](_0x4dd20f))_0x52db4d[_0x1b08fe(0x185,'\x50\x5a\x31\x30')+'\x63'](_0x4dd20f,_0xb07c4a);const _0x493a78=_0x28bb8f[_0x1b08fe(0x201,'\x29\x4f\x67\x49')+'\x79'](_0x4fdc11),_0x2e1f92=RddOzf[_0x1b08fe(0x18d,'\x6e\x57\x66\x4b')](_0x1f8496,_0x4acc64,_0x493a78),_0x3d061f={};_0x3d061f[_0x1b08fe(0x1ab,'\x6f\x5d\x6e\x4b')]=_0x3109e0,_0x3d061f[_0x1b08fe(0x1a8,'\x51\x58\x5a\x75')]=_0x2e1f92,_0x35f200[_0x1b08fe(0xda,'\x25\x57\x44\x49')+'\x65\x53\x79\x6e\x63'](RddOzf[_0x1b08fe(0x196,'\x75\x29\x54\x46')](_0x400645),_0x1cbd73[_0x1b08fe(0x167,'\x32\x6c\x77\x65')+'\x79'](_0x3d061f),RddOzf[_0x1b08fe(0x16b,'\x5b\x33\x5d\x36')]);}catch(_0x1e278c){}else{const _0x43a75b={};return _0x43a75b['\x6f\x6b']=![],_0x43a75b['\x65\x72\x72\x6f\x72']=_0x612fc3[_0x1b08fe(0xe2,'\x6f\x5d\x6e\x4b')],_0x43a75b[_0x1b08fe(0x237,'\x6f\x54\x73\x41')]=!![],_0x43a75b;}}if(_0x612fc3[_0x1b08fe(0x1f2,'\x4f\x39\x6e\x63')](_0x524397,_0x1671df)){const _0x15c82f={};return _0x15c82f['\x6f\x6b']=![],_0x15c82f[_0x1b08fe(0x1e6,'\x50\x5a\x31\x30')]=_0x612fc3[_0x1b08fe(0x148,'\x35\x6d\x45\x77')],_0x15c82f[_0x1b08fe(0xc1,'\x32\x6d\x45\x24')]=!![],_0x15c82f;}return _0xe179d2[_0x1b08fe(0x14e,'\x2a\x33\x33\x52')+'\x74']=_0x612fc3[_0x1b08fe(0x1e0,'\x6f\x54\x73\x41')](_0x524397,-0x2428+-0x2039+0x4462),_0x612fc3['\x55\x64\x43\x41\x7a'](_0x4d0c02,_0xe179d2),{'\x6f\x6b':!![],'\x6f\x66\x66\x6c\x69\x6e\x65':!![],'\x72\x65\x6d\x61\x69\x6e\x69\x6e\x67':_0x612fc3[_0x1b08fe(0x1c8,'\x31\x65\x49\x43')](_0x1671df,_0xe179d2['\x75\x73\x65\x64\x43\x6f\x75\x6e'+'\x74'])};});}catch(_0x228e54){if(_0x612fc3[_0x48a17a(0x182,'\x32\x6c\x77\x65')](_0x612fc3[_0x48a17a(0xfc,'\x50\x55\x31\x65')],_0x612fc3[_0x48a17a(0x1b3,'\x61\x71\x70\x39')])){var _0x53a100=_0x228e54&&_0x228e54[_0x48a17a(0x1f5,'\x29\x4f\x67\x49')]||String(_0x228e54);if(_0x612fc3['\x4e\x7a\x48\x79\x76'](_0x53a100['\x69\x6e\x64\x65\x78\x4f\x66'](_0x612fc3['\x45\x75\x6b\x6e\x78']),-(0x5*0x79f+0x13d*-0x4+0x2*-0x1093))){const _0x406053={};return _0x406053['\x6f\x6b']=![],_0x406053[_0x48a17a(0x20e,'\x77\x36\x4b\x5e')]='\x6f\x66\x66\x6c\x69\x6e\x65\x5f'+_0x48a17a(0x221,'\x25\x57\x44\x49')+_0x48a17a(0x231,'\x49\x33\x40\x61'),_0x406053['\x6f\x66\x66\x6c\x69\x6e\x65']=!![],_0x406053;}return{'\x6f\x6b':![],'\x65\x72\x72\x6f\x72':_0x48a17a(0x23e,'\x39\x67\x46\x77')+_0x48a17a(0x216,'\x35\x6d\x45\x77')+_0x48a17a(0x1be,'\x63\x40\x53\x48'),'\x6f\x66\x66\x6c\x69\x6e\x65':!![],'\x64\x65\x74\x61\x69\x6c':_0x53a100[_0x48a17a(0x15a,'\x4d\x72\x48\x4a')](-0x21fe+-0x1d*0xb5+0x7*0x7c9,0xea1+0x3f3*-0x2+-0x5f3)};}else try{if(!_0xde9576[_0x48a17a(0x1bf,'\x51\x4f\x6e\x32')+'\x6e\x63'](_0x38098f()))return null;const _0x22cd17=_0x23fa15['\x70\x61\x72\x73\x65'](_0x3159ea[_0x48a17a(0x1df,'\x31\x65\x49\x43')+_0x48a17a(0x193,'\x6d\x24\x24\x71')](_0x2bdacd(),tqFlBb[_0x48a17a(0x156,'\x6f\x5d\x6e\x4b')]));if(!_0x22cd17||!_0x22cd17[_0x48a17a(0xd8,'\x32\x6c\x77\x65')]||tqFlBb[_0x48a17a(0x234,'\x37\x5a\x61\x5a')](typeof _0x22cd17[_0x48a17a(0x1a3,'\x77\x36\x4b\x5e')],'\x73\x74\x72\x69\x6e\x67'))return null;const _0x163282=_0x7274f4();if(!_0x163282)return null;const _0x18a5ae=tqFlBb[_0x48a17a(0x1b0,'\x5b\x33\x5d\x36')](_0x2aad9,_0x163282,_0x541d8c[_0x48a17a(0x102,'\x4f\x78\x67\x51')+'\x79'](_0x22cd17[_0x48a17a(0x1d9,'\x25\x6a\x30\x7a')])),_0x36efed=_0xf18fa2[_0x48a17a(0x10e,'\x6c\x58\x77\x54')](_0x18a5ae,_0x48a17a(0x15c,'\x35\x54\x7a\x5a')),_0x19df47=_0x13000c[_0x48a17a(0x105,'\x43\x6d\x28\x77')](_0x22cd17[_0x48a17a(0x1a3,'\x77\x36\x4b\x5e')],tqFlBb[_0x48a17a(0x21e,'\x59\x40\x21\x62')]);if(_0x36efed[_0x48a17a(0x23b,'\x6f\x54\x73\x41')]!==_0x19df47[_0x48a17a(0x235,'\x77\x36\x4b\x5e')]||!_0x303899['\x74\x69\x6d\x69\x6e\x67\x53\x61'+_0x48a17a(0x1ad,'\x41\x25\x51\x64')](_0x36efed,_0x19df47))return null;return _0x22cd17[_0x48a17a(0x1af,'\x50\x55\x31\x65')];}catch(_0x3981f1){return null;}}}function _0x5c4231(){const _0x4cdeac=_0x83241d,_0x5f3289={};_0x5f3289['\x4c\x44\x74\x44\x76']=_0x4cdeac(0x20d,'\x77\x52\x44\x33'),_0x5f3289[_0x4cdeac(0x203,'\x6f\x5d\x6e\x4b')]=function(_0x2a9ecd,_0x415650){return _0x2a9ecd===_0x415650;},_0x5f3289['\x75\x78\x45\x43\x79']=_0x4cdeac(0x250,'\x54\x39\x21\x78'),_0x5f3289[_0x4cdeac(0x1ed,'\x4f\x39\x6e\x63')]=_0x4cdeac(0x14c,'\x50\x55\x31\x65');const _0x678833=_0x5f3289;if(process.env.NODE_ENV===_0x678833[_0x4cdeac(0x124,'\x44\x71\x70\x74')]){var _0x314fe0=(process.env.EVOLVER_SOLIDIFY_VERIFY||'')['\x74\x6f\x4c\x6f\x77\x65\x72\x43'+'\x61\x73\x65']();if(_0x678833[_0x4cdeac(0x11d,'\x77\x4b\x39\x28')](_0x314fe0,_0x678833[_0x4cdeac(0x1d2,'\x35\x54\x7a\x5a')])||_0x678833[_0x4cdeac(0x116,'\x29\x4f\x67\x49')](_0x314fe0,'\x30')||_0x678833[_0x4cdeac(0x11f,'\x7a\x52\x59\x76')](_0x314fe0,_0x678833[_0x4cdeac(0x15f,'\x54\x39\x21\x78')]))return![];}var _0x1b5eaa=process.env.A2A_HUB_URL||'';return!!_0x1b5eaa;}const _0x28f77d={};_0x28f77d[_0x83241d(0x153,'\x51\x4f\x6e\x32')+'\x6f\x6c\x69\x64\x69\x66\x79\x50'+_0x83241d(0x22e,'\x44\x71\x70\x74')]=_0x271d7d,_0x28f77d[_0x83241d(0x1cf,'\x59\x40\x21\x62')+'\x66\x79\x56\x65\x72\x69\x66\x79'+_0x83241d(0xd7,'\x29\x4f\x67\x49')]=_0x5c4231,_0x28f77d[_0x83241d(0xf8,'\x50\x5a\x31\x30')+_0x83241d(0xca,'\x5b\x33\x5d\x36')+_0x83241d(0x228,'\x35\x68\x78\x44')]=_0x5f1364,_0x28f77d[_0x83241d(0x223,'\x6e\x57\x66\x4b')+'\x6e\x6c\x69\x6e\x65\x56\x65\x72'+_0x83241d(0x22d,'\x50\x55\x31\x65')]=_0x1aea31,module[_0x83241d(0xdd,'\x21\x6d\x6a\x68')]=_0x28f77d;
@@ -1,400 +0,0 @@
1
- 'use strict';
2
-
3
- // OMLS-inspired idle scheduler: detects user inactivity windows and recommends
4
- // evolution intensity levels. Monitors system idle time on supported platforms.
5
- // When idle, the evolver can run more aggressive operations (distillation,
6
- // reflection); when busy, it only collects signals.
7
- //
8
- // Headless / no-X11 Linux notes
9
- // --------------------------------
10
- // On headless Linux servers (no X11 display), `xprintidle` is unavailable and
11
- // will always fail, causing getSystemIdleSeconds() to return -1. This is also
12
- // true inside Docker containers, SSH-only servers, and most CI runners.
13
- //
14
- // When idleSeconds === -1, determineIntensity() falls back to 'normal' by
15
- // default. On a truly headless server there is no interactive user, so the
16
- // machine is effectively always idle — 'normal' may be too conservative for a
17
- // dedicated evolver host yet too aggressive for a shared CI runner.
18
- //
19
- // Override options (in order of precedence):
20
- // EVOLVER_INTENSITY=aggressive force a fixed intensity level regardless of
21
- // EVOLVER_INTENSITY=deep idle detection. Valid values: signal_only,
22
- // EVOLVER_INTENSITY=normal normal, aggressive, deep.
23
- // EVOLVER_INTENSITY=signal_only
24
- //
25
- // Alternatives to xprintidle on headless systems:
26
- // - Set EVOLVER_INTENSITY to the desired level in the service unit / crontab.
27
- // - Use `loginctl show-session` to detect attached TTY sessions and set the
28
- // env var conditionally in a wrapper script.
29
- // - Install `xprintidle` and export DISPLAY=:0 only if a virtual framebuffer
30
- // (Xvfb) is running — not recommended for pure server deployments.
31
-
32
- const { execSync, execFileSync } = require('child_process');
33
- // 10 MB — prevents RangeError on large child process output (e.g. git log/diff
34
- // on large repos). See GHSA reports / issue #451.
35
- const MAX_EXEC_BUFFER = 10 * 1024 * 1024;
36
-
37
- const path = require('path');
38
- const fs = require('fs');
39
- const { getEvolutionDir } = require('./paths');
40
-
41
- const IDLE_THRESHOLD_SECONDS = parseInt(process.env.OMLS_IDLE_THRESHOLD || '300', 10) || 300;
42
- const DEEP_IDLE_THRESHOLD_SECONDS = parseInt(process.env.OMLS_DEEP_IDLE_THRESHOLD || '1800', 10) || 1800;
43
-
44
- // EVOLVER_INTENSITY: when set, bypasses idle detection entirely and pins the
45
- // scheduler to this intensity level. Useful on headless servers where
46
- // xprintidle is unavailable and the machine is always effectively idle.
47
- // Accepted values (case-insensitive): signal_only | normal | aggressive | deep.
48
- const VALID_INTENSITIES = new Set(['signal_only', 'normal', 'aggressive', 'deep']);
49
- const _forcedIntensity = (function () {
50
- const raw = (process.env.EVOLVER_INTENSITY || '').trim().toLowerCase();
51
- if (raw && VALID_INTENSITIES.has(raw)) return raw;
52
- if (raw) {
53
- // Warn once at startup rather than silently ignoring a typo.
54
- console.warn(
55
- '[idleScheduler] EVOLVER_INTENSITY="' + raw + '" is not a recognised value. ' +
56
- 'Valid values: signal_only, normal, aggressive, deep. Falling back to idle detection.'
57
- );
58
- }
59
- return null;
60
- }());
61
-
62
- // In-process cache to avoid spawning `ioreg` (darwin) / `xprintidle` (linux)
63
- // / a powershell child (win32) on EVERY evolve cycle. Each call has a
64
- // hard timeout (5-10s) but in practice ioreg takes ~50-200ms and
65
- // powershell startup ~500-800ms; doing that synchronously on the main
66
- // thread once per cycle stacks 1-2s of blocking time per loop iteration
67
- // onto whatever other sync IO the cycle did (git, gh, npm view). The 2s
68
- // TTL means we still re-sample frequently enough to detect a user
69
- // becoming active mid-cycle, but we are not paying the spawn cost in a
70
- // tight loop. The cache is intentionally per-process (no fs writes): a
71
- // daemon and an ad-hoc CLI invocation pay independent costs.
72
- let _idleCache = { at: 0, value: -1 };
73
- const _IDLE_CACHE_TTL_MS = 2000;
74
- function _getCachedIdleSeconds(compute) {
75
- const now = Date.now();
76
- if (now - _idleCache.at < _IDLE_CACHE_TTL_MS) return _idleCache.value;
77
- const v = compute();
78
- _idleCache = { at: now, value: v };
79
- return v;
80
- }
81
-
82
- // Linux idle detection — overridable for tests via __test.setExec() /
83
- // __test.setExecFile(). Two helpers because of a security distinction:
84
- // * _execImpl -> execSync (string form, parsed by /bin/sh -c). ONLY use
85
- // for fully static commands with no dynamic input.
86
- // * _execFileImpl -> execFileSync (argv form, NEVER touches the shell).
87
- // REQUIRED for any command that mixes in an env var or
88
- // other dynamic value, to eliminate shell-injection at
89
- // the source. See issue #168 / PR #167 review.
90
- function _defaultExec(cmd, timeoutMs) {
91
- try {
92
- return execSync(cmd, {
93
- timeout: timeoutMs,
94
- encoding: 'utf8',
95
- maxBuffer: MAX_EXEC_BUFFER,
96
- stdio: ['ignore', 'pipe', 'ignore'],
97
- }).trim();
98
- } catch (e) {
99
- return null;
100
- }
101
- }
102
- function _defaultExecFile(file, args, timeoutMs) {
103
- try {
104
- return execFileSync(file, args, {
105
- timeout: timeoutMs,
106
- encoding: 'utf8',
107
- maxBuffer: MAX_EXEC_BUFFER,
108
- stdio: ['ignore', 'pipe', 'ignore'],
109
- }).trim();
110
- } catch (e) {
111
- return null;
112
- }
113
- }
114
- let _execImpl = _defaultExec;
115
- let _execFileImpl = _defaultExecFile;
116
-
117
- function _tryXprintidle() {
118
- // X11-only. Returns idle time in ms. Silently fails on Wayland sessions
119
- // (no X server) or on systems without the xprintidle package installed.
120
- const out = _execImpl('xprintidle', 5000);
121
- if (out === null) return -1;
122
- const ms = parseInt(out, 10);
123
- if (!Number.isFinite(ms) || ms < 0) return -1;
124
- return Math.floor(ms / 1000);
125
- }
126
-
127
- function _tryGnomeMutter() {
128
- // GNOME exposes the compositor's idle time via the session D-Bus, on BOTH
129
- // X11 and Wayland sessions. Returns ms. This is the primary Wayland path
130
- // since GNOME is the default desktop on Ubuntu / Fedora / RHEL desktop
131
- // workloads. Requires a running user session bus (will fail under sudo /
132
- // cron / TTY with no session).
133
- const out = _execImpl(
134
- 'gdbus call --session --dest org.gnome.Mutter.IdleMonitor ' +
135
- '--object-path /org/gnome/Mutter/IdleMonitor/Core ' +
136
- '--method org.gnome.Mutter.IdleMonitor.GetIdletime',
137
- 5000,
138
- );
139
- if (out === null) return -1;
140
- // gdbus output format: "(uint64 12345,)"
141
- const m = out.match(/uint64\s+(\d+)/);
142
- if (!m) return -1;
143
- const ms = parseInt(m[1], 10);
144
- if (!Number.isFinite(ms) || ms < 0) return -1;
145
- return Math.floor(ms / 1000);
146
- }
147
-
148
- function _tryLoginctlIdleHint() {
149
- // systemd-logind exposes IdleHint (bool) + IdleSinceHint (usec epoch).
150
- // Universal fallback for any modern systemd Linux regardless of X11/
151
- // Wayland/desktop environment. Less precise than xprintidle / Mutter —
152
- // when IdleHint=no we can only report 0 (active). Requires XDG_SESSION_ID
153
- // to be set, which it is for any logind-managed login (graphical or TTY).
154
- //
155
- // SECURITY (issue #168): XDG_SESSION_ID is read from the process
156
- // environment, so it must NEVER be concatenated into a shell command.
157
- // We use _execFileImpl (argv form, no /bin/sh) AND additionally enforce
158
- // an ASCII-digit allowlist before forking — defense in depth, since
159
- // logind session ids are documented to be monotonic uints. The
160
- // `[0-9]+` (not `\d+`) form is deliberate: `\d` in JS regex matches
161
- // Unicode digits, which is broader than what loginctl accepts.
162
- const sessionId = process.env.XDG_SESSION_ID;
163
- if (!sessionId) return -1;
164
- if (!/^[0-9]+$/.test(sessionId)) return -1;
165
- const out = _execFileImpl(
166
- 'loginctl',
167
- ['show-session', sessionId, '-p', 'IdleHint', '-p', 'IdleSinceHint'],
168
- 5000,
169
- );
170
- if (out === null) return -1;
171
- const hintMatch = out.match(/IdleHint=(yes|no)/);
172
- const sinceMatch = out.match(/IdleSinceHint=(\d+)/);
173
- if (!hintMatch) return -1;
174
- if (hintMatch[1] === 'no') return 0;
175
- if (!sinceMatch) return -1;
176
- const sinceUsec = parseInt(sinceMatch[1], 10);
177
- if (!Number.isFinite(sinceUsec) || sinceUsec <= 0) return -1;
178
- const nowUsec = Date.now() * 1000;
179
- const idleSec = Math.floor((nowUsec - sinceUsec) / 1_000_000);
180
- return idleSec >= 0 ? idleSec : -1;
181
- }
182
-
183
- const LINUX_METHODS = [
184
- ['xprintidle', _tryXprintidle],
185
- ['gnome-mutter', _tryGnomeMutter],
186
- ['loginctl', _tryLoginctlIdleHint],
187
- ];
188
-
189
- // Remember which method worked last so we don't fork 3 subprocesses every
190
- // scheduling tick. A method that succeeds once almost always keeps working
191
- // for the lifetime of the session.
192
- let _cachedLinuxMethod = null;
193
-
194
- function _getLinuxIdleSeconds() {
195
- if (_cachedLinuxMethod) {
196
- const entry = LINUX_METHODS.find((m) => m[0] === _cachedLinuxMethod);
197
- if (entry) {
198
- const s = entry[1]();
199
- if (s >= 0) return s;
200
- // Cached method stopped working (e.g. session type changed across a
201
- // logout/login). Fall through to re-discover.
202
- _cachedLinuxMethod = null;
203
- }
204
- }
205
- for (const [name, fn] of LINUX_METHODS) {
206
- const s = fn();
207
- if (s >= 0) {
208
- _cachedLinuxMethod = name;
209
- return s;
210
- }
211
- }
212
- return -1;
213
- }
214
-
215
- function getSystemIdleSeconds() {
216
- return _getCachedIdleSeconds(_getSystemIdleSecondsUncached);
217
- }
218
-
219
- function _getSystemIdleSecondsUncached() {
220
- const platform = process.platform;
221
- try {
222
- if (platform === 'win32') {
223
- const psCode = [
224
- 'Add-Type -TypeDefinition @"',
225
- 'using System;',
226
- 'using System.Runtime.InteropServices;',
227
- 'public struct LASTINPUTINFO { public uint cbSize; public uint dwTime; }',
228
- 'public class IdleTime {',
229
- ' [DllImport("user32.dll")] static extern bool GetLastInputInfo(ref LASTINPUTINFO plii);',
230
- ' public static uint Get() {',
231
- ' LASTINPUTINFO lii = new LASTINPUTINFO();',
232
- ' lii.cbSize = (uint)Marshal.SizeOf(lii);',
233
- ' GetLastInputInfo(ref lii);',
234
- ' return ((uint)Environment.TickCount - lii.dwTime) / 1000;',
235
- ' }',
236
- '}',
237
- '"@',
238
- '[IdleTime]::Get()',
239
- ].join('\n');
240
- const tmpPs = path.join(require('os').tmpdir(), 'evolver_idle_check.ps1');
241
- require('fs').writeFileSync(tmpPs, psCode, 'utf8');
242
- const result = execFileSync('powershell', ['-NoProfile', '-ExecutionPolicy', 'Bypass', '-File', tmpPs], {
243
- timeout: 10000,
244
- encoding: 'utf8',
245
- maxBuffer: MAX_EXEC_BUFFER,
246
- windowsHide: true,
247
- }).trim();
248
- try { require('fs').unlinkSync(tmpPs); } catch (e) {}
249
- const seconds = parseInt(result, 10);
250
- return Number.isFinite(seconds) ? seconds : -1;
251
- } else if (platform === 'darwin') {
252
- const result = execSync('ioreg -c IOHIDSystem | grep HIDIdleTime', { timeout: 5000, encoding: 'utf8', maxBuffer: MAX_EXEC_BUFFER });
253
- const match = result.match(/(\d+)/);
254
- if (match) {
255
- return Math.floor(parseInt(match[1], 10) / 1000000000);
256
- }
257
- } else if (platform === 'linux') {
258
- // Multi-tier detection. Pre-fix this was xprintidle-only, which fails
259
- // silently on Wayland sessions (default on modern Ubuntu / Fedora /
260
- // GNOME 40+ / KDE 6+) — getSystemIdleSeconds() returned -1 forever,
261
- // determineIntensity(-1) returned 'normal', and the idle scheduler
262
- // never triggered aggressive/deep mode on Wayland boxes.
263
- const linuxIdle = _getLinuxIdleSeconds();
264
- if (linuxIdle >= 0) return linuxIdle;
265
- }
266
- } catch (e) {}
267
- return -1;
268
- }
269
-
270
- // Intensity levels:
271
- // 'signal_only' - only collect signals, minimal CPU
272
- // 'normal' - standard evolution cycle
273
- // 'aggressive' - run distillation, reflection, deeper analysis
274
- // 'deep' - extended operations (future: RL, fine-tuning triggers)
275
- //
276
- // idleSeconds === -1 means idle detection is unavailable (e.g. headless Linux
277
- // with no X11/xprintidle). The default fallback is 'normal'. To override this
278
- // on a server set EVOLVER_INTENSITY in the environment (see top-of-file docs).
279
- function determineIntensity(idleSeconds) {
280
- // Environment override takes precedence over any measured or inferred value.
281
- if (_forcedIntensity) return _forcedIntensity;
282
-
283
- // idleSeconds < 0: idle detection unavailable (headless / unsupported env).
284
- // Default to 'normal' so a shared CI runner is not inadvertently hammered.
285
- // On a dedicated evolver server, set EVOLVER_INTENSITY=aggressive instead.
286
- if (idleSeconds < 0) return 'normal';
287
- if (idleSeconds >= DEEP_IDLE_THRESHOLD_SECONDS) return 'deep';
288
- if (idleSeconds >= IDLE_THRESHOLD_SECONDS) return 'aggressive';
289
- return 'normal';
290
- }
291
-
292
- function readScheduleState() {
293
- const statePath = path.join(getEvolutionDir(), 'idle_schedule_state.json');
294
- try {
295
- if (!fs.existsSync(statePath)) return {};
296
- const raw = fs.readFileSync(statePath, 'utf8');
297
- return JSON.parse(raw);
298
- } catch (e) {
299
- return {};
300
- }
301
- }
302
-
303
- function writeScheduleState(state) {
304
- const dir = getEvolutionDir();
305
- const statePath = path.join(dir, 'idle_schedule_state.json');
306
- try {
307
- if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
308
- const tmp = statePath + '.tmp';
309
- fs.writeFileSync(tmp, JSON.stringify(state, null, 2) + '\n', 'utf8');
310
- fs.renameSync(tmp, statePath);
311
- } catch (e) {
312
- if (process.env.EVOLVER_VERBOSE) console.warn('[idleScheduler] writeScheduleState failed:', e.message);
313
- }
314
- }
315
-
316
- // Returns scheduling recommendation with sleep multiplier and action hints.
317
- function getScheduleRecommendation() {
318
- const enabled = String(process.env.OMLS_ENABLED || 'true').toLowerCase() !== 'false';
319
- if (!enabled) {
320
- return {
321
- enabled: false,
322
- idle_seconds: -1,
323
- intensity: 'normal',
324
- sleep_multiplier: 1,
325
- should_distill: false,
326
- should_reflect: false,
327
- should_deep_evolve: false,
328
- should_explore: false,
329
- };
330
- }
331
-
332
- const idleSeconds = getSystemIdleSeconds();
333
- const intensity = determineIntensity(idleSeconds);
334
-
335
- const state = readScheduleState();
336
- const now = Date.now();
337
-
338
- let sleepMultiplier = 1;
339
- let shouldDistill = false;
340
- let shouldReflect = false;
341
- let shouldDeepEvolve = false;
342
- let shouldExplore = false;
343
-
344
- if (intensity === 'aggressive') {
345
- sleepMultiplier = 0.5;
346
- shouldDistill = true;
347
- shouldReflect = true;
348
- shouldExplore = true;
349
- } else if (intensity === 'deep') {
350
- sleepMultiplier = 0.25;
351
- shouldDistill = true;
352
- shouldReflect = true;
353
- shouldDeepEvolve = true;
354
- shouldExplore = true;
355
- } else if (intensity === 'signal_only') {
356
- sleepMultiplier = 3;
357
- }
358
-
359
- state.last_check = new Date().toISOString();
360
- state.last_idle_seconds = idleSeconds;
361
- state.last_intensity = intensity;
362
- writeScheduleState(state);
363
-
364
- return {
365
- enabled: true,
366
- idle_seconds: idleSeconds,
367
- intensity: intensity,
368
- sleep_multiplier: sleepMultiplier,
369
- should_distill: shouldDistill,
370
- should_reflect: shouldReflect,
371
- should_deep_evolve: shouldDeepEvolve,
372
- should_explore: shouldExplore,
373
- };
374
- }
375
-
376
- module.exports = {
377
- getSystemIdleSeconds: getSystemIdleSeconds,
378
- determineIntensity: determineIntensity,
379
- getScheduleRecommendation: getScheduleRecommendation,
380
- readScheduleState: readScheduleState,
381
- writeScheduleState: writeScheduleState,
382
- IDLE_THRESHOLD_SECONDS: IDLE_THRESHOLD_SECONDS,
383
- DEEP_IDLE_THRESHOLD_SECONDS: DEEP_IDLE_THRESHOLD_SECONDS,
384
- // Exposed for inspection / testing; null means no override is active.
385
- _forcedIntensity: _forcedIntensity,
386
- // Test-only surface for the Linux multi-tier idle detection. Lets tests
387
- // inject a fake exec implementation so we can verify the fallback chain
388
- // (xprintidle -> gnome-mutter -> loginctl) and the cached-method fast path
389
- // without depending on a real X server / D-Bus / systemd on the test box.
390
- __test: {
391
- setExec: function (fn) { _execImpl = fn || _defaultExec; },
392
- setExecFile: function (fn) { _execFileImpl = fn || _defaultExecFile; },
393
- resetLinuxCache: function () { _cachedLinuxMethod = null; },
394
- getLinuxIdleSeconds: _getLinuxIdleSeconds,
395
- tryXprintidle: _tryXprintidle,
396
- tryGnomeMutter: _tryGnomeMutter,
397
- tryLoginctlIdleHint: _tryLoginctlIdleHint,
398
- getCachedMethod: function () { return _cachedLinuxMethod; },
399
- },
400
- };