@swishfoundry/qew 1.0.1 → 1.0.3
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.
- package/README.md +104 -0
- package/dist/commands/queue.d.ts +3 -0
- package/dist/commands/queue.d.ts.map +1 -0
- package/dist/commands/queue.js +78 -1
- package/dist/commands/queue.js.map +1 -0
- package/dist/commands/start.d.ts +3 -0
- package/dist/commands/start.d.ts.map +1 -0
- package/dist/commands/start.js +876 -1
- package/dist/commands/start.js.map +1 -0
- package/dist/commands/usage.d.ts +3 -0
- package/dist/commands/usage.d.ts.map +1 -0
- package/dist/commands/usage.js +65 -1
- package/dist/commands/usage.js.map +1 -0
- package/dist/core/claudeRunner.d.ts +45 -0
- package/dist/core/claudeRunner.d.ts.map +1 -0
- package/dist/core/claudeRunner.js +356 -1
- package/dist/core/claudeRunner.js.map +1 -0
- package/dist/core/claudeSessionManager.d.ts +51 -0
- package/dist/core/claudeSessionManager.d.ts.map +1 -0
- package/dist/core/claudeSessionManager.js +502 -1
- package/dist/core/claudeSessionManager.js.map +1 -0
- package/dist/core/gitService.d.ts +87 -0
- package/dist/core/gitService.d.ts.map +1 -0
- package/dist/core/gitService.js +334 -1
- package/dist/core/gitService.js.map +1 -0
- package/dist/core/outputParser.d.ts +36 -0
- package/dist/core/outputParser.d.ts.map +1 -0
- package/dist/core/outputParser.js +365 -1
- package/dist/core/outputParser.js.map +1 -0
- package/dist/core/queueManager.d.ts +35 -0
- package/dist/core/queueManager.d.ts.map +1 -0
- package/dist/core/queueManager.js +128 -1
- package/dist/core/queueManager.js.map +1 -0
- package/dist/core/sessionManager.d.ts +58 -0
- package/dist/core/sessionManager.d.ts.map +1 -0
- package/dist/core/sessionManager.js +1008 -1
- package/dist/core/sessionManager.js.map +1 -0
- package/dist/crypto/encryption.d.ts +12 -0
- package/dist/crypto/encryption.d.ts.map +1 -0
- package/dist/crypto/encryption.js +40 -1
- package/dist/crypto/encryption.js.map +1 -0
- package/dist/crypto/keypair.d.ts +13 -0
- package/dist/crypto/keypair.d.ts.map +1 -0
- package/dist/crypto/keypair.js +19 -1
- package/dist/crypto/keypair.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -1
- package/dist/index.js.map +1 -0
- package/dist/network/ipDetect.d.ts +9 -0
- package/dist/network/ipDetect.d.ts.map +1 -0
- package/dist/network/ipDetect.js +70 -1
- package/dist/network/ipDetect.js.map +1 -0
- package/dist/network/messageHandler.d.ts +197 -0
- package/dist/network/messageHandler.d.ts.map +1 -0
- package/dist/network/messageHandler.js +18 -1
- package/dist/network/messageHandler.js.map +1 -0
- package/dist/network/relayClient.d.ts +23 -0
- package/dist/network/relayClient.d.ts.map +1 -0
- package/dist/network/relayClient.js +117 -1
- package/dist/network/relayClient.js.map +1 -0
- package/dist/network/server.d.ts +89 -0
- package/dist/network/server.d.ts.map +1 -0
- package/dist/network/server.js +1144 -1
- package/dist/network/server.js.map +1 -0
- package/dist/services/versionConfig.d.ts +56 -0
- package/dist/services/versionConfig.d.ts.map +1 -0
- package/dist/services/versionConfig.js +153 -0
- package/dist/services/versionConfig.js.map +1 -0
- package/dist/types/claude.d.ts +57 -0
- package/dist/types/claude.d.ts.map +1 -0
- package/dist/types/claude.js +3 -1
- package/dist/types/claude.js.map +1 -0
- package/package.json +8 -4
|
@@ -1 +1,502 @@
|
|
|
1
|
-
function _0x5dabbc(_0x388c66,_0x5bb37c,_0x4b6471,_0x50d6e7){return _0x2b27(_0x4b6471-0x359,_0x50d6e7);}function _0x459bd0(_0x451f27,_0x5d798e,_0x3c7fcd,_0x345328){return _0x2b27(_0x451f27-0x221,_0x5d798e);}(function(_0x5c4b0c,_0x3790d6){const _0x2e1b68={_0x100540:0x247,_0x8a00a4:0x1eb,_0x2e7dff:0xd0,_0x2498be:0x7a,_0x636850:0x20,_0x5a2512:0xa1,_0x4ea2a6:0x218,_0x1a56a2:0xc7,_0x54d34e:0x2f,_0x7b874a:0x11e,_0x3be1e8:0x1bc,_0x1fd37b:0x224,_0x60de8:0x1e0,_0xc281b6:0x14d,_0xa59b22:0x190,_0x508bb6:0x225,_0x52b12c:0x160,_0x49c25b:0x6f,_0x4db393:0xc8,_0x474cb9:0x33},_0x1a0239={_0x3094ae:0x34b};function _0x4ff456(_0x4ecc16,_0x407b65,_0x5cb167,_0x595d53){return _0x2b27(_0x595d53- -0x216,_0x5cb167);}const _0x5e3fcf=_0x5c4b0c();function _0x307a02(_0x7f1be0,_0x3c038e,_0x5a7dd0,_0x5807fc){return _0x2b27(_0x7f1be0- -_0x1a0239._0x3094ae,_0x5a7dd0);}while(!![]){try{const _0x2f041a=-parseInt(_0x307a02(-0x1b6,-0x1a6,-_0x2e1b68._0x100540,-0x1b1))/(0x1ab8*0x1+-0x80e*-0x1+-0x22c5)*(parseInt(_0x307a02(-0x210,-0x281,-_0x2e1b68._0x8a00a4,-0x1a6))/(-0x2487+0xb98+0x18f1*0x1))+parseInt(_0x4ff456(-0xe7,-0x7b,-0x65,-_0x2e1b68._0x2e7dff))/(-0xee*0x13+-0x3aa+-0x25f*-0x9)*(parseInt(_0x4ff456(-_0x2e1b68._0x2498be,-_0x2e1b68._0x636850,-0x33,-_0x2e1b68._0x5a2512))/(0x19ab+-0x2*-0x43a+-0x221b))+parseInt(_0x307a02(-_0x2e1b68._0x4ea2a6,-0x1f7,-0x29f,-0x18f))/(0x1*0x8ae+0x79a*-0x2+0x43*0x19)*(parseInt(_0x4ff456(-0xf8,-0xc0,-0x148,-_0x2e1b68._0x1a56a2))/(-0x1db8+-0xc*-0x231+0x372))+parseInt(_0x4ff456(-0x1c,_0x2e1b68._0x54d34e,-0x6,-0x42))/(0x372+-0x1c3a+0x18cf)+parseInt(_0x307a02(-_0x2e1b68._0x7b874a,-0x14a,-0x148,-_0x2e1b68._0x3be1e8))/(0xa57+-0x133a+0x8eb)+parseInt(_0x307a02(-0x1fb,-_0x2e1b68._0x1fd37b,-_0x2e1b68._0x60de8,-0x27c))/(0x2168+0x12ba+-0x3419)*(-parseInt(_0x307a02(-0xfb,-0x13c,-0xf7,-_0x2e1b68._0xc281b6))/(0x278+-0x5fd*0x1+-0x38f*-0x1))+parseInt(_0x307a02(-_0x2e1b68._0xa59b22,-_0x2e1b68._0x508bb6,-0x103,-_0x2e1b68._0x52b12c))/(0x3c0*-0x3+-0x5b9*0x1+0x1104)*(-parseInt(_0x4ff456(-_0x2e1b68._0x49c25b,-_0x2e1b68._0x4db393,-_0x2e1b68._0x474cb9,-0x6d))/(-0x4dd+-0x1f6a+-0x11*-0x223));if(_0x2f041a===_0x3790d6)break;else _0x5e3fcf['push'](_0x5e3fcf['shift']());}catch(_0x62f882){_0x5e3fcf['push'](_0x5e3fcf['shift']());}}}(_0x443f,-0x43e7f+-0x2*-0x5270a+-0xb841));import{EventEmitter}from'events';import*as _0x5549e3 from'fs';function _0x2b27(_0x281da7,_0x244809){_0x281da7=_0x281da7-(0x2181+-0x159d+-0xac0);const _0x397e17=_0x443f();let _0x39cc24=_0x397e17[_0x281da7];if(_0x2b27['ysMnzT']===undefined){var _0x91feba=function(_0x4c7d3c){const _0x3d3f79='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x475fd9='',_0xc621ad='';for(let _0x463147=-0x11ab+0x3*0xa0d+0x63e*-0x2,_0x1b0ff6,_0x422ac9,_0x4ed5e7=0x1*0x104+0xf59+0x105d*-0x1;_0x422ac9=_0x4c7d3c['charAt'](_0x4ed5e7++);~_0x422ac9&&(_0x1b0ff6=_0x463147%(0x425*-0x8+-0x1357+0x3483)?_0x1b0ff6*(-0x3*0xa02+-0x12f8+0x313e)+_0x422ac9:_0x422ac9,_0x463147++%(-0x1ae9+0x138b*0x1+0x762))?_0x475fd9+=String['fromCharCode'](-0x1e05+0x5af+-0x1955*-0x1&_0x1b0ff6>>(-(0x63d+-0x1*-0x2038+0xc1*-0x33)*_0x463147&0x3d0+-0x1*0xd8a+0x9c0)):0x1dc6*-0x1+-0xbda+0x29a0){_0x422ac9=_0x3d3f79['indexOf'](_0x422ac9);}for(let _0x3fb95f=0x1666+-0x23ad+0xd47,_0x3902f2=_0x475fd9['length'];_0x3fb95f<_0x3902f2;_0x3fb95f++){_0xc621ad+='%'+('00'+_0x475fd9['charCodeAt'](_0x3fb95f)['toString'](0x1*-0x23f7+-0x2*-0x10f3+0x221))['slice'](-(0x1bc0+-0xf38+-0xe*0xe5));}return decodeURIComponent(_0xc621ad);};_0x2b27['clPfnL']=_0x91feba,_0x2b27['lwEyYA']={},_0x2b27['ysMnzT']=!![];}const _0xec9f33=_0x397e17[-0x427+-0xa*0x64+0x80f*0x1],_0x111e9=_0x281da7+_0xec9f33,_0x58726f=_0x2b27['lwEyYA'][_0x111e9];return!_0x58726f?(_0x39cc24=_0x2b27['clPfnL'](_0x39cc24),_0x2b27['lwEyYA'][_0x111e9]=_0x39cc24):_0x39cc24=_0x58726f,_0x39cc24;}import*as _0x29807f from'path';const SESSION_DATA_DIR=_0x29807f[_0x459bd0(0x3cc,0x42f,0x438,0x3e0)](process[_0x459bd0(0x445,0x467,0x45c,0x3d9)][_0x459bd0(0x3f0,0x38f,0x450,0x46e)]||'',_0x459bd0(0x3f7,0x3dc,0x372,0x3e4),_0x5dabbc(0x577,0x58b,0x509,0x549)),SESSION_DATA_FILE=_0x29807f[_0x459bd0(0x3cc,0x400,0x3a3,0x3a4)](SESSION_DATA_DIR,_0x5dabbc(0x524,0x452,0x4c6,0x425)+_0x5dabbc(0x43f,0x4b3,0x48f,0x4aa)),MAX_CONTEXT_CHARS=0x2*0x6f+-0x1026+0x26b8;export class ClaudeSessionManager extends EventEmitter{[_0x5dabbc(0x592,0x4e8,0x509,0x527)]=new Map();[_0x459bd0(0x41c,0x493,0x473,0x473)+_0x459bd0(0x414,0x3b4,0x3b5,0x477)]=new Map();[_0x5dabbc(0x5e8,0x4d1,0x54b,0x4e5)+'ionId']=null;[_0x5dabbc(0x57d,0x596,0x5a2,0x537)+_0x459bd0(0x372,0x3d6,0x405,0x33d)+'xt']=new Set();constructor(){const _0x2c0e26={_0x34348d:0x40,_0x1089ba:0x67,_0x548c59:0x52e,_0x5354a4:0x58a,_0x9df8d3:0x161,_0x4cd812:0x185,_0x34d070:0x69,_0x55d845:0xef,_0x221aed:0x49e,_0x5924aa:0xfd,_0x4ffa8d:0x192,_0x2c0fc4:0x18d,_0x40bd94:0x476,_0x5aa2a4:0x4e7,_0x5d03d4:0x19c,_0x5407c7:0x147,_0x2108d1:0x1e6,_0x9d81d1:0x17b,_0x407b6b:0xec,_0x40c78e:0x50,_0x34d0a7:0xb8,_0x14b29f:0x11f,_0x2d0273:0x166,_0x1601cd:0x166,_0x44c26d:0x120,_0x222f35:0x46e,_0x24278f:0x446},_0x47b837={_0x4e5e47:0xc3,_0x4ee7fa:0x41,_0x8aba61:0x650},_0x397c6e={_0x1b3a92:0x1f4},_0x473386={};function _0x34404b(_0x57d19b,_0x5324e5,_0x2f5b8c,_0x4c4c53){return _0x5dabbc(_0x57d19b-_0x397c6e._0x1b3a92,_0x5324e5-0x134,_0x2f5b8c- -0x6a,_0x57d19b);}_0x473386[_0xc137fe(-_0x2c0e26._0x34348d,-0xc1,-_0x2c0e26._0x1089ba,-0xdd)]=function(_0x54dcc8,_0x22ccb9){return _0x54dcc8===_0x22ccb9;},_0x473386[_0x34404b(0x59d,0x52a,_0x2c0e26._0x548c59,_0x2c0e26._0x5354a4)]=function(_0x310612,_0x2aea81){return _0x310612===_0x2aea81;},_0x473386[_0xc137fe(-_0x2c0e26._0x9df8d3,-0xa6,-_0x2c0e26._0x4cd812,-0x11f)]=_0xc137fe(-_0x2c0e26._0x34d070,-0x131,-_0x2c0e26._0x55d845,-0x107);const _0x260715=_0x473386;super(),this[_0x34404b(0x4fd,0x53f,_0x2c0e26._0x221aed,0x496)+'Dir']();function _0xc137fe(_0x5d0afa,_0x4e0cf9,_0x4a9d0f,_0x1f29cc){return _0x5dabbc(_0x5d0afa-_0x47b837._0x4e5e47,_0x4e0cf9-_0x47b837._0x4ee7fa,_0x1f29cc- -_0x47b837._0x8aba61,_0x4a9d0f);}this[_0xc137fe(-0x102,-_0x2c0e26._0x5924aa,-_0x2c0e26._0x4ffa8d,-_0x2c0e26._0x2c0fc4)+'ns']();if(_0x260715[_0x34404b(_0x2c0e26._0x40bd94,0x56c,0x509,_0x2c0e26._0x5aa2a4)](this[_0xc137fe(-_0x2c0e26._0x5d03d4,-0x1d3,-0x12c,-_0x2c0e26._0x5407c7)][_0xc137fe(-0x1cd,-_0x2c0e26._0x2108d1,-0x1c4,-_0x2c0e26._0x9d81d1)],0x1e3b*0x1+0x1d7d+-0x3bb8)){if(_0x260715[_0xc137fe(-_0x2c0e26._0x407b6b,-_0x2c0e26._0x40c78e,-0x7d,-_0x2c0e26._0x34d0a7)](_0x260715[_0xc137fe(-0x1a1,-0xf7,-0x126,-_0x2c0e26._0x14b29f)],_0x260715[_0xc137fe(-0x18e,-0x163,-_0x2c0e26._0x2d0273,-_0x2c0e26._0x14b29f)]))this['createSess'+_0xc137fe(-_0x2c0e26._0x1601cd,-0x6d,-0xd7,-0xe2)](_0xc137fe(-_0x2c0e26._0x44c26d,-0x17e,-0x1ae,-0x155),process[_0x34404b(0x3d7,_0x2c0e26._0x222f35,_0x2c0e26._0x24278f,0x4d5)]());else return null;}}[_0x459bd0(0x3d0,0x3f3,0x41f,0x3c9)+'Dir'](){const _0x4ad4f3={_0x7a3136:0x210,_0x39fb51:0x171,_0x4d49a6:0x159,_0x447e4a:0x171,_0x50d875:0xa1},_0x57fa35={_0x2e486f:0x169,_0x5e420c:0x1f3};function _0x40a98b(_0x3f2772,_0x1a3af3,_0x5e7bb7,_0x2419bb){return _0x5dabbc(_0x3f2772-_0x57fa35._0x2e486f,_0x1a3af3-_0x57fa35._0x5e420c,_0x1a3af3- -0x384,_0x3f2772);}function _0x44961c(_0x423dd4,_0x4d9f1a,_0x2d314c,_0x59fb2b){return _0x459bd0(_0x2d314c- -0x364,_0x59fb2b,_0x2d314c-0x172,_0x59fb2b-0x5);}if(!_0x5549e3[_0x40a98b(0x1f3,_0x4ad4f3._0x7a3136,0x191,0x21c)](SESSION_DATA_DIR)){const _0x45f7e9={};_0x45f7e9[_0x40a98b(_0x4ad4f3._0x39fb51,0x130,0x16f,_0x4ad4f3._0x4d49a6)]=!![],_0x5549e3[_0x44961c(_0x4ad4f3._0x447e4a,_0x4ad4f3._0x50d875,0xf9,0x144)](SESSION_DATA_DIR,_0x45f7e9);}}[_0x459bd0(0x38b,0x3b7,0x320,0x42d)+'ns'](){const _0x3ff797={_0x478689:0xce,_0x14e1bb:0xa2,_0x4b311f:0x4b,_0x14d839:0xb2,_0x53d8af:0x30,_0x40f7ba:0x1af,_0x5ce3ff:0x2e,_0x15a674:0x91,_0x288c27:0xc4,_0x50cf66:0x121,_0x1fca3d:0x189,_0x1d7f45:0x187,_0x4d09e6:0x14c,_0x5a9868:0xe1,_0x4c95f2:0xf8,_0x4e3966:0x1c7,_0x3891e:0x237,_0x184e43:0x19a,_0x27fc21:0x179,_0x1a43ca:0xc1,_0x5c03bb:0x55,_0x1207a5:0x8f,_0x51b497:0xe2,_0x262481:0x181,_0x45cd28:0xd0,_0x5ea039:0xe7,_0x41987b:0xcb,_0x38cea1:0x13d,_0x188aea:0x127,_0xdb9924:0x182,_0x456c97:0xdc,_0x34259e:0x1a8,_0x21e65d:0x9b,_0x379c8e:0x191,_0x3a0aa3:0x9,_0x3a6b05:0x12e,_0x5ce1df:0x100,_0x108fe0:0x163,_0x4ffd06:0xb4,_0x3ec5df:0x108,_0x162c75:0xf7,_0x470eb2:0x74,_0x4caf3a:0xd4,_0x34ac8e:0x97,_0x53bc2e:0x6e,_0x5db7ad:0xee,_0x48a957:0x198,_0x287619:0x135,_0xb91c23:0x183,_0x5c0e0a:0x1ce,_0x519a0f:0x213,_0x184b14:0xb9,_0x35a504:0x18f,_0x18155c:0x1e4,_0x3c189b:0x231,_0x3e4425:0x14b,_0x178680:0xd6,_0xb15e08:0xf3,_0x150500:0x1e,_0x33faff:0xcc,_0x2c2df9:0x120,_0x122487:0x140,_0x129a13:0xe1,_0x1d76d5:0x63,_0x3b7f4d:0x7c,_0x1c05cf:0x175,_0x4a3db4:0x7b,_0x530f6d:0x15d,_0x10f5a6:0xe6,_0x5510c2:0xd2,_0x415181:0x197,_0x20bc38:0x93,_0x3e7d5e:0x9d,_0x5bf121:0xe2,_0x1468bf:0x1b9,_0xe9dbd5:0xfb,_0x155b3a:0x155,_0x2d4184:0x1ac,_0x3c2f03:0x17a,_0x24b00b:0x13b,_0x38ccbb:0x1bb,_0x2b692d:0x19b,_0x3596f6:0x136,_0x40b5e6:0x73,_0x15ead0:0x7d,_0x57a22b:0x8a,_0x3fd65c:0x79,_0x33634f:0x177,_0x17f98a:0x144,_0x582346:0x112,_0x3293a0:0x163,_0x1bae55:0xae,_0x5a94df:0x8a,_0x16db2e:0xd8,_0x214c38:0x107,_0x3bec13:0xe0,_0x595324:0x14f,_0x1bac00:0x1ef,_0x1de805:0x19e,_0xb0a85f:0x28b,_0x2ce3e5:0x220,_0xf17729:0x1eb},_0x40f329={_0x3b1351:0x3c9},_0x2b344e={_0x29126b:0x31d,_0x18d0ac:0x64,_0x55b5e7:0x147},_0xd9d9ce={};_0xd9d9ce[_0x4a8e09(_0x3ff797._0x478689,0x118,0xbe,0xfe)]=_0x4a8e09(_0x3ff797._0x14e1bb,_0x3ff797._0x4b311f,_0x3ff797._0x14d839,_0x3ff797._0x53d8af),_0xd9d9ce[_0x10d2fd(0x157,0x180,_0x3ff797._0x40f7ba,0xe6)]='MxeuS',_0xd9d9ce[_0x4a8e09(_0x3ff797._0x5ce3ff,_0x3ff797._0x15a674,0x120,_0x3ff797._0x288c27)]=_0x4a8e09(0x8c,_0x3ff797._0x50cf66,0xca,0x19f),_0xd9d9ce[_0x4a8e09(_0x3ff797._0x1fca3d,0x129,0x12f,0x91)]=function(_0x51d314,_0xad734a){return _0x51d314>_0xad734a;},_0xd9d9ce['CfxSX']=function(_0x549333,_0x42611b){return _0x549333===_0x42611b;};function _0x4a8e09(_0x4d4054,_0x88e953,_0x586a6b,_0x57eb8d){return _0x459bd0(_0x88e953- -_0x2b344e._0x29126b,_0x586a6b,_0x586a6b-_0x2b344e._0x18d0ac,_0x57eb8d-_0x2b344e._0x55b5e7);}function _0x10d2fd(_0xc415f6,_0x5525ae,_0x2c65e7,_0x239fae){return _0x5dabbc(_0xc415f6-0x108,_0x5525ae-0xaf,_0xc415f6- -_0x40f329._0x3b1351,_0x2c65e7);}_0xd9d9ce[_0x10d2fd(0x10a,0x177,_0x3ff797._0x1d7f45,0xd5)]=_0x10d2fd(_0x3ff797._0x4d09e6,_0x3ff797._0x5a9868,_0x3ff797._0x4c95f2,0x1c2),_0xd9d9ce[_0x10d2fd(_0x3ff797._0x4e3966,_0x3ff797._0x3891e,_0x3ff797._0x184e43,_0x3ff797._0x27fc21)]=function(_0x6ce2a9,_0x5d19f6){return _0x6ce2a9===_0x5d19f6;},_0xd9d9ce[_0x4a8e09(0xcb,0x6c,0x51,0xd5)]=_0x10d2fd(_0x3ff797._0x1a43ca,_0x3ff797._0x5c03bb,0x4d,0xac),_0xd9d9ce['MlfTt']='BJKWR',_0xd9d9ce[_0x4a8e09(_0x3ff797._0x1207a5,0x12f,0xa3,0xd6)]=_0x10d2fd(_0x3ff797._0x51b497,_0x3ff797._0x262481,0x14c,0x182)+'load\x20sessi'+_0x10d2fd(0x159,_0x3ff797._0x45cd28,0x1e8,0x1ef);const _0x2e8ea0=_0xd9d9ce;try{if(_0x5549e3[_0x4a8e09(_0x3ff797._0x1d7f45,0x13f,_0x3ff797._0x5ea039,0x10d)](SESSION_DATA_FILE)){if(_0x2e8ea0['JSBnH']!==_0x2e8ea0[_0x4a8e09(0x4d,_0x3ff797._0x41987b,_0x3ff797._0x38cea1,0x5a)]){const _0x4c6ec6=_0x5200da[_0x3826d3],_0x5d5342={..._0x348be0};_0x5d5342['wasStopped']=_0x4c6ec6[_0x10d2fd(_0x3ff797._0x188aea,_0x3ff797._0xdb9924,_0x3ff797._0x456c97,_0x3ff797._0x34259e)]||_0x26e7e3[_0x4a8e09(0x80,_0x3ff797._0x21e65d,0xf6,0x81)],_0x5099c0[_0x3f0ce2]=_0x5d5342;}else{const _0x243e95=_0x5549e3[_0x10d2fd(0x151,_0x3ff797._0x379c8e,0x192,0x1a7)+'nc'](SESSION_DATA_FILE,_0x2e8ea0[_0x4a8e09(_0x3ff797._0x3a0aa3,0x91,_0x3ff797._0x3a6b05,0xa4)]),_0x35c7f4=JSON[_0x4a8e09(_0x3ff797._0x5ce1df,0xeb,_0x3ff797._0x108fe0,0x7c)](_0x243e95);for(const _0x565906 of _0x35c7f4[_0x4a8e09(0x37,_0x3ff797._0x4ffd06,_0x3ff797._0x3ec5df,_0x3ff797._0x162c75)]){this[_0x4a8e09(0x40,0xb4,0xe2,0xd1)][_0x4a8e09(0x39,_0x3ff797._0x470eb2,_0x3ff797._0x4caf3a,_0x3ff797._0x34ac8e)](_0x565906['id'],_0x565906),this[_0x4a8e09(0x13,_0x3ff797._0x53bc2e,0x5,_0x3ff797._0x5db7ad)+_0x4a8e09(_0x3ff797._0x48a957,0x11a,0x85,_0x3ff797._0x287619)](_0x565906['id']);const _0x37a009=this[_0x4a8e09(0xe1,0xff,0x115,0x125)+_0x10d2fd(_0x3ff797._0xb91c23,0x212,_0x3ff797._0x5c0e0a,_0x3ff797._0x519a0f)][_0x4a8e09(_0x3ff797._0x184b14,0x9d,_0x3ff797._0x3a6b05,0x96)](_0x565906['id'])||[];if(_0x2e8ea0[_0x4a8e09(0xa1,0x129,0x189,_0x3ff797._0x35a504)](_0x37a009[_0x10d2fd(_0x3ff797._0x18155c,0x1ab,0x215,_0x3ff797._0x3c189b)],-0xb9e+0x167e*0x1+-0x30*0x3a)){if(_0x2e8ea0[_0x4a8e09(_0x3ff797._0x3e4425,0x150,_0x3ff797._0x178680,_0x3ff797._0xb15e08)](_0x4a8e09(_0x3ff797._0x150500,0xc0,0xf5,0x11b),_0x2e8ea0[_0x10d2fd(0x10a,_0x3ff797._0x33faff,_0x3ff797._0x2c2df9,0x96)]))this[_0x4a8e09(0x185,0x14d,_0x3ff797._0x122487,0xd3)+_0x10d2fd(_0x3ff797._0x129a13,0x156,0x16d,_0x3ff797._0x1d76d5)+'xt'][_0x4a8e09(-0x14,_0x3ff797._0x3b7f4d,0xd2,_0x3ff797._0x45cd28)](_0x565906['id']);else return;}}if(_0x35c7f4['activeSess'+'ionId']&&this['sessions'][_0x4a8e09(_0x3ff797._0x1c05cf,_0x3ff797._0x3ec5df,0x90,_0x3ff797._0x4a3db4)](_0x35c7f4['activeSess'+_0x10d2fd(0xe6,0x17d,_0x3ff797._0x530f6d,0x5d)])){this['activeSess'+_0x10d2fd(_0x3ff797._0x10f5a6,_0x3ff797._0x5510c2,0x161,0x180)]=_0x35c7f4[_0x4a8e09(0x187,0xf6,_0x3ff797._0x415181,0x13a)+'ionId'];const _0x33f165=this[_0x10d2fd(0x140,0x12c,0x173,0x184)][_0x4a8e09(_0x3ff797._0x20bc38,_0x3ff797._0x3e7d5e,0x12c,_0x3ff797._0x5bf121)](this[_0x10d2fd(0x182,0x1fd,_0x3ff797._0x1468bf,0x1d5)+_0x4a8e09(0x1,0x5a,0xaf,_0x3ff797._0xe9dbd5)]);_0x33f165&&(_0x33f165[_0x10d2fd(0x18a,_0x3ff797._0x155b3a,_0x3ff797._0x2d4184,0x14b)]=!![]);}}}}catch(_0x39267c){if(_0x2e8ea0[_0x4a8e09(_0x3ff797._0x3c2f03,_0x3ff797._0x24b00b,_0x3ff797._0x38ccbb,_0x3ff797._0x2b692d)](_0x2e8ea0[_0x10d2fd(_0x3ff797._0x4c95f2,0x6b,0xa2,0x16c)],_0x2e8ea0[_0x4a8e09(_0x3ff797._0x3596f6,0xbe,_0x3ff797._0x40b5e6,0x11e)])){const _0x1133be={'id':_0x10d2fd(0xd4,0x5e,0xe0,_0x3ff797._0x15ead0)+_0x3b369c[_0x4a8e09(0xe0,_0x3ff797._0x57a22b,0x60,_0x3ff797._0x3fd65c)]()+'-'+_0xf188ff[_0x4a8e09(_0x3ff797._0x33634f,_0x3ff797._0x17f98a,0xab,0x16c)]()[_0x4a8e09(0xee,0x133,0x147,0x156)](0xee+0x5*0x6ec+0x1*-0x2366)[_0x10d2fd(0xcd,0x85,0xd7,0x14d)](-0x1*-0x338+-0x42*0x57+0xa4*0x1e,-0x2000+0x189e+0x768),'type':_0x2e8ea0[_0x4a8e09(0x157,0x118,_0x3ff797._0x582346,_0x3ff797._0x3293a0)],'content':_0x3f3979,'timestamp':_0x41663d[_0x4a8e09(_0x3ff797._0x1bae55,_0x3ff797._0x5a94df,0x6b,_0x3ff797._0x16db2e)]()};return this[_0x10d2fd(_0x3ff797._0x214c38,_0x3ff797._0x3bec13,0x76,_0x3ff797._0x595324)](_0x20d975,_0x1133be),_0x1133be;}else console[_0x10d2fd(_0x3ff797._0x1bac00,_0x3ff797._0x1de805,_0x3ff797._0xb0a85f,0x23b)](_0x2e8ea0[_0x10d2fd(0x1bb,_0x3ff797._0x2ce3e5,_0x3ff797._0xf17729,0x1a2)],_0x39267c);}}[_0x459bd0(0x38b,0x30e,0x36f,0x36c)+_0x5dabbc(0x571,0x561,0x56f,0x4cf)](_0x4c486d){const _0x487a52={_0x2492f6:0x14a,_0x3bfdad:0x41,_0x5ad89c:0x58,_0x471d63:0x52,_0x19331a:0xaf,_0x59d4b8:0xc1,_0x2bc3f0:0x123,_0x3d8340:0xa6,_0x24529b:0x78,_0xc9dda:0xda,_0x572341:0x51,_0x14cbff:0x17f,_0x533741:0x19a,_0x5251cf:0xa4,_0x5a0ce0:0x4c,_0x61b7ff:0x1e,_0x224b28:0xf9,_0x216231:0x57,_0x565ee4:0xbe,_0x4c9acb:0x120,_0x1a4619:0x160,_0x5f5ce3:0x256,_0x7cb937:0x23a,_0x23bc49:0x126,_0x55af73:0xa8,_0x2d55ee:0x7a,_0x2afdba:0x10,_0x225449:0x1d4,_0x513997:0x31,_0x36be5e:0xa7,_0x3af629:0xf,_0x370abd:0x8b,_0x42a343:0xbc,_0x3380b8:0x9e,_0x5c9026:0xa5,_0x2f4e0f:0x62,_0x177386:0x81,_0x56c1dd:0x52,_0x5f74eb:0x131,_0x6a7bb9:0x14b,_0x3a01d6:0x1a3,_0x4f93f6:0x236,_0x3e4499:0x88,_0x6ed1cb:0x6,_0x531c31:0x8f,_0x26ce33:0x1c,_0x4f4cfc:0x69,_0x1556a9:0x42,_0x40cd7b:0x50,_0x4b56db:0xe5,_0x453c98:0xb7,_0x39afd6:0xee,_0x5cd2bb:0x9,_0x4e4349:0xca,_0x363cdd:0x1fe,_0x58da97:0x18c,_0x144a74:0x10b,_0x1b6eb9:0x67,_0x2f2185:0x73,_0x4184fd:0x45,_0x4f5535:0x6d,_0xa281ed:0x3,_0x5471ea:0x19,_0x1829e4:0xc1,_0x3fffcc:0x8d,_0x22cfc1:0xca,_0x42bc9b:0x92,_0x2650a3:0xa2,_0x465ae4:0x55,_0x40762d:0xc8,_0x2207dd:0x7f,_0x5c46dd:0xa0,_0x5bd12e:0xe2,_0x2c5864:0x51,_0x6b76d5:0x207,_0x32f4d7:0x232,_0x3a14a7:0x1b7,_0x4f61c3:0x196,_0x135aaf:0x55,_0x97799a:0x1d9,_0x199fc1:0x290,_0x2140d0:0x257,_0x45b8ca:0x234,_0x1932ce:0x251,_0x38bf25:0xe2,_0x4044d7:0x3f,_0x7cc82b:0x51,_0x365a2f:0x26b,_0xf7bf1d:0x238,_0x47f072:0x277,_0x25a7f4:0x2a5,_0x3dd61a:0x43,_0x50932d:0xe9,_0x16a4cf:0xe,_0x41225f:0x4d,_0x19ba5a:0x1a1,_0x4bf720:0x16c,_0x2184a2:0x267,_0x3db858:0x130,_0x171cfe:0xc2,_0x9976d8:0x38,_0x48f007:0x6f,_0x203f5d:0x10,_0x55003c:0xf,_0x5f4f3d:0x25e,_0x3262ad:0x214,_0x5d84da:0x235,_0x4e4861:0x23d,_0x1486d5:0x23e,_0x5a1d52:0x1da,_0x95130a:0x19b,_0x1c187:0x13a,_0x2a491c:0x91,_0x363ca6:0x83,_0x310ae7:0x231,_0x441c87:0x24e,_0x5ae371:0x1c1,_0x472864:0x108,_0x56285c:0x158,_0x2b5aff:0xdf,_0x1a8609:0x1d8,_0x3bf969:0x21d,_0x2944bc:0x169,_0x280710:0x1f1,_0x39148d:0x13d,_0x5eb5d0:0x5a,_0x4e24b6:0xfc,_0x46571b:0x5d,_0x5f5df1:0x18d,_0x1c0b5f:0x233,_0x4f66ca:0x147,_0x328316:0x1c5,_0x2049d4:0x1b3,_0x430914:0x205,_0x1cbcab:0x24d},_0x57b479={_0x1cbc6e:0x19a,_0xddc81:0x726},_0x88c1de={_0xc28ce9:0x471,_0x361c9c:0xba},_0x5a2622={};_0x5a2622[_0x5d4dd3(-0x1ab,-0x1ae,-0x18c,-_0x487a52._0x2492f6)]=_0x44b1ae(-_0x487a52._0x3bfdad,-_0x487a52._0x5ad89c,-_0x487a52._0x471d63,-_0x487a52._0x19331a),_0x5a2622[_0x44b1ae(-0x12c,-_0x487a52._0x59d4b8,-_0x487a52._0x2bc3f0,-_0x487a52._0x3d8340)]=_0x44b1ae(-_0x487a52._0x24529b,-0x89,-_0x487a52._0xc9dda,-_0x487a52._0x572341)+'ionIdUpdat'+'ed',_0x5a2622[_0x5d4dd3(-_0x487a52._0x14cbff,-0x13e,-_0x487a52._0x533741,-0x239)]=_0x44b1ae(-_0x487a52._0x5251cf,_0x487a52._0x5a0ce0,_0x487a52._0x5a0ce0,-_0x487a52._0x61b7ff)+'ated';function _0x44b1ae(_0x228e9b,_0x5c7120,_0x172278,_0x449da2){return _0x459bd0(_0x449da2- -_0x88c1de._0xc28ce9,_0x172278,_0x172278-_0x88c1de._0x361c9c,_0x449da2-0xe7);}_0x5a2622['RyAMd']=function(_0x59d514,_0x3539a2){return _0x59d514!==_0x3539a2;},_0x5a2622[_0x44b1ae(-0xa,-0x57,-_0x487a52._0x224b28,-_0x487a52._0x216231)]=_0x44b1ae(-0xe0,-0xfd,-0x84,-0xb6),_0x5a2622[_0x5d4dd3(-_0x487a52._0x14cbff,-0x190,-0x1cb,-0x1f9)]=_0x44b1ae(-0x12b,-_0x487a52._0x565ee4,-0x127,-_0x487a52._0x4c9acb);function _0x5d4dd3(_0x2b771a,_0x29ed6c,_0x5c4523,_0x19a0e9){return _0x5dabbc(_0x2b771a-_0x57b479._0x1cbc6e,_0x29ed6c-0xe7,_0x5c4523- -_0x57b479._0xddc81,_0x19a0e9);}_0x5a2622['ryxfI']=_0x44b1ae(-_0x487a52._0x1a4619,-0x13f,-0x168,-0xc9),_0x5a2622['OyJxU']=_0x5d4dd3(-_0x487a52._0x5f5ce3,-0x244,-_0x487a52._0x7cb937,-0x274),_0x5a2622[_0x44b1ae(-_0x487a52._0x23bc49,-_0x487a52._0x55af73,-_0x487a52._0x2d55ee,-0x9a)]='utf-8',_0x5a2622[_0x44b1ae(0x1e,-_0x487a52._0x2afdba,-0x50,-0x26)]=function(_0x4730f3,_0x54c02d){return _0x4730f3===_0x54c02d;};const _0x3171c3=_0x5a2622;try{if(_0x3171c3['RyAMd'](_0x3171c3[_0x5d4dd3(-0x171,-0x22a,-_0x487a52._0x225449,-0x1fa)],_0x3171c3[_0x44b1ae(-_0x487a52._0x513997,-_0x487a52._0x36be5e,_0x487a52._0x3af629,-0x4e)])){const _0x4c2334=_0x29807f[_0x44b1ae(-_0x487a52._0x370abd,-_0x487a52._0x42a343,-_0x487a52._0x3380b8,-_0x487a52._0x5c9026)](SESSION_DATA_DIR,_0x4c486d+(_0x44b1ae(0xb,-_0x487a52._0x2f4e0f,-_0x487a52._0x177386,-0x32)+'json'));if(_0x5549e3[_0x44b1ae(-0xb6,-0x14,-_0x487a52._0x56c1dd,-0x15)](_0x4c2334)){if(_0x3171c3[_0x44b1ae(-_0x487a52._0x5f74eb,-0xa6,-0x17,-0xa4)](_0x3171c3[_0x5d4dd3(-_0x487a52._0x6a7bb9,-_0x487a52._0x3a01d6,-0x1ad,-_0x487a52._0x4f93f6)],_0x3171c3[_0x44b1ae(-0xbd,-_0x487a52._0x3e4499,-_0x487a52._0x55af73,-0x79)])){const _0x4f931e=_0x5549e3[_0x44b1ae(-0x2f,-_0x487a52._0x6ed1cb,-_0x487a52._0x5ad89c,-_0x487a52._0x531c31)+'nc'](_0x4c2334,_0x3171c3['KrUjL']),_0x23ade0=JSON[_0x44b1ae(-0x54,_0x487a52._0x26ce33,-0x1f,-_0x487a52._0x4f4cfc)](_0x4f931e);this[_0x44b1ae(-0xe6,-_0x487a52._0x1556a9,-0xa0,-0x55)+'sages']['set'](_0x4c486d,_0x23ade0);}else{const _0xabc7e3=this[_0x5d4dd3(-0x258,-0x1c7,-0x21d,-0x1d8)][_0x44b1ae(-_0x487a52._0x40cd7b,-_0x487a52._0x4b56db,-0xd6,-_0x487a52._0x453c98)](_0x3e8fa3);if(!_0xabc7e3)return;const _0x505410={'id':_0x44b1ae(-_0x487a52._0x39afd6,-0x11f,-_0x487a52._0x5cd2bb,-0x9b)+_0x4c8b23[_0x44b1ae(-0x117,-0xbb,-0x133,-_0x487a52._0x4e4349)](),'type':_0x3171c3[_0x5d4dd3(-0x1eb,-_0x487a52._0x363cdd,-_0x487a52._0x58da97,-0x1c8)],'content':_0x44b1ae(-_0x487a52._0x144a74,-_0x487a52._0x1b6eb9,-0x100,-0x106)+'on\x20Compact'+_0x44b1ae(_0x487a52._0x2f2185,-_0x487a52._0x4184fd,_0x487a52._0x4f5535,-_0x487a52._0xa281ed)+_0x582689+(_0x44b1ae(-_0x487a52._0x5471ea,-_0x487a52._0x1829e4,-0x1f,-0xa8)+'n)'),'timestamp':_0x30e8b7[_0x44b1ae(-0xd6,-0x15d,-_0x487a52._0x3fffcc,-_0x487a52._0x22cfc1)]()};this[_0x44b1ae(-_0x487a52._0x42bc9b,0x1c,-_0x487a52._0x2650a3,-_0x487a52._0x465ae4)+_0x44b1ae(-_0x487a52._0x40762d,-_0x487a52._0x2207dd,-_0x487a52._0x5c46dd,-0x5d)][_0x5d4dd3(-0x1ca,-0x1cc,-0x25d,-0x235)](_0x5daae3,[_0x505410]),_0xabc7e3[_0x44b1ae(-0x94,-_0x487a52._0x5bd12e,0x34,-_0x487a52._0x2c5864)+'ionId']=null,_0x59c404&&(_0xabc7e3[_0x5d4dd3(-0x1fc,-_0x487a52._0x6b76d5,-0x25a,-0x1bf)+'ntextSumma'+'ry']=_0x5889a9),this[_0x44b1ae(-0x7f,-0x62,-0x57,-0x7)+'edingConte'+'xt'][_0x5d4dd3(-0x28d,-_0x487a52._0x32f4d7,-0x29e,-0x298)](_0xcd000e),this['saveSessio'+_0x5d4dd3(-0x176,-0x195,-_0x487a52._0x3a14a7,-_0x487a52._0x4f61c3)](_0x1959de),this['saveSessio'+'ns']();}}else this[_0x44b1ae(-0x87,-0x4d,-_0x487a52._0x5251cf,-_0x487a52._0x135aaf)+_0x5d4dd3(-_0x487a52._0x97799a,-_0x487a52._0x5f5ce3,-0x1da,-0x1c5)]['set'](_0x4c486d,[]);}else{const _0x18afd7=this['sessions'][_0x5d4dd3(-_0x487a52._0x199fc1,-_0x487a52._0x2140d0,-_0x487a52._0x45b8ca,-_0x487a52._0x1932ce)](_0x2d1e49);_0x18afd7&&(_0x18afd7[_0x44b1ae(-_0x487a52._0x38bf25,-_0x487a52._0x4044d7,0x41,-_0x487a52._0x7cc82b)+_0x5d4dd3(-_0x487a52._0x365a2f,-_0x487a52._0xf7bf1d,-_0x487a52._0x47f072,-_0x487a52._0x25a7f4)]=_0x1707bb,this[_0x44b1ae(-_0x487a52._0x3dd61a,-_0x487a52._0x50932d,-_0x487a52._0x16a4cf,-_0x487a52._0x41225f)+'ns'](),this[_0x44b1ae(-_0x487a52._0x19ba5a,-_0x487a52._0x4bf720,-0x185,-0x112)](_0x3171c3['tKkzZ'],_0xc0dd5a,_0x11221e));}}catch(_0x3be0af){if(_0x3171c3['ftUoZ'](_0x5d4dd3(-0x1a0,-_0x487a52._0x2184a2,-0x22e,-0x1e7),_0x44b1ae(-0xa5,-_0x487a52._0x3db858,-_0x487a52._0x171cfe,-0xb1)))console[_0x44b1ae(-_0x487a52._0x9976d8,-_0x487a52._0x48f007,-_0x487a52._0x203f5d,_0x487a52._0x55003c)]('Failed\x20to\x20'+'load\x20messa'+_0x5d4dd3(-0x23b,-_0x487a52._0x5f4f3d,-0x273,-_0x487a52._0x3262ad)+_0x5d4dd3(-0x232,-0x1c9,-0x202,-0x186)+_0x4c486d+':',_0x3be0af),this[_0x5d4dd3(-_0x487a52._0x5d84da,-_0x487a52._0x4e4861,-0x1d2,-0x1eb)+_0x5d4dd3(-_0x487a52._0x1486d5,-0x215,-_0x487a52._0x5a1d52,-_0x487a52._0x95130a)][_0x44b1ae(-_0x487a52._0x1c187,-0x10d,-_0x487a52._0x2a491c,-0xe0)](_0x4c486d,[]);else{const _0x186c5a={'id':this[_0x44b1ae(-0x69,-_0x487a52._0x363ca6,-0xb7,-0xac)+_0x5d4dd3(-_0x487a52._0x310ae7,-0x207,-_0x487a52._0x441c87,-_0x487a52._0x5ae371)](),'claudeSessionId':null,'name':_0x4d7f59,'workingDirectory':_0x42d233,'createdAt':_0x170cf7['now'](),'lastActiveAt':_0x31c742[_0x44b1ae(-_0x487a52._0x472864,-_0x487a52._0x56285c,-_0x487a52._0x2b5aff,-_0x487a52._0x4e4349)](),'isActive':![]};return this[_0x5d4dd3(-0x1df,-_0x487a52._0x1a8609,-_0x487a52._0x3bf969,-0x2a4)]['set'](_0x186c5a['id'],_0x186c5a),this[_0x5d4dd3(-_0x487a52._0x2944bc,-_0x487a52._0x280710,-0x1d2,-_0x487a52._0x39148d)+_0x44b1ae(-0x45,-_0x487a52._0x5eb5d0,-_0x487a52._0x4e24b6,-_0x487a52._0x46571b)]['set'](_0x186c5a['id'],[]),this[_0x5d4dd3(-_0x487a52._0x5f5df1,-0x260,-0x1ca,-0x241)+'ns'](),this[_0x5d4dd3(-_0x487a52._0x1c0b5f,-_0x487a52._0x4f66ca,-_0x487a52._0x328316,-0x1a2)+_0x5d4dd3(-0x1c2,-_0x487a52._0x2049d4,-0x1b8,-_0x487a52._0x5a1d52)](_0x186c5a['id']),this[_0x5d4dd3(-0x2fa,-_0x487a52._0x430914,-0x28f,-_0x487a52._0x1cbcab)](_0x3171c3['QpoJD'],_0x186c5a),_0x186c5a;}}}[_0x459bd0(0x424,0x3d5,0x39d,0x3dd)+'ns'](){const _0xbb595e={_0x42d972:0x4ce,_0xf21242:0x298,_0x528a6c:0x242,_0x5a6b31:0x273,_0x4ccf7e:0x320,_0x1eebbd:0x2df,_0x3ff466:0x2b0,_0x7ac995:0x29f,_0x46a566:0x545,_0x8ed54:0x544,_0x20772b:0x56a,_0x4710d0:0x4d7,_0x7446a0:0x4d9,_0x1ae803:0x51c,_0x14231a:0x58b,_0x21839d:0x4ed,_0x1b783a:0x44c,_0x497738:0x534,_0x63fce8:0x4b6,_0x59de1c:0x52f,_0x59651a:0x261,_0x3fd9ea:0x181,_0x4b9008:0x212,_0x4d3fed:0x57e,_0x34652e:0x509,_0x58da10:0x4a4,_0x3ce943:0x4b4,_0x4b4621:0x561,_0x37dfc1:0x40b,_0x3beb4f:0x4de,_0x20a45e:0x4d0,_0x44b83a:0x558,_0x2d3a2e:0x59c,_0x4abb74:0x4c6,_0x45ce78:0x4bd,_0x5364d8:0x48f,_0x18ed23:0x326,_0x226564:0x285,_0x3f862c:0x420,_0x130403:0x2b8,_0x2eecaa:0x1ea,_0x3dec0a:0x204},_0x238a5c={_0x39be08:0x15e,_0x54c38e:0x19b},_0x437feb={_0x4bd12a:0x1f2},_0x201321={};function _0x59b5bc(_0x469180,_0xdee18b,_0x53e746,_0x1be545){return _0x459bd0(_0x1be545- -0x165,_0xdee18b,_0x53e746-_0x437feb._0x4bd12a,_0x1be545-0x14a);}_0x201321[_0x5d2791(0x52f,0x45d,0x458,_0xbb595e._0x42d972)]='FGxim';function _0x5d2791(_0x249073,_0x5a67e4,_0x5bfbb8,_0x1e6c6){return _0x459bd0(_0x1e6c6-0x11c,_0x249073,_0x5bfbb8-_0x238a5c._0x39be08,_0x1e6c6-_0x238a5c._0x54c38e);}_0x201321[_0x59b5bc(0x2d0,_0xbb595e._0xf21242,0x2dc,0x29f)]=_0x59b5bc(0x152,_0xbb595e._0x528a6c,_0xbb595e._0x5a6b31,0x1e7),_0x201321[_0x59b5bc(0x2b2,_0xbb595e._0x4ccf7e,_0xbb595e._0x1eebbd,_0xbb595e._0x3ff466)]=_0x59b5bc(0x202,0x1de,_0xbb595e._0x7ac995,0x210);const _0x566f55=_0x201321;try{if(_0x566f55['kCJQM']===_0x5d2791(_0xbb595e._0x46a566,0x58d,_0xbb595e._0x8ed54,0x53a)){const _0xab0e80={'sessions':Array[_0x5d2791(0x46f,_0xbb595e._0x20772b,_0xbb595e._0x4710d0,_0xbb595e._0x7446a0)](this[_0x5d2791(0x4d2,_0xbb595e._0x1ae803,_0xbb595e._0x14231a,_0xbb595e._0x21839d)][_0x5d2791(_0xbb595e._0x1b783a,0x4c0,_0xbb595e._0x497738,_0xbb595e._0x63fce8)]()),'activeSessionId':this[_0x5d2791(0x5a4,0x4bb,0x57b,_0xbb595e._0x59de1c)+_0x59b5bc(_0xbb595e._0x59651a,_0xbb595e._0x3fd9ea,0x1d8,_0xbb595e._0x4b9008)]};_0x5549e3[_0x5d2791(0x589,0x4f6,_0xbb595e._0x4d3fed,_0xbb595e._0x34652e)+_0x5d2791(_0xbb595e._0x58da10,0x55c,0x5b9,0x52e)](SESSION_DATA_FILE,JSON['stringify'](_0xab0e80,null,0x160f+0x1f92+-0x359f));}else this[_0x5d2791(_0xbb595e._0x3ce943,0x4ea,_0xbb595e._0x4b4621,0x52f)+_0x5d2791(_0xbb595e._0x37dfc1,_0xbb595e._0x3beb4f,0x42a,0x493)]=null;}catch(_0x449c6d){if(_0x566f55[_0x5d2791(0x48b,0x4e0,_0xbb595e._0x20a45e,0x520)]!==_0x566f55['iNzxB'])console[_0x5d2791(_0xbb595e._0x44b83a,0x509,0x556,_0xbb595e._0x2d3a2e)](_0x5d2791(0x4e0,_0xbb595e._0x4abb74,_0xbb595e._0x45ce78,_0xbb595e._0x5364d8)+_0x5d2791(0x4bd,0x5db,0x583,0x547)+_0x59b5bc(0x2f4,0x2a6,_0xbb595e._0x18ed23,_0xbb595e._0x226564),_0x449c6d);else return this[_0x5d2791(0x537,0x49e,_0xbb595e._0x3f862c,0x4bd)+_0x59b5bc(_0xbb595e._0x130403,0x231,0x232,0x279)]()[_0x59b5bc(0x210,_0xbb595e._0x2eecaa,_0xbb595e._0x3dec0a,0x1f3)](_0x11ad9f=>({'id':_0x11ad9f['id'],'name':_0x11ad9f[_0x5d2791(0x5b8,0x59a,0x5a6,0x57f)],'workingDirectory':_0x11ad9f[_0x5d2791(0x50f,0x459,0x448,0x4a6)+_0x5d2791(0x576,0x547,0x5a7,0x55c)],'lastActiveAt':_0x11ad9f[_0x5d2791(0x477,0x46b,0x4fc,0x4d8)+'At'],'messageCount':this[_0x5d2791(0x5bb,0x596,0x547,0x538)+'sages']['get'](_0x11ad9f['id'])?.[_0x59b5bc(0x385,0x354,0x39f,0x310)]||0x22fb+-0x1*-0x247f+0x1*-0x477a,'isActive':_0x11ad9f[_0x5d2791(0x582,0x4cf,0x58f,0x537)]}));}}['saveSessio'+_0x5dabbc(0x551,0x566,0x56f,0x571)](_0x2d6efb){const _0x3a8b05={_0x45886b:0x181,_0x3cc002:0x126,_0x531f86:0x1a4,_0x47e19a:0x188,_0x450562:0xff,_0x1fec1f:0x472,_0x142267:0xf0,_0x4c5d46:0x1d6,_0x1f2b0a:0x13f,_0x141f9d:0x24a,_0x4cda41:0x56c,_0x2eff5d:0x4f8,_0x5796e8:0x549,_0x46d2c0:0x50b,_0xa6f585:0x577,_0x448cb9:0x438,_0x12760e:0x482,_0x29668f:0x421,_0x2242d4:0x41b,_0x2ded58:0x4d5,_0x2a3563:0x4fa,_0xb34240:0x4f1,_0x432fc0:0x47c,_0xa4491:0x118,_0x2dad36:0x113,_0xdd1ef:0x1a9,_0x34b4af:0x4b3,_0x1ad2cc:0x44e,_0x3dd4b1:0x49d,_0x3a3056:0x454,_0x18571d:0x538,_0x37fbdf:0x487,_0x40c1b9:0x44b},_0x3c8079={_0x4aed4d:0x194,_0x3e5ebd:0xd3},_0x3969c4={_0x5cb364:0x598,_0x688417:0x1e6},_0x3cde42={};function _0x550e4c(_0x47b0b0,_0x4c6637,_0x50d49d,_0x34aa7e){return _0x459bd0(_0x47b0b0- -_0x3969c4._0x5cb364,_0x34aa7e,_0x50d49d-0x8e,_0x34aa7e-_0x3969c4._0x688417);}function _0x436aef(_0x137272,_0x465782,_0x95ac6e,_0x22c3fc){return _0x5dabbc(_0x137272-_0x3c8079._0x4aed4d,_0x465782-_0x3c8079._0x3e5ebd,_0x465782- -0x65,_0x95ac6e);}_0x3cde42[_0x550e4c(-_0x3a8b05._0x45886b,-0x101,-_0x3a8b05._0x3cc002,-0x107)]=function(_0x4933bb,_0x2bbd57){return _0x4933bb===_0x2bbd57;},_0x3cde42[_0x550e4c(-_0x3a8b05._0x531f86,-_0x3a8b05._0x47e19a,-0x1e0,-0x169)]='MOZcq';const _0x2e1d61=_0x3cde42;try{if(_0x2e1d61[_0x550e4c(-_0x3a8b05._0x45886b,-0x1a8,-_0x3a8b05._0x450562,-0x144)](_0x2e1d61['ireiW'],_0x2e1d61[_0x436aef(_0x3a8b05._0x1fec1f,0x4c7,0x495,0x446)])){const _0x257ed2=this['sessionMes'+_0x550e4c(-0x184,-0x211,-_0x3a8b05._0x142267,-0x1c3)][_0x550e4c(-0x1de,-_0x3a8b05._0x4c5d46,-0x27b,-_0x3a8b05._0x1f2b0a)](_0x2d6efb)||[],_0x33f861=_0x29807f['join'](SESSION_DATA_DIR,_0x2d6efb+('-messages.'+'json'));_0x5549e3[_0x550e4c(-0x1ab,-_0x3a8b05._0x141f9d,-0x225,-0x206)+_0x436aef(_0x3a8b05._0x4cda41,0x4e5,_0x3a8b05._0x2eff5d,_0x3a8b05._0x5796e8)](_0x33f861,JSON['stringify'](_0x257ed2,null,0x56*0x2b+0x9f7*-0x1+-0xe5*0x5));}else _0x244809[_0x436aef(_0x3a8b05._0x46d2c0,0x553,_0x3a8b05._0xa6f585,0x518)]('Failed\x20to\x20'+_0x436aef(_0x3a8b05._0x448cb9,_0x3a8b05._0x12760e,_0x3a8b05._0x29668f,_0x3a8b05._0x2242d4)+_0x436aef(0x45c,0x44e,_0x3a8b05._0x2ded58,0x4a9)+_0x436aef(_0x3a8b05._0x2a3563,0x4bf,_0x3a8b05._0xb34240,_0x3a8b05._0x432fc0)+_0x397e17+':',_0x39cc24),this['sessionMes'+'sages']['set'](_0x91feba,[]);}catch(_0x344b89){console[_0x550e4c(-_0x3a8b05._0xa4491,-_0x3a8b05._0x2dad36,-_0x3a8b05._0xdd1ef,-0x100)]('Failed\x20to\x20'+_0x436aef(0x447,_0x3a8b05._0x34b4af,0x426,_0x3a8b05._0x5796e8)+_0x436aef(0x3db,_0x3a8b05._0x1ad2cc,_0x3a8b05._0x3dd4b1,_0x3a8b05._0x3a3056)+_0x436aef(_0x3a8b05._0x18571d,0x4bf,_0x3a8b05._0x37fbdf,_0x3a8b05._0x40c1b9)+_0x2d6efb+':',_0x344b89);}}[_0x459bd0(0x3c5,0x330,0x35d,0x33c)+_0x459bd0(0x3a0,0x3c6,0x34d,0x332)](){const _0x2b5f60={_0x36118e:0xf4,_0x3d52e9:0x8b,_0x54a418:0xc2,_0x17f975:0x47f,_0x4c4b5d:0x53c,_0x8d63a5:0x43d,_0xf1c726:0x434},_0x4284ff={_0x19221b:0x11a,_0x4940b0:0xa8},_0x48db11={_0x13fe80:0x116,_0x40d447:0xf4,_0x28ff06:0x18};function _0x332e90(_0x329fc4,_0x402792,_0x381389,_0x46db39){return _0x5dabbc(_0x329fc4-_0x48db11._0x13fe80,_0x402792-_0x48db11._0x40d447,_0x46db39- -_0x48db11._0x28ff06,_0x329fc4);}function _0x207f5e(_0x1246a5,_0x4250d6,_0x9c4a26,_0x5a92b2){return _0x5dabbc(_0x1246a5-_0x4284ff._0x19221b,_0x4250d6-_0x4284ff._0x4940b0,_0x9c4a26- -0x512,_0x4250d6);}return _0x207f5e(-0x118,-_0x2b5f60._0x36118e,-_0x2b5f60._0x3d52e9,-_0x2b5f60._0x54a418)+Date[_0x332e90(_0x2b5f60._0x17f975,0x4af,0x4d8,0x4c7)]()+'-'+Math[_0x332e90(_0x2b5f60._0x4c4b5d,0x4f6,0x60d,0x581)]()['toString'](-0x1ead+-0x10d7+-0x32*-0xf4)[_0x332e90(_0x2b5f60._0x8d63a5,0x4e1,_0x2b5f60._0xf1c726,0x47e)](-0x30b*-0x4+0x5*-0x78b+0x198d,-0x2417*0x1+0xd0a+0x3d9*0x6);}[_0x5dabbc(0x530,0x57b,0x592,0x532)+_0x459bd0(0x436,0x42f,0x439,0x407)](_0x45fbc6,_0x5ae2c2){const _0x186fce={_0x4e6b2b:0x48b,_0x137596:0x19d,_0x6ebc7c:0x258,_0x1fe4b8:0x2b5,_0x37168f:0x261,_0x1d330f:0x523,_0x3f02f0:0x488,_0x2684ce:0x1f1,_0x591a7a:0x49c,_0x1f592f:0x46a,_0x1c4f9e:0x3ff,_0x5d2a4a:0x45f,_0x275c5b:0x46a,_0x150a7c:0x41d,_0x128f70:0x119,_0x11cf4e:0x163,_0x5d372d:0x4df,_0x1207df:0x473,_0x3f121d:0x502,_0x1e6e5a:0x113,_0x1c397e:0x24b,_0x2f00b0:0x209,_0x266a7c:0x27d,_0x144b53:0x298,_0x2d35c3:0x1b6,_0x2551f0:0x4ba,_0x2bac27:0xd7,_0x31e745:0x144,_0x229264:0x19f,_0x2859ed:0x456,_0x42f84a:0x472},_0x39258f={_0x532c06:0x1ec,_0x2bb847:0xb1},_0x6ee73d={_0x2f0b3a:0xf3,_0x5e10ac:0x353};function _0x379727(_0x439343,_0x3c0b9e,_0x112dde,_0x504574){return _0x5dabbc(_0x439343-0x1e7,_0x3c0b9e-_0x6ee73d._0x2f0b3a,_0x3c0b9e- -_0x6ee73d._0x5e10ac,_0x504574);}function _0x4c4b95(_0x4a3dcb,_0x12c378,_0x5b56a4,_0x5dd15d){return _0x5dabbc(_0x4a3dcb-_0x39258f._0x532c06,_0x12c378-_0x39258f._0x2bb847,_0x12c378- -0x75,_0x4a3dcb);}const _0x175e03={};_0x175e03[_0x4c4b95(0x446,_0x186fce._0x4e6b2b,0x4e4,0x430)]=_0x379727(0x1f1,0x238,_0x186fce._0x137596,0x268)+_0x379727(0x1de,_0x186fce._0x6ebc7c,_0x186fce._0x1fe4b8,_0x186fce._0x37168f);const _0x3f4890=_0x175e03,_0x3f76c4={'id':this[_0x4c4b95(_0x186fce._0x1d330f,_0x186fce._0x3f02f0,0x523,0x511)+_0x379727(0xeb,0x185,_0x186fce._0x2684ce,0x184)](),'claudeSessionId':null,'name':_0x45fbc6,'workingDirectory':_0x5ae2c2,'createdAt':Date[_0x4c4b95(_0x186fce._0x591a7a,_0x186fce._0x1f592f,_0x186fce._0x1c4f9e,0x486)](),'lastActiveAt':Date[_0x4c4b95(_0x186fce._0x5d2a4a,_0x186fce._0x275c5b,0x409,0x502)](),'isActive':![]};return this[_0x4c4b95(0x4f2,0x494,_0x186fce._0x150a7c,0x45e)][_0x379727(_0x186fce._0x128f70,0x176,0xe0,_0x186fce._0x11cf4e)](_0x3f76c4['id'],_0x3f76c4),this[_0x4c4b95(0x55c,_0x186fce._0x5d372d,_0x186fce._0x1207df,_0x186fce._0x3f121d)+'sages'][_0x379727(0x10a,0x176,0x167,_0x186fce._0x1e6e5a)](_0x3f76c4['id'],[]),this[_0x379727(_0x186fce._0x1c397e,_0x186fce._0x2f00b0,0x1c9,_0x186fce._0x266a7c)+'ns'](),this[_0x379727(_0x186fce._0x144b53,0x20e,0x1f2,_0x186fce._0x2d35c3)+_0x4c4b95(_0x186fce._0x2551f0,0x4f9,_0x186fce._0x1d330f,0x586)](_0x3f76c4['id']),this[_0x379727(_0x186fce._0x2bac27,_0x186fce._0x31e745,0x189,_0x186fce._0x229264)](_0x3f4890[_0x4c4b95(_0x186fce._0x2859ed,_0x186fce._0x4e6b2b,0x4a4,_0x186fce._0x42f84a)],_0x3f76c4),_0x3f76c4;}['switchSess'+_0x459bd0(0x436,0x4ce,0x489,0x3f3)](_0x48638a){const _0xf3a014={_0xc187c9:0x6f,_0x595793:0x73,_0x3d9ab4:0xc1,_0x1fbc8c:0x59,_0x2bd0e7:0x9b,_0x8a017c:0xcb,_0x10ec5:0x3a4,_0x2983a2:0x3b4,_0x506bb4:0x4d1,_0x505abb:0x423,_0x16894e:0x346,_0x4c25f6:0x40d,_0x2a513b:0xaf,_0x396aef:0x8f,_0x311a61:0xcc,_0x2c1b32:0x408,_0x2ceb15:0x392,_0x5340e1:0x17,_0x35dd96:0xaf,_0x18daa0:0x89,_0x3a236c:0x108,_0x3b3d84:0xae,_0x27d2e7:0x13a,_0x65558a:0x15f,_0x2d4cbb:0x411,_0x47db78:0x18b,_0x3b865b:0x13b,_0x5a8fc4:0x2b,_0x25b2a8:0x52,_0x4823eb:0x131,_0x4a3050:0x3fe,_0x2af5cc:0x421,_0x4ad783:0x409,_0x106785:0x3aa,_0x2c06fd:0x36d,_0x511b8a:0x42a,_0x560814:0x3d7,_0x349226:0x35c,_0x26dba5:0x2fb,_0x4dce68:0x39d,_0x22f393:0x493,_0x494478:0x3f9,_0x3a3bf1:0xdc,_0x1f6c15:0x6c,_0x24491b:0xcf,_0x3a5254:0x30,_0x2b4ded:0x36,_0x3687cc:0xf4,_0x4850f2:0x6f,_0xf795c4:0xf8},_0x3617c4={_0x3c85b3:0x1e9},_0x34eff1={_0x1e1d36:0xa,_0x5c71e3:0x33,_0x4364e1:0x16e},_0x2fe90a={};_0x2fe90a[_0xaf6119(0x8d,-0x2a,0x3f,_0xf3a014._0xc187c9)]=function(_0x90f2dd,_0x4a10de){return _0x90f2dd===_0x4a10de;},_0x2fe90a[_0xaf6119(0xa,0xa6,0x91,_0xf3a014._0x595793)]='voKZj',_0x2fe90a['uQPOb']=function(_0x74bc15,_0x675eac){return _0x74bc15!==_0x675eac;},_0x2fe90a[_0xaf6119(_0xf3a014._0x3d9ab4,-0x48,_0xf3a014._0x1fbc8c,_0xf3a014._0x2bd0e7)]=_0xaf6119(0x56,0xeb,0xae,_0xf3a014._0x8a017c),_0x2fe90a[_0x31f5c0(0x2fe,_0xf3a014._0x10ec5,_0xf3a014._0x2983a2,0x370)]='sessionSwi'+_0x31f5c0(_0xf3a014._0x506bb4,_0xf3a014._0x505abb,0x48d,0x466);const _0x1a2edc=_0x2fe90a,_0x207f51=this[_0x31f5c0(0x342,_0xf3a014._0x16894e,_0xf3a014._0x4c25f6,0x3c7)][_0xaf6119(0x99,0x137,_0xf3a014._0x2a513b,0x8b)](_0x48638a);if(!_0x207f51)return null;if(this['activeSess'+_0xaf6119(_0xf3a014._0x396aef,_0xf3a014._0x311a61,0x6c,0x88)]){if(_0x1a2edc['JdoGW'](_0x1a2edc[_0x31f5c0(0x3bc,_0xf3a014._0x2c1b32,0x404,_0xf3a014._0x2ceb15)],_0x1a2edc['rlKKt'])){const _0x46094e=this['sessions'][_0xaf6119(0x94,_0xf3a014._0x5340e1,_0xf3a014._0x35dd96,_0xf3a014._0x18daa0)](this[_0xaf6119(0x11c,0xcf,_0xf3a014._0x3a236c,0xe8)+'ionId']);_0x46094e&&(_0x1a2edc['uQPOb'](_0xaf6119(0x66,0x6a,_0xf3a014._0x3b3d84,_0xf3a014._0x27d2e7),_0x1a2edc['JhJqd'])?this[_0xaf6119(0x12a,0x140,_0xf3a014._0x65558a,0xfd)+'edingConte'+'xt']['add'](_0x39b8b3['id']):_0x46094e[_0x31f5c0(0x3fe,0x3dc,0x3d0,_0xf3a014._0x2d4cbb)]=![]);}else return this[_0xaf6119(_0xf3a014._0x47db78,_0xf3a014._0x3b865b,_0xf3a014._0x3a236c,0x156)+_0xaf6119(_0xf3a014._0x5a8fc4,0x34,0x6c,0xa2)]?this[_0xaf6119(_0xf3a014._0x25b2a8,0x157,0xc6,_0xf3a014._0x4823eb)]['get'](this[_0x31f5c0(_0xf3a014._0x4a3050,_0xf3a014._0x2af5cc,0x41d,_0xf3a014._0x4ad783)+_0x31f5c0(0x3b0,0x377,_0xf3a014._0x106785,_0xf3a014._0x2c06fd)])||null:null;}function _0x31f5c0(_0x4454ac,_0x2e0a46,_0x8db821,_0x45e067){return _0x459bd0(_0x45e067- -_0x34eff1._0x1e1d36,_0x2e0a46,_0x8db821-_0x34eff1._0x5c71e3,_0x45e067-_0x34eff1._0x4364e1);}_0x207f51[_0x31f5c0(0x3e1,_0xf3a014._0x511b8a,0x43e,_0xf3a014._0x2d4cbb)]=!![],_0x207f51['lastActive'+'At']=Date[_0x31f5c0(_0xf3a014._0x560814,_0xf3a014._0x349226,_0xf3a014._0x26dba5,_0xf3a014._0x4dce68)](),this[_0x31f5c0(0x3ed,_0xf3a014._0x22f393,_0xf3a014._0x494478,0x409)+_0xaf6119(_0xf3a014._0x3a3bf1,0xe3,_0xf3a014._0x1f6c15,_0xf3a014._0x24491b)]=_0x48638a,this[_0x31f5c0(0x3b0,0x3d8,0x39c,0x41a)+'ns'](),this[_0xaf6119(_0xf3a014._0x3a5254,-_0xf3a014._0x2b4ded,0x54,_0xf3a014._0x25b2a8)](_0x1a2edc[_0xaf6119(0xd7,_0xf3a014._0x3687cc,_0xf3a014._0x4850f2,_0xf3a014._0xf795c4)],_0x207f51);function _0xaf6119(_0x311732,_0x1c9e8d,_0x4feb21,_0x1dd61d){return _0x459bd0(_0x4feb21- -0x30b,_0x1c9e8d,_0x4feb21-_0x3617c4._0x3c85b3,_0x1dd61d-0x5b);}return _0x207f51;}[_0x459bd0(0x36a,0x33a,0x314,0x33d)+_0x459bd0(0x3ff,0x38c,0x40a,0x44d)+'d'](_0x288189,_0x254191){const _0xef6048={_0x46a542:0x1a1,_0xa12bba:0x165,_0x2a705e:0x1cc,_0x276a94:0x1d5,_0x28863c:0x135,_0x23cc55:0x24e,_0x24386b:0x39,_0x4e6ead:0x16,_0x53d778:0x76,_0x4fc500:0x5f,_0x2163ce:0x30,_0x993cd3:0x92,_0x41b694:0x19b,_0x28b691:0x103,_0x5243ea:0x16e,_0x67d362:0x88,_0x4a402d:0x121,_0xa87a3:0xef,_0x1920d5:0x4d,_0x309a1e:0x76,_0x4445a3:0xb6,_0xd69150:0xe2,_0x30bf09:0x131,_0x145e5e:0xc7,_0x4d3811:0xd2,_0x4e1f4a:0xa8,_0x5691b9:0x18},_0x3e7047={_0x1fb9a9:0x10a},_0x13c3a1={_0x416339:0x167,_0x11890e:0x53},_0x19b73b={};_0x19b73b[_0x2edbab(0x1b5,_0xef6048._0x46a542,_0xef6048._0xa12bba,0x237)]=function(_0x4bd5e2,_0x5d93c0){return _0x4bd5e2===_0x5d93c0;},_0x19b73b['dPsRL']=_0x2edbab(_0xef6048._0x2a705e,_0xef6048._0x276a94,_0xef6048._0x28863c,_0xef6048._0x23cc55),_0x19b73b[_0x18ec15(0x65,-_0xef6048._0x24386b,_0xef6048._0x4e6ead,_0xef6048._0x53d778)]=_0x18ec15(-_0xef6048._0x4fc500,-0x5e,-_0xef6048._0x2163ce,-_0xef6048._0x993cd3)+_0x2edbab(_0xef6048._0x41b694,_0xef6048._0x28b691,_0xef6048._0x5243ea,0x178)+'ed';function _0x2edbab(_0x1b7c2d,_0x47b8a7,_0xa6c904,_0x53368f){return _0x5dabbc(_0x1b7c2d-_0x13c3a1._0x416339,_0x47b8a7-_0x13c3a1._0x11890e,_0x47b8a7- -0x3e8,_0x53368f);}const _0x311a27=_0x19b73b;function _0x18ec15(_0x32fdb9,_0x24ca27,_0xbb8573,_0x531974){return _0x459bd0(_0xbb8573- -0x450,_0x531974,_0xbb8573-_0x3e7047._0x1fb9a9,_0x531974-0x1b0);}const _0x12499b=this[_0x2edbab(_0xef6048._0x67d362,_0xef6048._0x4a402d,0xcd,_0xef6048._0xa87a3)]['get'](_0x288189);_0x12499b&&(_0x311a27[_0x18ec15(0x6d,0x8a,0x1,-_0xef6048._0x1920d5)](_0x311a27[_0x2edbab(_0xef6048._0x309a1e,_0xef6048._0x4445a3,_0xef6048._0xd69150,0x125)],_0x2edbab(0x1a6,_0xef6048._0x30bf09,0x162,0x180))?_0x570393['isActive']=!![]:(_0x12499b['claudeSess'+_0x2edbab(0x14f,_0xef6048._0x145e5e,_0xef6048._0x4d3811,0xb1)]=_0x254191,this[_0x2edbab(0xe5,0x174,0x20b,0xe3)+'ns'](),this['emit'](_0x311a27[_0x18ec15(_0xef6048._0x4e1f4a,_0xef6048._0x5691b9,0x16,0xb2)],_0x288189,_0x254191)));}[_0x459bd0(0x398,0x3d4,0x390,0x413)](_0x531456,_0x39ef50){const _0x2f57c0={_0x590f60:0x27,_0x1d1e35:0x49d,_0x101564:0x51c,_0x28ed91:0x123,_0xddf31f:0x175,_0x5e53b9:0xe4,_0x411559:0x4fd,_0x24a1b8:0x597,_0x37c2b9:0x4c1,_0x5946a2:0x4ad,_0x4bf141:0xa9,_0x21a163:0x15a,_0x49623c:0x4f0,_0x2027c8:0x53b,_0x38c07d:0x45d,_0x453bce:0x4c9,_0x426ae8:0x470,_0x3dd732:0x568,_0x1459fe:0x5e4,_0x1b1f0c:0xf7,_0x232a6a:0xc9,_0x1860ef:0x50a,_0x33ab93:0x538,_0x5018bd:0x539,_0x7ae31c:0xcb,_0x47aabe:0x56,_0x580960:0xae,_0x4758db:0x495,_0x5c98a3:0x4d1,_0x5b8240:0x9f,_0x4ef1da:0x13a,_0x2fe203:0x4,_0x46f38d:0x83,_0x183fc1:0x148,_0x1ba65f:0x13a,_0x58fd65:0x12b,_0xf9f9d5:0xf3,_0x451d5b:0x95,_0x3037c9:0xcd,_0x350812:0xb3,_0x53fa7f:0x8e,_0x368a5d:0xe1,_0x59dfb8:0x503,_0xc574ac:0x477,_0x1918de:0x4b,_0x139cb1:0x39,_0xbe977f:0xb2,_0x1be2c3:0x482,_0x4dba92:0x4c5,_0x250b24:0x44e,_0x470f3c:0x46c,_0x56fbed:0x471,_0x4bb71d:0x4a5,_0x1cc197:0x46a,_0x4049d6:0x76,_0x121cce:0x7e,_0x1a4d2f:0x174,_0x1e3aa8:0x4d3,_0x318259:0x521,_0x73dd13:0xa7,_0x23ac9e:0xf1,_0x2c4941:0x97,_0x5b9782:0x4a8,_0x558bec:0x491,_0x537f34:0xb2,_0xa16fcb:0x63,_0xe1ef57:0x103,_0x1653f8:0x92,_0x30355f:0xd,_0x228dd7:0x5f,_0x20b726:0xcc,_0x340abf:0x4aa,_0x51a7bb:0x4eb,_0x4bf735:0x155,_0x37192c:0x3b,_0x39233c:0xdc,_0x5026da:0x553,_0x6ca80b:0xb6,_0x8167f2:0x4c,_0x5e7ebc:0x512,_0xaa6952:0x4e9,_0x1a6d7f:0x151,_0x28fa96:0x1be,_0x110ca1:0x13d,_0x1eef0f:0x15d,_0x2fad66:0xc5},_0x369d0b={_0x364642:0xd8,_0x179f9a:0x14e},_0x2721a5={_0x22bf80:0x1ae},_0x5ce3e9={};_0x5ce3e9[_0x14cb1a(-0xf3,-_0x2f57c0._0x590f60,-0x11b,-0x83)]=function(_0x575152,_0x1a8be5){return _0x575152>=_0x1a8be5;},_0x5ce3e9[_0x3302e5(0x47d,_0x2f57c0._0x1d1e35,0x44d,0x4fa)]='chjjj',_0x5ce3e9[_0x3302e5(_0x2f57c0._0x101564,0x4c8,0x487,0x559)]=_0x14cb1a(-_0x2f57c0._0x28ed91,-_0x2f57c0._0xddf31f,-0xb8,-_0x2f57c0._0x5e53b9),_0x5ce3e9[_0x3302e5(_0x2f57c0._0x411559,_0x2f57c0._0x24a1b8,0x553,0x512)]=function(_0x264118,_0xb29ed5){return _0x264118-_0xb29ed5;},_0x5ce3e9[_0x3302e5(0x545,_0x2f57c0._0x37c2b9,0x51b,_0x2f57c0._0x5946a2)]=function(_0xb95c41,_0x472ea8){return _0xb95c41===_0x472ea8;},_0x5ce3e9[_0x14cb1a(-_0x2f57c0._0x4bf141,-_0x2f57c0._0x21a163,-0x11d,-0xe1)]=_0x3302e5(_0x2f57c0._0x49623c,0x54c,_0x2f57c0._0x2027c8,0x47b),_0x5ce3e9['AKHlN']=function(_0x4b0744,_0x4bb64f){return _0x4b0744-_0x4bb64f;},_0x5ce3e9[_0x3302e5(_0x2f57c0._0x38c07d,_0x2f57c0._0x453bce,0x41d,0x405)]=function(_0x5160c2,_0x27af8e){return _0x5160c2!==_0x27af8e;},_0x5ce3e9[_0x3302e5(_0x2f57c0._0x426ae8,0x420,0x477,0x3e5)]=_0x3302e5(_0x2f57c0._0x3dd732,_0x2f57c0._0x1459fe,0x5ca,0x551);const _0x259a58=_0x5ce3e9,_0x467ec6=this['sessions'][_0x14cb1a(-0x91,-_0x2f57c0._0x1b1f0c,-_0x2f57c0._0x232a6a,-0xc9)](_0x531456);if(!_0x467ec6)return;let _0x4441f4=this[_0x3302e5(_0x2f57c0._0x1860ef,0x540,0x4c6,_0x2f57c0._0x33ab93)+_0x3302e5(0x502,_0x2f57c0._0x5018bd,0x534,0x536)]['get'](_0x531456);!_0x4441f4&&(_0x4441f4=[],this[_0x14cb1a(-_0x2f57c0._0x7ae31c,-_0x2f57c0._0x47aabe,-_0x2f57c0._0x580960,-0x67)+_0x3302e5(0x502,_0x2f57c0._0x4758db,0x53f,_0x2f57c0._0x5c98a3)][_0x14cb1a(-_0x2f57c0._0x5b8240,-_0x2f57c0._0x4ef1da,-0x16c,-0xf2)](_0x531456,_0x4441f4));const _0x324738=_0x4441f4['findIndex'](_0x27e532=>_0x27e532['id']===_0x39ef50['id']);if(_0x259a58[_0x14cb1a(-0xdb,-0x51,-_0x2f57c0._0x2fe203,-_0x2f57c0._0x46f38d)](_0x324738,-0x7*-0x169+-0x75a*0x2+-0x1*-0x4d5)){if(_0x259a58[_0x14cb1a(-0x11f,-_0x2f57c0._0x183fc1,-0xfa,-0xf4)]!==_0x259a58[_0x14cb1a(-0x103,-_0x2f57c0._0x1ba65f,-0x14b,-0xf4)])_0x408c3f['previousCo'+'ntextSumma'+'ry']=_0x54d60e;else{const _0x50ae91=_0x4441f4[_0x324738],_0x4bc452={..._0x39ef50};_0x4bc452['wasStopped']=_0x50ae91[_0x14cb1a(-0xf5,-0x116,-0xf9,-_0x2f57c0._0x7ae31c)]||_0x39ef50[_0x14cb1a(-0x41,-_0x2f57c0._0x58fd65,-0xee,-_0x2f57c0._0x7ae31c)],_0x4441f4[_0x324738]=_0x4bc452;}}else{if(_0x39ef50[_0x14cb1a(-_0x2f57c0._0xf9f9d5,-0x58,-0xc5,-0x6b)]===_0x259a58[_0x14cb1a(0x48,-0xb7,-0x39,-0x55)]){const _0x3d467e=_0x4441f4[_0x259a58['ypyIj'](_0x4441f4['length'],0x25*-0xf1+0x163*-0xb+0x3217)];if(_0x3d467e&&_0x259a58[_0x14cb1a(-0x6e,-0xa9,-_0x2f57c0._0x451d5b,-0x2c)](_0x3d467e['type'],_0x259a58[_0x14cb1a(0x4a,-_0x2f57c0._0x3037c9,-_0x2f57c0._0x350812,-0x55)])&&_0x3d467e['isStreamin'+'g']&&!_0x3d467e['content']){if(_0x259a58[_0x14cb1a(-0xfb,-_0x2f57c0._0x53fa7f,-0x17c,-_0x2f57c0._0x368a5d)]!==_0x3302e5(0x4f0,0x547,_0x2f57c0._0x59dfb8,_0x2f57c0._0xc574ac)){const _0xbe9d80=this[_0x14cb1a(-_0x2f57c0._0x1918de,-0x4b,-_0x2f57c0._0x139cb1,-_0x2f57c0._0xbe977f)]['get'](_0x3fdeae);return _0xbe9d80?.[_0x3302e5(_0x2f57c0._0x1be2c3,_0x2f57c0._0x4dba92,_0x2f57c0._0x250b24,_0x2f57c0._0x470f3c)+'ntextSumma'+'ry']||null;}else{const _0x1d09d6={..._0x39ef50};_0x1d09d6[_0x3302e5(0x4a6,_0x2f57c0._0x56fbed,0x431,0x425)]=_0x3d467e[_0x3302e5(0x4a6,_0x2f57c0._0x4bb71d,_0x2f57c0._0x1cc197,0x492)]||_0x39ef50['wasStopped'],_0x4441f4[_0x259a58[_0x14cb1a(0x41,_0x2f57c0._0x4049d6,0x9,0x3)](_0x4441f4['length'],-0x6*-0x3c7+0x25b0+0x3c59*-0x1)]=_0x1d09d6;}}else{if(_0x259a58[_0x14cb1a(-0x98,-0x19f,-0x98,-0x114)](_0x259a58[_0x14cb1a(-_0x2f57c0._0x121cce,-_0x2f57c0._0x1a4d2f,-0x103,-0x101)],_0x3302e5(_0x2f57c0._0x1e3aa8,_0x2f57c0._0x318259,0x4fe,0x455)))_0x4441f4[_0x14cb1a(-0x11a,-_0x2f57c0._0x73dd13,-0x12c,-0xcc)](_0x39ef50);else{const _0x1496d8=this[_0x14cb1a(-_0x2f57c0._0x23ac9e,-0xfb,-_0x2f57c0._0x2c4941,-0xb2)][_0x3302e5(_0x2f57c0._0x5b9782,0x4c8,0x46c,_0x2f57c0._0x558bec)](_0x5d648f);_0x1496d8&&(_0x1496d8[_0x14cb1a(-_0x2f57c0._0x537f34,-0x8e,-0xd0,-_0x2f57c0._0xa16fcb)+_0x14cb1a(-0x120,-_0x2f57c0._0xe1ef57,-0xfd,-0x10c)]=_0x1e8c4,this[_0x14cb1a(-_0x2f57c0._0x1653f8,_0x2f57c0._0x30355f,0x43,-_0x2f57c0._0x228dd7)+'ns']());}}}else _0x4441f4[_0x14cb1a(-0x125,-0xe7,-0x3a,-_0x2f57c0._0x20b726)](_0x39ef50);}function _0x3302e5(_0x1acad0,_0x8dcc9c,_0x5f203a,_0x32a599){return _0x5dabbc(_0x1acad0-_0x2721a5._0x22bf80,_0x8dcc9c-0xae,_0x1acad0- -0x4a,_0x5f203a);}function _0x14cb1a(_0x377b45,_0x2680eb,_0x3f955b,_0x5a151a){return _0x5dabbc(_0x377b45-_0x369d0b._0x364642,_0x2680eb-_0x369d0b._0x179f9a,_0x5a151a- -0x5bb,_0x377b45);}_0x467ec6[_0x3302e5(_0x2f57c0._0x340abf,0x454,_0x2f57c0._0x51a7bb,0x465)+'At']=Date[_0x14cb1a(-_0x2f57c0._0x4bf735,-_0x2f57c0._0x37192c,-0x166,-_0x2f57c0._0x39233c)](),this[_0x3302e5(0x512,_0x2f57c0._0x5026da,0x573,0x49d)+_0x14cb1a(-0x58,0x25,-_0x2f57c0._0x6ca80b,-_0x2f57c0._0x8167f2)](_0x531456),this[_0x3302e5(_0x2f57c0._0x5e7ebc,_0x2f57c0._0xaa6952,0x51b,0x592)+'ns'](),this[_0x14cb1a(-0xa3,-_0x2f57c0._0x1a6d7f,-_0x2f57c0._0x28fa96,-0x124)](_0x14cb1a(-0x139,-_0x2f57c0._0x110ca1,-_0x2f57c0._0x1eef0f,-_0x2f57c0._0x2fad66)+'ed',_0x531456,_0x39ef50);}[_0x5dabbc(0x580,0x5ae,0x57b,0x60f)+_0x5dabbc(0x5e7,0x59c,0x596,0x531)+'ed'](_0x39a931){const _0x5beb93={_0x2e210f:0x1de,_0x510b25:0x1d0,_0x43d6d7:0x29a,_0x1800f9:0x2bf,_0x22c4ff:0x101,_0x25277d:0x189,_0x3e1679:0x80,_0x3696e0:0x10c,_0x345ec2:0x1d3,_0x1454fb:0x1bf,_0x4c5b28:0x32c,_0x429039:0x229,_0x3ecbb9:0x293,_0x45af87:0x29e,_0x5a822f:0x29f,_0x502893:0x31c,_0x212303:0x267},_0x228daf={_0x187045:0x18e,_0x48ac86:0x2bd},_0x3f9f67={_0x401db0:0x528,_0x112589:0x36},_0x493f5b={};_0x493f5b[_0x580789(_0x5beb93._0x2e210f,0x159,_0x5beb93._0x510b25,0x1c7)]=function(_0x2ea939,_0x4abd45){return _0x2ea939-_0x4abd45;},_0x493f5b[_0x580789(0x2b7,0x269,_0x5beb93._0x43d6d7,_0x5beb93._0x1800f9)]=function(_0x3baf04,_0x1318d0){return _0x3baf04>=_0x1318d0;},_0x493f5b['EarHs']=_0x4e79e4(-_0x5beb93._0x22c4ff,-0x178,-_0x5beb93._0x25277d,-0x146);function _0x4e79e4(_0x13c117,_0x4e6f17,_0x121096,_0x170b86){return _0x459bd0(_0x121096- -_0x3f9f67._0x401db0,_0x13c117,_0x121096-0x5b,_0x170b86-_0x3f9f67._0x112589);}const _0xb9d197=_0x493f5b;function _0x580789(_0x318565,_0x4cd4e4,_0x3add8b,_0x22fa98){return _0x5dabbc(_0x318565-0x16a,_0x4cd4e4-_0x228daf._0x187045,_0x3add8b- -_0x228daf._0x48ac86,_0x22fa98);}const _0x20eb11=this[_0x4e79e4(-0xf7,-_0x5beb93._0x3e1679,-_0x5beb93._0x3696e0,-0x150)+'sages'][_0x4e79e4(-0x168,-0x137,-0x16e,-0x1d0)](_0x39a931);if(!_0x20eb11||_0x20eb11['length']===0x13*0x1ad+-0x21e2*0x1+0x1*0x20b)return;for(let _0x197328=_0xb9d197[_0x4e79e4(-0x260,-0x1fc,-_0x5beb93._0x345ec2,-_0x5beb93._0x1454fb)](_0x20eb11['length'],-0x1fc9+0x36*-0x6+-0x1*-0x210e);_0xb9d197['czxxX'](_0x197328,0x18b9*-0x1+-0x1d9d+-0x1*-0x3656);_0x197328--){if(_0x20eb11[_0x197328][_0x580789(_0x5beb93._0x4c5b28,_0x5beb93._0x429039,_0x5beb93._0x3ecbb9,_0x5beb93._0x45af87)]===_0xb9d197['EarHs']){_0x20eb11[_0x197328]={..._0x20eb11[_0x197328],'isStreaming':![],'wasStopped':!![]},this[_0x580789(0x2a2,0x2e3,_0x5beb93._0x5a822f,0x20a)+_0x580789(_0x5beb93._0x502893,0x239,0x2b2,_0x5beb93._0x212303)](_0x39a931);break;}}}[_0x459bd0(0x472,0x3f0,0x4a7,0x3da)+_0x459bd0(0x427,0x460,0x3d7,0x48c)](_0x52acb7,_0x2795f4){const _0x43b6e4={_0x38f0a6:0x650,_0x415d05:0x5bc,_0x50524e:0x5e3,_0x2b5373:0x4f8,_0x243fa1:0x4ec,_0x1e69ee:0x472,_0x6a6f4f:0x27f,_0x2081c3:0x2dd,_0x4039c9:0x2cb,_0x22128e:0x386,_0x23408f:0x5d5,_0x13bea1:0x5bf,_0x74ea06:0x5e5,_0x2e1226:0x5d4,_0x4ec739:0x4aa,_0x40f18e:0x4e2,_0x4daab9:0x4b7,_0xff32e6:0x5d6,_0x2079e0:0x594,_0x392897:0x357},_0x40d71c={_0x8ca0e4:0x9b,_0x40ff06:0x15e},_0x176f56={};function _0x40176d(_0x84095d,_0x5dc6a3,_0x5a211c,_0x363331){return _0x459bd0(_0x5a211c- -0x9a,_0x363331,_0x5a211c-_0x40d71c._0x8ca0e4,_0x363331-_0x40d71c._0x40ff06);}_0x176f56[_0x318db2(_0x43b6e4._0x38f0a6,0x5f5,_0x43b6e4._0x415d05,_0x43b6e4._0x50524e)]=_0x318db2(0x485,_0x43b6e4._0x2b5373,_0x43b6e4._0x243fa1,_0x43b6e4._0x1e69ee);function _0x318db2(_0x14bdfb,_0x4452d1,_0x25f745,_0x269f2f){return _0x459bd0(_0x25f745-0x184,_0x14bdfb,_0x25f745-0x19e,_0x269f2f-0x1ce);}const _0x20340a=_0x176f56,_0x87d689={'id':_0x40176d(_0x43b6e4._0x6a6f4f,_0x43b6e4._0x2081c3,_0x43b6e4._0x4039c9,0x26a)+Date[_0x40176d(0x2c3,_0x43b6e4._0x22128e,0x30d,0x386)]()+'-'+Math[_0x318db2(_0x43b6e4._0x23408f,_0x43b6e4._0x13bea1,_0x43b6e4._0x74ea06,0x654)]()[_0x318db2(0x5db,0x551,_0x43b6e4._0x2e1226,0x58f)](0x1681*-0x1+0x36d*0x1+0x1338)[_0x318db2(0x484,_0x43b6e4._0x4ec739,_0x43b6e4._0x40f18e,_0x43b6e4._0x4daab9)](0x1*0x1650+-0x1405+-0x249,-0xa3*0x12+-0x1841+0x23bd),'type':_0x20340a[_0x318db2(_0x43b6e4._0xff32e6,0x598,_0x43b6e4._0x415d05,_0x43b6e4._0x2079e0)],'content':_0x2795f4,'timestamp':Date['now']()};return this[_0x40176d(0x25e,_0x43b6e4._0x392897,0x2fe,0x297)](_0x52acb7,_0x87d689),_0x87d689;}['createPlac'+'eholderAss'+'istantMess'+_0x5dabbc(0x4e8,0x4fc,0x539,0x519)](_0x59c297){const _0x23dbdf={_0xd7049d:0x5a,_0x56eb3a:0x45,_0x20f963:0x2f,_0x2b7e25:0x4e,_0x3ee30b:0xae,_0x253185:0x97,_0xebd3f4:0x3,_0x546059:0x11c,_0x37f306:0x3a,_0x414fb9:0x44,_0x133187:0x30a,_0x8518b3:0x320,_0x3215c1:0x52},_0x41e385={_0x35ee25:0x18c},_0x208d46={_0x264f7f:0x152},_0x24a99d={};_0x24a99d[_0x40fa61(0x298,0x2f0,0x2f6,0x288)]=_0x4306d2(-_0x23dbdf._0xd7049d,0x20,_0x23dbdf._0x56eb3a,0xc);const _0x1cd2cf=_0x24a99d;function _0x40fa61(_0x2c5c24,_0x1ece6e,_0x47c22d,_0xe0422e){return _0x459bd0(_0x1ece6e- -0x140,_0xe0422e,_0x47c22d-0x1a8,_0xe0422e-_0x208d46._0x264f7f);}const _0x14070a={'id':_0x4306d2(_0x23dbdf._0x20f963,-0x25,_0x23dbdf._0x2b7e25,_0x23dbdf._0x3ee30b)+Date['now']()+'-'+Math[_0x4306d2(0x68,_0x23dbdf._0x253185,_0x23dbdf._0xebd3f4,0xa0)]()[_0x40fa61(0x39b,0x310,0x34d,0x32a)](-0x76*-0x13+-0x1*0xaa6+0x5*0x68)[_0x4306d2(-0x9b,-_0x23dbdf._0x546059,-_0x23dbdf._0x37f306,-_0x23dbdf._0x414fb9)](-0x791*0x2+0x82e*-0x2+0x1f80,0x61*0x39+0xa59*-0x1+-0x2*0x59d),'type':_0x1cd2cf[_0x40fa61(_0x23dbdf._0x133187,0x2f0,_0x23dbdf._0x8518b3,0x31b)],'content':'','timestamp':Date[_0x4306d2(-_0x23dbdf._0x3215c1,0x42,-0xb9,-0xd3)](),'isStreaming':!![]};function _0x4306d2(_0x29c030,_0x23af11,_0x46ef26,_0xd646b1){return _0x5dabbc(_0x29c030-_0x41e385._0x35ee25,_0x23af11-0x1d9,_0x29c030- -0x531,_0x46ef26);}return this['addMessage'](_0x59c297,_0x14070a),_0x14070a;}[_0x5dabbc(0x4b6,0x551,0x4d9,0x571)+'ions'](){const _0x587caf={_0x417200:0x348,_0xb7c82c:0x2fa,_0x26fbbe:0x310,_0x9c03f9:0x1b5,_0x473723:0x1fe,_0x479b09:0x1ec,_0x5c1e70:0x14e,_0x3881b3:0x230,_0x27f6db:0x1fe,_0x23fe78:0x258,_0x36ee50:0x219},_0x4c9f5a={_0x3bedc9:0xad};function _0xf17b93(_0x6dd951,_0x475445,_0x3c11f2,_0x1834f8){return _0x459bd0(_0x6dd951- -0x586,_0x3c11f2,_0x3c11f2-0x99,_0x1834f8-0x1db);}function _0x3fd7e4(_0x360208,_0x2edf0a,_0x59d65f,_0x55355e){return _0x459bd0(_0x55355e- -_0x4c9f5a._0x3bedc9,_0x360208,_0x59d65f-0x1e6,_0x55355e-0xab);}return Array[_0x3fd7e4(0x353,_0x587caf._0x417200,_0x587caf._0xb7c82c,_0x587caf._0x26fbbe)](this[_0xf17b93(-_0x587caf._0x9c03f9,-_0x587caf._0x473723,-0x1c7,-0x1f4)][_0xf17b93(-_0x587caf._0x479b09,-0x14c,-_0x587caf._0x5c1e70,-_0x587caf._0x3881b3)]())[_0xf17b93(-_0x587caf._0x27f6db,-_0x587caf._0x23fe78,-0x289,-_0x587caf._0x36ee50)]((_0x3fb260,_0x2899fd)=>_0x2899fd[_0x3fd7e4(0x276,0x383,0x2e6,0x30f)+'At']-_0x3fb260['lastActive'+'At']);}[_0x5dabbc(0x562,0x5dd,0x5b5,0x629)+_0x5dabbc(0x611,0x54c,0x593,0x59f)](){const _0x54782a={_0x4e262a:0x18e,_0x361634:0x1cb,_0x42a671:0x1b3,_0x56077a:0x181,_0x4b2a16:0x14b},_0x31bd14={_0x9cd473:0xa7,_0x4974c7:0x34b},_0x47750e={_0x265864:0x16a,_0x4a1676:0xee};function _0x71045f(_0x26c8af,_0x22afc0,_0xd59a91,_0x4e0c6d){return _0x459bd0(_0x26c8af-_0x47750e._0x265864,_0x22afc0,_0xd59a91-0x106,_0x4e0c6d-_0x47750e._0x4a1676);}function _0x5c7fc9(_0x2f69a9,_0x4ee5c1,_0x114282,_0x333709){return _0x5dabbc(_0x2f69a9-_0x31bd14._0x9cd473,_0x4ee5c1-0x45,_0x114282- -_0x31bd14._0x4974c7,_0x4ee5c1);}return this[_0x5c7fc9(0x224,0x165,_0x54782a._0x4e262a,0x129)+_0x5c7fc9(0x25a,0x239,_0x54782a._0x361634,_0x54782a._0x42a671)]()[_0x5c7fc9(_0x54782a._0x56077a,_0x54782a._0x4b2a16,0x145,0x151)](_0x125fad=>({'id':_0x125fad['id'],'name':_0x125fad[_0x71045f(0x5cd,0x65e,0x5f4,0x55a)],'workingDirectory':_0x125fad[_0x71045f(0x4f4,0x56a,0x57e,0x57c)+_0x5c7fc9(0x2ac,0x19b,0x22d,0x1b7)],'lastActiveAt':_0x125fad[_0x5c7fc9(0x20f,0x170,0x1a9,0x12f)+'At'],'messageCount':this[_0x71045f(0x586,0x512,0x5e8,0x5e5)+_0x71045f(0x57e,0x5e1,0x5a9,0x603)][_0x5c7fc9(0x207,0x174,0x1a7,0x205)](_0x125fad['id'])?.[_0x5c7fc9(0x1d5,0x2af,0x262,0x28d)]||0xd0d*-0x1+0x2*-0xdf6+0x28f9,'isActive':_0x125fad[_0x71045f(0x585,0x57a,0x5f9,0x504)]}));}[_0x5dabbc(0x566,0x57a,0x565,0x500)+_0x5dabbc(0x50c,0x599,0x51b,0x4a7)](){const _0xfc3d28={_0x3207a0:0xba,_0x32155b:0x11b,_0x285653:0x7b,_0xa0d7b:0x1f,_0x4c5376:0x21,_0x1577df:0xa},_0x4b99a8={_0x5dc52a:0x3d,_0x12fe2b:0x119},_0x47527f={_0x140db3:0x15f};function _0x5d9087(_0x2265d7,_0x218e6c,_0x4ea74a,_0x201dbe){return _0x459bd0(_0x4ea74a- -0x398,_0x201dbe,_0x4ea74a-_0x47527f._0x140db3,_0x201dbe-0x8b);}function _0x3f2784(_0xe07cbe,_0x56501e,_0xbafc70,_0x40102c){return _0x459bd0(_0xe07cbe- -0x38d,_0x40102c,_0xbafc70-_0x4b99a8._0x5dc52a,_0x40102c-_0x4b99a8._0x12fe2b);}return this['activeSess'+'ionId']?this[_0x3f2784(0x44,0x99,-0x1c,-0x41)][_0x3f2784(0x2d,_0xfc3d28._0x3207a0,0xca,0xbb)](this[_0x5d9087(_0xfc3d28._0x32155b,0xad,_0xfc3d28._0x285653,0x54)+_0x5d9087(-_0xfc3d28._0xa0d7b,-0x6c,-_0xfc3d28._0x4c5376,_0xfc3d28._0x1577df)])||null:null;}[_0x459bd0(0x47d,0x46f,0x51a,0x4fd)](_0x447552){const _0xa9b64b={_0x2f3a8c:0x1d6};function _0x38a7c8(_0x1b4e1b,_0x53aa78,_0x552613,_0x287ac8){return _0x5dabbc(_0x1b4e1b-_0xa9b64b._0x2f3a8c,_0x53aa78-0x18b,_0x552613- -0x29d,_0x53aa78);}return this[_0x38a7c8(0x232,0x306,0x26c,0x24f)]['get'](_0x447552)||null;}['getSession'+'Messages'](_0x2b962a){const _0x46ff9f={_0x4cee9f:0x2c6,_0x3621f3:0x234,_0x31f8b7:0x1f0,_0x4e7d99:0x2ef,_0x5d1fc0:0x240,_0x5805d5:0x209,_0x508e3c:0x29b},_0x4d4136={_0xa79237:0x2e9},_0x4c983f={_0x4fa433:0x179,_0x271aef:0xd5};function _0x25e002(_0xe081ad,_0x245598,_0x5ae676,_0x424002){return _0x459bd0(_0x245598-_0x4c983f._0x4fa433,_0x424002,_0x5ae676-0x1af,_0x424002-_0x4c983f._0x271aef);}function _0x2e655d(_0x218fe4,_0x292571,_0x46ad1d,_0x43530c){return _0x5dabbc(_0x218fe4-0x171,_0x292571-0x145,_0x292571- -_0x4d4136._0xa79237,_0x46ad1d);}return this[_0x2e655d(_0x46ff9f._0x4cee9f,0x26b,_0x46ff9f._0x3621f3,_0x46ff9f._0x31f8b7)+_0x2e655d(0x1ce,0x263,_0x46ff9f._0x4e7d99,_0x46ff9f._0x5d1fc0)][_0x2e655d(0x28f,_0x46ff9f._0x5805d5,_0x46ff9f._0x508e3c,0x1da)](_0x2b962a)||[];}[_0x5dabbc(0x4bf,0x581,0x50c,0x490)+_0x459bd0(0x436,0x3f1,0x3b5,0x41b)](_0x2bef95){const _0x4a2f93={_0x46080c:0x132,_0x1e4c15:0xc2,_0x40da19:0xfb,_0x2d2e47:0x196,_0x3c0bb5:0x1a5,_0x37a747:0x21b,_0xc75ebb:0x5e,_0x57b1ae:0x1e3,_0x1c02a5:0x282,_0x1f56c6:0x230,_0x4bec03:0x10e,_0x1b3941:0xe4,_0x42c630:0x5f,_0x954313:0xa1,_0x483267:0x1d0,_0x315605:0x242,_0xa05174:0x209,_0x1c5687:0x1e7,_0x409572:0x18f,_0x6432f4:0x23b,_0x53839e:0x1a9,_0x3c2757:0x1d7,_0x523240:0x24a,_0x53df86:0x27e,_0x485fcc:0x266,_0x3d8819:0x168,_0xb5bf64:0x1b7,_0x159ca9:0x16e,_0xe70847:0x1b3,_0x5e2e80:0x1c0,_0x340bd5:0x167,_0x28c906:0x15d,_0x5aca0b:0xcb,_0x123bef:0x260,_0x4af896:0x22a,_0x13d81d:0x90,_0x190d69:0x3e,_0x1be7bd:0x1d,_0x20b633:0x148,_0x394f16:0x243,_0x3b905f:0x255,_0x4517b2:0x256,_0x2449b9:0x8a,_0x12474a:0x15f,_0x569697:0x244,_0x4cbd80:0x5b,_0x143edc:0xd0,_0x20d381:0x28b,_0x469b97:0x2cf,_0x318dff:0x17f,_0xa2d5aa:0x15,_0x3c1d76:0x55,_0x5e4b5a:0x111,_0x241028:0x104,_0x4d43e6:0x156,_0x1074e6:0x16f,_0x26a830:0x18d,_0x554104:0x229,_0x3f6ed9:0xa8,_0x7dd6cb:0xd3,_0x46d585:0x7d,_0xc8efec:0xe6,_0x34d15b:0x1e3,_0x2ce170:0xcf,_0x18ee21:0xb7,_0xe87c7:0x8e,_0x3bf0a6:0x98,_0x19ee87:0x189,_0x9543b4:0x152,_0x287d1b:0x275,_0x179ce3:0x2b4,_0x5d1853:0x189,_0x3f0164:0x1b8,_0x2fdcbf:0x1c7,_0x2a4a96:0x251,_0x57a045:0x67,_0x24ee34:0x23a,_0x5a241c:0x236,_0x1ba5a4:0x23f,_0x2b0edd:0x1b8,_0x40f281:0x1ce,_0x474236:0x16f,_0x1061f0:0x14d,_0x3864b3:0x1c8},_0x42a910={_0x2eca10:0x1ea,_0x5a7b1f:0x3b},_0x40fef2={_0x467954:0x97,_0x2bf060:0x43a},_0x2e9854={};function _0x3e7b50(_0x3ff44d,_0xb997ad,_0x3fe399,_0x528c0b){return _0x5dabbc(_0x3ff44d-_0x40fef2._0x467954,_0xb997ad-0xa2,_0x3ff44d- -_0x40fef2._0x2bf060,_0xb997ad);}_0x2e9854[_0x3e7b50(_0x4a2f93._0x46080c,_0x4a2f93._0x1e4c15,_0x4a2f93._0x40da19,0xd7)]=function(_0x21f9c3,_0x188fe0){return _0x21f9c3<=_0x188fe0;},_0x2e9854[_0x57e361(_0x4a2f93._0x2d2e47,0x18f,_0x4a2f93._0x3c0bb5,_0x4a2f93._0x37a747)]=function(_0x1dcef9,_0x589820){return _0x1dcef9===_0x589820;};function _0x57e361(_0x2a6c87,_0xc686f4,_0x5d3c6b,_0x5e6aec){return _0x459bd0(_0xc686f4- -_0x42a910._0x2eca10,_0x5e6aec,_0x5d3c6b-_0x42a910._0x5a7b1f,_0x5e6aec-0xf2);}_0x2e9854[_0x3e7b50(0xa8,0x10f,_0x4a2f93._0xc75ebb,0x11f)]=function(_0x25f35b,_0x362693){return _0x25f35b!==_0x362693;},_0x2e9854[_0x57e361(_0x4a2f93._0x57b1ae,_0x4a2f93._0x1c02a5,_0x4a2f93._0x1f56c6,0x2cc)]=_0x3e7b50(0x107,_0x4a2f93._0x4bec03,_0x4a2f93._0x1b3941,0x7d),_0x2e9854[_0x3e7b50(_0x4a2f93._0x42c630,0xde,0x4c,_0x4a2f93._0x954313)]=function(_0x32899b,_0x33480d){return _0x32899b>_0x33480d;},_0x2e9854['WkpPx']=_0x3e7b50(0x180,0x21b,0x181,0x1f8)+_0x57e361(_0x4a2f93._0x483267,_0x4a2f93._0x315605,0x1ef,0x1c7);const _0x165340=_0x2e9854;if(!this[_0x57e361(_0x4a2f93._0xa05174,_0x4a2f93._0x1c5687,_0x4a2f93._0x409572,0x285)][_0x57e361(0x2a5,_0x4a2f93._0x6432f4,_0x4a2f93._0x53839e,0x29c)](_0x2bef95))return![];if(_0x165340[_0x57e361(_0x4a2f93._0x3c2757,_0x4a2f93._0x523240,_0x4a2f93._0x53df86,_0x4a2f93._0x485fcc)](this[_0x57e361(_0x4a2f93._0x3d8819,_0x4a2f93._0x1c5687,0x227,_0x4a2f93._0xb5bf64)][_0x57e361(_0x4a2f93._0x159ca9,_0x4a2f93._0xe70847,0x244,_0x4a2f93._0x5e2e80)],0x1*-0x205d+0x23f4+-0x396))return![];this[_0x3e7b50(0xcf,0x71,_0x4a2f93._0x340bd5,0xe6)][_0x57e361(_0x4a2f93._0x28c906,0x166,_0x4a2f93._0x5aca0b,0x117)](_0x2bef95),this[_0x57e361(_0x4a2f93._0x123bef,0x232,0x218,0x284)+_0x57e361(0x1a9,_0x4a2f93._0x4af896,0x1d8,0x196)][_0x3e7b50(0x4e,_0x4a2f93._0x13d81d,_0x4a2f93._0x190d69,_0x4a2f93._0x1be7bd)](_0x2bef95);try{const _0x1ee26b=_0x29807f[_0x3e7b50(0xca,0x16c,0xc2,_0x4a2f93._0x20b633)](SESSION_DATA_DIR,_0x2bef95+(_0x57e361(_0x4a2f93._0x394f16,_0x4a2f93._0x3b905f,_0x4a2f93._0x4517b2,0x27e)+_0x3e7b50(0x11f,_0x4a2f93._0x2449b9,_0x4a2f93._0x12474a,0x8e)));_0x5549e3['existsSync'](_0x1ee26b)&&_0x5549e3[_0x57e361(0x242,0x1bc,_0x4a2f93._0x569697,0x24f)](_0x1ee26b);}catch(_0x23fe71){console['error'](_0x3e7b50(0x71,_0x4a2f93._0x4cbd80,0x60,0xe3)+'delete\x20mes'+_0x3e7b50(0x142,0xe9,_0x4a2f93._0x143edc,0xb4)+_0x57e361(_0x4a2f93._0x20d381,_0x4a2f93._0x53df86,0x208,_0x4a2f93._0x469b97)+_0x57e361(0x1ae,_0x4a2f93._0x318dff,0x17d,0xe9)+_0x2bef95+':',_0x23fe71);}if(_0x165340[_0x3e7b50(0x77,-_0x4a2f93._0xa2d5aa,0xc6,_0x4a2f93._0x3c1d76)](this[_0x3e7b50(_0x4a2f93._0x5e4b5a,0x7b,_0x4a2f93._0x241028,_0x4a2f93._0x4d43e6)+_0x57e361(_0x4a2f93._0x1074e6,_0x4a2f93._0x26a830,0x160,_0x4a2f93._0x554104)],_0x2bef95)){if(_0x165340[_0x3e7b50(_0x4a2f93._0x3f6ed9,_0x4a2f93._0x7dd6cb,0x29,_0x4a2f93._0x46d585)]('UbTlj',_0x165340[_0x3e7b50(0x16a,_0x4a2f93._0xc8efec,0xe3,_0x4a2f93._0x34d15b)])){const _0x338a2c=Array['from'](this[_0x3e7b50(_0x4a2f93._0x2ce170,_0x4a2f93._0x18ee21,0x39,_0x4a2f93._0xe87c7)][_0x3e7b50(_0x4a2f93._0x3bf0a6,0xe9,0x99,0x12b)]());_0x165340[_0x57e361(_0x4a2f93._0x19ee87,0x177,_0x4a2f93._0x9543b4,0x146)](_0x338a2c['length'],0x1249+-0xc*-0x21d+0x1*-0x2ba5)?this[_0x57e361(_0x4a2f93._0x287d1b,0x23f,0x1a0,_0x4a2f93._0x179ce3)+_0x3e7b50(0x134,_0x4a2f93._0x5d1853,_0x4a2f93._0x3f0164,_0x4a2f93._0x2fdcbf)](_0x338a2c[-0x1*-0x2117+0x1*-0x1ec4+-0x253]['id']):this[_0x57e361(_0x4a2f93._0x2a4a96,0x229,0x27f,0x196)+_0x3e7b50(0x75,_0x4a2f93._0x57a045,0x71,0x93)]=null;}else _0x271fd3['push'](_0x5c246c);}return this[_0x57e361(0x208,_0x4a2f93._0x24ee34,_0x4a2f93._0x5a241c,_0x4a2f93._0x1ba5a4)+'ns'](),this[_0x57e361(_0x4a2f93._0x2b0edd,0x175,_0x4a2f93._0x40f281,_0x4a2f93._0x474236)](_0x165340[_0x3e7b50(_0x4a2f93._0x1061f0,_0x4a2f93._0x3864b3,0xe7,0x1be)],_0x2bef95),!![];}['renameSess'+_0x459bd0(0x436,0x432,0x470,0x498)](_0x488e79,_0x3a2445){const _0x45b860={_0x3d38b2:0x1eb,_0x20533f:0x20c,_0x5084c4:0x101,_0x1abc9f:0x17d,_0x4efe8d:0x134,_0x171ff7:0x11b,_0x41f01e:0x1c4,_0x120111:0x10d,_0x308f78:0xae,_0x430f4d:0xf6,_0x2f6319:0x18c,_0x32184e:0x108,_0x2dd193:0x135,_0x4eebb0:0x1a1,_0x247fba:0x23a,_0x39a563:0x1a6,_0x528835:0x123,_0x41ecad:0x18f},_0x5648c7={_0x3b50ca:0xf5},_0x9bac96={};function _0x1d4abd(_0x5bf134,_0x4279a7,_0x1693fb,_0x5c5daa){return _0x5dabbc(_0x5bf134-0x1d3,_0x4279a7-0x7b,_0x4279a7- -0x63d,_0x5bf134);}_0x9bac96[_0x347e76(-0x152,-_0x45b860._0x3d38b2,-0x1c3,-_0x45b860._0x20533f)]='sessionRen'+_0x347e76(-_0x45b860._0x5084c4,-0xe0,-0xd6,-_0x45b860._0x1abc9f);const _0x39d03b=_0x9bac96,_0x3ce249=this[_0x1d4abd(-0x1b1,-_0x45b860._0x4efe8d,-_0x45b860._0x171ff7,-0x18b)][_0x1d4abd(-_0x45b860._0x41f01e,-0x14b,-_0x45b860._0x120111,-_0x45b860._0x308f78)](_0x488e79);if(!_0x3ce249)return![];function _0x347e76(_0x45e1dd,_0x3986d7,_0x44278e,_0x76eabb){return _0x5dabbc(_0x45e1dd-_0x5648c7._0x3b50ca,_0x3986d7-0x101,_0x3986d7- -0x691,_0x44278e);}return _0x3ce249[_0x347e76(-0x85,-_0x45b860._0x430f4d,-0x137,-_0x45b860._0x2f6319)]=_0x3a2445,this[_0x347e76(-_0x45b860._0x32184e,-_0x45b860._0x2dd193,-_0x45b860._0x4eebb0,-0x1b3)+'ns'](),this[_0x1d4abd(-_0x45b860._0x247fba,-_0x45b860._0x39a563,-_0x45b860._0x528835,-_0x45b860._0x41ecad)](_0x39d03b['cUzKZ'],_0x488e79,_0x3a2445),!![];}[_0x5dabbc(0x4ef,0x51b,0x52e,0x561)+_0x5dabbc(0x579,0x4e9,0x555,0x4f0)](_0x5db81c){const _0x29e675={_0x8ca692:0x30c,_0x1932ad:0x239,_0x54dcd8:0x3ac,_0x10fbbf:0x2d1,_0x413710:0x315,_0xee669f:0x3bb,_0x47cc92:0x3df,_0xc2c534:0x195,_0x72422a:0x197,_0x5e8cc1:0x3aa,_0x396c5e:0x3ac,_0x458871:0x361,_0xb0cd4d:0x3b6,_0x59066c:0x399},_0x42a15a={_0x2db233:0x1f3},_0x2743e9={_0x3fbdd9:0x85},_0x5488e0=this['sessions'][_0x2bebf0(0x325,0x32f,0x2fc,_0x29e675._0x8ca692)](_0x5db81c);if(!_0x5488e0)return;function _0x2bebf0(_0x35d95c,_0x441dec,_0x493ee1,_0x4724ba){return _0x5dabbc(_0x35d95c-0x19a,_0x441dec-_0x2743e9._0x3fbdd9,_0x441dec- -0x1c3,_0x35d95c);}function _0xa38ec0(_0x429c52,_0x4f7d9a,_0x54519d,_0x44c183){return _0x459bd0(_0x429c52- -0x5b9,_0x54519d,_0x54519d-0x31,_0x44c183-_0x42a15a._0x2db233);}this[_0x2bebf0(0x3e8,0x391,0x3c3,0x3d0)+_0xa38ec0(-0x1a5,-0x22c,-0x174,-0x1e2)][_0xa38ec0(-0x228,-_0x29e675._0x1932ad,-0x2ab,-0x233)](_0x5db81c,[]),_0x5488e0[_0x2bebf0(_0x29e675._0x54dcd8,0x395,0x385,0x368)+_0x2bebf0(_0x29e675._0x10fbbf,0x2ec,_0x29e675._0x413710,0x2c4)]=null,this[_0x2bebf0(_0x29e675._0xee669f,_0x29e675._0x47cc92,0x3e4,0x384)+_0x2bebf0(0x2a1,0x2e7,0x266,0x332)+'xt']['delete'](_0x5db81c),this[_0xa38ec0(-_0x29e675._0xc2c534,-_0x29e675._0x72422a,-0x1ed,-0x212)+_0x2bebf0(_0x29e675._0x5e8cc1,_0x29e675._0x396c5e,_0x29e675._0x458871,_0x29e675._0xb0cd4d)](_0x5db81c),this[_0x2bebf0(0x3cb,_0x29e675._0x59066c,0x302,0x32c)+'ns']();}[_0x459bd0(0x47d,0x455,0x4cf,0x50e)+_0x5dabbc(0x4eb,0x42b,0x480,0x472)](_0x10df54){const _0x32613c={_0x209f3f:0x1b8,_0x206da2:0x1ba,_0x35f8bb:0x241,_0x5c98b8:0x107,_0x44d6f9:0x15b,_0x4531ab:0xc8,_0x4e6f65:0x245,_0x1f5c65:0x201,_0x56de10:0x24d,_0x2108e1:0x1ae,_0x193c36:0x232,_0x2f1b59:0x29a,_0x54fc7e:0x25c,_0x3c7389:0x2ca,_0xaa8fa0:0x73,_0x15b61d:0x2d1,_0x58b814:0x28e,_0x4229b6:0x2dc,_0x329206:0x222,_0x1e7964:0xcf,_0x285959:0x6a,_0x26aa63:0xcb},_0x5944c4={_0x1b2d22:0x53},_0x3e56eb={_0x3530ac:0x3,_0x4d74c0:0x313};function _0xcef0c6(_0x308f92,_0x3909f1,_0x142c1c,_0x4ffeb7){return _0x5dabbc(_0x308f92-_0x3e56eb._0x3530ac,_0x3909f1-0x16,_0x142c1c- -_0x3e56eb._0x4d74c0,_0x3909f1);}function _0x1c6dd8(_0x29a85f,_0x2850b5,_0x3ebaf6,_0x4ce47f){return _0x5dabbc(_0x29a85f-0x14b,_0x2850b5-_0x5944c4._0x1b2d22,_0x2850b5- -0x6a7,_0x4ce47f);}const _0x34000a=this[_0xcef0c6(_0x32613c._0x209f3f,_0x32613c._0x206da2,_0x32613c._0x35f8bb,0x1e6)+_0x1c6dd8(-_0x32613c._0x5c98b8,-_0x32613c._0x44d6f9,-0xd9,-_0x32613c._0x4531ab)][_0x1c6dd8(-_0x32613c._0x4e6f65,-0x1b5,-_0x32613c._0x1f5c65,-_0x32613c._0x56de10)](_0x10df54)||[];let _0x34704b=-0x2046+0x17*-0x160+0x1*0x3fe6;for(const _0x4d7ba6 of _0x34000a){_0x34704b+=_0x4d7ba6[_0x1c6dd8(-0x1e6,-_0x32613c._0x2108e1,-0x170,-0x249)]?.[_0xcef0c6(_0x32613c._0x193c36,0x336,_0x32613c._0x2f1b59,_0x32613c._0x54fc7e)]||-0x28b+-0x1451+0x16dc;if(_0x4d7ba6['toolOutput'])_0x34704b+=_0x4d7ba6['toolOutput'][_0xcef0c6(0x31d,0x326,_0x32613c._0x2f1b59,_0x32613c._0x3c7389)];if(_0x4d7ba6[_0x1c6dd8(-0x14f,-0x106,-0xf0,-_0x32613c._0xaa8fa0)])_0x34704b+=JSON['stringify'](_0x4d7ba6[_0xcef0c6(0x2fc,_0x32613c._0x15b61d,_0x32613c._0x58b814,_0x32613c._0x4229b6)])['length'];}const _0x42b5d2={};return _0x42b5d2[_0xcef0c6(0x1ff,0x29d,_0x32613c._0x329206,0x1cc)]=_0x34000a[_0x1c6dd8(-0x87,-0xfa,-_0x32613c._0x1e7964,-_0x32613c._0x285959)],_0x42b5d2[_0x1c6dd8(-0x114,-0x126,-0xa9,-_0x32613c._0x26aa63)]=_0x34704b,_0x42b5d2;}[_0x459bd0(0x3ab,0x354,0x42d,0x3c7)+_0x5dabbc(0x4e6,0x41f,0x47f,0x4c1)](_0x2acb99,_0x424406,_0x48a105){const _0x26c226={_0x32aafe:0x71,_0x533744:0x118,_0x4c1ae7:0xea,_0x3eaae0:0x130,_0x126a74:0x550,_0x17307f:0x41c,_0x50deb3:0x10d,_0x2111b3:0xa3,_0x236644:0x117,_0x75d19e:0x11e,_0x53ee69:0x12e,_0xd2fbb4:0x465,_0x24ddbc:0x3f4,_0xa6ba77:0x4a2,_0x3659e8:0x4ac,_0xcc365d:0x3eb,_0x154b44:0x474,_0x2c7c0f:0x406,_0x48c602:0x4ea,_0x5a4a8d:0x4c9,_0x29d51d:0x518,_0x3e393c:0x11f,_0x578270:0x18d,_0x4f9894:0x15d,_0x143934:0x4ce,_0x1c0d50:0x496,_0x2758b0:0xdd,_0x43d17b:0x149,_0x491c43:0x373,_0xaf8c45:0x86,_0x4a3e7a:0x3c,_0x5f0722:0x34,_0x34e495:0x1e3,_0x4dcca5:0x171,_0x2ea60d:0x47a,_0x372362:0x51a,_0x457c53:0x42a,_0x2e1f8c:0x46d,_0x3d088c:0xf2,_0x8caef1:0x68,_0x1e55cc:0x2b,_0x5cad48:0x3ef,_0xeb1b74:0x365,_0x3f0811:0x4fb,_0x58b961:0x515,_0x17240f:0xc2,_0x2bfa12:0xb3,_0x37f944:0x111,_0xb02bc0:0x154,_0xadb76c:0x420,_0x3619d4:0x453,_0x1258a3:0xbe,_0x5499ef:0x45,_0x2c21ca:0x7e,_0x45cbbd:0xeb,_0xb5b358:0x349,_0x5c48db:0x332,_0x404dff:0xc4,_0x1bab85:0x500,_0x44457c:0x4e7,_0x9ef629:0x4f9},_0x2c3354={_0x46a4c4:0x7c,_0x4c7193:0x1b,_0xad8b69:0x74},_0x5c51c7={_0x521649:0x4e8,_0x3a3747:0x13a},_0x177fd3={};_0x177fd3['dpKiJ']=_0x350d4f(-0x14a,-0x97,-0x126,-0x15b),_0x177fd3[_0x350d4f(-_0x26c226._0x32aafe,-_0x26c226._0x533744,-_0x26c226._0x4c1ae7,-_0x26c226._0x3eaae0)]=function(_0x5e4db0,_0x315332){return _0x5e4db0===_0x315332;};function _0x350d4f(_0x354e27,_0x91838b,_0x5a97cf,_0x3cf10d){return _0x459bd0(_0x5a97cf- -_0x5c51c7._0x521649,_0x3cf10d,_0x5a97cf-_0x5c51c7._0x3a3747,_0x3cf10d-0x17c);}_0x177fd3['MKrsl']=_0x3ecb03(0x4b6,_0x26c226._0x126a74,_0x26c226._0x17307f,0x497);const _0x2bfbe6=_0x177fd3,_0x29fd64=this[_0x350d4f(-_0x26c226._0x50deb3,-_0x26c226._0x2111b3,-_0x26c226._0x236644,-_0x26c226._0x75d19e)][_0x350d4f(-0x90,-0xa6,-_0x26c226._0x53ee69,-0xfd)](_0x2acb99);if(!_0x29fd64)return;const _0x20d7f8={'id':_0x3ecb03(0x452,_0x26c226._0xd2fbb4,_0x26c226._0x24ddbc,0x3cd)+Date[_0x3ecb03(0x423,_0x26c226._0xa6ba77,_0x26c226._0x3659e8,_0x26c226._0xcc365d)](),'type':_0x2bfbe6[_0x3ecb03(0x409,_0x26c226._0x154b44,_0x26c226._0x2c7c0f,0x411)],'content':'Conversati'+'on\x20Compact'+_0x3ecb03(_0x26c226._0x48c602,0x45d,_0x26c226._0x5a4a8d,_0x26c226._0x29d51d)+_0x424406+(_0x350d4f(-0xaf,-0xed,-_0x26c226._0x3e393c,-0x168)+'n)'),'timestamp':Date[_0x350d4f(-0x159,-_0x26c226._0x578270,-0x141,-_0x26c226._0x4f9894)]()};function _0x3ecb03(_0x23f6b9,_0x4be1e8,_0x4154ab,_0x3e59ed){return _0x459bd0(_0x23f6b9-_0x2c3354._0x46a4c4,_0x4be1e8,_0x4154ab-_0x2c3354._0x4c7193,_0x3e59ed-_0x2c3354._0xad8b69);}this[_0x3ecb03(0x498,_0x26c226._0x143934,_0x26c226._0x1c0d50,0x4b7)+_0x350d4f(-_0x26c226._0x2758b0,-0xd8,-0xd4,-_0x26c226._0x43d17b)][_0x3ecb03(0x40d,_0x26c226._0x491c43,0x3ae,0x388)](_0x2acb99,[_0x20d7f8]),_0x29fd64[_0x350d4f(-_0x26c226._0xaf8c45,-_0x26c226._0x4a3e7a,-0xc8,-_0x26c226._0x5f0722)+_0x350d4f(-0x15b,-_0x26c226._0x34e495,-_0x26c226._0x4dcca5,-0x11b)]=null,_0x48a105&&(_0x2bfbe6[_0x3ecb03(_0x26c226._0x2ea60d,0x48b,_0x26c226._0x372362,_0x26c226._0x457c53)]('wMkkj',_0x2bfbe6[_0x3ecb03(0x504,_0x26c226._0x2e1f8c,0x4bd,0x507)])?_0x2e9707[_0x350d4f(-0xe5,-_0x26c226._0x3d088c,-_0x26c226._0x8caef1,_0x26c226._0x1e55cc)](_0x3ecb03(_0x26c226._0x5cad48,_0x26c226._0xeb1b74,0x34d,0x34d)+_0x3ecb03(0x4f3,_0x26c226._0x3f0811,_0x26c226._0x58b961,0x49d)+_0x350d4f(-_0x26c226._0x17240f,-_0x26c226._0x2bfa12,-0xfe,-_0x26c226._0x37f944),_0x45528a):_0x29fd64[_0x350d4f(-0x136,-0x139,-_0x26c226._0xb02bc0,-0xc3)+_0x3ecb03(0x48a,0x48a,_0x26c226._0xadb76c,_0x26c226._0x3619d4)+'ry']=_0x48a105),this[_0x350d4f(-_0x26c226._0x1258a3,-_0x26c226._0x5499ef,-_0x26c226._0x2c21ca,-0xaa)+_0x350d4f(-_0x26c226._0x45cbbd,-0x193,-0x176,-0x207)+'xt'][_0x3ecb03(0x3cc,_0x26c226._0xb5b358,_0x26c226._0x5c48db,0x459)](_0x2acb99),this[_0x350d4f(-0xc8,-0x9e,-_0x26c226._0x404dff,-0x128)+'nMessages'](_0x2acb99),this[_0x3ecb03(0x4a0,_0x26c226._0x1bab85,_0x26c226._0x44457c,_0x26c226._0x9ef629)+'ns']();}[_0x5dabbc(0x58b,0x5b5,0x5bf,0x65a)+_0x5dabbc(0x51b,0x513,0x4cd,0x532)+'terCompact'+_0x459bd0(0x436,0x416,0x470,0x4d2)](_0x3d6589,_0xf89a01){const _0x7ac83c={_0x3c1f47:0x255,_0x461f4c:0x288,_0x24a6ca:0x21f,_0x522a17:0x139,_0x213648:0x1de,_0x5d70bb:0x1fd,_0xc56e0f:0x1a7,_0x9eb73e:0x232,_0x29ef31:0xce,_0x262703:0xc1,_0x40a3e5:0x113,_0x278639:0x12c},_0x5f21bb={_0x5a7b39:0x6a,_0x1fd3e0:0x688},_0x162796={_0x45feaa:0x1af},_0x462950=this[_0x27cd6f(-_0x7ac83c._0x3c1f47,-0x1bf,-0x227,-0x1d8)][_0x27cd6f(-_0x7ac83c._0x461f4c,-_0x7ac83c._0x24a6ca,-0x205,-0x1ef)](_0x3d6589);function _0x27cd6f(_0xbe4b0e,_0x287393,_0x1e79f5,_0x368a76){return _0x5dabbc(_0xbe4b0e-_0x162796._0x45feaa,_0x287393-0x126,_0x368a76- -0x6e1,_0x1e79f5);}function _0x19954d(_0x27f7e9,_0x16aecd,_0x5820de,_0x4a83c0){return _0x5dabbc(_0x27f7e9-_0x5f21bb._0x5a7b39,_0x16aecd-0x49,_0x4a83c0- -_0x5f21bb._0x1fd3e0,_0x16aecd);}_0x462950&&(_0x462950[_0x27cd6f(-_0x7ac83c._0x522a17,-_0x7ac83c._0x213648,-_0x7ac83c._0x5d70bb,-0x189)+_0x27cd6f(-0x252,-0x2ab,-_0x7ac83c._0xc56e0f,-_0x7ac83c._0x9eb73e)]=_0xf89a01,this[_0x19954d(-_0x7ac83c._0x29ef31,-_0x7ac83c._0x262703,-_0x7ac83c._0x40a3e5,-_0x7ac83c._0x278639)+'ns']());}[_0x5dabbc(0x5c1,0x4aa,0x529,0x588)+_0x459bd0(0x349,0x341,0x352,0x371)+_0x5dabbc(0x591,0x565,0x5b6,0x52e)](_0x161151){const _0x10f793={_0x443a66:0x298,_0x491b5b:0x214,_0x17eb28:0x21c,_0x158b0e:0x1f1,_0x4b2bed:0x1f6,_0x323b38:0x5f},_0x40f836={_0x2ebc4a:0xd7},_0xdd6ba7={_0x5051c2:0x1e8},_0x34004c=this[_0x439479(_0x10f793._0x443a66,0x2a6,0x233,_0x10f793._0x491b5b)][_0x439479(0x19f,0x18a,_0x10f793._0x17eb28,0x25d)](_0x161151);function _0x19c2ed(_0x32ad8b,_0xa8f81f,_0x14d72d,_0x17e9a1){return _0x5dabbc(_0x32ad8b-_0xdd6ba7._0x5051c2,_0xa8f81f-0x1d0,_0x17e9a1- -0x5a5,_0xa8f81f);}function _0x439479(_0x336f3b,_0x45e6b9,_0x142c94,_0x48e700){return _0x459bd0(_0x142c94- -0x19e,_0x45e6b9,_0x142c94-_0x40f836._0x2ebc4a,_0x48e700-0x17);}return _0x34004c?.[_0x439479(_0x10f793._0x158b0e,0x279,_0x10f793._0x4b2bed,0x231)+_0x19c2ed(-0xa8,-0x1c,-0x4e,-_0x10f793._0x323b38)+'ry']||null;}[_0x459bd0(0x3c4,0x32f,0x35c,0x3db)+_0x459bd0(0x476,0x446,0x4d8,0x50e)](_0x2b6e91,_0x5f99eb){const _0x527867={_0x263029:0x159,_0x3963ba:0x3f,_0x565933:0xaa,_0xd72f51:0xde},_0xc8f696={_0x86002f:0x192},_0x411aa6={_0x5392a4:0x79,_0x3db80b:0x2a};function _0x1bb2c7(_0x2a96f9,_0x1f4d14,_0x54b708,_0x3ceff5){return _0x459bd0(_0x3ceff5-_0x411aa6._0x5392a4,_0x54b708,_0x54b708-_0x411aa6._0x3db80b,_0x3ceff5-0x1aa);}const _0x1aca1d=this['sessions'][_0x175edb(-0x187,-_0x527867._0x263029,-0x114,-_0x527867._0x263029)](_0x2b6e91);function _0x175edb(_0x2ff417,_0x1ef6ce,_0x167250,_0x3c64cd){return _0x459bd0(_0x167250- -0x4ce,_0x2ff417,_0x167250-0xcb,_0x3c64cd-_0xc8f696._0x86002f);}_0x1aca1d&&(_0x1aca1d['previousCo'+'ntextSumma'+'ry']=_0x5f99eb,this[_0x175edb(-_0x527867._0x3963ba,-0x122,-_0x527867._0x565933,-_0x527867._0xd72f51)+'ns']());}[_0x459bd0(0x44a,0x461,0x3e8,0x482)+_0x5dabbc(0x504,0x4a3,0x52a,0x4c4)+'n'](_0x2dfcba){const _0x50f801={_0x4f54b1:0x1d8,_0x4470b7:0x151,_0xe54c63:0xdb,_0x1cdb9f:0x180,_0x40a3f5:0x47,_0x56f095:0x1b9,_0x47b3c2:0x1d8},_0x132276={_0x2318d3:0x5fd,_0x4b7800:0x185},_0x48e311={_0x193ac6:0x1ca};function _0x20ab9b(_0x1ac468,_0x18c7a7,_0x34b4ff,_0x27d179){return _0x459bd0(_0x1ac468- -0x292,_0x34b4ff,_0x34b4ff-0xd1,_0x27d179-_0x48e311._0x193ac6);}function _0x3bb91d(_0x11e3fc,_0x1737c1,_0x309609,_0x30793e){return _0x459bd0(_0x30793e- -_0x132276._0x2318d3,_0x1737c1,_0x309609-_0x132276._0x4b7800,_0x30793e-0x111);}return this[_0x20ab9b(_0x50f801._0x4f54b1,_0x50f801._0x4470b7,0x216,0x264)+_0x20ab9b(0xe0,_0x50f801._0xe54c63,_0x50f801._0x1cdb9f,_0x50f801._0x40a3f5)+'xt'][_0x3bb91d(-_0x50f801._0x56f095,-0x22d,-0x1c7,-_0x50f801._0x47b3c2)](_0x2dfcba);}[_0x5dabbc(0x612,0x58f,0x591,0x630)+_0x459bd0(0x3fc,0x415,0x377,0x497)](_0x1aa7ab){const _0x571871={_0x2b46f5:0xd1,_0x5018ab:0x17f,_0x2da844:0x1df},_0x458dbc={_0xf1a498:0x435},_0x59ce05={_0x2cbb2c:0x4f1,_0x4b8773:0xfa};function _0x5c0853(_0x5ab4f9,_0x3a85d1,_0x226b64,_0x57b6df){return _0x459bd0(_0x5ab4f9- -_0x59ce05._0x2cbb2c,_0x226b64,_0x226b64-_0x59ce05._0x4b8773,_0x57b6df-0xf2);}function _0x4701cf(_0x222a43,_0x21d47d,_0x312862,_0x43ebe8){return _0x459bd0(_0x43ebe8- -_0x458dbc._0xf1a498,_0x312862,_0x312862-0x154,_0x43ebe8-0x1aa);}this[_0x5c0853(-0x87,-0x29,-0xc1,-_0x571871._0x2b46f5)+_0x5c0853(-_0x571871._0x5018ab,-0x147,-0x139,-_0x571871._0x2da844)+'xt']['delete'](_0x1aa7ab);}async[_0x5dabbc(0x5aa,0x560,0x57f,0x527)+'xtSummary'](_0x188ed0,_0xdb07f0,_0x3649bb){const _0x2ba411={_0x2444a6:0x172,_0x368f9c:0x152,_0x40d4a5:0x104,_0x2433af:0x64,_0x820739:0x4c2,_0x55f666:0x4c1,_0x3c1ade:0x45e,_0x17f681:0x167,_0x2d41e2:0x87,_0x1877d0:0x7,_0x1795f7:0x141,_0x3b6bcc:0x15a,_0x9698a2:0xd,_0x252c73:0x8c,_0x46b6b4:0x438,_0x329c8c:0x42e,_0xddfeb1:0x4e1,_0x1899e1:0x42a,_0x3ab663:0x47e,_0x106904:0x497,_0x5a8427:0x12c,_0x4eb08e:0x96,_0x59219a:0x462,_0x368f11:0x108,_0xce5fef:0x7a,_0x221592:0x527,_0x4b9f9d:0x49f,_0x27368a:0x4db,_0x50c829:0x3b5,_0x154c0b:0x429,_0x4ee8db:0xe2,_0x15058c:0xfc,_0x39b55e:0xac,_0x37aeea:0xd7,_0x1db800:0x80,_0x576498:0x11b,_0xf7ef4f:0xa2,_0x1fe1c4:0x9b,_0x409276:0x123,_0x14e938:0xe1,_0x461a02:0x168,_0x49d1df:0x1dc,_0x282252:0x5ad,_0x16ab47:0x53c,_0x184ba7:0x4fb,_0x3cd25b:0x549,_0x45df91:0x5,_0xba904b:0x49,_0x259a4e:0x50,_0x52fe8e:0x1ab,_0x4f8425:0x11a,_0x15a073:0x170,_0x47303b:0xfd,_0x517862:0xde,_0x7fcf85:0x70,_0x110a64:0x41d,_0x491fe8:0x4d4,_0x48f06e:0x9f,_0x131cd2:0x3fd,_0x36c816:0x472,_0x1f3ccd:0x4c7,_0x439779:0x4d9,_0x53c9b3:0x501,_0x33c15e:0x572,_0x5a5629:0x4e2,_0x31be3d:0x497,_0xf7fdf3:0x526,_0x45fd54:0x53a,_0x503cc7:0x14b,_0x40e252:0x37,_0x50a8e8:0x4d,_0x48d0a2:0x38,_0x5e9f83:0x4b7,_0x1f5481:0x4ae,_0x24d414:0x46f,_0x2832bf:0xed,_0x34d6be:0x4e9,_0x177527:0x513,_0x3d70a8:0x99,_0x5b3179:0x8e,_0x49a54a:0x52d,_0x3d902f:0x4aa,_0x5df2bf:0x522,_0x2f213d:0x578,_0x2ca443:0x581,_0x3d177:0x3f0,_0x3919da:0x42a,_0xffb22c:0x40b,_0x4d6fe2:0x133,_0x3a6281:0x114,_0x1786a5:0x108,_0x2e66eb:0x17a,_0x587511:0xbe,_0x368a7f:0xe6,_0x28768a:0x579,_0xa9e871:0x5c8,_0x2d402a:0x4,_0x4b9435:0x27,_0x9283b4:0x4ba,_0x45f827:0x490,_0x22f331:0x43d,_0x4348e2:0x50a,_0x5d16ee:0x4bb,_0x33421f:0x474,_0x2464c5:0x55b,_0x48e790:0x3d1,_0x376f86:0x425,_0xfba16b:0x7d,_0x1652cb:0x42,_0x496713:0xc3,_0x4aa616:0x8b,_0x5ec49d:0xb9,_0x3caec7:0xbf,_0x51b889:0x8a,_0x185ee2:0x40e,_0x3c2843:0x499,_0x25e40a:0x4e3,_0x1dbbdf:0x4b5,_0xc2a40e:0x52c,_0x50e847:0x50b,_0x50e11c:0x491,_0x13f7e9:0x5bd,_0xb1b63:0x5b5,_0x3e5027:0x4f1,_0x1f4771:0x41b,_0x3da4bf:0x47c,_0x356f6f:0x4f3,_0x4f7b3b:0x54,_0x213aa0:0xdb,_0x1bb65e:0x435,_0x21bcb9:0x3fd,_0x4e2ba6:0x4ad,_0x33d529:0x448,_0x1f76f4:0x4b2,_0x4467cf:0x129,_0x49d5da:0xc7,_0x11abc7:0x45c,_0x2bd1c0:0x43e,_0x99520d:0x4db,_0x4bd040:0x465,_0x780c17:0x471,_0x1ba0cd:0x3f7,_0x4bf9c1:0x148,_0x1b0897:0x153,_0x3091c1:0x537,_0x27d65e:0x4f9,_0x476a26:0x16f,_0x5ada39:0xd4,_0x3d4fb7:0x142,_0x2152ed:0x47d,_0x230cd1:0x4ca,_0x5a4919:0x41d,_0x137c04:0x137,_0x37b4ca:0x46e,_0x52c6f4:0x4be,_0xecc067:0x51e,_0x2952fa:0x102,_0x9a66e4:0x15f,_0xc80a97:0x142,_0x19bf08:0xbb,_0x1d50f:0x120,_0x272f2d:0x437,_0x46b6a5:0x398,_0x2ee2af:0x4b6,_0x4cb872:0x4fa,_0x1bf3ef:0x57b,_0x300297:0x5dc,_0x2f2714:0x57e,_0xa2ec0:0xb4,_0x10e2d8:0x32,_0x1cb352:0x15,_0x4cb92e:0x48a,_0x470f0f:0x4cd,_0x9997c4:0x485,_0x5b9fd7:0x460,_0x5d45b0:0x84,_0x3633d9:0x4ab,_0x1f7e4c:0x477,_0x56a9b8:0x4a5,_0x28da88:0x187,_0x220c2b:0x10f,_0x35dffa:0x1a6,_0x472205:0x152,_0x1c33bb:0x181,_0x552645:0xf7,_0x1ff98a:0x12a,_0x54151c:0x3ae,_0x13e656:0x42c,_0x9ddd5f:0x469,_0x59e7c5:0x517,_0x5013ef:0x478,_0x768389:0x58c,_0xd7128d:0x492,_0x31e1df:0x3fc,_0x163a79:0x46d,_0x30f0a7:0x405,_0x4f3896:0x3ee,_0x41533b:0x5af,_0x35c0bb:0x523,_0x29d813:0x570,_0x28d856:0x4a8,_0x311346:0x161,_0x37eee0:0x38d,_0x1408f6:0x403,_0x392755:0x3c9,_0x2435d9:0x439,_0x4a69ac:0x3f0,_0x9033cc:0x597,_0xc0f973:0x500,_0x2c7831:0x4da,_0x275e8b:0x4ce,_0x13990f:0x458,_0x11aab4:0x486,_0x2e3aed:0x48c,_0x4c842c:0x4d8,_0x4c61c0:0x13d,_0x2862dc:0x14,_0x23316d:0x7a,_0x55aee1:0x3b,_0x1ef0d6:0xd5,_0x59c1fb:0x116,_0x4fcb27:0x3da,_0x32b2c7:0x500,_0x5a0ce7:0x4d6,_0xcadfa0:0x46b,_0x2c1938:0x56,_0x33fab4:0x117,_0x339df0:0xd8,_0x57194f:0x58,_0x575f51:0x4d2,_0x1f3657:0x534,_0x4a09f5:0x4e2,_0x245b40:0x4b3,_0x552bc2:0x4fe,_0x445ec5:0x101,_0x5d3a25:0xa0,_0xa4973a:0x120,_0x5b8cae:0x121,_0x4541d1:0x3a0,_0x2f3876:0x54f,_0x419851:0x574,_0x4fd13d:0x57a,_0x1f4361:0x560,_0x1cd6ef:0xbf,_0xa79ce2:0xc0,_0x5c2cde:0x18a,_0x407809:0x157,_0x28d2b7:0x4e7,_0x5303d3:0x42,_0x2cd59a:0x15,_0x55d528:0x44,_0x1eb5e5:0x469,_0x58dd7a:0x43f,_0x2e5fff:0x43d,_0x2325d8:0x10a,_0xe44d83:0x95,_0x1d93da:0xf7,_0x551714:0x44f,_0x53feac:0x415,_0x407b99:0x4fd,_0xf4e8:0x48e,_0x1a6fcc:0x52d,_0x5e02e5:0x56b,_0x39a5ab:0x3ea,_0x21637b:0x4a5,_0x55fff2:0x4de,_0x45ed6e:0x4bc,_0x15eaa5:0xec,_0x4d6925:0x4e6,_0x5f4810:0x538,_0x7dce1a:0x51,_0x5870ba:0x57,_0x4f2413:0x40,_0xf12381:0xb4,_0x584d1f:0xcd,_0x1a814c:0x591,_0x5c2aa7:0x4f4,_0x1290eb:0x578,_0x151c5e:0x51f,_0x596698:0x4c8,_0x5cd058:0x30,_0x4790c3:0x583,_0x14f8cc:0x9e,_0x39424b:0x11a,_0x8a551f:0x4d0,_0x3b2162:0x4b0,_0xb24261:0x433,_0x548ec1:0x43b,_0xcd560a:0x3c1,_0x2d712c:0x44f,_0xd50f2d:0x3f1,_0x1fdf21:0x4ce,_0x304a0d:0x436,_0x898adf:0x52d,_0x5bedfb:0xd2,_0x5c8008:0xb4,_0x330440:0x12f,_0x2346cf:0x1a7,_0x1f285c:0xe9,_0x25e0bc:0xf9,_0x235b68:0x65,_0x174ed8:0x55d,_0x1abffc:0x515,_0x3c790a:0x487,_0x1fd228:0x51d,_0x3d8c2d:0x2c,_0x5a576b:0x535,_0x56495b:0x2f,_0x12e19c:0x143,_0x5ea608:0xcf,_0x455eba:0xee,_0x154388:0x71,_0xbd441:0x3c,_0x4a9431:0x58,_0x3d910a:0x196,_0x13e2da:0x151,_0x555b7f:0xd0,_0x37eb04:0x5f,_0x484518:0x3e,_0x5d1023:0x392,_0x263af2:0x4a9,_0x387f83:0x165,_0x579aaa:0x46a,_0xe28cb1:0x44c,_0x57d919:0x4a3,_0x23b0cf:0x4a6,_0x495bb3:0x430,_0x2400b4:0x45f,_0x513de9:0x3c4,_0x33625b:0x452},_0x3e202c={_0xf7709f:0x1bd,_0x1976aa:0x11b,_0x195b97:0x23a,_0x5aa46b:0x1b0,_0x5a79f8:0x16a,_0x5047d3:0x101,_0x417f40:0x187,_0xfa183:0xf0,_0x340324:0x178,_0x2548db:0x1ca,_0x591353:0x23c,_0x5ae4b8:0x1c9},_0x34f169={_0x13dcef:0x17,_0x59a75d:0xcd},_0x1adda6={};_0x1adda6[_0x4b7fa7(-_0x2ba411._0x2444a6,-_0x2ba411._0x368f9c,-_0x2ba411._0x40d4a5,-0x12a)]=function(_0xd1e75c,_0x3c90eb){return _0xd1e75c>_0x3c90eb;},_0x1adda6['iOcOb']=function(_0xd57d09,_0x12899b){return _0xd57d09===_0x12899b;},_0x1adda6[_0x4b7fa7(-_0x2ba411._0x2433af,-0xa7,-0x7c,-0x6d)]=_0x3004fd(_0x2ba411._0x820739,0x420,_0x2ba411._0x55f666,_0x2ba411._0x3c1ade),_0x1adda6['oCdru']=_0x4b7fa7(-0x110,-0x1f1,-_0x2ba411._0x17f681,-0xd5),_0x1adda6['PNWtT']=function(_0x2001d9,_0x8066d4){return _0x2001d9+_0x8066d4;},_0x1adda6[_0x4b7fa7(-0x38,-0x7c,-_0x2ba411._0x2d41e2,-_0x2ba411._0x1877d0)]=_0x4b7fa7(-_0x2ba411._0x1795f7,-0x133,-_0x2ba411._0x3b6bcc,-0x1b1),_0x1adda6[_0x4b7fa7(-0xa5,_0x2ba411._0x9698a2,-0x83,-_0x2ba411._0x252c73)]=function(_0x2c9e5d,_0x22c8be){return _0x2c9e5d===_0x22c8be;},_0x1adda6[_0x3004fd(0x45e,0x44f,_0x2ba411._0x46b6b4,_0x2ba411._0x329c8c)]=_0x3004fd(_0x2ba411._0xddfeb1,0x45c,_0x2ba411._0x1899e1,0x4a7),_0x1adda6[_0x3004fd(_0x2ba411._0x3ab663,_0x2ba411._0x106904,0x48f,0x4b9)]=function(_0x29aacd,_0x251ec6){return _0x29aacd>_0x251ec6;},_0x1adda6[_0x4b7fa7(-0x155,-0x144,-0x14b,-_0x2ba411._0x5a8427)]=function(_0xed4f9b,_0x31e91f){return _0xed4f9b===_0x31e91f;},_0x1adda6['CqNaj']=function(_0x426538,_0x450fa5){return _0x426538!==_0x450fa5;},_0x1adda6['ntIWo']=_0x4b7fa7(-_0x2ba411._0x4eb08e,-0x10,-0xa6,-0x84),_0x1adda6[_0x3004fd(_0x2ba411._0x59219a,0x4f1,0x4b0,0x479)]=_0x4b7fa7(-0x1a3,-0xb7,-_0x2ba411._0x1795f7,-_0x2ba411._0x368f11);function _0x4b7fa7(_0x30fa29,_0x40b14d,_0x1c828f,_0x47577a){return _0x459bd0(_0x1c828f- -0x4ad,_0x30fa29,_0x1c828f-_0x34f169._0x13dcef,_0x47577a-_0x34f169._0x59a75d);}_0x1adda6[_0x4b7fa7(-0x135,-0x8d,-0xe6,-_0x2ba411._0xce5fef)]=function(_0x666cc0,_0x2350e){return _0x666cc0+_0x2350e;},_0x1adda6[_0x4b7fa7(-0xfc,-0x118,-0xd8,-0x14d)]=function(_0x358aa2,_0x4be292){return _0x358aa2<_0x4be292;},_0x1adda6[_0x3004fd(0x517,0x4c4,0x439,0x4b0)]=function(_0xf7691e,_0x324893){return _0xf7691e||_0x324893;},_0x1adda6[_0x3004fd(_0x2ba411._0x221592,_0x2ba411._0x4b9f9d,0x495,_0x2ba411._0x27368a)]=_0x3004fd(_0x2ba411._0x50c829,0x411,0x3bc,_0x2ba411._0x154c0b),_0x1adda6[_0x4b7fa7(-_0x2ba411._0x4ee8db,-0x163,-_0x2ba411._0x15058c,-_0x2ba411._0x39b55e)]=_0x4b7fa7(-_0x2ba411._0x37aeea,-0x1b9,-0x11b,-0x185)+_0x3004fd(0x4d1,0x530,0x49f,0x58d)+_0x4b7fa7(-_0x2ba411._0x1db800,-_0x2ba411._0x576498,-_0x2ba411._0xf7ef4f,-_0x2ba411._0x1fe1c4),_0x1adda6[_0x4b7fa7(-_0x2ba411._0x409276,-_0x2ba411._0x14e938,-_0x2ba411._0x461a02,-_0x2ba411._0x49d1df)]=_0x3004fd(_0x2ba411._0x282252,_0x2ba411._0x16ab47,_0x2ba411._0x184ba7,_0x2ba411._0x3cd25b);function _0x3004fd(_0x410b81,_0x542b30,_0x5d9cf1,_0x2fe362){return _0x459bd0(_0x542b30-0xb8,_0x5d9cf1,_0x5d9cf1-0xc,_0x2fe362-0xd4);}_0x1adda6[_0x4b7fa7(-0x36,-_0x2ba411._0x45df91,-_0x2ba411._0xba904b,-_0x2ba411._0x259a4e)]=function(_0x5656c5,_0xb1edac){return _0x5656c5-_0xb1edac;},_0x1adda6[_0x4b7fa7(-_0x2ba411._0x52fe8e,-0x179,-_0x2ba411._0x4f8425,-0x157)]=function(_0x5ed435,_0x15fa91){return _0x5ed435>=_0x15fa91;},_0x1adda6[_0x4b7fa7(-_0x2ba411._0x15a073,-_0x2ba411._0x47303b,-_0x2ba411._0x517862,-_0x2ba411._0x7fcf85)]=function(_0xfeaf25,_0x50d5ee){return _0xfeaf25>_0x50d5ee;};const _0x13f259=_0x1adda6,_0x1d472c=this['sessions'][_0x3004fd(0x4e2,0x472,0x404,_0x2ba411._0x110a64)](_0x188ed0),_0x1fa260=this[_0x3004fd(0x471,_0x2ba411._0x491fe8,0x509,0x4e0)+_0x4b7fa7(-0x23,-0x17,-0x99,-_0x2ba411._0x48f06e)][_0x3004fd(_0x2ba411._0x131cd2,_0x2ba411._0x36c816,0x4c5,0x4c2)](_0x188ed0)||[],_0x18d90c=_0x1d472c?.[_0x3004fd(0x4ab,0x44c,0x496,_0x2ba411._0x1f3ccd)+_0x3004fd(_0x2ba411._0x439779,0x4c6,0x4e2,_0x2ba411._0x53c9b3)+'ry'];if(_0x13f259[_0x3004fd(_0x2ba411._0x33c15e,_0x2ba411._0x5a5629,0x4f6,_0x2ba411._0x31be3d)](_0x1fa260[_0x3004fd(_0x2ba411._0xf7fdf3,0x52d,0x5cc,_0x2ba411._0x45fd54)],0x23f9+-0x137*-0xf+-0x3632)&&!_0x18d90c)return null;const _0x4e3227=_0x1fa260['filter'](_0x34e18f=>_0x34e18f[_0x3004fd(0x4f1,0x4d0,0x53b,0x528)]===_0x3004fd(0x3df,0x420,0x48d,0x39e)||_0x34e18f[_0x3004fd(0x4ba,0x4d0,0x4c5,0x43a)]==='assistant');if(_0x13f259[_0x4b7fa7(-0x10a,-0x1dd,-_0x2ba411._0x503cc7,-0x1ab)](_0x4e3227[_0x4b7fa7(-_0x2ba411._0x40e252,-_0x2ba411._0x50a8e8,-_0x2ba411._0x48d0a2,-_0x2ba411._0x39b55e)],0x1*-0x23ae+0x1583+-0x27*-0x5d)&&!_0x18d90c){if(_0x13f259['CqNaj'](_0x13f259['ntIWo'],_0x13f259[_0x3004fd(0x4eb,0x4f1,_0x2ba411._0x5e9f83,0x4b2)]))return null;else{this[_0x3004fd(_0x2ba411._0x1f5481,0x489,_0x2ba411._0x24d414,0x46e)][_0x4b7fa7(-0x140,-0xe5,-0x11c,-_0x2ba411._0x2832bf)](_0xed7a2a['id'],_0x478a8d),this['loadSessio'+'nMessages'](_0x129b4c['id']);const _0x4e419b=this[_0x3004fd(0x527,0x4d4,_0x2ba411._0x34d6be,_0x2ba411._0x177527)+_0x4b7fa7(-0x60,-0x68,-_0x2ba411._0x3d70a8,-_0x2ba411._0x5b3179)][_0x3004fd(0x40b,0x472,0x479,0x42a)](_0x590546['id'])||[];_0x13f259['SEHnD'](_0x4e419b[_0x3004fd(0x52b,_0x2ba411._0x49a54a,_0x2ba411._0x3d902f,0x5a7)],-0x2*-0x10e1+-0xd*0x171+-0xf05)&&this[_0x3004fd(0x56a,_0x2ba411._0x5df2bf,_0x2ba411._0x2f213d,_0x2ba411._0x2ca443)+_0x3004fd(_0x2ba411._0x3d177,_0x2ba411._0x3919da,_0x2ba411._0xffb22c,0x47e)+'xt'][_0x4b7fa7(-_0x2ba411._0x4d6fe2,-0x13d,-_0x2ba411._0x3a6281,-_0x2ba411._0x1786a5)](_0x10a8ef['id']);}}const _0x40a683=_0x4e3227[_0x4b7fa7(-0x1a2,-0x112,-0x155,-_0x2ba411._0x2e66eb)](_0x1e0653=>{const _0x42e80f={_0x1f904e:0x20,_0x4ca6ab:0x1ab};function _0x5d8060(_0x2718d7,_0x23e8b2,_0x43c147,_0x44af4a){return _0x4b7fa7(_0x43c147,_0x23e8b2-0xcd,_0x23e8b2-0x1ea,_0x44af4a-0x1a4);}function _0x522fcf(_0x23e6a6,_0x1406d4,_0x13e540,_0x3514f2){return _0x3004fd(_0x23e6a6-_0x42e80f._0x1f904e,_0x13e540- -0x2af,_0x1406d4,_0x3514f2-_0x42e80f._0x4ca6ab);}const _0xdc10fa=_0x13f259[_0x5d8060(_0x3e202c._0xf7709f,0x17a,_0x3e202c._0x1976aa,0xe2)](_0x1e0653[_0x522fcf(0x29d,0x1d5,0x221,0x1ea)],_0x13f259[_0x522fcf(0x29f,0x1f5,_0x3e202c._0x195b97,0x200)])?_0x13f259['oCdru']:'Assistant',_0x5f5b95=_0x13f259[_0x522fcf(_0x3e202c._0x5aa46b,_0x3e202c._0x5a79f8,0x1b2,0x163)](_0x1e0653['content'][_0x522fcf(0x2ac,0x2f5,0x27e,0x267)],-0x1296+-0x12a6*-0x2+0x186*-0xb)?_0x13f259[_0x522fcf(0x13c,_0x3e202c._0x5047d3,_0x3e202c._0x417f40,_0x3e202c._0xfa183)](_0x1e0653[_0x522fcf(0x196,_0x3e202c._0x340324,_0x3e202c._0x2548db,_0x3e202c._0x591353)]['slice'](0x194e+0x2*-0x7dd+0x994*-0x1,-0x30*-0x45+-0x9*-0xbf+-0x1*0x11b3),_0x13f259['oIGNH']):_0x1e0653[_0x522fcf(0x1ed,0x1cd,_0x3e202c._0x2548db,_0x3e202c._0x5ae4b8)];return _0xdc10fa+':\x20'+_0x5f5b95;})['join']('\x0a\x0a'),_0xcec5a3=_0x13f259[_0x4b7fa7(-_0x2ba411._0x587511,-0x9a,-_0x2ba411._0x368a7f,-0x177)](_0x40a683[_0x3004fd(_0x2ba411._0x28768a,0x52d,0x58c,_0x2ba411._0xa9e871)],_0x18d90c?.[_0x4b7fa7(-0xa2,_0x2ba411._0x2d402a,-0x38,-_0x2ba411._0x4b9435)]||-0x1f67+0x146*-0xe+0x1*0x313b);if(_0x13f259[_0x3004fd(0x4ca,0x48d,_0x2ba411._0x9283b4,0x43f)](_0xcec5a3,0xd19+-0x1*-0x17bb+-0x20ec)){const _0x251e9f=_0x18d90c?_0x3004fd(_0x2ba411._0x45f827,_0x2ba411._0x22f331,0x40a,0x4cf)+'ontext:\x0a'+_0x18d90c+'\x0a\x0a':'',_0x13fffb=_0x4b7fa7(-_0x2ba411._0x40d4a5,-0x8c,-_0x2ba411._0x1786a5,-0x137)+_0x3004fd(_0x2ba411._0x4348e2,_0x2ba411._0x5d16ee,_0x2ba411._0x33421f,_0x2ba411._0x2464c5)+'US\x20SESSION'+']\x0a'+_0x251e9f+(_0x3004fd(_0x2ba411._0x48e790,_0x2ba411._0x376f86,0x3b8,0x391)+_0x4b7fa7(-_0x2ba411._0xfba16b,-_0x2ba411._0x1652cb,-0x3e,-0x6b)+'\x0a')+_0x40a683+('\x0a\x0aNow,\x20con'+_0x4b7fa7(-_0x2ba411._0x496713,-0x10e,-_0x2ba411._0x4aa616,-0x6d)+_0x4b7fa7(-0x68,-_0x2ba411._0x5ec49d,-_0x2ba411._0x3caec7,-_0x2ba411._0x51b889)+_0x4b7fa7(-0x5d,-0xad,-0xee,-0x150)+_0x3004fd(0x37d,_0x2ba411._0x185ee2,0x3cb,_0x2ba411._0x3c2843));return{'contextPrefix':_0x13fffb,'summary':_0x13f259[_0x3004fd(_0x2ba411._0x25e40a,0x4c4,0x4aa,_0x2ba411._0x1dbbdf)](_0x18d90c,_0x40a683)};}try{const _0x9da1e7=_0x18d90c?'\x0a\x0aPrevious'+_0x3004fd(0x5bb,_0x2ba411._0xc2a40e,_0x2ba411._0x50e847,_0x2ba411._0x50e11c)+_0x3004fd(_0x2ba411._0x13f7e9,0x53b,_0x2ba411._0xb1b63,_0x2ba411._0x3e5027)+_0x3004fd(0x4bc,_0x2ba411._0x1f4771,_0x2ba411._0x3da4bf,0x3f8)+'/compactio'+_0x3004fd(0x578,0x4ea,_0x2ba411._0x356f6f,0x56b)+_0x18d90c+'\x0a':'',_0x27f0d0=_0x4b7fa7(-0xec,-_0x2ba411._0x4f7b3b,-0xc9,-0x10a)+'this\x20conve'+'rsation\x20co'+_0x4b7fa7(-0xee,-_0x2ba411._0x213aa0,-0x12d,-_0x2ba411._0x15058c)+'r\x20context\x20'+_0x3004fd(0x448,_0x2ba411._0x1bb65e,_0x2ba411._0x21bcb9,0x499)+'n.\x20Include'+_0x3004fd(_0x2ba411._0x4e2ba6,0x43f,0x48a,0x3c5)+'opics\x20disc'+_0x3004fd(0x431,_0x2ba411._0x33d529,_0x2ba411._0x1f76f4,_0x2ba411._0x36c816)+_0x4b7fa7(-_0x2ba411._0x4467cf,-0x2c,-_0x2ba411._0x49d5da,-0x158)+_0x3004fd(_0x2ba411._0x11abc7,_0x2ba411._0x2bd1c0,0x3cf,_0x2ba411._0x99520d)+'ade\x0a3.\x20Cur'+'rent\x20state'+_0x3004fd(0x4b1,_0x2ba411._0x4bd040,_0x2ba411._0x780c17,_0x2ba411._0x1ba0cd)+_0x4b7fa7(-_0x2ba411._0x4bf9c1,-0x10a,-_0x2ba411._0x1b0897,-0x19c)+_0x3004fd(0x50e,_0x2ba411._0x3091c1,_0x2ba411._0x27d65e,0x4e9)+_0x4b7fa7(-0x118,-_0x2ba411._0x476a26,-_0x2ba411._0x5ada39,-_0x2ba411._0x3d4fb7)+_0x3004fd(_0x2ba411._0x2152ed,0x46d,_0x2ba411._0x230cd1,0x473)+_0x3004fd(0x462,0x486,0x400,0x520)+'rectories\x20'+_0x3004fd(0x540,0x4bd,_0x2ba411._0x5a4919,0x43f)+_0x4b7fa7(-0x195,-0xfc,-_0x2ba411._0x137c04,-0x113)+'ific\x20paths'+_0x3004fd(_0x2ba411._0x37b4ca,_0x2ba411._0x52c6f4,0x43b,_0x2ba411._0xecc067)+')\x0a'+(_0x18d90c?_0x4b7fa7(-0x1cc,-_0x2ba411._0x2952fa,-_0x2ba411._0x9a66e4,-_0x2ba411._0xc80a97)+_0x4b7fa7(-0x4,-_0x2ba411._0x19bf08,-0xa3,-_0x2ba411._0x1d50f)+'vious\x20cont'+_0x3004fd(0x4e2,0x4ce,0x526,0x559)+_0x3004fd(0x49c,_0x2ba411._0x272f2d,_0x2ba411._0x46b6a5,_0x2ba411._0x2ee2af)+_0x3004fd(_0x2ba411._0x4e2ba6,_0x2ba411._0x4cb872,_0x2ba411._0x1bf3ef,0x583)+_0x3004fd(_0x2ba411._0x300297,0x53b,_0x2ba411._0x2f2714,0x56b)+_0x4b7fa7(-0xb1,-_0x2ba411._0xa2ec0,-_0x2ba411._0x10e2d8,-_0x2ba411._0x1cb352)+_0x3004fd(0x4f8,_0x2ba411._0x4cb92e,_0x2ba411._0x470f0f,_0x2ba411._0x272f2d)+'\x20preserve\x20'+_0x3004fd(_0x2ba411._0x9997c4,0x4a1,0x41d,_0x2ba411._0x5b9fd7)+_0x4b7fa7(-_0x2ba411._0x5d45b0,-0x152,-0x10a,-0x16c)+_0x3004fd(0x537,_0x2ba411._0x3633d9,_0x2ba411._0x1f7e4c,0x50d)+_0x4b7fa7(-0xa3,0x4a,-0x48,0x2d)+_0x3004fd(_0x2ba411._0x56a9b8,0x43c,0x438,_0x2ba411._0x1dbbdf)+_0x4b7fa7(-_0x2ba411._0x28da88,-_0x2ba411._0xce5fef,-_0x2ba411._0x220c2b,-0x162)+_0x4b7fa7(-0x1c1,-_0x2ba411._0x35dffa,-_0x2ba411._0x472205,-_0x2ba411._0x1c33bb)+_0x4b7fa7(-0x13c,-_0x2ba411._0x552645,-0xda,-_0x2ba411._0x1ff98a)+_0x3004fd(_0x2ba411._0x54151c,_0x2ba411._0x13e656,_0x2ba411._0x9ddd5f,0x40b):'')+(_0x3004fd(0x5b1,_0x2ba411._0x59e7c5,_0x2ba411._0x5013ef,_0x2ba411._0x768389)+_0x3004fd(_0x2ba411._0x154c0b,_0x2ba411._0xd7128d,_0x2ba411._0x31e1df,_0x2ba411._0x163a79)+_0x3004fd(_0x2ba411._0x30f0a7,0x4a3,0x4a4,0x4f0)+_0x3004fd(_0x2ba411._0x4f3896,_0x2ba411._0x3ab663,_0x2ba411._0x27368a,0x453)+_0x3004fd(_0x2ba411._0x41533b,_0x2ba411._0x35c0bb,_0x2ba411._0x29d813,_0x2ba411._0x28d856))+_0x9da1e7+(_0x4b7fa7(-_0x2ba411._0x311346,-_0x2ba411._0x49d1df,-0x150,-0x10e)+_0x3004fd(_0x2ba411._0x37eee0,_0x2ba411._0x1408f6,0x444,_0x2ba411._0x392755)+_0x3004fd(_0x2ba411._0x54151c,_0x2ba411._0x2435d9,_0x2ba411._0x4a69ac,0x3c5))+_0x40a683[_0x3004fd(_0x2ba411._0x9033cc,_0x2ba411._0xc0f973,_0x2ba411._0x2c7831,_0x2ba411._0x275e8b)](-0x29b*-0xd+0x1d16+-0x3ef5*0x1,0x2603+-0x1*0xd83+0x6c0)+(_0x13f259[_0x3004fd(_0x2ba411._0x13990f,0x497,_0x2ba411._0x11aab4,0x4a7)](_0x40a683[_0x3004fd(_0x2ba411._0x2e3aed,_0x2ba411._0x49a54a,0x545,0x55b)],0x146a*0x2+-0x1b0d+0x1179)?_0x3004fd(0x461,0x468,0x4c6,_0x2ba411._0x4c842c)+'cated...]':'');let _0x4f8afb='';const _0x1dd586=_0x2e0d31=>{_0x4f8afb+=_0x2e0d31;};_0xdb07f0['on'](_0x13f259[_0x4b7fa7(-0x79,-0xb2,-0xc6,-_0x2ba411._0x4c61c0)],_0x1dd586),await _0xdb07f0[_0x4b7fa7(-_0x2ba411._0x2862dc,-0x77,-_0x2ba411._0x23316d,-_0x2ba411._0x1877d0)](_0x27f0d0,_0x3649bb),_0xdb07f0['off'](_0x13f259['GCmaI'],_0x1dd586),_0x4f8afb=_0x4f8afb[_0x4b7fa7(-0x8f,-_0x2ba411._0x55aee1,-_0x2ba411._0x1ef0d6,-_0x2ba411._0x59c1fb)]();if(!_0x4f8afb)throw new Error(_0x13f259[_0x3004fd(_0x2ba411._0x4fcb27,_0x2ba411._0x9ddd5f,_0x2ba411._0x32b2c7,_0x2ba411._0x5a0ce7)]);const _0x3398bc=_0x3004fd(_0x2ba411._0xcadfa0,0x45d,0x3c1,0x3bc)+_0x4b7fa7(-_0x2ba411._0x2c1938,-0x5d,-0xaa,-_0x2ba411._0x33fab4)+_0x4b7fa7(-0x6d,-_0x2ba411._0x339df0,-_0x2ba411._0x57194f,-0x83)+_0x3004fd(_0x2ba411._0x575f51,_0x2ba411._0x1f3657,0x4c0,_0x2ba411._0x575f51)+_0x3004fd(_0x2ba411._0x4a09f5,_0x2ba411._0x245b40,_0x2ba411._0x552bc2,0x4c4)+'\x20summary\x20o'+'f\x20our\x20prev'+'ious\x20sessi'+_0x4b7fa7(-_0x2ba411._0x445ec5,-_0x2ba411._0x3a6281,-_0x2ba411._0x5d3a25,-0x66)+'\x20use\x20this\x20'+_0x4b7fa7(-0x101,-_0x2ba411._0xa4973a,-_0x2ba411._0x5b8cae,-0xdf)+'e\x20our\x20work'+_0x4b7fa7(-0xe5,0x3e,-0x46,-0xa8)+_0x3004fd(_0x2ba411._0x4541d1,0x418,0x3b3,0x40b)+_0x4f8afb+(_0x3004fd(0x596,0x505,_0x2ba411._0x2f3876,_0x2ba411._0x419851)+_0x3004fd(0x4ad,0x4da,_0x2ba411._0x4fd13d,_0x2ba411._0x1f4361)+_0x4b7fa7(-0x78,-0x149,-_0x2ba411._0x1cd6ef,-_0x2ba411._0xa79ce2)+'e\x20left\x20off'+_0x4b7fa7(-_0x2ba411._0x5c2cde,-0xdd,-_0x2ba411._0x407809,-0x116)),_0x47eca6={};return _0x47eca6[_0x3004fd(0x461,_0x2ba411._0x28d2b7,0x4f6,0x54d)+'fix']=_0x3398bc,_0x47eca6[_0x4b7fa7(-_0x2ba411._0x5303d3,-_0x2ba411._0x2cd59a,-0x94,-_0x2ba411._0x55d528)]=_0x4f8afb,_0x47eca6;}catch(_0x409003){if(_0x13f259[_0x3004fd(0x3c8,0x3fd,_0x2ba411._0x1eb5e5,0x381)]!==_0x13f259[_0x3004fd(0x3c3,_0x2ba411._0x21bcb9,_0x2ba411._0x58dd7a,_0x2ba411._0x2e5fff)]){const _0xc75e9d=_0x13f259[_0x4b7fa7(-0xc6,-0x111,-0x83,-0xc7)](_0xc5519b[_0x4b7fa7(-0x4f,-_0x2ba411._0x2325d8,-_0x2ba411._0xe44d83,-_0x2ba411._0x1d93da)],'user')?'User':_0x13f259[_0x3004fd(_0x2ba411._0x3d902f,_0x2ba411._0x551714,_0x2ba411._0x53feac,0x424)],_0x1d6f45=_0x13f259['hfOUG'](_0x3503ba[_0x3004fd(_0x2ba411._0x407b99,0x479,_0x2ba411._0xf4e8,0x418)][_0x3004fd(0x59c,_0x2ba411._0x1a6fcc,0x4fc,_0x2ba411._0x5e02e5)],-0x3*0x5ec+-0x1*-0x1b1d+-0x765)?_0x13f259['PNWtT'](_0x24c302[_0x3004fd(_0x2ba411._0x39a5ab,0x479,0x44a,_0x2ba411._0x21637b)]['slice'](-0x1c1+0xb8d+0x42*-0x26,-0xb*0x113+0x17*0x135+-0x2*0x6ff),_0x13f259[_0x3004fd(0x4f0,_0x2ba411._0x55fff2,_0x2ba411._0x45ed6e,_0x2ba411._0xddfeb1)]):_0x139bc2[_0x4b7fa7(-0x67,-0x75,-_0x2ba411._0x15eaa5,-0x144)];return _0xc75e9d+':\x20'+_0x1d6f45;}else{console[_0x3004fd(_0x2ba411._0x4d6925,_0x2ba411._0x5f4810,0x4d3,0x496)](_0x4b7fa7(-_0x2ba411._0x7dce1a,-0x40,-_0x2ba411._0x5870ba,-0x24)+'extSummary'+']\x20AI\x20summa'+_0x4b7fa7(-_0x2ba411._0x4f2413,-_0x2ba411._0xf12381,-0x5b,-_0x2ba411._0x584d1f)+_0x4b7fa7(-0x123,-0xb7,-0x101,-0x11a)+_0x3004fd(_0x2ba411._0x1a814c,_0x2ba411._0x5c2aa7,_0x2ba411._0x1290eb,0x463)+'to\x20truncat'+_0x3004fd(_0x2ba411._0x151c5e,_0x2ba411._0x596698,0x47d,0x509),_0x409003);const _0x17a00c=[];let _0x1b8c58=-0x2106*0x1+0x3*0x959+0x3*0x1a9;for(let _0x4cc487=_0x13f259[_0x4b7fa7(0x54,-0xb1,-_0x2ba411._0xba904b,-_0x2ba411._0x5cd058)](_0x4e3227[_0x3004fd(_0x2ba411._0x4790c3,0x52d,0x4ed,0x564)],0x106*-0x2+-0xf09+-0x88b*-0x2);_0x13f259[_0x4b7fa7(-0x199,-_0x2ba411._0x14f8cc,-_0x2ba411._0x39424b,-0x106)](_0x4cc487,0x2b*-0x3e+-0xc*-0x37+0x7d6)&&_0x1b8c58<MAX_CONTEXT_CHARS;_0x4cc487--){const _0x563f0a=_0x4e3227[_0x4cc487],_0x340f=_0x13f259['XkDms'](_0x563f0a[_0x3004fd(0x4b0,_0x2ba411._0x8a551f,0x568,0x4da)],_0x13f259[_0x3004fd(_0x2ba411._0x3b2162,0x4e9,_0x2ba411._0x11aab4,0x454)])?_0x13f259[_0x3004fd(_0x2ba411._0xb24261,_0x2ba411._0x548ec1,0x4d7,_0x2ba411._0x329c8c)]:_0x13f259[_0x3004fd(_0x2ba411._0xcd560a,_0x2ba411._0x2d712c,0x4be,0x495)],_0x903b1=_0x13f259[_0x3004fd(_0x2ba411._0xd50f2d,0x461,0x4aa,_0x2ba411._0x1fdf21)](_0x563f0a[_0x3004fd(0x513,0x479,_0x2ba411._0x304a0d,0x4eb)][_0x3004fd(0x529,_0x2ba411._0x898adf,0x555,0x55b)],0x2*0xc1f+-0x1b0a+0x5ec)?_0x13f259[_0x4b7fa7(-_0x2ba411._0x5bedfb,-_0x2ba411._0x5c8008,-_0x2ba411._0x330440,-_0x2ba411._0x2346cf)](_0x563f0a['content'][_0x4b7fa7(-_0x2ba411._0x1f285c,-_0x2ba411._0x25e0bc,-_0x2ba411._0x235b68,-0xf1)](0xa*-0x18a+-0xb98*-0x1+0x3cc,0xa72+-0x1cf*0x2+-0x3b4),_0x13f259[_0x3004fd(_0x2ba411._0x174ed8,_0x2ba411._0x55fff2,_0x2ba411._0x1abffc,0x4ac)]):_0x563f0a['content'],_0x21b38b=_0x340f+':\x20'+_0x903b1;if(_0x13f259[_0x3004fd(0x427,_0x2ba411._0x3c790a,_0x2ba411._0x1fd228,_0x2ba411._0x13e656)](_0x1b8c58+_0x21b38b[_0x4b7fa7(-0x72,_0x2ba411._0x3d8c2d,-0x38,-_0x2ba411._0xce5fef)],MAX_CONTEXT_CHARS))break;_0x17a00c['unshift'](_0x21b38b),_0x1b8c58+=_0x21b38b[_0x3004fd(_0x2ba411._0x5a576b,0x52d,0x53a,0x5aa)];}const _0x1b181c=_0x18d90c?_0x3004fd(0x428,0x43d,_0x2ba411._0x13e656,_0x2ba411._0x392755)+_0x4b7fa7(-_0x2ba411._0x56495b,-_0x2ba411._0x12e19c,-0xbe,-0x2b)+_0x18d90c+'\x0a\x0a':'',_0x1eb7fb=_0x4b7fa7(-_0x2ba411._0x5ea608,-_0x2ba411._0x1ef0d6,-0x108,-_0x2ba411._0x455eba)+_0x4b7fa7(-0x19,-0x96,-0xaa,-_0x2ba411._0x154388)+_0x4b7fa7(_0x2ba411._0xbd441,-0x85,-_0x2ba411._0x4a9431,0x3)+']\x0a'+_0x1b181c+(_0x4b7fa7(-_0x2ba411._0x3d910a,-_0x2ba411._0x13e2da,-0x140,-_0x2ba411._0x555b7f)+_0x4b7fa7(_0x2ba411._0x55d528,_0x2ba411._0x37eb04,-_0x2ba411._0x3d8c2d,-_0x2ba411._0x484518)+_0x3004fd(0x3f6,0x405,_0x2ba411._0x5d1023,0x444)+_0x3004fd(_0x2ba411._0xddfeb1,_0x2ba411._0x1f76f4,_0x2ba411._0x21637b,_0x2ba411._0x263af2))+_0x17a00c[_0x4b7fa7(-_0x2ba411._0x387f83,-0xab,-_0x2ba411._0x14e938,-_0x2ba411._0xce5fef)]('\x0a\x0a')+(_0x3004fd(0x4d7,0x505,_0x2ba411._0x579aaa,0x4a2)+_0x3004fd(0x4b9,0x4da,_0x2ba411._0xe28cb1,_0x2ba411._0x57d919)+_0x3004fd(0x462,_0x2ba411._0x23b0cf,0x45e,0x517)+_0x3004fd(0x499,_0x2ba411._0x1f7e4c,_0x2ba411._0x495bb3,_0x2ba411._0x2400b4)+_0x3004fd(0x401,0x40e,_0x2ba411._0x513de9,_0x2ba411._0x33625b));return{'contextPrefix':_0x1eb7fb,'summary':_0x18d90c||_0x17a00c['join']('\x0a\x0a')};}}}}function _0x443f(){const _0x1dcd96=['vLPet3G','Aw9UCW','AgzpvuC','C2f2zsbTzxnZyq','vw52r0K','CMvHzezPBgvtEq','zxnZAw9U','u3vTBwfYAxPLia','rfDnwfC','BxbVCNrHBNqGza','r0nTyuK','sLncBKG','DgHHDcbPBMzVCG','B25ZoG','B3jKCY4GvxnLia','C3nPB24G','D3jPDgvgAwXLuW','B20GD2HLCMuGDW','B250zxH0oGO','se9nrq','z2v0uhjLDMLVDq','EhrjBMPLy3rPBW','Ew91CIbZDw1Tyq','AxjLAvC','mJeZntm2neXpAKnJqG','y2XLyxjtzxnZAq','lNfLDW','t3LkEfu','wMj5DhG','ktOk','B3DPBMCGAxmGyq','DeLUAMvJDgvK','BwvZC2fNzxm','Afr0D1y','zgvtzxnZAw9Usq','DhjfyKC','ywDL','BMPsz0m','uK9nifbsrvzjtW','EKz6Afy','D29YA2vKig9Uia','ig1LBNrPB25Lza','qLbfBvm','CgfYC2u','surQs2C','oIbuAguGiLbYzq','DgvK','D3HuAey','B24UifbSzwfZzq','BNrLEhrtDw1Tyq','Exb5swO','Aw9UoG','uhrwq2u','Ew5J','ywn0AxzLu2vZCW','C2fNzxm','Au56Eei','zxH0iIbZzwn0Aq','CwnIv2i','DhLWzq','C3vTBwfYEq','vezWwfy','Axnby3rPDMu','C2vZC2LVBK1LCW','B25nzxnZywDLCW','rKD4Aw0','y3P4EfG','y2XHDwrLu2vZCW','ANnVBG','DgLUDwLUzYbMCG','sM5zzhi','C2f2zvnLC3nPBW','AgfZ','B0LhtKG','C2fNzq','BxnNlq','C3DPDgnOu2vZCW','wgTeBxm','C2f2zsbZzxnZAq','zxrLza','z2v0qwn0AxzLuW','DhnSu1y','y29UDgv4DfbYzq','vvjuz3i','EvzlEKm','BIK6cG','CNvUu2LUz2XL','wMvLqwK','D2ztr04','Aw9U','BK1LC3nHz2vZ','EhrvtvC','zu95zgy','rgvls3i','zwXoEey','BgLUzYbIywnRia','Au9Jt2i','DxrMltG','lw1LC3nHz2vZlG','zwn0B3j5','CNL4zKK','CYbJB250zxH0ia','BwfYA0XHC3rnzq','C2fNzxmGzMLSzq','zw52','EKHorha','yNvPBgrdB250zq','C2XPy2u','y2HHCNm','BMvLzhndB250zq','zNrvB1O','zenhyLC','cGPoB3CSignVBG','nZa2ntiWy25KuwXb','v2TWuhG','Dg9tDhjPBMC','wxDprfi','CML6yxrPB24GzG','C2vZC2LVBKnYzq','uxbVsKq','vvmGu0vtu0LptG','w2j1AwXKq29UDa','yLDeDLK','wNnyqwW','BwfYA0nVBNrLEa','y3jLyxrLu2vZCW','u3vTBwfYAwvZ','zxHPC3rZu3LUyW','BwTKAxjtEw5J','C3nHz2vtDg9WCa','cKTLzxaGAxqGDq','vNzxyLa','CMfUzg9T','v0L4DwS','BMfTzq','qMzgtNe','CNKSigLUy2X1za','vvnYqMC','ihnLyw1SzxnZBa','igzVCIbZzxnZAq','Dg9VBeLUChv0','C2vZC2LVBNnozq','BNrZlGO','BgX4CfC','q2z4u1G','zwqGka','DMvYC2f0Aw9UoG','DgnOzwq','mtuWy3vdsNvR','ywrKvxnLCK1LCW','yxrLza','ignVBNrLEhqGka','BgvUz3rO','Dfn1Bw1HCNK','Bg9HzcbZzxnZAq','yxj5igDLBMvYyq','yw1Lza','y0XJvhG','zxiGlsbPBMnVCG','xqPuAguGzM9SBa','z2v0u2vZC2LVBG','Bw1HCNK','zgLUzYb0yxnRCW','zxjYB3i','DMvYC2f0Aw9Uia','C2vZC2LVBKrLBa','zNjVBsbLyxjSAq','qLbsy3i','ve5VvMq','quTiBe4','C2v0q2XHDwrLuW','tuTYC2W','u0Hfs00','vxnLCG','BxbHy3rPB24','u3rHDhm','C0nVBNrLEhrtDq','sMrVr1C','B252zxjZyxrPBW','z3PgtNG','khrYDw5JyxrLza','cKLnue9svefova','Cwv3lq','zgvSzxrL','zejxuhu','C3bmDuq','lI4U','mteXnZK1mgTJvhbbsa','uu9tsgi','oGOk','C29U','BwfW','B3v0Chv0','nc4Gqw55ihbLBG','zw50Aw9UzwqGzG','mKvKvNHWrq','cKn1CNjLBNqGyW','C3vIC3rY','zw1PDa','Es4kcG','BwXQtfy','vhrzq0S','zxiGC2vZC2LVBG','sMHkCwq','DxnLCI0','zfbZuKW','m2vLCLPmra','DxnLCG','B24G','DxbKyxrLq2XHDq','q29UDMvYC2f0Aq','r0fnqMq','uMvJzw50ignVBG','y1v6s1O','whLZrMe','mtjRsejus0m','nJyZmJfSzKvqCvG','zwrPBMDdB250zq','rMfPBgvKihrVia','Dg9YAwvZlGO','zK1Ou0m','kgXPC3qGC3bLyW','Aw9Uswq','y3DK','rhnpzee','D05YA3C','z2vZigzVCIbZzq','CMvJDxjZAxzL','CMvZDg9YyxrPBW','ue5xDfq','B24Gy29UDgfPBG','BMnPC2vSEsbMBW','BJOk','BLnpz3u','B0nKCNu','Aw5NigfUEsbWCG','uhjLDMLVDxmGyW','zwnPC2LVBNmGBq','oGOXlIblzxKGDa','C29YDa','sxvRBuW','D29YA2LUz0rPCG','Bg9HzfnLC3nPBW','Dg8Gy29UDgLUDq','zhblAuO','C2vZC2LVBNmUAG','D2DVu0O','DxnZzwqkmI4Gsq','C2v0','rw1WDhKGC3vTBq','A0L3z0i','ChjLDMLVDxndBW','zxnZAw9UswrbzG','mtu1mdKZnMLHtgHVBa','wgnjCMu','ywrKtwvZC2fNzq','ywrK','DMfSDwvZ','sezdzfK','CMXls3q','C2L6zq','zxzPB3vZBhKGBq','yxnZAxn0yw50','C3nPB25jza','z2v0qwXSu2vZCW','wvnNBe0','Bwf0Aw9UigLUia','qxnZAxn0yw50','w0nptLrfwfqGrG','Dw5SAw5Ru3LUyW','BM93','BuTcwK8','u0viBKq','sxfSufy','y2XLyxjgB3jdBW','ywLSzwqSigzHBa','l3bYB2DYzxnZcG','wNjotMC','Bg9HzcbTzxnZyq','cGPBlI4UDhj1BG','refmr3G','A0nkuu0','Aw9UswrvCgrHDa','vLPkA2i','DgvWCWO1lIbgAq','ndGXmJK3DeXKrvDm','ChvZAa','D2fZu3rVChbLza','tg9ur08','z2v0','r0LWqwy','BgfZDefJDgL2zq','zNjVBq','BwvZC2fNzufKza','zsbSzwz0ig9MzG','zxvctLq','y29UDgvUDa','C3LZDgvT','rgvMyxvSDa','C2f2zunVBNrLEa','z2vUzxjHDgvtzq','yNvSBgv0ihbVAq','vNPjEwS','vvv4C1C','jsbYzwr1y3rPBW','mZqZnJK1nMnJzvfVAa','DeTRELO','AM9PBG','uNLbtwq','BgvZigfUzcbKAq','CwvKsvy','zw5ZDxjLrgf0yq','C2vZC2LVBNm','Cg9YyxrLigfUza','AwXLCY9KAxjLyW','zgvSzxrLu2vZCW','vM5hyuW','y29TCgfJDgvKlq','s3jvAKW','DhjPBq','ig9Yig5LEhqGCW','BMrLCIa1mdaGDW','twXMvhq','mtfLvg53q2C'];_0x443f=function(){return _0x1dcd96;};return _0x443f();}
|
|
1
|
+
import { EventEmitter } from 'events';
|
|
2
|
+
import * as fs from 'fs';
|
|
3
|
+
import * as path from 'path';
|
|
4
|
+
const SESSION_DATA_DIR = path.join(process.env.HOME || '', '.qew', 'sessions');
|
|
5
|
+
const SESSION_DATA_FILE = path.join(SESSION_DATA_DIR, 'sessions.json');
|
|
6
|
+
// Maximum characters to include in context summary
|
|
7
|
+
const MAX_CONTEXT_CHARS = 6000;
|
|
8
|
+
export class ClaudeSessionManager extends EventEmitter {
|
|
9
|
+
sessions = new Map();
|
|
10
|
+
sessionMessages = new Map();
|
|
11
|
+
activeSessionId = null;
|
|
12
|
+
// Track which sessions need context injection (after CLI restart)
|
|
13
|
+
sessionsNeedingContext = new Set();
|
|
14
|
+
constructor() {
|
|
15
|
+
super();
|
|
16
|
+
this.ensureDataDir();
|
|
17
|
+
this.loadSessions();
|
|
18
|
+
// Create default session if none exist
|
|
19
|
+
if (this.sessions.size === 0) {
|
|
20
|
+
this.createSession('Default', process.cwd());
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
ensureDataDir() {
|
|
24
|
+
if (!fs.existsSync(SESSION_DATA_DIR)) {
|
|
25
|
+
fs.mkdirSync(SESSION_DATA_DIR, { recursive: true });
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
loadSessions() {
|
|
29
|
+
try {
|
|
30
|
+
if (fs.existsSync(SESSION_DATA_FILE)) {
|
|
31
|
+
const data = fs.readFileSync(SESSION_DATA_FILE, 'utf-8');
|
|
32
|
+
const parsed = JSON.parse(data);
|
|
33
|
+
for (const session of parsed.sessions) {
|
|
34
|
+
this.sessions.set(session.id, session);
|
|
35
|
+
// Load messages from separate file
|
|
36
|
+
this.loadSessionMessages(session.id);
|
|
37
|
+
// Mark sessions with existing messages as needing context injection
|
|
38
|
+
// This handles CLI restart scenario - Claude won't remember the conversation
|
|
39
|
+
const messages = this.sessionMessages.get(session.id) || [];
|
|
40
|
+
if (messages.length > 0) {
|
|
41
|
+
this.sessionsNeedingContext.add(session.id);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
if (parsed.activeSessionId && this.sessions.has(parsed.activeSessionId)) {
|
|
45
|
+
this.activeSessionId = parsed.activeSessionId;
|
|
46
|
+
const activeSession = this.sessions.get(this.activeSessionId);
|
|
47
|
+
if (activeSession) {
|
|
48
|
+
activeSession.isActive = true;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
catch (error) {
|
|
54
|
+
console.error('Failed to load sessions:', error);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
loadSessionMessages(sessionId) {
|
|
58
|
+
try {
|
|
59
|
+
const messagesFile = path.join(SESSION_DATA_DIR, `${sessionId}-messages.json`);
|
|
60
|
+
if (fs.existsSync(messagesFile)) {
|
|
61
|
+
const data = fs.readFileSync(messagesFile, 'utf-8');
|
|
62
|
+
const messages = JSON.parse(data);
|
|
63
|
+
this.sessionMessages.set(sessionId, messages);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
this.sessionMessages.set(sessionId, []);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
console.error(`Failed to load messages for session ${sessionId}:`, error);
|
|
71
|
+
this.sessionMessages.set(sessionId, []);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
saveSessions() {
|
|
75
|
+
try {
|
|
76
|
+
const data = {
|
|
77
|
+
sessions: Array.from(this.sessions.values()),
|
|
78
|
+
activeSessionId: this.activeSessionId,
|
|
79
|
+
};
|
|
80
|
+
fs.writeFileSync(SESSION_DATA_FILE, JSON.stringify(data, null, 2));
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
console.error('Failed to save sessions:', error);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
saveSessionMessages(sessionId) {
|
|
87
|
+
try {
|
|
88
|
+
const messages = this.sessionMessages.get(sessionId) || [];
|
|
89
|
+
const messagesFile = path.join(SESSION_DATA_DIR, `${sessionId}-messages.json`);
|
|
90
|
+
fs.writeFileSync(messagesFile, JSON.stringify(messages, null, 2));
|
|
91
|
+
}
|
|
92
|
+
catch (error) {
|
|
93
|
+
console.error(`Failed to save messages for session ${sessionId}:`, error);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
// Generate unique session ID
|
|
97
|
+
generateSessionId() {
|
|
98
|
+
return `qew-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
|
|
99
|
+
}
|
|
100
|
+
// Create a new session
|
|
101
|
+
createSession(name, workingDirectory) {
|
|
102
|
+
const session = {
|
|
103
|
+
id: this.generateSessionId(),
|
|
104
|
+
claudeSessionId: null,
|
|
105
|
+
name,
|
|
106
|
+
workingDirectory,
|
|
107
|
+
createdAt: Date.now(),
|
|
108
|
+
lastActiveAt: Date.now(),
|
|
109
|
+
isActive: false,
|
|
110
|
+
};
|
|
111
|
+
this.sessions.set(session.id, session);
|
|
112
|
+
this.sessionMessages.set(session.id, []);
|
|
113
|
+
this.saveSessions();
|
|
114
|
+
// Auto-switch to new session
|
|
115
|
+
this.switchSession(session.id);
|
|
116
|
+
this.emit('sessionCreated', session);
|
|
117
|
+
return session;
|
|
118
|
+
}
|
|
119
|
+
// Switch to a session
|
|
120
|
+
switchSession(sessionId) {
|
|
121
|
+
const session = this.sessions.get(sessionId);
|
|
122
|
+
if (!session)
|
|
123
|
+
return null;
|
|
124
|
+
// Deactivate current session
|
|
125
|
+
if (this.activeSessionId) {
|
|
126
|
+
const current = this.sessions.get(this.activeSessionId);
|
|
127
|
+
if (current) {
|
|
128
|
+
current.isActive = false;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
// Activate new session
|
|
132
|
+
session.isActive = true;
|
|
133
|
+
session.lastActiveAt = Date.now();
|
|
134
|
+
this.activeSessionId = sessionId;
|
|
135
|
+
this.saveSessions();
|
|
136
|
+
this.emit('sessionSwitched', session);
|
|
137
|
+
return session;
|
|
138
|
+
}
|
|
139
|
+
// Update Claude session ID (from stream-json init message)
|
|
140
|
+
updateClaudeSessionId(qewSessionId, claudeSessionId) {
|
|
141
|
+
const session = this.sessions.get(qewSessionId);
|
|
142
|
+
if (session) {
|
|
143
|
+
session.claudeSessionId = claudeSessionId;
|
|
144
|
+
this.saveSessions();
|
|
145
|
+
this.emit('claudeSessionIdUpdated', qewSessionId, claudeSessionId);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
// Add message to session
|
|
149
|
+
addMessage(sessionId, message) {
|
|
150
|
+
const session = this.sessions.get(sessionId);
|
|
151
|
+
if (!session)
|
|
152
|
+
return;
|
|
153
|
+
let messages = this.sessionMessages.get(sessionId);
|
|
154
|
+
if (!messages) {
|
|
155
|
+
messages = [];
|
|
156
|
+
this.sessionMessages.set(sessionId, messages);
|
|
157
|
+
}
|
|
158
|
+
// Check if we're updating an existing message with the same ID
|
|
159
|
+
const existingIndex = messages.findIndex((m) => m.id === message.id);
|
|
160
|
+
if (existingIndex >= 0) {
|
|
161
|
+
// Update existing message, but preserve wasStopped if it was set
|
|
162
|
+
const existing = messages[existingIndex];
|
|
163
|
+
messages[existingIndex] = {
|
|
164
|
+
...message,
|
|
165
|
+
wasStopped: existing.wasStopped || message.wasStopped,
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
else if (message.type === 'assistant') {
|
|
169
|
+
// For assistant messages, check if last message is an empty placeholder
|
|
170
|
+
const lastMsg = messages[messages.length - 1];
|
|
171
|
+
if (lastMsg && lastMsg.type === 'assistant' && lastMsg.isStreaming && !lastMsg.content) {
|
|
172
|
+
// Replace the placeholder with the real message, preserving wasStopped
|
|
173
|
+
messages[messages.length - 1] = {
|
|
174
|
+
...message,
|
|
175
|
+
wasStopped: lastMsg.wasStopped || message.wasStopped,
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
messages.push(message);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
// Add new message
|
|
184
|
+
messages.push(message);
|
|
185
|
+
}
|
|
186
|
+
session.lastActiveAt = Date.now();
|
|
187
|
+
this.saveSessionMessages(sessionId);
|
|
188
|
+
this.saveSessions();
|
|
189
|
+
this.emit('messageAdded', sessionId, message);
|
|
190
|
+
}
|
|
191
|
+
// Mark last assistant message as stopped
|
|
192
|
+
markLastMessageStopped(sessionId) {
|
|
193
|
+
const messages = this.sessionMessages.get(sessionId);
|
|
194
|
+
if (!messages || messages.length === 0) {
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
// Find last assistant message
|
|
198
|
+
for (let i = messages.length - 1; i >= 0; i--) {
|
|
199
|
+
if (messages[i].type === 'assistant') {
|
|
200
|
+
messages[i] = {
|
|
201
|
+
...messages[i],
|
|
202
|
+
isStreaming: false,
|
|
203
|
+
wasStopped: true,
|
|
204
|
+
};
|
|
205
|
+
this.saveSessionMessages(sessionId);
|
|
206
|
+
break;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
// Add user message to session
|
|
211
|
+
addUserMessage(sessionId, content) {
|
|
212
|
+
const message = {
|
|
213
|
+
id: `user-${Date.now()}-${Math.random().toString(36).substr(2, 6)}`,
|
|
214
|
+
type: 'user',
|
|
215
|
+
content,
|
|
216
|
+
timestamp: Date.now(),
|
|
217
|
+
};
|
|
218
|
+
this.addMessage(sessionId, message);
|
|
219
|
+
return message;
|
|
220
|
+
}
|
|
221
|
+
// Create a placeholder assistant message (for when user stops before any output)
|
|
222
|
+
createPlaceholderAssistantMessage(sessionId) {
|
|
223
|
+
const message = {
|
|
224
|
+
id: `msg-${Date.now()}-${Math.random().toString(36).substr(2, 6)}`,
|
|
225
|
+
type: 'assistant',
|
|
226
|
+
content: '',
|
|
227
|
+
timestamp: Date.now(),
|
|
228
|
+
isStreaming: true,
|
|
229
|
+
};
|
|
230
|
+
this.addMessage(sessionId, message);
|
|
231
|
+
return message;
|
|
232
|
+
}
|
|
233
|
+
// Get all sessions
|
|
234
|
+
getAllSessions() {
|
|
235
|
+
return Array.from(this.sessions.values()).sort((a, b) => b.lastActiveAt - a.lastActiveAt);
|
|
236
|
+
}
|
|
237
|
+
// Get session summaries for app
|
|
238
|
+
getSessionSummaries() {
|
|
239
|
+
return this.getAllSessions().map((s) => ({
|
|
240
|
+
id: s.id,
|
|
241
|
+
name: s.name,
|
|
242
|
+
workingDirectory: s.workingDirectory,
|
|
243
|
+
lastActiveAt: s.lastActiveAt,
|
|
244
|
+
messageCount: this.sessionMessages.get(s.id)?.length || 0,
|
|
245
|
+
isActive: s.isActive,
|
|
246
|
+
}));
|
|
247
|
+
}
|
|
248
|
+
// Get active session
|
|
249
|
+
getActiveSession() {
|
|
250
|
+
return this.activeSessionId
|
|
251
|
+
? this.sessions.get(this.activeSessionId) || null
|
|
252
|
+
: null;
|
|
253
|
+
}
|
|
254
|
+
// Get session by ID
|
|
255
|
+
getSession(sessionId) {
|
|
256
|
+
return this.sessions.get(sessionId) || null;
|
|
257
|
+
}
|
|
258
|
+
// Get session messages
|
|
259
|
+
getSessionMessages(sessionId) {
|
|
260
|
+
return this.sessionMessages.get(sessionId) || [];
|
|
261
|
+
}
|
|
262
|
+
// Delete session
|
|
263
|
+
deleteSession(sessionId) {
|
|
264
|
+
if (!this.sessions.has(sessionId))
|
|
265
|
+
return false;
|
|
266
|
+
// Don't delete if it's the only session
|
|
267
|
+
if (this.sessions.size <= 1) {
|
|
268
|
+
return false;
|
|
269
|
+
}
|
|
270
|
+
this.sessions.delete(sessionId);
|
|
271
|
+
this.sessionMessages.delete(sessionId);
|
|
272
|
+
// Delete messages file
|
|
273
|
+
try {
|
|
274
|
+
const messagesFile = path.join(SESSION_DATA_DIR, `${sessionId}-messages.json`);
|
|
275
|
+
if (fs.existsSync(messagesFile)) {
|
|
276
|
+
fs.unlinkSync(messagesFile);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
catch (error) {
|
|
280
|
+
console.error(`Failed to delete messages file for session ${sessionId}:`, error);
|
|
281
|
+
}
|
|
282
|
+
// Switch to another session if this was active
|
|
283
|
+
if (this.activeSessionId === sessionId) {
|
|
284
|
+
const remaining = Array.from(this.sessions.values());
|
|
285
|
+
if (remaining.length > 0) {
|
|
286
|
+
this.switchSession(remaining[0].id);
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
this.activeSessionId = null;
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
this.saveSessions();
|
|
293
|
+
this.emit('sessionDeleted', sessionId);
|
|
294
|
+
return true;
|
|
295
|
+
}
|
|
296
|
+
// Rename session
|
|
297
|
+
renameSession(sessionId, newName) {
|
|
298
|
+
const session = this.sessions.get(sessionId);
|
|
299
|
+
if (!session)
|
|
300
|
+
return false;
|
|
301
|
+
session.name = newName;
|
|
302
|
+
this.saveSessions();
|
|
303
|
+
this.emit('sessionRenamed', sessionId, newName);
|
|
304
|
+
return true;
|
|
305
|
+
}
|
|
306
|
+
// Clear session messages
|
|
307
|
+
clearSessionMessages(sessionId) {
|
|
308
|
+
const session = this.sessions.get(sessionId);
|
|
309
|
+
if (!session)
|
|
310
|
+
return;
|
|
311
|
+
this.sessionMessages.set(sessionId, []);
|
|
312
|
+
session.claudeSessionId = null; // Reset Claude session too
|
|
313
|
+
// Clear context injection flag since there's nothing to inject
|
|
314
|
+
this.sessionsNeedingContext.delete(sessionId);
|
|
315
|
+
this.saveSessionMessages(sessionId);
|
|
316
|
+
this.saveSessions();
|
|
317
|
+
}
|
|
318
|
+
// Get session stats for compaction logging
|
|
319
|
+
getSessionStats(sessionId) {
|
|
320
|
+
const messages = this.sessionMessages.get(sessionId) || [];
|
|
321
|
+
let chars = 0;
|
|
322
|
+
for (const msg of messages) {
|
|
323
|
+
chars += msg.content?.length || 0;
|
|
324
|
+
if (msg.toolOutput)
|
|
325
|
+
chars += msg.toolOutput.length;
|
|
326
|
+
if (msg.toolInput)
|
|
327
|
+
chars += JSON.stringify(msg.toolInput).length;
|
|
328
|
+
}
|
|
329
|
+
return { messages: messages.length, chars };
|
|
330
|
+
}
|
|
331
|
+
// Clear messages and prepare for compacted session (UI only - no summary shown)
|
|
332
|
+
// contextSummary is the combined summary including previous context
|
|
333
|
+
clearForCompaction(sessionId, reductionPercent, contextSummary) {
|
|
334
|
+
const session = this.sessions.get(sessionId);
|
|
335
|
+
if (!session)
|
|
336
|
+
return;
|
|
337
|
+
// Create simple compaction notification message
|
|
338
|
+
const compactedMessage = {
|
|
339
|
+
id: `compacted-${Date.now()}`,
|
|
340
|
+
type: 'system',
|
|
341
|
+
content: `Conversation Compacted (${reductionPercent}% reduction)`,
|
|
342
|
+
timestamp: Date.now(),
|
|
343
|
+
};
|
|
344
|
+
this.sessionMessages.set(sessionId, [compactedMessage]);
|
|
345
|
+
session.claudeSessionId = null; // Will be updated after context is sent to Claude
|
|
346
|
+
// Store the context summary so it can be included in future compactions
|
|
347
|
+
if (contextSummary) {
|
|
348
|
+
session.previousContextSummary = contextSummary;
|
|
349
|
+
}
|
|
350
|
+
// Clear context injection flag - compaction handles context separately
|
|
351
|
+
this.sessionsNeedingContext.delete(sessionId);
|
|
352
|
+
this.saveSessionMessages(sessionId);
|
|
353
|
+
this.saveSessions();
|
|
354
|
+
}
|
|
355
|
+
// Update Claude session ID after establishing context
|
|
356
|
+
setClaudeSessionIdAfterCompaction(sessionId, claudeSessionId) {
|
|
357
|
+
const session = this.sessions.get(sessionId);
|
|
358
|
+
if (session) {
|
|
359
|
+
session.claudeSessionId = claudeSessionId;
|
|
360
|
+
this.saveSessions();
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
// Get previous context summary (accumulated from compactions)
|
|
364
|
+
getPreviousContextSummary(sessionId) {
|
|
365
|
+
const session = this.sessions.get(sessionId);
|
|
366
|
+
return session?.previousContextSummary || null;
|
|
367
|
+
}
|
|
368
|
+
// Save context summary to session for persistence
|
|
369
|
+
saveContextSummary(sessionId, summary) {
|
|
370
|
+
const session = this.sessions.get(sessionId);
|
|
371
|
+
if (session) {
|
|
372
|
+
session.previousContextSummary = summary;
|
|
373
|
+
this.saveSessions();
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
// Check if a session needs context injection (after CLI restart)
|
|
377
|
+
needsContextInjection(sessionId) {
|
|
378
|
+
return this.sessionsNeedingContext.has(sessionId);
|
|
379
|
+
}
|
|
380
|
+
// Mark context as injected for a session
|
|
381
|
+
markContextInjected(sessionId) {
|
|
382
|
+
this.sessionsNeedingContext.delete(sessionId);
|
|
383
|
+
}
|
|
384
|
+
// Build a context summary from session messages for Claude using AI summarization
|
|
385
|
+
async buildContextSummary(sessionId, claudeRunner, workingDirectory) {
|
|
386
|
+
const session = this.sessions.get(sessionId);
|
|
387
|
+
const messages = this.sessionMessages.get(sessionId) || [];
|
|
388
|
+
const previousSummary = session?.previousContextSummary;
|
|
389
|
+
// If no messages and no previous summary, nothing to inject
|
|
390
|
+
if (messages.length === 0 && !previousSummary) {
|
|
391
|
+
return null;
|
|
392
|
+
}
|
|
393
|
+
// Filter to user and assistant messages (skip tool calls, system, etc.)
|
|
394
|
+
const relevantMessages = messages.filter((m) => m.type === 'user' || m.type === 'assistant');
|
|
395
|
+
// If no relevant messages and no previous summary, nothing to inject
|
|
396
|
+
if (relevantMessages.length === 0 && !previousSummary) {
|
|
397
|
+
return null;
|
|
398
|
+
}
|
|
399
|
+
// Build conversation text for summarization
|
|
400
|
+
const conversationText = relevantMessages
|
|
401
|
+
.map((m) => {
|
|
402
|
+
const role = m.type === 'user' ? 'User' : 'Assistant';
|
|
403
|
+
const content = m.content.length > 500 ? m.content.slice(0, 500) + '...' : m.content;
|
|
404
|
+
return `${role}: ${content}`;
|
|
405
|
+
})
|
|
406
|
+
.join('\n\n');
|
|
407
|
+
// Calculate total chars for skip/fallback logic
|
|
408
|
+
const totalChars = conversationText.length + (previousSummary?.length || 0);
|
|
409
|
+
// For short conversations (< 1000 chars), skip AI and use simple format
|
|
410
|
+
if (totalChars < 1000) {
|
|
411
|
+
const previousSummarySection = previousSummary
|
|
412
|
+
? `Previous context:\n${previousSummary}\n\n`
|
|
413
|
+
: '';
|
|
414
|
+
const contextPrefix = `[CONTEXT FROM PREVIOUS SESSION]
|
|
415
|
+
${previousSummarySection}Recent conversation:
|
|
416
|
+
${conversationText}
|
|
417
|
+
|
|
418
|
+
Now, continuing from where we left off:
|
|
419
|
+
|
|
420
|
+
`;
|
|
421
|
+
return {
|
|
422
|
+
contextPrefix,
|
|
423
|
+
summary: previousSummary || conversationText,
|
|
424
|
+
};
|
|
425
|
+
}
|
|
426
|
+
// Use AI to generate semantic summary
|
|
427
|
+
try {
|
|
428
|
+
const previousContextSection = previousSummary
|
|
429
|
+
? `\n\nPrevious context (from earlier session/compaction):\n${previousSummary}\n`
|
|
430
|
+
: '';
|
|
431
|
+
const summarizationPrompt = `Summarize this conversation concisely for context restoration. Include:
|
|
432
|
+
1. Key topics discussed
|
|
433
|
+
2. Important decisions made
|
|
434
|
+
3. Current state/progress
|
|
435
|
+
4. Any pending tasks or next steps
|
|
436
|
+
5. Files and directories worked on (list specific paths mentioned)
|
|
437
|
+
${previousSummary ? '\nIMPORTANT: The "Previous context" section contains context from earlier - incorporate and preserve that information in your summary, including any previously mentioned files/directories.\n' : ''}
|
|
438
|
+
Keep it under 500 words. Use bullet points.
|
|
439
|
+
${previousContextSection}
|
|
440
|
+
Current conversation:
|
|
441
|
+
${conversationText.slice(0, 8000)}${conversationText.length > 8000 ? '\n\n[...truncated...]' : ''}`;
|
|
442
|
+
// Capture AI output
|
|
443
|
+
let summary = '';
|
|
444
|
+
const outputHandler = (text) => {
|
|
445
|
+
summary += text;
|
|
446
|
+
};
|
|
447
|
+
claudeRunner.on('output', outputHandler);
|
|
448
|
+
// Run summarization (without session config to avoid modifying current session)
|
|
449
|
+
await claudeRunner.runSingle(summarizationPrompt, workingDirectory);
|
|
450
|
+
claudeRunner.off('output', outputHandler);
|
|
451
|
+
summary = summary.trim();
|
|
452
|
+
if (!summary) {
|
|
453
|
+
throw new Error('Empty summary generated');
|
|
454
|
+
}
|
|
455
|
+
// Build the context prefix with the AI-generated summary
|
|
456
|
+
const contextPrefix = `[CONTEXT FROM PREVIOUS SESSION]
|
|
457
|
+
The following is a summary of our previous session. Please use this to continue our work seamlessly.
|
|
458
|
+
|
|
459
|
+
${summary}
|
|
460
|
+
|
|
461
|
+
Now, continuing from where we left off:
|
|
462
|
+
|
|
463
|
+
`;
|
|
464
|
+
return {
|
|
465
|
+
contextPrefix,
|
|
466
|
+
summary,
|
|
467
|
+
};
|
|
468
|
+
}
|
|
469
|
+
catch (error) {
|
|
470
|
+
// Fallback to truncation if summarization fails
|
|
471
|
+
console.error(`[buildContextSummary] AI summarization failed, falling back to truncation:`, error);
|
|
472
|
+
const truncatedConversation = [];
|
|
473
|
+
let charCount = 0;
|
|
474
|
+
// Work backwards to prioritize recent messages
|
|
475
|
+
for (let i = relevantMessages.length - 1; i >= 0 && charCount < MAX_CONTEXT_CHARS; i--) {
|
|
476
|
+
const msg = relevantMessages[i];
|
|
477
|
+
const role = msg.type === 'user' ? 'User' : 'Assistant';
|
|
478
|
+
const content = msg.content.length > 800 ? msg.content.slice(0, 800) + '...' : msg.content;
|
|
479
|
+
const line = `${role}: ${content}`;
|
|
480
|
+
if (charCount + line.length > MAX_CONTEXT_CHARS)
|
|
481
|
+
break;
|
|
482
|
+
truncatedConversation.unshift(line);
|
|
483
|
+
charCount += line.length;
|
|
484
|
+
}
|
|
485
|
+
const previousSummarySection = previousSummary
|
|
486
|
+
? `Previous context:\n${previousSummary}\n\n`
|
|
487
|
+
: '';
|
|
488
|
+
const contextPrefix = `[CONTEXT FROM PREVIOUS SESSION]
|
|
489
|
+
${previousSummarySection}Recent conversation (truncated):
|
|
490
|
+
${truncatedConversation.join('\n\n')}
|
|
491
|
+
|
|
492
|
+
Now, continuing from where we left off:
|
|
493
|
+
|
|
494
|
+
`;
|
|
495
|
+
return {
|
|
496
|
+
contextPrefix,
|
|
497
|
+
summary: previousSummary || truncatedConversation.join('\n\n'),
|
|
498
|
+
};
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
}
|
|
502
|
+
//# sourceMappingURL=claudeSessionManager.js.map
|