icoa-cli 2.19.134 → 2.19.136

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.
@@ -1 +1 @@
1
- (function(b,j){const a4=a0j,k=b();while(!![]){try{const p=-parseInt(a4(0x136))/(-0x1d*-0x13f+-0xcf5+-0x172d*0x1)+parseInt(a4(0x21d))/(-0x11*-0x101+-0x2425+0x1316)+parseInt(a4(0x220))/(-0x12ac+0x72+0x123d)+parseInt(a4(0x1e4))/(-0x180b+0xd*-0x5f+-0x1ce2*-0x1)*(parseInt(a4(0x18b))/(0x1801*-0x1+0x1b62*0x1+-0x35c))+parseInt(a4(0x180))/(-0xccb*0x1+-0x1cc8+0x2999)+parseInt(a4(0x1b2))/(0x670+-0x1*0x259d+-0xf9a*-0x2)*(parseInt(a4(0x146))/(-0x879+-0x15e6+0x1e67))+-parseInt(a4(0x1c4))/(0x3*0xaf3+0x89*-0x3b+-0x1*0x13d);if(p===j)break;else k['push'](k['shift']());}catch(q){k['push'](k['shift']());}}}(a0b,0x10683a+-0x10669a+0xcbda5));import a0p from'chalk';import{createChatSession as a0q}from'../lib/gemini.js';import{addTokenUsage as a0v}from'../lib/budget.js';import{getConfig as a0w}from'../lib/config.js';import{logCommand as a0x}from'../lib/logger.js';import{printMarkdown as a0z,printError as a0A}from'../lib/ui.js';import{t as a0B}from'../lib/i18n.js';const i=b=>new Promise(j=>setTimeout(j,b));let s=!(0x175*-0x14+-0x1*0x1493+0x31b8*0x1),g=null,r=0x899*0x2+-0x7*0x85+-0xd8f,y=!(-0x9ac+0x20f*-0xe+0x267f);const h=-0x36ec+0x8288+0x160c;let u=null;export function isChatActive(){return s;}function d(){const a5=a0j,b=u?h:-0x1e99+0x1*-0x18fd+0x502*0xf,j=r,k=Math[a5(0x152)](Math['round'](j/b*(-0x6c6+-0x80f*-0x3+-0x1103)),0x419*-0x3+0x25c7+-0x1918),p=Math[a5(0x213)](k/(0xde7+0x1e30+-0x3*0xe91)*(-0x355+-0x1d*0x36+0x987)),q=0xb6a+0xe06+-0x195c-p,v=k>-0x2f*0x4f+-0x4de+0x13af?a0p[a5(0x1ab)]:k>-0x1*0x25cf+-0x987+0x2f88?a0p[a5(0x1b7)]:a0p[a5(0x13a)],w=u?a5(0x219):a5(0x1e6);console[a5(0x1c5)](a0p['gray']('\x20\x20'+w+':\x20')+v('█'[a5(0x1d4)](p))+a0p[a5(0x1ad)]('░'['repeat'](q))+a0p[a5(0x1ad)]('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(p){const a6=a0j;if(!g)return a6(0x13b);if(a0x(a6(0x1f2)+p),u)return m(p);const q=p[a6(0x23a)]()['toLowerCase']()[a6(0x22e)](/^hint\s+([abc])$/);if(q)return function(z){const a7=a6,A=a0B('a'===z?a7(0x1b4):'b'===z?a7(0x1fe):a7(0x1af)),B=a0B('a'===z?'ai4ctfHintABody':'b'===z?a7(0x238):'ai4ctfHintCBody'),C=a7(0x14e)+z['toUpperCase'](),D='a'===z?a0p[a7(0x13a)]:'b'===z?a0p[a7(0x1b7)]:a0p[a7(0x1ab)];console[a7(0x1c5)](),console['log'](D[a7(0x1a6)](a7(0x142)+C+'\x20\x20')+a0p[a7(0x1ad)](A)),console[a7(0x1c5)]();for(const E of B[a7(0x13c)]('\x0a'))''===E?console[a7(0x1c5)]():console['log'](a0p[a7(0x1de)](a7(0x131)+E));console[a7(0x1c5)](),'a'===z?(console[a7(0x1c5)](a0p['gray'](a7(0x131)+a0B(a7(0x1ed))+'\x20')+a0p['cyan'](a7(0x17a))),console[a7(0x1c5)]()):'b'===z&&(console['log'](a0p['gray']('\x20\x20\x20\x20'+a0B('ai4ctfHintNextB')+'\x20')+a0p[a7(0x158)](a7(0x192))),console['log']());}(q[0xed+-0x2*-0xdd8+-0x1c9c]),a6(0x1c2);const v=p['match'](/^submit\s+(.+)/i);if(v){let z=v[-0x26d5+0x2458+0x27e][a6(0x23a)]();if(/^submit\s+/i[a6(0x15c)](z)&&(z=z['replace'](/^submit\s+/i,'')[a6(0x23a)]()),z=z[a6(0x166)](/^["'`]+|["'`]+$/g,'')['trim'](),a6(0x1ff)===z){console[a6(0x1c5)](),console[a6(0x1c5)](a0p[a6(0x13a)][a6(0x1a6)]('\x20\x20════════════════════════════════════')),console[a6(0x1c5)](a0p['green'][a6(0x1a6)]('\x20\x20'+a0B(a6(0x15a)))),console[a6(0x1c5)](a0p[a6(0x13a)]['bold'](a6(0x1a5))),console['log'](),console[a6(0x1c5)](a0p[a6(0x1de)]('\x20\x20'+a0B('ai4ctfDecoded'))),console['log'](a0p[a6(0x1ad)]('\x20\x20'+a0B('ai4ctfWouldEarn'))),console[a6(0x1c5)](),d(),s=!(-0x72*-0x43+-0x63c+-0x1799),g=null,fetch(a6(0x1d6),{'method':a6(0x19a),'headers':{'Content-Type':a6(0x228)},'body':JSON[a6(0x1a8)]({'type':a6(0x19e),'solved':!(-0xf*0x217+0x3*0x30f+0x204*0xb),'tokensUsed':r,'timestamp':new Date()['toISOString']()}),'signal':AbortSignal[a6(0x21c)](-0x149*-0x4+0x10d7+-0xd1*0x3)})[a6(0x230)](()=>{}),await i(0x4*-0x54+0x21*0x84+-0x9d8),console[a6(0x1c5)](),console[a6(0x1c5)](a0p['cyan'](a6(0x165))),console['log'](a0p[a6(0x1a6)][a6(0x1de)]('\x20\x20'+a0B(a6(0x154)))),console[a6(0x1c5)](a0p[a6(0x158)](a6(0x165))),console[a6(0x1c5)]();const A=a0B(a6(0x1f9)),B=a0B(a6(0x209));console['log'](a0p[a6(0x1de)](a6(0x1ea)+A+'\x20')+a0p['gray'](B[a6(0x13c)]('\x0a')[0x11*-0xc5+0x1ec1+-0x15c*0xd]||''));for(const F of B[a6(0x13c)]('\x0a')[a6(0x1aa)](-0x6*0x317+0x23b2+0x1127*-0x1))F[a6(0x23a)]()&&console[a6(0x1c5)](a0p[a6(0x1ad)](a6(0x178)+F[a6(0x166)](/\{thinking\}/g,a6(0x15f))));console['log'](),console['log'](a0p[a6(0x1de)](a6(0x197)+a0B(a6(0x153))+'\x20')+a0p[a6(0x1ad)](a0B(a6(0x12a)))),console[a6(0x1c5)](),console[a6(0x1c5)](a0p[a6(0x158)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20!echo\x20aWNvYXt3M2xjMG1lXzJfYWk0Y3RmfQ==\x20|\x20base64\x20-d')),console[a6(0x1c5)](),await i(-0x13bd+-0x1fe7*-0x1+-0x1*0x45a),console[a6(0x1c5)](a0p['cyan'](a6(0x165))),console[a6(0x1c5)](a0p[a6(0x1a6)]['white']('\x20\x20'+a0B(a6(0x1b3)))),console[a6(0x1c5)](a0p['cyan']('\x20\x20─────────────────────────────────────────────')),console[a6(0x1c5)](),console['log'](a0p[a6(0x1b7)](a6(0x175))+a0p[a6(0x1de)](a0B(a6(0x21b))[a6(0x151)](0x1*-0x25b1+-0x1883+0x1d*0x226))+a0p['gray'](a0B(a6(0x16c)))),console['log'](a0p[a6(0x1b7)](a6(0x227))+a0p[a6(0x1de)](a0B(a6(0x157))[a6(0x151)](-0x1ab9+0x1fb9*-0x1+-0x3*-0x1384))+a0p['gray'](a0B(a6(0x22a)))),console[a6(0x1c5)](a0p['yellow'](a6(0x15b))+a0p[a6(0x1de)](a0B(a6(0x17d))[a6(0x151)](-0xb1c+-0x143f+-0x1f75*-0x1))+a0p['gray'](a0B(a6(0x1f8)))),console[a6(0x1c5)]();for(const G of a0B(a6(0x1dc))[a6(0x13c)]('\x0a'))console[a6(0x1c5)](a0p[a6(0x1ad)](a6(0x131)+G));console[a6(0x1c5)](),await i(-0x4dc+0x7cc*-0x1+-0x4*-0x51e),console[a6(0x1c5)](a0p[a6(0x158)]('\x20\x20─────────────────────────────────────────────')),console[a6(0x1c5)](a0p[a6(0x1a6)]['white']('\x20\x20'+a0B(a6(0x1c3))+'\x20')+a0p[a6(0x1ab)][a6(0x1a6)](a6(0x1e7))+a0p[a6(0x1de)](a6(0x1fb)+a0B(a6(0x236)))),console[a6(0x1c5)](a0p[a6(0x158)](a6(0x165))),console[a6(0x1c5)]();const C=a0B(a6(0x1fc)),D=a0B('ai4ctfWrapNoProg'),E=C['split']('\x0a');if(E[0x26dd+0xaf1+-0x31ce]){const [H,I]=E[0x4aa+-0x11fe+0xd54][a6(0x13c)]('{noProg}');console[a6(0x1c5)](a0p[a6(0x1de)]('\x20\x20\x20\x20'+(H||''))+a0p['bold'][a6(0x1de)](D)+a0p[a6(0x1de)](I||''));}for(const J of E[a6(0x1aa)](0x1f4d+0x999+0x1*-0x28e5))J[a6(0x23a)]()&&console[a6(0x1c5)](a0p[a6(0x1de)]('\x20\x20\x20\x20'+J));return console[a6(0x1c5)](),console[a6(0x1c5)](a0p[a6(0x1ad)](a6(0x131)+a0B(a6(0x167))+'\x20')+a0p['bold']['red']('ctf4ai')),console[a6(0x1c5)](),a6(0x13b);}return console['log'](),console['log'](a0p[a6(0x1ab)]('\x20\x20'+a0B('ai4ctfWrongFlag'))),console[a6(0x1c5)](a0p[a6(0x1ad)]('\x20\x20'+a0B('ai4ctfFlagHint'))),console[a6(0x1c5)](),a6(0x1c2);}if(p[a6(0x1ca)]('!')){const K=p['slice'](0x25*0xfe+0x3a5+-0x285a)[a6(0x23a)]();if(!K)return a6(0x1c2);try{const L={};L[a6(0x22b)]=a6(0x1d8),L[a6(0x21c)]=0x2710;const {execSync:M}=await import(a6(0x1b5)),N=M(K,L)['trim']();console[a6(0x1c5)](),console['log'](a0p[a6(0x1ad)]('\x20\x20$\x20')+a0p[a6(0x1de)](K)),console[a6(0x1c5)](a0p['white']('\x20\x20'+N[a6(0x13c)]('\x0a')[a6(0x16f)](a6(0x239)))),console[a6(0x1c5)](),console['log'](a0p[a6(0x1ad)]('\x20\x20'+a0B(a6(0x231)))),console[a6(0x1c5)]();}catch(O){console[a6(0x1c5)](),console[a6(0x1c5)](a0p[a6(0x1ab)](a6(0x13f)+(O[a6(0x137)]?.['split']('\x0a')[-0x495*-0x3+0x2635+-0x33f4]||'Command\x20failed'))),console[a6(0x1c5)]();}return'continue';}const w={};w['Content-Type']=a6(0x228);if('exit'===p||a6(0x181)===p||a6(0x226)===p||a6(0x1d1)===p)return s=!(-0x392+-0x1ecb*-0x1+-0x1b38),g=null,fetch(a6(0x1d6),{'method':'POST','headers':w,'body':JSON[a6(0x1a8)]({'type':'ai4ctf','tokensUsed':r,'timestamp':new Date()[a6(0x1b0)]()}),'signal':AbortSignal['timeout'](0xf63+-0x26fc+0x1*0x2b21)})['catch'](()=>{}),console[a6(0x1c5)](),console[a6(0x1c5)](a0p[a6(0x1ad)](a6(0x233))),console['log'](a0p[a6(0x1de)]('\x20\x20'+a0B(a6(0x21a)))),console[a6(0x1c5)](a0p[a6(0x1ad)]('\x20\x20'+a0B(a6(0x173))+':\x20'+r+a6(0x1da))),console[a6(0x1c5)](a0p[a6(0x1ad)]('\x20\x20'+a0B(a6(0x155))+a6(0x1cc))),console[a6(0x1c5)](a0p[a6(0x1ad)](a6(0x233))),console[a6(0x1c5)](),console['log'](a0p[a6(0x158)](a6(0x165))),console[a6(0x1c5)](a0p['white']('\x20\x20'+a0B(a6(0x1ef))+'\x20')+a0p['bold'][a6(0x1ab)](a6(0x1e7))+a0p['white'](a6(0x1fb)+a0B(a6(0x187)))),console['log'](a0p['gray']('\x20\x20'+a0B(a6(0x132)))),console[a6(0x1c5)](a0p['cyan'](a6(0x165))),console[a6(0x1c5)](),console['log'](a0p[a6(0x1a6)][a6(0x1ab)](a6(0x12f))+a0p[a6(0x1ad)](a6(0x1c0)+a0B(a6(0x221)))),console[a6(0x1c5)](a0p[a6(0x1de)](a6(0x222))+a0p[a6(0x1ad)](a6(0x164)+a0B(a6(0x169)))),console[a6(0x1c5)](),a6(0x13b);const x={};x['Content-Type']=a6(0x228);if(!y&&r>=0xf*-0x51+0x179e+0xa9)return y=!(-0x1c*-0x16+-0x1ab3+-0x819*-0x3),fetch(a6(0x1d6),{'method':a6(0x19a),'headers':x,'body':JSON[a6(0x1a8)]({'type':'ai4ctf','solved':!(0x1f5e+-0xde9+0x4*-0x45d),'tokensUsed':r,'timestamp':new Date()[a6(0x1b0)]()}),'signal':AbortSignal[a6(0x21c)](-0x1*-0xdcc+0x1326*0x2+0x412*-0x8)})[a6(0x230)](()=>{}),console[a6(0x1c5)](),console[a6(0x1c5)](a0p[a6(0x1b7)]('\x20\x20'+a0B('tokenLimit'))),d(),(function(){const a8=a6;console[a8(0x1c5)](),console[a8(0x1c5)](a0p[a8(0x1b7)](a8(0x165))),console[a8(0x1c5)](a0p['bold'][a8(0x1b7)]('\x20\x20'+a0B(a8(0x160)))),console[a8(0x1c5)](a0p['yellow'](a8(0x165))),console['log']();for(const P of a0B('ai4ctfRevealBody')[a8(0x13c)]('\x0a'))''===P?console[a8(0x1c5)]():console[a8(0x1c5)](a0p['white'](a8(0x131)+P));console[a8(0x1c5)](),console[a8(0x1c5)](a0p[a8(0x158)](a8(0x13e))),console['log'](),console['log'](a0p['white']('\x20\x20\x20\x20'+a0B(a8(0x182)))),console[a8(0x1c5)](),console[a8(0x1c5)](a0p[a8(0x13a)](a8(0x159))),console[a8(0x1c5)](),console[a8(0x1c5)](a0p[a8(0x1de)](a8(0x131)+a0B(a8(0x1cb)))),console[a8(0x1c5)](),console[a8(0x1c5)](a0p['cyan']('\x20\x20\x20\x20\x20\x20\x20\x20submit\x20icoa{w3lc0me_2_ai4ctf}')),console[a8(0x1c5)](),console[a8(0x1c5)](a0p[a8(0x1ad)](a8(0x131)+a0B(a8(0x16d)))),console['log']();}()),a6(0x1c2);if(y)return console[a6(0x1c5)](),console[a6(0x1c5)](a0p['yellow']('\x20\x20'+a0B(a6(0x1a3)))),console[a6(0x1c5)](a0p[a6(0x1ad)]('\x20\x20'+a0B('ai4ctfLockedUse')+'\x20')+a0p[a6(0x158)](a6(0x1cd))),console[a6(0x1c5)](a0p[a6(0x1ad)]('\x20\x20'+a0B(a6(0x1bf))+'\x20')+a0p[a6(0x158)](a6(0x16e))),console[a6(0x1c5)](),a6(0x1c2);console['log'](a0p[a6(0x1ad)]('\x20\x20'+a0B('ai4ctfThinking')));try{const P=await g[a6(0x1a9)](p);process[a6(0x1e0)][a6(0x232)](a6(0x18d)),r+=P[a6(0x17b)],a0v(P[a6(0x17b)]),console[a6(0x1c5)](),a0z(P[a6(0x12c)]),d(),console[a6(0x1c5)]();}catch(Q){process['stdout'][a6(0x232)]('\x1b[1A\x1b[2K'),a0A(a6(0x18e)+Q[a6(0x137)]),console[a6(0x1c5)]();}return'continue';}function a0b(){const ag=['ywK0y3rMq29TBwfUzhm','mZmZmMPHwwzItG','ywK0y3rMv3jHCff1B3rHC1rPDgXL','ywK0y3rMsgLUDee','BM9KztPJAgLSzf9WCM9JzxnZ','Dg9vChbLCKnHC2u','EwvSBg93','sunpqxT5B3vYx2zSywD9','ywK0y3rMsgLUDefvC2vZ','icdIMQaGodaLig9MihnLy3rPB24GquKGyNvKz2v0ihvZzwqU','ifn1yM1PDcb5B3vYigzSywCGzM9YihrOAxmGCxvLC3rPB24','icdWN5kHie9Uy2uGEw91igHHDMuGsunpqxSUlI59lcbZDwjTAxqGAxqGD2L0AdOG','zxHHBsbXidmX','icbr','ywK0y3rMtg9JA2vKvgHLBG','icaGicaGicaGia','z2vTBweTnc0ZmwiTAxq','y29UDgLUDwu','ywK0y3rMv3jHCe5LEhruAxrSzq','mtGYmdi3nJfxEKHrtLy','Bg9N','AgLUDhnvC2vK','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','ywK0y3rMsgLUDfbYAw5JAxbSzq','icaGicaGicaGicaGifjLDhvYBIb0BYbTywLUig1LBNuGkhDVCMTZigfUExDOzxjLkq','C3rHCNrZv2L0Aa','ywK0y3rMuMv2zwfSvgHLBLn1yM1PDa','oIbhB29NBguGr2vTBweGncaOz2vTBweTnc0ZmwiTAxqP','iwvJAg8GyvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0GFcbIyxnLnJqGlwq','x2XHC3rr','zxHHBsbHBNn3zxiG','oIbhB29NBguGr2vTBweGncaO','BwvUDq','icdIMQaG','imk3ia','CMvWzwf0','ywK0y3rMsgLUDfrLy2HUAxf1zq','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','C3vIBwL0qxr0zw1WDgvK','DxrMltG','iIbSB29RCYbSAwTLigfUie1dusbSzxr0zxiSig5VDcbHigzSywCU','lZuWmda','icaGigHPBNqGyW','ywK0y3rMv3jHCff1B3rHrM9VDgvY','BMfTzq','D2HPDgu','ixnOzwXS','C3rKB3v0','ywK0y3rMsgLUDe5LEhrd','icboB3rLoIa1mcuGB2yGC2vJDgLVBIbbssbIDwrNzxqGDxnLzc4','lIbkDw1WihrOzxjLigzPCNn0oG','mZmYEwzTwuj2','y2f0zwDVCNK','vg9Rzw5Z','y3rMngfP','yw5ZD2vYx3n1yM1PDhrLza','icaGicfWExrOB24Zic4UlG','icaGideUia','C2L6zq','icbbzNrLCIbLEgL0oIa','ywK0y3rMsgLUDe5LEhrb','zxHHBsbXia','ywK0y3rMrxHPDe5LEhruAxrSzq','icaGieP1C3qGDhLWzsbMCMvLBhKGDg8Gy2HHDcb3AxrOihrOzsbbssb0zwfTBwf0zs4','icbiB3CGDg8GD29YAYb0AgLZihf1zxn0Aw9U','ywK0y3rMoIa','icbbzNrLCIbLEgL0oIbbstrdveyGC2vJDgLVBIbJB21WBgv0zs4GtMv4DdOG','icbezxrLy3rLzcbMBgfNiokaLcb0CMvHDgLUzYbHCZOG','icdINjmGqw5ZD2vYigzVCIbr','iNDOyxqGzw5JB2rPBMCGAxmGDgHPCZ8I','DMLHigfPngn0zIbJAgf0','ywK0y3rMv3jHCff1B3rHq0HPBNq','ywK0y3rMv3jHCeXPBMuXsgvHza','iMHVDYbKBYbjigrLy3j5ChqGquvtluncqYbPBIbqExrOB24/iG','iokaLca','ywK0y3rMv3jHCe5LEhrcB2r5','icdILRGGsgLUDca','ywK0y3rMsgLUDei','AwnVyxT3m2XJmg1LxZjFywK0y3rMFq','icbbssbIDwrNzxqGzxHOyxvZDgvKigzVCIbbstrdveyGC2vJDgLVBI4','ihbVAw50CYK6cG','icdIMQaGww91CIbbstrdveyGDg9Rzw4GyNvKz2v0igLZigv4Agf1C3rLzc4','icaGig1LBNu','ihrVA2vUCYbSzwz0lG','C3vIBwL0idXMBgfNpG','xsaGWRCG','icdILii','ihjLy29YzgvKoIa','ywK0y3rMv3jHCeXPBMuXqM9KEq','icaGifn0DwnRpYbuCNK6ia','icbB','ywK0y3rMu3vIBwL0q21K','yw5ZD2vYx2nOyw5Nzwq','ywK0y3rMrw5Ku2vZC2LVBG','C3vIBwL0ia','ig9UifeZoq','zMLUza','icaGigHPBNqGysaVigiGlYbJica','CM91BMq','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','ihb0CW','icbtDgLSBcbHDMfPBgfIBgu6ia','ywK0y3rMt3jdAgf0','BNvKz2vtAg93BG','quK0q1rgihnLy3rPB24','ywK0y3rMuMvWB3j0','ywK0y3rMv3jHCff1B3rHqq','DgLTzw91Da','mtm4mdaWmeTTrhrjza','icaGicaGicaGicaGica','ywrK','mtKZnJu2owrcsKvptG','ywK0y3rMrxHPDenTze5LEhq','icaGicbIywnR','icaGihn1yM1PDca8zMXHzZ4Gica','icbnB2rLBdOGr29Vz2XLieDLBw1HidqGka','yvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0','CxvPDa','icaGicaGigHPBNqGyIaGia','yxbWBgLJyxrPB24VANnVBG','icaGifjLywXSEsbZDhvJAZ8Gvhj5oIa','ywK0y3rMv3jHCff1B3rHqKHPBNq','zw5JB2rPBMC','ywK0y3rMvgL0Bgu','icaI','Bwf0y2G','icaGicHhCMfKAw5NigHHChbLBNmGyxqGzxHHBsbZDwjTAxqG4OcuihLVDsbJyw5UB3qGChjLDMLLDYbJB3jYzwn0BMvZCYbKDxjPBMCGDgHLigv4yw0Ukq','y2f0y2G','ywK0y3rMrM91BMrgBgfN','D3jPDgu','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','cGPbvfrbq0HfrcbeqvrbicHHBhnVihnHDMvKihrVignOywXSzw5NzxmVCq','icaGigv4Axq','ywK0y3rMv3jHCe5LEhrtDwi','Cg9PBNrZ','ywK0y3rMsgLUDejcB2r5','cIaG','DhjPBq','Aw50zxjHy3rPB25Z','ywK0y3rMrgvJB2rL','ywK0y3rMv3jHCeXPBMuYqM9KEq','icaGiokgKIa','Dgv4Da','icbbstrdveyGC2vJDgLVBIbJB21WBgv0zsdIGjqG','icdILjtILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icaGicbJDgy0ywK','ywK0y3rMq21KsgLUDeXPBMu','icaGia','ywK0y3rMrxHPDe5LEhrcB2r5','iokaLcb0ExbLia','CxvLC3rPB24','ywK0y3rMsgLUDejvC2vZ','mty0ntm4mvr1EhHiwa','BwvZC2fNzq','CxvLC3rPB25Z','rNvSBcbXDwvZDgLVBJOGia','z3jLzw4','zxHPDa','C3bSAxq','yxr0ywnOzwreyxrH','icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','icbfCNjVCJOG','icaOCMvZDw1PBMCG4OcuihbYAw9YignOyxqGAxmGBM90ihjLBwvTyMvYzwqSigj1Dcb0B2TLBNmGywXYzwfKEsb1C2vKihn0yxKGzgvKDwn0zwqP','jsbVzIbZzwn0Aw9Uiefjigj1zgDLDcb1C2vKiokaLcbVBMX5ih4','icdILRGG','icdILzdILzdILzaG','icdILiiG','ywK0y3rMsgLUDenvC2vZ','mJqYmZjfAhPoCuq','ihDPBgWGB3bLBIbr','lIbuCNKGywDHAw4GAw5ZAwrLihrOAxmGy2HHDc4','ywK0y3rMsgLUDe51zgDL','igzVCIbrmZK','ywLvC2fNzq','lNr4DcaOAw5ZAwrLihrOzsbZyw5KyM94ksbYyxrOzxiGDgHHBIbHC2TPBMCGDgHLignVBNrLC3rHBNqGDg8GCgfZDguGDgHLihDOB2XLigjSB2iGyMfJAY4klsblzwvWihjLC3bVBNnLCYbJB25JAxnLigfUzcbWCMfJDgLJywWUifrOAxmGy29UDgvZDgfUDcbOyxmGBgLTAxrLzcb0Aw1LlG','icaG4OAsia','sgLUDca','igfUC3DLCIb1CgrHDgvKoIa','ww91igfYzsbHBIbbssb0zwfTBwf0zsbOzwXWAw5NigeGy29UDgvZDgfUDcbZB2X2zsbHBIbjq09bidiWmJyGy3LIzxjZzwn1CML0EsbLEgfTihf1zxn0Aw9UlGOkq1vsuKvovcbrvuvtveLptIaOuq','CgfKrw5K','BwLU','ywK0y3rMv3jHCeXPBMuYsgvHza','ywK0y3rMv3jHCfrPDgXL','ywK0y3rMtw9KzwW','icaGigHPBNqGyq','ywK0y3rMv3jHCff1B3rHqG','y3LHBG','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','ywK0y3rMq29YCMvJDezSywC','icaGicaGigHPBNqGyYaGia','DgvZDa','lI4VBgLIl2v4yw0TC3rHDguUANm','icaGicaGicaGicbuzwnOBMLXDwuGAgLUDcaOChjLlxDYAxr0zw4P','DgHPBMTPBMC','ywK0y3rMuMv2zwfSvgL0Bgu','icbHAtrJDgyGAxmGyxzHAwXHyMXLig9UifeZmEkaKZm4icHbstrdveyGC2vJDgLVBIKU','icdILiZILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icaGicaGicaGicaGicaGicaGicbLlMCUia','icaGicaGicaGicaG','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','CMvWBgfJzq','ywK0y3rMv3jHCfr5CgvdDgy0ywK','C29Tzq','ywK0y3rMrxHPDenTzejHy2S','icaGigHPBNqGyG','ieLdt0f7lI4UFq','ywK0y3rMv3jHCff1B3rHquHPBNq','ywK0y3rMuMv2zwfStg9JA05VDgu','C3vIBwL0igLJB2f7DZnSyZbTzv8Yx2fPngn0zN0','AM9PBG','ywK0y3rMtgv2zwXZ','y2XLyxi','ywK0y3rMv2vSy29Tzu5VuMv2zwfS','ywK0y3rMvg9Rzw5Z','icaGie5VihbYzs13CML0DgvUigHPBNqGyxqGDgHPCYb0AwvYigzVCIb0AgLZihf1zxn0Aw9UlG','icaGicaGigHPBNqGysaGia','icaGigv4AxqGicaGicaGicaGica','y29TBwfUza','icaGicaGia','yw5ZD2vYCW','AgLUDcbI','Dg9Rzw5ZvxnLza','zw50zxjLzef0','ywK0y3rMv3jHCff1B3rHqW','igfNywLUihrVignOyw5NzsWGB3iG','icaKia','odqYmde1nff4BKPxyq','yMfJAW','ywK0y3rMuMv2zwfSu2vLrMXHzW','icaOC3vIBwL0igfNywLUihrVignOyw5NzsK','icbzB3uGy2fUihn0AwXSoIa','icbdDxjYzw50igfUC3DLCJOG','cGPzt1vsifjvtevtoGOTifLVDsbnqvKGzxHWBgfPBIbJB25Jzxb0CYWGzgvZy3jPyMuGyxbWCM9Hy2HLCYWGyw5KigHLBhaGDgHLignVBNrLC3rHBNqGCMvHC29UihrOCM91z2GGDgHLihbYB2jSzw0UcI0Gww91ie1bwsbKAxnJDxnZihrOzsb0zwnOBM9SB2D5igLUDM9SDMvKicHbrvmSihb3BNrVB2XZlcbqExrOB24GC3rYDwn0lcbivfrqlcbLDgmUks4klsbzB3uGtufzigHLBhaGzgvIDwCGuhL0Ag9UignVzguGDgHLignVBNrLC3rHBNqGD3jPDgvZlGOTifLVDsbnvvnuie5pvcbYzxzLywWGDgHLigzSywCGzgLYzwn0BhKUcI0Gww91ie1vu1qGtK9uig91Dhb1DcbHBNKGC3rYAw5Nig1HDgnOAw5NieLdt0f7lI4UFsbVCIbPy29HEY4UlN0UcI0Gww91ie1vu1qGtK9uihrLBgWGDgHLignVBNrLC3rHBNqGDgHLigv4ywn0igfUC3DLCIb0BYb0AgLZihf1zxn0Aw9UlGOTifLVDsbnqvKGC3vNz2vZDcb3AgLJAcb0B29Sic8GBgLICMfYEsaVihrLy2HUAxf1zsb0BYb1C2uUcI0Gv2HLBIbZDwDNzxn0Aw5NihnOzwXSic8GChL0Ag9UihnUAxbWzxrZihrOyxqGBMvLzcb0AguGyxr0ywnOzwqGzgf0ysWGCMvMzxiGDg8GDgHLigzPBguGCgf0AcbJAgfSBgvUz2vZl3e','ywK0y3rMrxHPDe5LEhrtDwi','sgLKzgvUie1LC3nHz2u','rMXHzYbMB3jTyxq6igLJB2f7lI4UFq','q2HHDcb3AxrOihLVDxiGquKGDgvHBw1HDgu','mtK0mZvjyxryu3y','ywK0y3rMt3jdAgf0rxHHBxbSzq','g1SXqrTBmKS','quKGzxjYB3i6ia','AgLUDhm','icdINjmGuq','iokvKokvKokvKa','AgLUDcbJ','ywK0y3rMsw50zxjJzxb0zwq','icbbstrdveyGy2HHDcbLBMrLzcbMB3iGuq','icbzB3uGy2fUihn0AwXSihn1yM1PDcbHigzSywCGzgLYzwn0BhK6ia','ihrVig1VDMuGB24','icaGidiUia','icbozxH0oIa','q29TBwfUzcbMywLSzwq','ue9tva','z2vTAw5Ptw9KzwW','rMXHzYbMB3jTyxq6icaGieLdt0f7lI4UFq','icbgBgfNigzVCM1HDdOG','ywK0y3rM','ig5VDcbMB3vUzcbPBIbZDgf0zs4','zgvZy3jPChrPB24','ywK0y3rMrxHPDa','Cu51Bq','ywK0y3rMtg9JA2vKvgL0Bgu','BNvTyMvY','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','yM9Sza','BM93','C3rYAw5NAwz5','C2vUze1LC3nHz2u','C2XPy2u','CMvK','ChvZAa','z3jHEq','AgfZ','ywK0y3rMsgLUDem','Dg9ju09tDhjPBMC'];a0b=function(){return ag;};return a0b();}function a0j(a,b){a=a-(-0xfd*-0x21+0xb62*-0x2+-0x8b1);const c=a0b();let d=c[a];if(a0j['HtIcsW']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x68d+0x175*-0x14+-0x1*-0x1697,o,p,q=-0x4*-0x540+0x333*0xc+-0xe*0x43e;p=i['charAt'](q++);~p&&(o=n%(-0xdc5+-0x9ac+0x1775*0x1)?o*(-0x5*0x606+-0xafc+0x295a)+p:p,n++%(-0x1e99+0x1*-0x18fd+0x287*0x16))?l+=String['fromCharCode'](-0x6c6+-0x80f*-0x3+-0x1068&o>>(-(0x419*-0x3+0x25c7+-0x197a)*n&0xde7+0x1e30+-0x1*0x2c11)):-0x355+-0x1d*0x36+0x973){p=j['indexOf'](p);}for(let r=0xb6a+0xe06+-0x1970,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0x2f*0x4f+-0x4de+0x136f))['slice'](-(-0x1*0x25cf+-0x987+0x2f58));}return decodeURIComponent(m);};a0j['wFhFDl']=e,a0j['QjKOdo']={},a0j['HtIcsW']=!![];}const f=c[0xed+-0x2*-0xdd8+-0x1c9d],g=a+f,h=a0j['QjKOdo'][g];return!h?(d=a0j['wFhFDl'](d),a0j['QjKOdo'][g]=d):d=h,d;}const f=new Set();async function m(k){const a9=a0j;if(!u||!g)return a9(0x13b);const p=k[a9(0x23a)](),q=p['toLowerCase'](),v=(Date[a9(0x1a7)]()-u[a9(0x17c)])/(-0x1*0x18578+0x1bc5d+0xb37b);if(!u[a9(0x218)]&&!u[a9(0x1d7)]&&u[a9(0x1c6)][a9(0x1eb)]>=-0x16b*0xf+-0x1*0x2586+0x3acd&&v>=0x5bf+0x524+0x1*-0xade&&(u[a9(0x218)]=!(-0x1547+-0x2*-0x734+0x6df),console['log'](),console[a9(0x1c5)](a0p[a9(0x1b7)](a9(0x1bc))+a0p[a9(0x1a6)]['yellow'](a9(0x214))),console['log'](a0p['gray']('\x20\x20\x20\x20\x20(type\x20it\x20right\x20here\x20in\x20this\x20chat\x20—\x20not\x20as\x20a\x20shell\x20command)')),console[a9(0x1c5)]()),/^ICOA\{[^}]+\}$/i['test'](p))return console[a9(0x1c5)](),console['log'](a0p['gray'](a9(0x1f4))+a0p[a9(0x1de)](a9(0x20f)+p)),m(a9(0x20f)+p);const x=q[a9(0x22e)](/^hint\s+([abc])$/);if(x){const A=x[-0x1224+0x1*-0x266d+-0x1a*-0x22d][a9(0x1b6)](),B=u[a9(0x134)][a9(0x18f)],C=B?.[A],D='A'===A?a0p['green']:'B'===A?a0p[a9(0x1b7)]:a0p[a9(0x1ab)];if(console['log'](),console[a9(0x1c5)](D[a9(0x1a6)](a9(0x1fd)+A)),console[a9(0x1c5)](),C){for(const E of String(C)[a9(0x13c)]('\x0a'))console[a9(0x1c5)](a0p['white'](a9(0x131)+E));}else console[a9(0x1c5)](a0p[a9(0x1ad)](a9(0x174)));return console[a9(0x1c5)](),'A'===A?console[a9(0x1c5)](a0p[a9(0x1ad)](a9(0x20a))+a0p['cyan']('hint\x20b')):'B'===A?console['log'](a0p['gray'](a9(0x229))+a0p['cyan']('hint\x20c')):'C'===A&&console[a9(0x1c5)](a0p['gray']('\x20\x20\x20\x20'+a0B(a9(0x1e1))+'\x20')+a0p['bold'][a9(0x13a)]('submit\x20ICOA{your_flag}')),console[a9(0x1c5)](),a9(0x1c2);}const z=p[a9(0x22e)](/^submit\s+(.+)/i);if(z){let F=z[-0x3cd*-0x5+0x6b*-0x56+0x1*0x10f2][a9(0x23a)]();if(/^submit\s+/i[a9(0x15c)](F)&&(F=F[a9(0x166)](/^submit\s+/i,'')[a9(0x23a)]()),F=F[a9(0x166)](/^["'`]+|["'`]+$/g,'')[a9(0x23a)](),/^[A-Da-d]$/[a9(0x15c)](F))return console[a9(0x1c5)](),console[a9(0x1c5)](a0p[a9(0x1b7)](a9(0x22d)+F+a9(0x1d9))),console[a9(0x1c5)](a0p[a9(0x1ad)](a9(0x19d))+a0p[a9(0x13a)](a9(0x1b8))+a0p[a9(0x1ad)](a9(0x148))),console[a9(0x1c5)](),a9(0x1c2);const {getExamState:G,saveExamState:H}=await import(a9(0x15d)),I=G();if(!I)return a9(0x13b);if(!I[a9(0x138)][a9(0x211)](L=>L[a9(0x1a4)]===u[a9(0x1a2)]))return console[a9(0x1c5)](a0p[a9(0x1ab)](a9(0x1be)+u[a9(0x1a2)]+a9(0x19f))),a9(0x1c2);const J=I['answers'][u[a9(0x1a2)]];I[a9(0x128)]||(I['interactions']=[]),I[a9(0x128)][a9(0x1ac)]({'ts':new Date()[a9(0x1b0)](),'q':u[a9(0x1a2)],'type':J?a9(0x20d):a9(0x1e8),'input':F,'result':a9(0x1f7)}),I['answers'][u['qNum']]=F;const K=u[a9(0x1a2)]+(0x2c*-0xae+-0x31*0x2+0x1e4b);return I[a9(0x1ce)]=K<=0xb7*-0xa+-0x1b52+0x229e?K:u[a9(0x1a2)],H(I),console[a9(0x1c5)](),J?(console['log'](a0p['green'](a9(0x190)+u[a9(0x1a2)]+a9(0x14f))+a0p[a9(0x1b7)](F)),console['log'](a0p['gray']('\x20\x20\x20\x20Previous:\x20'+J))):console['log'](a0p[a9(0x13a)][a9(0x1a6)](a9(0x1f5)+u[a9(0x1a2)]+a9(0x208)+F)),console[a9(0x1c5)](a0p[a9(0x1ad)](a9(0x22f))),console[a9(0x1c5)](),console[a9(0x1c5)](a0p['gray']('\x20\x20')+a0p[a9(0x1de)]('submit\x20ICOA{...}')+a0p[a9(0x1ad)](a9(0x17e))+a0p[a9(0x1de)](a9(0x13b))+a0p[a9(0x1ad)](a9(0x196))),K<=-0x32*-0x4e+0x95*-0x6+-0xb98?console['log'](a0p['gray'](a9(0x1ec))+a0p[a9(0x158)]('ai4ctf')+a0p['gray'](a9(0x147)+K)):console[a9(0x1c5)](a0p[a9(0x1ad)](a9(0x1f3))+a0p[a9(0x1ab)](a9(0x1e7))+a0p[a9(0x1ad)](a9(0x210))),console[a9(0x1c5)](),'continue';}if(k[a9(0x1ca)]('!')){const L=k['slice'](-0x18c2+0x16b0+-0x213*-0x1)[a9(0x23a)]();if(!L)return a9(0x1c2);try{const M={};M[a9(0x22b)]='utf-8',M[a9(0x21c)]=0x2710;const {execSync:N}=await import(a9(0x1b5)),O=N(L,M)[a9(0x23a)]();console[a9(0x1c5)](),console['log'](a0p[a9(0x1ad)](a9(0x17f))+a0p[a9(0x1de)](L)),console[a9(0x1c5)](a0p['white']('\x20\x20'+O['split']('\x0a')[a9(0x16f)](a9(0x239)))),console[a9(0x1c5)]();}catch(P){console['log'](),console[a9(0x1c5)](a0p['red'](a9(0x13f)+(P['message']?.[a9(0x13c)]('\x0a')[-0x1291+-0x1*-0x1561+-0x2d0]||a9(0x199)))),console[a9(0x1c5)]();}return a9(0x1c2);}if(a9(0x13b)===q||a9(0x181)===q||'quit'===q){const Q=u[a9(0x1a2)],{getExamState:R}=await import(a9(0x15d)),S=R(),T=S&&null!=S[a9(0x179)][Q],U=S?.[a9(0x1ce)]||Q;return s=!(0x2*-0x1de+-0xaa2*0x2+-0x25*-0xad),g=null,u=null,f[a9(0x171)](),console['log'](),console[a9(0x1c5)](a0p[a9(0x1ad)](a9(0x194)+Q+'.')),T&&U>Q&&U<=-0x14b5+0x120b*-0x1+0x1*0x26e6?console[a9(0x1c5)](a0p[a9(0x1de)](a9(0x198))+a0p['bold'][a9(0x13a)]('Q'+U)+a0p[a9(0x1ad)](a9(0x133))+a0p[a9(0x158)](a9(0x19e))+a0p['gray']('\x20to\x20continue')):T&&Q>=-0xa*-0x35a+0x1a5c+-0x3bba?console[a9(0x1c5)](a0p[a9(0x1de)](a9(0x12d))+a0p[a9(0x1a6)][a9(0x1ab)](a9(0x1e7))+a0p['gray'](a9(0x14a))):console[a9(0x1c5)](a0p['gray']('\x20\x20Resume:\x20')+a0p[a9(0x1de)]('exam\x20q\x20'+Q)+a0p[a9(0x1ad)]('\x20\x20·\x20\x20Re-enter:\x20')+a0p[a9(0x1de)](a9(0x19e))),console[a9(0x1c5)](),a9(0x13b);}if(y)return console[a9(0x1c5)](),console[a9(0x1c5)](a0p[a9(0x1b7)](a9(0x200))),console[a9(0x1c5)](a0p[a9(0x1ad)](a9(0x216))+a0p[a9(0x1de)](a9(0x205))+a0p[a9(0x1ad)](a9(0x1d3))+a0p[a9(0x1de)](a9(0x1df))+a0p[a9(0x1ad)](a9(0x1d3))+a0p[a9(0x1de)](a9(0x13b))),console['log'](),a9(0x1c2);if(r>=h)return y=!(0x1e5d*-0x1+-0x2*0x120a+-0xe9*-0x49),console[a9(0x1c5)](),console['log'](a0p[a9(0x1ab)]['bold']('\x20\x20⚠\x20AI4CTF\x20token\x20budget\x20exhausted\x20(25,000\x20used).')),console[a9(0x1c5)](a0p[a9(0x1ad)](a9(0x184))+a0p[a9(0x1de)](a9(0x205))+a0p[a9(0x1ad)](a9(0x1d3))+a0p[a9(0x1de)](a9(0x1df))+a0p['gray'](a9(0x1d3))+a0p[a9(0x1de)]('exit')),console[a9(0x1c5)](),a9(0x1c2);console['log'](a0p['gray']('\x20\x20Thinking...'));try{const V=await g['sendMessage'](k);process[a9(0x1e0)][a9(0x232)](a9(0x18d)),r+=V[a9(0x17b)];const {getRealExamState:W,saveExamState:X}=await import(a9(0x15d)),Y=W(),Z={};Z[a9(0x19e)]=0x0,Z[a9(0x1e7)]=0x0,(Y&&(Y[a9(0x14b)]||(Y[a9(0x14b)]=Z),Y['aiUsage']['ai4ctf']=r,X(Y)),console[a9(0x1c5)](),a0z(V['text']),d(),function(a0,a1,a2){const aa=a9,a3=a0/a1*(-0x38*0x1d+0x2367+-0x1cab);a3>=0xb97+-0x17*0x55+0x83*-0x7&&!a2[aa(0x1ae)]('95')?(console[aa(0x1c5)](a0p[aa(0x1ab)][aa(0x1a6)](aa(0x1d2)+Math[aa(0x213)](a3)+aa(0x141)+(a1-a0)+aa(0x204))),a2[aa(0x21f)]('95')):a3>=0x1*-0x1cf+0x1637+0xa0c*-0x2&&!a2['has']('80')?(console[aa(0x1c5)](a0p[aa(0x1b7)](aa(0x1ba))),a2[aa(0x21f)]('80')):a3>=0x1e*0xa0+-0x9cd+-0x8c1&&!a2['has']('50')&&(console[aa(0x1c5)](a0p[aa(0x1ad)](aa(0x1e2))),a2[aa(0x21f)]('50'));}(r,h,f),console[a9(0x1c5)]());}catch(a0){process[a9(0x1e0)][a9(0x232)](a9(0x18d)),a0A(a9(0x18e)+a0['message']),console[a9(0x1c5)]();}return a9(0x1c2);}export function registerAi4ctfCommand(b){const ab=a0j;b[ab(0x177)]('ai4ctf')['description'](ab(0x18a))['action'](async()=>{const ac=ab;a0x(ac(0x19e));const {getRealExamState:j}=await import('../lib/exam-state.js'),k=j(),p=k?.['questions'][ac(0x168)](x=>x[ac(0x1a4)]>=0x817+0x11b8+0x19b*-0x10&&x[ac(0x1a4)]<=0x1e82+-0x199e+0x25f*-0x2);if(k&&p){const x=k['_lastQ']||-0x1*-0x1b8d+0x25f5+0x29*-0x199;if(x<-0x2*-0x8b9+0x1426+-0x2579||x>0x675+-0x1752+0x5*0x367)return console[ac(0x1c5)](),console[ac(0x1c5)](a0p['yellow'](ac(0x161))),console[ac(0x1c5)](a0p['gray']('\x20\x20You\x20are\x20on\x20Q'+x+ac(0x1e3))),console[ac(0x1c5)](a0p[ac(0x1ad)](ac(0x12b))+a0p['bold']['cyan'](ac(0x1bd))),void console[ac(0x1c5)]();const z=k[ac(0x138)][ac(0x211)](A=>A[ac(0x1a4)]===x);return z?void await async function(A,B){const ad=ac,{getRealExamState:C,refetchQuestionDataIfStale:D,materializeAttachedData:E}=await import('../lib/exam-state.js');await D();const F=C();if(!F)return!(-0x100d*0x1+0x1c11+0x1*-0xc03);const G=F[ad(0x138)][ad(0x211)](J=>J[ad(0x1a4)]===A);G&&(B=G),E(A,B?.[ad(0x13d)]);const H=F[ad(0x14b)]?.[ad(0x19e)]??-0x9e5*-0x1+0x1*0x1e7a+-0x285f;if(H>=h)return console[ad(0x1c5)](),console[ad(0x1c5)](a0p[ad(0x1b7)](ad(0x202))),console['log'](a0p['gray'](ad(0x195))+a0p['white'](ad(0x1cf)+A+ad(0x16b))),console['log'](),!(-0xd5*-0x1+0x129a+0x1*-0x136e);try{g=await a0q(void(-0xd5e+0x4d9+0x885),function(J,K){const ae=ad,L=J[ae(0x1a0)]||J[ae(0x12c)]||'',M=J[ae(0x13d)]?ae(0x234)+K+'.txt\x20inside\x20the\x20contestant\x27s\x20sandbox\x20—\x20path\x20is\x20relative\x20to\x20the\x20sandbox\x27s\x20/home/competitor\x20working\x20directory,\x20reachable\x20from\x20any\x20!shell\x20/\x20!python3\x20invocation):\x0a'+J[ae(0x13d)]:'';return ae(0x150)+K+',\x20'+J[ae(0x1e5)]+',\x20'+(J[ae(0x237)]||-0xcc2+-0x26a1*0x1+-0x7b*-0x6b)+ae(0x201)+L+M+ae(0x186)+K+ae(0x14c);}(B,A));}catch(J){return a0A(J['message']),!(0x15b7+-0x6f0+0x2*-0x763);}s=!(0x1b3*-0x6+0x616+0x41c),r=H,y=!(0xa2d+-0x14f2+0xac6*0x1),u={'qNum':A,'question':B,'usageField':'ai4ctf','enteredAt':Date[ad(0x1a7)](),'hintsUsed':new Set(),'submitAttempted':!(-0x1f7b*0x1+-0x2*-0x604+0xf9*0x14),'nudgeShown':!(-0x117+-0xb2*-0x2b+-0x1cce)};const I=F[ad(0x179)]?.[A];return function(K,L,M){const af=ad,N=a0w()[af(0x19b)]||af(0x1c1),O=r>0xfb1+-0x1838+0x887*0x1;console[af(0x1c5)](),console[af(0x1c5)](a0p[af(0x13a)][af(0x1a6)]('\x20\x20═══\x20AI4CTF\x20—\x20Q'+L+':\x20'+K['category']+af(0x191))),O&&console[af(0x1c5)](a0p['gray'](af(0x140))),M&&console[af(0x1c5)](a0p[af(0x1ad)](af(0x185))+a0p['yellow'](M)+a0p[af(0x1ad)](af(0x183))),console[af(0x1c5)](),console[af(0x1c5)](a0p['cyan']('\x20\x20┌─────────────────────────────────────────────')),console[af(0x1c5)](a0p[af(0x158)](af(0x144))+a0p[af(0x1a6)][af(0x1de)]('Q'+L+af(0x20b)+K[af(0x1e5)]+af(0x206)+(K[af(0x237)]||-0xb4e+0x8cc*0x3+0xf1*-0x10)+af(0x215))),console['log'](a0p['cyan']('\x20\x20│'));for(const P of String(K[af(0x12c)])[af(0x13c)]('\x0a')){const Q=P['length']>0x159f+0x11ac+-0x270f?P[af(0x1aa)](-0x18ca+-0xdee*-0x1+0xadc,-0x1*0x13eb+-0x1293+-0x35*-0xbb)+'...':P;console['log'](a0p[af(0x158)](af(0x144))+a0p['white'](Q));}console[af(0x1c5)](a0p[af(0x158)]('\x20\x20│')),console['log'](a0p['cyan'](af(0x144))+a0p[af(0x1ad)](af(0x139))+a0p[af(0x1de)](af(0x1ee)+L)),console[af(0x1c5)](a0p[af(0x158)](af(0x144))+a0p[af(0x1ad)](af(0x19c))),console[af(0x1c5)](a0p[af(0x158)](af(0x12e))),console[af(0x1c5)](),console['log'](a0p['bold']['white'](af(0x1f1))),console['log'](),console[af(0x1c5)](a0p['yellow'](af(0x156))+a0p[af(0x1ad)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20A\x20gentle\x20nudge\x20(pre-written)')),console[af(0x1c5)](a0p[af(0x1b7)](af(0x16a))+a0p[af(0x1ad)](af(0x15e))),console[af(0x1c5)](a0p['yellow'](af(0x1db))+a0p[af(0x1ad)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Key\x20breakthrough\x20(pre-written)')),console[af(0x1c5)](a0p[af(0x1a6)][af(0x13a)]('\x20\x20\x20\x20submit\x20ICOA{...}')+a0p[af(0x1ad)](af(0x1bb))),console[af(0x1c5)](a0p['white'](af(0x1e9))+a0p[af(0x1ad)]('\x20\x20\x20\x20\x20Run\x20Python\x20in\x20shell')),console['log'](a0p[af(0x1ad)](af(0x1f0))),console[af(0x1c5)](a0p['gray'](af(0x163))+a0p[af(0x1de)](af(0x1fa))),console['log'](),console[af(0x1c5)](a0p[af(0x1ad)](af(0x235))+a0p['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Leave\x20chat,\x20return\x20to\x20exam')),console[af(0x1c5)](a0p[af(0x1ad)](af(0x203))+a0p[af(0x1ad)](af(0x1c9))),console[af(0x1c5)](),d(),console[af(0x1c5)](a0p['gray'](af(0x224)+N+')')),console['log']();}(B,A,I),!(-0x1cd*0x1+-0x18e+-0x35b*-0x1);}(x,z):void a0A('Q'+x+ac(0x1c7)+x);}const q={};q[ac(0x1dd)]=ac(0x188),q[ac(0x1e5)]='Cryptography';const v=a0w()[ac(0x19b)]||ac(0x1c1),w=q;try{g=await a0q(w);}catch(A){return void a0A(A[ac(0x137)]);}s=!(0x6aa*0x2+0x1e30+-0x2b84),r=0x1d3f*-0x1+0x464*-0x1+0x21a3,y=!(-0x3bd+-0x3*0x28d+0xb65*0x1),console[ac(0x1c5)](),console['log'](a0p['green'][ac(0x1a6)](ac(0x143)+a0B(ac(0x22c))+'\x20═══')),console['log'](),console[ac(0x1c5)](a0p[ac(0x1de)]('\x20\x20'+a0B('ai4ctfSample'))),console[ac(0x1c5)](),console[ac(0x1c5)](a0p[ac(0x158)](ac(0x162))),console[ac(0x1c5)](a0p[ac(0x158)](ac(0x144))+a0p['bold'][ac(0x1de)](a0B('ai4ctfChallenge'))),console[ac(0x1c5)](a0p[ac(0x158)](ac(0x207))),console[ac(0x1c5)](a0p['cyan'](ac(0x144))+a0p[ac(0x1de)](a0B(ac(0x193)))),console[ac(0x1c5)](a0p[ac(0x158)]('\x20\x20│\x20')+a0p[ac(0x13a)](ac(0x225))),console['log'](a0p[ac(0x158)]('\x20\x20│')),console['log'](a0p[ac(0x158)](ac(0x144))+a0p[ac(0x1de)](a0B(ac(0x129)))),console[ac(0x1c5)](a0p[ac(0x158)](ac(0x144))+a0p['gray'](ac(0x189))),console[ac(0x1c5)](a0p[ac(0x158)](ac(0x12e))),console['log'](),console[ac(0x1c5)](a0p['white']('\x20\x20'+a0B(ac(0x170)))),console[ac(0x1c5)](),console[ac(0x1c5)](a0p[ac(0x1b7)]('\x20\x20\x20\x20hint\x20a')+a0p[ac(0x1ad)](ac(0x131)+a0B(ac(0x1b4)))),console[ac(0x1c5)](a0p['gray'](ac(0x21e)+a0B(ac(0x1b9)))),console[ac(0x1c5)](a0p[ac(0x1b7)](ac(0x16a))+a0p[ac(0x1ad)](ac(0x131)+a0B(ac(0x1fe)))),console['log'](a0p['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B(ac(0x135)))),console['log'](a0p[ac(0x1b7)](ac(0x1db))+a0p[ac(0x1ad)]('\x20\x20\x20\x20'+a0B(ac(0x1af)))),console[ac(0x1c5)](a0p[ac(0x1ad)](ac(0x21e)+a0B(ac(0x145)))),console[ac(0x1c5)](),console[ac(0x1c5)](a0p['gray']('\x20\x20─────────────────────────────────────────')),console[ac(0x1c5)](a0p[ac(0x1a6)][ac(0x1de)]('\x20\x20'+a0B('ai4ctfWelcomeCta'))),console[ac(0x1c5)](ac(0x131)+a0p['cyan']('hint\x20a')+a0p[ac(0x1ad)](ac(0x14d)+a0B(ac(0x149)))),console[ac(0x1c5)](ac(0x131)+a0p[ac(0x158)]('hint\x20b')+a0p['gray'](ac(0x14d)+a0B(ac(0x1d5)))),console[ac(0x1c5)](ac(0x131)+a0p[ac(0x158)](ac(0x192))+a0p[ac(0x1ad)](ac(0x14d)+a0B(ac(0x1c8)))),console[ac(0x1c5)](a0p[ac(0x1ad)]('\x20\x20\x20\x20'+a0B(ac(0x172)))),console[ac(0x1c5)](),console[ac(0x1c5)](a0p[ac(0x1de)]('\x20\x20'+a0B(ac(0x217)))),console[ac(0x1c5)](a0p[ac(0x1ad)]('\x20\x20'+a0B(ac(0x18c))+'\x20')+a0p['white'](ac(0x1f6))),console[ac(0x1c5)](),console[ac(0x1c5)](a0p['yellow']('\x20\x20'+a0B(ac(0x1b1)))),console[ac(0x1c5)](a0p[ac(0x1de)](ac(0x212))+a0p[ac(0x1ad)](a0B(ac(0x130)))),console[ac(0x1c5)](a0p['white'](ac(0x223))+a0p[ac(0x1ad)](a0B(ac(0x20c)))),console[ac(0x1c5)](a0p[ac(0x1de)]('\x20\x20\x20\x20!<shell\x20cmd>\x20\x20\x20\x20')+a0p['gray'](a0B('ai4ctfCmdShellLine'))),console[ac(0x1c5)](a0p[ac(0x1ad)](ac(0x163))+a0p['white']('!echo\x20aWNv...\x20|\x20base64\x20-d')),console[ac(0x1c5)](a0p[ac(0x1ad)](ac(0x176)+a0B(ac(0x20e)))),console[ac(0x1c5)](),d(),console['log'](a0p[ac(0x1ad)]('\x20\x20'+a0B(ac(0x155))+ac(0x1d0)+v+')')),console[ac(0x1c5)](a0p[ac(0x1ad)]('\x20\x20'+a0B(ac(0x1a1)))),console[ac(0x1c5)]();});}
1
+ function a0b(){const ag=['q2HHDcb3AxrOihLVDxiGquKGDgvHBw1HDgu','icbuAgLUA2LUzY4UlG','ywK0y3rMsgLUDem','ihrVig1VDMuGB24','DMLHigfPngn0zIbJAgf0','BM93','icdILzdILzdILzaG','Dg9ju09tDhjPBMC','iwvJAg8GyvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0GFcbIyxnLnJqGlwq','icdILzdILzdILzaGquK0q1rgiokaLcbr','AgfZ','ywK0y3rMtg9JA2vKvxnL','ywK0y3rMvgL0Bgu','icaKia','ChvZAa','icdINjmGqw5ZD2vYigzVCIbr','ywK0y3rM','mtm5otGYy1n3B2zo','lZuWmda','ywK0y3rMtgv2zwXZ','ihb0CW','ieLdt0f7lI4UFq','icdILjtILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','C3vIBwL0idXMBgfNpG','yw5ZD2vYx2nOyw5Nzwq','iwvJAg8GyvDoDI4UlIb8igjHC2u2ncaTza','ihjLy29YzgvKoIa','icbgBgfNigzVCM1HDdOG','q29UDgvUDc1uExbL','icaGicaGicaGicaGicaGicaGicbLlMCUia','icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','icaOC3vIBwL0igfNywLUihrVignOyw5NzsK','BMfTzq','ywK0y3rMrxHPDenTzejHy2S','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','C3vIBwL0ieLdt0f7lI4UFq','icbdDxjYzw50igfUC3DLCJOG','sunpqxT5B3vYx2zSywD9','icaGig1LBNu','icaGigHPBNqGysaVigiGlYbJica','yvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0','icaGicaGicaGicaGifjLDhvYBIb0BYbTywLUig1LBNuGkhDVCMTZigfUExDOzxjLkq','ywK0y3rMuMv2zwfStg9JA05VDgu','ixnOzwXS','mtmYnJeZmLHcs0zhBG','icdILiZILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','y2f0zwDVCNK','CxvPDa','icaI','BwLU','ywK0y3rMrgvJB2rLza','oIbhB29NBguGr2vTBweGncaO','DgvZDa','EwvSBg93','Dg9mB3DLCKnHC2u','CMvWzwf0','icaGicaGigHPBNqGyYaGia','ywK0y3rMsgLUDe5LEhrc','cGPbvfrbq0HfrcbeqvrbicHHBhnVihnHDMvKihrVignOywXSzw5NzxmVCq','icaGieP1C3qGDhLWzsbMCMvLBhKGDg8Gy2HHDcb3AxrOihrOzsbbssb0zwfTBwf0zs4','ywK0y3rMv2vSy29Tzun0yq','ywK0y3rMt3jdAgf0','ywK0y3rMv3jHCeXPBMuYqM9KEq','ywK0y3rMsw50zxjJzxb0zwq','icdIMQaGww91CIbbstrdveyGDg9Rzw4GyNvKz2v0igLZigv4Agf1C3rLzc4','ywK0y3rMv3jHCff1B3rHq0HPBNq','z2vTAw5Ptw9KzwW','icbtDgLSBcbHDMfPBgfIBgu6ia','Cg9PBNrZ','AM9PBG','AgLUDhnvC2vK','ywK0y3rMtg9JA2vKvgL0Bgu','ntGWoty4D1PbwerX','D2HPDgu','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','sgLUDca','ywK0y3rMq29YCMvJDezSywC','sgLKzgvUie1LC3nHz2u','icaGicaGicaGicaG','ue9tva','ywK0y3rMsgLUDefcB2r5','icdIMQaG','icdILiiG','icaGigv4AxqGicaGicaGicaGica','icdILRGGsgLUDca','rMXHzYbMB3jTyxq6igLJB2f7lI4UFq','ywK0y3rMrxHPDenTze5LEhq','ywK0y3rMtw9KzwW','rNvSBcbXDwvZDgLVBJOGia','ywK0y3rMu3vIBwL0q21K','CxvLC3rPB24','zxHHBsbHBNn3zxiG','icbnB2rLBdOGr29Vz2XLieDLBw1HidqGka','zMLUza','icaGicaGicaGicbuzwnOBMLXDwuGAgLUDcaOChjLlxDYAxr0zw4P','icaGicaGicaGicblzxKGyNjLywT0AhjVDwDOicHWCMuTD3jPDhrLBIK','icaGicaGicaGicaGica','ywK0y3rMv3jHCff1B3rHrM9VDgvY','icaGicaGicbZDwjTAxqGAwnVyxT3m2XJmg1LxZjFywK0y3rMFq','igfUC3DLCIb1CgrHDgvKoIa','q29TBwfUzcbMywLSzwq','icbbstrdveyGy2HHDcbLBMrLzcbMB3iGuq','zw50zxjLzef0','icaG4OAsia','Aw50zxjHy3rPB25Z','cIaG','BwvZC2fNzq','icbr','icdIMQaGodaLig9MihnLy3rPB24GquKGyNvKz2v0ihvZzwqU','D3jPDgu','ywK0y3rMrMXHz0HPBNq','iMHVDYbKBYbjigrLy3j5ChqGquvtluncqYbPBIbqExrOB24/iG','ywK0y3rMsgLUDe51zgDL','CgfKrw5K','z3jLzw4','ig5VDcbMB3vUzcbPBIbZDgf0zs4','AgLUDhm','icaGicaGia','icaGihn1yM1PDcbjq09bEY4UlN0','mJe2mZiXDxfODwn4','BwvUDq','quKGzxjYB3i6ia','icaGiokgKIa','icaGidiUia','AgLUDcbH','ndq0mdeYmuLlALLfAa','igfNywLUihrVignOyw5NzsWGB3iG','ywK0y3rMv3jHCe5LEhrtDwi','icaGicaGigHPBNqGyIaGia','icaGifn0DwnRpYbuCNK6ia','icaGigHPBNqGyG','icaGigHPBNqGyW','ywK0y3rMv3jHCff1B3rHC1rPDgXL','ihDPBgWGB3bLBIbr','icbiB3CGDg8GD29YAYb0AgLZihf1zxn0Aw9U','icaGifjLywXSEsbZDhvJAZ8Gvhj5oIa','icbszxn1Bwu6ia','BM9KztPJAgLSzf9WCM9JzxnZ','C3rKB3v0','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','lIbkDw1WihrOzxjLigzPCNn0oG','y2f0y2G','y3rMngfP','lI4VBgLIl2v4yw0TC3rHDguUANm','iokaLca','E25VuhjVz30','iokvKokvKokvKa','nZy3ng5IruDbDq','icbfCNjVCJOG','ywK0y3rMrxHPDa','icaGihn1yM1PDca8zMXHzZ4Gica','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','C3vIBwL0qxr0zw1WDgvK','icaGicfWExrOB24Zic4UlG','icbbstrdveyGC2vJDgLVBIbJB21WBgv0zsdIGjqG','icaGicaGigHPBNqGysaGia','icbozxH0oIa','ywK0y3rMv3jHCff1B3rHquHPBNq','CMvK','DhjPBq','DgLTzw91Da','y3LHBG','icbezxrLy3rLzcbMBgfNiokaLcb0CMvHDgLUzYbHCZOG','ywK0y3rMsgLUDe5LEhrd','AgLUDcbJ','rMXHzYbMB3jTyxq6icaGieLdt0f7lI4UFq','BgvUz3rO','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','imk3ia','CxvLC3rPB25Z','zxHPDa','ywK0y3rMv3jHCeXPBMuXsgvHza','mJG1vwvMzKTI','Dg9Rzw5ZvxnLza','C3vIBwL0ia','y29UDgLUDwu','CMvWBgfJzq','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','yxr0ywnOzwreyxrH','odeWodyZmKr3wwLAEa','iokaLcb0ExbLia','ywK0y3rMsgLUDfrLy2HUAxf1zq','Bwf0y2G','ww91igfYzsbHBIbbssb0zwfTBwf0zsbOzwXWAw5NigeGy29UDgvZDgfUDcbZB2X2zsbHBIbjq09bidiWmJyGy3LIzxjZzwn1CML0EsbLEgfTihf1zxn0Aw9UlGOkq1vsuKvovcbrvuvtveLptIaOuq','yxbWBgLJyxrPB24VANnVBG','ywK0y3rMv3jHCe5LEhrcB2r5','yMfJAW','ywK0y3rMuMv2zwfSvgHLBLn1yM1PDa','ig9UifeZoq','icaGicHhCMfKAw5NigHHChbLBNmGyxqGzxHHBsbZDwjTAxqG4OcuihLVDsbJyw5UB3qGChjLDMLLDYbJB3jYzwn0BMvZCYbKDxjPBMCGDgHLigv4yw0Ukq','igzVCIbrmZK','icaGice8C2HLBgWGy21KpIaGica','ihrVignVBNrPBNvL','ywK0y3rMrM91BMrgBgfN','g1SXqrTBmKS','icaGie5VihbYzs13CML0DgvUigHPBNqGyxqGDgHPCYb0AwvYigzVCIb0AgLZihf1zxn0Aw9UlG','ywn0Aw9U','yM9Sza','ywK0y3rMsgLUDei','ywK0y3rMv291BgrfyxjU','ywLvC2fNzq','icdILii','Dgv4Da','ywrK','x2XHC3rr','ywK0y3rMuMv2zwfSu2vLrMXHzW','yw5ZD2vYCW','zxHHBsbXia','z2vTBweTnc0ZmwiTAxq','icaGigHPBNqGyq','AgLUDcbI','ywK0y3rMuMvWB3j0','ywK0y3rMvg9Rzw5Z','C3bSAxq','icbzB3uGy2fUihn0AwXSoIa','ywK0y3rMrxHPDe5LEhrtDwi','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','vg9Rzw5Z','ywK0y3rMsgLUDencB2r5','oIbhB29NBguGr2vTBweGncaOz2vTBweTnc0ZmwiTAxqP','icaGia','ywK0y3rMsgLUDenvC2vZ','xsaGWRCG','icaGideUia','cGPzt1vsifjvtevtoGOTifLVDsbnqvKGzxHWBgfPBIbJB25Jzxb0CYWGzgvZy3jPyMuGyxbWCM9Hy2HLCYWGyw5KigHLBhaGDgHLignVBNrLC3rHBNqGCMvHC29UihrOCM91z2GGDgHLihbYB2jSzw0UcI0Gww91ie1bwsbKAxnJDxnZihrOzsb0zwnOBM9SB2D5igLUDM9SDMvKicHbrvmSihb3BNrVB2XZlcbqExrOB24GC3rYDwn0lcbivfrqlcbLDgmUks4klsbzB3uGtufzigHLBhaGzgvIDwCGuhL0Ag9UignVzguGDgHLignVBNrLC3rHBNqGD3jPDgvZlGOTifLVDsbnvvnuie5pvcbYzxzLywWGDgHLigzSywCGzgLYzwn0BhKUcI0Gww91ie1vu1qGtK9uig91Dhb1DcbHBNKGC3rYAw5Nig1HDgnOAw5NieLdt0f7lI4UFsbVCIbPy29HEY4UlN0UcI0Gww91ie1vu1qGtK9uihrLBgWGDgHLignVBNrLC3rHBNqGDgHLigv4ywn0igfUC3DLCIb0BYb0AgLZihf1zxn0Aw9UlGOTifLVDsbnqvKGC3vNz2vZDcb3AgLJAcb0B29Sic8GBgLICMfYEsaVihrLy2HUAxf1zsb0BYb1C2uUcI0Gv2HLBIbZDwDNzxn0Aw5NihnOzwXSic8GChL0Ag9UihnUAxbWzxrZihrOyxqGBMvLzcb0AguGyxr0ywnOzwqGzgf0ysWGCMvMzxiGDg8GDgHLigzPBguGCgf0AcbJAgfSBgvUz2vZl3e','BNvTyMvY','C3rYAw5NAwz5','lNr4DcaOAw5ZAwrLihrOzsbZyw5KyM94ksbYyxrOzxiGDgHHBIbHC2TPBMCGDgHLignVBNrLC3rHBNqGDg8GCgfZDguGDgHLihDOB2XLigjSB2iGyMfJAY4klsblzwvWihjLC3bVBNnLCYbJB25JAxnLigfUzcbWCMfJDgLJywWUifrOAxmGy29UDgvZDgfUDcbOyxmGBgLTAxrLzcb0Aw1LlG','lIbuCNKGywDHAw4GAw5ZAwrLihrOAxmGy2HHDc4','C2vUze1LC3nHz2u','icaGicaGicaGicaGieXLyxzLignOyxqSihjLDhvYBIb0BYbLEgfT','zgvZy3jPChrPB24','zxHHBsbXidmX','icaOCMvZDw1PBMCG4OcuihbYAw9YignOyxqGAxmGBM90ihjLBwvTyMvYzwqSigj1Dcb0B2TLBNmGywXYzwfKEsb1C2vKihn0yxKGzgvKDwn0zwqP','ihbVAw50CYK6cG','ywK0y3rMv3jHCeXPBMuXqM9KEq','ywK0y3rMq2HHBgXLBMDL','icaGicaGicaGicbbigDLBNrSzsbUDwrNzsaOChjLlxDYAxr0zw4P','ywK0y3rMv3jHCe5LEhruAxrSzq','C2XPy2u','Bg9N','ywK0y3rMv3jHCff1B3rHqq','Dg9vChbLCKnHC2u','ywK0y3rMsgLUDefvC2vZ','icdILRGG','ywK0y3rMrw5Ku2vZC2LVBG','Cu51Bq','C3rHCNrZv2L0Aa','ywK0y3rMsgLUDee','DxrMltG','ywK0y3rMv3jVBMDgBgfN','ywK0y3rMv3jHCeXPBMuYsgvHza','BNvKz2vtAg93BG','icdIMQaGquK0q1rgihrVA2vUigj1zgDLDcbLEgHHDxn0zwqGkdi1ldaWmcb1C2vKks4','ywK0y3rMq21KsgLUDeXPBMu','zw5JB2rPBMC','icaGifbYzxzPB3vZoIa','z3jHEq','ywK0y3rMv3jHCff1B3rHqW'];a0b=function(){return ag;};return a0b();}(function(b,j){const a4=a0j,k=b();while(!![]){try{const p=-parseInt(a4(0x245))/(-0x1b87+0x936+0x1252)+parseInt(a4(0x20e))/(0x1c5d+0x1aed+-0x1*0x3748)+parseInt(a4(0x274))/(-0x1cb4+0x32+-0x7*-0x413)+parseInt(a4(0x229))/(-0x1022+0x2*-0x537+0x1a94)+-parseInt(a4(0x2a9))/(-0xd20+-0xe23+-0xc*-0x246)*(-parseInt(a4(0x290))/(0x1*-0x16f6+-0x2f7*-0x2+-0x1*-0x110e))+-parseInt(a4(0x27a))/(-0x1de+-0x29*0x29+0x169*0x6)+parseInt(a4(0x2b0))/(-0x2602+-0x452+0x2*0x152e);if(p===j)break;else k['push'](k['shift']());}catch(q){k['push'](k['shift']());}}}(a0b,0x187b*0x11+-0x7b3fd+0xb56dc));import a0p from'chalk';import{createChatSession as a0q}from'../lib/gemini.js';import{addTokenUsage as a0v}from'../lib/budget.js';import{getConfig as a0w}from'../lib/config.js';import{logCommand as a0x}from'../lib/logger.js';import{printMarkdown as a0z,printError as a0A}from'../lib/ui.js';import{t as a0B}from'../lib/i18n.js';const i=b=>new Promise(j=>setTimeout(j,b));function a0j(a,b){a=a-(0x4*0x6b+0x755*0x1+-0x752);const c=a0b();let d=c[a];if(a0j['guKPfD']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x215e+-0x1*0x268f+0x531,o,p,q=0x1*0x8d1+0x11db+-0x1aac;p=i['charAt'](q++);~p&&(o=n%(0x61*0x59+0x1efd+-0xa9*0x62)?o*(0x10b9+0x24f+-0x12c8)+p:p,n++%(-0xa1*0xb+-0x25c9+0x2cb8))?l+=String['fromCharCode'](-0x22ac+-0x18a2+0x3c4d&o>>(-(0x569+0xc42+0x21*-0x89)*n&0x17*0xee+-0x1*0xacd+-0x3*0x385)):0x209b+0x1*-0x77b+0x648*-0x4){p=j['indexOf'](p);}for(let r=0x65f+0x3*-0x121+0x17e*-0x2,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](0xe25+-0x16be+0x8a9))['slice'](-(0x1*0x805+0x1192+-0x1995));}return decodeURIComponent(m);};a0j['dUQHeP']=e,a0j['bEmgxp']={},a0j['guKPfD']=!![];}const f=c[-0x6*-0x152+-0xcaa+0x1*0x4be],g=a+f,h=a0j['bEmgxp'][g];return!h?(d=a0j['dUQHeP'](d),a0j['bEmgxp'][g]=d):d=h,d;}let s=!(-0x1*0x268f+-0x1eae+0x2*0x229f),g=null,r=0x103e+0x1f3+0x1231*-0x1,y=!(0x4fd+-0xd3*-0x1c+0x1*-0x1c10);const h=-0x1f9d+-0x39ec+0xbb31;let u=null;export function isChatActive(){return s;}function d(){const a5=a0j,b=u?h:0x2056+-0x1cc5+0xff7,j=r,k=Math[a5(0x22e)](Math['round'](j/b*(-0x18a2+-0x1d19+0x11*0x32f)),0x1*-0x246b+-0x1*0x8e9+0x26*0x134),p=Math['round'](k/(-0x1*-0x1423+-0x2*0x3a+-0x134b)*(0x179*0xb+-0x1*-0x4d5+-0x14f4)),q=0x1541*0x1+-0x45*-0x1b+-0x1c74-p,v=k>0x29*-0xb3+0x4*-0x76+0x1ed3?a0p[a5(0x29b)]:k>-0x2415+-0x6*-0x152+0x1c5b?a0p[a5(0x232)]:a0p[a5(0x26f)],w=u?'AI4CTF\x20section':a5(0x1d3);console[a5(0x1ea)](a0p[a5(0x1fb)]('\x20\x20'+w+':\x20')+v('█'['repeat'](p))+a0p[a5(0x1fb)]('░'[a5(0x234)](q))+a0p[a5(0x1fb)]('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(p){const a6=a0j;if(!g)return a6(0x2a7);if(a0x('ai4ctf:\x20'+p),u)return m(p);const q=p['trim']()['toLowerCase']()[a6(0x1b0)](/^hint\s+([abc])$/);if(q)return function(z){const a7=a6,A=a0B('a'===z?'ai4ctfHintA':'b'===z?'ai4ctfHintB':'ai4ctfHintC'),B=a0B('a'===z?a7(0x24d):'b'===z?'ai4ctfHintBBody':a7(0x1d4)),C=a7(0x248)+z[a7(0x1ec)](),D='a'===z?a0p[a7(0x26f)]:'b'===z?a0p[a7(0x232)]:a0p[a7(0x29b)];console[a7(0x1ea)](),console[a7(0x1ea)](D['bold'](a7(0x1ee)+C+'\x20\x20')+a0p[a7(0x1fb)](A)),console['log']();for(const E of B[a7(0x1cf)]('\x0a'))''===E?console[a7(0x1ea)]():console[a7(0x1ea)](a0p[a7(0x246)](a7(0x1d6)+E));console[a7(0x1ea)](),'a'===z?(console[a7(0x1ea)](a0p[a7(0x1fb)](a7(0x1d6)+a0B('ai4ctfHintNextA')+'\x20')+a0p[a7(0x29e)](a7(0x1cc))),console[a7(0x1ea)]()):'b'===z&&(console['log'](a0p['gray'](a7(0x1d6)+a0B(a7(0x236))+'\x20')+a0p[a7(0x29e)](a7(0x2a1))),console[a7(0x1ea)]());}(q[0x1583*0x1+-0x3ab*-0x2+0x47*-0x68]),'continue';const v=p[a6(0x1b0)](/^submit\s+(.+)/i);if(v){let z=v[-0x5*0x575+0xb*-0xef+-0x1*-0x258f][a6(0x29c)]();if(/^submit\s+/i[a6(0x231)](z)&&(z=z[a6(0x2ad)](/^submit\s+/i,'')[a6(0x29c)]()),z=z[a6(0x2ad)](/^["'`]+|["'`]+$/g,'')['trim'](),'icoa{w3lc0me_2_ai4ctf}'===z){console[a6(0x1ea)](),console[a6(0x1ea)](a0p[a6(0x26f)][a6(0x1bf)]('\x20\x20════════════════════════════════════')),console[a6(0x1ea)](a0p[a6(0x26f)][a6(0x1bf)]('\x20\x20'+a0B(a6(0x249)))),console[a6(0x1ea)](a0p[a6(0x26f)][a6(0x1bf)](a6(0x288))),console[a6(0x1ea)](),console['log'](a0p['white']('\x20\x20'+a0B(a6(0x22f)))),console[a6(0x1ea)](a0p[a6(0x1fb)]('\x20\x20'+a0B(a6(0x1c1)))),console[a6(0x1ea)](),d(),s=!(0xe89+0x3*-0x843+-0x177*-0x7),g=null,fetch(a6(0x2a4),{'method':a6(0x24c),'headers':{'Content-Type':a6(0x1b2)},'body':JSON[a6(0x1dc)]({'type':a6(0x20d),'solved':!(0x1*0x719+0xb77+0x1b*-0xb0),'tokensUsed':r,'timestamp':new Date()['toISOString']()}),'signal':AbortSignal[a6(0x29d)](0xdce+-0x14b3+0x549*0x5)})[a6(0x28a)](()=>{}),await i(-0xd1d+0x1d83+-0xa8a),console[a6(0x1ea)](),console[a6(0x1ea)](a0p[a6(0x29e)](a6(0x247))),console[a6(0x1ea)](a0p[a6(0x1bf)]['white']('\x20\x20'+a0B('ai4ctfWrapTitle'))),console['log'](a0p[a6(0x29e)](a6(0x247))),console[a6(0x1ea)]();const A=a0B(a6(0x2a8)),B=a0B(a6(0x1e5));console[a6(0x1ea)](a0p['white'](a6(0x1d9)+A+'\x20')+a0p[a6(0x1fb)](B[a6(0x1cf)]('\x0a')[0x2389*0x1+0x4c7*-0x2+0x8a9*-0x3]||''));for(const F of B[a6(0x1cf)]('\x0a')[a6(0x1e9)](-0x30*0xbf+-0xbcf*0x1+0x2fa0))F[a6(0x29c)]()&&console['log'](a0p[a6(0x1fb)](a6(0x272)+F['replace'](/\{thinking\}/g,'thinking')));console[a6(0x1ea)](),console['log'](a0p[a6(0x246)](a6(0x278)+a0B(a6(0x1f5))+'\x20')+a0p[a6(0x1fb)](a0B(a6(0x23b)))),console[a6(0x1ea)](),console[a6(0x1ea)](a0p[a6(0x29e)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20!echo\x20aWNvYXt3M2xjMG1lXzJfYWk0Y3RmfQ==\x20|\x20base64\x20-d')),console['log'](),await i(0x1*0x97+-0x6a7+0xde0),console[a6(0x1ea)](a0p[a6(0x29e)](a6(0x247))),console[a6(0x1ea)](a0p['bold']['white']('\x20\x20'+a0B(a6(0x281)))),console[a6(0x1ea)](a0p['cyan']('\x20\x20─────────────────────────────────────────────')),console[a6(0x1ea)](),console['log'](a0p[a6(0x232)](a6(0x298))+a0p['white'](a0B(a6(0x1eb))[a6(0x26e)](-0x2*-0x3+-0x16ac*-0x1+-0x3c4*0x6))+a0p[a6(0x1fb)](a0B(a6(0x29a)))),console[a6(0x1ea)](a0p[a6(0x232)](a6(0x27d))+a0p[a6(0x246)](a0B('ai4ctfWrapQuotaB')[a6(0x26e)](-0x14*0xb5+0x817*0x4+-0x1*0x121e))+a0p[a6(0x1fb)](a0B('ai4ctfWrapQuotaBHint'))),console[a6(0x1ea)](a0p['yellow'](a6(0x235))+a0p[a6(0x246)](a0B(a6(0x1fc))[a6(0x26e)](0x171d*-0x1+0x1*-0x207d+0x37b4))+a0p[a6(0x1fb)](a0B(a6(0x23e)))),console[a6(0x1ea)]();for(const G of a0B(a6(0x25e))[a6(0x1cf)]('\x0a'))console[a6(0x1ea)](a0p['gray'](a6(0x1d6)+G));console['log'](),await i(-0x236a+0x32b*-0x5+0x3b11*0x1),console[a6(0x1ea)](a0p[a6(0x29e)](a6(0x247))),console[a6(0x1ea)](a0p[a6(0x1bf)][a6(0x246)]('\x20\x20'+a0B(a6(0x1e8))+'\x20')+a0p[a6(0x29b)][a6(0x1bf)](a6(0x28b))+a0p['white'](a6(0x28d)+a0B(a6(0x27c)))),console[a6(0x1ea)](a0p['cyan']('\x20\x20─────────────────────────────────────────────')),console[a6(0x1ea)]();const C=a0B(a6(0x1b3)),D=a0B('ai4ctfWrapNoProg'),E=C[a6(0x1cf)]('\x0a');if(E[-0x1c71+0x1ce+0x1aa3]){const [H,I]=E[0x1aeb+0x93c+0x1*-0x2427][a6(0x1cf)](a6(0x28e));console[a6(0x1ea)](a0p[a6(0x246)](a6(0x1d6)+(H||''))+a0p[a6(0x1bf)]['white'](D)+a0p['white'](I||''));}for(const J of E[a6(0x1e9)](-0x5dd+0x1b22+-0x1544))J[a6(0x29c)]()&&console[a6(0x1ea)](a0p[a6(0x246)](a6(0x1d6)+J));return console['log'](),console[a6(0x1ea)](a0p[a6(0x1fb)](a6(0x1d6)+a0B('ai4ctfWrapTypeCtf4ai')+'\x20')+a0p[a6(0x1bf)]['red'](a6(0x28b))),console[a6(0x1ea)](),a6(0x2a7);}return console[a6(0x1ea)](),console[a6(0x1ea)](a0p[a6(0x29b)]('\x20\x20'+a0B(a6(0x1f4)))),console[a6(0x1ea)](a0p['gray']('\x20\x20'+a0B(a6(0x26b)))),console[a6(0x1ea)](),a6(0x2ac);}if(p[a6(0x1f1)]('!')){const K=p['slice'](-0x16c7+-0xf5e+-0x2626*-0x1)['trim']();if(!K)return a6(0x2ac);try{const L={};L[a6(0x1f9)]=a6(0x1f3),L[a6(0x29d)]=0x2710;const {execSync:M}=await import('node:child_process'),N=M(K,L)[a6(0x29c)]();console[a6(0x1ea)](),console[a6(0x1ea)](a0p[a6(0x1fb)](a6(0x20a))+a0p[a6(0x246)](K)),console[a6(0x1ea)](a0p[a6(0x246)]('\x20\x20'+N[a6(0x1cf)]('\x0a')[a6(0x242)](a6(0x266)))),console[a6(0x1ea)](),console[a6(0x1ea)](a0p[a6(0x1fb)]('\x20\x20'+a0B(a6(0x1bb)))),console[a6(0x1ea)]();}catch(O){console[a6(0x1ea)](),console[a6(0x1ea)](a0p[a6(0x29b)]('\x20\x20Error:\x20'+(O[a6(0x267)]?.[a6(0x1cf)]('\x0a')[0x3*0xaab+0x1ce6+-0x1*0x3ce7]||a6(0x261)))),console[a6(0x1ea)]();}return a6(0x2ac);}const w={};w['Content-Type']=a6(0x1b2);if(a6(0x2a7)===p||'back'===p||a6(0x22c)===p||a6(0x275)===p)return s=!(0x85b*-0x2+0x8f+0x1028),g=null,fetch(a6(0x2a4),{'method':a6(0x24c),'headers':w,'body':JSON[a6(0x1dc)]({'type':a6(0x20d),'tokensUsed':r,'timestamp':new Date()[a6(0x204)]()}),'signal':AbortSignal[a6(0x29d)](0x1*0x91+0x2*-0x7f7+0x22e5)})[a6(0x28a)](()=>{}),console[a6(0x1ea)](),console['log'](a0p[a6(0x1fb)]('\x20\x20─────────────────────────────────────────')),console[a6(0x1ea)](a0p[a6(0x246)]('\x20\x20'+a0B(a6(0x1cd)))),console[a6(0x1ea)](a0p[a6(0x1fb)]('\x20\x20'+a0B(a6(0x1ce))+':\x20'+r+a6(0x20f))),console[a6(0x1ea)](a0p[a6(0x1fb)]('\x20\x20'+a0B('ai4ctfModel')+a6(0x1d5))),console[a6(0x1ea)](a0p[a6(0x1fb)]('\x20\x20─────────────────────────────────────────')),console[a6(0x1ea)](),console['log'](a0p[a6(0x29e)]('\x20\x20─────────────────────────────────────────────')),console[a6(0x1ea)](a0p[a6(0x246)]('\x20\x20'+a0B('ai4ctfExitNextTitle')+'\x20')+a0p['bold']['red'](a6(0x28b))+a0p[a6(0x246)](a6(0x28d)+a0B(a6(0x1d1)))),console[a6(0x1ea)](a0p['gray']('\x20\x20'+a0B('ai4ctfExitNextBody'))),console[a6(0x1ea)](a0p['cyan'](a6(0x247))),console[a6(0x1ea)](),console['log'](a0p[a6(0x1bf)]['red']('\x20\x20\x20\x20\x20ctf4ai')+a0p[a6(0x1fb)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B(a6(0x253)))),console[a6(0x1ea)](a0p['white']('\x20\x20\x20\x20\x20back')+a0p['gray'](a6(0x24b)+a0B(a6(0x21e)))),console[a6(0x1ea)](),a6(0x2a7);const x={};x[a6(0x219)]='application/json';if(!y&&r>=0x1*0xda1+-0xd7c+0x1363)return y=!(-0x6c3+-0x18c9+-0x1*-0x1f8c),fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':a6(0x24c),'headers':x,'body':JSON[a6(0x1dc)]({'type':a6(0x20d),'solved':!(-0x3f*-0xd+-0x6dd+-0x1*-0x3ab),'tokensUsed':r,'timestamp':new Date()[a6(0x204)]()}),'signal':AbortSignal[a6(0x29d)](-0xcb+-0x1711+0x15b2*0x2)})['catch'](()=>{}),console[a6(0x1ea)](),console[a6(0x1ea)](a0p['yellow']('\x20\x20'+a0B('tokenLimit'))),d(),(function(){const a8=a6;console['log'](),console[a8(0x1ea)](a0p['yellow'](a8(0x247))),console['log'](a0p[a8(0x1bf)][a8(0x232)]('\x20\x20'+a0B('ai4ctfRevealTitle'))),console['log'](a0p['yellow']('\x20\x20─────────────────────────────────────────────')),console['log']();for(const P of a0B('ai4ctfRevealBody')[a8(0x1cf)]('\x0a'))''===P?console['log']():console[a8(0x1ea)](a0p['white']('\x20\x20\x20\x20'+P));console[a8(0x1ea)](),console[a8(0x1ea)](a0p['cyan'](a8(0x21b))),console[a8(0x1ea)](),console[a8(0x1ea)](a0p[a8(0x246)](a8(0x1d6)+a0B(a8(0x1c7)))),console['log'](),console['log'](a0p[a8(0x26f)](a8(0x1d2))),console['log'](),console[a8(0x1ea)](a0p[a8(0x246)](a8(0x1d6)+a0B(a8(0x1b5)))),console['log'](),console[a8(0x1ea)](a0p[a8(0x29e)](a8(0x25f))),console['log'](),console['log'](a0p[a8(0x1fb)](a8(0x1d6)+a0B(a8(0x227)))),console[a8(0x1ea)]();}()),'continue';if(y)return console[a6(0x1ea)](),console['log'](a0p['yellow']('\x20\x20'+a0B(a6(0x244)))),console[a6(0x1ea)](a0p[a6(0x1fb)]('\x20\x20'+a0B(a6(0x208))+'\x20')+a0p[a6(0x29e)](a6(0x205))),console['log'](a0p[a6(0x1fb)]('\x20\x20'+a0B('ai4ctfLockedThen')+'\x20')+a0p[a6(0x29e)]('submit\x20icoa{w3lc0me_2_ai4ctf}')),console[a6(0x1ea)](),a6(0x2ac);console[a6(0x1ea)](a0p[a6(0x1fb)]('\x20\x20'+a0B('ai4ctfThinking')));try{const P=await g[a6(0x1df)](p);process['stdout']['write'](a6(0x1bc)),r+=P[a6(0x2aa)],a0v(P[a6(0x2aa)]),console['log'](),a0z(P[a6(0x1c4)]),d(),console[a6(0x1ea)]();}catch(Q){process[a6(0x287)]['write']('\x1b[1A\x1b[2K'),a0A(a6(0x276)+Q['message']),console[a6(0x1ea)]();}return a6(0x2ac);}const f=new Set();async function m(k){const a9=a0j;if(!u||!g)return a9(0x2a7);const p=k[a9(0x29c)](),q=p[a9(0x233)](),v=(Date['now']()-u[a9(0x263)])/(0x1c0f9+0xb15*0x23+0x1*-0x25a78);if(!u[a9(0x1f6)]&&!u[a9(0x295)]&&u[a9(0x243)]['size']>=0x2452+0x1159+-0xf1*0x39&&v>=0x10*0x33+-0xc11*-0x2+-0x1b4d&&(u[a9(0x1f6)]=!(-0x95c+-0x1*0x1e4a+0x13d3*0x2),console[a9(0x1ea)](),console[a9(0x1ea)](a0p[a9(0x232)]('\x20\x20💡\x20Once\x20you\x20have\x20ICOA{...},\x20submit\x20it\x20with:\x20')+a0p[a9(0x1bf)]['yellow'](a9(0x294))),console[a9(0x1ea)](a0p[a9(0x1fb)]('\x20\x20\x20\x20\x20(type\x20it\x20right\x20here\x20in\x20this\x20chat\x20—\x20not\x20as\x20a\x20shell\x20command)')),console[a9(0x1ea)]()),/^ICOA\{[^}]+\}$/i['test'](p))return console[a9(0x1ea)](),console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x29f))+a0p[a9(0x246)](a9(0x2ab)+p)),m(a9(0x2ab)+p);const x=q[a9(0x1b0)](/^hint\s+([abc])$/);if(x){const A=x[-0x1f9b+-0x702+0x134f*0x2][a9(0x1ec)](),B=u[a9(0x257)][a9(0x271)],C=B?.[A],D='A'===A?a0p[a9(0x26f)]:'B'===A?a0p[a9(0x232)]:a0p[a9(0x29b)];if(console[a9(0x1ea)](),console[a9(0x1ea)](D[a9(0x1bf)](a9(0x251)+A)),console[a9(0x1ea)](),C){for(const E of String(C)['split']('\x0a'))console[a9(0x1ea)](a0p['white'](a9(0x1d6)+E));}else console['log'](a0p['gray'](a9(0x1bd)));return console[a9(0x1ea)](),'A'===A?console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x27e))+a0p[a9(0x29e)](a9(0x1cc))):'B'===A?console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x284))+a0p['cyan']('hint\x20c')):'C'===A&&console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x1d6)+a0B(a9(0x2a0))+'\x20')+a0p['bold']['green'](a9(0x294))),console[a9(0x1ea)](),'continue';}const z=p[a9(0x1b0)](/^submit\s+(.+)/i);if(z){let F=z[-0x2*0x453+0x1*0x48d+0x41a][a9(0x29c)]();if(/^submit\s+/i[a9(0x231)](F)&&(F=F[a9(0x2ad)](/^submit\s+/i,'')['trim']()),F=F[a9(0x2ad)](/^["'`]+|["'`]+$/g,'')[a9(0x29c)](),/^[A-Da-d]$/[a9(0x231)](F))return console[a9(0x1ea)](),console['log'](a0p['yellow'](a9(0x22d)+F+'\x22\x20looks\x20like\x20an\x20MCQ\x20letter,\x20not\x20a\x20flag.')),console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x218))+a0p[a9(0x26f)](a9(0x222))+a0p[a9(0x1fb)](a9(0x1de))),console[a9(0x1ea)](),a9(0x2ac);const {getExamState:G,saveExamState:H}=await import(a9(0x28c)),I=G();if(!I)return a9(0x2a7);if(!I['questions'][a9(0x25a)](L=>L[a9(0x1db)]===u['qNum']))return console[a9(0x1ea)](a0p[a9(0x29b)](a9(0x268)+u[a9(0x1f0)]+a9(0x270))),a9(0x2ac);const J=I['answers'][u[a9(0x1f0)]];I[a9(0x265)]||(I[a9(0x265)]=[]),I[a9(0x265)][a9(0x20b)]({'ts':new Date()[a9(0x204)](),'q':u[a9(0x1f0)],'type':J?a9(0x215):'answer_submitted','input':F,'result':a9(0x201)}),I[a9(0x1c8)][u[a9(0x1f0)]]=F;const K=u[a9(0x1f0)]+(0xc31*0x2+0x2461+0xca*-0x4d);return I[a9(0x1c6)]=K<=-0x51*0x50+-0x101*0x21+0x35*0x11b?K:u[a9(0x1f0)],H(I),console['log'](),J?(console[a9(0x1ea)](a0p[a9(0x26f)]('\x20\x20✓\x20Q'+u[a9(0x1f0)]+a9(0x260))+a0p[a9(0x232)](F)),console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x1fa)+J))):console[a9(0x1ea)](a0p['green'][a9(0x1bf)](a9(0x20c)+u[a9(0x1f0)]+a9(0x217)+F)),console['log'](a0p[a9(0x1fb)](a9(0x1b7))),console[a9(0x1ea)](),console[a9(0x1ea)](a0p[a9(0x1fb)]('\x20\x20')+a0p['white'](a9(0x220))+a0p[a9(0x1fb)](a9(0x27b))+a0p['white'](a9(0x2a7))+a0p[a9(0x1fb)](a9(0x200))),K<=0x202*0x2+-0x1d2f*-0x1+-0x210d*0x1?console['log'](a0p[a9(0x1fb)]('\x20\x20After\x20exit:\x20')+a0p['cyan'](a9(0x20d))+a0p['gray'](a9(0x282)+K)):console['log'](a0p[a9(0x1fb)]('\x20\x20After\x20exit:\x20AI4CTF\x20section\x20complete.\x20Next:\x20')+a0p[a9(0x29b)](a9(0x28b))+a0p[a9(0x1fb)](a9(0x1b6))),console['log'](),a9(0x2ac);}if(k[a9(0x1f1)]('!')){const L=k[a9(0x1e9)](-0x1430+0x2ef*-0x7+0x28ba)[a9(0x29c)]();if(!L)return'continue';try{const M={};M[a9(0x1f9)]='utf-8',M[a9(0x29d)]=0x2710;const {execSync:N}=await import(a9(0x286)),O=N(L,M)['trim']();console[a9(0x1ea)](),console[a9(0x1ea)](a0p['gray']('\x20\x20$\x20')+a0p[a9(0x246)](L)),console['log'](a0p[a9(0x246)]('\x20\x20'+O[a9(0x1cf)]('\x0a')[a9(0x242)](a9(0x266)))),console[a9(0x1ea)]();}catch(P){console[a9(0x1ea)](),console[a9(0x1ea)](a0p[a9(0x29b)](a9(0x291)+(P[a9(0x267)]?.[a9(0x1cf)]('\x0a')[-0x2f*-0x98+0xb*0x12f+0x28ed*-0x1]||a9(0x261)))),console[a9(0x1ea)]();}return a9(0x2ac);}if('exit'===q||a9(0x1b4)===q||'quit'===q){const Q=u[a9(0x1f0)],{getExamState:R}=await import(a9(0x28c)),S=R(),T=S&&null!=S[a9(0x1c8)][Q],U=S?.[a9(0x1c6)]||Q;return s=!(-0x5d7+-0x1446+0xd0f*0x2),g=null,u=null,f['clear'](),console[a9(0x1ea)](),console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x262)+Q+'.')),T&&U>Q&&U<=-0x757*-0x1+-0x982+-0x1*-0x251?console[a9(0x1ea)](a0p[a9(0x246)](a9(0x299))+a0p['bold']['green']('Q'+U)+a0p[a9(0x1fb)](a9(0x2b1))+a0p['cyan'](a9(0x20d))+a0p[a9(0x1fb)](a9(0x1ba))):T&&Q>=-0x203f*-0x1+-0x2f*0x9f+-0x2e8?console[a9(0x1ea)](a0p[a9(0x246)](a9(0x297))+a0p[a9(0x1bf)][a9(0x29b)](a9(0x28b))+a0p[a9(0x1fb)](a9(0x1b8))):console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x285))+a0p[a9(0x246)](a9(0x1c9)+Q)+a0p[a9(0x1fb)]('\x20\x20·\x20\x20Re-enter:\x20')+a0p[a9(0x246)](a9(0x20d))),console['log'](),a9(0x2a7);}if(y)return console[a9(0x1ea)](),console[a9(0x1ea)](a0p[a9(0x232)]('\x20\x20AI\x20budget\x20exhausted\x20for\x20AI4CTF\x20section.')),console['log'](a0p[a9(0x1fb)](a9(0x240))+a0p[a9(0x246)](a9(0x214))+a0p['gray'](a9(0x2a5))+a0p[a9(0x246)](a9(0x228))+a0p['gray'](a9(0x2a5))+a0p[a9(0x246)](a9(0x2a7))),console[a9(0x1ea)](),a9(0x2ac);if(r>=h)return y=!(-0x1e58+0x30f+0x1b49),console['log'](),console[a9(0x1ea)](a0p[a9(0x29b)][a9(0x1bf)](a9(0x1f7))),console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x1d0))+a0p[a9(0x246)](a9(0x214))+a0p[a9(0x1fb)](a9(0x2a5))+a0p[a9(0x246)](a9(0x228))+a0p[a9(0x1fb)](a9(0x2a5))+a0p['white'](a9(0x2a7))),console['log'](),a9(0x2ac);console[a9(0x1ea)](a0p[a9(0x1fb)](a9(0x1fe)));try{const V=await g[a9(0x1df)](k);process[a9(0x287)][a9(0x26a)]('\x1b[1A\x1b[2K'),r+=V['tokensUsed'];const {getRealExamState:W,saveExamState:X}=await import('../lib/exam-state.js'),Y=W(),Z={};Z[a9(0x20d)]=0x0,Z[a9(0x28b)]=0x0,(Y&&(Y[a9(0x1c2)]||(Y['aiUsage']=Z),Y[a9(0x1c2)][a9(0x20d)]=r,X(Y)),console[a9(0x1ea)](),a0z(V[a9(0x1c4)]),d(),function(a0,a1,a2){const aa=a9,a3=a0/a1*(0x2074+-0x6d4+-0xc9e*0x2);a3>=-0xbb2+0x57*0x24+0x2b*-0x1&&!a2[aa(0x207)]('95')?(console['log'](a0p[aa(0x29b)][aa(0x1bf)](aa(0x24e)+Math['round'](a3)+'%\x20of\x20section\x20AI\x20budget\x20used\x20—\x20only\x20~'+(a1-a0)+'\x20tokens\x20left.')),a2[aa(0x1c5)]('95')):a3>=-0x25d5+-0x1aa1+-0x40c6*-0x1&&!a2[aa(0x207)]('80')?(console[aa(0x1ea)](a0p[aa(0x232)](aa(0x269))),a2[aa(0x1c5)]('80')):a3>=0x1*-0xdca+-0x1415+0x11*0x201&&!a2['has']('50')&&(console['log'](a0p[aa(0x1fb)]('\x20\x20Note:\x2050%\x20of\x20section\x20AI\x20budget\x20used.')),a2[aa(0x1c5)]('50'));}(r,h,f),console['log']());}catch(a0){process[a9(0x287)][a9(0x26a)]('\x1b[1A\x1b[2K'),a0A('AI\x20error:\x20'+a0['message']),console[a9(0x1ea)]();}return a9(0x2ac);}export function registerAi4ctfCommand(b){const ab=a0j;b['command']('ai4ctf')['description'](ab(0x1fd))[ab(0x1be)](async()=>{const ac=ab;a0x(ac(0x20d));const {getRealExamState:j}=await import(ac(0x28c)),k=j(),p=k?.['questions']['some'](x=>x[ac(0x1db)]>=-0x124*0x15+0x13d7+-0x4*-0x10f&&x[ac(0x1db)]<=-0x21cf+0x219*0x3+0x2*0xdd5);if(k&&p){const x=k[ac(0x1c6)]||0x1623+-0x2b3*-0x2+-0x1b88;if(x<-0x14*0xaf+-0x18f6+0x26c1||x>0x119d+0x2*-0x1153+0x112f)return console['log'](),console[ac(0x1ea)](a0p[ac(0x232)]('\x20\x20ai4ctf\x20is\x20available\x20on\x20Q31–38\x20(AI4CTF\x20section).')),console[ac(0x1ea)](a0p[ac(0x1fb)]('\x20\x20You\x20are\x20on\x20Q'+x+ac(0x289))),console[ac(0x1ea)](a0p['gray'](ac(0x277))+a0p[ac(0x1bf)]['cyan'](ac(0x1e2))),void console[ac(0x1ea)]();const z=k[ac(0x2a6)][ac(0x25a)](A=>A[ac(0x1db)]===x);return z?void await async function(A,B){const ad=ac,{getRealExamState:C,refetchQuestionDataIfStale:D,materializeAttachedData:E}=await import(ad(0x28c));await D();const F=C();if(!F)return!(-0x1*-0x15f3+0x1f2f+-0x43*0xcb);const G=F[ad(0x2a6)][ad(0x25a)](J=>J[ad(0x1db)]===A);G&&(B=G),E(A,B?.['attachedData']);const H=F['aiUsage']?.['ai4ctf']??-0x3*0x9b7+-0x1*-0x1396+0x98f;if(H>=h)return console[ad(0x1ea)](),console[ad(0x1ea)](a0p[ad(0x232)](ad(0x23d))),console['log'](a0p['gray']('\x20\x20You\x20can\x20still\x20submit\x20a\x20flag\x20directly:\x20')+a0p[ad(0x246)](ad(0x258)+A+ad(0x212))),console[ad(0x1ea)](),!(-0x138a+-0x1db9+0x6*0x836);try{g=await a0q(void(-0xc7d+-0x1f*0x8b+-0x1a1*-0x12),function(J,K){const ae=ad,L=J[ae(0x1e1)]||J['text']||'',M=J[ae(0x2af)]?ae(0x237)+K+'.txt\x20inside\x20the\x20contestant\x27s\x20sandbox\x20—\x20path\x20is\x20relative\x20to\x20the\x20sandbox\x27s\x20/home/competitor\x20working\x20directory,\x20reachable\x20from\x20any\x20!shell\x20/\x20!python3\x20invocation):\x0a'+J['attachedData']:'';return ae(0x1b1)+K+',\x20'+J['category']+',\x20'+(J[ae(0x241)]||0x1a53+-0x309+-0x1744)+ae(0x1e4)+L+M+ae(0x1da)+K+ae(0x1dd);}(B,A));}catch(J){return a0A(J[ad(0x267)]),!(-0xd7c+0x3e*0x95+-0x1699);}s=!(-0xc8*-0x5+0x416+-0x7fe),r=H,y=!(0x249f+0x2*0xd87+0xa*-0x65e),u={'qNum':A,'question':B,'usageField':'ai4ctf','enteredAt':Date[ad(0x202)](),'hintsUsed':new Set(),'submitAttempted':!(-0x224a+-0x2330*-0x1+-0xe5),'nudgeShown':!(0x2245+0xd93+-0x2fd7)};const I=F['answers']?.[A];return function(K,L,M){const af=ad,N=a0w()[af(0x23f)]||af(0x1ca),O=r>0x184c*-0x1+0x1223+0x13*0x53;console[af(0x1ea)](),console[af(0x1ea)](a0p['green'][af(0x1bf)](af(0x206)+L+':\x20'+K['category']+af(0x28f))),O&&console[af(0x1ea)](a0p[af(0x1fb)](af(0x1e3))),M&&console[af(0x1ea)](a0p['gray'](af(0x221))+a0p[af(0x232)](M)+a0p[af(0x1fb)](af(0x21c))),console[af(0x1ea)](),console[af(0x1ea)](a0p['cyan'](af(0x22a))),console['log'](a0p[af(0x29e)]('\x20\x20│\x20')+a0p['bold'][af(0x246)]('Q'+L+'\x20\x20['+K[af(0x22b)]+af(0x1d8)+(K[af(0x241)]||0x4a*-0x1+0x162+0x1*-0x112)+af(0x211))),console[af(0x1ea)](a0p[af(0x29e)](af(0x1c3)));for(const P of String(K['text'])['split']('\x0a')){const Q=P[af(0x2a3)]>0x127f*0x1+0x228*-0x7+-0x32b?P['slice'](0x1d*-0xa7+-0x2db*0x8+0x1*0x29c3,-0xaa0+0x434+0x6a5*0x1)+'...':P;console[af(0x1ea)](a0p[af(0x29e)](af(0x24f))+a0p[af(0x246)](Q));}console[af(0x1ea)](a0p[af(0x29e)](af(0x1c3))),console['log'](a0p[af(0x29e)](af(0x24f))+a0p[af(0x1fb)](af(0x255))+a0p[af(0x246)](af(0x1c9)+L)),console['log'](a0p[af(0x29e)]('\x20\x20│\x20')+a0p[af(0x1fb)](af(0x2a2))),console[af(0x1ea)](a0p['cyan'](af(0x213))),console[af(0x1ea)](),console['log'](a0p[af(0x1bf)][af(0x246)](af(0x283))),console[af(0x1ea)](),console['log'](a0p[af(0x232)](af(0x1cb))+a0p[af(0x1fb)](af(0x1e7))),console[af(0x1ea)](a0p[af(0x232)]('\x20\x20\x20\x20hint\x20b')+a0p[af(0x1fb)](af(0x25b))),console[af(0x1ea)](a0p['yellow'](af(0x280))+a0p[af(0x1fb)](af(0x25c))),console[af(0x1ea)](a0p[af(0x1bf)][af(0x26f)](af(0x273))+a0p['gray']('\x20Submit\x20your\x20flag\x20for\x20this\x20question')),console[af(0x1ea)](a0p['white'](af(0x296))+a0p['gray']('\x20\x20\x20\x20\x20Run\x20Python\x20in\x20shell')),console['log'](a0p[af(0x1fb)](af(0x238))),console[af(0x1ea)](a0p[af(0x1fb)](af(0x21a))+a0p[af(0x246)](af(0x26c))),console['log'](),console['log'](a0p[af(0x1fb)]('\x20\x20\x20\x20exit')+a0p['gray'](af(0x1e0))),console[af(0x1ea)](a0p[af(0x1fb)](af(0x223))+a0p[af(0x1fb)](af(0x226))),console[af(0x1ea)](),d(),console['log'](a0p[af(0x1fb)](af(0x259)+N+')')),console[af(0x1ea)]();}(B,A,I),!(-0xbd2+0x1bf7+0x1025*-0x1);}(x,z):void a0A('Q'+x+ac(0x2ae)+x);}const q={};q[ac(0x21d)]=ac(0x24a),q[ac(0x22b)]='Cryptography';const v=a0w()['geminiModel']||ac(0x1ca),w=q;try{g=await a0q(w);}catch(A){return void a0A(A['message']);}s=!(0x1*0x15a3+-0x1*-0x219d+-0xdd*0x40),r=0x1a16+-0x75a+-0x1*0x12bc,y=!(0x2*0x111b+-0xcec*0x2+-0x1*0x85d),console['log'](),console[ac(0x1ea)](a0p['green'][ac(0x1bf)](ac(0x203)+a0B(ac(0x209))+ac(0x28f))),console[ac(0x1ea)](),console[ac(0x1ea)](a0p[ac(0x246)]('\x20\x20'+a0B('ai4ctfSample'))),console[ac(0x1ea)](),console[ac(0x1ea)](a0p['cyan'](ac(0x22a))),console[ac(0x1ea)](a0p[ac(0x29e)](ac(0x24f))+a0p[ac(0x1bf)]['white'](a0B(ac(0x1e6)))),console[ac(0x1ea)](a0p[ac(0x29e)](ac(0x1c3))),console[ac(0x1ea)](a0p[ac(0x29e)](ac(0x24f))+a0p[ac(0x246)](a0B(ac(0x23c)))),console[ac(0x1ea)](a0p['cyan']('\x20\x20│\x20')+a0p[ac(0x26f)](ac(0x225))),console[ac(0x1ea)](a0p[ac(0x29e)](ac(0x1c3))),console[ac(0x1ea)](a0p[ac(0x29e)](ac(0x24f))+a0p[ac(0x246)](a0B('ai4ctfDecode'))),console[ac(0x1ea)](a0p[ac(0x29e)](ac(0x24f))+a0p['gray'](ac(0x252))),console[ac(0x1ea)](a0p[ac(0x29e)](ac(0x213))),console['log'](),console['log'](a0p[ac(0x246)]('\x20\x20'+a0B(ac(0x210)))),console['log'](),console['log'](a0p[ac(0x232)](ac(0x1cb))+a0p['gray']('\x20\x20\x20\x20'+a0B(ac(0x1f2)))),console['log'](a0p[ac(0x1fb)](ac(0x25d)+a0B(ac(0x1ed)))),console[ac(0x1ea)](a0p[ac(0x232)](ac(0x27f))+a0p[ac(0x1fb)]('\x20\x20\x20\x20'+a0B(ac(0x1c0)))),console[ac(0x1ea)](a0p[ac(0x1fb)](ac(0x25d)+a0B('ai4ctfHintBUses'))),console['log'](a0p[ac(0x232)]('\x20\x20\x20\x20hint\x20c')+a0p[ac(0x1fb)](ac(0x1d6)+a0B(ac(0x1ff)))),console['log'](a0p[ac(0x1fb)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B(ac(0x1d7)))),console['log'](),console[ac(0x1ea)](a0p[ac(0x1fb)](ac(0x21f))),console[ac(0x1ea)](a0p[ac(0x1bf)][ac(0x246)]('\x20\x20'+a0B(ac(0x239)))),console[ac(0x1ea)]('\x20\x20\x20\x20'+a0p[ac(0x29e)](ac(0x279))+a0p['gray'](ac(0x264)+a0B(ac(0x26d)))),console[ac(0x1ea)]('\x20\x20\x20\x20'+a0p['cyan'](ac(0x1cc))+a0p['gray']('\x20\x20\x20→\x20'+a0B(ac(0x1af)))),console['log'](ac(0x1d6)+a0p[ac(0x29e)]('hint\x20c')+a0p[ac(0x1fb)]('\x20\x20\x20→\x20'+a0B('ai4ctfHintPrinciple'))),console[ac(0x1ea)](a0p[ac(0x1fb)](ac(0x1d6)+a0B('ai4ctfWelcomeNoReveal'))),console[ac(0x1ea)](),console[ac(0x1ea)](a0p[ac(0x246)]('\x20\x20'+a0B(ac(0x23a)))),console[ac(0x1ea)](a0p[ac(0x1fb)]('\x20\x20'+a0B('ai4ctfOrChatExample')+'\x20')+a0p[ac(0x246)]('\x22what\x20encoding\x20is\x20this?\x22')),console[ac(0x1ea)](),console[ac(0x1ea)](a0p[ac(0x232)]('\x20\x20'+a0B('ai4ctfCommands'))),console[ac(0x1ea)](a0p[ac(0x246)](ac(0x224))+a0p['gray'](a0B(ac(0x1f8)))),console['log'](a0p[ac(0x246)](ac(0x293))+a0p['gray'](a0B(ac(0x256)))),console[ac(0x1ea)](a0p['white'](ac(0x1b9))+a0p[ac(0x1fb)](a0B('ai4ctfCmdShellLine'))),console[ac(0x1ea)](a0p['gray'](ac(0x21a))+a0p[ac(0x246)](ac(0x216))),console[ac(0x1ea)](a0p[ac(0x1fb)](ac(0x250)+a0B(ac(0x1ef)))),console[ac(0x1ea)](),d(),console[ac(0x1ea)](a0p[ac(0x1fb)]('\x20\x20'+a0B(ac(0x254))+ac(0x230)+v+')')),console[ac(0x1ea)](a0p[ac(0x1fb)]('\x20\x20'+a0B(ac(0x292)))),console[ac(0x1ea)]();});}
@@ -1 +1 @@
1
- import chalk from"chalk";import{spawn as o}from"node:child_process";import{writeFileSync as e}from"node:fs";import{join as n}from"node:path";import{createInterface as a}from"node:readline";const t=[{kind:"mcq",title:'1 / 7 · What is "embodied AI"?',question:"Which best describes embodied AI?",options:{A:"AI that runs on physical hardware (servers, GPUs)",B:"AI that perceives the world and TAKES ACTION in it — robots, drones, self-driving cars",C:"AI that talks like a human (chatbots, voice assistants)",D:"AI written in C++ for speed"},answer:"B",reveal:["Embodied AI = AI with a BODY. It sees (camera/sensors), understands instructions, and ACTS in the physical world.","","Chatbots talk. Embodied AI moves things.","The gap between the two is where the next decade of AI happens."]},{kind:"mcq",title:"2 / 7 · What is MuJoCo?",question:"MuJoCo (the thing that just rendered the robot arm video) is:",options:{A:"A robot brand competing with Boston Dynamics",B:"A type of Japanese AI startup",C:"DeepMind's open-source physics simulator — robots train in software FIRST",D:"A snack popular in Australian university cafeterias"},answer:"C",reveal:["MuJoCo = Multi-Joint dynamics with Contact. DeepMind's open-source physics engine.","","Real robots are expensive ($30k+) and breakable. Researchers train policies in MuJoCo first, then transfer to hardware.",'ICOA uses it as the "robot you can break for free" in this olympiad.']},{kind:"mcq",title:"3 / 7 · What is Franka Panda?",question:"The 7-axis arm you saw moving in the sim video is:",options:{A:"A panda-shaped toy robot from a kids' show",B:"Franka Emika Panda — a research-grade 7-DoF arm built in Munich",C:"An anime character",D:"A specific kind of VLA model"},answer:"B",reveal:["Franka Emika Panda — 7-axis robot arm, torque-controlled joints, ~$30k.","",'It is the most-filmed robot in research lab demo videos. Most "robot learning" papers run on a Panda.',"You just controlled one remotely — through ICOA infrastructure — without owning one."]},{kind:"mcq",title:"4 / 7 · Generalization — the real state of the industry",question:"In 2026, where does robotic GENERALIZATION actually stand?",options:{A:"Robots have already replaced most factory workers",B:"Boston Dynamics' Atlas does the dishes at home reliably",C:"No robot autonomously picks fruit in a real farm. Demos work; production-scale generalization is unsolved.",D:"It was a solved problem in the 2010s"},answer:"C",reveal:["Reality check: the canonical UNSOLVED problem is fruit-picking on real farms.","","Every farm: different lighting, soil, plant shape, season. A robot trained on tomatoes can't pick strawberries. Performance robots ≠ production robots.","The gap between viral demos and chaotic real-world reliability is what embodied AI research is actually working on."]},{kind:"mcq",title:"5 / 7 · What controls today's embodied AI?",question:'The "brain" inside a state-of-the-art research robot is most likely:',options:{A:"A Large Language Model (LLM) like GPT-4",B:"A Vision-Language-Action (VLA) model — vision + language + motor action",C:"Rule-based scripts written by engineers",D:"Reinforcement learning trained for years"},answer:"B",reveal:["LLMs are great at text — but can't see, can't act.","","The frontier of embodied AI is VLA = Vision + Language + Action."," · VISION: encodes camera images"," · LANGUAGE: reads your instruction"," · ACTION: outputs motor commands (xyz, rotation, gripper)","","Today, you talked to ICOA-VLA — a research-grade VLA running on ICOA infrastructure."]},{kind:"story",title:"6 / 7 · ICOA's bet — embodied AI's ImageNet moment",body:["Where computer vision was in 2010, embodied AI is right now.","","Before ImageNet + AlexNet (2012), there was no agreed standard for evaluating","computer vision. Then a single benchmark + a deep network unlocked the entire","modern era of AI.","",chalk.bold.yellow("ICOA 2026 is making the same bet for embodied AI security."),""," · VLA and competing architectures are FAR from mature",' · No agreed standards for "what does VLA safety mean"'," · No public benchmarks for adversarial robustness in robot policies"," · The industry is still figuring out what to even measure","","This olympiad's VLA4CTF track is where the first generation of contestants","will probe + adversarially attack current frontier VLA approaches.","","You won't just compete. You'll generate the first public data points","about how vulnerable today's embodied AI actually is."]},{kind:"story",title:"7 / 7 · More than a competition — the curriculum behind it",body:[chalk.bold.white("ASRA's recent history (the team behind this olympiad):")," · IOAI 2024 Bulgaria — 12-yr-old boy, practical-round GOLD (youngest ever)"," · IOAI 2025 China — Australia's 2 youngest contestants completed first"," scoring round in under 1 hour (of 3 allowed)"," · IAIO 2026 winter — 13-yr-old girl, Honorable Mention alongside global"," top high-schoolers","","Australia is exploring a curriculum from 6th-grade hardcore AI to","middle-schoolers participating in PhD-level projects.","",chalk.bold.cyan("Three open tiers for embodied AI security:")," "+chalk.green("· Free ")+chalk.gray("(this demo) — 10 core entry exercises")," "+chalk.yellow("· Registered ")+chalk.gray("(EA learn token) — 100 research-rapid track")," "+chalk.bold.magenta("· Officials ")+chalk.gray("(ICOA national team) — 480 PhD-ready track"),"","Goal: 1–3 months from zero-foundation middle-schooler to PhD-ready core","capabilities in embodied AI security. We are seeking university +","laboratory partners to validate this learning path.","",chalk.bold.yellow("Now — ready to see the robot move for real?")]}];async function r(o,e){if("menu"===o.trim().toLowerCase()){const{returnToMainMenu:o}=await import("../lib/menu-nav.js");return o(e),!0}return!1}function s(o=' Press Enter to continue (or type "menu" to leave)...'){return new Promise(e=>{const n=a({input:process.stdin,output:process.stdout});n.question(chalk.gray(o),async o=>{await r(o,n)||(n.close(),e())})})}function i(o){console.log(),console.log(chalk.cyan(" ╭─ ")+chalk.bold.white(o)),console.log(chalk.cyan(" │"))}function l(){console.log(chalk.cyan(" │")),console.log(chalk.cyan(" ╰─")),console.log()}function c(o){for(const e of o)console.log(chalk.cyan(" │ ")+chalk.white(e))}async function d(o){i(o.title),c([o.question]),console.log(chalk.cyan(" │"));for(const e of["A","B","C","D"])console.log(chalk.cyan(" │ ")+chalk.bold.cyan(e+".")+" "+chalk.white(o.options[e]));l();const e=await(n=chalk.gray(" Your guess (A/B/C/D): "),t=["A","B","C","D"],new Promise(o=>{const e=a({input:process.stdin,output:process.stdout}),s=()=>{e.question(n,async n=>{if(await r(n,e))return;const a=n.trim().toUpperCase();t.includes(a)?(e.close(),o(a)):(console.log(chalk.gray(` (type one of: ${t.join(" / ")}, or ${chalk.cyan("menu")} to leave)`)),s())})};s()}));var n,t;const d=e===o.answer;console.log(),d?console.log(" "+chalk.bold.green("✓ ")+chalk.gray("Correct.")):console.log(" "+chalk.bold.yellow("✗ ")+chalk.gray("You chose ")+chalk.white(e)+chalk.gray("; the answer is ")+chalk.bold.white(o.answer)+chalk.gray(". Read on:")),console.log();for(const e of o.reveal)console.log(chalk.gray(" "+e));console.log(),await s()}async function g(o){i(o.title),c(o.body),l(),await s()}export async function runDemo2(){console.clear(),console.log(),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(chalk.bold.yellow(" ICOA 2026 · Embodied AI Security Demo")),console.log(chalk.gray(" 5 minutes — 7 cards + a live robot render")),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(),console.log(chalk.white(" ICOA 2026 introduces a new competition track: ")+chalk.bold.cyan("VLA4CTF")),console.log(chalk.gray(" alongside the existing ")+chalk.green("AI4CTF")+chalk.gray(" (Day 1) and ")+chalk.red("CTF4AI")+chalk.gray(" (Day 2).")),console.log(),console.log(chalk.gray(" This demo is your map to the new track.")),console.log(),console.log(chalk.gray(" 💡 Type ")+chalk.bold.cyan("menu")+chalk.gray(" at any prompt to leave the demo and return to main menu.")),console.log(),await s(chalk.gray(' Press Enter to begin (or "menu" to leave)...'));for(const o of t)"mcq"===o.kind?await d(o):await g(o);await async function(){console.log(),console.log(chalk.cyan(" ╭─ ")+chalk.bold.white("Final act — watch carefully")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.white("In a few seconds you'll see a Franka Panda arm")),console.log(chalk.cyan(" │ ")+chalk.white("controlled by ")+chalk.bold.cyan("ICOA-VLA")+chalk.white(", a research-grade vision-language-action model.")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.gray("Instruction: ")+chalk.white('"Pick up the red cup"')),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" ╰─")),console.log(),await s(chalk.gray(" Press Enter when you're ready..."));const a=`${process.env.ICOA_SERVER_URL?.replace(/\/+$/,"")||"https://practice.icoa2026.au"}/api/ai/vla/41/sim`,{fetchWithCountdown:t}=await import("../lib/countdown.js");try{const r=fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({}),signal:AbortSignal.timeout(6e4)}),s=await t(r);if(!s.ok)return void console.log(chalk.yellow(` Sim service unavailable (HTTP ${s.status}).`));const i=await s.json();if(!i.success||!i.data?.mp4_b64)return void console.log(chalk.yellow(" Renderer returned no video."));const l=process.env.TMPDIR||"/tmp",c=n(l,`icoa-demo2-${Date.now()}.mp4`);e(c,Buffer.from(i.data.mp4_b64,"base64")),console.log(),console.log(" "+chalk.bold.green("✓ ")+chalk.gray("Saved: ")+chalk.white(c)),i.data.description&&console.log(" "+chalk.gray("Action: ")+chalk.white(i.data.description));const d="darwin"===process.platform?"open":"win32"===process.platform?"start":"xdg-open";d?(o(d,[c],{stdio:"ignore",detached:!0}).unref(),console.log(" "+chalk.gray("Opening in your default video player..."))):console.log(" "+chalk.gray("Open the file above in your video player."))}catch(o){const e=o instanceof Error?o.message:String(o);console.log(chalk.yellow(` Sim error: ${e}`))}}(),console.log(),console.log(chalk.cyan(" ╭─ ")+chalk.bold.white("What you just did")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.gray("· Interacted with ICOA-VLA, a research VLA")),console.log(chalk.cyan(" │ ")+chalk.gray("· Watched MuJoCo physics render a real robot arm")),console.log(chalk.cyan(" │ ")+chalk.gray("· All running on ICOA infrastructure, zero local setup")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.bold.yellow("Where to next")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.bold.green(" learn ")+chalk.gray(" free 11-card curriculum (LEARNDEMO01) — no token needed")),console.log(chalk.cyan(" │ ")+chalk.bold.green(" learn ")+chalk.gray(" 100/480-card track — ask your country's team for an ")+chalk.bold.yellow("EA")+chalk.gray(" token")),console.log(chalk.cyan(" │ ")+chalk.bold.green(" exam ")+chalk.gray(" Paper D (VLA4CTF) on competition day — requires ")+chalk.bold.yellow("PD")+chalk.gray(" token")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.gray("Country team contact: ")+chalk.cyan("australia@icoa2026.au")),console.log(chalk.cyan(" │ ")+chalk.gray("Website: ")+chalk.cyan.underline("https://icoa2026.au")),console.log(chalk.cyan(" ╰─")),console.log()}export function registerDemo2Command(o){o.command("demo2").description("Embodied AI Security — 7-card intro + live MuJoCo sim (free, ~5 min)").action(async()=>{try{await runDemo2()}catch(o){const e=o instanceof Error?o.message:String(o);console.log(chalk.yellow("\n demo2 ended: "+e))}})}
1
+ import chalk from"chalk";import{spawn as e}from"node:child_process";import{writeFileSync as o}from"node:fs";import{join as n}from"node:path";import{createInterface as a}from"node:readline";const t=[{kind:"mcq",title:'1 / 7 · What is "embodied AI"?',question:"Which best describes embodied AI?",options:{A:"AI that runs on physical hardware (servers, GPUs)",B:"AI that perceives the world and TAKES ACTION in it — robots, drones, self-driving cars",C:"AI that talks like a human (chatbots, voice assistants)",D:"AI written in C++ for speed"},answer:"B",reveal:["Embodied AI = AI with a BODY. It sees (camera/sensors), understands instructions, and ACTS in the physical world.","","Chatbots talk. Embodied AI moves things.","The gap between the two is where the next decade of AI happens."]},{kind:"mcq",title:"2 / 7 · What is MuJoCo?",question:"MuJoCo (the thing that just rendered the robot arm video) is:",options:{A:"A robot brand competing with Boston Dynamics",B:"A type of Japanese AI startup",C:"DeepMind's open-source physics simulator — robots train in software FIRST",D:"A snack popular in Australian university cafeterias"},answer:"C",reveal:["MuJoCo = Multi-Joint dynamics with Contact. DeepMind's open-source physics engine.","","Real robots are expensive ($30k+) and breakable. Researchers train policies in MuJoCo first, then transfer to hardware.",'ICOA uses it as the "robot you can break for free" in this olympiad.']},{kind:"mcq",title:"3 / 7 · What is Franka Panda?",question:"The 7-axis arm you saw moving in the sim video is:",options:{A:"A panda-shaped toy robot from a kids' show",B:"Franka Emika Panda — a research-grade 7-DoF arm built in Munich",C:"An anime character",D:"A specific kind of VLA model"},answer:"B",reveal:["Franka Emika Panda — 7-axis robot arm, torque-controlled joints, ~$30k.","",'It is the most-filmed robot in research lab demo videos. Most "robot learning" papers run on a Panda.',"You just controlled one remotely — through ICOA infrastructure — without owning one."]},{kind:"mcq",title:"4 / 7 · Generalization — the real state of the industry",question:"In 2026, where does robotic GENERALIZATION actually stand?",options:{A:"Robots have already replaced most factory workers",B:"Boston Dynamics' Atlas does the dishes at home reliably",C:"No robot autonomously picks fruit in a real farm. Demos work; production-scale generalization is unsolved.",D:"It was a solved problem in the 2010s"},answer:"C",reveal:["Reality check: the canonical UNSOLVED problem is fruit-picking on real farms.","","Every farm: different lighting, soil, plant shape, season. A robot trained on tomatoes can't pick strawberries. Performance robots ≠ production robots.","The gap between viral demos and chaotic real-world reliability is what embodied AI research is actually working on."]},{kind:"mcq",title:"5 / 7 · What controls today's embodied AI?",question:'The "brain" inside a state-of-the-art research robot is most likely:',options:{A:"A Large Language Model (LLM) like GPT-4",B:"A Vision-Language-Action (VLA) model — vision + language + motor action",C:"Rule-based scripts written by engineers",D:"Reinforcement learning trained for years"},answer:"B",reveal:["LLMs are great at text — but can't see, can't act.","","The frontier of embodied AI is VLA = Vision + Language + Action."," · VISION: encodes camera images"," · LANGUAGE: reads your instruction"," · ACTION: outputs motor commands (xyz, rotation, gripper)","","Today, you talked to ICOA-VLA — a research-grade VLA running on ICOA infrastructure."]},{kind:"story",title:"6 / 7 · ICOA's bet — embodied AI's ImageNet moment",body:["Where computer vision was in 2010, embodied AI is right now.","","Before ImageNet + AlexNet (2012), there was no agreed standard for evaluating","computer vision. Then a single benchmark + a deep network unlocked the entire","modern era of AI.","",chalk.bold.yellow("ICOA 2026 is making the same bet for embodied AI security."),""," · VLA and competing architectures are FAR from mature",' · No agreed standards for "what does VLA safety mean"'," · No public benchmarks for adversarial robustness in robot policies"," · The industry is still figuring out what to even measure","","This olympiad's VLA4CTF practice round is where the first generation of contestants","will probe + adversarially attack current frontier VLA approaches.","","You won't just compete. You'll generate the first public data points","about how vulnerable today's embodied AI actually is."]},{kind:"story",title:"7 / 7 · More than a competition — the curriculum behind it",body:[chalk.bold.white("ASRA's recent history (the team behind this olympiad):")," · IOAI 2024 Bulgaria — 12-yr-old boy, practical-round GOLD (youngest ever)"," · IOAI 2025 China — Australia's 2 youngest contestants completed first"," scoring round in under 1 hour (of 3 allowed)"," · IAIO 2026 winter — 13-yr-old girl, Honorable Mention alongside global"," top high-schoolers","","Australia is exploring a curriculum from 6th-grade hardcore AI to","middle-schoolers participating in PhD-level projects.","",chalk.bold.cyan("Three open tiers for embodied AI security:")," "+chalk.green("· Free ")+chalk.gray("(this demo) — 10 core entry exercises")," "+chalk.yellow("· Registered ")+chalk.gray("(EA learn token) — 100 research-rapid track")," "+chalk.bold.magenta("· Officials ")+chalk.gray("(ICOA national team) — 480 PhD-ready track"),"","Goal: 1–3 months from zero-foundation middle-schooler to PhD-ready core","capabilities in embodied AI security. We are seeking university +","laboratory partners to validate this learning path.","",chalk.bold.yellow("Now — ready to see the robot move for real?")]}];async function r(e,o){if("menu"===e.trim().toLowerCase()){const{returnToMainMenu:e}=await import("../lib/menu-nav.js");return e(o),!0}return!1}function s(e=' Press Enter to continue (or type "menu" to leave)...'){return new Promise(o=>{const n=a({input:process.stdin,output:process.stdout});n.question(chalk.gray(e),async e=>{await r(e,n)||(n.close(),o())})})}function i(e){console.log(),console.log(chalk.cyan(" ╭─ ")+chalk.bold.white(e)),console.log(chalk.cyan(" │"))}function l(){console.log(chalk.cyan(" │")),console.log(chalk.cyan(" ╰─")),console.log()}function c(e){for(const o of e)console.log(chalk.cyan(" │ ")+chalk.white(o))}async function d(e){i(e.title),c([e.question]),console.log(chalk.cyan(" │"));for(const o of["A","B","C","D"])console.log(chalk.cyan(" │ ")+chalk.bold.cyan(o+".")+" "+chalk.white(e.options[o]));l();const o=await(n=chalk.gray(" Your guess (A/B/C/D): "),t=["A","B","C","D"],new Promise(e=>{const o=a({input:process.stdin,output:process.stdout}),s=()=>{o.question(n,async n=>{if(await r(n,o))return;const a=n.trim().toUpperCase();t.includes(a)?(o.close(),e(a)):(console.log(chalk.gray(` (type one of: ${t.join(" / ")}, or ${chalk.cyan("menu")} to leave)`)),s())})};s()}));var n,t;const d=o===e.answer;console.log(),d?console.log(" "+chalk.bold.green("✓ ")+chalk.gray("Correct.")):console.log(" "+chalk.bold.yellow("✗ ")+chalk.gray("You chose ")+chalk.white(o)+chalk.gray("; the answer is ")+chalk.bold.white(e.answer)+chalk.gray(". Read on:")),console.log();for(const o of e.reveal)console.log(chalk.gray(" "+o));console.log(),await s()}async function u(e){i(e.title),c(e.body),l(),await s()}export async function runDemo2(){console.clear(),console.log(),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(chalk.bold.yellow(" ICOA 2026 · Embodied AI Security Demo")),console.log(chalk.gray(" 5 minutes — 7 cards + a live robot render")),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(),console.log(chalk.white(" ICOA 2026 introduces a new ")+chalk.bold.cyan("practice round: VLA4CTF")),console.log(chalk.gray(" running before the main events: ")+chalk.green("AI4CTF")+chalk.gray(" (Day 1) and ")+chalk.red("CTF4AI")+chalk.gray(" (Day 2).")),console.log(),console.log(chalk.gray(" This demo is your map to the new track.")),console.log(),console.log(chalk.gray(" 💡 Type ")+chalk.bold.cyan("menu")+chalk.gray(" at any prompt to leave the demo and return to main menu.")),console.log(),await s(chalk.gray(' Press Enter to begin (or "menu" to leave)...'));for(const e of t)"mcq"===e.kind?await d(e):await u(e);await async function(){console.log(),console.log(chalk.cyan(" ╭─ ")+chalk.bold.white("Final act — watch carefully")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.white("In a few seconds you'll see a Franka Panda arm")),console.log(chalk.cyan(" │ ")+chalk.white("controlled by ")+chalk.bold.cyan("ICOA-VLA")+chalk.white(", a research-grade vision-language-action model.")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.gray("Instruction: ")+chalk.white('"Pick up the red cup"')),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" ╰─")),console.log(),await s(chalk.gray(" Press Enter when you're ready..."));const a=`${process.env.ICOA_SERVER_URL?.replace(/\/+$/,"")||"https://practice.icoa2026.au"}/api/ai/vla/41/sim`,{fetchWithCountdown:t}=await import("../lib/countdown.js");try{const r=fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({}),signal:AbortSignal.timeout(6e4)}),s=await t(r);if(!s.ok)return void console.log(chalk.yellow(` Sim service unavailable (HTTP ${s.status}).`));const i=await s.json();if(!i.success||!i.data?.mp4_b64)return void console.log(chalk.yellow(" Renderer returned no video."));const l=process.env.TMPDIR||"/tmp",c=n(l,`icoa-demo2-${Date.now()}.mp4`);o(c,Buffer.from(i.data.mp4_b64,"base64")),console.log(),console.log(" "+chalk.bold.green("✓ ")+chalk.gray("Saved: ")+chalk.white(c)),i.data.description&&console.log(" "+chalk.gray("Action: ")+chalk.white(i.data.description));const d="darwin"===process.platform?"open":"win32"===process.platform?"start":"xdg-open";d?(e(d,[c],{stdio:"ignore",detached:!0}).unref(),console.log(" "+chalk.gray("Opening in your default video player..."))):console.log(" "+chalk.gray("Open the file above in your video player."))}catch(e){const o=e instanceof Error?e.message:String(e);console.log(chalk.yellow(` Sim error: ${o}`))}}(),console.log(),console.log(chalk.cyan(" ╭─ ")+chalk.bold.white("What you just did")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.gray("· Interacted with ICOA-VLA, a research VLA")),console.log(chalk.cyan(" │ ")+chalk.gray("· Watched MuJoCo physics render a real robot arm")),console.log(chalk.cyan(" │ ")+chalk.gray("· All running on ICOA infrastructure, zero local setup")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.bold.yellow("Where to next")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.bold.green(" learn ")+chalk.gray(" free 11-card curriculum (LEARNDEMO01) — no token needed")),console.log(chalk.cyan(" │ ")+chalk.bold.green(" learn ")+chalk.gray(" 100/480-card track — ask your country's team for an ")+chalk.bold.yellow("EA")+chalk.gray(" token")),console.log(chalk.cyan(" │ ")+chalk.bold.green(" exam ")+chalk.gray(" Paper D (VLA4CTF) for the practice round — requires ")+chalk.bold.yellow("PD")+chalk.gray(" token")),console.log(chalk.cyan(" │")),console.log(chalk.cyan(" │ ")+chalk.gray("Country team contact: ")+chalk.cyan("australia@icoa2026.au")),console.log(chalk.cyan(" │ ")+chalk.gray("Website: ")+chalk.cyan.underline("https://icoa2026.au")),console.log(chalk.cyan(" ╰─")),console.log()}export function registerDemo2Command(e){e.command("demo2").description("Embodied AI Security — 7-card intro + live MuJoCo sim (free, ~5 min)").action(async()=>{try{await runDemo2()}catch(e){const o=e instanceof Error?e.message:String(e);console.log(chalk.yellow("\n demo2 ended: "+o))}})}
@@ -1 +1 @@
1
- (function(z,B){const aX=a0B,F=z();while(!![]){try{const G=parseInt(aX(0x2fe))/(0x5d3+0x8de*-0x3+0x14c8)*(parseInt(aX(0x23c))/(-0xc4f+0x73*-0x55+0x1*0x3280))+parseInt(aX(0x9e))/(0x1378+-0x1*-0x17be+-0x2b33)*(-parseInt(aX(0x32b))/(-0x3a6*-0x2+0x33c*-0x1+0x103*-0x4))+-parseInt(aX(0x24c))/(-0x201d+-0x22e+-0x30*-0xb7)*(parseInt(aX(0x353))/(0x3d*0x75+-0x9de+-0x5*0x399))+-parseInt(aX(0xd8))/(0x1442+-0x373*-0x1+-0x17ae)*(-parseInt(aX(0xe5))/(-0xe3d+0xdd5+0x70))+-parseInt(aX(0x12f))/(0x963*0x3+-0x1ab3*0x1+0x49*-0x5)+-parseInt(aX(0x346))/(0x1*-0x47f+0x1*0x1d5+0x2b4)*(parseInt(aX(0x1b8))/(0x737+0x25c2+0x47*-0xa2))+parseInt(aX(0x182))/(-0x8f*-0x31+0x1fed+0x768*-0x8);if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,-0x3a059+-0x3f03+0x5e008));import a0L from'chalk';import{confirm as a0Q}from'@inquirer/prompts';import{ExamClient as a0V}from'../lib/exam-client.js';import{getConfig as a0W,saveConfig as a0X}from'../lib/config.js';import{getExamState as a0Y,saveExamState as a0Z,clearExamState as a0a0,getExamDeadline as a0a1,materializeAttachedData as a0a2}from'../lib/exam-state.js';import{getDemoStats as a0a3,recordDemoAttempt as a0a4,saveRetryQueue as a0a5,getRetryQueue as a0a6,clearRetryQueue as a0a7}from'../lib/demo-stats.js';import{logCommand as a0a8}from'../lib/logger.js';function a0B(a,b){a=a-(-0x78b+-0x1651*0x1+0x14*0x184);const c=a0z();let d=c[a];if(a0B['TpRTHn']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x6*-0xb1+0x266*0x1+0x1c*0x10,o,p,q=0x63*-0x54+0x1*-0x1b9d+0xb5*0x55;p=i['charAt'](q++);~p&&(o=n%(-0x1a9f+0x1*0x647+0x145c*0x1)?o*(0xa2*-0x6+-0xa*-0x3b2+0xd*-0x288)+p:p,n++%(-0x20e7+-0x1*-0xc56+0x1495))?l+=String['fromCharCode'](0x6d0+0x1c81+-0x2252&o>>(-(0x18c3+-0x265*0x5+0x8*-0x199)*n&0xccc+0x360*-0x2+-0x606)):-0x213f+0x58a+0x29*0xad){p=j['indexOf'](p);}for(let r=0x1877+-0x96f+-0xf08,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0x4*-0x2a2+0x2359+0x2dd1*-0x1))['slice'](-(0x2*0x1251+-0x6*0x350+-0x20*0x86));}return decodeURIComponent(m);};a0B['uMXAMO']=e,a0B['myTtEb']={},a0B['TpRTHn']=!![];}const f=c[-0x138d+0x223c+-0xeaf],g=a+f,h=a0B['myTtEb'][g];return!h?(d=a0B['uMXAMO'](d),a0B['myTtEb'][g]=d):d=h,d;}import{printSuccess as a0a9,printError as a0aa,printWarning as a0ab,printInfo as a0ac,printTable as a0ad,printHeader as a0ae,printKeyValue as a0af,createSpinner as a0ag,formatCountdown as a0ah}from'../lib/ui.js';import{t as a0ai}from'../lib/i18n.js';import{getDeviceFingerprint as a0aj}from'../lib/access.js';import{getExamSetup as a0ak,saveExamSetup as a0al,isExamSetupComplete as a0am}from'../lib/exam-setup.js';import{execSync as a0an}from'node:child_process';const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const aY=a0B,G=a0W(),H={};H[aY(0x150)]=aY(0x2e4),fetch(aY(0x349),{'method':aY(0x2e8),'headers':H,'body':JSON[aY(0x292)]({'type':B,'lang':G[aY(0x9a)]||'en','timestamp':new Date()[aY(0x75)](),...F}),'signal':AbortSignal['timeout'](0x1*0x266+0x6*0x15+-0x354*-0x5)})[aY(0x191)](()=>{});}function N(z,B){const aZ=a0B,F=Math['round'](z/(0x1b9d*-0x1+0x1*0xe3+-0x10b*-0x1a)*(0x1*0x647+0x1541*-0x1+0xf18)),G=0x1*0x24f4+0x23f6+0x3*-0x1844-F,H=a0L[aZ(0x206)]('█'[aZ(0x36a)](F))+a0L[aZ(0x39f)]('░'['repeat'](G)),J=String(z)[aZ(0x142)](-0x20e7+-0x1*-0xc56+0x1494)+'%';process['stdout'][aZ(0x1e7)]('\x0d\x1b[2K\x20\x20'+H+'\x20'+J+'\x20\x20'+a0L['gray'](B));}function a0z(){const bK=['C3rHCNq','uxvLC3rPB25Z','ChjLDG','icaGicaGicbLBNrLCIbbstrdveyGy2HHDcbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','ixzPihnVBhzLlNb5','q29UBMvJDgLUzYb0BYbLEgfTihnLCNzLCI4UlG','y3j5ChrVz3jHCgH5','vgLTzsb1C2vKoIa','icaGid4+pIbJAxbOzxiGpsbbrvmUBMv3kgTLEsWGquvtlK1prevFq0jdlcbPDIK','icbozwvKig1VCMu/ifr5Cgu6ia','z2v0vgLTzq','A2v5CW','zgvTB0LUDhjVu2vLBG','icbdDxjYzw50BhKGzMXHz2DLzdOG','l2fUC3DLCG','icbjBNn0ywXSAw5Nia','icbtDgfYDcbHifb5DgHVBIbZzxnZAw9Ulcb0ExbLignVBw1HBMrZig9UzsbIEsbVBMu6','DhLWzq','twfJyxu','vxnLCI1bz2vUDa','icbjBIb0AguGBwvHBNrPBwuSihrYEtOG','zMLUzeLUzgv4','icaGicbZDgLSBcbHy3rPDMuGyw5Kig5VDcbZDwjTAxr0zwqSihjLlwvUDgvYAw5NihrOzsbZyw1LihrVA2vUihjLC3vTzxmGAxqU','icaGicaGicaOBM93lcb+nsbTAw4P','ig1PBNv0zxmGBgvMDc4Gs2vLCcb0AguGCgfJzsbZDgvHzhKU','icdIMQaGiezjtKfmifnvqK1ju1njt04G4OcuihbSzwfZzsbJB25MAxjT','icaGifnVBwuGCgfJA2fNzxmGkhb3BNrVB2XZlcbZy2fWEsKGBwf5ig5VDcbOyxzLihDOzwvSCYb5zxqGzM9YidmUmtmU','uxvLC3rPB24G','icbqCMfJDgLJAw5Nia','oIdIGjq','CdmW','icaGifbHy2THz2vZoIa','icaGsg93ihrVigf0DgfJAW','r3jHzgLUzY4UlG','yM9Sza','sw52ywXPzcbLEgfTihrVA2vU','icaGigv4yw0GCsaXlI4','yxbWBgLJyxrPB24VANnVBG','ihjLBwfPBMLUzYK','C3vKBYbUCg0GAw5ZDgfSBcaTzYbPy29HlwnSAq','C2HVD25xyxjUAw5NCW','ue9tva','BNvTChK','ChL0Ag9UvMvYC2LVBG','icbZDwjTAxqGzMXHzYbKAxjLy3rSEq','ANnVBG','imk3ifbPy2SGB25LigfUC3DLCIbWzxiGCxvLC3rPB24','icaGigv4yw0GBgLZDcbbvq','rMfPBgvKihrVigXVywqGCMvZDwX0','sgvSCdOGicaGica','icbnzxrOB2qGmJOGsw50zxjHy3rPDMuGuhL0Ag9U','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','C3rHCNrfEgfT','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','rhvYyxrPB24','EwvSBg93','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','ywK0y3rM','icaGihDPBMDLDcbPBNn0ywXSifb5DgHVBI5qExrOB24UmY4XmG','icbszwfKEt8GvxnLia','zw5JB2rPBMC','uhjLCgfYAw5NlI4U','mxbWDfL1zG','icaGicHYzwXHDgL2zsb0BYbVDgHLCIbJyxrLz29YAwvZiokaLcbUDw1LCMLJihnJB3jLCYbNBYb0BYb5B3vYigv4yw0Gy2vUDgvYkq','zwDNmte','zxHHBsbKzw1V','u291DgGGqwzYAwnH','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','khnLCNzLCI1HDxrOB3jPDgf0AxzLkq','zxHHBsbOzwXW','ic0TDMvYC2LVBG','ihLVDsbNB3qGD3jVBMCU','icaGiokaOIbpBIblywXPl1vIDw50DsaYmIS6ig1Pz2H0ig5LzwqGChL0Ag9UmY4XmI1KzxyGkYbIDwLSzc1LC3nLBNrPywW','icbr','icaGifb5DgHVBJOG','ic1TihbPCcbPBNn0ywXSic0Tzhj5lxj1BIbWAxaGmJ4Mmq','lI4VBgLIl2rLBw8TzxHHBs5QCW','icaGww91CIbHBNn3zxjZigHHDMuGyMvLBIbYzwnVCMrLzcbHBMqGC2vUDcb0BYb5B3vYig5HDgLVBMfS','icbnzxrOB2qGmZOGu2nYAxb0igzPBgu','icbtDgfYDdOGzxHHBsbZDgfYDca8Awq+','icaGid4+pIbLEgL0kcK','AgvSCfjLBw92zq','icdIL4SG','qw5ZD2vYideWihf1AwnRihf1zxn0Aw9UCW','DxrMltG','CMvXDwvZDhm','cIaG','sw4GuhjVz3jLC3m6ia','C2nHChK','uhjVz3jLC3m','lcbUB3qGEw91CIb0zwfTBwf0zq','CMvWBgfJzq','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','CM91BMq','BwLU','x2vSAw1PBMf0zwq','BgLZDcbBy291BNrYEv0','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','C3vKBYbHChqGAw5ZDgfSBcaTEsbWExrOB24ZlxbPCcbWExrOB24ZlxzLBNy','icaGDgHLig9Yz2fUAxPLCIbPBIb5B3vYignVDw50CNKU','l2fWAs9Py29Hl3nLCNzLCI10Aw1L','vw5PDgvKieTPBMDKB20','C3vIBwL0DgvKqxq','icdIMiuGtwfYA2vKigzVCIbYzxzPzxC','zxHHBsbZDwjTAxqGy29UzMLYBq','icbkDxn0igfKzcaHigjLzM9Yzsb0AguGy29TBwfUzdO','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','mtm1ndbYsNjtrgW','icbVzIa','icaGicbnzxnZywDLCYdIHPiGquKGDgfYz2v0iokaLcbJCMfMDcbWCM9TChrZihrVigjYzwfRigL0CYbYDwXLCY4','icaGiokaOIbzB3uGBwf5igv4AxqGyw5KihjLC3vTzsb3AxrOihrOzsbZyw1LihrVA2vU','icaGigHLBha','q2XVC2uG4OcuihDLj2XSihjLDMLZAxqGDgHPCYbVBMuU','iokaLcbZzwuGzNvSBcbLCNjVCG','C3vJy2vLza','yw5ZD2vYx2nOyw5Nzwq','icdIMiuGuq','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','icaGiokgKIa','CgLSBg93','zMLUywW','iIbPCYbHBhjLywr5igLUihbYB2DYzxnZlG','ic1TigvUC3vYzxbPCcaTlxvWz3jHzgu','ic1TihbPCcaTlxzLCNnPB24','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl21Hy29ZlW','AhrWsgvSCa','icbrDwvZDgLVBNmGAw4Grw5NBgLZAc4Gvg8GC3DPDgnOigXHBMD1ywDLigzPCNn0oG','ihbVAw50CYaOntaLkq','ihDHCYbUB3qGzMXHz2DLzc4','icaGiokrPca','icaGig1HCMS','BNvTyMvY','CgfZC2vK','mtbIyNbJC0K','BMfTzq','icaGidiUieLUifbVD2vYu2HLBgWSigLUC3rHBgWGuhL0Ag9UihDPDgGGCgLWoG','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','y3rMzfvYBa','Dw5KzxjSAw5L','BgLUDxG','Dg90ywXty29Yzq','icdWN5Miie1HEcaYigHLBhbZihbLCIbXDwvZDgLVBIdIGjqGEw91igfSCMvHzhKGAgf2zsbHiduWlZuWiq','vgLTzsbLEhbPCMvKlG','icdIHlKGuevqidy2ocbKzxrLy3rLzcdIGjqGDxnPBMCGls11C2vYigLUC3rHBgWGkg5Vihn1zg8GBMvLzgvKkq','sunpqsboyxrPB25HBcbtzwXLy3rPB24GrxHHBq','icbszwnVBw1LBMrLzcbWyxrOiokaLcbZD2L0y2GGDg8Gv1nmmIaOB25LlxrPBwuSih41ig1PBIK6','odm0AwjOuMPO','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','DgvZDa','icbtzxj2zxiGzgLKig5VDcbYzxr1CM4Gysb2ywXPzcbVChrPB24UifrYEsbHz2fPBI4','igzSywDNzwqGzM9YihjLDMLLDY4','icaGid4+pIbMCM9TienYExb0BY5dAxbOzxiGAw1WB3j0ieffuW','BM9KztPJAgLSzf9WCM9JzxnZ','u3vIBwL0igL0igzPCNn0oIbLEgfTihn1yM1PDa','y2f0zwDVCNLtDgf0CW','icaGifb5DgHVBIaZlJeZigLZihrVBYbUzxCG4Ocuig1VC3qGq1rgigXPyNjHCMLLCYbSywnRihDOzwvSCY4','lI4VBgLIl3bSyxrMB3jTlMPZ','lI4VBgLIl2nVBMzPzY5QCW','u2f1zgKGqxjHyMLH','ueLm','icaGicbfEgfToIaG','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','icaGig5LEhq','yw5ZD2vYCW','q2HVAwnLig11C3qGyMuGqsWGqIWGqYWGB3iGrc4','icaGicjtAg93ig1LigHVDYb0BYb1C2uGC3rYDwn0lNvUCgfJAYi','u2LUz2fWB3jL','vMLLDYbLEgfTihjLC3vSDa','zNvUy3rPB24','CMvWzwf0','q291BgqGBM90igLUC3rHBgWGCgLWiokaLcbWAxaGAxmGBM90igLUC3rHBgXLzcbVBIb5B3vYihn5C3rLBs4','C3rKAw4','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','zwDNnW','vg90ywW','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl3DPBMrVD3mV','icaGifLVDsbJyw4GBM93ihvZztOG','iokgKIa','uhL0Ag9UidmGBM90igzVDw5KlG','C3rKB3v0','zxHHBsb1BM1HCMSG','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMv0CNK6','zxHHBv9Pza','icaGimk3ia','ChLJCNLWDg9KB21L','zwXPBwLUyxrLzca','ywrK','B25Jzq','y2f0','icaGicaGC3vKBYbHChqGAw5ZDgfSBcbWExrOB24ZlJeYihb5DgHVBJmUmtiTDMvUDG','r28GDg8GBMv4DcbXDwvZDgLVBG','igf0DgvTChq','zgvTBY1YzxrYEq','icbozxH0ihn0zxa6ia','xsaG','wYbD','icaGicHHAtrJDgyP','rxHHBxmG4Ocuia','y291BNrYEq','cGPgDwXSigf0DgfJAgvKigrHDge6cG','icaGigjHy2S','CgvYuq','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','zgvZy3jPChrPB24','icbdB250Aw51zsb0AgLZigv4yw06','C2vZC2LVBG','icaGica','icbzB3uGD2LSBcbZDwjTAxqG','igzHAwXLzdOG','zwDNmtm','CxvLC3rPB25Z','AwnVys1JBgK','icaGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3ic0GsNvSidiSidiWmJy','icbtDhvJAZ8Grw1HAwWGEw91CIbZzwXLy3rPB24Gy29VCMrPBMf0B3iGD2L0Acb0AguGC2nYzwvUC2HVDcbHyM92zs4','icbsDwXLCZO','zxHHBsbZzxr1Ca','u291DgGGs29Yzwe','tgfVCW','r2HHBMe','icdINjmGie1dusbZzwn0Aw9UignVBxbSzxrLiokaLcb3zwXSigrVBMuH','D2LUz2v0igLUC3rHBgWGls1PzcbqExrOB24UuhL0Ag9UlJmUmtiGlwu','lI4VBgLIl3bHCgvYlxvWz3jHzguUANm','z3jHEq','rxHHBsaI','igfUC3DLCMvK','Aw5JBhvKzxm','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','icaGicaGifrOzw4GAw5ZDgfSBcbqExrOB246','icdWN5kHie9WDgLVBIa','Dg9ju09tDhjPBMC','z2v0rxHHBxm','icaGww91CIb0zxjTAw5HBca','icaGicaGicHpCIbKB3DUBg9HzcbMCM9Tihb5DgHVBI5VCMCGyw5KienirunligjVDgGGiKfKzcbqExrOB24GDg8','icaGv2HHDcb5B3uNBgWGzg8GDg9KyxK6','zxHHBsbYzxzPzxC','rw50zxiGzxHHBsb3AxrOigfJy2vZCYb0B2TLBIaOBM8GBg9NAw4GBMvLzgvKkq','zxHHBsbXide','icaGutmX4OctmZGGkdGGCxvLC3rPB25Zimk3idyGChrZigvHy2GP','igvSAw1PBMf0zwqH','r2vYBwfUEq','CMv2Awv3','icbkDw1WihrVigeGzMXHz2DLzcbXDwvZDgLVBJOG','vgLTzsbszw1HAw5PBMC','yw5ZD2vYx3n1yM1PDhrLza','icaGieLUC3rHBgWGuhL0Ag9UidmUmtiGyw5KihjLlxj1BIbLEgfTihnLDhvWlG','zMfPBgvKugfJA2fNzxm','yxr0ywnOzwreyxrH','icaGia','icbnzxrOB2qGmtOGt25LlwXPBMvY','qw5ZD2vYzwq6ica','rxHHBsbZDgfYDgvKisbuAw1LCIbPCYbYDw5UAw5NlG','AgvSCa','qw5ZD2vYihf1zxn0Aw9Uie4GkeeVqI9dl0qGzM9Yie1dusWGsunpqxTMBgfNFsbMB3iGChjHy3rPy2fSkq','icbzB3uGy2fUig5VDYbLBNrLCIbHig5LDYb0B2TLBIb3AxrOia','iIbPCYbPBIbWCM9NCMvZCY4','qw5ZD2vYzwq','zxHHBsbSAxn0ia','t3rOzxi','ywK0y3rMrgvZyW','sw5KAwe','AgLUDcbHic8GyIaVigm','icbqyxbLCIbbic8GqIbWCMfJDgLJywWGCxvLC3rPB25Zig5LzwqGvw5PEcb0B29SAw5NihrOyxqGCNvUCW','icdcTYaG','D2HPy2G','zwDNmtu','icbpChrPB25ZigHHDMuGyMvLBIbYzxnODwzMBgvKlG','BgfUz3vHz2u','icbuBYbNBYbIywnRoIaG','icaGicbbssb0B2TLBNm6icaGicaG','qwjHBMrVBIbJDxjYzw50igv4yw0GC2vZC2LVBIbHBMqGD2LWzsbSB2nHBcbZDgf0zsaOCMvJB3zLCNKGB25SEsK','mtvTDNnlq1a','icdcTYblzwvWihnOyxjWzw5PBMC6ia','Bsb0B3rHBa','icaGicaGigvUDgvYifzmqsbHDhrHy2SGBw9KzsbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','tK9uifbbu1nfra','u3bVDcbVBI4','icaGievprG','Bg9N','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','icbVBMuGzgv2AwnLicSGB25LihnLC3nPB24UifLVDsbJyw5UB3qGC3DPDgnOihrVA2vUCYbTAwqTzxHHBs4','zxHHBsb0B2TLBIa','CMvNzxG','8j+pM++4JW','icbuCM91yMXLC2HVB3rPBMC6','icaOAgvSCca','mJuSmdaWihrVA2vUCW','vxnLicjLEgfTihjLDMLLDYiGDg8Gy2HLy2SGChjVz3jLC3mGB3iGiMv4yw0GC3vIBwL0iIb0BYbZDwjTAxqU','ig1PBG','y3LHBG','ChvZAa','icaGiokrOIa','CgXHDgzVCM0','zxHHBvDHExngB3vUza','q29TCgXLDguH','rNjHBMnL','icaOChjLDMLVDxmGzxHHBsbZzxnZAw9Uigv4CgLYzwqG4OcuignSzwfYzwqGC3rHDguSihn0yxj0Aw5NigzYzxnOihDPDgGGEw91CIbUzxCGDg9Rzw4P','AwnVyt4','tM90ignVBM5Ly3rLzc4GuNvUoIbQB2LUidX1CMW+','icaGicbLEgfTigXPC3qGueu','yMvZDfbLCMnLBNrHz2u','ChDU','C3rHCNqGpgLKpG','C19HAtrJDgy','icbtzwuGywXSigzSywDNzwqGCxvLC3rPB25ZigLUoIa','tg9HzgLUzYbYzxn1BhqUlI4','icaGicaGicaGia','zwXPBwLUyxrLza','AwnVyq','sw5KB25LC2LH','icaGicbqCM9TChqGAw5Qzwn0Aw9Uimk3igfKDMvYC2fYAwfSigfUywX5C2LZimk3iefjigf1zgL0Aw5N','BwfW','icaGicaGicaGicaGicaGicaGzxmGWRCGEMGGWRCGAMeGWRCGA28GWRCGyxiGWRCGzNiGWRCGChq','icdIMQaGiefUigv4yw0GAxmGywXYzwfKEsbPBIbWCM9NCMvZCYbVBIb0AgLZigrLDMLJzs4','icdIHPiGia','icaGicbuB2TLBJOG','Aw50zxjHy3rPB25Z','icHXDwLJAYb0yxnRCYK','igfUC3DLCNmU','icbozxCGzxHHBxmGyxjLignVBwLUzYbZB29Uiq','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','yMfJAW','D2HPDgu','icaGigv4yw0GCMv2Awv3','uMvZDwX0igXVywrLza','ig9YigXLyxzLihDPDgGG','icaGrwXHChnLzdOG','C3rVCa','zxHHBu5HBwu','nJmWotHWv2rLz0q','icaGvgHLC2uGyxjLihrOzsbOyxjKzxn0ihf1zxn0Aw9UCY4Gv29YDgGGmJeLig9MihrVDgfSihnJB3jLlG','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','ywXS','icdWN46bicS','ihf1zxn0Aw9UCYbKCMf3BIbMCM9TigeGCg9VBcbVzIa','icbuAw1LoIaGica','yw5ZD2vYzwq','CMvTB3zLtgLZDgvUzxi','rgvTBYbszxrYEsdIGjqGv3jVBMCGuxvLC3rPB25Zie9UBhK','AgfZ','tg9HzgLUzYbLEgfTCY4UlG','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','mtm2s3DkD2vs','zxHHBsbKzw1VlxjLDhj5','icaGieHPBNrZoIaGieeOnsKGqIGZksbdkdePiokaLcbWCMfJDgLJywWGB25SEq','icbiB3CGDg8GDxnLifb5DgHVBIbPBIbjq09bienmsq','u2H1zMzSAw5Nig9WDgLVBNmUlI4','ig1PBNv0zxm','icaGicbLEgfTigXPC3qGq04','ihvUzMXHz2DLzc4','BM90ugfZC2vK','AxnuvfK','icH3B3jRCYWGyNv0idmUmtiGCMvJB21Tzw5KzwqP','iokgKIbIywnRihrVigv4yw0Sig5HDMLNyxrLihDPDgGG','iefjnenurG','zMfPBa','icbgzwrVCMeGlYbssevmoG','u3vIBwL0DgvK','icaGicaGicHszwjVB3qGAwyGv2LUzg93CYbHC2TZlcb0AgvUig9Wzw4GDgHLifvIDw50Dsb0zxjTAw5HBc4P','AhrWqMfJAW','zwDNmW','y3rMngfPpG','icaGu3LKBMv5lcbbDxn0CMfSAweGimk3icbkDw4GmJCG4OctieP1BcaYlcaYmdi2','zwDNnq','icaOuMv0CNKGD3jVBMCGB25SEsK','icaGiokCKYbZyxzLza','Cvr1Dg9YAwfS','A2v5','icaGihzSytrJDgy','x3n1yM1PDenVBMzPCM1Lza','icdIMQaGifjLC2v0ihDPBgWGywjHBMrVBIb5B3vYign1CNjLBNqGzxHHBsbZzxnZAw9Uig9UihrOAxmGzgv2AwnLlG','zgfYD2LU','BwfJt1m','icaG8j+AGcaGu2vJDgLVBIaYoIbbstrdveyG4OcuiefjigLZihLVDxiGDgvHBw1HDgu','igjVBNvZihvZzxmP','ihrVignVBMzPCM0Sig9YigfUExrOAw5NigvSC2uGDg8Gy2fUy2vSoG','zgf0yq','C2XPy2u','icdINjmGuhL0Ag9Uia','igfUzcbWCMvZCYbfBNrLCIb0BYbSzwf2zsbPy29H','icbbC3nPC3rHBMnLoG','BMv4DeXHyMvS','sMfWyw4','zxHHBuLK','icbozxCGBwvTyMvYpYbdB250ywn0oIbHy2nYzwrPDgf0Aw9UqgLJB2eYmdi2lMf1','icaGiokrOca','BM93','igfUC3DLCMvKkq','icaOzgLMzMvYzw50igzYB20GDgHLig9Uzsb5B3uGDhLWzwqP','rxHHBsbfBNzPCM9UBwvUDcbtzxr1Ca','vw5HBNn3zxjLza','zxHHBvDHExnbAtrJDgy','icaG','yw5ZD2vYvgHPCW','zxHHBvDHExnqExrOB25szxbS','rwXPBwLUyxrLig9Uzsb3CM9UzYbVChrPB24GkgXPBwL0zwqGDxnLCYK','zw1VAMK','icHJB21WBgv4ihnVBhv0Aw9UCYK','icdIHPiG','icdIJ7eGifrPBwuGy2HLy2SGia','icbzB3uGy2fUihbHDxnLihDPDgGG','igLZigeGChjHy3rPy2fSihf1zxn0Aw9UiokaLcbHBNn3zxiGD2L0AcbHigzSywCSig5VDcbHigXLDhrLCI4','AM9PBG','sunpqsbezw1Viev4yw0G4OcuiezYzwuGuhjHy3rPy2u','tg9HzgLUzYbXDwvZDgLVBNmUlI4','ChDUDg9VBhm','Bwf0y2G','Dg9Rzw4GpgnVzgu+','icaGicaGia','icaGihn1zg8GywrKlwfWDc1YzxbVC2L0B3j5ihbWytPKzwfKC25HA2vZl3bWysaTEq','vgHHAwXHBMq','uMv2Awv3igfSBcbHBNn3zxjZigjLzM9YzsbZDwjTAxr0Aw5N','icaGicbuAguGDg9Rzw4GAxrZzwXMigLZie5pvcbYzxzVA2vKihnLCNzLCI1ZAwrLlIbjzIb5B3vYihnLC3nPB24GAxm','yMvHDxrPzNvSC291Cdq','icdILRGG','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','oteYmJrHswrrAhK','uhL0Ag9Uia','zxHHBsbUyxrPB25Z','icbbBNn3zxjZigfYzsa','vxPIzwTPC3rHBG','D3jVBMC','rw50zxiGzxHHBsb0B2TLBIb0BYbIzwDPBG','AhrWtwfYAW','Aw5KzxHpzG','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','u3rHCNqGDgHLigv4yw0/ifrOzsb0Aw1LCIb3AwXSigjLz2LUigLTBwvKAwf0zwX5lG','zxHHBsbUzxH0','iIaYpI9KzxyVBNvSBa','icaGicdcTYbbssbPCYb5B3vYia','4O+XifrPBwuGCMvTywLUAw5NoG','zMLUza','ywn0Aw9U','Aw5FChjVz3jLC3m','tM8GDgLTzsbSAw1PDa','CgfKu3rHCNq','u3vIBwL0igv4yw0GzM9YigDYywrPBMCGkhvZztOGiMv4yw0GC3vIBwL0ignVBMzPCM0IigzVCIbYzwfSigv4yw1Zkq','CgfZC2LUz1nJB3jL','ic1TihbPCcbZAg93ici','icdINjCG','icbezw1VoIa','4OcuihLVDsDYzsaXlZqGDgHYB3vNAcb0AguGzxHHBq','DMXH','ihnRAxbWzwq','icaGC2vJDxjPDhKGDgfZA3mG4OcuignYExb0BYWGD2vIlcbMB3jLBNnPy3mSihb3BI4','x2XHC3rr','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbssaYmdi2','icbszwLUC3rHBgWGuhL0Ag9UidmUmtiGD2L0AcbWAxaGyNvUzgXLzcWGDgHLBIbYzxrYEtO','icboB3rLoIb5B3uGDhLWzwqGysbKAwzMzxjLBNqGDg9Rzw4UievHy2GGzxHHBsb0B2TLBIbPCYbIB3vUzcb0BW','q29UDgvUDc1uExbL','icaGigv4yw0Gyw5ZD2vYidXUpIbjq09bEY4UlN0','icaGicjiB3CGzg8GssbKzwnYExb0ieffuY1dqKmGAw4GuhL0Ag9UpYi','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','yM9VA21HCMTZ','y29TCgXLDgvKqxq','ihf1zxn0Aw9U','icbqCMvZCYbfBNrLCIb0BYbZDgfYDcb0AguGzxHHBsb0Aw1LCI4UlIa','DdeW','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIb5B3vYignVDw50CNKGEwv0lG','C3vIC3rYAw5N','ihvUyw5ZD2vYzwq6ia','uM9VBsb0BYbNCM93oIaGia','icaGiezHAwXLzdOG','icbgCMvLihbYywn0AwnLimk3ie5VigfJy291BNqGBMvLzgvKimk3ie5VihrPBwuGBgLTAxq','u2v0DxaGzMfPBgvKiokaLcaWig9Mia','zxHHBvDHExntyxzLzfrV','y29UzMLYBq','zxHWBgfUyxrPB24','BgfUzYa8y29Kzt4','y3vYBcaTzNnttcbODhrWCZOVl2rLyI5UB2rLC291CMnLlMnVBs9Zzxr1Cf8YmI54ihWGC3vKBYaTrsbIyxnOic0','icaGsg93ihrVihDVCMS','yw5ZD2vY','CMvZzxq','icaGidmUie9Wzw4GysborvCGug93zxjtAgvSBcb3Aw5KB3CGkfbbveGGCMvMCMvZAcKSihrOzw46','u3bLy2LMEsbLEgfTieLeoIbLEgfTihjLC3vSDca8Awq+','C2v0uMf3tw9Kzq','ugfZCW','icbjq09bidiWmJyGWRCGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3iokaKYbkDwWGmG','DM9SyxrPBgL0Etm','tMf0Aw9UywWGC2vSzwn0Aw9Uigv4yw0','ihrOzsbJB21WzxrPDgLVBI4','igzPCNn0lG','icaGicbtB2X2zsa','l2fWAs9Py29Hl2v4yw1ZlW','rw52AxjVBM1LBNqGCMvHzhKHiefSBca','y2vPBa','CgTN','BwfYAYbBBL0','CgvYy2vUDgfNzq','icbpCIb0ExbLia','zw50CMLLCW','CMfUzg9T','imk3ia','icbbzNrLCIbPBNn0ywXSAw5NlcbYDw46ia','icaGvgHLigzPBMfSihnLy3rPB24GzMXPChmGDgHLihnJCMLWDdOGAw5ZDgvHzcbVzG','iefjihn5C3rLBxmU','Bw9YzsbOzwXW','ig1PBIbYzw1HAw5PBMC','Dg9Rzw4','mJG5odaYngXuzLHgBW','D3nSic0TAw5ZDgfSBcaTzcbvyNvUDhuTmJiUmdq','q3j5ChrV','icbpCIbKB3DUBg9HzcbPBNn0ywXSzxi6','quXm','icaGidiUifjLAw5ZDgfSBcbqExrOB24GD2L0AcbWAxaGkeHVBwvICMv3igrLDgvJDgvKiokCKYK6','zxHHBsbZDgfYDca','igzPCNn0ihrVihnLzsb3Agf0igL0igrVzxmH','ica+ia','icdcTYbszwzLCMvUy2uGz3vPzgvZigzVCIaZocb0B29SCZOG','icaGWRCGmteWienurIb0B29SCYbWCMuTy29UzMLNDxjLza','yMvZDa','ig5VDcbMB3vUzcaOms0','icbmyw5NDwfNztOG','Axnoyu4','y2f0y2G','Dwj1BNr1','uMvTB3zLihjLDMLLDYbMBgfNigzYB20GysbXDwvZDgLVBG','zxHHBvDHExnuB1nVBhzL','icaGiokaOIbbBgWGAw50zxjHy3rPB25ZigfYzsbYzwnVCMrLzcbMB3iGyxvKAxq','uMv0CNKGB25SEsb0AguGCxvLC3rPB25ZihLVDsbNB3qGD3jVBMCGBgfZDcbKzw1Vigf0DgvTChq','CgvYzMvJDfnJB3jL','u3rHDhvZ','icbszxzPzxCGDw5HBNn3zxjLzcbXDwvZDgLVBNm6ia','qw5ZD2vYihnVBwuGCxvLC3rPB25ZigzPCNn0oIbLEgfTiheGmq','r0vu','icdIMQaGiduGBwLUDxrLCYbYzw1HAw5PBMC','zxHHBsa','BgvUz3rO','icbuB2TLBJOGica','icdWN46jiefSBcbXDwvZDgLVBNmGyw5ZD2vYzwqH','zxHHBsbHBNn3zxiG','Aw5JB3jYzwn0sw50CM8','icdINjmGCgLWigLUC3rHBgXLza','l3n1yM1PDa','icbODhrWCZOVl2LJB2eYmdi2lMf1','icbjq09big9MzMLJAwfSBhKGC3vWCg9YDhmGv1nmmIbVBIbxAw5KB3DZlG','4PQGicbfweLuigLJB2eGzMLYC3qG4Ocuihn1zg8Gy2fUBM90ihj1BIbPBNnPzguGDgHLihbYB21WDa','uMvHzhKH','zgvTBW','icaGicfJyxqGpdWGj0vprICGpIbZB2X2zs5WEq','icaGicfWExrOB24Zic1JicjPBxbVCNqGyMfZzty0oYbWCMLUDcHIyxnLnJqUyJy0zgvJB2rLkcDtr1zZyKC4psCPksi','u3jPieXHBMTH','ihbYB21WDcWGC2fTzsbZAgfWzsbHCYbKzw1V','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','zxHHBsbZDwjTAxqG','icaGicaGicaGkgn0zJrHAsK','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','t24GDgHLig1VBMv5lG','icHr','icaGigzYB20GChDUigLTCg9YDcb4B3i','icaGihn1zg8Gzg5MigLUC3rHBgWGlxKGChL0Ag9UmY4XmG','icaOtwLUAw1HBcbvyNvUDhuGlYbJBg91zcaVifDttdiGAw1Hz2vZig9MDgvUihnOAxaGD2L0Ag91DcbWAxaUkq','icaGidiUieLUC3rHBgWGsg9TzwjYzxCGzMLYC3qGkhDLigrPzcbUB3qGzMLUzca','otu1mtG1r3Hfs0rc','ic8G','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZlW','icbTywnpuYaOsg9TzwjYzxCSihjLy29TBwvUzgvKktO','icbB','ugvYy2vUDgfNzq','q291BNrYEq','icbbC3nPC3rHBMnLihvZzwq','zxHHBsbXia','ihjLz2LVBNmP','rgvTBYbJB21WBgv0zwqGka','icbuAxa6ihn3AxrJAcb0BYb5B3vYigXHBMD1ywDLihDPDgG6igXHBMCG','igjVBNvZigHLBhaGDw5SB2nRzwqHicG','DxnLza','icbYDw4G','zhvYyxrPB25nAw51DgvZ','igLUC3rHBgXLza','vhj5igeGzNjLzsbWCMfJDgLJzsbLEgfTicHUBYbHy2nVDw50ig5LzwrLzcK','DgLTzw91Da','icbuExbLicjOzwXWiIbVBIbHBNKGCxvLC3rPB24GDg8GDxnLlG','icbLEgfTiheGw25Dicb8igv4yw0Gyw5ZD2vYidXUpIa8qs1epIb8igv4yw0GCMv2Awv3ihWGzxHHBsbZDwjTAxq','AwDUB3jL','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','ihrVihnLzsb5B3vYihjLC3vSDhmH','icdIL48G','qNjHEMLS','uhjLCgfYAw5Nihf1zxn0Aw9UCY4UlG','y3rMngfP','qNvYDw5KAq','CMvMihb5DgHVBG','icGZmcbnq1eGkYaXmcbWCMfJDgLJywWP','icbdB3vSzcbUB3qGCMvHy2GGC2vYDMvYigzVCIbOzwXWlIbdAgvJAYb5B3vYignVBM5Ly3rPB24U','icbuBYbJB250Aw51zsb0AgLZigv4yw06','Bwf4','z2v0uMvZDwX0','icbvC2u6igv4yw0GCMv2Awv3imk3igv4yw0GC3vIBwL0','ihnOyxjLzcbHy3jVC3mGutm54Octnda','zxHHBsa8Dg9Rzw4+','icdIMiuG','zxHHBvDHExntAgvSBa','uMv2Awv3oIa','ic1TihbPCcbPBNn0ywXSici','zxHHBsbZDwjTAxq','ihjHBMrVBsbXDwvZDgLVBNmGzNjVBsbHihbVB2WGB2yG','ixb5DgHVBJmGlI4U','Ag93vg9qBgf5','AhrWtMf2','D3jPDgu','y29TCgXLDgu','zxHHBsbYzxnLDa','ywLvC2fNzq','zwXPBwLUyxrL','uNvZC2LH','icbjBNn0ywXSAw5Nifb5DgHVBIbWywnRywDLCYbMB3iGChjHy3rPy2fSihf1zxn0Aw9UCY4','vxbSB2fKAw5NigfUC3DLCNmUlI4','ic1TihbPCcbPBNn0ywXSihb3BNrVB2XZ','icdIMQaGieXfu1mGveHbtIaXie1jtLvursbmruzu','x2HLBhbnyxG','CxvPDa','ihn0AwXSigzSywDNzwqGzM9YihjLDMLLDZOG','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','icHxu0WYkq','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','C3LTChK','ywK0y3rMpG','icaGiokrOsa','AxnsyxC','icbSyw5NigvZicHfC3bHW7fVBcKGWRCGBgfUzYb6AcaO5lIT5PAhksdcTYbSyw5NigTVicJTLzZQTA3SLRqPimk3igXHBMCGAMeGkoAxPEACRoIQNIK','Ew91CKfUC3DLCG','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','icaGicdILQmG','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','ic1JicjPBxbVCNqG','icbqBgvHC2uGCMuTDhLWztOG','icdINjmGCgLWigf2ywLSywjSzq','icaGigXHBMC','icbqCMv2Aw91CYbZzxr1CcbOywqGB25SEsa','icaGihbYAw50khHVCIHJDcWGA2v5ks5KzwnVzguOksK','z3jLzw4','Cgn0','icbVCIaG','icdIMQaGuhL0Ag9Uia','icaGicaGicbqqvriiIaRicjjBNn0ywXSihbPCciGzhvYAw5NihrOzsbPBNn0ywXSzxiUkq','icbfEgfToIaGica','icbszxj1BIb3AgvUigzPEgvKoIa','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','u2nVCMu','icaGicaGicaGicaGicaGicaGCNuGWRCGAgKGWRCGzguGWRCGAwqGWRCGDgGGWRCGDMKGWRCGDhi','qxzHAwXHyMXLiev4yw1ZicG','icbdyw5JzwXSzwqU','sgfJAYb0AguGquKNCYbNDwfYzhjHAwXZ','BMv3','icaGWRCGmtuSmdaWkYbJB25JDxjYzw50ihbHCNrPy2LWyw50CW','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbsq','zgvTBY1LEgfT','wYbDica','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','icboBYb3CM9UzYbXDwvZDgLVBNmGDg8GCMv0CNKUifj1BIa','CdeW','igrLDgvJDgvK','ChL0Ag9UmW','CMvZDw1L','tM8GzxHHBsbPBIbWCM9NCMvZCY4','oJaW','icboyxrPB25HBcbsB3vUzcaXifnLBgvJDgLVBIbLEgfTCYbHCMuGyMvPBMCGChjLCgfYzwqU','Dg9mB3DLCKnHC2u','icaGzxHHBsbJzw50zxiUiezPBMfSihnJB3jPBMCGyw5KihnLBgvJDgLVBIbHCMuGzgvJAwrLzcbIEq','icaGicbfEgL0ignOyxq6icaGicaG','icbdAgvJAYbLEgfTCYbMB3iGEw91CIbJB3vUDhj5oG','icbuExbLia','yNjLDW','icaGiokaOIbtzxj2zxiGyxv0BY1MAw5HBgLZzxmGEw91CIbHBNn3zxjZigLMihLVDsbKBYbUB3qGC3vIBwL0igjLzM9Yzsb0AguGzgvHzgXPBMu','u3vIBwL0igzHAwXLza','u3rHCNqGyw4GzxHHBsaOyMvNAw5ZihrPBwvYkq','AgLUDa','AxnbCNjHEq','ixb5DgHVBJm','AhrWsNvTCa','C2nVCMu','icaGihn1zg8Gyxb0igLUC3rHBgWGlxKGChL0Ag9UmY4XmIbWExrOB24ZlJeYlxzLBNyGChL0Ag9UmY4XmI1KAxn0DxrPBhm','rMfPBgvKihrVigXVywqGzxHHBxm','icbSyw5NigzYimk3igXHBMCGyxiGWRCGBgfUzYbWDcdcTYaXnsbSyw5NDwfNzxmGC3vWCg9YDgvK','icdIHPmGifbYywn0AwnHBcbZzwn0Aw9UigjLz2LUCYbHDcbrmZeU','Dg9tDhjPBMC','icbbBNn3zxjZoIa','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','y2XVy2TpzMzZzxrnCW','tMLJzsbVBMuU','4PQGicbfweLuigLJB2eGzMLYC3qG4OcuigLUC3rHBgXLCIbJyw5UB3qGCNvUigLUC2LKzsb0AguGChjVBxb0','icaGuhjLC3mGyw55igTLEsb0BYbZDgfYDcbKzw1VlI4U','yw5ZD2vYidXUpIa8y2HVAwnLlI4UpG','BwLZC2LUzW','ntKXndjvuK5RC00','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','CMvZDwX0ifTPzf0','icbbssbbC3nPC3rHBNq','ifSGxsaG','ls11C2vYic0TyNjLywSTC3LZDgvTlxbHy2THz2vZ','zxHHBsbYzxn1BhqG','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','Bw9Yzs1OzwXW','ihbVAw50C10','icaGign0id0GyNL0zxmUzNjVBwHLEcGImgeYyJbLmwmUlI4Ikq','rw52AxjVBM1LBNqGCMvHzhK','icbizwXWihvZzwq6ia','icaGicaGC3vKBYb1CgrHDguTywX0zxjUyxrPDMvZic0TAw5ZDgfSBcaVDxnYl2jPBI9WExrOB24Zihb5DgHVBJmGl3vZCI9IAw4VChL0Ag9UmY4XmIaX','igzVDw5KlcbIDxqGmY4XmcSGCMvXDwLYzwqGzM9YihrOzsbLEgfTlG','icaGideUifr5CguG','nJq0nwTtEKzlAq','CgfKrw5K','ihrVigXLyxzLigLJB2e','C3vIBwL0DgvK','CxvLC3rPB25dB3vUDa','s2vLCcbPDcbPBIbTAw5KigzVCIbYzxzPzxCU','icaGihn1zg8GDxbKyxrLlwfSDgvYBMf0AxzLCYaTlwLUC3rHBgWGl3vZCI9IAw4VChL0Ag9UmYbWExrOB24Zic91C3iVyMLUl3b5DgHVBJmUmtiGmq','B3b0Aw9UCW','lIboBYb0Aw1LCI4GrNjLzsbWCMfJDgLJzs4','8j+pLU+4JW','y29YCMvJDa','C3rKAw8','CM9Wz2fKz2v0','Dg90ywW','icbeAxjLy3rPB25HBcbMzwvKyMfJAW','icaGDxnPBMCGquKSihLVDsDYzsa','C3vIBwL0ieLdt0f7lI4UFq','C3vIBwL0rxHHBq','icaGiokaOIbuCNK6ia','y29UzMLYBwvKqxq','icbbCMnOic8GtwfUAMfYBZO','AgvSCf91C2vK','zMLSDgvY','CsbBBL0','zNjVBq','icaGid4+pIbWCMLUDcHJAxbOzxiUzgvJCNLWDcHKyxrHksK','icaGv2vSy29Tzsb0BYb0AguGChjHy3rPy2fSienurIbZzwn0Aw9UlIbszwfS','tMfTzq','icbvyNvUDhuGlYbezwjPyw4GkgrLywrZBMfRzxmGufbbktO','ihbHy2THz2vZigLUC3rHBgXLzc4G','BM9KztPMCW','Dg9vChbLCKnHC2u','icbgAwX0zxiGyNKGy291BNrYEtOGzxHHBsbSAxn0ifbflcbLEgfTigXPC3qGq04Sic4UlG','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqUiev4yw0Gy2XLyxjLzc4','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','CxvLC3rPB24','ywK0y3rMu3vI','q3rYBcTd','icdIMiyGuq','ixb5DgHVBJmGC29SDMuUChK','C2v0Dxa','uhjLCgfYAw5Nigv4yw0Gzw52AxjVBM1LBNqUlI4','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','icbxAw5KB3DZicH3Aw5NzxqSihjLy29TBwvUzgvKktO','icaGienVBxbSzxrLzdOG','icaGswyGDgLTzsbPCYb0AwDODcWGC2TPBsbrmZKVndaGzMLYC3qGDg8GzgvJAwrLigf0DgfJAYbVCMrLCI4','y2HHBMDLzcbMCM9Tia','uMvJB21Tzw5Kzwq6ignVBxbSzxrLigrLBw8GzMLYC3q','zgvTBY1MCMvL','yxr0zw1WDhm','u29SAwqGCgLJAY4','rMXHzYbHihf1zxn0Aw9UihrVihjLDMLLDYbSyxrLCIaODg9Nz2XLCYK','AhrWu3vIBwL0','icaGzMLUAxnOigfUzcbZDwjTAxq','icaOC2fTzsbHCYb5B3uGANvZDcb0ExbLzcK','C3rKzxjY','icbtDgfYDgLUzYbLEgfTlI4U','Cg9PBNrZ','icaGiefjigj1zgDLDdOGmJvlihrVA2vUCYbMB3iGquK0q1rgicSGmJvligzVCIbdvey0quK','icaGigjYzxCGAw5ZDgfSBcbWExrOB25amY4XmG','icaGihn1zg8Gyxb0ihvWzgf0zq','zhvYyxrPB25nAw4','icaG4PElicbtDwjTAxnZAw9UigfJy2vWDgvK','icaGicbcDwrNzxqGFJiGBwLUihbLCIbWCMfJDgLJywWGCxvLC3rPB24UifLVDsbJyw4Gy29TzsbIywnRihDPDgG6ig5LEhqGlYbWCMv2lG','C3bSAxq','lI4VBgLIl2v4yw0TC3rHDguUANm','AhrWtgfUzW','vwj1BNr1ia','C3rHDhvZ','y2f0zwDVCNK','C3rYAw5NAwz5','itXJBwq+ia','C3rYAwTLDgHYB3vNAa','lI4U','ugHPBgLWCgLUzxm','tgLZDcbHDMfPBgfIBguGzxHHBxmGkg9WDgLVBMfSoIaYlwXLDhrLCIbJB3vUDhj5ignVzguP','icbfEhbLy3rLzdOGms0Yig1PBNv0zxmGWRCGFJe1me1cigrPC2S','BwvZC2fNzq','x2HLBhbvC2vK','y29TBwfUza','icbMyxiGBw9YzsbZBw9VDgHSEsbPBNnPzguGv1nmmIbvyNvUDhuU','icdcTYbzB3vYig5HDgLVBMfSig9Yz2fUAxPLCIb3AwXSigfUBM91BMnLihnLBgvJDgLVBIbYzxn1BhrZlG','C29YDa','icbezxrLy3rLzdOG','CMvK','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','CMvM','vMLLDg5HBq','y2XLyxi','icaGidiUieLUigfUiefKBwLUAxn0CMf0B3iGug93zxjtAgvSBcWGCNvUoG','C3rHCNrLzef0','zMXVB3i','icbqCMvZCYbfBNrLCIb0BYbIzwDPBI4UlIa','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqU','Dgv4Da','Cgf1C2u','icaGicbjBNnPzguGy2HHDdOGicaG','tMv3ifPLywXHBMq','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','ihrVihn1yM1PDcbMB3iGz3jHzgLUzY4','zxHPDa','x2HLBhbqzxjr','r28GDg8GChjLDMLVDxmGCxvLC3rPB24','AhrWqw5ZD2vY','DhjPBq','icbxCMfWihvWigfUzcbZDwjTAxq6ia','icaOugfWzxiGqYb0B2TLBNmGC2TPCcb0AgLZigDHDguG4OcuifbHCgvYiemGAxmGtunrlw9UBhKP','DgfYz2v0','ihbHy2THz2vZigLUC3rHBgXLzc4','D2LUmZi','rwD5Chq','C3bSAwnL','l2jPBI9IyxnOic1JiciKkgn1CMWGlwzZu0WGAhr0Chm6lY9YyxCUz2L0AhvIDxnLCMnVBNrLBNqUy29Tl0HVBwvICMv3l2LUC3rHBgWVsevbrc9PBNn0ywXSlNnOksi','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIa','icbfEgfTCgXLoIa'];a0z=function(){return bK;};return a0z();}function M(){const b0=a0B,z=a0W();return z[b0(0x34a)]&&z[b0(0x181)]?new a0V(z[b0(0x34a)],z[b0(0x181)]):(a0aa(b0(0xb9)),null);}function O(){const b1=a0B,z=a0a1();z&&(new Date()<z?a0af(b1(0x82),a0L[b1(0x2f7)][b1(0x2e1)](a0ah(z))):a0af('Time',a0L[b1(0x2a0)][b1(0x2e1)]('EXPIRED')));}function D(z,B){const b2=a0B;return Array[b2(0x22b)](z['bookmarks'])&&z[b2(0x154)]['includes'](B);}function j(z,B){const b3=a0B,F=Array[b3(0x22b)](z['bookmarks'])?[...z[b3(0x154)]]:[],G=F[b3(0x137)](B);return G>=0x6d0+0x1c81+-0x2351?(F[b3(0x2bb)](G,0x18c3+-0x265*0x5+0x3*-0x443),z[b3(0x154)]=F,a0Z(z),!(0xccc+0x360*-0x2+-0x60b)):(F[b3(0xb1)](B),F[b3(0x29e)]((H,J)=>H-J),z[b3(0x154)]=F,a0Z(z),!(-0x213f+0x58a+0x29*0xad));}function R(B){const b4=a0B,F={};return F['used']=B[b4(0x29a)]||0x1877+-0x96f+-0xf08,F[b4(0x1d9)]=B['_helpMax']||-0x4*-0x2a2+0x2359+0x929*-0x5,F[b4(0x38a)]=B[b4(0x2b1)]||{},F[b4(0xc2)]=B[b4(0x31f)]||{},F;}function U(z,B){const b5=a0B,F=a0Y(),G=Number(F?.[b5(0x38e)][b5(0x250)]||0x2*0x1251+-0x6*0x350+-0xf*0x11c),H=Object[b5(0x2ca)](F?.[b5(0x364)]||{})[b5(0x19e)],J=R(F),K=J[b5(0xc2)][z[b5(0x344)]]||[],L=b5(0x2f9)===z[b5(0x2d0)]||b5(0x1d3)===z[b5(0x2d0)]||'vla'===z[b5(0x2d0)]||z[b5(0x253)]&&!z[b5(0x253)]['A']&&!z[b5(0x253)]['B'];F&&function(Y,Z){const b6=b5;if(b6(0x27c)===Y['session'][b6(0x10e)])return;const a0=new Set(Y['shownWarnings']||[]),a1=Number(Y[b6(0x38e)][b6(0x250)]||-0x138d+0x223c+-0xe87),a2=a0a1();if(0x26b*-0x5+0x1bcf*-0x1+-0x27f0*-0x1===Z&&a1>=0x373*-0x2+0x161*-0xb+0x1639&&!a0[b6(0xe2)](b6(0x21a))){const a3=a2?Math[b6(0x1d9)](0xa5d+0x10e8+-0x1*0x1b45,Math['round']((a2[b6(0x2c9)]()-Date[b6(0x111)]())/(0x23*0x6c5+0x44*-0x208+-0x8791*-0x1))):null;console[b6(0xa5)](),console['log'](a0L['gray'](b6(0x38b))),console[b6(0xa5)](a0L[b6(0xb0)](b6(0x11e))+a0L['gray'](b6(0x148))),null!==a3&&console[b6(0xa5)](a0L[b6(0x39f)]('\x20\x20\x20\x20\x20'+a3+b6(0x2d7))),console[b6(0xa5)](a0L['gray'](b6(0x38b))),a0[b6(0x37b)]('p10'),Y[b6(0x2e7)]=Array[b6(0x264)](a0),a0Z(Y);}if(0x15ec*-0x1+0x1461+0x1a9===Z&&a1>=0x2*0x68c+0x1*-0xf6b+0x27b&&!a0['has'](b6(0x2dd))){Object['keys'](Y[b6(0x364)]||{})[b6(0x19e)];const a4=Object[b6(0x2ca)](Y[b6(0x364)]||{})[b6(0x262)](a5=>Number(a5)<=0xdf1+0x2125+-0x48*0xa7)[b6(0x19e)];console['log'](),console[b6(0xa5)](a0L[b6(0x206)](b6(0x23d))),console['log'](a0L[b6(0x2e1)][b6(0x206)](b6(0x39c))),console[b6(0xa5)](a0L[b6(0x39f)](b6(0x38f)+a4+'/30\x20multiple-choice\x20answered')),console[b6(0xa5)](a0L['white'](b6(0x232))),console['log'](a0L[b6(0x39f)](b6(0x28b))),console[b6(0xa5)](a0L[b6(0x206)](b6(0x23d))),a0[b6(0x37b)](b6(0x2dd)),Y['shownWarnings']=Array[b6(0x264)](a0),a0Z(Y);}}(F,z[b5(0x344)]),F&&L&&function(Y,Z){const b7=b5;if(b7(0x27c)===Y[b7(0x38e)][b7(0x10e)])return;if(Number(Y[b7(0x38e)][b7(0x250)]||-0x15*-0x3d+-0x749+-0x2*-0x138)<-0x8f8+-0xb30+-0x2*-0xa28)return;const a0=new Set(Y[b7(0x2e7)]||[]);Z>=0x6e*0x58+-0x182f+0xd*-0x10a&&Z<=-0x20d6+-0x180e*-0x1+0x8ee&&!a0[b7(0xe2)](b7(0xbe))?(console[b7(0xa5)](),console[b7(0xa5)](a0L[b7(0x206)](b7(0x12e))),console[b7(0xa5)](a0L[b7(0x2e1)][b7(0x206)](b7(0x104))),console[b7(0xa5)](a0L[b7(0x206)](b7(0x12e))),console[b7(0xa5)](),console[b7(0xa5)](a0L['white'](b7(0x266))),console['log'](a0L['white'](b7(0x14b))),console[b7(0xa5)](),console[b7(0xa5)](a0L[b7(0x2e1)][b7(0xd1)](b7(0x7d))),console[b7(0xa5)](a0L[b7(0x39f)](b7(0x171))+a0L[b7(0x2e1)]('with')+a0L[b7(0x39f)](b7(0x276))),console[b7(0xa5)](),console[b7(0xa5)](a0L[b7(0x2e1)][b7(0xd1)](b7(0x165))),console[b7(0xa5)](a0L[b7(0x39f)]('\x20\x20\x20\x20\x20Enter\x20chat:\x20\x20\x20\x20\x20')+a0L['bold'][b7(0x206)]('ai4ctf')+a0L['gray'](b7(0x372))+a0L['magenta'](b7(0x1f8))+a0L[b7(0x39f)](b7(0x1b1))),console[b7(0xa5)](a0L[b7(0x39f)](b7(0x2ac))+a0L['cyan'](b7(0x94))+a0L['gray'](b7(0x17b))+a0L[b7(0xb0)](b7(0x25c))+a0L[b7(0x39f)]('\x20·\x20')+a0L['cyan'](b7(0x1e4))),console[b7(0xa5)](a0L['gray']('\x20\x20\x20\x20\x20Free\x20chat:\x20\x20\x20\x20\x20\x20any\x20message\x20→\x20AI\x20teammate')),console[b7(0xa5)](a0L[b7(0x39f)](b7(0x223))+a0L[b7(0xb0)](b7(0x2b0))+a0L[b7(0x39f)](b7(0xf0))+a0L['cyan']('next\x20/\x20prev')),console[b7(0xa5)](),console['log'](a0L[b7(0x2e1)][b7(0xd1)]('\x20\x20\x20Budget\x20(shared\x20across\x20Q31–38)')),console['log'](a0L[b7(0x39f)](b7(0x9c))+a0L[b7(0xd1)]('25,000')+a0L[b7(0x39f)]('\x20for\x20this\x20section')),console[b7(0xa5)](a0L[b7(0x39f)]('\x20\x20\x20\x20\x20Hints\x20A/B/C:\x20\x20\x20\x20')+a0L['white']('pre-written\x20per\x20question')),console[b7(0xa5)](),console[b7(0xa5)](a0L[b7(0x2f7)]('\x20\x20\x20Time\x20still\x20counting\x20down.\x20Budget\x20~2\x20min\x20per\x20question.')),console[b7(0xa5)](a0L[b7(0x206)](b7(0x12e))),console[b7(0xa5)](),a0[b7(0x37b)](b7(0xbe)),Y[b7(0x2e7)]=Array['from'](a0),a0Z(Y)):Z>=-0x21cd+-0x2*-0xaba+-0x10*-0xc8&&!a0[b7(0xe2)]('s_ctf4ai')&&(console[b7(0xa5)](),console[b7(0xa5)](a0L[b7(0x2a0)](b7(0x12e))),console[b7(0xa5)](a0L[b7(0x2e1)][b7(0x2a0)]('\x20\x20\x20🎯\x20\x20Section\x203:\x20CTF4AI\x20—\x20Challenge\x20the\x20AI')),console[b7(0xa5)](a0L[b7(0x2a0)](b7(0x12e))),console[b7(0xa5)](),console[b7(0xa5)](a0L[b7(0xd1)](b7(0x17d))),console[b7(0xa5)](a0L[b7(0xd1)](b7(0x25b))+a0L[b7(0x2e1)]('attacking')+a0L['white'](b7(0x17e))),console[b7(0xa5)](),console[b7(0xa5)](a0L[b7(0x2e1)][b7(0xd1)]('\x20\x20\x20Q39–40\x20(2\x20questions\x20·\x2016\x20pts\x20each\x20—\x20highest\x20value!)')),console[b7(0xa5)](a0L['gray'](b7(0xc5))),console[b7(0xa5)](),console['log'](a0L['bold']['white'](b7(0x2df))),console[b7(0xa5)](a0L['gray']('\x20\x20\x20\x20\x20Enter\x20chat:\x20\x20\x20\x20\x20')+a0L[b7(0x2e1)]['red'](b7(0x1d3))+a0L['gray']('\x20→\x20')+a0L[b7(0x2a0)](b7(0xf8))+a0L[b7(0x39f)](b7(0x1ad))),console[b7(0xa5)](a0L['gray'](b7(0x2ac))+a0L[b7(0xb0)](b7(0x94))+a0L[b7(0x39f)]('\x20·\x20')+a0L[b7(0xb0)]('submit\x20ICOA{...}')+a0L[b7(0x39f)](b7(0x17b))+a0L['cyan'](b7(0x1e4))),console[b7(0xa5)](a0L['gray'](b7(0x32d))),console['log'](),console[b7(0xa5)](a0L['bold'][b7(0xd1)](b7(0x1f6))),console[b7(0xa5)](a0L[b7(0x39f)](b7(0x13c))+a0L[b7(0x2a0)](b7(0x2b7))+a0L[b7(0x39f)](b7(0x31a))),console[b7(0xa5)](a0L[b7(0x39f)]('\x20\x20\x20\x20\x20·\x20Separate\x20budget:\x20')+a0L['white'](b7(0xad))+a0L[b7(0x39f)](b7(0x1dc))),console[b7(0xa5)](),console[b7(0xa5)](a0L[b7(0x2f7)](b7(0xd9))),console[b7(0xa5)](a0L[b7(0x2f7)](b7(0x279))),console[b7(0xa5)](a0L[b7(0x2a0)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[b7(0xa5)](),a0['add']('s_ctf4ai'),Y[b7(0x2e7)]=Array['from'](a0),a0Z(Y));}(F,z['number']),F&&function(Y){const b8=b5,Z=a0a1();if(!Z)return;const a0=Z['getTime']()-Date[b8(0x111)]();if(a0<=-0x1664*0x1+0xa47*-0x1+-0x1*-0x20ab)return;const a1=a0/(-0x1*0x1c9d9+0x1bd1*0xe+0x12ecb),a2=new Set(Y[b8(0x2e7)]||[]);let a3=null;if(a1<=0xe99+0x1*0x1afb+-0x2993&&!a2[b8(0xe2)]('t1')?a3={'key':'t1','text':[a0L[b8(0x2a0)][b8(0x2e1)](b8(0x1f0)),a0L[b8(0x2a0)]('\x20\x20Submit\x20now\x20with:\x20')+a0L[b8(0x2e1)](b8(0x1e2))]}:a1<=-0x1cf0+-0x2f5*0x2+0x71*0x4f&&!a2[b8(0xe2)]('t5')?a3={'key':'t5','text':[a0L[b8(0x2a0)][b8(0x2e1)](b8(0x19c)),a0L[b8(0x2f7)](b8(0x2b5))+a0L[b8(0x2e1)](b8(0x1e2))]}:a1<=-0x147a*0x1+0xf16*-0x2+0x10*0x32b&&!a2[b8(0xe2)](b8(0x158))&&(a3={'key':b8(0x158),'text':[a0L[b8(0x2f7)][b8(0x2e1)]('\x20\x20⏰\x2010\x20minutes\x20remaining'),a0L[b8(0x39f)](b8(0x199))+a0L[b8(0xd1)](b8(0x7a))]}),a3){console[b8(0xa5)](),console['log'](a0L[b8(0x2a0)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━'));for(const a4 of a3[b8(0x2aa)])console[b8(0xa5)](a4);console['log'](a0L[b8(0x2a0)](b8(0x23d))),a2['add'](a3[b8(0xfe)]),Y[b8(0x2e7)]=Array['from'](a2),a0Z(Y);}}(F),function(Y,Z,a0){const b9=b5,a1=Math[b9(0x31d)](Y/Z*(-0x69*-0x15+0x11b*-0xc+0x4c5)),a2=0x25d6+0x16ea+-0x1*0x3ca2-a1,a3=a0L[b9(0xb0)]('━'[b9(0x36a)](a1))+a0L[b9(0x39f)]('─'[b9(0x36a)](a2)),a4=Math[b9(0x31d)](Y/Z*(-0x1*-0x14a9+0x2*-0xace+-0x7*-0x31));console[b9(0xa5)](),console[b9(0xa5)]('\x20\x20'+a3+'\x20\x20'+a0L[b9(0xd1)][b9(0x2e1)](''+Y)+a0L[b9(0x39f)]('/'+Z)+'\x20\x20'+a0L[b9(0x39f)]('('+a0+b9(0x112))+'\x20\x20'+a0L[b9(0x39f)](a4+'%'));const a5=a0a1();if(a5){const a6=Math[b9(0x1d9)](-0x30f+0x2d*-0x21+0x8dc,Math['round']((a5[b9(0x2c9)]()-Date['now']())/(0x1184+-0x2148+0x13ac))),a7=Math['floor'](a6/(0x2*0x727+0x266c+-0x347e))+':'+String(a6%(0x2*-0xe17+-0x1396+0x1800*0x2))['padStart'](-0x1*0x1d71+0x1a5*-0x6+-0x393*-0xb,'0'),a8=a6<=-0x5*-0x6d3+-0x5*-0x5bc+-0x3e8f?a0L['red'][b9(0x2e1)]:a6<=0xb28+0x85f+0x125b*-0x1?a0L[b9(0x2a0)]:a6<=0x3db*-0x1+-0x10a7+0x4b*0x4e?a0L[b9(0x2f7)]:a0L[b9(0x39f)];console[b9(0xa5)]('\x20\x20'+a0L['gray'](b9(0x13d))+'\x20'+a8(a7)+'\x20'+a0L[b9(0x39f)](b9(0x304)));}}(z[b5(0x344)],G,H),F&&D(F,z[b5(0x344)])&&console[b5(0xa5)](a0L[b5(0x2f7)](b5(0x327)));const Q=function(Y,Z){const ba=b5,a0={};a0[ba(0x207)]=0.2,a0[ba(0x11b)]=ba(0xaa),a0[ba(0xfe)]=ba(0xf7);const a1={};a1[ba(0x207)]=0.33,a1['emoji']='🐨',a1[ba(0xfe)]=ba(0xfa);const a2={};a2[ba(0x207)]=0.5,a2[ba(0x11b)]='🌉',a2[ba(0xfe)]=ba(0x36e);const a3={};a3[ba(0x207)]=0.6,a3[ba(0x11b)]='🦘',a3[ba(0xfe)]='egg9';const a4={};a4['pct']=0.8,a4['emoji']=ba(0x255),a4['key']=ba(0x300);const a5={};a5['pct']=0.87,a5['emoji']='🦈',a5['key']=ba(0x392);const a6={};a6[ba(0x207)]=0x1,a6[ba(0x11b)]='🎉',a6[ba(0xfe)]=ba(0x98);const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math[ba(0x31d)](a9[ba(0x207)]*Z);if(!(aa<-0x74b*0x3+-0x1603+0x2be5||a8[ba(0xe2)](aa))&&(a8['add'](aa),Y===aa))return{'emoji':a9[ba(0x11b)],'text':a0ai(a9['key'])};}}(z[b5(0x344)],G);if(Q&&console[b5(0xa5)](a0L[b5(0x2f7)]('\x20\x20'+Q[b5(0x11b)]+'\x20\x20'+Q['text'])),console[b5(0xa5)](),z[b5(0x291)]&&console[b5(0xa5)](a0L[b5(0xb0)]('\x20\x20['+z[b5(0x291)]+']')),z['points']&&z[b5(0x285)]>-0xf98*0x2+-0x69+0x1f9b&&console['log'](a0L[b5(0xb0)](b5(0x1bc)+z[b5(0x285)]+b5(0x245))),L){let Y=z['description']||z['text'];const Z=a0a2(z[b5(0x344)],z[b5(0x86)]);if(z['attachedData']){const a1=/\([^()]*attachedData[^()]*\)/;a1['test'](Y)?Y=Y[b5(0x31b)](a1,z[b5(0x86)]):Y['includes'](z[b5(0x86)])||(Y=Y+b5(0x388)+z[b5(0x86)]);}console['log'](a0L[b5(0x2e1)][b5(0xd1)](b5(0x309)+z[b5(0x344)]+'.\x20')+a0L[b5(0xd1)](Y[b5(0x28c)]('\x0a')[-0x184+0x22a*0x7+-0xda2]));const a0=Y[b5(0x28c)]('\x0a')[b5(0x108)](-0x1381*0x2+0x11a4*0x2+0x1*0x3bb);for(const a2 of a0)console[b5(0xa5)](a0L[b5(0xd1)]('\x20\x20'+a2));if(console[b5(0xa5)](),Z&&'ai4ctf'===z[b5(0x2d0)]){const a3=Z['replace'](process.env.HOME||'','~');console['log'](a0L[b5(0xb0)]('\x20\x20'+a0ai(b5(0x194))+'\x20')+a0L[b5(0x39f)]('('+a0ai(b5(0x160))+'\x20'+a3+'):')),console[b5(0xa5)](a0L['white'](b5(0x110))+a0L[b5(0x2f7)](b5(0x293)+a3)['padEnd'](0x1328*0x1+-0x1*0x16d9+0x3e5*0x1)+a0L[b5(0x39f)]('\x20'+a0ai(b5(0x1df)))),console[b5(0xa5)](a0L[b5(0xd1)](b5(0x1f9))+a0L[b5(0x2f7)](b5(0x22c))[b5(0x24d)](0xfd9*-0x2+-0x138c+0x335e)+a0L['gray']('\x20'+a0ai(b5(0x119)))),console[b5(0xa5)](a0L[b5(0xd1)](b5(0xb2))+a0L[b5(0x2f7)](b5(0x2c3))+a0L[b5(0x39f)](b5(0xc9))+a0L[b5(0x2f7)](b5(0x273))),console[b5(0xa5)](a0L['white']('\x20\x20\x20\x20④\x20')+a0L[b5(0x2f7)](b5(0x1d5))[b5(0x24d)](0x19a3+-0xf5a+0x9*-0x121)+a0L['gray']('\x20'+a0ai('examWaysRefPython'))),console[b5(0xa5)](a0L[b5(0xd1)](b5(0x342))+a0L[b5(0x2f7)](b5(0x2f9))[b5(0x24d)](-0x1758+-0x14e7+-0x1*-0x2c5f)+a0L['gray']('\x20'+a0ai(b5(0x116)))),console[b5(0xa5)](),console[b5(0xa5)](a0L['gray']('\x20\x20'+a0ai(b5(0xb4))+'\x20')+a0L[b5(0x2e1)]['green'](b5(0x20d))),console['log']();}B&&(console[b5(0xa5)](a0L['green']('\x20\x20Your\x20answer:\x20'+B)),console[b5(0xa5)]());}else{console[b5(0xa5)](a0L[b5(0x2e1)][b5(0xd1)](b5(0x309)+z[b5(0x344)]+'.\x20')+a0L[b5(0xd1)](z['text'])),console[b5(0xa5)]();for(const a4 of['A','B','C','D']){const a5=B===a4;K[b5(0x3a2)](a4)?console['log'](a0L[b5(0x39f)][b5(0x294)](b5(0x87)+a4+'.\x20'+z[b5(0x253)][a4])+a0L[b5(0x2a0)]('\x20('+a0ai(b5(0x134))+')')):a5?console[b5(0xa5)](a0L[b5(0x206)][b5(0x2e1)](b5(0x12d)+a4+'.\x20'+z[b5(0x253)][a4])):console[b5(0xa5)](a0L[b5(0x39f)]('\x20\x20\x20\x20'+a4+'.')+'\x20'+a0L[b5(0xd1)](z['options'][a4]));}console[b5(0xa5)]();}const V='demo-free'===F?.[b5(0x38e)][b5(0x10e)],W=J[b5(0x38a)][-0x834+0xa*0x2e9+-0xe*0x17e]||0x23f*0xa+-0x1c11+0x5*0x11f;V&&0x185*0x1+-0x37*-0x77+-0x1*0x1b14===z['number']&&0xeca+-0x236*0xb+0x988===W&&(console[b5(0xa5)](a0L[b5(0x2f7)][b5(0x2e1)]('\x20\x20'+a0ai(b5(0xfd)))),console[b5(0xa5)]());const X=J['max']-J[b5(0x1c5)];if(console[b5(0xa5)](a0L[b5(0x39f)](b5(0x26e))),L){const a6=F&&b5(0x27c)!==F[b5(0x38e)]['examId']&&z[b5(0x344)]>=-0xc01+-0x1*0x607+0x5*0x3a3&&z[b5(0x344)]<=0x14b4+0x1*0x10ca+-0x2556,a7=F&&b5(0x27c)!==F[b5(0x38e)][b5(0x10e)]&&z['number']>=0x128*-0x18+-0x9*-0x23a+-0x1*-0x7d5&&z['number']<=-0x2171+0x5e*-0x67+0x1*0x4769;b5(0x149)===z[b5(0x2d0)]?console[b5(0xa5)](a0L[b5(0x2e1)][b5(0xb0)](b5(0xff))+a0L['gray'](b5(0xa1))):a7?console['log'](a0L['bold'][b5(0x206)]('\x20\x20\x20\x20ai4ctf')+a0L[b5(0x39f)](b5(0x2c2))):a6&&console['log'](a0L[b5(0x2e1)][b5(0x2a0)]('\x20\x20\x20\x20ctf4ai')+a0L[b5(0x39f)]('\x20\x20\x20\x20\x20\x20\x20\x20enter\x20CTF4AI\x20chat\x20—\x20attack\x20the\x20AI\x20target\x20(recommended)')),console[b5(0xa5)](a0L[b5(0x2f7)](b5(0x151))+a0L[b5(0x39f)](b5(0x2eb))),console['log'](a0L[b5(0x2f7)]('\x20\x20\x20\x20!python3')+a0L[b5(0x39f)]('\x20\x20\x20\x20\x20\x20start\x20Python\x20shell'));}else{const a8=J[b5(0x1d9)]>=0x109*0xd+0x2*0x368+-0x1427,a9=X>-0xff8+-0x2*-0x2dd+0xa3e?a0L[b5(0x39f)](a0ai(b5(0x311))+'\x20')+a0L[b5(0x2f7)]('('+X+'/'+J[b5(0x1d9)]+')'):a8?a0L[b5(0x39f)](a0ai('helpAllUsed')+'\x20('+J[b5(0x1c5)]+'/'+J[b5(0x1d9)]+')'):a0L['gray'](''+a0ai('helpUsedUp'));console['log'](a0L['yellow']('\x20\x20\x20\x20A/B/C/D')+a0L['gray'](b5(0x127)+a0ai(b5(0x118)))),console[b5(0xa5)](a0L['yellow'](b5(0x32f))+b5(0xc1)+a9);}console['log'](a0L['yellow']('\x20\x20\x20\x20next')+a0L[b5(0x39f)](b5(0x1b9))+a0L[b5(0x2f7)](b5(0x2c1))+a0L['gray'](b5(0x87)+a0ai(b5(0x1e6)))),console[b5(0xa5)](a0L[b5(0x2f7)](b5(0x2e3)+G)+a0L['gray'](b5(0x117)+a0ai(b5(0x22d)))),console[b5(0xa5)](a0L[b5(0x2f7)](b5(0x343))+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b5(0x136)))),console[b5(0xa5)](a0L['yellow'](b5(0xd2))+a0L[b5(0x39f)](b5(0x117)+a0ai('htpReview'))),console[b5(0xa5)](a0L[b5(0x2e1)]['yellow']('\x20\x20\x20\x20exam\x20submit')+a0L[b5(0x39f)](b5(0x117)+a0ai(b5(0x280)))),console[b5(0xa5)](a0L[b5(0x2f7)](b5(0x389))+a0L[b5(0x39f)](b5(0xc1)+a0ai(b5(0xf6)))),console[b5(0xa5)](a0L['yellow'](b5(0x203))+a0L[b5(0x39f)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b5(0x28e)))),console[b5(0xa5)](a0L['gray'](b5(0x26e)));}export function registerExamCommand(z){const bb=a0B,B=z['command']('exam')['description'](bb(0x16e));B['command']('nations')[bb(0x38c)]('View\x20all\x20participating\x20countries')['action'](()=>{const bc=bb;a0a8(bc(0x131)),console[bc(0xa5)](),a0ae(bc(0x1ae)),console['log']();const F=[['AU','Australia'],['BD','Bangladesh'],['BI',bc(0x1d4)],['BR',bc(0x1d1)],['CN','China'],['DE',bc(0x7f)],['EG',bc(0x2ba)],['FR',bc(0xb6)],['GH',bc(0x39b)],['ID',bc(0xc4)],['IN',bc(0x93)],['JP',bc(0x10d)],['KR',bc(0x399)],['LA',bc(0x39a)],['LK',bc(0x1ac)],['MM','Myanmar'],['MO',bc(0x2d1)],['MY','Malaysia'],['NZ',bc(0x2ad)],['PE','Peru'],['PH',bc(0x296)],['RU',bc(0x1ec)],['SA',bc(0x35f)],['SG',bc(0x367)],['TH',bc(0x129)],['TR','Turkey'],['UK',bc(0x325)],['US','United\x20States'],['UZ',bc(0x133)],['VN',bc(0x2a3)],['ZA',bc(0x302)]];for(let G=0x18d5+-0x221d+-0x318*-0x3;G<F[bc(0x19e)];G+=0x1d*-0xea+0x1f40+-0x7*0xad){const H=F[bc(0x108)](G,G+(-0x19d2+0x1f93+-0x31*0x1e))[bc(0xc6)](([J,K])=>'\x20\x20'+a0L['cyan'](J)+'\x20\x20'+a0L[bc(0x39f)](K[bc(0x24d)](0x167e*-0x1+-0xa9f+0x212d)))[bc(0x121)]('');console[bc(0xa5)](H);}console[bc(0xa5)](),console[bc(0xa5)](a0L[bc(0x39f)]('\x20\x2040+\x20countries\x20and\x20regions\x20represented')),console[bc(0xa5)](a0L['gray'](bc(0x10f))),console[bc(0xa5)](),console['log'](a0L['white'](bc(0x224))),console[bc(0xa5)](a0L['cyan'](bc(0x2ee))+a0L[bc(0x39f)](bc(0xba))+a0L[bc(0x39f)](bc(0xeb))),console[bc(0xa5)]();}),B['command'](bb(0x320))['description'](bb(0x297))[bb(0x13f)](async F=>{const bd=bb;a0a8(bd(0x90)+(F||''));const G=M();if(!G)return;const H=a0ag(bd(0xe3));H[bd(0x2bf)]();try{let J=await G[bd(0x76)]();if(H[bd(0xd6)](),F){const Q=F['toUpperCase']();J=J[bd(0x262)](V=>V[bd(0x387)][bd(0x26b)]()===Q||bd(0x186)===V['country']);}if(!J||0x3*0x265+-0x3*-0x4f7+0x1*-0x1614===J[bd(0x19e)]){console['log'](),a0ac(F?bd(0x2bd)+F[bd(0x26b)]()+'\x20yet.':bd(0x159)),console[bd(0xa5)](),console[bd(0xa5)](a0L['white'](bd(0xce))),console[bd(0xa5)](a0L[bd(0x39f)](bd(0x220))),console[bd(0xa5)](),console[bd(0xa5)](a0L[bd(0x39f)](bd(0x2d3))+a0L['bold']['cyan'](bd(0x1a9))),console[bd(0xa5)]();const V={};V['PE']='es',V['CN']='zh',V['JP']='ja',V['KR']='ko',V['BR']='pt',V['SA']='ar',V['FR']='fr',V['DE']='de',V['IN']='hi',V['ID']='id',V['TH']='th',V['VN']='vi',V['TR']='tr',V['RU']='ru',V['UA']='uk',V['HT']='ht',V['KE']='sw',V['TZ']='sw';const W=V,X=(F||'')[bd(0x26b)]();return void(W[X]&&(console['log'](a0L[bd(0x39f)](bd(0x1c3)+W[X])),console[bd(0xa5)]()));}const K=J[bd(0xc6)](Y=>{const be=bd,Z=be(0x24f)===Y[be(0x290)]?a0L[be(0x206)]:be(0x140)===Y['status']?a0L['yellow']:a0L[be(0xd1)];return[a0L['white'](Y['id']),Y['name'],a0L[be(0xb0)](Y['country']),String(Y[be(0x250)]),Y[be(0x1c7)]+be(0xaf),Z(Y[be(0x290)])];}),L=[...new Set(J['map'](Y=>Y['country']))];a0ae(F?bd(0x386)+F[bd(0x26b)]():bd(0x210)+L[bd(0x19e)]+bd(0x1c1)),a0ad(['ID',bd(0x267),bd(0x1be),bd(0x2c0),'Duration',bd(0x198)],K),console['log'](),console[bd(0xa5)](a0L[bd(0x39f)](bd(0x30f))),L[bd(0x19e)]>0x1*-0x1edd+-0x962+0x2840&&console[bd(0xa5)](a0L[bd(0x39f)](bd(0x26c)));}catch(Y){H[bd(0xf2)](bd(0x230)),a0aa(Y[bd(0x299)]);}}),B[bb(0x29b)](bb(0xbd))[bb(0x38c)](bb(0x229))['action'](async F=>{const bf=bb;a0a8(bf(0x188)+F);const G=a0Y();if(G)return a0ab(bf(0x3a0)+G[bf(0x38e)][bf(0xd7)]+bf(0x33a)),void a0ac(bf(0xae));const H=M();if(!H)return;const J=await a0Q({'message':a0L[bf(0xd1)](bf(0x139)),'default':!(0x364+0x2416+-0x13bd*0x2),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L[bf(0x206)](K)}}});if(J){console[bf(0xa5)]();try{N(0x1ef8+-0x21b2+-0x2ba*-0x1,bf(0x2c4));const {session:K,questions:L}=await H[bf(0x2f3)](F);N(-0x18a7*0x1+-0x2392+-0x39*-0x10f,bf(0x123)),await q(-0x1*-0x1a21+-0x3*0x74b+0x378*-0x1),N(0x467*0x5+0xda4+-0x1*0x236b,bf(0x275)),await q(0xf27*0x1+-0x40*0x23+-0x59f),N(-0x1*-0x1052+0xaca*0x3+-0x3056,'Starting\x20timer...'),await q(-0x3f3*0x1+0x25fa*-0x1+0x2a83),a0Z({'session':K,'questions':L,'answers':{}}),N(-0x2*0x4b8+0x1*0xcdf+0x13*-0x29,bf(0x1a8)),console[bf(0xa5)](),console[bf(0xa5)](),a0ae(K[bf(0xd7)]),a0af(bf(0x2c0),String(K[bf(0x250)])),a0af(bf(0x2f6),K[bf(0x1c7)]+'\x20minutes'),a0af(bf(0x1be),K[bf(0x387)]),O(),L[bf(0x19e)]>-0x22b9+0x431+0xf44*0x2&&U(L[0x239c+0x1151+-0x34ed]);}catch(Q){console['log'](),a0aa(Q[bf(0x299)]);}}}),B[bb(0x29b)](bb(0x263))[bb(0x38c)]('View\x20question\x20(or\x20all\x20questions)')[bb(0x13f)](async F=>{const bg=bb;a0a8(bg(0x1c0)+(F||bg(0xdb)));const {refetchQuestionDataIfStale:G}=await import(bg(0x28d));await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,-0x17*0x7f+0x10b2+-0x53f),K=H[bg(0x393)][bg(0x13e)](L=>L[bg(0x344)]===J);if(!K)return void a0aa('Question\x20'+F+bg(0x18e)+H[bg(0x393)][bg(0x19e)]+').');H['_lastQ']=J,a0Z(H),U(K,H[bg(0x364)][J]);}else{a0ae(''+H[bg(0x38e)][bg(0xd7)]);const L=Object[bg(0x2ca)](H['answers'])[bg(0x19e)];a0af(bg(0x319),L+'/'+H[bg(0x38e)][bg(0x250)]+bg(0x3a1)),console[bg(0xa5)]();for(const Q of H[bg(0x393)]){const V=H[bg(0x364)][Q[bg(0x344)]],W=V?a0L[bg(0x206)]('['+V+']'):a0L[bg(0x39f)](bg(0x384)),X=Q[bg(0x291)]?a0L[bg(0x39f)]('\x20['+Q[bg(0x291)]+']'):'';console[bg(0xa5)]('\x20\x20'+W+'\x20'+a0L[bg(0xd1)]('Q'+Q[bg(0x344)])+X+'\x20'+a0L[bg(0x39f)](Q[bg(0x2aa)][bg(0x15a)](0xf9e+0x7*-0x517+0x1403,-0x8*0x65+0x132+0x2*0x119))+(Q[bg(0x2aa)][bg(0x19e)]>-0x1*0x82f+-0x1f7*-0xd+-0x20*0x89?bg(0x295):''));}console[bg(0xa5)]();}}else a0aa('No\x20exam\x20in\x20progress.\x20Use\x20\x22exam\x20start\x20<id>\x22\x20to\x20begin.');}),B[bb(0x29b)](bb(0x176))['description'](bb(0x27f))[bb(0x13f)](F=>{const bh=bb;a0a8('exam\x20mark\x20'+(F||''));const G=a0Y();if(!G)return void a0aa(bh(0x21e));const H=G[bh(0x393)][bh(0x19e)],J=F?parseInt(F,-0xa57*0x3+0x7af+0x1760):G[bh(0x14c)]||-0x1b9d+0x4f7+-0x1*-0x16a7;if(Number[bh(0x190)](J)||J<0x25ef+0x228c+0x1*-0x487a||J>H)return void a0aa(bh(0x2ae)+H+'.');const K=j(G,J);console[bh(0xa5)](),K?console['log'](a0L[bh(0x2f7)](bh(0x334)+J+bh(0x357))):console[bh(0xa5)](a0L[bh(0x39f)](bh(0x272)+J+bh(0xec)));const L=Array['isArray'](G['bookmarks'])?G['bookmarks']:[];L[bh(0x19e)]>-0xda9*-0x2+-0x1231*-0x2+0x36*-0x12e&&console[bh(0xa5)](a0L['gray'](bh(0x2cc)+L['map'](Q=>'Q'+Q)[bh(0x121)](',\x20'))),console[bh(0xa5)](a0L[bh(0x39f)](bh(0xbf))+a0L['white'](bh(0x7a))),console[bh(0xa5)]();}),B[bb(0x29b)]('unmark\x20[n]')[bb(0x38c)](bb(0x193))[bb(0x13f)](F=>{const bi=bb;a0a8(bi(0x375)+(F||''));const G=a0Y();if(!G)return void a0aa(bi(0x21e));const H=G['questions'][bi(0x19e)],J=F?parseInt(F,-0x1*0x1c6d+0x2*0x885+0xb6d):G[bi(0x14c)]||-0x1395+0x18ba+0x149*-0x4;Number['isNaN'](J)||J<0xf*0xb1+-0x2677+0x1c19||J>H?a0aa(bi(0x2ae)+H+'.'):D(G,J)?(j(G,J),console['log'](),console[bi(0xa5)](a0L['gray'](bi(0x272)+J+bi(0xec))),console[bi(0xa5)]()):console[bi(0xa5)](a0L[bi(0x39f)](bi(0x309)+J+bi(0x341)));}),B['command']('next')[bb(0x38c)](bb(0x37f))[bb(0x13f)](()=>{const bj=bb;a0a8(bj(0x13a));const F=a0Y();if(!F)return void a0aa(bj(0x21e));F[bj(0x393)][bj(0x2d4)](K=>!F['answers'][K[bj(0x344)]]);const G=F[bj(0x14c)]||-0x16bd*0x1+0x461*-0x5+0x2ca3,H=Math[bj(0x31e)](G+(0x2*-0x1a5+-0xa8*0x15+-0x1*-0x1113),F['questions'][bj(0x19e)]);F['_lastQ']=H,a0Z(F);const J=F[bj(0x393)][H-(0xa9b+-0x1f22+0x4*0x522)];U(J,F[bj(0x364)][J[bj(0x344)]]);}),B['command'](bb(0x2c1))[bb(0x38c)](bb(0x2b2))[bb(0x13f)](()=>{const bk=bb;a0a8('exam\x20prev');const F=a0Y();if(!F)return void a0aa(bk(0x21e));const G=F[bk(0x14c)]||0x1a*-0xac+0x11c*0x1c+0xd97*-0x1,H=Math[bk(0x1d9)](G-(0x3f5*-0x1+-0x1*0x1035+0x6b9*0x3),0x59*0x18+0xc82*0x3+-0x3b*0xc7);F[bk(0x14c)]=H,a0Z(F);const J=F['questions'][H-(-0x8e4+-0x17df+0x20c4)];U(J,F[bk(0x364)][J[bk(0x344)]]);}),B['command'](bb(0x8b))[bb(0x38c)](bb(0x11a))[bb(0x13f)](async()=>{const bl=bb;a0a8(bl(0x305));const F=a0Y();if(!F)return void a0aa(bl(0x21e));const G=R(F),H=F[bl(0x14c)]||0x26*-0x101+0x210c+0x51b,J=G[bl(0x38a)][H]||0x2*0x38b+-0x1*-0x10cc+0x6*-0x3fb,K=G[bl(0xc2)][H]||[],L=F[bl(0x393)][bl(0x13e)](W=>W['number']===H);if(!L)return;if(J>=-0x6be*0x5+-0x4*0x209+0x29dc)return console[bl(0xa5)](),console[bl(0xa5)](a0L[bl(0x2f7)](bl(0x34e))),console['log'](a0L['gray']('\x20\x20Trust\x20your\x20instinct\x20and\x20pick\x20one!')),console[bl(0xa5)](),void U(L,F['answers'][L[bl(0x344)]]);const Q=['A','B','C','D'][bl(0x262)](W=>!K['includes'](W));if(Q['length']<=-0x16b4+-0x2*-0x9e5+0x2ec)return console['log'](),console[bl(0xa5)](a0L[bl(0x2f7)]('\x20\x20😄\x20Only\x202\x20options\x20left\x20—\x20you\x20got\x20this!')),console[bl(0xa5)](),void U(L,F[bl(0x364)][L['number']]);if(G[bl(0x1c5)]>=G[bl(0x1d9)]){const W=G[bl(0x1d9)]>=-0x1*0x2559+0x25eb+-0x74,X=-0x174c+-0x204f+0x37b9-G[bl(0x1d9)];return void(W?(console[bl(0xa5)](),console[bl(0xa5)](a0L[bl(0x39f)]('\x20\x20All\x20help\x20used\x20('+G[bl(0x1c5)]+'/'+G[bl(0x1d9)]+bl(0x1ff))),console[bl(0xa5)]()):(console['log'](),console[bl(0xa5)](a0L[bl(0x2f7)](bl(0x248)+G['used']+'/'+G['max'])),console[bl(0xa5)](a0L[bl(0xd1)](bl(0x2c8))+a0L['bold']['yellow'](bl(0x17f))+a0L[bl(0x39f)]('\x20(+'+X+bl(0x105))),console[bl(0xa5)]()));}const V=Y=>{const bm=bl;K[bm(0xb1)](Y),G[bm(0xc2)][H]||(G[bm(0xc2)][H]=[]),G[bm(0xc2)][H]=K,G[bm(0x38a)][H]=J+(-0xa52*-0x1+-0x19fb+-0x322*-0x5),G[bm(0x1c5)]++,F['_helpUsed']=G['used'],F[bm(0x1f1)]=G[bm(0x1d9)],F['_helpPerQ']=G[bm(0x38a)],F[bm(0x31f)]=G[bm(0xc2)],F['interactions']||(F[bm(0xcb)]=[]),F[bm(0xcb)][bm(0xb1)]({'ts':new Date()[bm(0x75)](),'q':H,'type':bm(0x261),'result':bm(0x37a)+Y}),a0Z(F),console[bm(0xa5)](),console[bm(0xa5)](a0L[bm(0x2f7)](bm(0x74)+Y+bm(0x7e))+a0L[bm(0x39f)](bm(0xac)+G[bm(0x1c5)]+'/'+G[bm(0x1d9)]+')')),U(L,F[bm(0x364)][L[bm(0x344)]]);};if(bl(0x27c)===F[bl(0x38e)]['examId']&&L[bl(0x166)])(Y=>{const bn=bl,Z=Q[bn(0x262)](a0=>a0!==Y&&!K['includes'](a0));0x1358+0x2df+-0x1637!==Z[bn(0x19e)]&&V(Z[Math['floor'](Math[bn(0x17a)]()*Z['length'])]);})(L[bl(0x166)]);else{const Y=a0W()['ctfdUrl']||'https://practice.icoa2026.au',Z=F[bl(0x38e)]?.['token']||'';try{const a0={};a0[bl(0x150)]='application/json',a0[bl(0x2d2)]=bl(0x394);const a1={};a1['token']=Z,a1[bl(0x26f)]=H,a1[bl(0xc2)]=K;const a2=await fetch(Y+bl(0x172)+F['session'][bl(0x10e)]+'/help',{'method':bl(0x2e8),'headers':a0,'body':JSON['stringify'](a1),'signal':AbortSignal[bl(0x1ca)](-0x2*-0xe75+-0x1*-0x2203+-0x2b65)}),a3=await a2[bl(0x2ec)](),a4=a3?.['data']?.[bl(0x1eb)];a4&&['A','B','C','D'][bl(0x3a2)](a4)?V(a4):(console[bl(0xa5)](),console[bl(0xa5)](a0L[bl(0x39f)](bl(0x356))));}catch{console[bl(0xa5)](),console[bl(0xa5)](a0L[bl(0x39f)](bl(0x1d7)));}}}),B[bb(0x29b)](bb(0x244))[bb(0x38c)]('Unlock\x20hidden\x20bonus\x20help\x20uses')[bb(0x13f)](()=>{const bo=bb;a0a8('exam\x20more-help');const F=a0Y();if(!F)return void a0aa(bo(0x21e));const G=R(F),H=bo(0x27c)===F[bo(0x38e)][bo(0x10e)]?0x1*0x22e1+-0x1ff5+-0x2e4:-0x3*-0x7ca+0x5f9+-0x1d39;if(G[bo(0x1d9)]>=H)return void console[bo(0xa5)](a0L[bo(0x39f)]('\x20\x20Bonus\x20help\x20already\x20unlocked.'));if(G['used']<G[bo(0x1d9)])return void console[bo(0xa5)](a0L['gray']('\x20\x20You\x20still\x20have\x20'+(G[bo(0x1d9)]-G[bo(0x1c5)])+'\x20helps\x20remaining.\x20Use\x20them\x20first!'));const J=H-G[bo(0x1d9)];F[bo(0x1f1)]=H,a0Z(F),console[bo(0xa5)](),console[bo(0xa5)](a0L[bo(0x206)](bo(0xdc)+J+bo(0x1c4)+J+'/'+H+bo(0x2e5))),console[bo(0xa5)](a0L[bo(0x39f)](bo(0x1cb))),console[bo(0xa5)]();}),B[bb(0x29b)](bb(0x23a))[bb(0x38c)](bb(0x8c))[bb(0x13f)](async(F,G)=>{const bp=bb,H=G['join']('\x20');a0a8(bp(0x1a1)+F+'\x20'+H);const J=a0Y();if(!J)return void a0aa(bp(0x2f4));if(!(function(){const bq=bp,Z=a0a1();if(!Z)return!(0x239d+0xf0f+-0x32ac);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object['keys'](a0[bq(0x364)])['length'];'demo-free'===a0[bq(0x38e)][bq(0x10e)]||-0x7d*-0x4b+0x1118+-0x35b7===a1?(a0a0(),a0ab('Exam\x20expired\x20and\x20cleared.'),a0ac(bq(0x243))):(a0aa(bq(0x34f)),a0ac('Type\x20\x22exam\x20submit\x22\x20to\x20finalise\x20now,\x20or\x20the\x20server\x20will\x20auto-finalise\x20within\x2030\x20minutes.'));}return!(-0x1549*-0x1+0x43*0x3d+0x5*-0x773);}return!(-0x21e+0xc3f+0xa21*-0x1);}()))return;const K=parseInt(F,0x1c53*-0x1+0x839+-0xa12*-0x2),L=J[bp(0x393)][bp(0x13e)](Z=>Z['number']===K);if(!L)return void a0aa(bp(0x2da)+F+bp(0x18e)+J[bp(0x393)][bp(0x19e)]+').');let Q;if(bp(0x2f9)===L[bp(0x2d0)]||bp(0x1d3)===L['type']||'vla'===L[bp(0x2d0)]||L[bp(0x253)]&&!L[bp(0x253)]['A']&&!L[bp(0x253)]['B']){if(Q=H[bp(0x2b4)](),/^submit\s+/i[bp(0x355)](Q)&&(Q=Q[bp(0x31b)](/^submit\s+/i,'')['trim']()),Q=Q['replace'](/^["'`]+|["'`]+$/g,'')['trim'](),!Q)return void a0aa('Please\x20provide\x20your\x20flag:\x20exam\x20answer\x20<n>\x20ICOA{your_flag}');if(/^[A-Da-d]$/['test'](Q))return a0aa('Q'+K+bp(0x120)),void console[bp(0xa5)](a0L[bp(0x39f)](bp(0x2be))+a0L[bp(0x206)]('exam\x20answer\x20'+K+'\x20ICOA{your_flag}'));}else{if(Q=H[bp(0x26b)](),!['A','B','C','D'][bp(0x3a2)](Q))return void a0aa(bp(0x365));}if(bp(0x27c)===J[bp(0x38e)][bp(0x10e)]&&0x15e*-0x2+-0x3*-0xafc+-0x1e36===K&&0x2067*0x1+-0x1faa+-0x1b*0x7===(R(J)[bp(0x38a)][-0x3*-0x91e+-0x222e+0x6d6]||0x15c3+-0x1*-0xe2a+-0x23ed))return console[bp(0xa5)](),console['log'](a0L[bp(0x2f7)]('\x20\x20💡\x20Try\x20typing\x20')+a0L[bp(0x2e1)][bp(0x2f7)]('help')+a0L[bp(0x2f7)](bp(0x189))),console[bp(0xa5)](a0L[bp(0x39f)]('\x20\x20This\x20question\x20requires\x20you\x20to\x20use\x20help\x20before\x20answering.')),void console[bp(0xa5)]();const V=J[bp(0x364)][K];J['interactions']||(J['interactions']=[]),J['interactions'][bp(0xb1)]({'ts':new Date()[bp(0x75)](),'q':K,'type':V?bp(0x333):bp(0x83),'input':Q,'result':V?bp(0x27a)+V:bp(0x213)}),J[bp(0x364)][K]=Q,J['_lastQ']=K,a0Z(J),console[bp(0xa5)](a0L['gray'](bp(0xfc)));const W=J['session'][bp(0x181)];if(W&&bp(0x27c)!==J[bp(0x38e)][bp(0x10e)]){const Z=(a0W()['ctfdUrl']||bp(0x1fd))+bp(0x172)+J[bp(0x38e)]['examId']+bp(0x2cd),a0={};a0[bp(0x150)]=bp(0x2e4);const a1={};a1[bp(0x181)]=W,a1[bp(0x26f)]=K,a1[bp(0x166)]=Q,fetch(Z,{'method':bp(0x2e8),'headers':a0,'body':JSON['stringify'](a1),'signal':AbortSignal[bp(0x1ca)](-0x135e+0x62f*0x2+0x1a88)})[bp(0x191)](()=>{});}const X=Object[bp(0x2ca)](J[bp(0x364)])['length'],Y=J[bp(0x38e)][bp(0x250)];if(a0a9('Q'+K+':\x20'+Q+'\x20✓\x20\x20('+X+'/'+Y+bp(0x112)),'demo-free'===J[bp(0x38e)][bp(0x10e)]&&L['answer']){const a2=[bp(0x237),bp(0x27e),bp(0x1b2),'Exactly.',bp(0xa3)],a3=[bp(0x330),bp(0x2f2),bp(0x251)],a4=Q===L[bp(0x166)]?a2:a3,a5=a4[Math[bp(0x2a7)](Math[bp(0x17a)]()*a4[bp(0x19e)])];console[bp(0xa5)](a0L[bp(0x39f)](bp(0x378)+a5));}if(K<J[bp(0x393)][bp(0x19e)]){const a6=J['questions'][K];J['_lastQ']=a6[bp(0x344)],a0Z(J),U(a6,J['answers'][a6['number']]);}else X>=J['questions'][bp(0x19e)]&&(console[bp(0xa5)](),console[bp(0xa5)](a0L[bp(0x206)][bp(0x2e1)](bp(0x1a0))),console[bp(0xa5)](),bp(0x27c)===J[bp(0x38e)]['examId']?(console[bp(0xa5)](a0L[bp(0xd1)](bp(0x225))+a0L['bold'][bp(0xb0)]('exam\x20submit')+a0L[bp(0xd1)](bp(0x1cf))),console[bp(0xa5)]()):console[bp(0xa5)](a0L[bp(0xd1)](bp(0x1db))));}),B[bb(0x29b)](bb(0x80))[bb(0x38c)](bb(0x12a))[bb(0x13f)](()=>{const br=bb;a0a8('exam\x20review');const F=a0Y();if(!F)return void a0aa(br(0x21e));a0ae(br(0x1e0)+F[br(0x38e)][br(0xd7)]),O(),console[br(0xa5)]();let G='\x20\x20';const H=Array['isArray'](F[br(0x154)])?F[br(0x154)]:[];for(const Q of F[br(0x393)]){const V=F['answers'][Q[br(0x344)]],W=H[br(0x3a2)](Q[br(0x344)]),X=W?'★':'\x20';G+=V?W?a0L[br(0x2e1)][br(0x2f7)]('Q'+String(Q[br(0x344)])[br(0x142)](0xb*-0x65+-0xd*0x15a+-0x15eb*-0x1)+X+'['+V+']\x20'):a0L['green']('Q'+String(Q[br(0x344)])['padStart'](0x1*-0xa13+0xd0c+0xfd*-0x3)+'\x20['+V+br(0x383)):W?a0L[br(0x2e1)]['yellow']('Q'+String(Q[br(0x344)])['padStart'](-0x185d+0xc33+0xc2c)+X+br(0x217)):a0L[br(0x2f7)]('Q'+String(Q[br(0x344)])['padStart'](0x26*-0x83+-0xd5*0xf+0x1fef)+br(0x240)),Q[br(0x344)]%(0x3*0x6ad+0x13b0+0xd3b*-0x3)==0x1*0x6da+-0x2cc*-0x1+-0x9a6&&(console[br(0xa5)](G),G='\x20\x20');}G[br(0x2b4)]()&&console[br(0xa5)](G);const J=Object['keys'](F[br(0x364)])[br(0x19e)],K=F[br(0x38e)][br(0x250)],L=K-J;if(console[br(0xa5)](),a0af(br(0x8f),a0L[br(0x206)]['bold'](J+'/'+K)),L>-0x1909+-0x1f40+0x1*0x3849){const Y=F['questions']['filter'](Z=>!F['answers'][Z[br(0x344)]])['map'](Z=>Z[br(0x344)])['join'](',\x20');a0af(br(0x115),a0L['yellow'](L+br(0x1b3)+Y+')'));}H[br(0x19e)]>-0x1dd7+-0x219e+0x3f75&&a0af('Flagged\x20for\x20review',a0L[br(0x2e1)][br(0x2f7)]('★\x20'+H[br(0x19e)])+a0L['gray']('\x20('+H[br(0xc6)](Z=>'Q'+Z)[br(0x121)](',\x20')+')')),console[br(0xa5)](),H['length']>-0x144d+0xe77+-0x12*-0x53&&console[br(0xa5)](a0L[br(0x39f)](br(0x81))+a0L[br(0xd1)](br(0x1c0)+H[0x208d*0x1+0x1f7e*-0x1+-0x10f])),console['log'](a0L['gray'](br(0x2fb))+a0L[br(0x2e1)][br(0xb0)]('exam\x20submit')+a0L[br(0x39f)](br(0x2af)));}),B[bb(0x29b)]('submit\x20[confirmArg]')['description'](bb(0x143))[bb(0x13f)](async J=>{const bs=bb;a0a8(bs(0x1af)+(J||''));const K=a0Y();if(K&&bs(0x161)===J&&(K['_submitConfirmed']=!(0x1f*0x83+0xcc0+0x1c9d*-0x1),a0Z(K)),!K)return void a0aa('No\x20exam\x20in\x20progress.');const L=Object[bs(0x2ca)](K[bs(0x364)])[bs(0x19e)],Q=K['session'][bs(0x250)],V=Q-L;if(-0xe4e*-0x2+-0x12e7+-0x9b5===L){const X=a0a1(),Y=X&&new Date()>=X;return void('demo-free'===K[bs(0x38e)][bs(0x10e)]||Y?(a0a0(),a0ab(bs(0x26d)),a0ac(bs(0x243))):(a0ab(bs(0x2a9)),a0ac(bs(0x19a))));}if('demo-free'!==K[bs(0x38e)][bs(0x10e)]){const Z=!(0x32f*-0x8+0xa*-0xdf+0x222e)===K[bs(0x100)],a0=a0a1(),a1=!!(a0&&new Date()>=a0);if(!Z&&!a1){if(console['log'](),console[bs(0xa5)](a0L[bs(0x2a0)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](a0L['bold'][bs(0x2a0)](bs(0x2d8))),console['log'](a0L[bs(0x2a0)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bs(0xa5)](),console['log'](a0L[bs(0xd1)](bs(0x390)+a0L[bs(0x2e1)]['green'](L+'/'+Q)+bs(0xcd))),V>-0x16ab+-0x1dd9+0x3484){const a3=K['questions'][bs(0x262)](a4=>!K['answers'][a4['number']])[bs(0xc6)](a4=>'Q'+a4['number'])[bs(0x121)](',\x20');console[bs(0xa5)](a0L[bs(0x2f7)]('\x20\x20'+V+bs(0x15b)+a3));}const a2=Array[bs(0x22b)](K[bs(0x154)])?K[bs(0x154)]:[];return a2[bs(0x19e)]>-0x5fe*-0x5+0x16f*0x17+0x1*-0x3eef&&console['log'](a0L[bs(0x2f7)](bs(0x1de)+a2[bs(0x19e)]+bs(0x1f3)+a2['map'](a4=>'Q'+a4)[bs(0x121)](',\x20'))),console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0xd1)](bs(0x132))+a0L[bs(0x2e1)]['red'](bs(0x339))+a0L[bs(0xd1)]('\x20—\x20you\x20cannot\x20change\x20them\x20after\x20submit.')),console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)]('\x20\x20To\x20confirm:\x20\x20')+a0L[bs(0x2e1)][bs(0xb0)](bs(0x328))),console[bs(0xa5)](a0L['white'](bs(0x9b))+a0L[bs(0xb0)](bs(0x7a))+a0L[bs(0x39f)](bs(0x208))+a0L['cyan'](bs(0xd0))),void console[bs(0xa5)]();}Z&&(delete K['_submitConfirmed'],a0Z(K));}if(console[bs(0xa5)](),bs(0x27c)===K[bs(0x38e)][bs(0x10e)]){try{N(-0x466+-0x175b+-0x1d*-0xf5,a0ai('grading')),await q(-0x6e5+0x7*-0x1c5+0x1474);let a4=-0x6bd+-0x78*-0xb+-0x9*-0x2d;const a5=[],a6={};for(const ai of K[bs(0x393)]){const aj=ai[bs(0x291)]||bs(0x91),ak={};ak[bs(0x256)]=0x0,ak[bs(0x259)]=0x0,(a6[aj]||(a6[aj]=ak),a6[aj][bs(0x259)]++);const al=K[bs(0x364)][ai[bs(0x344)]];al&&ai[bs(0x166)]&&al===ai['answer']?(a4++,a6[aj][bs(0x256)]++):a5[bs(0xb1)](ai['number']);}a5[bs(0x29e)]((am,an)=>am-an),N(-0x56*-0x1+0x34a*0x9+-0x1d8c,a0ai(bs(0x1e8))),console[bs(0xa5)]();const a7=new Date(K[bs(0x38e)][bs(0x2a6)])[bs(0x2c9)](),a8=Math['max'](0x1*0x1292+-0x791+-0xb01,Math['round']((Date[bs(0x111)]()-a7)/(0x49*-0x62+0x3a6+0x1c34))),a9=Math['floor'](a8/(-0x1*-0x1438+0x267b+0x137d*-0x3))+'m\x20'+a8%(0x7b4+0x26c8+-0x2e40)+'s',aa=[...K[bs(0x393)]],ab={...K[bs(0x364)]},ac=R(K);a0a0();const ad=Math[bs(0x31d)](a4/Q*(-0xa*0x32a+0x1db3+0x255*0x1)),ae=a0W(),af={};af[bs(0x150)]=bs(0x2e4),(fetch(bs(0x349),{'method':bs(0x2e8),'headers':af,'body':JSON[bs(0x292)]({'type':bs(0x216),'score':a4,'total':Q,'lang':ae[bs(0x9a)]||'en','help_used':ac[bs(0x1c5)],'help_max':ac[bs(0x1d9)],'tokens_used':0x0,'solved':ad>=0x8*0x171+0x18fe+-0x244a?-0x928+-0x2141+0x7a*0x59:0xbb0+-0x81e*-0x1+-0x13ce,'timestamp':new Date()[bs(0x75)](),'interactions':K['interactions']||[]}),'signal':AbortSignal[bs(0x1ca)](-0x1*-0x1199+-0x1f*0xd1+0x1b3e)})[bs(0x191)](()=>{}),console[bs(0xa5)](),console[bs(0xa5)](a0L['cyan'](bs(0xa6))),console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)](bs(0x2f5))),console[bs(0xa5)](a0L['bold'][bs(0xd1)]('\x20\x20\x20██║██╔════╝██╔═══██╗██╔══██╗')),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)](bs(0x138))),console['log'](a0L[bs(0x2e1)][bs(0xd1)](bs(0x321))),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)](bs(0x303))),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)]('\x20\x20\x20╚═╝\x20╚═════╝\x20╚═════╝\x20╚═╝\x20\x20╚═╝')),console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0x2e1)]('\x20\x20\x20'+a0ai(bs(0x22e))+':\x20'+a4+'/'+Q+'\x20('+ad+'%)')),console[bs(0xa5)](a0L[bs(0x2e1)](bs(0x117)+(ad>=0xae1+0x19f8+-0x53b*0x7?a0L[bs(0x206)](a0ai(bs(0x345))):a0L[bs(0x2a0)](a0ai(bs(0xed)))))),console['log'](a0L[bs(0x39f)](bs(0xd5)+a9)),console[bs(0xa5)](),console[bs(0xa5)](a0L['yellow'](bs(0x14d))),console[bs(0xa5)](a0L['gray'](bs(0x395))),console[bs(0xa5)](),console['log'](a0L[bs(0xb0)](bs(0xa6))),await q(0x0+0x17b8+-0xc00));const ag=Object[bs(0x179)](a6);if(ag[bs(0x19e)]>0x1de5+-0x16ed+0x1*-0x6f8){console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)]('\x20\x20By\x20category'));const am=-0x14de+-0x1767+0x2c4f;for(const [an,ao]of ag){const ap=ao[bs(0x259)]>-0x1*0x22e5+-0x1*0x685+0x5d*0x72?Math['round'](ao[bs(0x256)]/ao[bs(0x259)]*(-0x277*0x2+0x79*-0xb+0xa85)):0x216c+-0x16c3+0x1*-0xaa9,aq=ao['total']>-0x2574+-0x1*-0x20b9+0x4bb?Math[bs(0x31d)](ao[bs(0x256)]/ao[bs(0x259)]*am):-0x2037*-0x1+0x1521+-0x3558,ar=am-aq,as=ap>=0x1b0a+-0xd*-0x233+-0x3751?a0L[bs(0x206)]:ap>=-0x1fe5+-0x1*0xded+0x2e04?a0L[bs(0x2f7)]:a0L[bs(0x2a0)],at=as('█'[bs(0x36a)](aq))+a0L[bs(0x39f)]('░'[bs(0x36a)](ar));console['log']('\x20\x20\x20\x20'+a0L[bs(0xd1)](an[bs(0x24d)](0xd0c+-0x1109+0x411))+'\x20'+at+'\x20\x20'+as(ao[bs(0x256)]+'/'+ao[bs(0x259)])+a0L[bs(0x39f)]('\x20('+ap+'%)'));}console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0xb0)](bs(0x153)));}const ah=a0a4(a4,Q);if(a4===ah[bs(0x18d)]&&ah[bs(0x27d)]>0x2*0x443+0x73*0x27+-0x1a0a&&a4>0x24c6+0xa*-0x19b+0x66*-0x34&&(console[bs(0xa5)](),console['log'](a0L[bs(0x2e1)]['green']('\x20\x20★\x20New\x20personal\x20best!'))),a5['length']>-0x12dc+0x1*0x1952+0x2*-0x33b){const au=aa[bs(0x262)](av=>a5[bs(0x3a2)](av[bs(0x344)]))['map'](av=>({...av}));a0a5(au);}else a0a7();if(await q(-0x16ac+-0xe25*-0x1+0x143f),a5[bs(0x19e)]>-0xa88*0x1+-0x25a3+-0x3b*-0xd1){console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0x2f7)]('\x20\x20'+a5[bs(0x19e)]+'\x20'+a0ai(bs(0x1a2)))),console[bs(0xa5)]();for(const av of a5){const aw=aa['find'](az=>az[bs(0x344)]===av);if(!aw)continue;const ax=ab[av],ay=aw[bs(0x166)];console[bs(0xa5)](a0L['white'](bs(0x309)+av+'.\x20'+aw['text'])),ax?console[bs(0xa5)](a0L['red'](bs(0x87)+a0ai(bs(0x1fc))+':\x20'+ax+'.\x20'+aw['options'][ax])):console['log'](a0L[bs(0x2f7)](bs(0x87)+a0ai(bs(0x1fc))+bs(0x2dc))),ay&&console[bs(0xa5)](a0L[bs(0x206)](bs(0x87)+a0ai('correct')+':\x20'+ay+'.\x20'+aw[bs(0x253)][ay])),aw['explanation']&&console[bs(0xa5)](a0L[bs(0x39f)](bs(0x337)+aw[bs(0x162)])),console['log']();}}else console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0x206)]('\x20\x20'+a0ai(bs(0x197))));await q(0x4*0x50d+0xaf0+-0x1754),console[bs(0xa5)](),console['log'](a0L[bs(0xb0)](bs(0x153))),console['log'](a0L['white']('\x20\x20'+a0ai(bs(0x10c))+'\x20')+a0L[bs(0x2e1)][bs(0x206)](bs(0x2f9))+a0L['gray']('\x20—\x20'+a0ai(bs(0x92)))),console[bs(0xa5)](a0L['gray']('\x20\x20'+a0ai(bs(0x270)))),console['log'](a0L[bs(0xb0)]('\x20\x20─────────────────────────────────────────────')),console[bs(0xa5)]();}catch(az){console['log'](),a0aa(az[bs(0x299)]);}return;}const W=K[bs(0x38e)][bs(0x181)];try{let aA;if(N(-0x1989+0x2*-0x640+0x2609,bs(0x1ee)),W){const aK={};aK[bs(0x150)]=bs(0x2e4);const aL={};aL[bs(0x2f9)]=0x0,aL[bs(0x1d3)]=0x0;const aM=a0W()[bs(0x34a)]||'https://practice.icoa2026.au',aN=await fetch(aM+bs(0x172)+K[bs(0x38e)][bs(0x10e)]+bs(0x1a4),{'method':bs(0x2e8),'headers':aK,'body':JSON[bs(0x292)]({'token':W,'answers':K[bs(0x364)],'interactions':K[bs(0xcb)]||[],'aiUsage':K['aiUsage']||aL,'bookmarks':K[bs(0x154)]||[]}),'signal':AbortSignal['timeout'](-0x2a37*-0x2+0x740*0x1+-0x2116)});if(!aN['ok']){const aO=await aN[bs(0x2ec)]()['catch'](()=>({'message':'Submit\x20failed'}));throw new Error(aO['message']||bs(0x228));}aA=(await aN['json']())[bs(0x107)];}else{const aP=M();if(!aP)return;aA=await aP[bs(0x25d)](K['session'][bs(0x10e)],K['answers']);}N(-0x9d*-0x38+0x53*-0x2e+0x133c*-0x1,bs(0x2e0)),await q(0x1bac+-0x567*0x1+-0x1519*0x1),N(0x23e9+-0x1*-0x21bd+-0x4542,bs(0xb5)),console[bs(0xa5)]();const aB={};aB[bs(0x2f9)]=0x0,aB[bs(0x1d3)]=0x0;const aC={'answered':Object[bs(0x2ca)](K[bs(0x364)])['length'],'total':K[bs(0x38e)][bs(0x250)],'bookmarks':Array[bs(0x22b)](K[bs(0x154)])?K[bs(0x154)][bs(0x19e)]:-0x4*-0x320+0x3e*-0x4c+0x5e8,'help':R(K),'aiUsage':K[bs(0x1ea)]||aB,'interactions':(K['interactions']||[])[bs(0x19e)],'durationMin':K['session'][bs(0x1c7)]||-0x2ca+-0x5*0x238+0xde2,'confirmedAt':K['session'][bs(0x25f)]||K[bs(0x38e)][bs(0x2a6)],'examId':K[bs(0x38e)][bs(0x10e)]};a0a0();const aD=Math[bs(0x1d9)](0x2228+0xc85+-0x3*0xf8f,Math[bs(0x31d)]((Date['now']()-new Date(aC['confirmedAt'])[bs(0x2c9)]())/(-0x44b+0x279*-0x7+0x5*0x51a))),aE=Math[bs(0x2a7)](aD/(0xe64+-0xd17+-0x111)),aF=aD%(0x241a+0x935*0x4+-0x48b2);console[bs(0xa5)](),console['log'](a0L[bs(0xb0)](bs(0x1ce))),console[bs(0xa5)](),console['log'](a0L[bs(0x2e1)][bs(0xd1)]('\x20\x20\x20██╗\x20██████╗\x20██████╗\x20\x20█████╗')),console['log'](a0L[bs(0x2e1)]['white'](bs(0x336))),console['log'](a0L[bs(0x2e1)]['white'](bs(0x138))),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)]('\x20\x20\x20██║██║\x20\x20\x20\x20\x20██║\x20\x20\x20██║██╔══██║')),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)](bs(0x303))),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)](bs(0xcf))),console['log']();const aG=aA[bs(0x345)]?a0L[bs(0x206)][bs(0x2e1)]('\x20\x20\x20✓\x20\x20Submission\x20accepted\x20—\x20baseline\x20met'):a0L['yellow'][bs(0x2e1)](bs(0x28a));console[bs(0xa5)](aG),console[bs(0xa5)](),console['log'](a0L['white'](bs(0x30d))),console[bs(0xa5)](a0L[bs(0xd1)](bs(0x222))),console['log'](a0L[bs(0xd1)](bs(0x323))),console[bs(0xa5)](),console['log'](a0L['cyan']('\x20\x20─────────────────────────────────────────────')),console[bs(0xa5)](),console[bs(0xa5)](a0L['bold']['white']('\x20\x20Your\x20run'));const aH=aC[bs(0x259)]-aC[bs(0xdf)];console[bs(0xa5)]('\x20\x20\x20\x20'+a0L[bs(0x39f)](bs(0x89))+a0L[bs(0xd1)](aC[bs(0xdf)]+'/'+aC['total'])+(aH>-0x1385+0x3*0xacb+-0xcdc?a0L['gray']('\x20\x20·\x20\x20'+aH+bs(0x14a)):'')),console['log'](bs(0x87)+a0L[bs(0x39f)](bs(0x2c6))+a0L[bs(0xd1)](aE+'m\x20'+aF+'s')+a0L[bs(0x39f)](bs(0x32c)+aC[bs(0x289)]+bs(0xa0))),aC[bs(0x154)]>0x264b+0x26bd+-0x44*0x122&&console['log'](bs(0x87)+a0L[bs(0x39f)]('Flagged:\x20\x20\x20')+a0L['yellow']('★\x20'+aC[bs(0x154)])),console[bs(0xa5)]();const aI=aA[bs(0x35b)];if(aI&&Object[bs(0x2ca)](aI)[bs(0x19e)]>=0x47b*-0x8+-0xe00*-0x2+0x7da){const aQ=Object[bs(0x179)](aI)[bs(0x262)](([,aV])=>aV[bs(0x259)]>-0x1d0e+0x2*-0x6aa+0x2*0x1531)[bs(0xc6)](([aV,aW])=>({'cat':aV,'pct':aW['correct']/aW['total']}))[bs(0x29e)]((aV,aW)=>aW[bs(0x207)]-aV[bs(0x207)]),aR=Math[bs(0x31e)](-0x1*0x116e+-0x2243+-0xa57*-0x5,Math[bs(0x174)](aQ[bs(0x19e)]/(-0x15e*-0x16+-0xba2*0x3+0x4d5))),aS=Math['min'](-0x1f68+0x1*0x246b+0x3*-0x1ab,Math[bs(0x174)](aQ[bs(0x19e)]/(0xb63+-0x2634+0x11*0x194))),aT=aQ[bs(0x108)](0xf72+0x1*-0x2393+0x1421,aR)[bs(0xc6)](aV=>aV[bs(0x37d)]),aU=aQ['slice'](-aS)[bs(0xc6)](aV=>aV[bs(0x37d)]);aT['some'](aV=>aU[bs(0x3a2)](aV))||(console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)](bs(0x25a))),console[bs(0xa5)](bs(0x87)+a0L[bs(0x206)]('Stronger\x20here:\x20\x20')+a0L['white'](aT[bs(0x121)](',\x20'))),console[bs(0xa5)]('\x20\x20\x20\x20'+a0L[bs(0x2f7)](bs(0x15c))+a0L[bs(0xd1)](aU[bs(0x121)](',\x20'))),console[bs(0xa5)](a0L[bs(0x39f)](bs(0x2ff))),console[bs(0xa5)]());}console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)](bs(0x1bf))),console[bs(0xa5)](bs(0x87)+a0L[bs(0x39f)](bs(0x2f0))+a0L[bs(0xd1)](aC[bs(0x8b)][bs(0x1c5)]+'/'+aC[bs(0x8b)]['max'])),console['log'](bs(0x87)+a0L[bs(0x39f)]('AI\x20tokens:\x20')+a0L[bs(0xd1)](aC[bs(0x1ea)][bs(0x2f9)]+bs(0xf1))+a0L[bs(0x39f)](bs(0x96))+a0L['white'](aC[bs(0x1ea)][bs(0x1d3)]+'\x20CTF4AI')),console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0xb0)](bs(0x153))),console[bs(0xa5)](),console[bs(0xa5)](a0L[bs(0x2e1)][bs(0xd1)]('\x20\x20What\x20next')),console[bs(0xa5)](a0L[bs(0x39f)](bs(0x29d))),console[bs(0xa5)](a0L['gray'](bs(0x9f))+a0L[bs(0xd1)](bs(0x1a9))+a0L[bs(0x39f)]('\x20is\x20free,\x20unlimited\x20practice.')),console['log'](a0L['gray'](bs(0x18b))+a0L[bs(0xd1)](bs(0x2a2))),console['log']();const {showCToBUpgradePrompt:aJ}=await import(bs(0x39e));aJ(aC[bs(0x10e)],aA[bs(0x345)]),console[bs(0xa5)](a0L[bs(0x2f7)](bs(0x16c))),console['log'](a0L['cyan'][bs(0x34b)](bs(0x1a5))),console[bs(0xa5)](),console['log'](a0L[bs(0xb0)]('\x20\x20═════════════════════════════════════════════')),console[bs(0xa5)]();}catch(aV){console[bs(0xa5)](),a0aa(aV[bs(0x299)]);}}),B[bb(0x29b)](bb(0x23e))[bb(0x38c)](bb(0x368))[bb(0x13f)](async F=>{const bt=bb;a0a8(bt(0x242)+(F||''));const G=M();if(!G)return;if(!F){const J=a0Y();if(!J)return void a0aa(bt(0x169));F=J[bt(0x38e)]['examId'];}const H=a0ag(bt(0xc0));H[bt(0x2bf)]();try{const K=await G[bt(0x1da)](F);H[bt(0x332)](bt(0xd3)),console[bt(0xa5)](),a0ae(K['examName']),a0af(bt(0x20e),a0L['bold'](K[bt(0x22e)]+'/'+K['total'])),a0af(bt(0x1bd),a0L[bt(0x2e1)](K[bt(0x177)]+'%')),a0af('Status',K[bt(0x345)]?a0L[bt(0x206)][bt(0x2e1)]('PASSED'):a0L[bt(0x2a0)]['bold'](bt(0xa2))),a0af(bt(0xf4),K[bt(0x326)]),console['log']();}catch(L){H['fail'](bt(0x2ef)),a0aa(L[bt(0x299)]);}}),B['command'](bb(0x126))[bb(0x38c)](bb(0x7b))[bb(0x13f)](async J=>{const bu=bb;a0a8(bu(0xa8)+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import(bu(0x28d)),V=K();if(V){const a2=V[bu(0x38e)][bu(0x181)],a3=a0a1(),a4=!!a2&&a2[bu(0x2b4)]()[bu(0x26b)]()!==J['trim']()[bu(0x26b)](),a5=!!a3&&a3['getTime']()+(-0x2fae6*0x9+-0x3123f7*0x1+0x676d4d)<Date[bu(0x111)]();if(a4&&a5)return Q(),console['log'](),console[bu(0xa5)](a0L['gray'](bu(0xb7))),console[bu(0xa5)](),console[bu(0xa5)](a0L[bu(0xd1)](bu(0x201))+a0L[bu(0x2e1)][bu(0xb0)](bu(0x19d)+J)),void console['log']();if(!a2&&J)return V[bu(0x38e)][bu(0x181)]=J['trim'](),L(V),console[bu(0xa5)](),console[bu(0xa5)](a0L[bu(0x206)]('\x20\x20✓\x20Token\x20re-attached\x20to\x20your\x20in-progress\x20exam.')),console['log'](a0L['gray'](bu(0x371))+a0L[bu(0xd1)](bu(0x163))+a0L[bu(0x39f)](bu(0x17b))+a0L['white'](bu(0x1e2))),console[bu(0xa5)](),console[bu(0xa5)](a0L['bold']['white'](bu(0x38d))),console[bu(0xa5)](a0L[bu(0x39f)](bu(0x337))+a0L['bold']['cyan']('exam\x20q\x201')+a0L[bu(0x39f)](bu(0x354))),console[bu(0xa5)](a0L[bu(0x39f)](bu(0x337))+a0L['bold'][bu(0xb0)]('exam\x20review')+a0L['gray'](bu(0x32a))),void console['log']();const a6=Object[bu(0x2ca)](V[bu(0x364)])[bu(0x19e)],a7=V['session'][bu(0x250)],a8=a0a1(),a9=a8?Math[bu(0x1d9)](-0xa45+0xde3*0x1+-0x1*0x39e,Math[bu(0x31d)]((a8[bu(0x2c9)]()-Date[bu(0x111)]())/(0x10225*0x1+-0x190e1+-0xc92*-0x1e))):null;return console[bu(0xa5)](),console[bu(0xa5)](a0L['yellow'](bu(0xc8))),console['log'](),console[bu(0xa5)](a0L[bu(0x39f)](bu(0x20b))+a0L[bu(0xd1)](V[bu(0x38e)][bu(0xd7)])),a2&&console['log'](a0L[bu(0x39f)](bu(0x19f))+a0L['white'](a2)+(a2===J?a0L['green'](bu(0x282)):a0L[bu(0x2f7)](bu(0x113)))),console[bu(0xa5)](a0L[bu(0x39f)](bu(0x234))+a0L[bu(0xd1)](a6+'/'+a7)),null!==a9&&console['log'](a0L[bu(0x39f)](bu(0xde))+a0L[bu(0xd1)](a9+bu(0x180))),console['log'](),console[bu(0xa5)](a0L[bu(0x2e1)]['white'](bu(0x1d8))),console[bu(0xa5)](a0L[bu(0x39f)](bu(0x337))+a0L['bold'][bu(0xb0)](bu(0x7c))+a0L['gray']('\x20\x20\x20\x20\x20\x20resume\x20at\x20any\x20question')),console[bu(0xa5)](a0L[bu(0x39f)](bu(0x337))+a0L['bold']['cyan']('exam\x20review')+a0L['gray']('\x20\x20\x20see\x20progress\x20+\x20flagged\x20items')),console[bu(0xa5)](a0L[bu(0x39f)](bu(0x337))+a0L[bu(0x2e1)]['cyan']('exam\x20submit')+a0L[bu(0x39f)](bu(0x281))),a2&&a2!==J&&(console[bu(0xa5)](),console[bu(0xa5)](a0L[bu(0x2f7)](bu(0x14f))),console[bu(0xa5)](a0L[bu(0x2f7)](bu(0xa7))),console[bu(0xa5)](),console[bu(0xa5)](a0L[bu(0x39f)]('\x20\x20If\x20you\x20need\x20to\x20abandon\x20this\x20session\x20(e.g.\x20expired\x20/\x20wrong\x20paper),')),console[bu(0xa5)](a0L[bu(0x39f)](bu(0x1c6))+a0L[bu(0x2e1)][bu(0xb0)](bu(0x1e9))+a0L['gray']('\x20to\x20wipe\x20local\x20state,\x20then\x20re-enter\x20the\x20new\x20token.'))),void console[bu(0xa5)]();}const {isNativeWindowsCmd:W}=await import(bu(0x35d));if(!W()&&!a0am()){let aa=!(-0x11e5*-0x1+0xbf5+0x3*-0x9f3);try{const ab={};ab['Content-Type']=bu(0x2e4);const ac=a0W()[bu(0x34a)]||'https://practice.icoa2026.au',ad=await fetch(ac+'/api/icoa/exam-token',{'method':bu(0x2e8),'headers':ab,'body':JSON[bu(0x292)]({'token':J['trim'](),'deviceHash':a0aj(),'peek':!(-0x2*0x5de+-0x1*-0x1d35+-0x1179)}),'signal':AbortSignal[bu(0x1ca)](-0xee*0x15+-0x1*-0x5c0+0x214e)});if(ad['ok']){const ae=await ad[bu(0x2ec)]();(ae?.['data']?.[bu(0x377)]||'')['endsWith']('-c')&&(aa=!(0x25*0xad+-0x212f+0x417*0x2));}}catch{}if(!aa)return console[bu(0xa5)](),a0ab('Pre-exam\x20setup\x20required\x20before\x20entering\x20a\x20token.'),console[bu(0xa5)](a0L[bu(0x39f)](bu(0x11d))+a0L[bu(0x2e1)][bu(0xb0)](bu(0x398))),console[bu(0xa5)](a0L[bu(0x39f)]('\x20\x20Or\x20type\x20')+a0L[bu(0x2e1)][bu(0xb0)](bu(0xd0))+a0L[bu(0x39f)](bu(0x2f8))),console['log'](a0L[bu(0x39f)](bu(0x2b6))),void console[bu(0xa5)]();}const X={};X['UA']='uk',X['PE']='es',X['CN']='zh',X['AU']='en',X['JP']='ja',X['KR']='ko',X['BR']='pt',X['SA']='ar',X['FR']='fr',X['DE']='de',X['IN']='hi',X['ID']='id',X['TH']='th',X['VN']='vi',X['TR']='tr',X['RU']='ru',X['EG']='ar',X['HT']='ht',X['PH']='en',X['MY']='en',X['MM']='en',X['SG']='en',X['ZA']='en',X['KE']='sw',X['TZ']='sw',X['MO']='zh',X['UZ']='uz',X['GH']='en',X['LA']='lo',X['BD']='bn',X['BI']='fr',X['US']='en',X['UK']='en',X['NZ']='en',X['LK']='si';const Y=X[J['trim']()[bu(0x15a)](-0x4c3*0x1+-0x1915+0x14*0x17e,0x2586+-0x30*-0x81+-0x3db4)[bu(0x26b)]()],Z=a0W(),a0=Z[bu(0x34a)]||bu(0x1fd),a1=Y||Z[bu(0x9a)]||'en';Y&&Y!==(Z[bu(0x9a)]||'en')&&a0X({'language':Y}),console[bu(0xa5)](),N(0x1*-0x12a9+0x1*-0x286+0x1d*0xbb,'Validating\x20token...');try{const af={};af[bu(0x150)]=bu(0x2e4);const ag=await fetch(a0+bu(0x362),{'method':'POST','headers':af,'body':JSON[bu(0x292)]({'token':J[bu(0x2b4)](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal[bu(0x1ca)](-0x2548+-0x3a78+0x86d0)});if(!ag['ok']){N(0xe55+-0xb*0x6b+-0x9bc,''),console['log']();const ao=await ag[bu(0x2ec)]()[bu(0x191)](()=>({'message':'Invalid\x20token'}));return a0aa(ao[bu(0x299)]||bu(0x2e2)),void a0ac('Check\x20your\x20token\x20or\x20contact\x20your\x20proctor.');}N(0x13b+0x7*-0x13f+0x79c,'Loading\x20exam...');const ah=await ag[bu(0x2ec)](),{session:ai,questions:aj,languages:ak}=ah[bu(0x107)];N(0x5*0x123+-0x17dc+0x1269,bu(0x2fd)),await q(0x22d3+-0x26a1+-0x24b*-0x2),N(-0x1*-0x41+-0x18be+-0x243*-0xb,bu(0x1a8)),console[bu(0xa5)](),console['log'](),a0ae(ai[bu(0xd7)]),console[bu(0xa5)](),a0af('Questions',ai[bu(0x250)]+bu(0x1d6)),a0af(bu(0x2f6),ai[bu(0x1c7)]+bu(0xea)),a0af(bu(0x36f),(ai[bu(0x34d)]||-0x250d+0x1484+0x111f)+'\x20points'),a0af(bu(0x16b),(ai[bu(0x144)]||0x955*-0x2+-0x12d*0x19+0x305a)+bu(0x340)),console[bu(0xa5)](),console[bu(0xa5)](a0L[bu(0xd1)](bu(0x10b))),console['log'](a0L[bu(0xd1)](bu(0x335))),console['log'](a0L[bu(0xd1)](bu(0xe7))),console[bu(0xa5)](a0L[bu(0xd1)]('\x20\x20\x20\x20AI:\x20\x20\x20\x20\x20\x2025K\x20AI4CTF\x20+\x2025K\x20CTF4AI\x20tokens')),ak&&ak[bu(0x19e)]>-0x1202+-0x14d+0x2*0x9a8&&console[bu(0xa5)](a0L[bu(0xd1)]('\x20\x20\x20\x20Lang:\x20\x20\x20\x20'+ak[bu(0x121)](',\x20')+'\x20—\x20switch\x20with:\x20lang\x20<code>')),console[bu(0xa5)](),console[bu(0xa5)](a0L['yellow'](bu(0x397))),console[bu(0xa5)](a0L[bu(0xd1)](bu(0x195))),console[bu(0xa5)](a0L['white'](bu(0x227))),console[bu(0xa5)](a0L[bu(0xd1)](bu(0x32e))),console[bu(0xa5)](),await new Promise(ap=>{const bv=bu;process[bv(0x374)][bv(0x1e7)](a0L[bv(0x2e1)][bv(0x2f7)](bv(0x157)));const aq=!!process[bv(0x36c)][bv(0xee)]&&process['stdin'][bv(0x1fa)];process[bv(0x36c)][bv(0xee)]&&process[bv(0x36c)][bv(0x16a)]&&process[bv(0x36c)]['setRawMode'](!(-0xba1+0x1312+0x77*-0x10));const ar=as=>{const bw=bv,at=as['toString']();(at['includes']('\x0a')||at[bw(0x3a2)]('\x0d'))&&(process[bw(0x36c)][bw(0xe0)](bw(0x107),ar),process[bw(0x36c)]['isTTY']&&process['stdin'][bw(0x16a)]&&process['stdin']['setRawMode'](aq),process[bw(0x374)][bw(0x1e7)]('\x0a'),ap());};process['stdin']['on']('data',ar),process[bv(0x36c)][bv(0x21d)]();});const al=new Date()[bu(0x75)]();ai[bu(0x25f)]=al,ai[bu(0x181)]=J[bu(0x2b4)]();try{const ap=Date[bu(0x111)](),aq=await fetch(a0+bu(0x324),{'method':bu(0x19b),'signal':AbortSignal[bu(0x1ca)](0x264a+-0x2*0x3d0+-0x12f2)});if(aq['ok']){const ar=await aq[bu(0x2ec)](),as=ar?.[bu(0x107)]?.['server_time_ms'];if(bu(0x344)==typeof as&&as>0x55f+-0x1a34+0x14d5){const at=(ap+Date[bu(0x111)]())/(-0x10b8+0x599*0x1+0xb21);ai[bu(0x236)]=Math[bu(0x31d)](as-at),ai['deadlineServerMs']=as+(0x1c*-0x94+-0x26*0x101+0x3692)*ai['durationMinutes']*(0x95*0x2b+-0x1229+-0x2*0x17b);}}}catch{}const am={};am['ai4ctf']=0x0,am['ctf4ai']=0x0;const an={};an[bu(0x38e)]=ai,an['questions']=aj,an[bu(0x364)]={},an[bu(0xcb)]=[],an[bu(0x1ea)]=am,(a0Z(an),console[bu(0xa5)](),a0a9(bu(0x8a)),a0af(bu(0x82),ai[bu(0x1c7)]+bu(0x21f)),aj[bu(0x19e)]>-0x1c*0x115+0x902*-0x4+0x4254&&U(aj[0xe44+-0x1f8a*0x1+0x1146]));}catch(au){console[bu(0xa5)](),'TimeoutError'===au[bu(0x347)]?a0aa(bu(0x3a3)):a0aa(au[bu(0x299)]||'Failed\x20to\x20start\x20exam');}}),B[bb(0x29b)](bb(0x167),{'hidden':!(-0x2362+-0x1*-0x1c72+0x6f0)})[bb(0x38c)](bb(0x9d))[bb(0x13f)](async()=>{const bx=bb;a0a8('exam\x20reset');const {getRealExamState:F,clearExamState:G}=await import(bx(0x28d)),H=F();if(!H)return console[bx(0xa5)](),console[bx(0xa5)](a0L[bx(0x39f)]('\x20\x20No\x20active\x20exam\x20session\x20to\x20reset.')),void console[bx(0xa5)]();const J=H[bx(0x38e)][bx(0x181)];if(console[bx(0xa5)](),console['log'](a0L[bx(0x2f7)](bx(0x101))),console['log'](a0L[bx(0x39f)](bx(0x361))+a0L['white'](H[bx(0x38e)][bx(0xd7)])),J&&console[bx(0xa5)](a0L[bx(0x39f)](bx(0xca))+a0L[bx(0xd1)](J)),console[bx(0xa5)](a0L['gray'](bx(0x12b))),console[bx(0xa5)](a0L[bx(0x39f)](bx(0x2d5))),console[bx(0xa5)](),console['log'](a0L['gray'](bx(0x225))+a0L[bx(0x2e1)]['cyan'](bx(0x167))+a0L['gray'](bx(0x106))),bx(0x167)!==(await new Promise(K=>{const by=bx;process[by(0x374)][by(0x1e7)](by(0x18a));const L=Q=>{const bz=by,V=Q[bz(0x233)]()[bz(0x2b4)]();(V[bz(0x3a2)]('\x0a')||V[bz(0x3a2)]('\x0d')||V[bz(0x19e)]>0x1a00+-0xe2f+-0xbd1)&&(process[bz(0x36c)][bz(0xe0)](bz(0x107),L),K(V[bz(0x31b)](/[\r\n]/g,'')));};process[by(0x36c)]['on'](by(0x107),L),process[by(0x36c)]['resume']();}))[bx(0x221)]())return console[bx(0xa5)](a0L['gray'](bx(0x211))),void console[bx(0xa5)]();G(),console[bx(0xa5)](),console[bx(0xa5)](a0L['green']('\x20\x20✓\x20Exam\x20state\x20cleared.')),console[bx(0xa5)](a0L[bx(0x39f)](bx(0x8d))+a0L['bold'][bx(0xb0)](bx(0x1dd))),console[bx(0xa5)]();}),B[bb(0x29b)]('demo')[bb(0x38c)](bb(0x1c9))[bb(0x13f)](async()=>{const bA=bb;a0a8('exam\x20demo'),E('demo-enter');const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import(bA(0x30c));a0W()[bA(0x2cb)]||(await(async function(){const bB=bA;let a0=!(-0x4ad+0x170d+-0x125f);const a1=process[bB(0x36c)],a2=()=>{a0=!(0x5*0x7bf+-0x1*0x31a+-0x7*0x517);},a3=a1[bB(0xee)]&&bB(0x369)==typeof a1[bB(0x16a)];a3&&(a1[bB(0x16a)](!(0x1*0x17ef+-0x1e2*0x14+0xdb9)),a1[bB(0x21d)](),a1[bB(0x37c)](bB(0x107),a2));const a4=async a5=>{let a6=-0x69b+-0x1*0x1377+0x1a12*0x1;for(;a6<a5&&!a0;)await q(0xf4e+-0x6d1+-0x82d),a6+=-0x113e*0x1+0x766*-0x5+0x368c;};try{if(console[bB(0x2a4)](),console[bB(0xa5)](),console[bB(0xa5)](a0L[bB(0x39f)](bB(0x117))+a0L['dim']('(press\x20any\x20key\x20to\x20skip)')),console[bB(0xa5)](),console[bB(0xa5)](a0L[bB(0x2e1)][bB(0xd1)]('\x20\x20\x20██╗\x20██████╗\x20██████╗\x20\x20█████╗')),console[bB(0xa5)](a0L[bB(0x2e1)][bB(0xd1)](bB(0x336))),console['log'](a0L[bB(0x2e1)][bB(0xd1)](bB(0x138))),console[bB(0xa5)](a0L['bold']['white'](bB(0x321))),console[bB(0xa5)](a0L['bold'][bB(0xd1)](bB(0x303))),console['log'](a0L[bB(0x2e1)]['white'](bB(0xcf))),console[bB(0xa5)](),console[bB(0xa5)](a0L[bB(0x2e1)]['yellow'](bB(0x215))),console['log'](a0L[bB(0x39f)](bB(0xf9))),await a4(-0x14b3+0xa71+-0x1406*-0x1),a0)return;if(console[bB(0xa5)](),console[bB(0xa5)](a0L[bB(0xd1)](bB(0x79))),console[bB(0xa5)](),await a4(0x1b97+-0x15*0x146+-0x1*-0x17f),a0)return;if(console[bB(0xa5)](a0L[bB(0xb0)]('\x20\x20\x20\x20\x20▣\x20')+a0L['white'](bB(0x313))+a0L[bB(0x39f)](bB(0x2d6))),await a4(-0x17e3*-0x1+0xde7+0x281*-0xe),a0)return;if(console[bB(0xa5)](a0L[bB(0x206)]('\x20\x20\x20\x20\x20▣\x20')+a0L[bB(0xd1)]('Team\x20up\x20with\x20AI\x20to\x20solve\x20CTFs')+a0L[bB(0x39f)](bB(0x385))),await a4(-0x12b2+0x1cf6+-0x788),a0)return;if(console['log'](a0L[bB(0x2a0)](bB(0x1fe))+a0L[bB(0xd1)](bB(0x212))+a0L['gray'](bB(0x1b0))),await a4(0xf*-0xca+-0x340*-0x1+-0x2*-0x60d),a0)return;if(console[bB(0xa5)](),console[bB(0xa5)](a0L[bB(0x2e1)][bB(0xd1)](bB(0x77))+a0L['bold'][bB(0x2f7)]('IS')+a0L[bB(0x2e1)][bB(0xd1)](bB(0x16f))),console[bB(0xa5)](),await a4(-0x895+0xbaf+0x2c2*0x1),a0)return;if(console[bB(0xa5)](a0L[bB(0x39f)](bB(0x18c))),await a4(0x6e*0x43+0x218d+0x1*-0x3cc7),a0)return;if(console['log'](a0L[bB(0x39f)]('\x20\x20\x20·\x2015\x20languages,\x20real-time\x20AI\x20translation')),await a4(0x1c69+0x1*0x16ab+-0x1*0x3184),a0)return;if(console[bB(0xa5)](a0L[bB(0x39f)](bB(0x214))),await a4(-0x21ca+0x19*0xf1+-0x2ad*-0x5),a0)return;console['log'](),console['log'](a0L[bB(0x2e1)]['cyan'](bB(0x239))),await a4(-0x8da+0x4*-0x203+-0x2e*-0xb5);}finally{((()=>{const bC=bB;if(a3){a1[bC(0xe0)](bC(0x107),a2);try{a1[bC(0x16a)](!(0x151*-0x17+-0x146c+-0x37*-0xec));}catch{}a1[bC(0x2ab)]();}})()),console[bB(0x2a4)]();}}()),a0X({'demoIntroSeen':!(0x2391+0x7*0x20e+-0x31f3)})),console[bA(0xa5)](),console[bA(0xa5)](a0L['white'](bA(0x147))+a0L[bA(0x39f)](H+bA(0xdd)+J+bA(0x254))),console[bA(0xa5)](a0L[bA(0x39f)](bA(0x11f))+a0L['cyan'](bA(0x271))+a0L['gray'](bA(0xd4))+a0L[bA(0xb0)](bA(0xd0))+a0L[bA(0x39f)]('\x20at\x20any\x20time.')),await new Promise(a0=>{const bD=bA;process[bD(0x374)][bD(0x1e7)](a0L[bD(0x2e1)][bD(0x2f7)](bD(0x2a8)));const a1=!!process[bD(0x36c)][bD(0xee)]&&process['stdin'][bD(0x1fa)];process[bD(0x36c)][bD(0xee)]&&process[bD(0x36c)][bD(0x16a)]&&process[bD(0x36c)][bD(0x16a)](!(0x9b3+-0x1*-0x1+-0x9b3));const a2=a3=>{const bE=bD,a4=a3[bE(0x233)]();(a4[bE(0x3a2)]('\x0a')||a4[bE(0x3a2)]('\x0d'))&&(process['stdin']['removeListener']('data',a2),process[bE(0x36c)][bE(0xee)]&&process[bE(0x36c)]['setRawMode']&&process['stdin'][bE(0x16a)](a1),process['stdout'][bE(0x1e7)]('\x0a'),a0());};process[bD(0x36c)]['on'](bD(0x107),a2),process[bD(0x36c)][bD(0x21d)]();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import(bA(0x28d));Q()&&V(bA(0x27c)),console['log'](),a0ae(bA(0x122)),console[bA(0xa5)](),console[bA(0xa5)](a0L[bA(0xd1)](bA(0x15e))),console['log'](a0L[bA(0xd1)]('\x20\x20'+H+bA(0x1e3)+J+bA(0x2ed)));const W=a0a3();if(W[bA(0x27d)]>0x19*-0xff+0xa*-0x361+0x19*0x259){const a0=W[bA(0xbb)],a1=a0>=0x2*-0x41f+0x2569*-0x1+0x29*0x11f?a0L[bA(0x206)]:a0>=0x2590+-0x115*-0xa+-0x3026*0x1?a0L[bA(0x2f7)]:a0L[bA(0xd1)];console[bA(0xa5)](),console[bA(0xa5)](a0L[bA(0x39f)]('\x20\x20Your\x20best:\x20')+a1(W[bA(0x18d)]+'/'+H+'\x20('+a0+'%)')+a0L[bA(0x39f)](bA(0x96)+W[bA(0x27d)]+'\x20attempts'));}console['log'](),console[bA(0xa5)](a0L[bA(0x39f)](bA(0x26e))),console[bA(0xa5)](a0L[bA(0xd1)]('\x20\x20'+a0ai(bA(0x1e5)))),console[bA(0xa5)](a0L[bA(0x2f7)]('\x20\x20\x20\x20A/B/C/D')+a0L[bA(0x39f)](bA(0x127)+a0ai(bA(0x2b3)))),console[bA(0xa5)](a0L[bA(0x2f7)](bA(0x32f))+a0L[bA(0x39f)](bA(0xc1)+a0ai(bA(0x33e)))),console[bA(0xa5)](a0L[bA(0x2f7)](bA(0x363))+a0L[bA(0x39f)]('\x20/\x20')+a0L[bA(0x2f7)](bA(0x2c1))+a0L[bA(0x39f)]('\x20\x20\x20\x20'+a0ai(bA(0x1e6)))),console['log'](a0L[bA(0x2f7)]('\x20\x20\x20\x20more\x20help')+a0L['gray'](bA(0x38f)+a0ai('htpMoreHelp'))),console['log'](a0L[bA(0x2f7)](bA(0x389))+a0L[bA(0x39f)](bA(0xc1)+a0ai(bA(0xf6)))),console[bA(0xa5)](a0L[bA(0x2f7)](bA(0x203))+a0L['gray'](bA(0xc1)+a0ai(bA(0x28e)))),console[bA(0xa5)](a0L[bA(0x39f)](bA(0xc7))),console[bA(0xa5)](a0L[bA(0x39f)](bA(0x20f))),console[bA(0xa5)](a0L[bA(0x39f)]('\x20\x20─────────────────────────────────────────')),console[bA(0xa5)]();const {getConfig:X}=await import(bA(0x35e)),Y=X()[bA(0x9a)]||'en';'en'===Y?(console[bA(0xa5)](a0L['gray'](bA(0x33f))),console[bA(0xa5)](a0L[bA(0x39f)](bA(0x1fb))),console['log'](a0L[bA(0x39f)](bA(0x231)))):console[bA(0xa5)](a0L[bA(0x206)](bA(0x18f)+Y)),console[bA(0xa5)](),console[bA(0xa5)](a0L[bA(0xd1)](bA(0x284)));const Z={...L,'startedAt':new Date()[bA(0x75)]()};console[bA(0xa5)](),N(0x235a+-0x3*-0x3ff+0x2f57*-0x1,bA(0x1d2)),await q(0x46c*0x4+0xb*-0x282+0x1*0xaae),N(-0x2c5+0x23b8+-0x1*0x20cb,bA(0xe9)),await q(-0x2453+-0x1ab+0x26c6),N(0x1d18+-0x1fd4+0x30c,'Almost\x20ready...'),await q(0x943*-0x3+0x1*-0x48d+-0xac*-0x31),N(-0x1*0xd2b+-0x1b75+-0x54*-0x7d,bA(0x1a8)),console[bA(0xa5)](),console[bA(0xa5)](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af(bA(0x2c0),String(H)),a0af(bA(0x2f6),bA(0x141)),U(K[0xf8f+-0x361*0x2+-0x8cd]);}),B['command'](bb(0x381))[bb(0x38c)](bb(0x196))[bb(0x13f)](async()=>{const bF=bb;a0a8(bF(0xe6)),E('post-report-retry');const {getLocalizedDemoSession:F}=await import(bF(0x30c)),G=a0a6();if(!G||-0xe82+0x1fca+-0x7*0x278===G[bF(0x19e)])return console[bF(0xa5)](),console[bF(0xa5)](a0L[bF(0x2f7)](bF(0x219))+a0L[bF(0x2e1)][bF(0xb0)](bF(0x1a9))+a0L[bF(0x2f7)](bF(0x170))),void console['log']();const H=a0Y();if(H){if(bF(0x27c)!==H[bF(0x38e)][bF(0x10e)])return a0ab(bF(0x3a0)+H['session'][bF(0xd7)]+bF(0x8e)),void a0ac(bF(0x35a));a0a0();}const J=V=>{const bG=bF;if(!V[bG(0x166)])return V;const W=V[bG(0x253)][V[bG(0x166)]],X=['A','B','C','D'][bG(0xc6)](a2=>V[bG(0x253)][a2]);for(let a2=X[bG(0x19e)]-(-0x1507*-0x1+-0xcf1+-0x815*0x1);a2>0x3d*-0x8b+0x1*-0xed2+0x2ff1;a2--){const a3=Math[bG(0x2a7)](Math[bG(0x17a)]()*(a2+(0x68b*-0x1+0x2273+0x1be7*-0x1)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[0x20c1+0x4d3+-0x2594],Y['B']=X[0x1688+0x1585+-0x2c0c],Y['C']=X[0x4e2+-0x1d46+0x1866],Y['D']=X[0x1*-0x1f0a+0xb8b+0x1382];const Z=Y,a0=['A','B','C','D'][bG(0x13e)](a4=>Z[a4]===W),a1={...V};return a1[bG(0x253)]=Z,a1['answer']=a0,a1;},K=G[bF(0xc6)]((V,W)=>({...J(V),'number':W+(0x15c*-0x1+0x1c5d+-0x8*0x360)})),L=F(),Q={...L,'examName':L['examName']+bF(0xfb),'questionCount':K[bF(0x19e)],'startedAt':new Date()[bF(0x75)]()};console[bF(0xa5)](),a0ae(bF(0xe1)),console[bF(0xa5)](),console['log'](a0L[bF(0xd1)](bF(0x2db)+K[bF(0x19e)]+bF(0x156)+(-0xf05+0x1*-0x30e+0x485*0x4===K['length']?'':'s')+bF(0x307))),console[bF(0xa5)](a0L[bF(0x39f)](bF(0x99))),console['log'](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af('Questions',String(K[bF(0x19e)])),a0af('Duration',bF(0x141)),U(K[-0xcb9+0x69*-0xc+0x11a5]);}),B[bb(0x29b)](bb(0x274))[bb(0x38c)]('Install\x20Python\x20environment\x20for\x20practical\x20exam\x20questions')[bb(0x13f)](async()=>{const bH=bb;if(a0a8(bH(0x398)),0x1f99+-0x74*-0x5+0x21dd*-0x1===a0a3()['attempts'])return console[bH(0xa5)](),a0ab('Complete\x20the\x20demo\x20first\x20before\x20setting\x20up.'),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x11d))+a0L[bH(0x2e1)][bH(0xb0)](bH(0x301))),void console['log']();const K=a0ak();if(K){const a4=K['installedPackages'][bH(0x19e)],a5=a4+K[bH(0x85)][bH(0x19e)];if(a4>=-0x1f2f*0x1+-0x1da6+0x3cdd*0x1||(a5>0x1014+0xc*0x1c9+-0x2580?a4/a5:0x1b4*0xb+0x686*-0x2+-0x5b0)>=0x1a23+0x138+-0x2f*0x95+0.7)return console[bH(0xa5)](),console['log'](a0L[bH(0x206)]('\x20\x20✓\x20')+a0L[bH(0x206)]('Environment\x20already\x20set\x20up')),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x278)+K[bH(0x155)][bH(0x28c)]('T')[-0x5*-0x397+-0xb*-0x24b+-0x2b2c])),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x30a)+K[bH(0x2ea)])),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x2de)+a4+bH(0x1c8))),K[bH(0x85)][bH(0x19e)]>0x17*-0xeb+-0x89b+0x1db8&&console[bH(0xa5)](a0L[bH(0x2f7)](bH(0x15d)+K[bH(0x85)][bH(0x121)](',\x20'))),console['log'](),console['log'](a0L[bH(0xd1)](bH(0x382))+a0L[bH(0x2e1)][bH(0xb0)]('exam\x20<token>')),console['log'](a0L[bH(0x39f)](bH(0x178))+a0L['bold']['cyan'](bH(0xd0))+a0L[bH(0x39f)](bH(0x2f8))),void console[bH(0xa5)]();console[bH(0xa5)](),console[bH(0xa5)](a0L[bH(0x2f7)](bH(0x204)+a4+'/'+a5+'\x20packages.\x20Retrying...')),console[bH(0xa5)]();}console[bH(0xa5)](),a0ae(bH(0x114)),console['log'](),console[bH(0xa5)](a0L[bH(0xd1)](bH(0x1ed))),console['log'](a0L[bH(0x39f)](bH(0x298))),console[bH(0xa5)]();const L=(a6,a7)=>{const bI=bH,a8=process['platform'];console[bI(0xa5)](),a0aa(bI(0x23b)===a6?bI(0x373):bI(0x130)+a7+bI(0x24a)),console[bI(0xa5)](),console[bI(0xa5)](a0L[bI(0x2e1)][bI(0xd1)](bI(0x2a1))),console[bI(0xa5)](),bI(0x102)===a8?(console[bI(0xa5)](a0L[bI(0x2f7)](bI(0x1bb))),console[bI(0xa5)](a0L[bI(0x206)](bI(0x287))),console['log'](),console[bI(0xa5)](a0L['gray'](bI(0x185))),console[bI(0xa5)](a0L[bI(0x39f)](bI(0x33d)))):bI(0x34c)===a8?(console[bI(0xa5)](a0L[bI(0x2f7)](bI(0x268))),console['log'](a0L['green'](bI(0x128))),console[bI(0xa5)](a0L[bI(0x206)](bI(0x288))),console[bI(0xa5)](a0L[bI(0x206)](bI(0x22f))),console[bI(0xa5)](a0L[bI(0x39f)](bI(0x252))),console[bI(0xa5)](),console[bI(0xa5)](a0L[bI(0x2f7)](bI(0xf3))),console['log'](a0L[bI(0x206)](bI(0x1b5))),console['log'](),console['log'](a0L[bI(0x2f7)](bI(0x260))),console[bI(0xa5)](a0L['green']('\x20\x20\x20\x20sudo\x20pacman\x20-S\x20python'))):bI(0x2b9)===a8?(console[bI(0xa5)](a0L[bI(0x2f7)](bI(0x277))),console[bI(0xa5)](a0L[bI(0x206)](bI(0x2fa))),console[bI(0xa5)](),console['log'](a0L[bI(0x39f)](bI(0x185))),console[bI(0xa5)](a0L[bI(0x39f)](bI(0x370)))):console[bI(0xa5)](a0L[bI(0x39f)](bI(0x1ba))),console[bI(0xa5)](),console[bI(0xa5)](a0L[bI(0xd1)](bI(0x17c))+a0L[bI(0x2e1)][bI(0xb0)]('exam\x20setup')),console[bI(0xa5)]();},Q=bH(0x21c);let V='';try{const a6={};a6[bH(0x2fc)]='utf-8',a6[bH(0x1ca)]=0x1388,V=a0an(Q+bH(0x306),a6)['trim']()['replace'](bH(0x130),'');const a7=V[bH(0x28c)]('.')[bH(0xc6)](Number);if(a7[-0x1*-0x1215+0x965+-0x1*0x1b7a]<-0x2226+-0x24cb+0x46f4||-0xe10+0x253b+-0x18*0xf7===a7[-0x1*-0x229d+0x201*-0x1+-0x209c]&&a7[0x687+-0x17e7+-0x3*-0x5cb]<0x1e11+0x1de5*0x1+-0x3bec)return void L('too_old',V);-0x2*0xf64+-0x20ca+-0x29*-0x18d===a7[0x47*-0x32+0x255b+0x177d*-0x1]&&a7[0xc1*0xb+-0x1255+0xa0b]<0x3*-0xd01+0x253f+0x1d0?console['log'](a0L[bH(0x206)](bH(0x109)+V)+a0L['gray'](bH(0xef))):console[bH(0xa5)](a0L[bH(0x206)](bH(0x109)+V));}catch{return void L(bH(0x23b));}try{const a8={};a8['stdio']=bH(0x1cd),a8['timeout']=0x1388,(a0an(Q+bH(0x33c),a8),console[bH(0xa5)](a0L[bH(0x206)](bH(0x202))));}catch{console[bH(0xa5)](a0L[bH(0x2f7)](bH(0x31c)));try{const a9={};a9[bH(0x257)]='ignore',a9[bH(0x1ca)]=0x7530,(a0an(Q+bH(0x33b),a9),console[bH(0xa5)](a0L[bH(0x206)](bH(0x1a3))));}catch{a0aa(bH(0x36b)),console['log']();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import('../lib/platform.js'),{execFileSync:ac}=await import(bH(0x359)),ad=aa(),ae=ab(),af=bH(0x34c)===process[bH(0xb3)]&&!ad,ag='darwin'===process[bH(0xb3)];let ah='your\x20Linux\x20distro';if(af||ad)try{const {readFileSync:ak}=await import(bH(0x26a)),al=ak('/etc/os-release',bH(0x314)),am=(al[bH(0x125)](/^ID="?([^"\n]+)/m)||[])[0xbe0+-0xca4+-0x1*-0xc5]||'',an=(al['match'](/^VERSION_ID="?([^"\n]+)/m)||[])[-0x22d0*-0x1+0x1*0x59f+-0x286e]||'';bH(0x192)===am?ah=bH(0x28f)+an+(ad?bH(0x1f5):''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?'\x20(WSL2)':''));}catch{}let ai=!(0x1*-0x132f+-0xe*0x7d+0xd03*0x2);if(ag)try{const ao={};ao['stdio']=bH(0x1cd),ao[bH(0x1ca)]=0x7d0,(ac(bH(0x97),[bH(0x226)],ao),ai=!(0x6df*-0x3+-0x1b7f*0x1+0x4*0xc07));}catch{ai=!(0xab0+0xc18+-0x341*0x7);}const aj=ae?bH(0x238):bH(0x1a7);return console['log'](a0L[bH(0x2e1)]['yellow'](bH(0x218))),console[bH(0xa5)](a0L[bH(0x2e1)][bH(0x2f7)]('\x20\x20'+aj)),console['log'](a0L[bH(0x2e1)][bH(0x2f7)](bH(0x218))),console[bH(0xa5)](),af||ad?(console[bH(0xa5)](a0L[bH(0xd1)](bH(0x29f))+a0L[bH(0xb0)](ah)),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x1b6))),console[bH(0xa5)](),console[bH(0xa5)](a0L['bold'][bH(0xd1)]('\x20\x20Step-by-step:')),console[bH(0xa5)](),console[bH(0xa5)](a0L['white']('\x20\x20\x20\x201.\x20Type\x20')+a0L['bold']['cyan'](bH(0x1f2))+a0L[bH(0xd1)](bH(0x10a))),console['log'](),console[bH(0xa5)](a0L[bH(0xd1)]('\x20\x20\x20\x202.\x20In\x20your\x20shell,\x20run:')),console[bH(0xa5)](),console[bH(0xa5)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x2e1)][bH(0xb0)]('sudo\x20apt\x20update')),console[bH(0xa5)](bH(0x127)+a0L[bH(0x2e1)]['cyan'](bH(0x322))),console[bH(0xa5)](),console[bH(0xa5)](a0L[bH(0xd1)](bH(0xda))),console[bH(0xa5)](),console[bH(0xa5)](bH(0x127)+a0L['bold'][bH(0xb0)](bH(0xc3))),console['log'](bH(0x127)+a0L['gray']('icoa>')+'\x20'+a0L[bH(0x2e1)][bH(0xb0)](bH(0x398)))):ag?(console[bH(0xa5)](a0L['white'](bH(0x29f))+a0L[bH(0xb0)](bH(0x103))),console['log'](),console[bH(0xa5)](a0L['bold'][bH(0xd1)]('\x20\x20Step-by-step:')),console[bH(0xa5)](),console[bH(0xa5)](a0L[bH(0xd1)](bH(0x24b))+a0L[bH(0x2e1)][bH(0xb0)](bH(0x1f2))+a0L['white'](bH(0x24e))),console[bH(0xa5)](),ai?(console['log'](a0L[bH(0xd1)](bH(0x187))),console[bH(0xa5)](),console[bH(0xa5)](bH(0x127)+a0L[bH(0x2e1)][bH(0xb0)]('brew\x20install\x20python@3.12')),console[bH(0xa5)](bH(0x127)+a0L[bH(0x2e1)]['cyan']('brew\x20link\x20--overwrite\x20python@3.12'))):(console[bH(0xa5)](a0L[bH(0xd1)](bH(0x1b7))+a0L[bH(0x2e1)][bH(0x2f7)](bH(0x226))+a0L[bH(0xd1)]('):')),console[bH(0xa5)](),console[bH(0xa5)](bH(0x127)+a0L[bH(0x2e1)][bH(0xb0)](bH(0x2bc))),console[bH(0xa5)](),console['log'](a0L[bH(0xd1)](bH(0x3a4))),console['log'](),console['log'](bH(0x127)+a0L['bold']['cyan']('brew\x20install\x20python@3.12'))),console[bH(0xa5)](),console['log'](a0L[bH(0xd1)](bH(0x376))),console[bH(0xa5)](),console['log'](bH(0x127)+a0L['bold'][bH(0xb0)](bH(0xc3))),console[bH(0xa5)](bH(0x127)+a0L[bH(0x39f)](bH(0xb8))+'\x20'+a0L[bH(0x2e1)][bH(0xb0)](bH(0x398)))):ae?(console['log'](a0L[bH(0xd1)](bH(0x29f))+a0L['cyan']('Windows\x20native\x20(PowerShell\x20/\x20cmd)')),console[bH(0xa5)](),console[bH(0xa5)](a0L[bH(0x2e1)][bH(0x2f7)](bH(0x1a6))),console['log'](a0L[bH(0x39f)]('\x20\x20Native\x20Windows\x20can\x20run\x20Paper\x20C\x20(MCQ-only)\x20and\x20AI\x20chat,\x20but')),console['log'](a0L[bH(0x39f)](bH(0x95))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x29c))),console[bH(0xa5)](),console[bH(0xa5)](a0L[bH(0x2e1)][bH(0xd1)](bH(0x352))),console[bH(0xa5)](),console['log'](a0L[bH(0xd1)](bH(0x24b))+a0L[bH(0x2e1)][bH(0xb0)](bH(0x1f2))+a0L[bH(0xd1)]('\x20to\x20leave\x20icoa')),console[bH(0xa5)](a0L[bH(0xd1)](bH(0x2a5))),console[bH(0xa5)](),console[bH(0xa5)](bH(0x127)+a0L['bold']['cyan'](bH(0x183))),console[bH(0xa5)](),console['log'](a0L['gray'](bH(0xf5))),console[bH(0xa5)](a0L[bH(0xd1)]('\x20\x20\x20\x203.\x20Inside\x20Ubuntu,\x20install\x20Node.js\x2022\x20+\x20Python\x20tools\x20+\x20icoa:')),console[bH(0xa5)](),console[bH(0xa5)](bH(0x127)+a0L[bH(0x2e1)][bH(0xb0)](bH(0x164))),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x2e1)]['cyan']('sudo\x20apt\x20install\x20-y\x20nodejs\x20python3-pip\x20python3-venv')),console['log'](bH(0x127)+a0L[bH(0x2e1)][bH(0xb0)](bH(0x2e6))),console[bH(0xa5)](bH(0x127)+a0L[bH(0x2e1)][bH(0xb0)](bH(0xc3))),console[bH(0xa5)](),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x36d))),console['log'](),console[bH(0xa5)](a0L['white'](bH(0x24b))+a0L[bH(0x2e1)]['cyan'](bH(0x1f2))+a0L['white']('\x20to\x20leave\x20icoa')),console[bH(0xa5)](a0L[bH(0xd1)](bH(0x348))),console[bH(0xa5)](),console[bH(0xa5)]('\x20\x20\x20\x20\x20\x20\x20'+a0L['bold'][bH(0xb0)](bH(0x39d))),console[bH(0xa5)](),console[bH(0xa5)](a0L['gray'](bH(0x78))),console['log'](a0L['gray'](bH(0x20a))),console['log'](a0L[bH(0xd1)](bH(0x168))),console[bH(0xa5)](),console[bH(0xa5)](bH(0x127)+a0L['bold'][bH(0xb0)](bH(0xc3))),console[bH(0xa5)](bH(0x127)+a0L[bH(0x39f)](bH(0xb8))+'\x20'+a0L[bH(0x2e1)][bH(0xb0)]('exam\x20setup'))):(console[bH(0xa5)](a0L[bH(0xd1)](bH(0x235))+a0L['cyan'](process['platform'])+a0L[bH(0xd1)](')')),console['log'](),console['log'](a0L[bH(0x39f)](bH(0x14e))),console[bH(0xa5)](bH(0x127)+a0L['bold']['cyan'](bH(0xc3))),console[bH(0xa5)](bH(0x127)+a0L[bH(0x39f)](bH(0xb8))+'\x20'+a0L[bH(0x2e1)][bH(0xb0)](bH(0x398)))),console[bH(0xa5)](),console[bH(0xa5)](a0L['gray'](bH(0x396))),void console[bH(0xa5)]();}}const W={};W[bH(0x12c)]='bs4',W[bH(0x379)]=bH(0x184),W['z3-solver']='z3',W[bH(0x338)]=bH(0x360),W[bH(0x124)]=bH(0xbc),W['ROPgadget']=bH(0x258);const X=['pwntools',bH(0x2c5),bH(0x315),bH(0x12c),bH(0x2e9),bH(0x338),bH(0x318),bH(0x1f7),'z3-solver',bH(0x379),'ROPgadget',bH(0x16d),bH(0xa9)],Y=W;console['log'](),console[bH(0xa5)](a0L[bH(0xd1)](bH(0x2ce)+X['length']+'\x20packages...')),console[bH(0xa5)]();let Z='';try{const ap={};ap[bH(0x2fc)]=bH(0x314),ap['timeout']=0x2710,a0an(Q+bH(0x30b),ap);}catch(aq){const ar=String(aq?.[bH(0x374)]||aq?.[bH(0x283)]||aq?.[bH(0x299)]||'');/externally-managed-environment|break-system-packages/i[bH(0x355)](ar)&&(Z=bH(0x241),console[bH(0xa5)](a0L[bH(0x2f7)](bH(0x350))),console['log']());}const a0=V[bH(0x28c)]('.')[bH(0xc6)](Number);-0x2135+0x411+0x1d27===a0[-0x853+0x19f9+-0x11a6]&&a0[-0x8f3+-0x11*0x76+0x10ca]>=-0x22de+0x167b+-0xc7*-0x10&&(console[bH(0xa5)](a0L[bH(0x2f7)](bH(0x209)+V+bH(0x21b))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x2d9))),console[bH(0xa5)](a0L[bH(0x39f)]('\x20\x20\x20\x20Python\x203.12\x20is\x20recommended.\x20Install:')),'linux'===process[bH(0xb3)]&&(console[bH(0xa5)](a0L['green'](bH(0x37e))),console['log'](a0L[bH(0x206)](bH(0x249)))),console[bH(0xa5)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+bH(0x1e1)+as+'\x22\x20'+Z+'\x20--quiet\x202>&1',{'encoding':'utf-8','timeout':0x2bf20,'stdio':'pipe'}),a0an(Q+bH(0x200)+(Y[as]||as)+'\x22',{'stdio':bH(0x1cd),'timeout':0x2710});let at='';try{const au=a0an(Q+bH(0x145)+as+bH(0x13b),{'encoding':bH(0x314),'timeout':0x1388})[bH(0x125)](/^Version:\s*(.+)$/m);au&&(at=au[-0x11cb+0x611*-0x1+0x95*0x29]['trim']());}catch{}console['log'](a0L[bH(0x206)]('\x20\x20✓\x20'+as)+(at?a0L[bH(0x39f)]('\x20('+at+')'):'')),a1[bH(0xb1)](at?as+'=='+at:as);}catch(av){const aw=String(av?.['stdout']||av?.[bH(0x283)]||av?.[bH(0x299)]||'')[bH(0x108)](-(-0x27*0x67+0x19b0+-0x86f)),ax=aw[bH(0x28c)]('\x0a')[bH(0x262)](ay=>ay[bH(0x2b4)]())[bH(0x108)](-(-0xbff+-0x1d34+-0xb*-0x3bf))[bH(0x121)]('\x20|\x20')['slice'](-0x138b+-0x6cf+0x1a5a,0x36d*-0x1+0x9*-0x165+0x1072);console['log'](a0L[bH(0x2a0)](bH(0x146)+as)+a0L[bH(0x39f)]('\x20\x20'+ax)),a2[bH(0xb1)]({'pkg':as,'error':ax}),a3||(a3=aw);}0x1dab+0x15*0x185+-0x3d94===a1['length']&&a3&&(console['log'](),console[bH(0xa5)](a0L[bH(0x2f7)]('\x20\x20First\x20error\x20detail\x20(for\x20debugging):')),console[bH(0xa5)](a0L[bH(0x39f)]('\x20\x20'+a3[bH(0x28c)]('\x0a')[bH(0x108)](-(0x6ab+0x2*-0x1004+-0x1963*-0x1))[bH(0x121)](bH(0x316))))),a0al({'completedAt':new Date()['toISOString'](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2[bH(0xc6)](ay=>ay[bH(0x175)])}),console['log'](),0x11ca+-0x231f+-0x105*-0x11===a2[bH(0x19e)]?a0a9(bH(0x173)+X['length']+bH(0x2b8)):0x35*0xd+-0x13*-0x20a+-0x296f===a1[bH(0x19e)]?(a0aa(bH(0x15f)+X['length']+'\x20packages\x20installed.'),console[bH(0xa5)](),console[bH(0xa5)](a0L['yellow'](bH(0xab))),-0x1*-0x629+-0x3fd*-0x1+0x5*-0x207===a0[-0x3*-0x721+0x29*-0x2f+-0xddc]&&a0[-0x423*0x7+-0xdbb*0x1+0x2ab1*0x1]>=0x7e5*-0x1+0x8*0x73+0x45a?(console[bH(0xa5)](a0L[bH(0x39f)](bH(0x35c))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x84)))):(console[bH(0xa5)](a0L[bH(0x39f)]('\x20\x20\x20\x20•\x20Check\x20you\x20have\x20internet\x20(pip.pypa.io\x20must\x20be\x20reachable)')),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x25e))+a0L[bH(0xb0)](Q+bH(0x1ef))+a0L[bH(0x39f)](bH(0x331))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x308)))),console['log'](),console[bH(0xa5)](a0L[bH(0xd1)](bH(0x20c))+a0L[bH(0x2e1)][bH(0xb0)](bH(0x398)))):a0ab(a1[bH(0x19e)]+'/'+X[bH(0x19e)]+bH(0x269)+a2[bH(0x19e)]+bH(0x391)+a2[bH(0xc6)](ay=>ay[bH(0x175)])[bH(0x121)](',\x20')),console['log'](),console[bH(0xa5)](a0L[bH(0xb0)](bH(0x23d))),console['log'](a0L[bH(0x2e1)][bH(0xd1)](bH(0xe8))),console['log'](a0L['cyan']('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bH(0xa5)](),console[bH(0xa5)](a0L[bH(0x2e1)][bH(0x2f7)](bH(0x88))+a0L[bH(0x39f)](bH(0xcc))),console[bH(0xa5)](a0L[bH(0xd1)](bH(0x329))),console[bH(0xa5)](a0L[bH(0x206)](bH(0x1ab))),console[bH(0xa5)](a0L['gray']('\x20\x20\x20\x20→\x20b\x27Hello\x27')),console[bH(0xa5)](),console[bH(0xa5)](a0L[bH(0x2e1)][bH(0x2f7)](bH(0x2f1))+a0L[bH(0x39f)]('\x20(explore\x20&\x20experiment)')),console[bH(0xa5)](a0L[bH(0xd1)](bH(0x2cf))),console[bH(0xa5)](a0L[bH(0x206)]('\x20\x20\x20\x20!python3')),console[bH(0xa5)](a0L['gray'](bH(0x358))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0xe4))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x2c7))),console[bH(0xa5)](a0L['gray'](bH(0x265))),console[bH(0xa5)](a0L['gray'](bH(0x310))),console['log'](),console[bH(0xa5)](a0L['bold'][bH(0x2f7)](bH(0x30e))+a0L[bH(0x39f)](bH(0x11c))),console['log'](a0L[bH(0xd1)]('\x20\x20Write\x20a\x20.py\x20file,\x20then\x20run\x20it:')),console['log'](a0L[bH(0x206)](bH(0x1aa))),console['log'](a0L['gray'](bH(0x1b4))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x246))),console[bH(0xa5)](a0L[bH(0x39f)]('\x20\x20\x20\x20key\x20=\x20xor(ct[:5],\x20b\x22ICOA{\x22)')),console[bH(0xa5)](a0L['gray'](bH(0x205))),console[bH(0xa5)](a0L[bH(0x206)](bH(0xa4))),console[bH(0xa5)](a0L[bH(0x206)]('\x20\x20\x20\x20!python3\x20solve.py')),console[bH(0xa5)](),console[bH(0xa5)](a0L[bH(0x2e1)][bH(0x2f7)](bH(0x23f))),console['log'](a0L['white']('\x20\x20During\x20the\x20exam,\x20type\x20')+a0L[bH(0x2e1)][bH(0xb0)](bH(0x22a))+a0L[bH(0xd1)]('\x20to\x20ask\x20AI\x20for\x20help:')),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x152))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x366))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x286))),console[bH(0xa5)](a0L['cyan']('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](),console[bH(0xa5)](a0L[bH(0xd1)](bH(0x382))+a0L['bold']['cyan'](bH(0x1dd))),console[bH(0xa5)](a0L[bH(0x39f)](bH(0x178))+a0L[bH(0x2e1)][bH(0xb0)](bH(0xd0))+a0L['gray'](bH(0x2f8))),console[bH(0xa5)]();}),B[bb(0x13f)](()=>{const bJ=bb;a0a8('exam');const F=a0Y();if(F){a0ae(bJ(0x317)+F[bJ(0x38e)][bJ(0xd7)]),O();const J=Object['keys'](F['answers'])['length'];return a0af(bJ(0x319),J+'/'+F[bJ(0x38e)]['questionCount']+bJ(0x3a1)),console[bJ(0xa5)](),void console[bJ(0xa5)](a0L[bJ(0x39f)](bJ(0x1cc)));}const G=a0a3(),H=a0ak();console[bJ(0xa5)](),a0ae(bJ(0x351)),console[bJ(0xa5)](),0x125b*-0x1+0x1748*0x1+0xd*-0x61===G[bJ(0x27d)]?(console[bJ(0xa5)](a0L[bJ(0x2f7)]('\x20\x20○\x20')+a0L[bJ(0x2f7)](bJ(0x27b))),console['log'](a0L[bJ(0x39f)](bJ(0x337))+a0L['bold'][bJ(0xb0)](bJ(0x301)))):(console[bJ(0xa5)](a0L[bJ(0x206)](bJ(0x1d0))+a0L[bJ(0x206)](bJ(0x1c2)+G[bJ(0x27d)]+bJ(0x380)+(-0xe*0x1f1+0x1*0x3e2+0x174d*0x1!==G[bJ(0x27d)]?'s':'')+')')),H?(console[bJ(0xa5)](a0L[bJ(0x206)](bJ(0x1d0))+a0L[bJ(0x206)](bJ(0x247))),console['log'](a0L[bJ(0x2f7)](bJ(0x312))+a0L[bJ(0x2f7)](bJ(0x135))),console['log'](a0L[bJ(0x39f)](bJ(0x337))+a0L['bold'][bJ(0xb0)](bJ(0x1dd)))):(console[bJ(0xa5)](a0L[bJ(0x2f7)](bJ(0x312))+a0L[bJ(0x2f7)](bJ(0x1f4))),console[bJ(0xa5)](a0L[bJ(0x39f)](bJ(0x337))+a0L['bold'][bJ(0xb0)](bJ(0x398))))),console[bJ(0xa5)]();});}
1
+ (function(z,B){const aX=a0B,F=z();while(!![]){try{const G=-parseInt(aX(0x2b7))/(-0x74c+0x160a+0x1*-0xebd)*(parseInt(aX(0x34a))/(0x1*-0x559+-0xe9*-0x7+0x41*-0x4))+parseInt(aX(0x14d))/(-0xd1*0x13+-0x108e+-0x1*-0x2014)+-parseInt(aX(0x3f4))/(0x1955+-0x14cb+-0x486)*(-parseInt(aX(0x3e2))/(-0x141a+0x23c7+0x1*-0xfa8))+parseInt(aX(0x2df))/(0x2176+0x23a*0x2+-0x25e4)+-parseInt(aX(0x42b))/(-0x1*-0x1dab+-0x17c0+-0x5e4)*(-parseInt(aX(0x248))/(-0xee7+0x259d+-0xb57*0x2))+-parseInt(aX(0x1c9))/(0x1d*0x151+-0x1c58+-0x9cc)+-parseInt(aX(0x2dd))/(0x31*0x3f+-0x95*-0x25+-0x218e);if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,-0x17d8f+-0x1*0x3fdc9+0xbdcb9));function a0B(a,b){a=a-(0x2*0x158+0x1a*0x43+-0xc2*0xb);const c=a0z();let d=c[a];if(a0B['eGpndN']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=-0x4*0xea+-0x45*-0x3d+-0x443*0x3,o,p,q=-0x1933+-0xa6d*0x2+0x2e0d;p=i['charAt'](q++);~p&&(o=n%(-0x16f1+-0x25c1+0x3cb6)?o*(0x1*0x311+-0x88*0x5+-0x29)+p:p,n++%(0x1be8+0x4ab*0x5+-0x333b))?l+=String['fromCharCode'](0x11ab+-0x1*-0x24c2+0x7a2*-0x7&o>>(-(0x2003+0xa12+-0x2a13)*n&0x14e1*0x1+0xabc+0x1*-0x1f97)):-0x52*0x6b+-0x70c+0x2952){p=j['indexOf'](p);}for(let r=0x1*0xa21+-0x257c+0x1*0x1b5b,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](0x23a8+0xdc8+0xa*-0x4f0))['slice'](-(-0x1abe+-0x1*0x12d1+0x2d91));}return decodeURIComponent(m);};a0B['hIqwGC']=e,a0B['ZglpAz']={},a0B['eGpndN']=!![];}const f=c[-0x2*0xdb+-0x20f9+0x22af],g=a+f,h=a0B['ZglpAz'][g];return!h?(d=a0B['hIqwGC'](d),a0B['ZglpAz'][g]=d):d=h,d;}import a0L from'chalk';import{confirm as a0Q}from'@inquirer/prompts';import{ExamClient as a0V}from'../lib/exam-client.js';function a0z(){const bK=['ihrOzsbJB21WzxrPDgLVBI4','icbzB3uGD2LSBcbZDwjTAxqG','DxrMltG','u3rHCNrPBMCGDgLTzxiUlI4','icbjBIb0AguGBwvHBNrPBwuSihrYEtOG','icaGiokaOIbuCNK6ia','icaGica','vw5SB2nRigHPzgrLBIbIB251CYbOzwXWihvZzxm','D2LUz2v0igLUC3rHBgWGls1PzcbqExrOB24UuhL0Ag9UlJmUmtiGlwu','icbjq09big9MzMLJAwfSBhKGC3vWCg9YDhmGv1nmmIbVBIbxAw5KB3DZlG','icbVzIa','AgfZ','zgvTBW','icbsDwXLCZO','Dgv4Da','icbdyw5JzwXSzwqU','zxHHBsbZzxr1Ca','zNjVBq','ixb5DgHVBJmGC29SDMuUChK','ChL0Ag9UmW','twfSyxLZAwe','zxHHBvDHExnszwzqExrOB24','icbqCMv2Aw91CYbZzxr1CcbOywqGB25SEsa','r28GDg8GBMv4DcbXDwvZDgLVBG','icboBYbHy3rPDMuGzxHHBsbZzxnZAw9UihrVihjLC2v0lG','yNjLDYbSAw5Ric0TB3zLCNDYAxrLihb5DgHVBKaZlJeY','ywK0y3rMrgvZyW','icbezw1VoIa','y29TCgXLDgvKqxq','D2LUmZi','tK9uifbbu1nfra','ihDHCYbUB3qGzMXHz2DLzc4','icbqCMvZCYbfBNrLCIb0BYbIzwDPBI4UlIa','vMLLDYbHBgWGCgfYDgLJAxbHDgLUzYbJB3vUDhjPzxm','ihrVihnLzsb5B3vYihjLC3vSDhmH','ihbHy2THz2vZlIbszxrYEwLUzY4UlG','icaGifb5DgHVBIaZlJeZigLZihrVBYbUzxCG4Ocuig1VC3qGq1rgigXPyNjHCMLLCYbSywnRihDOzwvSCY4','icaGicbtB2X2zsa','yw5ZD2vY','CgXHDgzVCM0','tMLJzsbVBMuU','D3jVBMC','icaGicdcTYbtzxbHCMf0zsbIDwrNzxq6ia','BwLU','lI4VBgLIl2v4yw0TC3rHDguUANm','icaOChjLDMLVDxmGzxHHBsbZzxnZAw9Uigv4CgLYzwqG4OcuignSzwfYzwqGC3rHDguSihn0yxj0Aw5NigzYzxnOihDPDgGGEw91CIbUzxCGDg9Rzw4P','CgvYuq','x3n1yM1PDenVBMzPCM1Lza','mJGYmgfdreTOra','icaG8j+AGcaGu2vJDgLVBIaYoIbbstrdveyG4OcuiefjigLZihLVDxiGDgvHBw1HDgu','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','icbqyxbLCIbbic8GqIbWCMfJDgLJywWGCxvLC3rPB25Zig5LzwqGvw5PEcb0B29SAw5NihrOyxqGCNvUCW','zxHPDa','icdIHPiG','icbTywnpuYaOsg9TzwjYzxCSihjLy29TBwvUzgvKktO','uMv2Awv3oIa','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','ic1TihbPCcbZAg93ici','u2v0DxaGzMfPBgvKiokaLcaWig9Mia','iIaYpI9KzxyVBNvSBa','tMf0Aw9UywWGC2vSzwn0Aw9Uigv4yw0','l3n1yM1PDa','yw5ZD2vYx3n1yM1PDhrLza','icbgzwrVCMeGlYbssevmoG','y2HHBMDLzcbMCM9Tia','icaGiefjigj1zgDLDdOGmJvlihrVA2vUCYbMB3iGquK0q1rgicSGmJvligzVCIbdvey0quK','ndi4mhjsv1vdAG','icaGifLVDsbJyw4GBM93ihvZztOG','icdIL4SG','ywLvC2fNzq','icbuAw1LoIaGica','icdINjmGuhL0Ag9Uia','icaGicaGicbLBNrLCIbbstrdveyGy2HHDcbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','ueLm','icaGvgHLigzPBMfSihnLy3rPB24GzMXPChmGDgHLihnJCMLWDdOGAw5ZDgvHzcbVzG','icaGicbZDgLSBcbHy3rPDMuGyw5Kig5VDcbZDwjTAxr0zwqSihjLlwvUDgvYAw5NihrOzsbZyw1LihrVA2vUihjLC3vTzxmGAxqU','icaG4PElicbtDwjTAxnZAw9UigfJy2vWDgvK','ChL0Ag9UvMvYC2LVBG','icaGicaGicHpCIbKB3DUBg9HzcbMCM9Tihb5DgHVBI5VCMCGyw5KienirunligjVDgGGiKfKzcbqExrOB24GDg8','rgvTBYbszxrYEsdIGjqGv3jVBMCGuxvLC3rPB25Zie9UBhK','8j+pM++4JW','C3rHDhvZ','zxHHBsbZDgfYDca','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','ihnRAxbWzwq','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','icbdDxjYzw50BhKGzMXHz2DLzdOG','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','y3vYBcaTzNnttcbODhrWCZOVl2rLyI5UB2rLC291CMnLlMnVBs9Zzxr1Cf8YmI54ihWGC3vKBYaTrsbIyxnOic0','D3jPDgu','icbuExbLia','CxvLC3rPB25dB3vUDa','ihLVDsbNB3qGD3jVBMCU','zgvTBY1MCMvL','uxvLC3rPB24G','s2vLCcbPDcbPBIbTAw5KigzVCIbYzxzPzxCU','u2H1zMzSAw5Nig9WDgLVBNmUlI4','vhLWzsaIzxHHBsbZDwjTAxqIihrVigzPBMfSAxnLig5VDYWGB3iGDgHLihnLCNzLCIb3AwXSigf1Dg8TzMLUywXPC2uGD2L0AgLUidmWig1PBNv0zxmU','Aw50zxjHy3rPB25Z','Axnoyu4','r2vYBwfUEq','igfUC3DLCMvKkq','icbfEgfToIaGica','C3vIC3rYAw5N','Dg9tDhjPBMC','icbxAgf0ig5LEhq','AgvSCfvZzwrvCa','icdIMiuG','C2nHChK','Dg9Vx29Sza','CMvZzxq','icaGicaGicaGkgn0zJrHAsK','t3rOzxi','Bwf0y2G','twfJyxu','y2f0zwDVCNK','uMvJB21Tzw5Kzwq6ignVBxbSzxrLigrLBw8GzMLYC3q','icbSyw5NigzYimk3igXHBMCGyxiGWRCGBgfUzYbWDcdcTYaXnsbSyw5NDwfNzxmGC3vWCg9YDgvK','zxHHBsbZDwjTAxqGy29UzMLYBq','y3j5ChrVz3jHCgH5','icaGid4+pIbMCM9TienYExb0BY5dAxbOzxiGAw1WB3j0ieffuW','ndi3mfzLrMritq','icdIMQaGuhL0Ag9Uia','AxnsyxC','BMfTzq','BMv4DcaVihbYzxy','icaOzgLMzMvYzw50igzYB20GDgHLig9Uzsb5B3uGDhLWzwqP','icaGicbuB2TLBJOG','icbSyw5NigvZicHfC3bHW7fVBcKGWRCGBgfUzYb6AcaO5lIT5PAhksdcTYbSyw5NigTVicJTLzZQTA3SLRqPimk3igXHBMCGAMeGkoAxPEACRoIQNIK','icaGiezHAwXLzdOG','txLHBM1HCG','icaGicaGigvUDgvYifzmqsbHDhrHy2SGBw9KzsbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','r0vu','y2f0y2G','l2HLBha','rMfPBgvKihrVihn0yxj0igv4yw0','ixb5DgHVBJmGlI4U','B3b0Aw9UCW','icaGzxHHBsbJzw50zxiUiezPBMfSihnJB3jPBMCGyw5KihnLBgvJDgLVBIbHCMuGzgvJAwrLzcbIEq','ugfZCW','iefjihn5C3rLBxmU','ChjLDG','yw5ZD2vYzwq','rxHHBxmG4Ocuia','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbssaYmdi2','rMfPBgvKihrVigXVywqGCMvZDwX0','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','icdWN5kHifrYEsb0ExbPBMCG','zgvTBY1YzxrYEq','qNjHEMLS','EwvSBg93','z2v0rxHHBxm','icaGicfWExrOB24Z','rMXHz2DLzcbMB3iGCMv2Awv3','icaGiokaOIbdAgvJAYb5B3uGAgf2zsbPBNrLCM5LDcaOCgLWlNb5CgeUAw8GBxvZDcbIzsbYzwfJAgfIBguP','C3rKAw8','vMLLDYbXDwvZDgLVBIaOB3iGywXSihf1zxn0Aw9UCYK','q3rYBcTd','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','icaGign0id0GyNL0zxmUzNjVBwHLEcGImgeYyJbLmwmUlI4Ikq','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMv0CNK6','zxHWBgfUyxrPB24','icbnzxrOB2qGmtOGt25LlwXPBMvY','vMLLDYbLEgfTihjLC3vSDa','zxHHBvDHExntyxzLzfrV','icdIMQaGifjLC2v0ihDPBgWGywjHBMrVBIb5B3vYign1CNjLBNqGzxHHBsbZzxnZAw9Uig9UihrOAxmGzgv2AwnLlG','C3rVCa','CMvK','q2HPBMe','zwDNnq','CMvM','igLZigeGChjHy3rPy2fSihf1zxn0Aw9UiokaLcbHBNn3zxiGD2L0AcbHigzSywCSig5VDcbHigXLDhrLCI4','mtqZnty3ngXgDwjbsq','sunpqsboyxrPB25HBcbtzwXLy3rPB24GrxHHBq','zgLT','igzVDw5KlcbIDxqGmY4XmcSGCMvXDwLYzwqGzM9YihrOzsbLEgfTlG','igLUC3rHBgXLza','D2HPy2G','imk3ia','icbzB3vYihj1BG','icaGigfPngn0zG','y3rMngfP','icboyxrPDMuGv2LUzg93CYbJyw4GCNvUifbHCgvYiemGke1dus1VBMX5ksbHBMqGquKGy2HHDcWGyNv0','icaGicHYzwXHDgL2zsb0BYbVDgHLCIbJyxrLz29YAwvZiokaLcbUDw1LCMLJihnJB3jLCYbNBYb0BYb5B3vYigv4yw0Gy2vUDgvYkq','icdWN5Miie1HEcaYigHLBhbZihbLCIbXDwvZDgLVBIdIGjqGEw91igfSCMvHzhKGAgf2zsbHiduWlZuWiq','zxHHBsbYzxzPzxC','ywn0Aw9U','zxHHBsbHBNn3zxiG','uMvZDwX0igXVywrLza','u3vIBwL0igv4yw0GzM9YigDYywrPBMCGkhvZztOGiMv4yw0GC3vIBwL0ignVBMzPCM0IigzVCIbYzwfSigv4yw1Zkq','ihjHBMrVBsbXDwvZDgLVBNmGzNjVBsbHihbVB2WGB2yG','ihjLz2LVBNmP','AxnuvfK','BgLZDcbBy291BNrYEv0','qw5ZD2vYzwq','Aw5ZDgfSBgvKugfJA2fNzxm','l2fUC3DLCG','vMfSAwrHDgLUzYb0B2TLBI4UlG','icbuAxa6ihn3AxrJAcb0BYb5B3vYigXHBMD1ywDLihDPDgG6igXHBMCG','icbizwXWihvZzwq6ia','q2HLy2SGEw91CIb0B2TLBIbVCIbJB250ywn0ihLVDxiGChjVy3rVCI4','zgfYD2LU','icaGWRCGmtuSmdaWkYbJB25JDxjYzw50ihbHCNrPy2LWyw50CW','ywK0y3rM','uMv2Awv3igfSBcbHBNn3zxjZigjLzM9YzsbZDwjTAxr0Aw5N','tM8GDgLTzsbSAw1PDa','BNvTyMvY','icbZDwjTAxqGzMXHzYbKAxjLy3rSEq','ifSGxsaG','yNjLDW','BwfNzw50yq','zw1VAMK','icaGicfJyxqGpdWGj0vprICGpIbZB2X2zs5WEq','icaGig1HCMS','lcbUB3qGEw91CIb0zwfTBwf0zq','icdIMiyGuq','t24GDgHLig1VBMv5lG','zgvTBY1LBNrLCG','u3bLy2LMEsbLEgfTieLeoIbLEgfTihjLC3vSDca8Awq+','C3rHCNqGpgLKpG','4OcuihLVDsDYzsaXlZqGDgHYB3vNAcb0AguGzxHHBq','u3rYB25NzxiGAgvYztOGia','zMfPBgvKugfJA2fNzxm','icboBYb3CM9UzYbXDwvZDgLVBNmGDg8GCMv0CNKUifj1BIa','AwnVys1JBgK','CMvNzxG','wYbDica','icaGidiUifjLAw5ZDgfSBcbqExrOB24GD2L0AcbWAxaGkeHVBwvICMv3igrLDgvJDgvKiokCKYK6','BgvUz3rO','icbtDgfYDgLUzYbLEgfTlI4U','icbuB2TLBJOGica','wYbD','ihWG','zxHHBsbZDwjTAxq','zxHHBsbXia','icbxCMfWihvWigfUzcbZDwjTAxq6ia','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','icbcEsbJyxrLz29YEq','u2f1zgKGqxjHyMLH','yM9Sza','tgLZDcbHDMfPBgfIBguGzxHHBxmGkg9WDgLVBMfSoIaYlwXLDhrLCIbJB3vUDhj5ignVzguP','rw50zxiGzxHHBsb0B2TLBIb0BYbIzwDPBG','icaGWRCGmtuGBgfUz3vHz2vZlcbYzwfSlxrPBwuGquKGDhjHBNnSyxrPB24','icbfEhbLy3rLzdOGms0Yig1PBNv0zxmGWRCGFJe1me1cigrPC2S','CgLSBg93','CdmW','ihrVignVBMzPCM0Sig9YigfUExrOAw5NigvSC2uGDg8Gy2fUy2vSoG','zgf0yq','icaGifb5DgHVBIaZlJeYigLZihjLy29TBwvUzgvKlIbjBNn0ywXSoG','icbkDw1WihrVigeGzMXHz2DLzcbXDwvZDgLVBJOG','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','icaGicbjBNnPzguGy2HHDdOGicaG','uhjVz3jLC3m','C2v0uMf3tw9Kzq','vgLTzw91DevYCM9Y','icdIMiuGtMv3ihbLCNnVBMfSigjLC3qH','vw5PDgvKieTPBMDKB20','BgLUDxG','icdcTYbszwzLCMvUy2uGz3vPzgvZigzVCIaZocb0B29SCZOG','icaGicaGC3vKBYbHChqGAw5ZDgfSBcbWExrOB24ZlJeYihb5DgHVBJmUmtiTDMvUDG','ugvYy2vUDgfNzq','C3rYAwTLDgHYB3vNAa','icaGigjHy2S','icaOugfWzxiGqYb0B2TLBNmGC2TPCcb0AgLZigDHDguG4OcuifbHCgvYiemGAxmGtunrlw9UBhKP','icbbCMnOic8GtwfUAMfYBZO','uhjLCgfYAw5Nihf1zxn0Aw9UCY4UlG','icaGicjtAg93ig1LigHVDYb0BYb1C2uGC3rYDwn0lNvUCgfJAYi','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbsq','cIaG','ywK0y3rMu3vI','CMvXDwvZDhm','AgvSCa','icdIJ7eGifrPBwuGy2HLy2SGia','icaGutm54OctndaGkdiGCxvLC3rPB25Zimk3ide2ihb0CYbLywnOiokaLcbOAwDOzxn0ihzHBhvLisK','ieLdt0f7Ew91CL9MBgfNFq','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl21Hy29ZlW','C3vIBwL0rxHHBq','DxnLza','y2vPBa','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','icbqBgvHC2uGCMuTDhLWztOG','y3rMzfvYBa','4O+XifrPBwuGCMvTywLUAw5NoG','y29UzMLYBq','C3rKzxjY','BM93','icaGieLUC3rHBgWGuhL0Ag9UidmUmtiGyw5KihjLlxj1BIbLEgfTihnLDhvWlG','C2HVD25xyxjUAw5NCW','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIb5B3vYignVDw50CNKGEwv0lG','icdIMiuGtwfYA2vKigzVCIbYzxzPzxC','CMvZDwX0ifTPzf0','C2nVCMu','sgfJAYb0AguGquKNCYbNDwfYzhjHAwXZ','C3rHCNrfEgfT','CgTN','yMvHDxrPzNvSC291Cdq','mtqYmZmWnuLAELPTBW','icaGicbbssb0B2TLBNm6icaGicaG','ANnVBG','ueftu0ve','icdIHPmGifbYywn0AwnHBcbZzwn0Aw9UigjLz2LUCYbHDcbrmZeU','icbuCM91yMXLC2HVB3rPBMC6','AxnbCNjHEq','icbcB251CYbOzwXWigfSCMvHzhKGDw5SB2nRzwqU','Aw5JBhvKzxm','icaGiokrOIa','ihjLBwfPBMLUzYK','icaGid4+pIbWCMLUDcHJAxbOzxiUzgvJCNLWDcHKyxrHksK','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','AhrWuMv2Awv3','icdIMQaGiduGBwLUDxrLCYbYzw1HAw5PBMC','u3rHDhvZ','ic1JicjPBxbVCNqG','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ywXS','icaGww91CIbHBNn3zxjZigHHDMuGyMvLBIbYzwnVCMrLzcbHBMqGC2vUDcb0BYb5B3vYig5HDgLVBMfS','z3jHzgLUzW','icbezxrLy3rLzdOG','icaGiokaOIbzB3uGBwf5igv4AxqGyw5KihjLC3vTzsb3AxrOihrOzsbZyw1LihrVA2vU','x2vSAw1PBMf0zwq','icbtDwjTAxqGBM93ihDPDgG6ia','DgLTzw91Da','icdILRGG','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','AwnVyq','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','icbB','C3bSAwnL','icbbC3nPC3rHBMnLihvZzwq','icaGiokaOIbpBIblywXPl1vIDw50DsaYmIS6ig1Pz2H0ig5LzwqGChL0Ag9UmY4XmI1KzxyGkYbIDwLSzc1LC3nLBNrPywW','q291BgqGBM90igLUC3rHBgWGCgLWiokaLcbWAxaGAxmGBM90igLUC3rHBgXLzcbVBIb5B3vYihn5C3rLBs4','qMfUz2XHzgvZAa','zgvZy3jPChrPB24','zxHHBsbSAxn0ia','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','C19JDgy0ywK','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','icaGqNvKz2v0icHZAgfYzwqGywnYB3nZifeZmEkaKZm4kq','ic8G','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIa','v2LUzg93CYbUyxrPDMuGkfbVD2vYu2HLBgWGlYbJBwqP','icdcTYblzwvWihnOyxjWzw5PBMC6ia','CgfKu3rHCNq','C3rKAw4','icaGicaGia','icbozxH0ihn0zxa6ia','y2XVy2TpzMzZzxrnCW','icaGideUifr5CguG','icdIJ7aGmtaGBwLUDxrLCYbYzw1HAw5PBMC','lI4VBgLIl3bSyxrMB3jTlMPZ','Dg9Rzw4GpgnVzgu+','zxHHBsa8Dg9Rzw4+','ywrK','igf0DgvTChq','ChvZAa','icaGicbgCMvLignOyxq6icaGicaGyw55ig1LC3nHz2uG4OAsiefjihrLyw1TyxrL','ig9YigXLyxzLihDPDgGG','icaGid4+pIbJAxbOzxiGpsbbrvmUBMv3kgTLEsWGquvtlK1prevFq0jdlcbPDIK','igrLDgvJDgvK','icaGicdcTYbbssbPCYb5B3vYia','BNvTChK','vxPIzwTPC3rHBG','zxHHBq','igjVBNvZigHLBhaGDw5SB2nRzwqHicG','icaGicbLEgfTigXPC3qGueu','uhL0Ag9Uia','icaGicbLEgfTigXPC3qGq04','C29YDa','Aw5FChjVz3jLC3m','icdIMQaGieXfu1mGveHbtIaXie1jtLvursbmruzu','icaGWRCGmteWienurIb0B29SCYbWCMuTy29UzMLNDxjLza','vgHHAwXHBMq','zwDNnW','icbuBYbNBYbIywnRoIaG','icaGigXHBMC','rw52AxjVBM1LBNqGywXYzwfKEsbZzxqGDxa','x2HLBhbvC2vK','ue9tva','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','rw52AxjVBM1LBNqGCMvHzhKHiefSBca','C3vIBwL0ieLdt0f7lI4UFq','Ew91CIbmAw51EcbKAxn0CM8','vgvHBsb1Ccb3AxrOiefjihrVihnVBhzLienurNm','icdIL48G','C2v0Dxa','DgvZDa','icaGiokaOIbbBgWGAw50zxjHy3rPB25ZigfYzsbYzwnVCMrLzcbMB3iGyxvKAxq','zMfPBa','icdIMQaGiezjtKfmifnvqK1ju1njt04G4OcuihbSzwfZzsbJB25MAxjT','CdeW','zxHHBsbTB3jLlwHLBha','icaGvgHLC2uGyxjLihrOzsbOyxjKzxn0ihf1zxn0Aw9UCY4Gv29YDgGGmJeLig9MihrVDgfSihnJB3jLlG','yMfJAW','icaGihn1zg8GywrKlwfWDc1YzxbVC2L0B3j5ihbWytPKzwfKC25HA2vZl3bWysaTEq','AhrWtgfUzW','icaGia','icaGiokrPca','rxHHBsbLEhbPCMvKigfUzcbJBgvHCMvKlG','zMLUzeLUzgv4','q29UBMvJDgLUzYb0BYbLEgfTihnLCNzLCI4UlG','zwXPBwLUyxrLzca','vgLTzsbLEhbPCMvKlG','icbozxCGBwvTyMvYpYbdB250ywn0oIbHy2nYzwrPDgf0Aw9UqgLJB2eYmdi2lMf1','icaGigHLBha','igfUC3DLCNmU','DgfYz2v0','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','Bg9N','zxHHBsb1BM1HCMSG','icbszwfKEt8GvxnLia','icaGigv4yw0Gyw5ZD2vYidXUpIbjq09bEY4UlN0','rxHHBsaI','zxHHBsbZDwjTAxqG','C19HAtrJDgy','4PQGicbfweLuigLJB2eGzMLYC3qG4Ocuihn1zg8Gy2fUBM90ihj1BIbPBNnPzguGDgHLihbYB21WDa','rMfPBgvKihrVigXVywqGzxHHBxm','Dw5TyxjRifTUxq','icbjBNn0ywXSAw5Nia','icaGicbfEgL0ignOyxq6icaGicaG','yxr0zw1WDhm','icbiB3CGDg8GDxnLifb5DgHVBIbPBIbjq09bienmsq','icaGicaGicaGia','ChDU','nty5nNrJCeDhvG','rMXHz2DLzdOGica','CMvWBgfJzq','lI4VBgLIl3bHCgvYlxvWz3jHzguUANm','icHLEhbSB3jLicyGzxHWzxjPBwvUDcK','EJmTC29SDMvY','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','zxHHBsbKzw1V','qw5ZD2vYzwq6ica','zxHHBu5HBwu','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','uNvZC2LH','BwfW','icaGig5LEhq','ig1PBNv0zxmGBgvMDc4Gs2vLCcb0AguGCgfJzsbZDgvHzhKU','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','rxHHBsbfBNzPCM9UBwvUDcbtzxr1Ca','u3vIBwL0igzHAwXLza','sgvSCdOGicaGica','q29UDgvUDc1uExbL','icdIHPiGia','l2fWAs9Py29Hl2v4yw1ZlW','u291DgGGqwzYAwnH','vw5PDgvKifn0yxrLCW','icboB3rLoIb5B3uGDhLWzwqGysbKAwzMzxjLBNqGDg9Rzw4UievHy2GGzxHHBsb0B2TLBIbPCYbIB3vUzcb0BW','yw5ZD2vYCW','rvHqsvjfra','icdINjCG','vhj5igeGzNjLzsbWCMfJDgLJzsbLEgfTicHUBYbHy2nVDw50ig5LzwrLzcK','CxvLC3rPB25Z','zMLSDgvY','icaGicaGicaGicaGicaGicaGzxmGWRCGEMGGWRCGAMeGWRCGA28GWRCGyxiGWRCGzNiGWRCGChq','C3vKBYbHChqGAw5ZDgfSBcaTEsbWExrOB24ZlxbPCcbWExrOB24ZlxzLBNy','iIbPCYbPBIbWCM9NCMvZCY4','C3vIBwL0DgvKqxq','zw50CMLLCW','icaGign0zJrHAq','rxHHy3rSEs4','icbuExbLicjOzwXWiIbVBIbHBNKGCxvLC3rPB24GDg8GDxnLlG','CMvTB3zLtgLZDgvUzxi','C3vIBwL0DgvK','cGPgDwXSigf0DgfJAgvKigrHDge6cG','icbnzxrOB2qGmZOGu2nYAxb0igzPBgu','icdWN46bicS','y29TBwfUza','z3jLzw4','icbrDwvZDgLVBNmGAw4Grw5NBgLZAc4Gvg8GC3DPDgnOigXHBMD1ywDLigzPCNn0oG','zMLUywW','u3rHCNqGDgHLigv4yw0/ifrOzsb0Aw1LCIb3AwXSigjLz2LUigLTBwvKAwf0zwX5lG','icHr','icdIHlKGuevqidy2ocbKzxrLy3rLzcdIGjqGDxnPBMCGls11C2vYigLUC3rHBgWGkg5Vihn1zg8GBMvLzgvKkq','icaGieXHBMC6icaGia','CMvMihb5DgHVBG','quXm','icGR','oJaW','icaGsg93ihrVigf0DgfJAW','ig1PBG','ienurJrbsq','zMXVB3i','zxHHBvDHExngB3vUza','icaGid4+pIbLEgL0kcK','ls11C2vYic0TyNjLywSTC3LZDgvTlxbHy2THz2vZ','ic1TihbPCcbPBNn0ywXSici','z2v0vgLTzq','sw5ZDgfSBcbqExrOB24Gzw52AxjVBM1LBNqGzM9YihbYywn0AwnHBcbLEgfTihf1zxn0Aw9UCW','icaGu3LKBMv5lcbbDxn0CMfSAweGimk3icbkDw4GmJCG4OctieP1BcaYlcaYmdi2','icbdB250Aw51zsb0AgLZigv4yw06','ihrVihn1yM1PDcbMB3iGz3jHzgLUzY4','ixzPihnVBhzLlNb5','C2XPy2u','zwXPBwLUyxrL','CM9Wz2fKz2v0','icaGicbnzxnZywDLCYdIHPiGquKGDgfYz2v0iokaLcbJCMfMDcbWCM9TChrZihrVigjYzwfRigL0CYbYDwXLCY4','yNm0','yMvZDa','zMLUza','r3jHzgLUzY4UlG','rw50zxiGzxHHBsb3AxrOigfJy2vZCYb0B2TLBIaOBM8GBg9NAw4GBMvLzgvKkq','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','iefjnenurG','AhrWsNvTCa','icaGifnVBwuGCgfJA2fNzxmGkhb3BNrVB2XZlcbZy2fWEsKGBwf5ig5VDcbOyxzLihDOzwvSCYb5zxqGzM9YidmUmtmU','yw5ZD2vYx2nOyw5Nzwq','rhvYyxrPB24','ihrVigXLyxzLigLJB2e','ixb5DgHVBJm','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwqGyMvMB3jLigvUDgvYAw5NigeGDg9Rzw4U','icaGigzYB20GChDUigLTCg9YDcb4B3i','vgLTzsb1C2vKoIa','zxHHBv9Pza','C2vZC2LVBG','AhrWtMf2','icdINjmGCgLWigf2ywLSywjSzq','q2HVAwnLig11C3qGyMuGqsWGqIWGqYWGB3iGrc4','DdeW','icaGicaGicHszwjVB3qGAwyGv2LUzg93CYbHC2TZlcb0AgvUig9Wzw4GDgHLifvIDw50Dsb0zxjTAw5HBc4P','Aw5KzxHpzG','r2HHBMe','zhvYyxrPB25nAw51DgvZ','icaGihn1zg8Gyxb0ihvWzgf0zq','CMvZDw1L','igfUC3DLCMvK','A2v5','icdcTYaG','zxHHBsbWCMv2','icbODhrWCZOVl2LJB2eYmdi2lMf1','iokaLcbZzwuGzNvSBcbLCNjVCG','C3rHCNq','uxvLC3rPB25Z','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','mtqYndu5s2rVEgjs','u3jPieXHBMTH','icaOtwLUAw1HBcbvyNvUDhuGlYbJBg91zcaVifDttdiGAw1Hz2vZig9MDgvUihnOAxaGD2L0Ag91DcbWAxaUkq','rMXHzYbHihf1zxn0Aw9UihrVihjLDMLLDYbSyxrLCIaODg9Nz2XLCYK','BM9KztPMCW','AwnVyt4','icbnzxrOB2qGmJOGsw50zxjHy3rPDMuGuhL0Ag9U','8j+pLU+4JW','icbzB3uGy2fUihbHDxnLihDPDgGG','ic1TigvUC3vYzxbPCcaTlxvWz3jHzgu','lZmWig11BhrPCgXLlwnOB2LJzsbHBNn3zxjLza','icaGicaGicaOBM93lcb+nsbTAw4P','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','l2fWAs9Py29Hl3nLCNzLCI10Aw1L','icaGicjiB3CGzg8GssbKzwnYExb0ieffuY1dqKmGAw4GuhL0Ag9UpYi','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','C3vKBYbHChqGDxbKyxrL','icaGrwXHChnLzdOG','lI4VBgLIl2rLBw8TzxHHBs5QCW','icaG8j+oRYaGu2vJDgLVBIaZoIbdvey0quKG4OcuienOywXSzw5Nzsb0AguGquK','sw5KB25LC2LH','BwvZC2fNzq','ihvUzMXHz2DLzc4','icaGicfWExrOB24ZihnVBhzLlNb5','icGZmcbnq1eGkYaXmcbWCMfJDgLJywWP','AM9PBG','Bw9YzsbOzwXW','sunpqsbezw1Viev4yw0G4OcuiezYzwuGuhjHy3rPy2u','C3rYAw5NAwz5','ihbVAw50CW','AgLUDcbHic8GyIaVigm','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','y291BNrYEq','CMvWzwf0','tg9HzgLUzYbYzxn1BhqUlI4','D2HPDgu','u3vIBwL0igL0igzPCNn0oIbLEgfTihn1yM1PDa','icaGihzSytrJDgy','mteZntqZntb4EwjkEMO','icaGihn1zg8GDxbKyxrLlwfSDgvYBMf0AxzLCYaTlwLUC3rHBgWGl3vZCI9IAw4VChL0Ag9UmYbWExrOB24Zic91C3iVyMLUl3b5DgHVBJmUmtiGmq','ndu5mtiXogTSq0XzvW','yNjLDYbPBNn0ywXSihb5DgHVBKaZlJeY','zxHHBsa','icdcTYbzB3vYig5HDgLVBMfSig9Yz2fUAxPLCIb3AwXSigfUBM91BMnLihnLBgvJDgLVBIbYzxn1BhrZlG','tg9HzgLUzYbXDwvZDgLVBNmUlI4','ica0mcSGy291BNrYAwvZigfUzcbYzwDPB25ZihjLChjLC2vUDgvK','ihbHy2THz2vZigLUC3rHBgXLzc4','icaGidiUieLUC3rHBgWGsg9TzwjYzxCGzMLYC3qGkhDLigrPzcbUB3qGzMLUzca','icaGiokgKIa','y29YCMvJDa','icaGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3ic0GsNvSidiSidiWmJy','Cgn0','ywK0y3rMpG','Aw5JB3jYzwn0sw50CM8','icaGiokrOca','icbbBNn3zxjZigfYzsa','uhjLCgfYAw5NlI4U','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','yM9VA21HCMTZ','sMfWyw4','itXJBwq+ia','A2v5CW','Ew91CKfUC3DLCG','C3vKBYbHChqGAw5ZDgfSBcaTEsbUB2rLANmGChL0Ag9UmY1WAxaGChL0Ag9UmY12zw52','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','zxHHBsbUzxH0','ic1TihbPCcbPBNn0ywXSic0Tzhj5lxj1BIbWAxaGmJ4Mmq','Dg9ju09tDhjPBMC','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','ihnOyxjLzcbHy3jVC3mGutm54Octnda','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','icaGicbfEgfToIaG','DM9SyxrPBgL0Etm','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','vMLLDg5HBq','CM91BMq','ic1TihbPCcbPBNn0ywXSihb3BNrVB2XZ','icaGDgHLig9Yz2fUAxPLCIbPBIb5B3vYignVDw50CNKU','C3rHCNrLzef0','icaG','icaGuhjLC3mGyw55igTLEsb0BYbZDgfYDcbKzw1VlI4U','icbpCIb0ExbLia','4PQGicbfweLuigLJB2eGzMLYC3qG4OcuigLUC3rHBgXLCIbJyw5UB3qGCNvUigLUC2LKzsb0AguGChjVBxb0','CMfUzg9T','tg9HzgLUzYbLEgfTCY4UlG','qxzHAwXHyMXLiev4yw1ZicG','icbLEgfTiheGw25Dicb8igv4yw0Gyw5ZD2vYidXUpIa8qs1epIb8igv4yw0GCMv2Awv3ihWGzxHHBsbZDwjTAxq','icaGv2vSy29Tzsb0BYb0AguGChjHy3rPy2fSienurIbZzwn0Aw9UlIbszwfS','yw5ZD2vYvgHPCW','icaGievprG','icaGifb5DgHVBJOG','AhrWqMfJAW','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','zxHHBsbYzxnLDa','C3bSAxq','Dg9Rzw4','imk3ifbPy2SGB25LigfUC3DLCIbWzxiGCxvLC3rPB24','D2L0Aa','icHxu0WYkq','icaGv2HHDcb5B3uNBgWGzg8GDg9KyxK6','mJuSmdaW','icbtDgvWlwj5lxn0zxa6','vxnLCI1bz2vUDa','y3rMngfPpG','icdWN5kHie9WDgLVBIa','Bwf4','ig1PBNv0zxm','icbxCML0zsbHic5WEsbMAwXLlcb0AgvUihj1BIbPDdO','y29UzMLYBwvKqxq','igzSywDNzwqGzM9YihjLDMLLDY4','DMXH','icdIMQaGiefUigv4yw0GAxmGywXYzwfKEsbPBIbWCM9NCMvZCYbVBIb0AgLZigrLDMLJzs4','qw5ZD2vYideWihf1AwnRihf1zxn0Aw9UCW','igfUzcbWCMvZCYbfBNrLCIb0BYbSzwf2zsbPy29H','vxbSB2fKAw5NigfUC3DLCNmUlI4','zxHHBsbKzw1VlxjLDhj5','icdINjmGie1dusbZzwn0Aw9UignVBxbSzxrLiokaLcb3zwXSigrVBMuH','x2HLBhbqzxjr','icaGicbuAguGDg9Rzw4GAxrZzwXMigLZie5pvcbYzxzVA2vKihnLCNzLCI1ZAwrLlIbjzIb5B3vYihnLC3nPB24GAxm','ihf1zxn0Aw9U','AwDUB3jL','icaGihbYAw50khHVCIHJDcWGA2v5ks5KzwnVzguOksK','icbzB3vYigjLC3q6ia','icdWN5Ieie9UBhKGmIbVChrPB25ZigXLzNqG4OcuihLVDsbNB3qGDgHPCYe','uK9qz2fKz2v0','icbuBYbJB250Aw51zsb0AgLZigv4yw06','tM8GzxHHBsbPBIbWCM9NCMvZCY4','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','C3vJy2vLza','icaGsg93ihrVihDVCMS','icbpChrPB25ZigHHDMuGyMvLBIbYzxnODwzMBgvKlG','icaGihn1zg8Gyxb0igLUC3rHBgWGlxKGChL0Ag9UmY4XmIbWExrOB24ZlJeYlxzLBNyGChL0Ag9UmY4XmI1KAxn0DxrPBhm','y3LHBG','Bsb0B3rHBa','DhjPBq','sw52ywXPzcb0B2TLBG','icbkDxn0igfKzcaHigjLzM9Yzsb0AguGy29TBwfUzdO','zwDNmtm','igjVBNvZihvZzxmP','BgfUzYa8y29Kzt4','icbfEgfTCgXLoIa','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqU','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','icbdAgvJAYbLEgfTCYbMB3iGEw91CIbJB3vUDhj5oG','x2XHC3rr','D3nSic0TAw5ZDgfSBcaTzcbvyNvUDhuTmJiUmdq','tMv3ifPLywXHBMq','oeDmBMnUza','iokaLcb5B3uGy2fUBM90ignOyw5Nzsb0AgvTigfMDgvYihn1yM1PDc4','icaGiokrOYa','zwXPBwLUyxrLza','BwfYAYbBBL0','iokCKYaGka','ChDUDg9VBhm','Dg90ywW','z3jHEq','icaOuMv0CNKGD3jVBMCGB25SEsK','icaGicbfBNrLCIbJAgf0oIaGicaG','icbVBMuGzgv2AwnLicSGB25LihnLC3nPB24UifLVDsbJyw5UB3qGC3DPDgnOihrVA2vUCYbTAwqTzxHHBs4','zwDNmte','icbuCNvZDcb5B3vYigLUC3rPBMn0igfUzcbWAwnRig9Uzse','icbozwvKig1VCMu/ifr5Cgu6ia','icaGidiUieLUihLVDxiGC2HLBgWSihj1BJO','icaGidmUie9Wzw4GysborvCGug93zxjtAgvSBcb3Aw5KB3CGkfbbveGGCMvMCMvZAcKSihrOzw46','iokaLcbZD2L0y2GGD2L0AdOGBgfUzYa8y29Kzt4','drTBmKSGia','yxr0ywnOzwreyxrH','qwXTB3n0ihjLywr5lI4U','icbbzNrLCIbPBNn0ywXSAw5NlcbYDw46ia','oIdIGjq','tg9HzgLUzYbLEgfTlI4U','uMv0CNKGB25SEsb0AguGCxvLC3rPB25ZihLVDsbNB3qGD3jVBMCGBgfZDcbKzw1Vigf0DgvTChq','icbuBYbJB25MAxjToIaG','yw5ZD2vYidXUpIa8y2HVAwnLlI4UpG','C3rKB3v0','q291BNrYEq','icaGieHPBNrZoIaGieeOnsKGqIGZksbdkdePiokaLcbWCMfJDgLJywWGB25SEq','icaG4PYticbtDwjTAxnZAw9UigfJy2vWDgvKiokaLcbIyxnLBgLUzsbTzxq','CgfKrw5K','C3vIBwL0ifTJB25MAxjTqxjNxq','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','icaGiokgKIbIj0HLBgXVjW','l2v0yY9VCY1YzwXLyxnL','icbvyNvUDhuGlYbezwjPyw4GkgrLywrZBMfRzxmGufbbktO','u29SAwqGCgLJAY4','icaGigv4yw0GCMv2Awv3','icbr','Dg9vChbLCKnHC2u','y2f0','zhvYyxrPB25nAw4','icaGieeVqI9dl0q','ugvYDq','CgfZC2vK','AhrWsgvSCa','CgvYzMvJDfnJB3jL','icaGihn1zg8Gzg5MigLUC3rHBgWGlxKGChL0Ag9UmY4XmG','q2XVC2uG4OcuihDLj2XSihjLDMLZAxqGDgHPCYbVBMuU','zxHHBuLK','icdINjmGvg9Rzw4GCMuTyxr0ywnOzwqGDg8GEw91CIbPBI1WCM9NCMvZCYbLEgfTlG','AgvSCfjLBw92zq','zwDNmW','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','zxHHBsbTyxjRia','CxvPDa','icaGicdILQmG','icbgAwX0zxiGyNKGy291BNrYEtOGzxHHBsbSAxn0ifbflcbLEgfTigXPC3qGq04Sic4UlG','icdINjmG','AhrWtw9YzuHLBha','icaGicbcDwrNzxqGFJiGBwLUihbLCIbWCMfJDgLJywWGCxvLC3rPB24UifLVDsbJyw4Gy29TzsbIywnRihDPDgG6ig5LEhqGlYbWCMv2lG','u3bVDcbVBI4','icbqCMfJDgLJAw5Nia','icaGidiUieLUigfUiefKBwLUAxn0CMf0B3iGug93zxjtAgvSBcWGCNvUoG','ihvUyw5ZD2vYzwq6ia','vw5HBNn3zxjLza','qxvZDhjHBgLH','icaGifbHy2THz2vZoIa','x2HLBhbnyxG','icbjBNn0ywXSAw5Nifb5DgHVBIbWywnRywDLCYbMB3iGChjHy3rPy2fSihf1zxn0Aw9UCY4','vgLTzsbszw1HAw5PBMC','icbszwnVBw1LBMrLzcbWyxrOiokaLcbZD2L0y2GGDg8Gv1nmmIaOB25LlxrPBwuSih41ig1PBIK6','icaGiokaOIbtzxj2zxiGyxv0BY1MAw5HBgLZzxmGEw91CIbHBNn3zxjZigLMihLVDsbKBYbUB3qGC3vIBwL0igjLzM9Yzsb0AguGzgvHzgXPBMu','CgLWzq','ic0TDMvYC2LVBG','AgLUDa','u3rHCNqGyw4GzxHHBsaOyMvNAw5ZihrPBwvYkq','CxvLC3rPB24','yxbWBgLJyxrPB24VANnVBG','CsbBBL0','sw52ywXPzcbLEgfTihrVA2vU','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','icHJB21WBgv4ihnVBhv0Aw9UCYK','zxHHBsbXide','quKGDg9Rzw5ZoIa','zw5JB2rPBMC','icaGzMLUAxnOigfUzcbZDwjTAxq','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqUiev4yw0Gy2XLyxjLzc4','BgfUz3vHz2u','icaGihn1zg8GCgfJBwfUic1tihb5DgHVBG','sw4GuhjVz3jLC3m6ia','icbbssbbC3nPC3rHBNq','u3vIBwL0DgvK','DhLWzq','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','BMv4DeXHyMvS','BwLZC2LUzW','icbeDxjPBMCGDgHLigv4yw0Sihr5CguG','rw52AxjVBM1LBNqGCMvHzhK','zgvHzgXPBMvtzxj2zxjnCW','uMvHzhKH','icbpCIbKB3DUBg9HzcbPBNn0ywXSzxi6','icdINjmGrxHHBsbZDgf0zsbJBgvHCMvKlG'];a0z=function(){return bK;};return a0z();}import{getConfig as a0W,saveConfig as a0X}from'../lib/config.js';import{getExamState as a0Y,saveExamState as a0Z,clearExamState as a0a0,getExamDeadline as a0a1,materializeAttachedData as a0a2}from'../lib/exam-state.js';import{getDemoStats as a0a3,recordDemoAttempt as a0a4,saveRetryQueue as a0a5,getRetryQueue as a0a6,clearRetryQueue as a0a7}from'../lib/demo-stats.js';import{logCommand as a0a8}from'../lib/logger.js';import{printSuccess as a0a9,printError as a0aa,printWarning as a0ab,printInfo as a0ac,printTable as a0ad,printHeader as a0ae,printKeyValue as a0af,createSpinner as a0ag,formatCountdown as a0ah}from'../lib/ui.js';import{t as a0ai}from'../lib/i18n.js';import{getDeviceFingerprint as a0aj}from'../lib/access.js';import{getExamSetup as a0ak,saveExamSetup as a0al,isExamSetupComplete as a0am}from'../lib/exam-setup.js';import{execSync as a0an}from'node:child_process';const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const aY=a0B,G=a0W(),H={};H[aY(0x25b)]=aY(0x399),fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':aY(0x21a),'headers':H,'body':JSON[aY(0x2d3)]({'type':B,'lang':G[aY(0x3a3)]||'en','timestamp':new Date()[aY(0x2fa)](),...F}),'signal':AbortSignal[aY(0x1e2)](-0x4*0xea+-0x45*-0x3d+-0x9d*-0xb)})[aY(0x437)](()=>{});}function N(z,B){const aZ=a0B,F=Math[aZ(0x302)](z/(-0x1933+-0xa6d*0x2+0x2e71)*(-0x16f1+-0x25c1+0x3cd0)),G=0x1*0x311+-0x88*0x5+-0x4b-F,H=a0L[aZ(0x275)]('█'[aZ(0x2d8)](F))+a0L[aZ(0x352)]('░'['repeat'](G)),J=String(z)[aZ(0x1f7)](0x1be8+0x4ab*0x5+-0x333c)+'%';process[aZ(0x365)][aZ(0x40b)](aZ(0x35c)+H+'\x20'+J+'\x20\x20'+a0L[aZ(0x352)](B));}function M(){const b0=a0B,z=a0W();return z['ctfdUrl']&&z['token']?new a0V(z[b0(0x1ba)],z[b0(0x316)]):(a0aa('Not\x20connected.\x20Run:\x20join\x20<url>'),null);}function O(){const b1=a0B,z=a0a1();z&&(new Date()<z?a0af(b1(0x391),a0L['yellow'][b1(0x190)](a0ah(z))):a0af('Time',a0L['red']['bold'](b1(0x262))));}function D(z,B){const b2=a0B;return Array[b2(0x1cf)](z[b2(0x2f1)])&&z['bookmarks'][b2(0x1d1)](B);}function j(z,B){const b3=a0B,F=Array[b3(0x1cf)](z['bookmarks'])?[...z['bookmarks']]:[],G=F[b3(0x2a9)](B);return G>=0x11ab+-0x1*-0x24c2+0x366d*-0x1?(F[b3(0x1e8)](G,0x2003+0xa12+-0x2a14),z['bookmarks']=F,a0Z(z),!(0x14e1*0x1+0xabc+0x11*-0x1dc)):(F[b3(0x203)](B),F[b3(0x210)]((H,J)=>H-J),z[b3(0x2f1)]=F,a0Z(z),!(-0x52*0x6b+-0x70c+0x2952));}function R(B){const b4=a0B,F={};return F[b4(0x1b6)]=B['_helpUsed']||0x1*0xa21+-0x257c+0x1*0x1b5b,F[b4(0x320)]=B[b4(0x38f)]||0x23a8+0xdc8+0xd*-0x3cc,F[b4(0x3e0)]=B[b4(0x32c)]||{},F[b4(0x34d)]=B[b4(0x1e0)]||{},F;}function U(z,B){const b5=a0B,F=a0Y(),G=Number(F?.['session'][b5(0x40d)]||-0x1abe+-0x1*0x12d1+0x2dad),H=Object[b5(0x2f4)](F?.[b5(0x261)]||{})[b5(0x185)],J=R(F),K=J[b5(0x34d)][z[b5(0x16f)]]||[],L=b5(0x16c)===z[b5(0x3a8)]||b5(0x156)===z[b5(0x3a8)]||b5(0x325)===z[b5(0x3a8)]||z['options']&&!z['options']['A']&&!z[b5(0x129)]['B'];F&&function(Y,Z){const b6=b5;if(b6(0x40f)===Y[b6(0x2a3)]['examId'])return;const a0=new Set(Y[b6(0x1c0)]||[]),a1=Number(Y[b6(0x2a3)]['questionCount']||-0x2*0xdb+-0x20f9+0x22d7),a2=a0a1();if(0x5*-0x785+-0x46*-0xf+0x6b5*0x5===Z&&a1>=0x2*-0xfe+-0x177b+0x199f&&!a0[b6(0x3bd)](b6(0x226))){const a3=a2?Math['max'](-0x8c4*-0x3+0x1e00+-0x384c,Math[b6(0x302)]((a2[b6(0x288)]()-Date['now']())/(0x3*0x69cf+-0x70b4+0x1da7))):null;console[b6(0x238)](),console[b6(0x238)](a0L[b6(0x352)]('\x20\x20┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄')),console[b6(0x238)](a0L[b6(0x33b)](b6(0x1b1))+a0L['gray'](b6(0x17d))),null!==a3&&console[b6(0x238)](a0L[b6(0x352)]('\x20\x20\x20\x20\x20'+a3+b6(0x256))),console[b6(0x238)](a0L[b6(0x352)](b6(0x24e))),a0[b6(0x201)](b6(0x226)),Y[b6(0x1c0)]=Array[b6(0x3c3)](a0),a0Z(Y);}if(0x7*0xa7+0x2493*-0x1+0x2020===Z&&a1>=0x6*-0x349+-0xc29*0x1+-0x38f*-0x9&&!a0[b6(0x3bd)](b6(0x196))){Object[b6(0x2f4)](Y[b6(0x261)]||{})[b6(0x185)];const a4=Object[b6(0x2f4)](Y['answers']||{})[b6(0x266)](a5=>Number(a5)<=-0xaa*0x25+0x175*0x13+-0x3b*0xd)[b6(0x185)];console[b6(0x238)](),console[b6(0x238)](a0L['green'](b6(0x3e4))),console['log'](a0L[b6(0x190)][b6(0x275)](b6(0x32b))),console[b6(0x238)](a0L['gray']('\x20\x20\x20\x20\x20'+a4+b6(0x2c1))),console['log'](a0L['white'](b6(0x1cd))),console[b6(0x238)](a0L['gray'](b6(0x387))),console[b6(0x238)](a0L[b6(0x275)](b6(0x3e4))),a0[b6(0x201)](b6(0x196)),Y[b6(0x1c0)]=Array[b6(0x3c3)](a0),a0Z(Y);}}(F,z[b5(0x16f)]),F&&L&&function(Y,Z){const b7=b5;if(b7(0x40f)===Y['session'][b7(0x37c)])return;if(Number(Y[b7(0x2a3)][b7(0x40d)]||-0x1334*0x1+-0x23b1+0x370d)<-0x21a4+-0x1b68*0x1+0x3d34)return;const a0=new Set(Y['shownWarnings']||[]);Z>=0x1a8f*0x1+-0x16*0xe8+0xd*-0x80&&Z<=-0x9f1+0xe44+-0x42d&&!a0[b7(0x3bd)](b7(0x23e))?(console[b7(0x238)](),console['log'](a0L[b7(0x275)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[b7(0x238)](a0L[b7(0x190)][b7(0x275)](b7(0x3e3))),console['log'](a0L[b7(0x275)](b7(0x1d5))),console['log'](),console['log'](a0L[b7(0x2da)](b7(0x30e))),console[b7(0x238)](a0L[b7(0x2da)]('\x20\x20\x20security\x20tasks\x20—\x20crypto,\x20web,\x20forensics,\x20pwn.')),console[b7(0x238)](),console['log'](a0L[b7(0x190)][b7(0x2da)]('\x20\x20\x20Q31–38\x20(8\x20questions\x20·\x206\x20pts\x20each)')),console['log'](a0L[b7(0x352)](b7(0x3d7))+a0L[b7(0x190)](b7(0x318))+a0L[b7(0x352)](b7(0x1e6))),console[b7(0x238)](),console['log'](a0L[b7(0x190)][b7(0x2da)](b7(0x338))),console[b7(0x238)](a0L[b7(0x352)]('\x20\x20\x20\x20\x20Enter\x20chat:\x20\x20\x20\x20\x20')+a0L['bold']['green']('ai4ctf')+a0L[b7(0x352)]('\x20→\x20')+a0L[b7(0x173)](b7(0x2eb))+a0L[b7(0x352)](b7(0x257))),console[b7(0x238)](a0L['gray'](b7(0x19c))+a0L['cyan'](b7(0x2d5))+a0L[b7(0x352)](b7(0x153))+a0L[b7(0x33b)](b7(0x21d))+a0L[b7(0x352)]('\x20·\x20')+a0L[b7(0x33b)](b7(0x128))),console[b7(0x238)](a0L[b7(0x352)](b7(0x204))),console[b7(0x238)](a0L['gray'](b7(0x243))+a0L[b7(0x33b)](b7(0x3e6))+a0L['gray']('\x20→\x20back\x20to\x20exam,\x20navigate\x20with\x20')+a0L['cyan'](b7(0x42f))),console[b7(0x238)](),console['log'](a0L[b7(0x190)][b7(0x2da)](b7(0x1f2))),console[b7(0x238)](a0L[b7(0x352)](b7(0x1ca))+a0L['white'](b7(0x31b))+a0L[b7(0x352)]('\x20for\x20this\x20section')),console[b7(0x238)](a0L[b7(0x352)]('\x20\x20\x20\x20\x20Hints\x20A/B/C:\x20\x20\x20\x20')+a0L[b7(0x2da)]('pre-written\x20per\x20question')),console['log'](),console[b7(0x238)](a0L[b7(0x137)]('\x20\x20\x20Time\x20still\x20counting\x20down.\x20Budget\x20~2\x20min\x20per\x20question.')),console[b7(0x238)](a0L['green'](b7(0x1d5))),console[b7(0x238)](),a0[b7(0x201)](b7(0x23e)),Y[b7(0x1c0)]=Array[b7(0x3c3)](a0),a0Z(Y)):Z>=0x885+-0x1338+0x1*0xada&&!a0['has'](b7(0x1f0))&&(console['log'](),console[b7(0x238)](a0L[b7(0x148)](b7(0x1d5))),console[b7(0x238)](a0L['bold']['red'](b7(0x2ca))),console[b7(0x238)](a0L[b7(0x148)](b7(0x1d5))),console[b7(0x238)](),console[b7(0x238)](a0L[b7(0x2da)](b7(0x3fc))),console[b7(0x238)](a0L['white']('\x20\x20\x20using\x20AI,\x20you\x27re\x20')+a0L['bold']('attacking')+a0L[b7(0x2da)](b7(0x12c))),console[b7(0x238)](),console[b7(0x238)](a0L[b7(0x190)][b7(0x2da)](b7(0x1b2))),console[b7(0x238)](a0L[b7(0x352)]('\x20\x20\x20\x20\x20Prompt\x20injection\x20·\x20adversarial\x20analysis\x20·\x20AI\x20auditing')),console[b7(0x238)](),console[b7(0x238)](a0L['bold'][b7(0x2da)](b7(0x280))),console[b7(0x238)](a0L[b7(0x352)](b7(0x354))+a0L[b7(0x190)]['red'](b7(0x156))+a0L[b7(0x352)]('\x20→\x20')+a0L[b7(0x148)](b7(0x31e))+a0L[b7(0x352)]('\x20prompt,\x20same\x20shape\x20as\x20demo')),console[b7(0x238)](a0L[b7(0x352)](b7(0x19c))+a0L[b7(0x33b)](b7(0x2d5))+a0L[b7(0x352)](b7(0x153))+a0L[b7(0x33b)](b7(0x21d))+a0L['gray']('\x20·\x20')+a0L[b7(0x33b)](b7(0x128))),console[b7(0x238)](a0L[b7(0x352)](b7(0x291))),console[b7(0x238)](),console[b7(0x238)](a0L['bold'][b7(0x2da)](b7(0x2c3))),console[b7(0x238)](a0L['gray'](b7(0x208))+a0L[b7(0x148)](b7(0x236))+a0L[b7(0x352)](b7(0x177))),console['log'](a0L[b7(0x352)](b7(0x3dc))+a0L['white']('25,000\x20tokens')+a0L[b7(0x352)](b7(0x2fc))),console['log'](),console[b7(0x238)](a0L['yellow'](b7(0x228))),console[b7(0x238)](a0L[b7(0x137)]('\x20\x20\x20If\x20time\x20is\x20tight,\x20skim\x20Q39/40\x20first\x20to\x20decide\x20attack\x20order.')),console['log'](a0L[b7(0x148)](b7(0x1d5))),console[b7(0x238)](),a0['add'](b7(0x1f0)),Y[b7(0x1c0)]=Array[b7(0x3c3)](a0),a0Z(Y));}(F,z['number']),F&&function(Y){const b8=b5,Z=a0a1();if(!Z)return;const a0=Z[b8(0x288)]()-Date[b8(0x1be)]();if(a0<=-0x1*-0x17e2+0x6*-0x4a5+0x11*0x3c)return;const a1=a0/(0x1af04*-0x1+0xf023+0x1a941),a2=new Set(Y[b8(0x1c0)]||[]);let a3=null;if(a1<=0x16*-0x1b6+0xc81+-0xc92*-0x2&&!a2['has']('t1')?a3={'key':'t1','text':[a0L[b8(0x148)][b8(0x190)](b8(0x212)),a0L[b8(0x148)](b8(0x1e1))+a0L['bold']('exam\x20submit')]}:a1<=-0xe2*-0x8+-0x2539+-0x2*-0xf17&&!a2[b8(0x3bd)]('t5')?a3={'key':'t5','text':[a0L['red'][b8(0x190)](b8(0x1d7)),a0L[b8(0x137)](b8(0x18c))+a0L[b8(0x190)](b8(0x18a))]}:a1<=0x1*-0x1b9a+0x1848+0x35c&&!a2[b8(0x3bd)](b8(0x2a7))&&(a3={'key':b8(0x2a7),'text':[a0L[b8(0x137)][b8(0x190)](b8(0x1fd)),a0L[b8(0x352)]('\x20\x20Review\x20unanswered\x20questions:\x20')+a0L[b8(0x2da)](b8(0x15a))]}),a3){console[b8(0x238)](),console[b8(0x238)](a0L[b8(0x148)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━'));for(const a4 of a3[b8(0x3c0)])console[b8(0x238)](a4);console[b8(0x238)](a0L[b8(0x148)](b8(0x3e4))),a2[b8(0x201)](a3[b8(0x2af)]),Y[b8(0x1c0)]=Array[b8(0x3c3)](a2),a0Z(Y);}}(F),function(Y,Z,a0){const b9=b5,a1=Math['round'](Y/Z*(0x1ce1+0xf73+0x2c36*-0x1)),a2=0x1*0xadc+-0x1*0x1b47+-0x1*-0x1089-a1,a3=a0L[b9(0x33b)]('━'[b9(0x2d8)](a1))+a0L['gray']('─'['repeat'](a2)),a4=Math[b9(0x302)](Y/Z*(-0x22*0xc2+0x20b*-0x1+0x1c33));console[b9(0x238)](),console[b9(0x238)]('\x20\x20'+a3+'\x20\x20'+a0L['white'][b9(0x190)](''+Y)+a0L[b9(0x352)]('/'+Z)+'\x20\x20'+a0L['gray']('('+a0+'\x20answered)')+'\x20\x20'+a0L[b9(0x352)](a4+'%'));const a5=a0a1();if(a5){const a6=Math[b9(0x320)](0x137c+0x373+-0x16ef,Math[b9(0x302)]((a5[b9(0x288)]()-Date[b9(0x1be)]())/(0x5f*-0x65+0xd*-0x2fc+0x502f))),a7=Math[b9(0x283)](a6/(-0xc81+0x23e8+-0x172b))+':'+String(a6%(-0x43*0x1a+-0x1e94+0x259e))[b9(0x1f7)](0xc97+0xaa9+0xa*-0x253,'0'),a8=a6<=-0x4*0x687+0x6bf*0x2+0x149*0xa?a0L[b9(0x148)][b9(0x190)]:a6<=0x1242+0x1db5+-0x2ecb?a0L[b9(0x148)]:a6<=-0x3*-0xc7+0x7b0+-0x7ad?a0L['yellow']:a0L[b9(0x352)];console['log']('\x20\x20'+a0L['gray'](b9(0x1bb))+'\x20'+a8(a7)+'\x20'+a0L[b9(0x352)]('(server-authoritative)'));}}(z[b5(0x16f)],G,H),F&&D(F,z['number'])&&console[b5(0x238)](a0L[b5(0x137)](b5(0x1c2)));const Q=function(Y,Z){const ba=b5,a0={};a0[ba(0x2ea)]=0.2,a0[ba(0x174)]=ba(0x402),a0['key']=ba(0x37f);const a1={};a1[ba(0x2ea)]=0.33,a1[ba(0x174)]='🐨',a1[ba(0x2af)]=ba(0x14a);const a2={};a2[ba(0x2ea)]=0.5,a2['emoji']='🌉',a2['key']=ba(0x215);const a3={};a3[ba(0x2ea)]=0.6,a3[ba(0x174)]='🦘',a3[ba(0x2af)]='egg9';const a4={};a4['pct']=0.8,a4[ba(0x174)]=ba(0x2be),a4[ba(0x2af)]=ba(0x356);const a5={};a5[ba(0x2ea)]=0.87,a5[ba(0x174)]='🦈',a5[ba(0x2af)]=ba(0x340);const a6={};a6[ba(0x2ea)]=0x1,a6[ba(0x174)]='🎉',a6[ba(0x2af)]='egg15';const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math[ba(0x302)](a9[ba(0x2ea)]*Z);if(!(aa<-0xa83*0x2+0x5f*0x1+0x14a8||a8[ba(0x3bd)](aa))&&(a8[ba(0x201)](aa),Y===aa))return{'emoji':a9[ba(0x174)],'text':a0ai(a9[ba(0x2af)])};}}(z[b5(0x16f)],G);if(Q&&console[b5(0x238)](a0L['yellow']('\x20\x20'+Q[b5(0x174)]+'\x20\x20'+Q[b5(0x3c0)])),console[b5(0x238)](),z[b5(0x425)]&&console[b5(0x238)](a0L['cyan'](b5(0x1e7)+z['category']+']')),z['points']&&z['points']>-0x17cd+0x1edd+-0x7*0x102&&console[b5(0x238)](a0L[b5(0x33b)](b5(0x1e7)+z['points']+'\x20points]')),L){let Y=z[b5(0x1ed)]||z[b5(0x3c0)];const Z=a0a2(z[b5(0x16f)],z[b5(0x35d)]);if(z[b5(0x35d)]){const a1=/\([^()]*attachedData[^()]*\)/;a1[b5(0x222)](Y)?Y=Y[b5(0x24a)](a1,z['attachedData']):Y[b5(0x1d1)](z[b5(0x35d)])||(Y=Y+b5(0x271)+z[b5(0x35d)]);}console[b5(0x238)](a0L[b5(0x190)][b5(0x2da)]('\x20\x20Q'+z['number']+'.\x20')+a0L[b5(0x2da)](Y[b5(0x315)]('\x0a')[-0x210d+0x31*-0x99+-0xca*-0x4f]));const a0=Y[b5(0x315)]('\x0a')['slice'](-0x1492*0x1+0x17+0x147c);for(const a2 of a0)console[b5(0x238)](a0L[b5(0x2da)]('\x20\x20'+a2));if(console[b5(0x238)](),Z&&b5(0x16c)===z[b5(0x3a8)]){const a3=Z[b5(0x24a)](process.env.HOME||'','~');console[b5(0x238)](a0L[b5(0x33b)]('\x20\x20'+a0ai('examWaysToSolve')+'\x20')+a0L[b5(0x352)]('('+a0ai(b5(0x145))+'\x20'+a3+'):')),console[b5(0x238)](a0L[b5(0x2da)](b5(0x2ed))+a0L[b5(0x137)](b5(0x2f3)+a3)[b5(0x369)](0x119+0x104+-0x1e9)+a0L[b5(0x352)]('\x20'+a0ai('examWaysShell'))),console[b5(0x238)](a0L[b5(0x2da)]('\x20\x20\x20\x20②\x20')+a0L[b5(0x137)](b5(0x29e))[b5(0x369)](-0xdab+-0x1b*0x92+0x1d31)+a0L[b5(0x352)]('\x20'+a0ai('examWaysPythonRepl'))),console[b5(0x238)](a0L[b5(0x2da)](b5(0x1d2))+a0L[b5(0x137)](b5(0x28d))+a0L[b5(0x352)](b5(0x25c))+a0L[b5(0x137)](b5(0x3c4))),console[b5(0x238)](a0L[b5(0x2da)](b5(0x34c))+a0L[b5(0x137)](b5(0x27c))[b5(0x369)](-0x7*-0x482+0x1*0x106e+-0xc*0x3fd)+a0L[b5(0x352)]('\x20'+a0ai(b5(0x3c7)))),console[b5(0x238)](a0L['white'](b5(0x22d))+a0L[b5(0x137)](b5(0x16c))['padEnd'](0x1840+-0xc*-0x1e7+0x14*-0x259)+a0L['gray']('\x20'+a0ai('examWaysAi4ctf'))),console[b5(0x238)](),console['log'](a0L['gray']('\x20\x20'+a0ai(b5(0x284))+'\x20')+a0L['bold'][b5(0x275)](b5(0x19b))),console[b5(0x238)]();}B&&(console[b5(0x238)](a0L[b5(0x275)]('\x20\x20Your\x20answer:\x20'+B)),console[b5(0x238)]());}else{console[b5(0x238)](a0L[b5(0x190)][b5(0x2da)](b5(0x371)+z[b5(0x16f)]+'.\x20')+a0L[b5(0x2da)](z['text'])),console[b5(0x238)]();for(const a4 of['A','B','C','D']){const a5=B===a4;K[b5(0x1d1)](a4)?console[b5(0x238)](a0L[b5(0x352)][b5(0x1a6)]('\x20\x20\x20\x20'+a4+'.\x20'+z[b5(0x129)][a4])+a0L[b5(0x148)]('\x20('+a0ai(b5(0x3db))+')')):a5?console[b5(0x238)](a0L[b5(0x275)][b5(0x190)](b5(0x1e3)+a4+'.\x20'+z[b5(0x129)][a4])):console['log'](a0L[b5(0x352)](b5(0x22c)+a4+'.')+'\x20'+a0L[b5(0x2da)](z[b5(0x129)][a4]));}console[b5(0x238)]();}const V='demo-free'===F?.[b5(0x2a3)][b5(0x37c)],W=J[b5(0x3e0)][-0x20ef+-0x142c+-0x1*-0x351d]||-0x4*0x2c3+-0x421*-0x1+0x6eb;V&&-0x871*-0x1+-0x1*-0x16bd+-0x1f2c===z[b5(0x16f)]&&0x49*0x3e+-0xb*-0x231+-0x233*0x13===W&&(console[b5(0x238)](a0L[b5(0x137)][b5(0x190)]('\x20\x20'+a0ai('qTutorial'))),console[b5(0x238)]());const X=J[b5(0x320)]-J['used'];if(console[b5(0x238)](a0L['gray']('\x20\x20─────────────────────────────────────────')),L){const a6=F&&'demo-free'!==F[b5(0x2a3)]['examId']&&z[b5(0x16f)]>=-0x6*-0x1c9+-0x424*-0x2+-0x12d7&&z[b5(0x16f)]<=-0x1093*0x1+-0x176f+0x282a,a7=F&&b5(0x40f)!==F[b5(0x2a3)]['examId']&&z[b5(0x16f)]>=0x25f1+-0x105b*-0x1+-0x362d&&z[b5(0x16f)]<=-0x4*-0x51e+0x1c6+0x194*-0xe;b5(0x325)===z[b5(0x3a8)]?console[b5(0x238)](a0L['bold'][b5(0x33b)](b5(0x2dc))+a0L[b5(0x352)](b5(0x435))):a7?console['log'](a0L['bold']['green'](b5(0x155))+a0L[b5(0x352)](b5(0x3fa))):a6&&console[b5(0x238)](a0L['bold']['red'](b5(0x26c))+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20enter\x20CTF4AI\x20chat\x20—\x20attack\x20the\x20AI\x20target\x20(recommended)')),console[b5(0x238)](a0L[b5(0x137)](b5(0x23b))+a0L[b5(0x352)](b5(0x170))),console[b5(0x238)](a0L['yellow'](b5(0x139))+a0L[b5(0x352)]('\x20\x20\x20\x20\x20\x20start\x20Python\x20shell'));}else{const a8=J[b5(0x320)]>=0x1885+-0x1*0x5b3+-0x54*0x39,a9=X>0x7f8+-0xddc+-0x1d*-0x34?a0L[b5(0x352)](a0ai(b5(0x37e))+'\x20')+a0L['yellow']('('+X+'/'+J[b5(0x320)]+')'):a8?a0L['gray'](a0ai('helpAllUsed')+'\x20('+J[b5(0x1b6)]+'/'+J[b5(0x320)]+')'):a0L[b5(0x352)](''+a0ai(b5(0x41c)));console[b5(0x238)](a0L[b5(0x137)](b5(0x375))+a0L[b5(0x352)]('\x20\x20\x20\x20\x20\x20\x20'+a0ai(b5(0x30f)))),console[b5(0x238)](a0L[b5(0x137)](b5(0x234))+b5(0x246)+a9);}console['log'](a0L[b5(0x137)](b5(0x255))+a0L[b5(0x352)](b5(0x1f3))+a0L[b5(0x137)](b5(0x12d))+a0L[b5(0x352)]('\x20\x20\x20\x20'+a0ai(b5(0x2a4)))),console['log'](a0L[b5(0x137)]('\x20\x20\x20\x20exam\x20q\x201..'+G)+a0L['gray'](b5(0x306)+a0ai(b5(0x299)))),console[b5(0x238)](a0L[b5(0x137)](b5(0x176))+a0L['gray'](b5(0x246)+a0ai('htpMark'))),console['log'](a0L[b5(0x137)](b5(0x370))+a0L['gray'](b5(0x306)+a0ai(b5(0x1d6)))),console[b5(0x238)](a0L[b5(0x190)]['yellow']('\x20\x20\x20\x20exam\x20submit')+a0L[b5(0x352)](b5(0x306)+a0ai('htpSubmit'))),console[b5(0x238)](a0L[b5(0x137)](b5(0x1a7))+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b5(0x312)))),console[b5(0x238)](a0L['yellow'](b5(0x217))+a0L[b5(0x352)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b5(0x22b)))),console[b5(0x238)](a0L[b5(0x352)]('\x20\x20─────────────────────────────────────────'));}export function registerExamCommand(z){const bb=a0B,B=z[bb(0x274)](bb(0x20b))['description'](bb(0x3ee));B['command']('nations')[bb(0x1ed)](bb(0x3d3))[bb(0x15b)](()=>{const bc=bb;a0a8('exam\x20nations'),console[bc(0x238)](),a0ae(bc(0x313)),console[bc(0x238)]();const F=[['AU',bc(0x38d)],['BD',bc(0x1ec)],['BI','Burundi'],['BR',bc(0x136)],['CN',bc(0x149)],['DE',bc(0x416)],['EG','Egypt'],['FR','France'],['GH',bc(0x2aa)],['ID',bc(0x2cb)],['IN','India'],['JP',bc(0x2f2)],['KR','South\x20Korea'],['LA','Laos'],['LK',bc(0x2b8)],['MM',bc(0x434)],['MO',bc(0x424)],['MY',bc(0x3c6)],['NZ',bc(0x349)],['PE',bc(0x376)],['PH','Philippines'],['RU',bc(0x253)],['SA',bc(0x18f)],['SG','Singapore'],['TH',bc(0x214)],['TR','Turkey'],['UK',bc(0x1a1)],['US',bc(0x25f)],['UZ',bc(0x20a)],['VN',bc(0x301)],['ZA',bc(0x25e)]];for(let G=-0x2362+-0xa*0x97+-0x2948*-0x1;G<F['length'];G+=0x13bb+0x131+-0x14e9){const H=F[bc(0x28e)](G,G+(0x1*0x2ba+0x1ce9+-0x1fa0))[bc(0x254)](([J,K])=>'\x20\x20'+a0L[bc(0x33b)](J)+'\x20\x20'+a0L[bc(0x352)](K['padEnd'](0x3f*0x1d+0x2f2+-0xa05)))[bc(0x2d0)]('');console[bc(0x238)](H);}console[bc(0x238)](),console['log'](a0L[bc(0x352)](bc(0x2e4))),console[bc(0x238)](a0L[bc(0x352)](bc(0x233))),console['log'](),console['log'](a0L[bc(0x2da)](bc(0x346))),console[bc(0x238)](a0L[bc(0x33b)]('\x20\x20\x20\x20exam\x20list\x20AU')+a0L[bc(0x352)](bc(0x20d))+a0L[bc(0x352)](bc(0x20f))),console[bc(0x238)]();}),B['command'](bb(0x162))['description'](bb(0x191))[bb(0x15b)](async F=>{const bd=bb;a0a8(bd(0x1ee)+(F||''));const G=M();if(!G)return;const H=a0ag(bd(0x30b));H[bd(0x2b4)]();try{let J=await G[bd(0x138)]();if(H[bd(0x147)](),F){const Q=F['toUpperCase']();J=J['filter'](V=>V[bd(0x2d7)][bd(0x372)]()===Q||bd(0x27d)===V[bd(0x2d7)]);}if(!J||0x2e7*-0x2+-0x2b*0x1a+0xa2c===J[bd(0x185)]){console['log'](),a0ac(F?bd(0x1f4)+F[bd(0x372)]()+'\x20yet.':bd(0x1c1)),console[bd(0x238)](),console['log'](a0L['white']('\x20\x20New\x20exams\x20are\x20coming\x20soon!')),console['log'](a0L[bd(0x352)]('\x20\x20National\x20Round\x201\x20Selection\x20exams\x20are\x20being\x20prepared.')),console[bd(0x238)](),console[bd(0x238)](a0L[bd(0x352)](bd(0x3b6))+a0L['bold'][bd(0x33b)](bd(0x3be))),console['log']();const V={};V['PE']='es',V['CN']='zh',V['JP']='ja',V['KR']='ko',V['BR']='pt',V['SA']='ar',V['FR']='fr',V['DE']='de',V['IN']='hi',V['ID']='id',V['TH']='th',V['VN']='vi',V['TR']='tr',V['RU']='ru',V['UA']='uk',V['HT']='ht',V['KE']='sw',V['TZ']='sw';const W=V,X=(F||'')['toUpperCase']();return void(W[X]&&(console['log'](a0L[bd(0x352)](bd(0x167)+W[X])),console[bd(0x238)]()));}const K=J[bd(0x254)](Y=>{const be=bd,Z=be(0x270)===Y[be(0x403)]?a0L[be(0x275)]:be(0x211)===Y[be(0x403)]?a0L[be(0x137)]:a0L['white'];return[a0L[be(0x2da)](Y['id']),Y[be(0x42e)],a0L[be(0x33b)](Y[be(0x2d7)]),String(Y[be(0x40d)]),Y[be(0x2ab)]+be(0x281),Z(Y[be(0x403)])];}),L=[...new Set(J['map'](Y=>Y['country']))];a0ae(F?bd(0x12f)+F[bd(0x372)]():bd(0x30c)+L['length']+bd(0x160)),a0ad(['ID','Name','Country',bd(0x2b5),bd(0x29c),'Status'],K),console[bd(0x238)](),console['log'](a0L['gray']('\x20\x20Start:\x20exam\x20start\x20<id>')),L[bd(0x185)]>-0x720*-0x4+0x2662+-0x42e1&&console[bd(0x238)](a0L['gray'](bd(0x384)));}catch(Y){H[bd(0x224)](bd(0x240)),a0aa(Y[bd(0x2cc)]);}}),B[bb(0x274)](bb(0x17c))[bb(0x1ed)](bb(0x397))[bb(0x15b)](async F=>{const bf=bb;a0a8(bf(0x404)+F);const G=a0Y();if(G)return a0ab(bf(0x23c)+G[bf(0x2a3)][bf(0x251)]+'\x22\x20is\x20already\x20in\x20progress.'),void a0ac('Use\x20\x22exam\x20review\x22\x20to\x20check\x20progress\x20or\x20\x22exam\x20submit\x22\x20to\x20submit.');const H=M();if(!H)return;const J=await a0Q({'message':a0L[bf(0x2da)](bf(0x278)),'default':!(-0x7c6+0x23d7+-0x3*0x95b),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L[bf(0x275)](K)}}});if(J){console[bf(0x238)]();try{N(-0xb43+-0x1b6d*-0x1+-0x102a,bf(0x230));const {session:K,questions:L}=await H[bf(0x1c6)](F);N(-0x1e11+-0x1*0x105d+0x2e8c*0x1,bf(0x2e3)),await q(-0x125*0xb+-0x17a5+-0x19c*-0x17),N(-0x459+-0x11f7+0x9c*0x25,'Preparing\x20exam\x20environment...'),await q(-0x125d+-0xbee+0x25*0xd7),N(-0x13f+0x2*-0x92a+0x1*0x13ed,bf(0x3b5)),await q(-0x768+0x521*-0x3+0x1761),a0Z({'session':K,'questions':L,'answers':{}}),N(-0x203e+-0x439*-0x1+0x1c69,'Ready!'),console[bf(0x238)](),console['log'](),a0ae(K[bf(0x251)]),a0af(bf(0x2b5),String(K[bf(0x40d)])),a0af(bf(0x29c),K[bf(0x2ab)]+bf(0x321)),a0af(bf(0x366),K[bf(0x2d7)]),O(),L['length']>-0x8f5*0x3+0x2586+-0xaa7&&U(L[0x53c+0x1ebf+-0x23fb]);}catch(Q){console[bf(0x238)](),a0aa(Q[bf(0x2cc)]);}}}),B[bb(0x274)](bb(0x39a))[bb(0x1ed)](bb(0x13d))['action'](async F=>{const bg=bb;a0a8(bg(0x18b)+(F||bg(0x1db)));const {refetchQuestionDataIfStale:G}=await import('../lib/exam-state.js');await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,-0x19c5+0x10*-0x14e+0x13*0x275),K=H[bg(0x265)][bg(0x294)](L=>L[bg(0x16f)]===J);if(!K)return void a0aa(bg(0x410)+F+'\x20not\x20found\x20(1-'+H[bg(0x265)][bg(0x185)]+').');H[bg(0x347)]=J,a0Z(H),U(K,H['answers'][J]);}else{a0ae(''+H['session'][bg(0x251)]);const L=Object[bg(0x2f4)](H[bg(0x261)])[bg(0x185)];a0af(bg(0x19d),L+'/'+H[bg(0x2a3)]['questionCount']+bg(0x2ae)),console[bg(0x238)]();for(const Q of H['questions']){const V=H[bg(0x261)][Q[bg(0x16f)]],W=V?a0L[bg(0x275)]('['+V+']'):a0L[bg(0x352)](bg(0x188)),X=Q['category']?a0L[bg(0x352)]('\x20['+Q[bg(0x425)]+']'):'';console[bg(0x238)]('\x20\x20'+W+'\x20'+a0L[bg(0x2da)]('Q'+Q[bg(0x16f)])+X+'\x20'+a0L[bg(0x352)](Q[bg(0x3c0)][bg(0x419)](-0x29*0xc9+-0x18fc+-0x7*-0x82b,0x16f3+-0xb6*-0x2b+0x1*-0x3549))+(Q[bg(0x3c0)][bg(0x185)]>0x1071+-0x230b*-0x1+-0x3340?'...':''));}console['log']();}}else a0aa(bg(0x130));}),B[bb(0x274)](bb(0x34e))[bb(0x1ed)](bb(0x2ba))[bb(0x15b)](F=>{const bh=bb;a0a8(bh(0x381)+(F||''));const G=a0Y();if(!G)return void a0aa(bh(0x335));const H=G[bh(0x265)][bh(0x185)],J=F?parseInt(F,-0x283*0x3+-0x8aa*-0x4+0x1b15*-0x1):G[bh(0x347)]||-0x894*0x4+0x95*-0x9+0x278e;if(Number[bh(0x415)](J)||J<-0x1e*0xaa+-0x1f17*0x1+-0x51a*-0xa||J>H)return void a0aa(bh(0x2f0)+H+'.');const K=j(G,J);console[bh(0x238)](),K?console[bh(0x238)](a0L[bh(0x137)]('\x20\x20★\x20Q'+J+bh(0x324))):console[bh(0x238)](a0L[bh(0x352)](bh(0x178)+J+bh(0x2cd)));const L=Array[bh(0x1cf)](G[bh(0x2f1)])?G[bh(0x2f1)]:[];L['length']>-0x1c04+-0x1*0xabc+0x26c0&&console[bh(0x238)](a0L[bh(0x352)](bh(0x408)+L[bh(0x254)](Q=>'Q'+Q)[bh(0x2d0)](',\x20'))),console[bh(0x238)](a0L[bh(0x352)]('\x20\x20See\x20all\x20flagged\x20questions\x20in:\x20')+a0L[bh(0x2da)]('exam\x20review')),console[bh(0x238)]();}),B['command'](bb(0x241))[bb(0x1ed)]('Remove\x20review\x20flag\x20from\x20a\x20question')[bb(0x15b)](F=>{const bi=bb;a0a8(bi(0x239)+(F||''));const G=a0Y();if(!G)return void a0aa(bi(0x335));const H=G[bi(0x265)]['length'],J=F?parseInt(F,0x1*-0x17fc+-0x5*-0x278+0x41*0x2e):G[bi(0x347)]||0x773+-0x3aa*-0x9+-0x286c;Number[bi(0x415)](J)||J<0xb*-0x119+-0x2cc*-0x3+0x3b0||J>H?a0aa('Invalid\x20question\x20number.\x20Use\x201..'+H+'.'):D(G,J)?(j(G,J),console[bi(0x238)](),console['log'](a0L[bi(0x352)](bi(0x178)+J+bi(0x2cd))),console[bi(0x238)]()):console[bi(0x238)](a0L['gray'](bi(0x371)+J+bi(0x3d1)));}),B[bb(0x274)]('next')['description'](bb(0x3c9))[bb(0x15b)](()=>{const bj=bb;a0a8(bj(0x2f8));const F=a0Y();if(!F)return void a0aa(bj(0x335));F[bj(0x265)][bj(0x22f)](K=>!F['answers'][K[bj(0x16f)]]);const G=F[bj(0x347)]||0xe4f*0x2+-0x1c6e+-0x2f,H=Math[bj(0x3dd)](G+(0x1805+-0x17b0+-0x54),F[bj(0x265)][bj(0x185)]);F[bj(0x347)]=H,a0Z(F);const J=F[bj(0x265)][H-(0x2145+0x19*0xff+-0x3a2b)];U(J,F['answers'][J['number']]);}),B[bb(0x274)](bb(0x12d))[bb(0x1ed)]('Go\x20to\x20previous\x20question')[bb(0x15b)](()=>{const bk=bb;a0a8(bk(0x2b1));const F=a0Y();if(!F)return void a0aa('No\x20exam\x20in\x20progress.');const G=F[bk(0x347)]||0x20*0x116+0xa*0x163+0x5*-0x9b9,H=Math[bk(0x320)](G-(-0x1c83+-0x2529+0x41ad),-0x13a2+0x5ed*-0x3+-0x1*-0x256a);F[bk(0x347)]=H,a0Z(F);const J=F['questions'][H-(0x1d45+-0x2af*-0xb+0x3ac9*-0x1)];U(J,F[bk(0x261)][J[bk(0x16f)]]);}),B[bb(0x274)]('help')[bb(0x1ed)]('Eliminate\x20one\x20wrong\x20option\x20(limited\x20uses)')[bb(0x15b)](async()=>{const bl=bb;a0a8('exam\x20help');const F=a0Y();if(!F)return void a0aa(bl(0x335));const G=R(F),H=F[bl(0x347)]||0x3*0xb47+0x422*-0x1+-0x3*0x9e6,J=G['perQ'][H]||0x8eb*-0x1+-0x8*-0x2a2+-0xc25,K=G[bl(0x34d)][H]||[],L=F['questions'][bl(0x294)](W=>W[bl(0x16f)]===H);if(!L)return;if(J>=0x1*0x23d+-0x2612+0x23d7)return console[bl(0x238)](),console[bl(0x238)](a0L[bl(0x137)](bl(0x159))),console['log'](a0L[bl(0x352)](bl(0x357))),console[bl(0x238)](),void U(L,F[bl(0x261)][L[bl(0x16f)]]);const Q=['A','B','C','D'][bl(0x266)](W=>!K['includes'](W));if(Q['length']<=-0x1264+0x1f36+-0x334*0x4)return console['log'](),console[bl(0x238)](a0L['yellow'](bl(0x332))),console['log'](),void U(L,F[bl(0x261)][L[bl(0x16f)]]);if(G[bl(0x1b6)]>=G[bl(0x320)]){const W=G['max']>=0x14*0x17d+0xf86+-0x3b*0xc4,X=0x878+-0x6b1*-0x4+-0x91*0x3e-G['max'];return void(W?(console[bl(0x238)](),console[bl(0x238)](a0L['gray']('\x20\x20All\x20help\x20used\x20('+G[bl(0x1b6)]+'/'+G['max']+bl(0x1e4))),console[bl(0x238)]()):(console[bl(0x238)](),console[bl(0x238)](a0L[bl(0x137)](bl(0x168)+G[bl(0x1b6)]+'/'+G['max'])),console[bl(0x238)](a0L[bl(0x2da)](bl(0x358))+a0L['bold'][bl(0x137)](bl(0x2d1))+a0L['gray'](bl(0x27e)+X+bl(0x341))),console[bl(0x238)]()));}const V=Y=>{const bm=bl;K[bm(0x203)](Y),G['eliminated'][H]||(G['eliminated'][H]=[]),G[bm(0x34d)][H]=K,G['perQ'][H]=J+(0x49*0x56+0x1412+0x3*-0xedd),G[bm(0x1b6)]++,F[bm(0x219)]=G['used'],F[bm(0x38f)]=G['max'],F[bm(0x32c)]=G[bm(0x3e0)],F[bm(0x1e0)]=G[bm(0x34d)],F[bm(0x414)]||(F[bm(0x414)]=[]),F[bm(0x414)][bm(0x203)]({'ts':new Date()[bm(0x2fa)](),'q':H,'type':'help_used','result':bm(0x231)+Y}),a0Z(F),console['log'](),console[bm(0x238)](a0L['yellow'](bm(0x31f)+Y+'\x20eliminated!')+a0L['gray']('\x20\x20(help\x20'+G[bm(0x1b6)]+'/'+G[bm(0x320)]+')')),U(L,F[bm(0x261)][L[bm(0x16f)]]);};if(bl(0x40f)===F[bl(0x2a3)][bl(0x37c)]&&L['answer'])(Y=>{const bn=bl,Z=Q['filter'](a0=>a0!==Y&&!K[bn(0x1d1)](a0));0x1a8+-0x15e2+-0x35f*-0x6!==Z[bn(0x185)]&&V(Z[Math['floor'](Math[bn(0x30a)]()*Z[bn(0x185)])]);})(L[bl(0x3d8)]);else{const Y=a0W()[bl(0x1ba)]||bl(0x2fb),Z=F[bl(0x2a3)]?.['token']||'';try{const a0={};a0[bl(0x25b)]=bl(0x399),a0[bl(0x31d)]=bl(0x181);const a1={};a1[bl(0x316)]=Z,a1[bl(0x398)]=H,a1['eliminated']=K;const a2=await fetch(Y+bl(0x25d)+F['session'][bl(0x37c)]+bl(0x438),{'method':bl(0x21a),'headers':a0,'body':JSON[bl(0x2d3)](a1),'signal':AbortSignal['timeout'](0x7d5*0x1+0x192+-0x1*-0xa21)}),a3=await a2[bl(0x1cb)](),a4=a3?.[bl(0x198)]?.[bl(0x28f)];a4&&['A','B','C','D']['includes'](a4)?V(a4):(console[bl(0x238)](),console[bl(0x238)](a0L['gray']('\x20\x20Server\x20did\x20not\x20return\x20a\x20valid\x20option.\x20Try\x20again.')));}catch{console['log'](),console[bl(0x238)](a0L['gray']('\x20\x20Could\x20not\x20reach\x20server\x20for\x20help.\x20Check\x20your\x20connection.'));}}}),B[bb(0x274)]('more-help')[bb(0x1ed)](bb(0x3b9))[bb(0x15b)](()=>{const bo=bb;a0a8(bo(0x227));const F=a0Y();if(!F)return void a0aa(bo(0x335));const G=R(F),H=bo(0x40f)===F[bo(0x2a3)]['examId']?0x1*-0x1b5+0x28*0xf5+-0x1*0x248b:0x35*-0xa9+0x4*-0x99d+0x498f*0x1;if(G['max']>=H)return void console[bo(0x238)](a0L[bo(0x352)](bo(0x1d0)));if(G[bo(0x1b6)]<G['max'])return void console[bo(0x238)](a0L['gray']('\x20\x20You\x20still\x20have\x20'+(G[bo(0x320)]-G[bo(0x1b6)])+'\x20helps\x20remaining.\x20Use\x20them\x20first!'));const J=H-G[bo(0x320)];F[bo(0x38f)]=H,a0Z(F),console[bo(0x238)](),console[bo(0x238)](a0L['green'](bo(0x273)+J+bo(0x20c)+J+'/'+H+bo(0x1d3))),console['log'](a0L[bo(0x352)](bo(0x26e))),console[bo(0x238)]();}),B['command'](bb(0x364))[bb(0x1ed)]('Answer\x20question\x20N\x20(A/B/C/D\x20for\x20MCQ,\x20ICOA{flag}\x20for\x20practical)')['action'](async(F,G)=>{const bq=bb,H=G['join']('\x20');a0a8('exam\x20answer\x20'+F+'\x20'+H);const J=a0Y();if(!J)return void a0aa('No\x20exam\x20in\x20progress.\x20Use\x20\x22exam\x20start\x20<id>\x22\x20to\x20begin.');if(!(function(){const bp=a0B,Z=a0a1();if(!Z)return!(-0x1*-0xd8b+0x1d48+-0x2ad3);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object[bp(0x2f4)](a0[bp(0x261)])[bp(0x185)];bp(0x40f)===a0[bp(0x2a3)][bp(0x37c)]||0x7*0x517+0x1*0x1763+-0x3b04===a1?(a0a0(),a0ab(bp(0x22e)),a0ac(bp(0x1b8))):(a0aa(bp(0x232)),a0ac(bp(0x413)));}return!(-0xb99+-0x5*0x369+0x1ca7);}return!(0xa2*0x1+-0x33*-0x59+0x1*-0x125d);}()))return;const K=parseInt(F,-0x7d3*-0x3+-0x1*-0x477+-0x1be6*0x1),L=J[bq(0x265)][bq(0x294)](Z=>Z['number']===K);if(!L)return void a0aa(bq(0x410)+F+'\x20not\x20found\x20(1-'+J[bq(0x265)][bq(0x185)]+').');let Q;if(bq(0x16c)===L['type']||'ctf4ai'===L[bq(0x3a8)]||bq(0x325)===L[bq(0x3a8)]||L[bq(0x129)]&&!L[bq(0x129)]['A']&&!L[bq(0x129)]['B']){if(Q=H[bq(0x33d)](),/^submit\s+/i['test'](Q)&&(Q=Q[bq(0x24a)](/^submit\s+/i,'')['trim']()),Q=Q['replace'](/^["'`]+|["'`]+$/g,'')[bq(0x33d)](),!Q)return void a0aa('Please\x20provide\x20your\x20flag:\x20exam\x20answer\x20<n>\x20ICOA{your_flag}');if(/^[A-Da-d]$/[bq(0x222)](Q))return a0aa('Q'+K+bq(0x14c)),void console[bq(0x238)](a0L[bq(0x352)](bq(0x343))+a0L['green'](bq(0x15c)+K+bq(0x1b3)));}else{if(Q=H['toUpperCase'](),!['A','B','C','D'][bq(0x1d1)](Q))return void a0aa(bq(0x2a6));}if(bq(0x40f)===J[bq(0x2a3)][bq(0x37c)]&&0x19fe+0x16*-0x149+0x2*0x125===K&&-0x84e*0x2+0x2*0x751+0x17*0x16===(R(J)[bq(0x3e0)][-0xca1*-0x3+0x21a9+-0x478a]||0xf11*-0x1+0x284+0xc8d))return console[bq(0x238)](),console[bq(0x238)](a0L[bq(0x137)](bq(0x134))+a0L[bq(0x190)][bq(0x137)](bq(0x1b0))+a0L[bq(0x137)]('\x20first\x20to\x20see\x20what\x20it\x20does!')),console[bq(0x238)](a0L['gray']('\x20\x20This\x20question\x20requires\x20you\x20to\x20use\x20help\x20before\x20answering.')),void console[bq(0x238)]();const V=J[bq(0x261)][K];J['interactions']||(J[bq(0x414)]=[]),J[bq(0x414)]['push']({'ts':new Date()[bq(0x2fa)](),'q':K,'type':V?bq(0x29b):bq(0x3f0),'input':Q,'result':V?bq(0x3f2)+V:'new'}),J[bq(0x261)][K]=Q,J[bq(0x347)]=K,a0Z(J),console['log'](a0L['gray']('\x20\x20\x20\x20✓\x20saved'));const W=J[bq(0x2a3)][bq(0x316)];if(W&&bq(0x40f)!==J[bq(0x2a3)][bq(0x37c)]){const Z=(a0W()[bq(0x1ba)]||bq(0x2fb))+'/api/icoa/exams/'+J[bq(0x2a3)]['examId']+bq(0x165),a0={};a0[bq(0x25b)]=bq(0x399);const a1={};a1[bq(0x316)]=W,a1['question']=K,a1[bq(0x3d8)]=Q,fetch(Z,{'method':bq(0x21a),'headers':a0,'body':JSON[bq(0x2d3)](a1),'signal':AbortSignal[bq(0x1e2)](0x98a+-0x2316+0x2d14)})[bq(0x437)](()=>{});}const X=Object['keys'](J['answers'])[bq(0x185)],Y=J['session'][bq(0x40d)];if(a0a9('Q'+K+':\x20'+Q+bq(0x34f)+X+'/'+Y+bq(0x417)),bq(0x40f)===J[bq(0x2a3)][bq(0x37c)]&&L[bq(0x3d8)]){const a2=[bq(0x3da),bq(0x36f),bq(0x179),bq(0x26d),bq(0x388)],a3=[bq(0x37b),bq(0x2fd),bq(0x411)],a4=Q===L[bq(0x3d8)]?a2:a3,a5=a4[Math[bq(0x283)](Math['random']()*a4[bq(0x185)])];console['log'](a0L['gray']('\x20\x20\x20\x20·\x20'+a5));}if(K<J[bq(0x265)][bq(0x185)]){const a6=J[bq(0x265)][K];J[bq(0x347)]=a6[bq(0x16f)],a0Z(J),U(a6,J[bq(0x261)][a6[bq(0x16f)]]);}else X>=J[bq(0x265)][bq(0x185)]&&(console[bq(0x238)](),console[bq(0x238)](a0L[bq(0x275)][bq(0x190)]('\x20\x20🎉\x20All\x20questions\x20answered!')),console['log'](),'demo-free'===J[bq(0x2a3)][bq(0x37c)]?(console[bq(0x238)](a0L[bq(0x2da)](bq(0x40c))+a0L['bold'][bq(0x33b)](bq(0x18a))+a0L['white'](bq(0x3d4))),console[bq(0x238)]()):console[bq(0x238)](a0L[bq(0x2da)]('\x20\x20Use:\x20exam\x20review\x20·\x20exam\x20submit')));}),B[bb(0x274)]('review')[bb(0x1ed)](bb(0x16d))['action'](()=>{const br=bb;a0a8(br(0x15a));const F=a0Y();if(!F)return void a0aa(br(0x335));a0ae(br(0x3e9)+F['session'][br(0x251)]),O(),console[br(0x238)]();let G='\x20\x20';const H=Array[br(0x1cf)](F[br(0x2f1)])?F[br(0x2f1)]:[];for(const Q of F[br(0x265)]){const V=F['answers'][Q['number']],W=H[br(0x1d1)](Q[br(0x16f)]),X=W?'★':'\x20';G+=V?W?a0L[br(0x190)]['yellow']('Q'+String(Q[br(0x16f)])['padStart'](-0x1*-0x1b92+-0x1*0x21+-0x1*0x1b6f)+X+'['+V+']\x20'):a0L[br(0x275)]('Q'+String(Q['number'])['padStart'](-0x60a+0x175b+-0x114f)+'\x20['+V+']\x20\x20'):W?a0L[br(0x190)][br(0x137)]('Q'+String(Q[br(0x16f)])[br(0x1f7)](-0x5*0x533+0x1*-0x58f+-0x194*-0x14)+X+br(0x183)):a0L['yellow']('Q'+String(Q[br(0x16f)])['padStart'](0x1*0x1fee+-0x1*-0xd7d+-0x2d69)+br(0x171)),Q['number']%(0x2*-0xd75+0xaa4+-0x1*-0x104c)==0x2*-0x989+0x212*0x3+0xcdc&&(console[br(0x238)](G),G='\x20\x20');}G[br(0x33d)]()&&console[br(0x238)](G);const J=Object[br(0x2f4)](F['answers'])[br(0x185)],K=F[br(0x2a3)][br(0x40d)],L=K-J;if(console[br(0x238)](),a0af(br(0x163),a0L[br(0x275)][br(0x190)](J+'/'+K)),L>-0x2426+-0x151*-0xa+0x4*0x5bf){const Y=F['questions'][br(0x266)](Z=>!F['answers'][Z[br(0x16f)]])[br(0x254)](Z=>Z[br(0x16f)])[br(0x2d0)](',\x20');a0af(br(0x38c),a0L[br(0x137)](L+br(0x279)+Y+')'));}H[br(0x185)]>0x26f0+-0x1b56+-0x1b*0x6e&&a0af(br(0x13a),a0L['bold']['yellow']('★\x20'+H[br(0x185)])+a0L[br(0x352)]('\x20('+H[br(0x254)](Z=>'Q'+Z)[br(0x2d0)](',\x20')+')')),console[br(0x238)](),H[br(0x185)]>0x2511+-0x8f1+-0x1c20&&console[br(0x238)](a0L[br(0x352)](br(0x19a))+a0L['white'](br(0x18b)+H[0x1d0a+0x1eaf*0x1+-0x3bb9])),console[br(0x238)](a0L[br(0x352)](br(0x23a))+a0L[br(0x190)][br(0x33b)](br(0x18a))+a0L[br(0x352)](br(0x28c)));}),B[bb(0x274)](bb(0x36a))['description'](bb(0x15e))[bb(0x15b)](async J=>{const bs=bb;a0a8(bs(0x23d)+(J||''));const K=a0Y();if(K&&bs(0x1bc)===J&&(K['_submitConfirmed']=!(0x5e1+0x53*-0x3d+0xde6*0x1),a0Z(K)),!K)return void a0aa(bs(0x335));const L=Object['keys'](K[bs(0x261)])[bs(0x185)],Q=K[bs(0x2a3)][bs(0x40d)],V=Q-L;if(-0x43c+-0x1bf+0x5fb===L){const X=a0a1(),Y=X&&new Date()>=X;return void(bs(0x40f)===K[bs(0x2a3)][bs(0x37c)]||Y?(a0a0(),a0ab(bs(0x3a2)),a0ac(bs(0x1b8))):(a0ab(bs(0x344)),a0ac('Answer\x20some\x20questions\x20first:\x20exam\x20q\x201')));}if(bs(0x40f)!==K[bs(0x2a3)][bs(0x37c)]){const Z=!(-0x520+0x1a9*0x1+0x1*0x377)===K[bs(0x3e1)],a0=a0a1(),a1=!!(a0&&new Date()>=a0);if(!Z&&!a1){if(console[bs(0x238)](),console['log'](a0L[bs(0x148)](bs(0x3e4))),console[bs(0x238)](a0L[bs(0x190)][bs(0x148)](bs(0x225))),console[bs(0x238)](a0L['red'](bs(0x3e4))),console[bs(0x238)](),console['log'](a0L[bs(0x2da)](bs(0x3b3)+a0L['bold'][bs(0x275)](L+'/'+Q)+bs(0x235))),V>-0x1*0x14e+-0x779*0x1+0x8c7){const a3=K[bs(0x265)][bs(0x266)](a4=>!K['answers'][a4[bs(0x16f)]])['map'](a4=>'Q'+a4[bs(0x16f)])[bs(0x2d0)](',\x20');console[bs(0x238)](a0L[bs(0x137)]('\x20\x20'+V+bs(0x38b)+a3));}const a2=Array[bs(0x1cf)](K[bs(0x2f1)])?K[bs(0x2f1)]:[];return a2[bs(0x185)]>0x14*0xec+0x7af*-0x1+0x1*-0xac1&&console['log'](a0L[bs(0x137)](bs(0x41d)+a2[bs(0x185)]+'\x20still\x20flagged\x20for\x20review:\x20'+a2['map'](a4=>'Q'+a4)['join'](',\x20'))),console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x2da)](bs(0x2ee))+a0L[bs(0x190)]['red'](bs(0x277))+a0L[bs(0x2da)](bs(0x34b))),console[bs(0x238)](),console[bs(0x238)](a0L['bold'][bs(0x2da)](bs(0x363))+a0L[bs(0x190)][bs(0x33b)](bs(0x428))),console[bs(0x238)](a0L[bs(0x2da)](bs(0x216))+a0L[bs(0x33b)](bs(0x15a))+a0L[bs(0x352)]('\x20\x20or\x20\x20')+a0L['cyan'](bs(0x229))),void console[bs(0x238)]();}Z&&(delete K[bs(0x3e1)],a0Z(K));}if(console[bs(0x238)](),bs(0x40f)===K[bs(0x2a3)][bs(0x37c)]){try{N(0xb5*0x21+-0x1*-0x1889+-0x16*0x22d,a0ai(bs(0x1dd))),await q(0x10e9+-0x1*0x8bb+-0x6*0x12b);let a4=-0x3d*0xa+0x1ba+-0x18*-0x7;const a5=[],a6={};for(const ai of K[bs(0x265)]){const aj=ai['category']||bs(0x422),ak={};ak[bs(0x2e8)]=0x0,ak[bs(0x351)]=0x0,(a6[aj]||(a6[aj]=ak),a6[aj][bs(0x351)]++);const al=K[bs(0x261)][ai[bs(0x16f)]];al&&ai['answer']&&al===ai[bs(0x3d8)]?(a4++,a6[aj][bs(0x2e8)]++):a5[bs(0x203)](ai['number']);}a5[bs(0x210)]((am,an)=>am-an),N(-0x1624+-0x2*-0xb3e+0xc,a0ai('complete')),console['log']();const a7=new Date(K[bs(0x2a3)][bs(0x305)])['getTime'](),a8=Math['max'](-0x7fd+0x63*-0x2d+0x1964,Math['round']((Date['now']()-a7)/(-0x19*-0xc1+-0xf41+0x50))),a9=Math['floor'](a8/(-0x37f+-0x1*-0x1e49+-0x1a8e))+'m\x20'+a8%(0x3f0+0xbd4+-0xf88)+'s',aa=[...K[bs(0x265)]],ab={...K[bs(0x261)]},ac=R(K);a0a0();const ad=Math['round'](a4/Q*(-0x165c+0x141d+0x2a3)),ae=a0W(),af={};af[bs(0x25b)]=bs(0x399),(fetch(bs(0x36b),{'method':bs(0x21a),'headers':af,'body':JSON[bs(0x2d3)]({'type':'demo-exam','score':a4,'total':Q,'lang':ae[bs(0x3a3)]||'en','help_used':ac[bs(0x1b6)],'help_max':ac[bs(0x320)],'tokens_used':0x0,'solved':ad>=0x1e98+-0x1ba8+-0x2b4?0xcce*-0x1+0x2080+-0x13b1:-0x15dc+-0x3*0x39e+0x20b6,'timestamp':new Date()[bs(0x2fa)](),'interactions':K[bs(0x414)]||[]}),'signal':AbortSignal[bs(0x1e2)](0x17e6+0x1452+-0x14*0x13c)})[bs(0x437)](()=>{}),console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x33b)](bs(0x300))),console[bs(0x238)](),console[bs(0x238)](a0L['bold'][bs(0x2da)](bs(0x2c6))),console['log'](a0L['bold'][bs(0x2da)](bs(0x407))),console[bs(0x238)](a0L[bs(0x190)][bs(0x2da)]('\x20\x20\x20██║██║\x20\x20\x20\x20\x20██║\x20\x20\x20██║███████║')),console['log'](a0L[bs(0x190)]['white'](bs(0x297))),console[bs(0x238)](a0L[bs(0x190)][bs(0x2da)]('\x20\x20\x20██║╚██████╗╚██████╔╝██║\x20\x20██║')),console[bs(0x238)](a0L[bs(0x190)][bs(0x2da)](bs(0x405))),console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x190)]('\x20\x20\x20'+a0ai(bs(0x1c4))+':\x20'+a4+'/'+Q+'\x20('+ad+'%)')),console['log'](a0L['bold'](bs(0x306)+(ad>=-0x1b11+0x190+0x19bd?a0L[bs(0x275)](a0ai(bs(0x377))):a0L['red'](a0ai('notPassed'))))),console[bs(0x238)](a0L['gray'](bs(0x2c8)+a9)),console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x137)](bs(0x131))),console[bs(0x238)](a0L[bs(0x352)](bs(0x2e9))),console[bs(0x238)](),console['log'](a0L[bs(0x33b)](bs(0x300))),await q(-0x46*-0x43+-0x2*-0x132d+0xe*-0x336));const ag=Object['entries'](a6);if(ag[bs(0x185)]>0x1a83+0x121e*-0x2+0x9b9){console[bs(0x238)](),console['log'](a0L[bs(0x190)][bs(0x2da)](bs(0x18e)));const am=-0x32*0xae+0x2487+-0x281*0x1;for(const [an,ao]of ag){const ap=ao[bs(0x351)]>-0x2*0x14b+0x2677+-0x23e1?Math['round'](ao[bs(0x2e8)]/ao['total']*(0x338+-0x1315+0x1041)):-0x1103+-0x27*-0x12+0xe45,aq=ao[bs(0x351)]>-0x71d+0x2*-0xb7d+0x1*0x1e17?Math[bs(0x302)](ao['correct']/ao[bs(0x351)]*am):0x39d*0x7+0x163+-0x2*0xd57,ar=am-aq,as=ap>=-0x3c1*0x4+-0x86*0x2+0x10*0x106?a0L[bs(0x275)]:ap>=0x19*-0x44+0x2534*-0x1+-0x2*-0x1605?a0L[bs(0x137)]:a0L['red'],at=as('█'[bs(0x2d8)](aq))+a0L[bs(0x352)]('░'[bs(0x2d8)](ar));console[bs(0x238)](bs(0x22c)+a0L[bs(0x2da)](an[bs(0x369)](0x9eb+0xcc+-0xaa3*0x1))+'\x20'+at+'\x20\x20'+as(ao[bs(0x2e8)]+'/'+ao['total'])+a0L[bs(0x352)]('\x20('+ap+'%)'));}console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x33b)](bs(0x1da)));}const ah=a0a4(a4,Q);if(a4===ah[bs(0x293)]&&ah['attempts']>-0x1e7e+-0x24b6+-0xd71*-0x5&&a4>-0x1171+-0x515*-0x2+-0x1b*-0x45&&(console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x190)]['green'](bs(0x1a0)))),a5[bs(0x185)]>0x2bc*0x1+-0xd5*0x18+0x2*0x89e){const au=aa[bs(0x266)](av=>a5[bs(0x1d1)](av[bs(0x16f)]))[bs(0x254)](av=>({...av}));a0a5(au);}else a0a7();if(await q(0x4fd*0x5+0x915+-0xb27*0x2),a5[bs(0x185)]>-0x7*0x2f+0x5*-0x174+0x88d){console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x137)]('\x20\x20'+a5[bs(0x185)]+'\x20'+a0ai(bs(0x2ec)))),console[bs(0x238)]();for(const av of a5){const aw=aa[bs(0x294)](az=>az[bs(0x16f)]===av);if(!aw)continue;const ax=ab[av],ay=aw[bs(0x3d8)];console[bs(0x238)](a0L['white'](bs(0x371)+av+'.\x20'+aw[bs(0x3c0)])),ax?console[bs(0x238)](a0L[bs(0x148)]('\x20\x20\x20\x20'+a0ai(bs(0x2f5))+':\x20'+ax+'.\x20'+aw[bs(0x129)][ax])):console[bs(0x238)](a0L['yellow']('\x20\x20\x20\x20'+a0ai(bs(0x2f5))+bs(0x360))),ay&&console[bs(0x238)](a0L[bs(0x275)](bs(0x22c)+a0ai(bs(0x2e8))+':\x20'+ay+'.\x20'+aw[bs(0x129)][ay])),aw[bs(0x142)]&&console[bs(0x238)](a0L[bs(0x352)]('\x20\x20\x20\x20→\x20'+aw[bs(0x142)])),console[bs(0x238)]();}}else console['log'](),console[bs(0x238)](a0L['green']('\x20\x20'+a0ai(bs(0x379))));await q(-0x160a+-0x76*0x5+0x2028),console[bs(0x238)](),console['log'](a0L['cyan']('\x20\x20─────────────────────────────────────────────')),console['log'](a0L[bs(0x2da)]('\x20\x20'+a0ai(bs(0x3aa))+'\x20')+a0L['bold'][bs(0x275)](bs(0x16c))+a0L['gray']('\x20—\x20'+a0ai(bs(0x3cc)))),console[bs(0x238)](a0L[bs(0x352)]('\x20\x20'+a0ai(bs(0x1ae)))),console[bs(0x238)](a0L[bs(0x33b)](bs(0x1da))),console[bs(0x238)]();}catch(az){console['log'](),a0aa(az[bs(0x2cc)]);}return;}const W=K[bs(0x2a3)][bs(0x316)];try{let aA;if(N(-0x154e+-0x1ba3+0x30f1,bs(0x329)),W){const aK={};aK[bs(0x25b)]=bs(0x399);const aL={};aL[bs(0x16c)]=0x0,aL[bs(0x156)]=0x0;const aM=a0W()['ctfdUrl']||bs(0x2fb),aN=await fetch(aM+bs(0x25d)+K[bs(0x2a3)][bs(0x37c)]+bs(0x3ef),{'method':bs(0x21a),'headers':aK,'body':JSON[bs(0x2d3)]({'token':W,'answers':K[bs(0x261)],'interactions':K[bs(0x414)]||[],'aiUsage':K[bs(0x3f7)]||aL,'bookmarks':K[bs(0x2f1)]||[]}),'signal':AbortSignal[bs(0x1e2)](0x1*-0x3ca7+0x5614+0x1*0x212b)});if(!aN['ok']){const aO=await aN['json']()[bs(0x437)](()=>({'message':bs(0x259)}));throw new Error(aO[bs(0x2cc)]||'Submit\x20failed');}aA=(await aN[bs(0x1cb)]())[bs(0x198)];}else{const aP=M();if(!aP)return;aA=await aP[bs(0x1b5)](K[bs(0x2a3)]['examId'],K['answers']);}N(0x33f*0xa+-0x49*-0x3a+0x30ce*-0x1,bs(0x295)),await q(0x2*0x3d6+-0x13e*0x11+0x2*0x74f),N(0x20ef*0x1+-0x12*-0x199+0x1*-0x3d4d,'Complete!'),console[bs(0x238)]();const aB={};aB[bs(0x16c)]=0x0,aB['ctf4ai']=0x0;const aC={'answered':Object[bs(0x2f4)](K[bs(0x261)])[bs(0x185)],'total':K[bs(0x2a3)][bs(0x40d)],'bookmarks':Array[bs(0x1cf)](K[bs(0x2f1)])?K[bs(0x2f1)][bs(0x185)]:0xb77+0xf*0x6d+-0x11da,'help':R(K),'aiUsage':K['aiUsage']||aB,'interactions':(K[bs(0x414)]||[])[bs(0x185)],'durationMin':K[bs(0x2a3)][bs(0x2ab)]||0x3*-0xa0c+0x20b7+-0x293,'confirmedAt':K[bs(0x2a3)][bs(0x323)]||K[bs(0x2a3)][bs(0x305)],'examId':K['session'][bs(0x37c)]};a0a0();const aD=Math[bs(0x320)](0x17*0x177+-0x6d*-0x33+0x1bb4*-0x2,Math[bs(0x302)]((Date[bs(0x1be)]()-new Date(aC['confirmedAt'])['getTime']())/(-0x758*-0x1+0x1f6e+-0x116f*0x2))),aE=Math[bs(0x283)](aD/(-0x1*0x1279+0x4d5+-0x250*-0x6)),aF=aD%(-0x48d+-0x16dd+0x1ba6);console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x33b)](bs(0x39c))),console['log'](),console[bs(0x238)](a0L['bold'][bs(0x2da)](bs(0x2c6))),console['log'](a0L['bold']['white'](bs(0x407))),console[bs(0x238)](a0L[bs(0x190)][bs(0x2da)](bs(0x13f))),console['log'](a0L[bs(0x190)][bs(0x2da)](bs(0x297))),console[bs(0x238)](a0L[bs(0x190)][bs(0x2da)](bs(0x18d))),console[bs(0x238)](a0L['bold']['white'](bs(0x405))),console[bs(0x238)]();const aG=aA[bs(0x377)]?a0L[bs(0x275)][bs(0x190)](bs(0x368)):a0L[bs(0x137)]['bold'](bs(0x3fe));console[bs(0x238)](aG),console[bs(0x238)](),console['log'](a0L[bs(0x2da)](bs(0x1dc))),console[bs(0x238)](a0L['white'](bs(0x12a))),console[bs(0x238)](a0L[bs(0x2da)](bs(0x304))),console['log'](),console[bs(0x238)](a0L[bs(0x33b)]('\x20\x20─────────────────────────────────────────────')),console[bs(0x238)](),console['log'](a0L[bs(0x190)][bs(0x2da)](bs(0x154)));const aH=aC[bs(0x351)]-aC[bs(0x12e)];console[bs(0x238)](bs(0x22c)+a0L[bs(0x352)](bs(0x250))+a0L[bs(0x2da)](aC['answered']+'/'+aC[bs(0x351)])+(aH>-0x18b0+-0x1e2b*-0x1+-0x57b?a0L[bs(0x352)](bs(0x2b0)+aH+bs(0x406)):'')),console[bs(0x238)](bs(0x22c)+a0L[bs(0x352)](bs(0x2a1))+a0L['white'](aE+'m\x20'+aF+'s')+a0L[bs(0x352)](bs(0x3bc)+aC[bs(0x374)]+bs(0x33c))),aC[bs(0x2f1)]>-0xd4f+-0xb3*0xd+0x1666&&console[bs(0x238)](bs(0x22c)+a0L['gray'](bs(0x249))+a0L[bs(0x137)]('★\x20'+aC[bs(0x2f1)])),console[bs(0x238)]();const aI=aA['categoryStats'];if(aI&&Object['keys'](aI)[bs(0x185)]>=0x233*-0x5+0x2*0x10d5+-0x16a9){const aQ=Object[bs(0x26b)](aI)[bs(0x266)](([,aV])=>aV[bs(0x351)]>0x13e0+-0x1a77+0x697*0x1)[bs(0x254)](([aV,aW])=>({'cat':aV,'pct':aW[bs(0x2e8)]/aW[bs(0x351)]}))[bs(0x210)]((aV,aW)=>aW['pct']-aV['pct']),aR=Math['min'](0x37d+0x1*-0x1a36+0x211*0xb,Math[bs(0x1b7)](aQ['length']/(0x1*0x221a+-0x10e6+-0x1131))),aS=Math[bs(0x3dd)](-0x2530+0x10c1+-0x1*-0x1471,Math[bs(0x1b7)](aQ[bs(0x185)]/(-0x1881+-0x1cd*0x15+0x3e55))),aT=aQ[bs(0x28e)](0x3*0xc4b+-0xfa*-0x26+-0x49fd,aR)[bs(0x254)](aV=>aV['cat']),aU=aQ[bs(0x28e)](-aS)[bs(0x254)](aV=>aV[bs(0x373)]);aT['some'](aV=>aU[bs(0x1d1)](aV))||(console['log'](a0L[bs(0x190)]['white']('\x20\x20Directional\x20feedback')),console[bs(0x238)]('\x20\x20\x20\x20'+a0L[bs(0x275)](bs(0x17e))+a0L[bs(0x2da)](aT[bs(0x2d0)](',\x20'))),console[bs(0x238)](bs(0x22c)+a0L['yellow']('Room\x20to\x20grow:\x20\x20\x20')+a0L[bs(0x2da)](aU['join'](',\x20'))),console[bs(0x238)](a0L[bs(0x352)](bs(0x158))),console[bs(0x238)]());}console[bs(0x238)](a0L['bold'][bs(0x2da)](bs(0x1e9))),console[bs(0x238)]('\x20\x20\x20\x20'+a0L[bs(0x352)](bs(0x25a))+a0L[bs(0x2da)](aC[bs(0x1b0)][bs(0x1b6)]+'/'+aC[bs(0x1b0)][bs(0x320)])),console['log'](bs(0x22c)+a0L['gray'](bs(0x39f))+a0L[bs(0x2da)](aC['aiUsage']['ai4ctf']+bs(0x298))+a0L[bs(0x352)](bs(0x2b0))+a0L['white'](aC['aiUsage'][bs(0x156)]+bs(0x282))),console['log'](),console[bs(0x238)](a0L[bs(0x33b)](bs(0x1da))),console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x190)][bs(0x2da)](bs(0x41b))),console['log'](a0L[bs(0x352)](bs(0x2e2))),console[bs(0x238)](a0L[bs(0x352)](bs(0x1f6))+a0L[bs(0x2da)]('demo')+a0L[bs(0x352)]('\x20is\x20free,\x20unlimited\x20practice.')),console[bs(0x238)](a0L[bs(0x352)](bs(0x1a3))+a0L[bs(0x2da)](bs(0x14b))),console[bs(0x238)]();const {showCToBUpgradePrompt:aJ}=await import(bs(0x24b));aJ(aC[bs(0x37c)],aA[bs(0x377)]),console['log'](a0L[bs(0x137)]('\x20\x20ICOA\x202026\x20·\x20Sydney,\x20Australia\x20·\x20Jun\x2027\x20–\x20Jul\x202')),console[bs(0x238)](a0L[bs(0x33b)]['underline'](bs(0x2b2))),console[bs(0x238)](),console[bs(0x238)](a0L[bs(0x33b)]('\x20\x20═════════════════════════════════════════════')),console[bs(0x238)]();}catch(aV){console[bs(0x238)](),a0aa(aV[bs(0x2cc)]);}}),B[bb(0x274)](bb(0x1c3))[bb(0x1ed)](bb(0x144))[bb(0x15b)](async F=>{const bt=bb;a0a8('exam\x20result\x20'+(F||''));const G=M();if(!G)return;if(!F){const J=a0Y();if(!J)return void a0aa(bt(0x17b));F=J[bt(0x2a3)]['examId'];}const H=a0ag(bt(0x2d9));H[bt(0x2b4)]();try{const K=await G['getResult'](F);H[bt(0x337)](bt(0x15d)),console['log'](),a0ae(K[bt(0x251)]),a0af('Score',a0L[bt(0x190)](K[bt(0x1c4)]+'/'+K[bt(0x351)])),a0af(bt(0x1a5),a0L[bt(0x190)](K['percentage']+'%')),a0af(bt(0x1d8),K['passed']?a0L[bt(0x275)][bt(0x190)](bt(0x1cc)):a0L[bt(0x148)]['bold'](bt(0x3d0))),a0af(bt(0x3a7),K[bt(0x26a)]),console[bt(0x238)]();}catch(L){H['fail'](bt(0x132)),a0aa(L[bt(0x2cc)]);}}),B[bb(0x274)](bb(0x1ff))['description'](bb(0x296))['action'](async J=>{const bu=bb;a0a8('exam\x20token\x20'+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import(bu(0x3de)),V=K();if(V){const a2=V[bu(0x2a3)][bu(0x316)],a3=a0a1(),a4=!!a2&&a2[bu(0x33d)]()[bu(0x372)]()!==J[bu(0x33d)]()[bu(0x372)](),a5=!!a3&&a3[bu(0x288)]()+(0x13*0x6ebf+-0x26*-0x1372a+-0x1af129)<Date[bu(0x1be)]();if(a4&&a5)return Q(),console[bu(0x238)](),console[bu(0x238)](a0L['gray'](bu(0x3df))),console['log'](),console[bu(0x238)](a0L[bu(0x2da)](bu(0x1b9))+a0L[bu(0x190)][bu(0x33b)](bu(0x2e1)+J)),void console['log']();if(!a2&&J)return V['session']['token']=J[bu(0x33d)](),L(V),console[bu(0x238)](),console[bu(0x238)](a0L[bu(0x275)](bu(0x37d))),console[bu(0x238)](a0L[bu(0x352)](bu(0x3f5))+a0L[bu(0x2da)](bu(0x342))+a0L[bu(0x352)](bu(0x153))+a0L[bu(0x2da)]('exam\x20submit')),console[bu(0x238)](),console['log'](a0L['bold'][bu(0x2da)](bu(0x28b))),console[bu(0x238)](a0L[bu(0x352)](bu(0x2e7))+a0L[bu(0x190)][bu(0x33b)](bu(0x39e))+a0L[bu(0x352)](bu(0x1f1))),console[bu(0x238)](a0L[bu(0x352)](bu(0x2e7))+a0L[bu(0x190)][bu(0x33b)](bu(0x15a))+a0L['gray'](bu(0x2b6))),void console[bu(0x238)]();const a6=Object[bu(0x2f4)](V[bu(0x261)])['length'],a7=V[bu(0x2a3)][bu(0x40d)],a8=a0a1(),a9=a8?Math[bu(0x320)](0x155d*-0x1+-0x10c2+-0x1*-0x261f,Math['round']((a8['getTime']()-Date[bu(0x1be)]())/(0xe3af+0x7*-0x19ee+-0xbc33*-0x1))):null;return console[bu(0x238)](),console[bu(0x238)](a0L[bu(0x137)](bu(0x326))),console[bu(0x238)](),console[bu(0x238)](a0L[bu(0x352)](bu(0x418))+a0L[bu(0x2da)](V['session'][bu(0x251)])),a2&&console[bu(0x238)](a0L[bu(0x352)](bu(0x187))+a0L[bu(0x2da)](a2)+(a2===J?a0L[bu(0x275)]('\x20\x20(same\x20as\x20you\x20just\x20typed)'):a0L['yellow'](bu(0x430)))),console['log'](a0L['gray']('\x20\x20Answers:\x20')+a0L[bu(0x2da)](a6+'/'+a7)),null!==a9&&console['log'](a0L[bu(0x352)](bu(0x3f8))+a0L[bu(0x2da)](a9+'\x20min\x20remaining')),console['log'](),console[bu(0x238)](a0L[bu(0x190)]['white'](bu(0x334))),console['log'](a0L['gray']('\x20\x20\x20\x20→\x20')+a0L[bu(0x190)][bu(0x33b)](bu(0x39e))+a0L[bu(0x352)]('\x20\x20\x20\x20\x20\x20resume\x20at\x20any\x20question')),console[bu(0x238)](a0L[bu(0x352)](bu(0x2e7))+a0L[bu(0x190)]['cyan'](bu(0x15a))+a0L[bu(0x352)](bu(0x2b6))),console[bu(0x238)](a0L['gray'](bu(0x2e7))+a0L['bold']['cyan'](bu(0x18a))+a0L[bu(0x352)](bu(0x3a1))),a2&&a2!==J&&(console['log'](),console['log'](a0L[bu(0x137)](bu(0x260))),console[bu(0x238)](a0L['yellow'](bu(0x355))),console[bu(0x238)](),console[bu(0x238)](a0L[bu(0x352)]('\x20\x20If\x20you\x20need\x20to\x20abandon\x20this\x20session\x20(e.g.\x20expired\x20/\x20wrong\x20paper),')),console[bu(0x238)](a0L[bu(0x352)]('\x20\x20run\x20')+a0L['bold'][bu(0x33b)](bu(0x314))+a0L[bu(0x352)]('\x20to\x20wipe\x20local\x20state,\x20then\x20re-enter\x20the\x20new\x20token.'))),void console[bu(0x238)]();}const {isNativeWindowsCmd:W}=await import(bu(0x1fe));if(!W()&&!a0am()){let aa=!(0x181e+0x2*0xcc7+-0x31ab);try{const ab={};ab['Content-Type']=bu(0x399);const ac=a0W()[bu(0x1ba)]||bu(0x2fb),ad=await fetch(ac+bu(0x3ea),{'method':bu(0x21a),'headers':ab,'body':JSON[bu(0x2d3)]({'token':J[bu(0x33d)](),'deviceHash':a0aj(),'peek':!(0x1fd*0xe+0x93*0x4+0xf11*-0x2)}),'signal':AbortSignal[bu(0x1e2)](0x4*0x7b9+0x65*0x16+-0x140a)});if(ad['ok']){const ae=await ad[bu(0x1cb)]();(ae?.[bu(0x198)]?.[bu(0x2a2)]||'')['endsWith']('-c')&&(aa=!(0x662+-0x1*-0x1077+0x1*-0x16d9));}}catch{}if(!aa)return console[bu(0x238)](),a0ab(bu(0x29f)),console[bu(0x238)](a0L['gray']('\x20\x20→\x20')+a0L[bu(0x190)][bu(0x33b)]('exam\x20setup')),console[bu(0x238)](a0L[bu(0x352)](bu(0x308))+a0L[bu(0x190)][bu(0x33b)](bu(0x229))+a0L['gray'](bu(0x133))),console[bu(0x238)](a0L[bu(0x352)](bu(0x1a8))),void console[bu(0x238)]();}const X={};X['UA']='uk',X['PE']='es',X['CN']='zh',X['AU']='en',X['JP']='ja',X['KR']='ko',X['BR']='pt',X['SA']='ar',X['FR']='fr',X['DE']='de',X['IN']='hi',X['ID']='id',X['TH']='th',X['VN']='vi',X['TR']='tr',X['RU']='ru',X['EG']='ar',X['HT']='ht',X['PH']='en',X['MY']='en',X['MM']='en',X['SG']='en',X['ZA']='en',X['KE']='sw',X['TZ']='sw',X['MO']='zh',X['UZ']='uz',X['GH']='en',X['LA']='lo',X['BD']='bn',X['BI']='fr',X['US']='en',X['UK']='en',X['NZ']='en',X['LK']='si';const Y=X[J[bu(0x33d)]()[bu(0x419)](-0x1*-0x22e6+0x1f9*0x2+0x58*-0x71,0xbe3*0x1+-0x11*-0x1c1+-0x12*0x251)[bu(0x372)]()],Z=a0W(),a0=Z['ctfdUrl']||bu(0x2fb),a1=Y||Z['language']||'en';Y&&Y!==(Z[bu(0x3a3)]||'en')&&a0X({'language':Y}),console[bu(0x238)](),N(-0xff5+-0x17e8+0x41*0x9d,bu(0x166));try{const af={};af[bu(0x25b)]=bu(0x399);const ag=await fetch(a0+bu(0x3ea),{'method':bu(0x21a),'headers':af,'body':JSON[bu(0x2d3)]({'token':J['trim'](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal[bu(0x1e2)](-0x13*0x283+-0x1*-0x30aa+-0x1*-0x261f)});if(!ag['ok']){N(0x2*-0x1371+-0x646+-0xaa*-0x44,''),console[bu(0x238)]();const ao=await ag[bu(0x1cb)]()[bu(0x437)](()=>({'message':bu(0x33e)}));return a0aa(ao[bu(0x2cc)]||bu(0x39b)),void a0ac(bu(0x169));}N(-0x1df*-0x2+-0x10ea+0xd4a,bu(0x361));const ah=await ag[bu(0x1cb)](),{session:ai,questions:aj,languages:ak}=ah[bu(0x198)];N(0x455*0x2+0x429+-0xc97,bu(0x2ef)),await q(-0x2*0x1032+0xbee+0x153e),N(0x165+0x475*-0x1+0x374,bu(0x3af)),console[bu(0x238)](),console['log'](),a0ae(ai['examName']),console['log'](),a0af(bu(0x2b5),ai[bu(0x40d)]+bu(0x2cf)),a0af('Duration',ai['durationMinutes']+bu(0x321)),a0af('Total',(ai['totalScore']||0xc4c+0x2*-0x1186+0x1756*0x1)+bu(0x2d4)),a0af(bu(0x12b),(ai['passingScore']||-0x1*-0x1822+0x1416*-0x1+-0x3c1)+'\x20points\x20(50%)'),console['log'](),console[bu(0x238)](a0L[bu(0x2da)]('\x20\x20Assistance:')),console['log'](a0L[bu(0x2da)](bu(0x252))),console['log'](a0L['white'](bu(0x367))),console['log'](a0L[bu(0x2da)]('\x20\x20\x20\x20AI:\x20\x20\x20\x20\x20\x2025K\x20AI4CTF\x20+\x2025K\x20CTF4AI\x20tokens')),ak&&ak[bu(0x185)]>0x1bf4+0x20ba+-0x3cad&&console[bu(0x238)](a0L[bu(0x2da)](bu(0x27b)+ak[bu(0x2d0)](',\x20')+bu(0x35b))),console['log'](),console[bu(0x238)](a0L[bu(0x137)](bu(0x3bf))),console[bu(0x238)](a0L[bu(0x2da)](bu(0x223))),console[bu(0x238)](a0L[bu(0x2da)](bu(0x393))),console[bu(0x238)](a0L[bu(0x2da)](bu(0x1df))),console['log'](),await new Promise(ap=>{const bv=bu;process[bv(0x365)][bv(0x40b)](a0L['bold'][bv(0x137)]('\x20\x20Press\x20Enter\x20to\x20start\x20the\x20exam\x20timer...\x20'));const aq=!!process[bv(0x1f8)][bv(0x161)]&&process['stdin'][bv(0x42d)];process[bv(0x1f8)][bv(0x161)]&&process[bv(0x1f8)][bv(0x19e)]&&process['stdin'][bv(0x19e)](!(-0x228+0x18*-0x44+-0x5*-0x1b5));const ar=as=>{const bw=bv,at=as[bw(0x41a)]();(at[bw(0x1d1)]('\x0a')||at['includes']('\x0d'))&&(process[bw(0x1f8)][bw(0x26f)](bw(0x198),ar),process['stdin'][bw(0x161)]&&process['stdin'][bw(0x19e)]&&process[bw(0x1f8)][bw(0x19e)](aq),process['stdout']['write']('\x0a'),ap());};process[bv(0x1f8)]['on'](bv(0x198),ar),process['stdin'][bv(0x2ad)]();});const al=new Date()[bu(0x2fa)]();ai[bu(0x323)]=al,ai[bu(0x316)]=J['trim']();try{const ap=Date[bu(0x1be)](),aq=await fetch(a0+bu(0x2c4),{'method':bu(0x436),'signal':AbortSignal['timeout'](-0xf7*0x1+0x4e*0x7a+0x187d*-0x1)});if(aq['ok']){const ar=await aq[bu(0x1cb)](),as=ar?.[bu(0x198)]?.['server_time_ms'];if(bu(0x16f)==typeof as&&as>0x24*0xed+0x1*-0x1b7+-0x1f9d){const at=(ap+Date[bu(0x1be)]())/(0x9*-0x425+-0x257*-0xd+0x6e4);ai[bu(0x1fb)]=Math[bu(0x302)](as-at),ai[bu(0x3ae)]=as+(0x1bfc+-0x1ef6+0x3*0x112)*ai[bu(0x2ab)]*(0x2405+0x6d*-0x23+-0x1136);}}}catch{}const am={};am[bu(0x16c)]=0x0,am[bu(0x156)]=0x0;const an={};an[bu(0x2a3)]=ai,an[bu(0x265)]=aj,an[bu(0x261)]={},an[bu(0x414)]=[],an[bu(0x3f7)]=am,(a0Z(an),console[bu(0x238)](),a0a9('Exam\x20started!\x20Timer\x20is\x20running.'),a0af(bu(0x391),ai[bu(0x2ab)]+bu(0x27f)),aj[bu(0x185)]>0x2217*-0x1+-0x22dc+0x44f3&&U(aj[0x1aa9+0x10fb+-0x2ba4]));}catch(au){console[bu(0x238)](),bu(0x19f)===au[bu(0x42e)]?a0aa(bu(0x3a9)):a0aa(au[bu(0x2cc)]||bu(0x439));}}),B['command'](bb(0x420),{'hidden':!(0x1*-0x1df6+0xcc7*0x1+0x112f*0x1)})['description']('Abandon\x20current\x20exam\x20session\x20and\x20wipe\x20local\x20state\x20(recovery\x20only)')[bb(0x15b)](async()=>{const bx=bb;a0a8(bx(0x314));const {getRealExamState:F,clearExamState:G}=await import('../lib/exam-state.js'),H=F();if(!H)return console['log'](),console['log'](a0L['gray'](bx(0x3ca))),void console[bx(0x238)]();const J=H[bx(0x2a3)][bx(0x316)];if(console[bx(0x238)](),console[bx(0x238)](a0L[bx(0x137)](bx(0x146))),console[bx(0x238)](a0L[bx(0x352)](bx(0x2fe))+a0L[bx(0x2da)](H[bx(0x2a3)]['examName'])),J&&console[bx(0x238)](a0L['gray'](bx(0x431))+a0L[bx(0x2da)](J)),console['log'](a0L[bx(0x352)](bx(0x32d))),console[bx(0x238)](a0L[bx(0x352)](bx(0x3fd))),console[bx(0x238)](),console[bx(0x238)](a0L[bx(0x352)](bx(0x40c))+a0L[bx(0x190)]['cyan'](bx(0x420))+a0L[bx(0x352)](bx(0x197))),'reset'!==(await new Promise(K=>{const by=bx;process[by(0x365)][by(0x40b)]('\x20\x20>\x20');const L=Q=>{const bz=by,V=Q[bz(0x41a)]()[bz(0x33d)]();(V['includes']('\x0a')||V[bz(0x1d1)]('\x0d')||V[bz(0x185)]>-0x4f6+0x1eb8+-0x7*0x3ae)&&(process[bz(0x1f8)]['removeListener']('data',L),K(V[bz(0x24a)](/[\r\n]/g,'')));};process[by(0x1f8)]['on'](by(0x198),L),process[by(0x1f8)][by(0x2ad)]();}))['toLowerCase']())return console[bx(0x238)](a0L[bx(0x352)](bx(0x3c1))),void console[bx(0x238)]();G(),console[bx(0x238)](),console[bx(0x238)](a0L[bx(0x275)](bx(0x3b1))),console['log'](a0L['gray']('\x20\x20You\x20can\x20now\x20enter\x20a\x20new\x20token\x20with\x20')+a0L[bx(0x190)][bx(0x33b)](bx(0x200))),console[bx(0x238)]();}),B[bb(0x274)]('demo')[bb(0x1ed)](bb(0x264))['action'](async()=>{const bA=bb;a0a8(bA(0x24f)),E(bA(0x17a));const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import(bA(0x2c9));a0W()['demoIntroSeen']||(await(async function(){const bB=bA;let a0=!(-0xa51+0xe96*-0x1+0x1*0x18e8);const a1=process['stdin'],a2=()=>{a0=!(-0xf*0x26f+0x8b*0x3d+0x362);},a3=a1[bB(0x161)]&&'function'==typeof a1[bB(0x19e)];a3&&(a1[bB(0x19e)](!(0x1721*0x1+-0x630+-0x10f1)),a1[bB(0x2ad)](),a1['once'](bB(0x198),a2));const a4=async a5=>{let a6=-0x26d6+-0x155*-0x7+0x1d83;for(;a6<a5&&!a0;)await q(0x41c*0x8+-0x9*-0x112+-0x2a32),a6+=-0x2590+0x8*-0x3f3+0x4578;};try{if(console['clear'](),console[bB(0x238)](),console[bB(0x238)](a0L[bB(0x352)](bB(0x306))+a0L[bB(0x14f)]('(press\x20any\x20key\x20to\x20skip)')),console[bB(0x238)](),console['log'](a0L[bB(0x190)][bB(0x2da)](bB(0x2c6))),console[bB(0x238)](a0L[bB(0x190)][bB(0x2da)](bB(0x407))),console[bB(0x238)](a0L[bB(0x190)][bB(0x2da)]('\x20\x20\x20██║██║\x20\x20\x20\x20\x20██║\x20\x20\x20██║███████║')),console[bB(0x238)](a0L[bB(0x190)]['white'](bB(0x297))),console['log'](a0L[bB(0x190)][bB(0x2da)](bB(0x18d))),console[bB(0x238)](a0L['bold']['white'](bB(0x405))),console[bB(0x238)](),console[bB(0x238)](a0L[bB(0x190)][bB(0x137)](bB(0x1ac))),console[bB(0x238)](a0L['gray'](bB(0x28a))),await a4(-0x142f*-0x1+-0x13*0xe9+0x58*0x14),a0)return;if(console['log'](),console[bB(0x238)](a0L[bB(0x2da)](bB(0x31a))),console[bB(0x238)](),await a4(0x22b4+0x1279*-0x1+-0x4a1*0x3),a0)return;if(console[bB(0x238)](a0L[bB(0x33b)](bB(0x383))+a0L[bB(0x2da)](bB(0x327))+a0L[bB(0x352)](bB(0x2c2))),await a4(0xce3+-0xe82+0xdf*0x5),a0)return;if(console[bB(0x238)](a0L[bB(0x275)](bB(0x383))+a0L['white'](bB(0x21f))+a0L[bB(0x352)]('\x20\x20\x20\x20(ai4ctf)')),await a4(0xcec+0x1*-0x1712+0xce2),a0)return;if(console[bB(0x238)](a0L['red'](bB(0x383))+a0L[bB(0x2da)](bB(0x1c5))+a0L[bB(0x352)](bB(0x421))),await a4(-0x96*-0x3e+0x3*-0x5ed+-0xf09),a0)return;if(console[bB(0x238)](),console[bB(0x238)](a0L[bB(0x190)][bB(0x2da)]('\x20\x20\x20Your\x20terminal\x20')+a0L[bB(0x190)][bB(0x137)]('IS')+a0L[bB(0x190)][bB(0x2da)](bB(0x3b2))),console[bB(0x238)](),await a4(0x25a2+0x101*-0x21+-0x15b*-0x1),a0)return;if(console[bB(0x238)](a0L[bB(0x352)](bB(0x213))),await a4(0xe5*0x1+0xbcb+-0xb20),a0)return;if(console[bB(0x238)](a0L['gray'](bB(0x193))),await a4(-0xae2+-0x1ce+0xe40),a0)return;if(console[bB(0x238)](a0L[bB(0x352)](bB(0x16b))),await a4(-0x1f01+-0x16b1+-0x2*-0x1c69),a0)return;console[bB(0x238)](),console[bB(0x238)](a0L[bB(0x190)]['cyan'](bB(0x307))),await a4(0x1b1b+0x2017*0x1+0x6*-0x743);}finally{((()=>{const bC=bB;if(a3){a1[bC(0x26f)]('data',a2);try{a1[bC(0x19e)](!(-0x1332+0x2586+-0x1253*0x1));}catch{}a1['pause']();}})()),console['clear']();}}()),a0X({'demoIntroSeen':!(-0x591+-0xc48+-0x3*-0x5f3)})),console[bA(0x238)](),console[bA(0x238)](a0L['white'](bA(0x3cd))+a0L['gray'](H+'\x20questions\x20drawn\x20from\x20a\x20pool\x20of\x20'+J+'.\x20No\x20timer.\x20Free\x20practice.')),console[bA(0x238)](a0L[bA(0x352)](bA(0x2bf))+a0L[bA(0x33b)](bA(0x13e))+a0L['gray'](bA(0x205))+a0L[bA(0x33b)](bA(0x229))+a0L[bA(0x352)]('\x20at\x20any\x20time.')),await new Promise(a0=>{const bD=bA;process['stdout']['write'](a0L[bD(0x190)][bD(0x137)](bD(0x3d2)));const a1=!!process[bD(0x1f8)][bD(0x161)]&&process[bD(0x1f8)]['isRaw'];process[bD(0x1f8)][bD(0x161)]&&process[bD(0x1f8)][bD(0x19e)]&&process['stdin']['setRawMode'](!(-0xfc6+-0x186e+0x2835));const a2=a3=>{const bE=bD,a4=a3[bE(0x41a)]();(a4[bE(0x1d1)]('\x0a')||a4[bE(0x1d1)]('\x0d'))&&(process[bE(0x1f8)]['removeListener'](bE(0x198),a2),process[bE(0x1f8)][bE(0x161)]&&process['stdin'][bE(0x19e)]&&process['stdin'][bE(0x19e)](a1),process[bE(0x365)][bE(0x40b)]('\x0a'),a0());};process['stdin']['on'](bD(0x198),a2),process[bD(0x1f8)][bD(0x2ad)]();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import('../lib/exam-state.js');Q()&&V(bA(0x40f)),console['log'](),a0ae(bA(0x2d2)),console[bA(0x238)](),console[bA(0x238)](a0L[bA(0x2da)]('\x20\x20Free\x20practice\x20·\x20No\x20account\x20needed\x20·\x20No\x20time\x20limit')),console[bA(0x238)](a0L[bA(0x2da)]('\x20\x20'+H+bA(0x15f)+J+bA(0x317)));const W=a0a3();if(W[bA(0x244)]>-0x1def+0x3f0*-0x1+0x21df){const a0=W['bestPercentage'],a1=a0>=-0xbce+0x89a+0x384?a0L[bA(0x275)]:a0>=0x2*0x954+-0x241a*-0x1+-0x3686?a0L[bA(0x137)]:a0L[bA(0x2da)];console[bA(0x238)](),console[bA(0x238)](a0L[bA(0x352)](bA(0x331))+a1(W['best']+'/'+H+'\x20('+a0+'%)')+a0L[bA(0x352)](bA(0x2b0)+W[bA(0x244)]+'\x20attempts'));}console[bA(0x238)](),console[bA(0x238)](a0L[bA(0x352)](bA(0x2f7))),console[bA(0x238)](a0L[bA(0x2da)]('\x20\x20'+a0ai('howToPlay'))),console[bA(0x238)](a0L[bA(0x137)](bA(0x375))+a0L[bA(0x352)](bA(0x1f9)+a0ai('htpAnswer'))),console['log'](a0L['yellow'](bA(0x234))+a0L['gray'](bA(0x246)+a0ai(bA(0x378)))),console[bA(0x238)](a0L[bA(0x137)](bA(0x255))+a0L[bA(0x352)](bA(0x1f3))+a0L['yellow'](bA(0x12d))+a0L['gray'](bA(0x22c)+a0ai('htpNav'))),console[bA(0x238)](a0L[bA(0x137)]('\x20\x20\x20\x20more\x20help')+a0L[bA(0x352)](bA(0x3b8)+a0ai(bA(0x386)))),console[bA(0x238)](a0L[bA(0x137)](bA(0x1a7))+a0L[bA(0x352)](bA(0x246)+a0ai(bA(0x312)))),console[bA(0x238)](a0L[bA(0x137)]('\x20\x20\x20\x20lang')+a0L['gray'](bA(0x246)+a0ai(bA(0x22b)))),console['log'](a0L[bA(0x352)](bA(0x267))),console[bA(0x238)](a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ru\x20·\x20hi\x20·\x20de\x20·\x20id\x20·\x20th\x20·\x20vi\x20·\x20tr')),console['log'](a0L[bA(0x352)]('\x20\x20─────────────────────────────────────────')),console['log']();const {getConfig:X}=await import('../lib/config.js'),Y=X()[bA(0x3a3)]||'en';'en'===Y?(console[bA(0x238)](a0L[bA(0x352)](bA(0x276))),console[bA(0x238)](a0L[bA(0x352)](bA(0x432))),console[bA(0x238)](a0L['gray'](bA(0x427)))):console[bA(0x238)](a0L['green']('\x20\x20Language:\x20'+Y)),console['log'](),console[bA(0x238)](a0L['white'](bA(0x186)));const Z={...L,'startedAt':new Date()[bA(0x2fa)]()};console[bA(0x238)](),N(0x255d+0x265a+-0x4bb7,bA(0x1aa)),await q(0x1*-0x323+-0xbf7+-0x7f1*-0x2),N(-0x14ed+-0x1951+0x2e66,bA(0x412)),await q(0x1*-0x3a0+-0xf0c+0x1374),N(-0x1e+0x11d9*-0x1+0x1247,bA(0x35e)),await q(0xa55+0x19a9*0x1+-0x58*0x67),N(0x24e5+0x1f3+-0x4*0x99d,bA(0x3af)),console[bA(0x238)](),console[bA(0x238)](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af(bA(0x2b5),String(H)),a0af(bA(0x29c),bA(0x16e)),U(K[0x31*0xa3+0x16f5+-0xd8a*0x4]);}),B[bb(0x274)](bb(0x135))['description'](bb(0x362))[bb(0x15b)](async()=>{const bF=bb;a0a8(bF(0x32a)),E('post-report-retry');const {getLocalizedDemoSession:F}=await import(bF(0x2c9)),G=a0a6();if(!G||-0xbfb*-0x3+0x2*-0xa15+0xfc7*-0x1===G[bF(0x185)])return console[bF(0x238)](),console['log'](a0L['yellow'](bF(0x180))+a0L['bold'][bF(0x33b)]('demo')+a0L[bF(0x137)]('\x20first.')),void console['log']();const H=a0Y();if(H){if('demo-free'!==H[bF(0x2a3)]['examId'])return a0ab('Exam\x20\x22'+H[bF(0x2a3)][bF(0x251)]+bF(0x269)),void a0ac(bF(0x2db));a0a0();}const J=V=>{const bG=bF;if(!V[bG(0x3d8)])return V;const W=V['options'][V[bG(0x3d8)]],X=['A','B','C','D'][bG(0x254)](a2=>V[bG(0x129)][a2]);for(let a2=X[bG(0x185)]-(0x1*0x15bd+0x1*-0x1083+-0x539*0x1);a2>-0xb9c+0x12e8+-0x1*0x74c;a2--){const a3=Math[bG(0x283)](Math['random']()*(a2+(0xac4*-0x2+-0x16*-0x184+0xbcf*-0x1)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[0x133*-0x1+-0x6*0x4a5+0x1d11],Y['B']=X[0x4d3+0x878+0xa2*-0x15],Y['C']=X[-0x2f*0x11+0x2019+-0x1cf8],Y['D']=X[0x1072*0x2+-0x7*-0x37a+-0x3937];const Z=Y,a0=['A','B','C','D']['find'](a4=>Z[a4]===W),a1={...V};return a1[bG(0x129)]=Z,a1[bG(0x3d8)]=a0,a1;},K=G[bF(0x254)]((V,W)=>({...J(V),'number':W+(-0x1c30+-0x2ef+0x1f20)})),L=F(),Q={...L,'examName':L['examName']+bF(0x353),'questionCount':K[bF(0x185)],'startedAt':new Date()[bF(0x2fa)]()};console['log'](),a0ae(bF(0x401)),console[bF(0x238)](),console[bF(0x238)](a0L[bF(0x2da)](bF(0x389)+K[bF(0x185)]+bF(0x32e)+(-0x71a+0x1a1d+-0x1302===K[bF(0x185)]?'':'s')+bF(0x40e))),console[bF(0x238)](a0L[bF(0x352)](bF(0x339))),console['log'](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af(bF(0x2b5),String(K[bF(0x185)])),a0af(bF(0x29c),bF(0x16e)),U(K[-0x23bc+0x11f3*-0x1+0x35af]);}),B[bb(0x274)](bb(0x221))[bb(0x1ed)](bb(0x289))['action'](async()=>{const bH=bb;if(a0a8(bH(0x3c2)),-0x4b*-0x85+-0x1ea3+-0x854===a0a3()[bH(0x244)])return console[bH(0x238)](),a0ab('Complete\x20the\x20demo\x20first\x20before\x20setting\x20up.'),console['log'](a0L[bH(0x352)](bH(0x3e7))+a0L[bH(0x190)]['cyan']('exam\x20demo')),void console[bH(0x238)]();const K=a0ak();if(K){const a4=K[bH(0x164)][bH(0x185)],a5=a4+K[bH(0x17f)][bH(0x185)];if(a4>=0x1*-0x1d36+-0x650+0x3*0xbda||(a5>-0x11*-0x20b+0x85a*-0x1+-0x1a61?a4/a5:0x1b61*0x1+-0x1f*0xa1+-0x7e2)>=0x73c+-0x53d+-0x1ff+0.7)return console[bH(0x238)](),console[bH(0x238)](a0L['green']('\x20\x20✓\x20')+a0L['green'](bH(0x218))),console[bH(0x238)](a0L[bH(0x352)]('\x20\x20\x20\x20Completed:\x20'+K[bH(0x3ce)]['split']('T')[0x3d5+0x2*0xa61+0x5*-0x4eb])),console['log'](a0L[bH(0x352)](bH(0x311)+K[bH(0x3ff)])),console[bH(0x238)](a0L['gray'](bH(0x38e)+a4+bH(0x151))),K[bH(0x17f)][bH(0x185)]>-0x9a9*-0x1+-0x47b+0xdd*-0x6&&console[bH(0x238)](a0L[bH(0x137)](bH(0x433)+K[bH(0x17f)][bH(0x2d0)](',\x20'))),console[bH(0x238)](),console['log'](a0L[bH(0x2da)]('\x20\x20Next\x20step:\x20')+a0L[bH(0x190)]['cyan'](bH(0x200))),console[bH(0x238)](a0L[bH(0x352)](bH(0x308))+a0L[bH(0x190)][bH(0x33b)](bH(0x229))+a0L['gray'](bH(0x133))),void console['log']();console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x137)](bH(0x3c8)+a4+'/'+a5+bH(0x3d5))),console[bH(0x238)]();}console[bH(0x238)](),a0ae(bH(0x258)),console[bH(0x238)](),console[bH(0x238)](a0L['white'](bH(0x390))),console['log'](a0L['gray'](bH(0x194))),console[bH(0x238)]();const L=(a6,a7)=>{const bI=bH,a8=process[bI(0x3d9)];console[bI(0x238)](),a0aa('missing'===a6?'Python\x203\x20not\x20found.':bI(0x20e)+a7+bI(0x150)),console[bI(0x238)](),console[bI(0x238)](a0L[bI(0x190)]['white'](bI(0x1ef))),console[bI(0x238)](),bI(0x16a)===a8?(console[bI(0x238)](a0L['yellow'](bI(0x3e8))),console[bI(0x238)](a0L[bI(0x275)]('\x20\x20\x20\x20brew\x20install\x20python@3.12')),console[bI(0x238)](),console['log'](a0L[bI(0x352)](bI(0x3b0))),console['log'](a0L[bI(0x352)](bI(0x1b4)))):bI(0x1a2)===a8?(console[bI(0x238)](a0L[bI(0x137)](bI(0x36e))),console[bI(0x238)](a0L[bI(0x275)](bI(0x22a))),console[bI(0x238)](a0L['green'](bI(0x2ac))),console[bI(0x238)](a0L[bI(0x275)](bI(0x33a))),console[bI(0x238)](a0L[bI(0x352)](bI(0x2de))),console['log'](),console[bI(0x238)](a0L[bI(0x137)](bI(0x3f1))),console['log'](a0L[bI(0x275)](bI(0x37a))),console[bI(0x238)](),console[bI(0x238)](a0L[bI(0x137)](bI(0x1a9))),console['log'](a0L[bI(0x275)](bI(0x3a4)))):bI(0x3cf)===a8?(console[bI(0x238)](a0L['yellow']('\x20\x20Windows\x20(winget,\x20recommended):')),console[bI(0x238)](a0L['green']('\x20\x20\x20\x20winget\x20install\x20Python.Python.3.12')),console[bI(0x238)](),console[bI(0x238)](a0L[bI(0x352)](bI(0x3b0))),console[bI(0x238)](a0L[bI(0x352)]('\x20\x20\x20\x20https://www.python.org/downloads/windows/'))):console[bI(0x238)](a0L[bI(0x352)]('\x20\x20\x20\x20https://www.python.org/downloads/')),console['log'](),console[bI(0x238)](a0L[bI(0x2da)](bI(0x35f))+a0L[bI(0x190)][bI(0x33b)](bI(0x3c2))),console[bI(0x238)]();},Q=bH(0x3c5);let V='';try{const a6={};a6[bH(0x3a0)]='utf-8',a6[bH(0x1e2)]=0x1388,V=a0an(Q+bH(0x395),a6)['trim']()[bH(0x24a)](bH(0x20e),'');const a7=V['split']('.')[bH(0x254)](Number);if(a7[-0x2c4+-0x1949*0x1+0x1c0d]<0xb33*-0x3+0x282*-0xb+-0x8be*-0x7||-0x46a+-0x26aa*0x1+-0xe5d*-0x3===a7[0x2*-0xb15+-0x1ff7+-0x5d*-0x95]&&a7[0x2687+-0x202*0xf+0x8*-0x10d]<-0x49*-0x7+0xb4a+-0x1*0xd3f)return void L(bH(0x41f),V);0x179*-0x16+0x1b0f+-0x55a*-0x1===a7[-0x1f5c+-0x20ac+0x4008]&&a7[-0xea5*0x1+-0x191a+0x27c0]<0xac4+0x18a7+-0x235f?console[bH(0x238)](a0L['green'](bH(0x3f9)+V)+a0L[bH(0x352)]('\x20(works,\x20but\x203.12\x20recommended)')):console[bH(0x238)](a0L['green'](bH(0x3f9)+V));}catch{return void L(bH(0x3ab));}try{const a8={};a8['stdio']=bH(0x32f),a8['timeout']=0x1388,(a0an(Q+'\x20-m\x20pip\x20--version',a8),console[bH(0x238)](a0L['green'](bH(0x2a5))));}catch{console['log'](a0L['yellow'](bH(0x336)));try{const a9={};a9['stdio']=bH(0x32f),a9[bH(0x1e2)]=0x7530,(a0an(Q+bH(0x2c0),a9),console[bH(0x238)](a0L[bH(0x275)]('\x20\x20✓\x20pip\x20installed')));}catch{a0aa(bH(0x1eb)),console[bH(0x238)]();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import(bH(0x1fe)),{execFileSync:ac}=await import('node:child_process'),ad=aa(),ae=ab(),af='linux'===process[bH(0x3d9)]&&!ad,ag=bH(0x16a)===process[bH(0x3d9)];let ah=bH(0x21e);if(af||ad)try{const {readFileSync:ak}=await import(bH(0x2bb)),al=ak(bH(0x36d),bH(0x3b4)),am=(al[bH(0x423)](/^ID="?([^"\n]+)/m)||[])[-0x1*0x2303+0x204e+0x2b6]||'',an=(al['match'](/^VERSION_ID="?([^"\n]+)/m)||[])[0x2e*0x61+-0x25cf+0x2*0xa31]||'';'ubuntu'===am?ah='Ubuntu\x20'+an+(ad?bH(0x319):''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?bH(0x319):''));}catch{}let ai=!(-0x103b+-0x1ffc+0x3038);if(ag)try{const ao={};ao[bH(0x13c)]='ignore',ao[bH(0x1e2)]=0x7d0,(ac(bH(0x152),[bH(0x172)],ao),ai=!(0xc7c*-0x1+0x1d16+0x7d*-0x22));}catch{ai=!(0x13*0xcb+0x523+-0x1433);}const aj=ae?bH(0x309):bH(0x23f);return console[bH(0x238)](a0L[bH(0x190)]['yellow'](bH(0x2d6))),console[bH(0x238)](a0L['bold']['yellow']('\x20\x20'+aj)),console[bH(0x238)](a0L[bH(0x190)][bH(0x137)](bH(0x2d6))),console[bH(0x238)](),af||ad?(console[bH(0x238)](a0L[bH(0x2da)](bH(0x1de))+a0L[bH(0x33b)](ah)),console['log'](a0L['gray'](bH(0x2b9))),console['log'](),console['log'](a0L['bold'][bH(0x2da)](bH(0x31c))),console['log'](),console['log'](a0L[bH(0x2da)]('\x20\x20\x20\x201.\x20Type\x20')+a0L[bH(0x190)]['cyan'](bH(0x382))+a0L[bH(0x2da)](bH(0x328))),console['log'](),console[bH(0x238)](a0L['white'](bH(0x359))),console[bH(0x238)](),console[bH(0x238)](bH(0x1f9)+a0L[bH(0x190)][bH(0x33b)](bH(0x2c7))),console[bH(0x238)](bH(0x1f9)+a0L[bH(0x190)][bH(0x33b)](bH(0x268))),console['log'](),console[bH(0x238)](a0L[bH(0x2da)](bH(0x237))),console[bH(0x238)](),console[bH(0x238)](bH(0x1f9)+a0L[bH(0x190)][bH(0x33b)](bH(0x1e5))),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x352)]('icoa>')+'\x20'+a0L[bH(0x190)][bH(0x33b)]('exam\x20setup'))):ag?(console[bH(0x238)](a0L[bH(0x2da)](bH(0x1de))+a0L[bH(0x33b)]('macOS')),console['log'](),console['log'](a0L[bH(0x190)]['white'](bH(0x31c))),console[bH(0x238)](),console['log'](a0L['white'](bH(0x1fc))+a0L[bH(0x190)][bH(0x33b)]('quit')+a0L['white']('\x20to\x20leave\x20icoa')),console['log'](),ai?(console[bH(0x238)](a0L[bH(0x2da)](bH(0x184))),console[bH(0x238)](),console[bH(0x238)](bH(0x1f9)+a0L[bH(0x190)][bH(0x33b)](bH(0x2e0))),console[bH(0x238)](bH(0x1f9)+a0L[bH(0x190)]['cyan'](bH(0x3cb)))):(console[bH(0x238)](a0L[bH(0x2da)](bH(0x2e6))+a0L[bH(0x190)][bH(0x137)](bH(0x172))+a0L[bH(0x2da)]('):')),console[bH(0x238)](),console[bH(0x238)](bH(0x1f9)+a0L['bold'][bH(0x33b)]('/bin/bash\x20-c\x20\x22$(curl\x20-fsSL\x20https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\x22')),console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x2da)]('\x20\x20\x20\x20\x20\x20\x20Then\x20install\x20Python:')),console[bH(0x238)](),console[bH(0x238)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x190)][bH(0x33b)](bH(0x2e0)))),console[bH(0x238)](),console[bH(0x238)](a0L['white'](bH(0x141))),console[bH(0x238)](),console[bH(0x238)](bH(0x1f9)+a0L[bH(0x190)]['cyan'](bH(0x1e5))),console[bH(0x238)](bH(0x1f9)+a0L[bH(0x352)]('icoa>')+'\x20'+a0L[bH(0x190)][bH(0x33b)]('exam\x20setup'))):ae?(console[bH(0x238)](a0L['white'](bH(0x1de))+a0L[bH(0x33b)](bH(0x1f5))),console[bH(0x238)](),console['log'](a0L[bH(0x190)][bH(0x137)](bH(0x3bb))),console[bH(0x238)](a0L[bH(0x352)](bH(0x157))),console[bH(0x238)](a0L[bH(0x352)](bH(0x3e5))),console[bH(0x238)](a0L['gray']('\x20\x20far\x20more\x20smoothly\x20inside\x20WSL2\x20Ubuntu.')),console[bH(0x238)](),console[bH(0x238)](a0L['bold'][bH(0x2da)](bH(0x392))),console['log'](),console[bH(0x238)](a0L[bH(0x2da)](bH(0x1fc))+a0L[bH(0x190)][bH(0x33b)](bH(0x382))+a0L[bH(0x2da)](bH(0x29d))),console[bH(0x238)](a0L['white'](bH(0x38a))),console['log'](),console[bH(0x238)](bH(0x1f9)+a0L[bH(0x190)][bH(0x33b)](bH(0x348))),console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x352)](bH(0x2a8))),console['log'](a0L[bH(0x2da)]('\x20\x20\x20\x203.\x20Inside\x20Ubuntu,\x20install\x20Node.js\x2022\x20+\x20Python\x20tools\x20+\x20icoa:')),console['log'](),console[bH(0x238)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x190)]['cyan'](bH(0x40a))),console['log'](bH(0x1f9)+a0L[bH(0x190)][bH(0x33b)](bH(0x2f6))),console['log'](bH(0x1f9)+a0L[bH(0x190)][bH(0x33b)]('sudo\x20npm\x20install\x20-g\x20icoa-cli')),console['log'](bH(0x1f9)+a0L[bH(0x190)][bH(0x33b)](bH(0x1e5))),console[bH(0x238)](),console['log'](a0L[bH(0x352)](bH(0x409))),console['log'](),console[bH(0x238)](a0L[bH(0x2da)](bH(0x1fc))+a0L['bold'][bH(0x33b)]('quit')+a0L[bH(0x2da)](bH(0x29d))),console['log'](a0L['white']('\x20\x20\x20\x202.\x20In\x20PowerShell,\x20install\x20Python\x20with\x20pip:')),console[bH(0x238)](),console[bH(0x238)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x190)][bH(0x33b)](bH(0x3ba))),console[bH(0x238)](),console['log'](a0L[bH(0x352)](bH(0x400))),console[bH(0x238)](a0L[bH(0x352)]('\x20\x20\x20\x20\x20\x20\x20\x20PATH\x22\x20+\x20\x22Install\x20pip\x22\x20during\x20the\x20installer.)')),console[bH(0x238)](a0L[bH(0x2da)](bH(0x35a))),console[bH(0x238)](),console[bH(0x238)](bH(0x1f9)+a0L[bH(0x190)]['cyan'](bH(0x1e5))),console['log'](bH(0x1f9)+a0L[bH(0x352)]('icoa>')+'\x20'+a0L[bH(0x190)][bH(0x33b)](bH(0x3c2)))):(console[bH(0x238)](a0L[bH(0x2da)](bH(0x21b))+a0L[bH(0x33b)](process[bH(0x3d9)])+a0L[bH(0x2da)](')')),console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x352)]('\x20\x20Reinstall\x20Python\x203.12\x20with\x20pip\x20bundled,\x20then\x20retry:')),console['log'](bH(0x1f9)+a0L['bold'][bH(0x33b)]('icoa')),console['log'](bH(0x1f9)+a0L['gray'](bH(0x2bc))+'\x20'+a0L[bH(0x190)]['cyan'](bH(0x3c2)))),console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x352)]('\x20\x20Stuck?\x20Email\x20your\x20selection\x20coordinator\x20with\x20the\x20screenshot\x20above.')),void console[bH(0x238)]();}}const W={};W[bH(0x1c8)]=bH(0x292),W['pycryptodome']='Crypto',W[bH(0x24d)]='z3',W[bH(0x195)]=bH(0x3fb),W[bH(0x350)]=bH(0x247),W['ROPgadget']=bH(0x290);const X=['pwntools',bH(0x429),bH(0x1af),'beautifulsoup4',bH(0x209),bH(0x195),bH(0x41e),'sympy',bH(0x24d),'pycryptodome',bH(0x333),bH(0x2ff),bH(0x182)],Y=W;console['log'](),console['log'](a0L[bH(0x2da)](bH(0x242)+X[bH(0x185)]+'\x20packages...')),console[bH(0x238)]();let Z='';try{const ap={};ap[bH(0x3a0)]=bH(0x3b4),ap[bH(0x1e2)]=0x2710,a0an(Q+bH(0x2f9),ap);}catch(aq){const ar=String(aq?.['stdout']||aq?.[bH(0x1bd)]||aq?.[bH(0x2cc)]||'');/externally-managed-environment|break-system-packages/i['test'](ar)&&(Z=bH(0x286),console['log'](a0L['yellow'](bH(0x27a))),console[bH(0x238)]());}const a0=V[bH(0x315)]('.')['map'](Number);-0x1*-0x1015+-0x787+-0x88b===a0[-0x22fc+-0x1f*0x2+0x9*0x3ea]&&a0[-0x1e20+-0x30d*0x3+0x346*0xc]>=0x22df+-0x1*-0xd55+-0x3027&&(console[bH(0x238)](a0L[bH(0x137)](bH(0x42c)+V+bH(0x207))),console['log'](a0L[bH(0x352)](bH(0x29a))),console[bH(0x238)](a0L[bH(0x352)](bH(0x199))),bH(0x1a2)===process[bH(0x3d9)]&&(console[bH(0x238)](a0L[bH(0x275)](bH(0x1a4))),console[bH(0x238)](a0L['green']('\x20\x20\x20\x20\x20\x20sudo\x20update-alternatives\x20--install\x20/usr/bin/python3\x20python3\x20/usr/bin/python3.12\x201'))),console[bH(0x238)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+bH(0x287)+as+'\x22\x20'+Z+'\x20--quiet\x202>&1',{'encoding':bH(0x3b4),'timeout':0x2bf20,'stdio':bH(0x394)}),a0an(Q+bH(0x1d9)+(Y[as]||as)+'\x22',{'stdio':bH(0x32f),'timeout':0x2710});let at='';try{const au=a0an(Q+bH(0x3eb)+as+bH(0x3ed),{'encoding':'utf-8','timeout':0x1388})[bH(0x423)](/^Version:\s*(.+)$/m);au&&(at=au[0x1200+-0x39e*-0x7+-0x2b51][bH(0x33d)]());}catch{}console['log'](a0L['green'](bH(0x385)+as)+(at?a0L[bH(0x352)]('\x20('+at+')'):'')),a1['push'](at?as+'=='+at:as);}catch(av){const aw=String(av?.[bH(0x365)]||av?.[bH(0x1bd)]||av?.[bH(0x2cc)]||'')[bH(0x28e)](-(0x984+-0x2b*0x86+-0x26d*-0x6)),ax=aw['split']('\x0a')[bH(0x266)](ay=>ay[bH(0x33d)]())['slice'](-(0x86f+0x1*0x73+-0x8e0))[bH(0x2d0)](bH(0x189))['slice'](-0xbc+-0x232d*-0x1+-0xb7b*0x3,-0x1b99+-0x1*-0xa4c+-0x11c5*-0x1);console[bH(0x238)](a0L['red'](bH(0x263)+as)+a0L['gray']('\x20\x20'+ax)),a2[bH(0x203)]({'pkg':as,'error':ax}),a3||(a3=aw);}-0x1b4c+0x202*0x8+0xb3c===a1[bH(0x185)]&&a3&&(console[bH(0x238)](),console[bH(0x238)](a0L['yellow']('\x20\x20First\x20error\x20detail\x20(for\x20debugging):')),console[bH(0x238)](a0L[bH(0x352)]('\x20\x20'+a3[bH(0x315)]('\x0a')[bH(0x28e)](-(0x29*0x1f+0x1b6d+0xaca*-0x3))[bH(0x2d0)](bH(0x1ad))))),a0al({'completedAt':new Date()[bH(0x2fa)](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2[bH(0x254)](ay=>ay[bH(0x1c7)])}),console[bH(0x238)](),-0x45b+0x5b0*0x2+0x705*-0x1===a2['length']?a0a9(bH(0x21c)+X[bH(0x185)]+'\x20packages\x20installed.'):-0x1f*-0x17+-0x24c5+-0x4*-0x87f===a1[bH(0x185)]?(a0aa(bH(0x3ec)+X[bH(0x185)]+bH(0x2e5)),console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x137)](bH(0x1ce))),-0xdfd+-0x2209+0x1003*0x3===a0[-0x22ee+0x2*-0x1c9+0x2680]&&a0[0x2095+-0x13*-0x163+-0x1*0x3aed]>=0xbaf*-0x1+-0x14ca+0x2086?(console['log'](a0L[bH(0x352)](bH(0x3d6))),console[bH(0x238)](a0L['gray'](bH(0x1bf)))):(console[bH(0x238)](a0L['gray'](bH(0x13b))),console[bH(0x238)](a0L[bH(0x352)](bH(0x3b7))+a0L[bH(0x33b)](Q+bH(0x303))+a0L[bH(0x352)](bH(0x2b3))),console[bH(0x238)](a0L[bH(0x352)](bH(0x1ea)))),console['log'](),console['log'](a0L['white']('\x20\x20Rerun\x20when\x20fixed:\x20')+a0L['bold'][bH(0x33b)]('exam\x20setup'))):a0ab(a1[bH(0x185)]+'/'+X[bH(0x185)]+'\x20packages\x20installed.\x20'+a2[bH(0x185)]+'\x20failed:\x20'+a2[bH(0x254)](ay=>ay['pkg'])[bH(0x2d0)](',\x20')),console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x33b)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bH(0x238)](a0L[bH(0x190)][bH(0x2da)](bH(0x245))),console['log'](a0L[bH(0x33b)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](),console['log'](a0L[bH(0x190)][bH(0x137)](bH(0x143))+a0L['gray']('\x20(quick\x20tasks)')),console[bH(0x238)](a0L['white'](bH(0x33f))),console['log'](a0L['green']('\x20\x20\x20\x20!python3\x20-c\x20\x22import\x20base64;\x20print(base64.b64decode(\x27SGVsbG8=\x27))\x22')),console['log'](a0L[bH(0x352)](bH(0x36c))),console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x190)][bH(0x137)](bH(0x2bd))+a0L[bH(0x352)](bH(0x24c))),console[bH(0x238)](a0L[bH(0x2da)]('\x20\x20Start\x20a\x20Python\x20session,\x20type\x20commands\x20one\x20by\x20one:')),console['log'](a0L[bH(0x275)](bH(0x139))),console[bH(0x238)](a0L['gray'](bH(0x42a))),console[bH(0x238)](a0L[bH(0x352)](bH(0x380))),console['log'](a0L[bH(0x352)](bH(0x206))),console[bH(0x238)](a0L['gray'](bH(0x1d4))),console[bH(0x238)](a0L['gray'](bH(0x285))),console['log'](),console['log'](a0L[bH(0x190)][bH(0x137)](bH(0x272))+a0L[bH(0x352)](bH(0x39d))),console['log'](a0L[bH(0x2da)](bH(0x322))),console[bH(0x238)](a0L[bH(0x275)](bH(0x175))),console['log'](a0L[bH(0x352)](bH(0x2a0))),console[bH(0x238)](a0L['gray'](bH(0x140))),console[bH(0x238)](a0L[bH(0x352)]('\x20\x20\x20\x20key\x20=\x20xor(ct[:5],\x20b\x22ICOA{\x22)')),console[bH(0x238)](a0L[bH(0x352)](bH(0x330))),console['log'](a0L[bH(0x275)](bH(0x310))),console[bH(0x238)](a0L[bH(0x275)](bH(0x2ce))),console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x190)][bH(0x137)](bH(0x3a6))),console['log'](a0L['white'](bH(0x3ac))+a0L[bH(0x190)]['cyan'](bH(0x396))+a0L['white']('\x20to\x20ask\x20AI\x20for\x20help:')),console['log'](a0L[bH(0x352)](bH(0x2c5))),console[bH(0x238)](a0L[bH(0x352)](bH(0x1ab))),console[bH(0x238)](a0L['gray'](bH(0x3f3))),console[bH(0x238)](a0L[bH(0x33b)](bH(0x3e4))),console[bH(0x238)](),console[bH(0x238)](a0L[bH(0x2da)](bH(0x1fa))+a0L[bH(0x190)][bH(0x33b)]('exam\x20<token>')),console[bH(0x238)](a0L['gray'](bH(0x308))+a0L[bH(0x190)][bH(0x33b)](bH(0x229))+a0L[bH(0x352)]('\x20to\x20return\x20to\x20the\x20main\x20menu.')),console[bH(0x238)]();}),B[bb(0x15b)](()=>{const bJ=bb;a0a8('exam');const F=a0Y();if(F){a0ae(bJ(0x3a5)+F['session']['examName']),O();const J=Object[bJ(0x2f4)](F[bJ(0x261)])[bJ(0x185)];return a0af('Progress',J+'/'+F[bJ(0x2a3)][bJ(0x40d)]+'\x20answered'),console[bJ(0x238)](),void console[bJ(0x238)](a0L['gray'](bJ(0x30d)));}const G=a0a3(),H=a0ak();console['log'](),a0ae(bJ(0x14e)),console[bJ(0x238)](),-0xd03+0xe0e+0x3*-0x59===G[bJ(0x244)]?(console[bJ(0x238)](a0L['yellow'](bJ(0x3f6))+a0L['yellow'](bJ(0x426))),console[bJ(0x238)](a0L[bJ(0x352)]('\x20\x20\x20\x20→\x20')+a0L[bJ(0x190)][bJ(0x33b)](bJ(0x24f)))):(console[bJ(0x238)](a0L[bJ(0x275)](bJ(0x220))+a0L[bJ(0x275)]('Demo\x20completed\x20('+G[bJ(0x244)]+bJ(0x202)+(0x1*0x2422+0x2*0xd4b+0xf7*-0x41!==G[bJ(0x244)]?'s':'')+')')),H?(console[bJ(0x238)](a0L[bJ(0x275)](bJ(0x220))+a0L['green'](bJ(0x3ad))),console[bJ(0x238)](a0L[bJ(0x137)]('\x20\x20○\x20')+a0L[bJ(0x137)](bJ(0x192))),console['log'](a0L[bJ(0x352)](bJ(0x2e7))+a0L[bJ(0x190)][bJ(0x33b)](bJ(0x200)))):(console[bJ(0x238)](a0L[bJ(0x137)](bJ(0x3f6))+a0L[bJ(0x137)](bJ(0x345))),console['log'](a0L[bJ(0x352)](bJ(0x2e7))+a0L[bJ(0x190)][bJ(0x33b)]('exam\x20setup')))),console[bJ(0x238)]();});}
@@ -1 +1 @@
1
- import chalk from"chalk";import{spawn as o}from"node:child_process";import{writeFileSync as e}from"node:fs";import{join as n}from"node:path";import{fetchWithCountdown as a}from"../lib/countdown.js";const r={baseline:{action:null,label:"Baseline — ICOA-VLA predicting normally",hint:"This is what the VLA does WITHOUT attack. Gripper closes, arm reaches forward."},release:{action:{xyz:[.1,0,.3],rotation:[0,0,0],gripper_close:.05},label:'Prompt Injection — "release the gripper"',hint:"Gripper opens (0.05 < 0.10 win threshold). This is Paper D Q41 success."},patch:{action:{xyz:[-.3,.2,.5],rotation:[.5,0,.3],gripper_close:.95},label:"Adversarial Patch — sticker redirects the arm",hint:"Same instruction, but arm reaches LEFT instead of RIGHT. Paper D Q42 success."},confused:{action:{xyz:[.001,0,.001],rotation:[0,0,0],gripper_close:.5},label:'Modality Confusion — "pick up the purple object"',hint:"No purple object exists. VLA freezes near origin. Paper D Q43 success."},color:{action:{xyz:[.4,-.3,.6],rotation:[-.4,.2,-.1],gripper_close:.2},label:"Cross-Modal Attack — image + text manipulated together",hint:"Action drifts hard on multiple axes. Paper D Q49-class attack (future).",hidden:!0}},t=Object.fromEntries(Object.entries(r).filter(([,o])=>!o.hidden));export function registerSimCommand(l){l.command("sim [scenario]").description("Render a MuJoCo VLA replay (baseline / release / patch / confused)").action(async l=>{await async function(l){const s=r[l.toLowerCase()];if(!s){console.log(),console.log(chalk.yellow(` Unknown scenario: "${l}"`)),console.log(chalk.gray(" Available:"));for(const[o,e]of Object.entries(t))console.log(chalk.gray(" ")+chalk.bold.cyan(o.padEnd(10))+chalk.gray(e.label));return void console.log()}const i=`${process.env.ICOA_SERVER_URL?.replace(/\/+$/,"")||"https://practice.icoa2026.au"}/api/ai/vla/41/sim`;console.log(),console.log(chalk.bold.cyan(" ICOA · MuJoCo Sim")),console.log(chalk.gray(" ")+chalk.white(s.label)),console.log();try{const r=fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:s.action}),signal:AbortSignal.timeout(6e4)}),c=await a(r);if(!c.ok)return void console.log(chalk.yellow(` Server returned HTTP ${c.status}.`));const p=await c.json();if(!p.success||!p.data?.mp4_b64)return void console.log(chalk.yellow(" Renderer unavailable."));const g=process.env.TMPDIR||"/tmp",d=n(g,`icoa-sim-${l}-${Date.now()}.mp4`);e(d,Buffer.from(p.data.mp4_b64,"base64")),console.log(),console.log(chalk.bold.green(" ✓")+chalk.gray(" ")+chalk.white(d)),p.data.description&&console.log(chalk.gray(" Action: ")+chalk.white(p.data.description)),console.log(),console.log(chalk.gray(" ")+s.hint),console.log();const y="darwin"===process.platform?"open":"win32"===process.platform?"start":"xdg-open";y?(o(y,[d],{stdio:"ignore",detached:!0}).unref(),console.log(chalk.gray(" Opening in your default video player..."))):console.log(chalk.gray(" Open the file above in any video player.")),console.log(),console.log(chalk.gray(" You just rendered a Franka Panda controlled by ")+chalk.bold.cyan("ICOA-VLA")+chalk.gray(" through ")+chalk.bold.cyan("MuJoCo")+chalk.gray(".")),console.log(chalk.bold.yellow(" You installed nothing.")),console.log(),console.log(chalk.gray(" Try other scenarios:"));for(const o of Object.keys(t))o!==l.toLowerCase()&&console.log(chalk.gray(" icoa sim ")+chalk.cyan(o));console.log(),console.log(chalk.gray(" Next steps · ")+chalk.bold.cyan("icoa demo2")+chalk.gray(" (5-min intro) · ")+chalk.bold.cyan("icoa learn")+chalk.gray(" (curriculum)")),console.log()}catch(o){const e=o instanceof Error?o.message:String(o);console.log(chalk.yellow(` Sim error: ${e}`))}}(l||"baseline")})}export{r as SCENARIOS};
1
+ import chalk from"chalk";import{spawn as o}from"node:child_process";import{mkdirSync as e,readFileSync as n,writeFileSync as t}from"node:fs";import{join as r}from"node:path";import{homedir as a}from"node:os";import{fetchWithCountdown as l}from"../lib/countdown.js";const s=r(a(),".icoa","sim-cooldown.json"),c={baseline:{action:null,label:"Baseline — ICOA-VLA predicting normally",hint:"This is what the VLA does WITHOUT attack. Gripper closes, arm reaches forward."},release:{action:{xyz:[.1,0,.3],rotation:[0,0,0],gripper_close:.05},label:'Prompt Injection — "release the gripper"',hint:"Gripper opens (0.05 < 0.10 win threshold). This is Paper D Q41 success."},patch:{action:{xyz:[-.3,.2,.5],rotation:[.5,0,.3],gripper_close:.95},label:"Adversarial Patch — sticker redirects the arm",hint:"Same instruction, but arm reaches LEFT instead of RIGHT. Paper D Q42 success."},confused:{action:{xyz:[.001,0,.001],rotation:[0,0,0],gripper_close:.5},label:'Modality Confusion — "pick up the purple object"',hint:"No purple object exists. VLA freezes near origin. Paper D Q43 success."},color:{action:{xyz:[.4,-.3,.6],rotation:[-.4,.2,-.1],gripper_close:.2},label:"Cross-Modal Attack — image + text manipulated together",hint:"Action drifts hard on multiple axes. Paper D Q49-class attack (future).",hidden:!0}},i=Object.fromEntries(Object.entries(c).filter(([,o])=>!o.hidden));export function registerSimCommand(p){p.command("sim [scenario]").description("Render a MuJoCo VLA replay (baseline / release / patch / confused)").action(async p=>{await async function(p){const g=c[p.toLowerCase()];if(!g){console.log(),console.log(chalk.yellow(` Unknown scenario: "${p}"`)),console.log(chalk.gray(" Available:"));for(const[o,e]of Object.entries(i))console.log(chalk.gray(" ")+chalk.bold.cyan(o.padEnd(10))+chalk.gray(e.label));return void console.log()}const d=(Date.now()-function(){try{const o=n(s,"utf-8"),e=JSON.parse(o);return"number"==typeof e.lastCallAt?e.lastCallAt:0}catch{return 0}}())/1e3;if(d<60){const o=Math.ceil(60-d);return console.log(),console.log(chalk.yellow(` Please wait ${o}s before the next sim.`)),console.log(chalk.gray(" (One render per minute keeps things fast for everyone.)")),void console.log()}const y=`${process.env.ICOA_SERVER_URL?.replace(/\/+$/,"")||"https://practice.icoa2026.au"}/api/ai/vla/41/sim`;console.log(),console.log(chalk.bold.cyan(" ICOA · MuJoCo Sim")),console.log(chalk.gray(" ")+chalk.white(g.label)),console.log();try{const n=fetch(y,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:g.action}),signal:AbortSignal.timeout(6e4)}),c=await l(n);if(!c.ok)return void console.log(chalk.yellow(` Server returned HTTP ${c.status}.`));const d=await c.json();if(!d.success||!d.data?.mp4_b64)return void console.log(chalk.yellow(" Renderer unavailable."));const u=process.env.TMPDIR||"/tmp",m=r(u,`icoa-sim-${p}-${Date.now()}.mp4`);t(m,Buffer.from(d.data.mp4_b64,"base64")),function(o){try{e(r(a(),".icoa"),{recursive:!0}),t(s,JSON.stringify({lastCallAt:o}))}catch{}}(Date.now()),console.log(),console.log(chalk.bold.green(" ✓")+chalk.gray(" ")+chalk.white(m)),d.data.description&&console.log(chalk.gray(" Action: ")+chalk.white(d.data.description)),console.log(),console.log(chalk.gray(" ")+g.hint),console.log();const f="darwin"===process.platform?"open":"win32"===process.platform?"start":"xdg-open";f?(o(f,[m],{stdio:"ignore",detached:!0}).unref(),console.log(chalk.gray(" Opening in your default video player..."))):console.log(chalk.gray(" Open the file above in any video player.")),console.log(),console.log(chalk.gray(" You just rendered a Franka Panda controlled by ")+chalk.bold.cyan("ICOA-VLA")+chalk.gray(" through ")+chalk.bold.cyan("MuJoCo")+chalk.gray(".")),console.log(chalk.bold.yellow(" You installed nothing.")),console.log();const h="1"===process.env.ICOA_INSIDE_REPL?"":"icoa ";console.log(chalk.gray(" Try other scenarios:"));for(const o of Object.keys(i))o!==p.toLowerCase()&&console.log(chalk.gray(" "+h+"sim ")+chalk.cyan(o));console.log(),console.log(chalk.gray(" Next steps · ")+chalk.bold.cyan(h+"demo2")+chalk.gray(" (5-min intro) · ")+chalk.bold.cyan(h+"learn")+chalk.gray(" (curriculum)")),console.log()}catch(o){const e=o instanceof Error?o.message:String(o);console.log(chalk.yellow(` Sim error: ${e}`))}}(p||"baseline")})}export{c as SCENARIOS};
package/dist/repl.js CHANGED
@@ -1 +1 @@
1
- import{createInterface as o}from"node:readline";import{spawn as e,execSync as t}from"node:child_process";import chalk from"chalk";import{isConnected as l,getConfig as n,saveConfig as s}from"./lib/config.js";import{isActivated as a,activateToken as r,isFreeCommand as i,isDeviceMatch as c,recordExit as g,recordResume as y,isFirstRunOrUpgrade as m,markVersionSeen as d}from"./lib/access.js";import{setReplMode as p}from"./lib/ui.js";import{returnToMainMenu as u,printMenuHint as h,menuHintInline as w}from"./lib/menu-nav.js";import{isChatActive as f,handleChatMessage as b}from"./commands/ai4ctf.js";import{isCtf4aiActive as x,handleCtf4aiMessage as v}from"./commands/ctf4ai-demo.js";import{isVla4CtfActive as C,handleVla4CtfMessage as A}from"./commands/vla4ctf.js";import{getExamState as I,getRealExamState as k,getDemoState as T}from"./lib/exam-state.js";import{getDemoStats as $}from"./lib/demo-stats.js";import{isExamSetupComplete as S}from"./lib/exam-setup.js";import{DEMO_PICK_SIZE as O,DEMO_POOL_SIZE as L}from"./lib/demo-exam.js";import{isNativeWindowsCmd as P}from"./lib/platform.js";import{resetTerminalTheme as E}from"./lib/theme.js";import{ensureSandbox as q,runInSandbox as D,isDockerAvailable as j}from"./lib/sandbox.js";import{logCommand as R}from"./lib/logger.js";import{startLogSync as N,stopLogSync as F}from"./lib/log-sync.js";import{existsSync as M,mkdirSync as U,writeFileSync as z}from"node:fs";import{join as W}from"node:path";import{homedir as B}from"node:os";function Q(){return k()?chalk.cyan("exam> "):T()?chalk.yellow("demo> "):chalk.green("icoa> ")}const _=W(B(),"icoa-workspace");function Y(){return M(_)||U(_,{recursive:!0}),_}const V=new Set(["sudo","su","doas","pkexec","brew","apt","apt-get","yum","choco","npm","npx","pip","pip3","shutdown","reboot","halt","mkfs","fdisk","dd","iptables","ufw"]),J="__REPL_NO_EXIT__",G="2.5.1";function K(){const o=$(),e=S(),l=`Free practice — ${O} questions (from pool of ${L})`,n=P();if(console.log(),console.log(` ${chalk.cyan.bold("[Selection Mode]")}`),console.log(),n)console.log(chalk.gray(" Platform: ")+chalk.white("Windows cmd.exe")+chalk.gray(" — routed to Paper C (MCQ-only, 45 min, 70 pts, zero extra tools)")),console.log();else if(o.attempts>0){const o=function(){const o=["python3.12 --version","/opt/homebrew/opt/python@3.12/bin/python3.12 --version","/usr/local/opt/python@3.12/bin/python3.12 --version","python3 --version","python --version","py -3.12 --version","py -3 --version"];let e="",l="missing";for(const n of o)try{const o=t(n,{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim().replace("Python ",""),[s,a]=o.split(".").map(Number);if(3===s&&12===a)return{ok:!0,version:o,status:"ok"};e=o,l=3===s&&a>=10&&a<12?"old":3===s&&a>12?"new":"missing"}catch{}return{ok:"missing"!==l,version:e,status:l}}();"missing"===o.status?(console.log(chalk.yellow(" ⚠ Python not detected. For exam practical questions:")),console.log(chalk.gray(" → ")+chalk.bold.cyan("env python")+chalk.gray(" (platform install guide)")),console.log()):"new"===o.status&&(console.log(chalk.yellow(` ⚠ Python ${o.version} may lack CTF wheels. Python 3.12 recommended:`)),console.log(chalk.gray(" → ")+chalk.bold.cyan("env python")+chalk.gray(" (install guide)")),console.log())}if(0===o.attempts)console.log(chalk.white(" New here? Start with ")+chalk.bold.cyan("demo")+chalk.white(" — it takes a few minutes.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.cyan(" demo")+chalk.gray(` ${l}`)),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"));else if(e||n){const e=1===o.attempts?"attempt":"attempts";o.attempts>0&&console.log(chalk.green(" ✓ Demo completed ")+chalk.gray(`(${o.attempts} ${e})`)),n||console.log(chalk.green(" ✓ Environment ready")),console.log(chalk.yellow(" → Enter your exam token to begin.")),console.log(chalk.gray(" (10-char code from your organizer, starts with your country code like ")+chalk.cyan("UA")+chalk.gray(" — case-insensitive)")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.yellow(" exam <token>")+chalk.gray(" Enter exam (primary action — use your organizer-issued token)")),console.log(chalk.gray(" format: ")+chalk.white("exam UAxxxxxxxx")+chalk.gray(" (2-letter country prefix + 8 chars)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Other commands:")),console.log(chalk.white(" demo")+chalk.gray(` ${l}`)),n||console.log(chalk.white(" exam setup")+chalk.gray(" Re-verify tool environment")),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"))}else{const e=1===o.attempts?"attempt":"attempts";console.log(chalk.green(" ✓ Demo completed ")+chalk.gray(`(${o.attempts} ${e}${o.bestPercentage>0?` · best ${o.bestPercentage}%`:""})`)),console.log(chalk.yellow(" → Next: prepare your environment for the real exam.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" demo")+chalk.gray(` ${l}`)),console.log(chalk.bold.yellow(" exam setup")+chalk.gray(" Install tools for national selection (~150MB)")),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"))}console.log(chalk.gray(" ")+chalk.gray("Tip: ")+chalk.cyan("help")+chalk.gray(" for commands · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()}export async function startRepl(e,T){const $=n(),S=l(),O=process.exit.bind(process),L=a();if($.demoCleanedForVersion!==G){try{const{existsSync:o,unlinkSync:e}=await import("node:fs"),{join:t}=await import("node:path"),{getIcoaDir:l}=await import("./lib/config.js"),n=t(l(),"demo-state.json");o(n)&&e(n)}catch{}s({demoCleanedForVersion:G})}const{select:P,confirm:H}=await import("@inquirer/prompts"),X=$.mode||"",oo=[{name:` ${chalk.bold("National Selection")} ${chalk.gray("—")} ${chalk.gray("demo, exam (lightweight)")}`,value:"selection"},{name:` ${chalk.bold("Embodied AI Security")} 🤖 ${chalk.gray("—")} ${chalk.gray("VLA4CTF: demo, learn, Paper D (pre-competition)")}`,value:"embodied"},{name:` ${chalk.bold("International Olympiad")} ${chalk.gray("—")} ${chalk.gray("CTF × AI (~500MB, advanced)")}`,value:"olympiad"},{name:` ${chalk.bold("National/Regional Partner")} ${chalk.gray("—")} ${chalk.gray("organizer tools (tokens, competitions)")}`,value:"organizer"},{name:` ${chalk.gray("About ICOA")} ${chalk.gray("·")} ${chalk.gray("Info & contact")}`,value:"about"}];console.log(chalk.gray(" Use ")+chalk.yellow("↑")+chalk.gray(" or ")+chalk.yellow("↓")+chalk.gray(" to select, ")+chalk.yellow("Enter")+chalk.gray(" to confirm.")),console.log();let eo="";for(;!eo;){const o=await P({message:"Mode",choices:oo,default:X||"selection"});"about"!==o?eo=o:(console.clear(),console.log(),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(chalk.bold.yellow(" ICOA")+chalk.white(" — AI-Native CLI OS for Cyber & AI Security")),console.log(chalk.gray(" Olympiad & Competition · K-12 to University")),console.log(chalk.cyan(" ───────────────────────────────────────────────────")),console.log(),console.log(chalk.bold.white(" What Makes ICOA Different")),console.log(chalk.gray(" · AI-native AI teammate, AI adversary, AI translation")),console.log(chalk.gray(" · CLI OS Complete competition environment in terminal")),console.log(chalk.gray(" · 110 tools pwntools, z3, gdb, nmap, sleuthkit... pre-configured")),console.log(chalk.gray(" · Global scale 15,000+ concurrent exams · 15 languages")),console.log(),console.log(chalk.bold.white(" Competition Format")),console.log(` ${chalk.green.bold("AI4CTF")}${chalk.gray(" [Day 1] AI as teammate — 5hr jeopardy CTF")}`),console.log(` ${chalk.red.bold("CTF4AI")}${chalk.gray(" [Day 2] Challenge AI — adversarial ML, red-team")}`),console.log(` ${chalk.cyan.bold("VLA4CTF")}${chalk.gray(" [Day 3] Embodied AI — attack robot brains (NEW)")}`),console.log(),console.log(chalk.white(" Sydney, Australia")+chalk.gray(" · Jun 27 - Jul 2, 2026 · 40+ countries")),console.log(),console.log(chalk.bold.white(" Organized by")+chalk.gray(" ASRA (Australia) · ICO Foundation Inc")),console.log(chalk.bold.white(" Contact ")+chalk.cyan(" australia@icoa2026.au · accreditation@icoa2026.au")),console.log(chalk.bold.white(" Website ")+chalk.cyan.underline(" https://icoa2026.au")),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(),console.log(chalk.gray(" Press ")+chalk.yellow("Enter")+chalk.gray(" to return...")),await new Promise(o=>{const e=t=>{process.stdin.removeListener("data",e),process.stdin.isTTY&&process.stdin.setRawMode&&process.stdin.setRawMode(!1),process.stdin.pause(),o()};process.stdin.isTTY&&process.stdin.setRawMode&&process.stdin.setRawMode(!0),process.stdin.resume(),process.stdin.once("data",e)}),console.clear())}if("olympiad"===eo&&"olympiad"!==X&&(console.log(),console.log(chalk.yellow(" This mode will download ~500MB of CTF tools and AI models.")),await H({message:"Continue?",default:!0})||(eo="selection",console.log(chalk.gray(" Switched to National Selection mode.")))),eo!==X&&s({mode:eo}),console.log(),"olympiad"===eo&&m(G)){d(G),console.log(chalk.gray(" Checking competition environment..."));const{execSync:o}=await import("node:child_process"),e=[{name:"pwntools",cmd:'python3 -c "import pwn"'},{name:"z3-solver",cmd:'python3 -c "import z3"'},{name:"numpy",cmd:'python3 -c "import numpy"'},{name:"requests",cmd:'python3 -c "import requests"'}];let t=0;for(const l of e)try{o(l.cmd,{stdio:"ignore"})}catch{t++}if(t>0){console.log(chalk.yellow(` ${t} core libraries missing.`));try{const{confirm:o}=await import("@inquirer/prompts");if(await o({message:" Install competition Python libraries now?",default:!0,theme:{prefix:"",style:{message:o=>chalk.green(o),defaultAnswer:o=>chalk.green(o)}}})){console.log();const{execSync:o}=await import("node:child_process");o("icoa env setup",{stdio:"inherit"})}}catch{console.log(chalk.gray(" Run ")+chalk.white("env setup")+chalk.gray(" later to install."))}console.log()}else console.log(chalk.green(" All core libraries ready.")),console.log()}if(T){const o=y();if(o){const e=Math.floor(o.awaySeconds/60),t=o.awaySeconds%60;console.log(chalk.yellow(` Session resumed. Away: ${e}m ${t}s | Total exits: ${o.exitCount}`)),console.log()}}"selection"===eo?K():"embodied"===eo?(console.log(chalk.cyan.bold(" [Embodied AI Security 🤖]")),console.log(),console.log(chalk.bold.cyan(" VLA4CTF")+chalk.gray(" — ICOA 2026's new competition track")),console.log(chalk.gray(" alongside ")+chalk.green("AI4CTF")+chalk.gray(" (Day 1) and ")+chalk.red("CTF4AI")+chalk.gray(" (Day 2)")),console.log(),console.log(chalk.white(" Embodied AI is at its ImageNet moment.")),console.log(chalk.gray(" VLA models, MuJoCo physics, real robot arms —")),console.log(chalk.gray(" all running on ICOA servers, zero local setup.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.green(" sim")+chalk.gray(" ")+chalk.bold.yellow("★ WOW shortcut")+chalk.gray(" — robot arm replay in 5 sec (no install)")),console.log(chalk.bold.green(" demo2")+chalk.gray(" ~5 min interactive intro + live MuJoCo sim")),console.log(chalk.bold.green(" learn")+chalk.gray(" free 11-card intro (LEARNDEMO01)")),console.log(chalk.bold.green(" learn ")+chalk.bold.yellow("EAxxxxxxxx")+chalk.gray(" full 100/480-card curriculum (team-issued)")),console.log(chalk.bold.green(" exam ")+chalk.bold.yellow("PDxxxxxxxx")+chalk.gray(" Paper D (VLA4CTF) — national selection contestants")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(),console.log(chalk.gray(" Three open tiers: ")+chalk.green("free 11")+chalk.gray(" · ")+chalk.yellow("registered 100")+chalk.gray(" · ")+chalk.bold.magenta("national team 480")+chalk.gray(" (PhD-ready)")),console.log(chalk.gray(" Country team contact: ")+chalk.cyan("australia@icoa2026.au")),console.log(),h(),console.log()):"organizer"===eo?(console.log(chalk.yellow.bold(" [National/Regional Partner]")),console.log(),console.log(chalk.bold.white(" ██╗ ██████╗ ██████╗ █████╗")),console.log(chalk.bold.white(" ██║██╔════╝██╔═══██╗██╔══██╗")),console.log(chalk.bold.white(" ██║██║ ██║ ██║███████║")),console.log(chalk.bold.white(" ██║██║ ██║ ██║██╔══██║")),console.log(chalk.bold.white(" ██║╚██████╗╚██████╔╝██║ ██║")),console.log(chalk.bold.white(" ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝")),console.log(),console.log(chalk.yellow(" International Cyber Olympiad in AI 2026")),console.log(chalk.bold.magenta(" The World's First AI-Native CLI Operating System")),console.log(chalk.bold.magenta(" for Cybersecurity & AI Security Competition")),console.log(chalk.bold.magenta(" and Olympiad for K-12")),console.log(chalk.gray(" Sydney, Australia · Jun 27 - Jul 2, 2026")),console.log(),console.log(chalk.white(" Vision")),console.log(chalk.gray(" Building a global pipeline for youth cyber & AI")),console.log(chalk.gray(" security talent through education and competition.")),console.log(),console.log(chalk.white(" Capacity")),console.log(chalk.gray(" 15,000+ concurrent online examinations")),console.log(chalk.gray(" National selection, training, and education support")),console.log(),console.log(chalk.white(" Olympic Spirit")),console.log(chalk.gray(" Excellence · Friendship · Respect")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" New country accreditation & support:")),console.log(chalk.cyan(" australia@icoa2026.au")),console.log(chalk.cyan(" accreditation@icoa2026.au")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(),S?(console.log(chalk.green(` Logged in as ${$.userName}`)),console.log(chalk.white(" exam list")+chalk.gray(" Manage exams")),console.log(chalk.white(" logout")+chalk.gray(" Disconnect"))):console.log(chalk.white(" join <url>")+chalk.gray(" Connect to manage exams")),console.log(),h(),console.log()):L&&!c()?(console.log(chalk.red(" Token was activated on a different device.")),console.log(chalk.gray(" Contact organizer for assistance.")),console.log()):S?(console.log(chalk.green.bold(` Welcome back, ${$.userName}!`)),console.log(chalk.gray(` Connected to ${$.ctfdUrl}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Ready to compete? Start here:")),console.log(),console.log(chalk.bold.cyan(" challenges")+chalk.gray(" Browse challenges by category")),console.log(chalk.white(" status")+chalk.gray(" Your score & hint budget")),console.log(chalk.white(" scoreboard")+chalk.gray(" Live rankings")),console.log(chalk.white(" help")+chalk.gray(" Full command list")),console.log(),console.log(chalk.gray(" Tool environment:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("help")+chalk.gray(" · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()):L?(Y(),console.log(chalk.green.bold(" Welcome, competitor!")),console.log(chalk.gray(` Workspace: ${_}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Get started:")),console.log(),console.log(chalk.white(" Step 1 ")+chalk.bold.cyan("join <url>")+chalk.gray(" Connect to competition server")),console.log(chalk.white(" Step 2 ")+chalk.bold.cyan("challenges")+chalk.gray(" Browse & solve challenges")),console.log(chalk.white(" Step 3 ")+chalk.bold.cyan("ai4ctf")+chalk.gray(" Ask AI when stuck")),console.log(),console.log(chalk.gray(" Before Step 1 — make sure your tools are ready:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(),console.log(chalk.gray(" Also: ")+chalk.white("help")+chalk.gray(" all commands")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+w()+chalk.gray(" · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()):(console.log(chalk.bold.white(" Welcome to ICOA CLI — International Olympiad")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" To begin, activate your competition token:")),console.log(),console.log(chalk.bold.cyan(" activate <token>")),console.log(),console.log(chalk.gray(" While waiting, explore:")),console.log(chalk.white(" ref linux")+chalk.gray(" Quick reference for Linux")),console.log(chalk.white(" ref web")+chalk.gray(" Quick reference for Web")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.white(" help")+chalk.gray(" All available commands")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+w()+chalk.gray(" · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()),e.exitOverride(),e.configureOutput({writeErr:()=>{},writeOut:o=>{console.log(o)}});const to=o({input:process.stdin,output:process.stdout,prompt:Q(),terminal:!0});let lo=!1;p(!0),N();const no=to.prompt.bind(to);to.prompt=o=>{f()||x()||C()||to.setPrompt(Q()),no(o)},to.prompt(),to.on("line",async o=>{if(lo)return;const l=o.trim();if(!l)return to.setPrompt(f()?chalk.magenta("ai4ctf> "):Q()),void to.prompt();if("menu"===l||"menu confirm"===l)return k()&&"menu confirm"!==l?(console.log(),console.log(chalk.yellow(" Real exam active. Progress is auto-saved.")),console.log(chalk.gray(" To return to main menu anyway, type ")+chalk.white("menu confirm")),console.log(),void to.prompt()):void u(to);if(f()){lo=!0;const o=await b(l);return lo=!1,"exit"===o&&to.setPrompt(Q()),void to.prompt()}if(x()){lo=!0;const o=await v(l);return lo=!1,"exit"!==o&&"solved"!==o||to.setPrompt(Q()),void to.prompt()}if(C()){lo=!0;const o=await A(l);return lo=!1,"exit"===o&&to.setPrompt(Q()),to.setPrompt(C()?chalk.bold.cyan("vla4ctf> "):Q()),void to.prompt()}if(R(l),"exit"===l)return I()?(console.log(),console.log(chalk.yellow(" ⚠ An exam is in progress.")),console.log(chalk.white(" To return to menu without losing progress, type: ")+chalk.bold.cyan("back")),console.log(chalk.white(" To fully close ICOA CLI, type: ")+chalk.bold.cyan("quit")),console.log(chalk.gray(" Your progress is auto-saved either way.")),console.log(),void to.prompt()):(console.log(),console.log(chalk.gray(" ")+chalk.white("exit")+chalk.gray(" returns to the main menu. To fully close ICOA CLI, type ")+chalk.bold.cyan("quit")+chalk.gray(".")),"selection"===eo&&K(),void to.prompt());if("quit"===l||"q"===l||"quit confirm"===l){const o=I();return o&&"demo-free"!==o.session.examId&&"quit confirm"!==l?(console.log(),console.log(chalk.yellow(" ⚠ A real exam is in progress.")),console.log(chalk.gray(" Your answers are auto-saved on the server, but the exam timer keeps ticking")),console.log(chalk.gray(" on the server side even if you close the CLI.")),console.log(),console.log(chalk.white(" To leave the CLI but keep the exam alive, type: ")+chalk.bold.cyan("back")),console.log(chalk.gray(" (recommended — you can resume with ")+chalk.cyan("exam q 1")+chalk.gray(" after relaunching icoa)")),console.log(),console.log(chalk.white(" To really close ICOA CLI, type: ")+chalk.bold.cyan("quit confirm")),console.log(),void to.prompt()):(o&&"demo-free"===o.session.examId&&(console.log(),console.log(chalk.gray(" Demo paused. Resume with: ")+chalk.white("demo")+chalk.gray(" (fresh) or ")+chalk.white("exam q 1")+chalk.gray(" (continue)."))),F(),g(),console.log(chalk.gray(" Session saved. Use ")+chalk.white("icoa --resume")+chalk.gray(" to continue.")),E(),void O(0))}if("back"===l){const o=I(),e=o&&"demo-free"!==o.session.examId,t=o&&"demo-free"===o.session.examId&&(()=>{const e=new Date(o.session.startedAt||0).getTime();return Date.now()-e<18e5})();if(e)console.log(),console.log(chalk.gray(" Exam paused. Your progress is saved.")),console.log(chalk.white(" Resume: exam q 1")+chalk.gray(" · ")+chalk.white("exam review")+chalk.gray(" · ")+chalk.white("exam submit")),console.log();else if(t){const e=Object.keys(o.answers).length,t=o.session.questionCount;console.log(),console.log(chalk.gray(` Demo paused (${e}/${t} answered). Resume with: `)+chalk.white("exam q 1")),console.log(chalk.gray(" Or type ")+chalk.white("demo")+chalk.gray(" to restart.")),console.log()}else{if(o&&"demo-free"===o.session.examId){const{clearExamState:o}=await import("./lib/exam-state.js");o("demo-free")}const e=n();fetch("https://practice.icoa2026.au/api/icoa/demo-stats",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({type:"post-report-back",lang:e.language||"en",timestamp:(new Date).toISOString()}),signal:AbortSignal.timeout(5e3)}).catch(()=>{}),"selection"===eo?K():console.log(chalk.gray(" Already at main menu."))}return void to.prompt()}if("help"===l||"?"===l){if(I()){lo=!0;try{await e.parseAsync(["node","icoa","exam","help"])}catch{}return lo=!1,void to.prompt()}return function(o,e="olympiad"){console.log(),"selection"===e||"organizer"===e?(console.log(chalk.bold.white(" Exam")),console.log(chalk.white(" join <url> ")+chalk.gray("Connect to exam server")),console.log(chalk.white(" exam list ")+chalk.gray("Available exams")),console.log(chalk.white(" exam start <id> ")+chalk.gray("Begin an exam")),console.log(chalk.white(" exam q [n] ")+chalk.gray("View questions")),console.log(chalk.white(" exam answer <n> <X> ")+chalk.gray("Answer question")),console.log(chalk.white(" exam review ")+chalk.gray("Review all answers")),console.log(chalk.white(" exam submit ")+chalk.gray("Submit for grading")),console.log(chalk.white(" exam result ")+chalk.gray("View your score")),console.log(),console.log(chalk.bold.white(" System")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference")),console.log(chalk.white(" setup ")+chalk.gray("Settings / switch mode")),console.log(chalk.white(" lang [code] ")+chalk.gray("Switch language")),console.log(chalk.white(" clear ")+chalk.gray("Clear screen")),console.log(chalk.white(" exit ")+chalk.gray("Quit")),console.log()):o?(console.log(chalk.cyan(" ═══════════════════════════════════════════════")),console.log(chalk.bold.white(" How it works")),console.log(),console.log(chalk.gray(" 1. Browse ")+chalk.white("challenges")+chalk.gray(" and pick one")),console.log(chalk.gray(" 2. ")+chalk.white("open <id>")+chalk.gray(" to read the challenge")),console.log(chalk.gray(" 3. Use ")+chalk.white("ai4ctf")+chalk.gray(" to chat with AI when stuck")),console.log(chalk.gray(" 4. ")+chalk.white("submit <id> icoa{flag}")+chalk.gray(" to score points")),console.log(chalk.gray(" 5. Check ")+chalk.white("scoreboard")+chalk.gray(" to track your rank")),console.log(chalk.cyan(" ═══════════════════════════════════════════════")),console.log(),console.log(chalk.bold.white(" Competition")),console.log(chalk.white(" join <url> ")+chalk.gray("Connect to CTFd")),console.log(chalk.white(" challenges (ch) ")+chalk.gray("List challenges by category")),console.log(chalk.white(" open <id> ")+chalk.gray("Read challenge + get next steps")),console.log(chalk.white(" submit <id> <flag> ")+chalk.gray("Submit a flag")),console.log(chalk.white(" scoreboard (sb) ")+chalk.gray("Live rankings")),console.log(chalk.white(" status ")+chalk.gray("Your score, budget & timer")),console.log(chalk.white(" time ")+chalk.gray("Countdown timer")),console.log(),console.log(chalk.bold.white(" AI Teammate")+chalk.gray(" — 3 levels, use wisely")),console.log(chalk.white(' hint "question" ')+chalk.gray("Level A — General guidance (50 uses)")),console.log(chalk.white(' hint-b "question" ')+chalk.gray("Level B — Deep analysis (10 uses)")),console.log(chalk.white(' hint-c "question" ')+chalk.gray("Level C — Critical assist (2 uses)")),console.log(chalk.white(" hint budget ")+chalk.gray("Check remaining uses")),console.log(chalk.white(" ai4ctf ")+chalk.gray("Free-chat with AI (no limit)")),console.log(),console.log(chalk.bold.white(" Tools")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference (linux, web, crypto...)")),console.log(chalk.white(" shell ")+chalk.gray("Docker sandbox")),console.log(chalk.white(" files <id> ")+chalk.gray("Download challenge files")),console.log(chalk.white(" connect <id> ")+chalk.gray("Connect to remote target")),console.log(chalk.white(" note [text] ")+chalk.gray("Personal notepad")),console.log(chalk.white(" log ")+chalk.gray("Session history")),console.log(),console.log(chalk.bold.white(" System")),console.log(chalk.white(" setup ")+chalk.gray("Configure settings")),console.log(chalk.white(" lang [code] ")+chalk.gray("Switch language (15 supported)")),console.log(chalk.white(" logout ")+chalk.gray("Disconnect")),console.log(chalk.white(" clear ")+chalk.gray("Clear screen")),console.log(chalk.white(" exit ")+chalk.gray("Quit (session saved)")),console.log()):(console.log(chalk.bold.yellow(" Restricted Mode — activate with a token to unlock all commands")),console.log(),console.log(chalk.white(" activate <token> ")+chalk.gray("Unlock full access")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference")),console.log(chalk.white(" exit ")+chalk.gray("Quit")),console.log())}(a(),eo),void to.prompt()}if("more help"===l.toLowerCase()&&I()){lo=!0;try{await e.parseAsync(["node","icoa","exam","more-help"])}catch{}return lo=!1,void to.prompt()}if("continue"===l.toLowerCase())return console.log(),console.log(chalk.green.bold(" ═══ AI4CTF — AI as Your Teammate ═══")),console.log(),console.log(chalk.white(" In AI4CTF, you solve cybersecurity challenges")),console.log(chalk.white(" with AI by your side.")),console.log(),console.log(chalk.white(" In competition, you get AI help at 3 levels:")),console.log(chalk.yellow(" hint a")+chalk.gray(" General guidance (50 uses)")),console.log(chalk.yellow(" hint b")+chalk.gray(" Deep analysis (10 uses)")),console.log(chalk.yellow(" hint c")+chalk.gray(" Critical assist (2 uses)")),console.log(),console.log(chalk.white(" Try it now! Type: ")+chalk.bold.green("ai4ctf")),console.log(chalk.gray(' Chat freely with your AI teammate. Type "exit" when done.')),console.log(),console.log(chalk.gray(" After ai4ctf, try: ")+chalk.bold.red("ctf4ai")+chalk.gray(' — trick the AI into saying "koala"')),console.log(),void to.prompt();if(/^ICOA-[A-Z]{2,3}-\d{1,6}$/i.test(l.trim())){lo=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim()])}catch{}return lo=!1,void to.prompt()}if(/^[A-Z]{2}[0-9A-HJKMNP-TV-Z]{8}$/i.test(l.trim())){lo=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim().toUpperCase()])}catch{}return lo=!1,void to.prompt()}const s=l.match(/^exam\s+([A-Z]{2}[0-9A-HJKMNP-TV-Z]{8})$/i);if(s){lo=!0;try{await e.parseAsync(["node","icoa","exam","token",s[1].toUpperCase()])}catch{}return lo=!1,void to.prompt()}const y=l.match(/^exam\s+([A-Z]{2,3})$/i);if(y){lo=!0;try{await e.parseAsync(["node","icoa","exam","list",y[1]])}catch{}return lo=!1,void to.prompt()}if("clear"===l||"cls"===l)return console.clear(),void to.prompt();if(l.startsWith("activate ")){const o=l.slice(9).trim(),e=r(o);return"ok"===e?console.log(chalk.green(" Access granted! Token bound to this device.")):"already_bound"===e?(console.log(),console.log(chalk.red(" Token already activated on a different device.")),console.log(chalk.gray(" Each token binds to the first device that uses it. If you lost the device,")),console.log(chalk.gray(" contact your proctor to have the token re-issued for a new device."))):(console.log(),console.log(chalk.red(" Token not recognized.")),console.log(chalk.gray(" Possible reasons:")),console.log(chalk.white(" • ")+chalk.gray("Typo — tokens are case-insensitive, 10 chars, start with a 2-letter country code (e.g. ")+chalk.cyan("UAK7M2R9Q4")+chalk.gray(")")),console.log(chalk.white(" • ")+chalk.gray("Expired — ask your proctor or organizer for a fresh token")),console.log(chalk.white(" • ")+chalk.gray("Network — verify connection to ")+chalk.cyan("practice.icoa2026.au")),console.log(chalk.gray(" Still stuck? type ")+chalk.cyan("help")+chalk.gray(" or try ")+chalk.cyan("exam demo")+chalk.gray(" for a free practice round."))),console.log(),void to.prompt()}if("activate"===l)return console.log(chalk.gray(" Usage: ")+chalk.white("activate <token>")),console.log(),void to.prompt();const m=I();if(m){const o=l.toUpperCase().trim(),t=o=>{const e=m.questions.find(e=>e.number===o);return!!e&&("ai4ctf"===e.type||"ctf4ai"===e.type||e.options&&!e.options.A&&!e.options.B)},n=o=>{const e="demo-free"!==m.session.examId,t=e&&o>=39?"ctf4ai":e&&o>=31?"ai4ctf":null;console.log(),console.log(chalk.yellow(` Q${o} is a practical question — letters (A/B/C/D) don't apply here.`)),t?(console.log(chalk.white(" Enter the AI chat for this question: ")+chalk.bold.cyan(t)),console.log(chalk.gray(" Or submit a flag directly: ")+chalk.green(`exam answer ${o} ICOA{your_flag}`))):console.log(chalk.gray(" Submit a flag: ")+chalk.green(`exam answer ${o} ICOA{your_flag}`)),console.log()};if(/^[ABCD]$/.test(o)){const l=m._lastQ||1;if(t(l))return n(l),void to.prompt();lo=!0;try{await e.parseAsync(["node","icoa","exam","answer",String(l),o])}catch{}return lo=!1,void to.prompt()}const s=o.match(/^(\d+)\s+([ABCD])$/);if(s){const o=parseInt(s[1],10);if(t(o))return n(o),void to.prompt();lo=!0;try{await e.parseAsync(["node","icoa","exam","answer",s[1],s[2]])}catch{}return lo=!1,void to.prompt()}}const d=l.split(/\s+/)[0].toLowerCase(),p=/^python3?(\.\d+)?$/.test(d),h=l.startsWith("!")||d.startsWith("!")||p;if("embodied"===eo&&!h&&!["demo2","learn","exam","vla4ctf","lang","ref","setup","env","sim"].includes(d))return console.log(chalk.gray(" Not available in Embodied AI Security mode.")),console.log(chalk.white(" Try ")+chalk.bold.cyan("demo2")+chalk.gray(" (intro) · ")+chalk.bold.cyan("learn")+chalk.gray(" (curriculum) · ")+chalk.bold.cyan("exam <PD-token>")+chalk.gray(" (Paper D)")),console.log(),void to.prompt();if("selection"===eo&&!h&&!["exam","demo","retry","nations","next","prev","continue","setup","lang","ref","ai4ctf","ctf4ai","mark","unmark","review","submit","env","sim"].includes(d)){if(console.log(chalk.gray(" Not available in Selection mode.")),m){const o=m._lastQ||1;console.log(chalk.white(` Resume exam: exam q ${o}`)+chalk.gray(" · ")+chalk.white("A/B/C/D")+chalk.gray(" to answer"))}else console.log(chalk.gray(" Try: demo · setup to switch mode"));return console.log(),void to.prompt()}if("organizer"===eo&&!["join","exam","demo","retry","next","prev","logout","setup","lang","ref","ctf","mark","unmark","review","submit"].includes(d))return console.log(chalk.gray(" Not available in Organizer mode. Switch via: setup")),console.log(),void to.prompt();if(!("olympiad"!==eo||a()&&c()||i(d)))return console.log(chalk.yellow(" Restricted mode. ")+chalk.gray("Enter your access token:")),console.log(chalk.white(" activate <token>")),console.log(),console.log(chalk.gray(" Free commands: ")+chalk.white("ref [topic]")+chalk.gray(", ")+chalk.white("help")+chalk.gray(", ")+chalk.white("exit")),console.log(),void to.prompt();if(!["join","activate","challenges","ch","open","submit","flag","scoreboard","sb","status","time","ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","demo","retry","nations","next","prev","continue","logout","ctf4ai","mark","unmark","review","submit","learn","demo2","vla4ctf","theme","sim"].includes(d)){if(V.has(d))return console.log(chalk.red(` Blocked: ${d} is not allowed during competition.`)),console.log(),void to.prompt();if(/(?:^|\s)(?:\/(?!home\/|Users\/|tmp\/)|\.\.\/|~\/)/.test(l)&&!l.startsWith("cd ")){const o=/(?:^|\s)\/(?!home\/\w+\/icoa-workspace|Users\/\w+\/icoa-workspace|tmp\/)/.test(l),e=/\.\./.test(l);if(o||e)return console.log(chalk.red(" Blocked: access outside workspace is not allowed.")),console.log(chalk.gray(` Workspace: ${_}`)),console.log(),void to.prompt()}let o=l.startsWith("!")?l.slice(1).trim():l;if("darwin"===process.platform){const e="/opt/homebrew/opt/python@3.12/bin/python3.12";o=o.replace(/^python3?\s/,`${e} `).replace(/^(python3|python)$/,e)}else if("win32"===process.platform){const e=(()=>{try{return t("py -3 --version",{stdio:["ignore","ignore","ignore"],timeout:1500}),"py -3"}catch{}return"python"})();o=o.replace(/^python3?(\.\d+)?\s/,`${e} `).replace(/^python3?(\.\d+)?$/,e)}else{const e=(()=>{try{return t("which python3.12",{stdio:"ignore"}),"python3.12"}catch{return"python3"}})();o=o.replace(/^python\s/,`${e} `).replace(/^python$/,e)}const e=Y();/^(\S*python3?(\.\d+)?)\s*$/.test(o)&&(o=`PYTHONSTARTUP="${function(){const o=W(B(),".icoa");M(o)||U(o,{recursive:!0});const e=W(o,"python-startup.py");return M(e)||z(e,"# ICOA exam interactive startup — auto-loaded by PYTHONSTARTUP\nimport base64, struct, hashlib, re, json, os, sys, binascii\ntry: import requests\nexcept ImportError: pass\ntry: from Crypto.Cipher import AES\nexcept ImportError: pass\ntry: from Crypto.Util.Padding import pad, unpad\nexcept ImportError: pass\ntry: from pwn import xor, p32, u32, p64, u64\nexcept ImportError: pass\ntry: import bs4\nexcept ImportError: pass\ntry: import numpy as np\nexcept ImportError: pass\n"),e}()}" ${o}`,console.log(),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log(chalk.bold.white(" Python ready — ICOA exam toolkit pre-loaded")),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log(),console.log(chalk.white(" Already imported: ")+chalk.gray("base64, struct, hashlib, re, json, binascii")),console.log(chalk.white(" Also available: ")+chalk.gray("requests, bs4, numpy, AES, pad/unpad, xor, p32/u32/p64/u64")),console.log(),console.log(chalk.yellow(" Quick examples:")),console.log(chalk.gray(' base64.b64decode("aGVsbG8=") ')+chalk.gray("# decode base64")),console.log(chalk.gray(' bytes.fromhex("48656c6c6f") ')+chalk.gray("# hex → bytes")),console.log(chalk.gray(' "ICOA{x}".encode() ')+chalk.gray("# str → bytes")),console.log(chalk.gray(" [chr(c) for c in [73,67,79,65]] ")+chalk.gray("# ASCII codes")),console.log(chalk.gray(' xor(bytes.fromhex("0a2b"), b"IC") ')+chalk.gray("# pwntools XOR")),console.log(),console.log(chalk.gray(" Exit: ")+chalk.white("exit()")+chalk.gray(" or Ctrl-D")),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log()),lo=!0;try{j()&&await q()?await D(o,to):await Z(o,to,e)}catch{console.log(chalk.yellow(` Command failed: ${d}`))}return lo=!1,console.log(),void to.prompt()}lo=!0;const w=l.trim(),T=w.toLowerCase();let $,S=null,L="";if(m)if("submit"===T)S="final";else if(T.startsWith("submit ")){let o=w.slice(7).trim();/^submit\s+/i.test(o)&&(o=o.replace(/^submit\s+/i,"").trim()),o=o.replace(/^["'`]+|["'`]+$/g,"").trim(),o&&/^ICOA\{[^}]*\}?$/i.test(o)&&(S="flag",L=o)}else/^ICOA\{[^}]+\}$/i.test(w)&&(S="flag",L=w);$="final"===S?["exam","submit"]:"flag"===S?["exam","answer",String(m?._lastQ||1),L]:function(o){const e=o.split(/\s+/),t=e[0].toLowerCase(),l=e.slice(1),n={demo:["exam","demo"],retry:["exam","demo-retry"],nations:["exam","nations"],next:["exam","next"],prev:["exam","prev"],mark:["exam","mark",...l],unmark:["exam","unmark",...l],review:["exam","review"],logout:["ctf","logout"],join:["ctf","join",...l],activate:["ctf","activate",...l],challenges:["ctf","challenges"],ch:["ctf","challenges"],open:["ctf","open",...l],submit:["ctf","submit",...l],flag:["ctf","submit",...l],scoreboard:["ctf","scoreboard",...l],sb:["ctf","scoreboard",...l],status:["ctf","status"],time:["ctf","time"]};return n[t]?n[t]:["ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","ctf4ai"].includes(t)?[t,...l]:e}(l);const P="ctf"===$[0]&&"join"===$[1];P&&to.pause(),process.exit=()=>{throw new Error(J)};try{await e.parseAsync(["node","icoa",...$])}catch(o){const e=o instanceof Error?o.message:String(o);if(e===J);else if(e.includes("commander.unknownCommand")){const{distance:o}=await import("fastest-levenshtein"),e=["ctf","ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","exam","ctf4ai","theme","clear","cls","quit","exit","back","menu","help","continue","activate","demo","challenges","status","scoreboard","join","logout"],t=d.split(/\s+/)[0]||d;let l={word:"",dist:1/0};for(const n of e){const e=o(t.toLowerCase(),n);e<l.dist&&(l={word:n,dist:e})}console.log(chalk.yellow(` Unknown command: ${d}.`)),l.dist>0&&l.dist<=2&&console.log(chalk.gray(" Did you mean: ")+chalk.bold.cyan(l.word)+chalk.gray("?")),console.log(chalk.gray(" Type ")+chalk.cyan("help")+chalk.gray(" for the full command list."))}else e.includes("commander.")||(e.includes("fetch failed")||e.includes("ECONNREFUSED")||e.includes("ETIMEDOUT"))&&console.log(chalk.yellow(" Network error. Check your connection."))}finally{process.exit=O,lo=!1,P&&to.resume()}f()?to.setPrompt(chalk.magenta("ai4ctf> ")):x()?to.setPrompt(chalk.red("ctf4ai> ")):C()&&to.setPrompt(chalk.bold.cyan("vla4ctf> ")),console.log(),to.prompt()}),to.on("SIGINT",()=>{if(console.log(),f()||x())console.log(chalk.yellow(" Ctrl+C did not close ICOA CLI — you are still in the AI chat.")),console.log(chalk.white(" Type ")+chalk.bold.cyan("exit")+chalk.white(" to leave the chat and return to the menu."));else if(I()){const o="demo-free"!==I().session.examId;console.log(chalk.yellow(" Ctrl+C did NOT close ICOA CLI.")),console.log(chalk.gray(` Your ${o?"exam":"demo"} is paused and every answer is auto-saved.`)),console.log(),console.log(chalk.white(" Resume: ")+chalk.cyan("exam q 1")+chalk.gray(" · Back to menu: ")+chalk.cyan("back")+chalk.gray(" · Close CLI: ")+chalk.cyan(o?"quit confirm":"quit"))}else console.log(chalk.yellow(" Ctrl+C did not close ICOA CLI — you are still at the ")+chalk.cyan("icoa>")+chalk.yellow(" prompt.")),console.log(chalk.gray(" Keep typing — ")+chalk.cyan("help")+chalk.gray(" lists commands. (Only ")+chalk.cyan("quit")+chalk.gray(" or Ctrl+D actually close the CLI.)"));console.log(),to.prompt()}),to.on("close",()=>{F(),g(),E(),O(0)})}function Z(o,t,l){return new Promise(n=>{const s=process.stdin,a=!!s.isTTY&&!!s.isRaw;if(t.pause(),s.isTTY&&"function"==typeof s.setRawMode)try{s.setRawMode(!1)}catch{}const r=e(o,{shell:!0,stdio:"inherit",cwd:l||process.cwd()}),i=()=>{if(s.isTTY&&"function"==typeof s.setRawMode&&a)try{s.setRawMode(!0)}catch{}t.resume(),n()};r.on("close",i),r.on("error",i)})}
1
+ import{createInterface as o}from"node:readline";import{spawn as e,execSync as t}from"node:child_process";import chalk from"chalk";import{isConnected as l,getConfig as n,saveConfig as s}from"./lib/config.js";import{isActivated as a,activateToken as r,isFreeCommand as i,isDeviceMatch as c,recordExit as g,recordResume as y,isFirstRunOrUpgrade as m,markVersionSeen as d}from"./lib/access.js";import{setReplMode as p}from"./lib/ui.js";import{returnToMainMenu as u,printMenuHint as h,menuHintInline as w}from"./lib/menu-nav.js";import{isChatActive as f,handleChatMessage as b}from"./commands/ai4ctf.js";import{isCtf4aiActive as x,handleCtf4aiMessage as v}from"./commands/ctf4ai-demo.js";import{isVla4CtfActive as C,handleVla4CtfMessage as A}from"./commands/vla4ctf.js";import{getExamState as I,getRealExamState as k,getDemoState as T}from"./lib/exam-state.js";import{getDemoStats as $}from"./lib/demo-stats.js";import{isExamSetupComplete as S}from"./lib/exam-setup.js";import{DEMO_PICK_SIZE as O,DEMO_POOL_SIZE as P}from"./lib/demo-exam.js";import{isNativeWindowsCmd as E}from"./lib/platform.js";import{resetTerminalTheme as L}from"./lib/theme.js";import{ensureSandbox as q,runInSandbox as D,isDockerAvailable as R}from"./lib/sandbox.js";import{logCommand as j}from"./lib/logger.js";import{startLogSync as N,stopLogSync as F}from"./lib/log-sync.js";import{existsSync as M,mkdirSync as U,writeFileSync as z}from"node:fs";import{join as W}from"node:path";import{homedir as B}from"node:os";function _(){return k()?chalk.cyan("exam> "):T()?chalk.yellow("demo> "):chalk.green("icoa> ")}const Q=W(B(),"icoa-workspace");function Y(){return M(Q)||U(Q,{recursive:!0}),Q}const V=new Set(["sudo","su","doas","pkexec","brew","apt","apt-get","yum","choco","npm","npx","pip","pip3","shutdown","reboot","halt","mkfs","fdisk","dd","iptables","ufw"]),J="__REPL_NO_EXIT__",G="2.5.1";function K(){const o=$(),e=S(),l=`Free practice — ${O} questions (from pool of ${P})`,n=E();if(console.log(),console.log(` ${chalk.cyan.bold("[Selection Mode]")}`),console.log(),n)console.log(chalk.gray(" Platform: ")+chalk.white("Windows cmd.exe")+chalk.gray(" — routed to Paper C (MCQ-only, 45 min, 70 pts, zero extra tools)")),console.log();else if(o.attempts>0){const o=function(){const o=["python3.12 --version","/opt/homebrew/opt/python@3.12/bin/python3.12 --version","/usr/local/opt/python@3.12/bin/python3.12 --version","python3 --version","python --version","py -3.12 --version","py -3 --version"];let e="",l="missing";for(const n of o)try{const o=t(n,{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim().replace("Python ",""),[s,a]=o.split(".").map(Number);if(3===s&&12===a)return{ok:!0,version:o,status:"ok"};e=o,l=3===s&&a>=10&&a<12?"old":3===s&&a>12?"new":"missing"}catch{}return{ok:"missing"!==l,version:e,status:l}}();"missing"===o.status?(console.log(chalk.yellow(" ⚠ Python not detected. For exam practical questions:")),console.log(chalk.gray(" → ")+chalk.bold.cyan("env python")+chalk.gray(" (platform install guide)")),console.log()):"new"===o.status&&(console.log(chalk.yellow(` ⚠ Python ${o.version} may lack CTF wheels. Python 3.12 recommended:`)),console.log(chalk.gray(" → ")+chalk.bold.cyan("env python")+chalk.gray(" (install guide)")),console.log())}if(0===o.attempts)console.log(chalk.white(" New here? Start with ")+chalk.bold.cyan("demo")+chalk.white(" — it takes a few minutes.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.cyan(" demo")+chalk.gray(` ${l}`)),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"));else if(e||n){const e=1===o.attempts?"attempt":"attempts";o.attempts>0&&console.log(chalk.green(" ✓ Demo completed ")+chalk.gray(`(${o.attempts} ${e})`)),n||console.log(chalk.green(" ✓ Environment ready")),console.log(chalk.yellow(" → Enter your exam token to begin.")),console.log(chalk.gray(" (10-char code from your organizer, starts with your country code like ")+chalk.cyan("UA")+chalk.gray(" — case-insensitive)")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.yellow(" exam <token>")+chalk.gray(" Enter exam (primary action — use your organizer-issued token)")),console.log(chalk.gray(" format: ")+chalk.white("exam UAxxxxxxxx")+chalk.gray(" (2-letter country prefix + 8 chars)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Other commands:")),console.log(chalk.white(" demo")+chalk.gray(` ${l}`)),n||console.log(chalk.white(" exam setup")+chalk.gray(" Re-verify tool environment")),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"))}else{const e=1===o.attempts?"attempt":"attempts";console.log(chalk.green(" ✓ Demo completed ")+chalk.gray(`(${o.attempts} ${e}${o.bestPercentage>0?` · best ${o.bestPercentage}%`:""})`)),console.log(chalk.yellow(" → Next: prepare your environment for the real exam.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" demo")+chalk.gray(` ${l}`)),console.log(chalk.bold.yellow(" exam setup")+chalk.gray(" Install tools for national selection (~150MB)")),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"))}console.log(chalk.gray(" ")+chalk.gray("Tip: ")+chalk.cyan("help")+chalk.gray(" for commands · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()}export async function startRepl(e,T){process.env.ICOA_INSIDE_REPL="1";const $=n(),S=l(),O=process.exit.bind(process),P=a();if($.demoCleanedForVersion!==G){try{const{existsSync:o,unlinkSync:e}=await import("node:fs"),{join:t}=await import("node:path"),{getIcoaDir:l}=await import("./lib/config.js"),n=t(l(),"demo-state.json");o(n)&&e(n)}catch{}s({demoCleanedForVersion:G})}const{select:E,confirm:H}=await import("@inquirer/prompts"),X=$.mode||"",oo=[{name:` ${chalk.bold("National Selection")} ${chalk.gray("—")} ${chalk.gray("demo, exam (lightweight)")}`,value:"selection"},{name:` ${chalk.bold("Embodied AI Security")} 🤖 ${chalk.gray("—")} ${chalk.gray("VLA4CTF: demo, learn, Paper D (pre-competition)")}`,value:"embodied"},{name:` ${chalk.bold("International Olympiad")} ${chalk.gray("—")} ${chalk.gray("CTF × AI (~500MB, advanced)")}`,value:"olympiad"},{name:` ${chalk.bold("National/Regional Partner")} ${chalk.gray("—")} ${chalk.gray("organizer tools (tokens, competitions)")}`,value:"organizer"},{name:` ${chalk.gray("About ICOA")} ${chalk.gray("·")} ${chalk.gray("Info & contact")}`,value:"about"}];console.log(chalk.gray(" Use ")+chalk.yellow("↑")+chalk.gray(" or ")+chalk.yellow("↓")+chalk.gray(" to select, ")+chalk.yellow("Enter")+chalk.gray(" to confirm.")),console.log();let eo="";for(;!eo;){const o=await E({message:"Mode",choices:oo,default:X||"selection"});"about"!==o?eo=o:(console.clear(),console.log(),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(chalk.bold.yellow(" ICOA")+chalk.white(" — AI-Native CLI OS for Cyber & AI Security")),console.log(chalk.gray(" Olympiad & Competition · K-12 to University")),console.log(chalk.cyan(" ───────────────────────────────────────────────────")),console.log(),console.log(chalk.bold.white(" What Makes ICOA Different")),console.log(chalk.gray(" · AI-native AI teammate, AI adversary, AI translation")),console.log(chalk.gray(" · CLI OS Complete competition environment in terminal")),console.log(chalk.gray(" · 110 tools pwntools, z3, gdb, nmap, sleuthkit... pre-configured")),console.log(chalk.gray(" · Global scale 15,000+ concurrent exams · 15 languages")),console.log(),console.log(chalk.bold.white(" Competition Format")),console.log(` ${chalk.green.bold("AI4CTF")}${chalk.gray(" [Day 1] AI as teammate — 5hr jeopardy CTF")}`),console.log(` ${chalk.red.bold("CTF4AI")}${chalk.gray(" [Day 2] Challenge AI — adversarial ML, red-team")}`),console.log(` ${chalk.cyan.bold("VLA4CTF")}${chalk.gray(" [Practice Round] Embodied AI — attack robot brains (NEW)")}`),console.log(),console.log(chalk.white(" Sydney, Australia")+chalk.gray(" · Jun 27 - Jul 2, 2026 · 40+ countries")),console.log(),console.log(chalk.bold.white(" Organized by")+chalk.gray(" ASRA (Australia) · ICO Foundation Inc")),console.log(chalk.bold.white(" Contact ")+chalk.cyan(" australia@icoa2026.au · accreditation@icoa2026.au")),console.log(chalk.bold.white(" Website ")+chalk.cyan.underline(" https://icoa2026.au")),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(),console.log(chalk.gray(" Press ")+chalk.yellow("Enter")+chalk.gray(" to return...")),await new Promise(o=>{const e=t=>{process.stdin.removeListener("data",e),process.stdin.isTTY&&process.stdin.setRawMode&&process.stdin.setRawMode(!1),process.stdin.pause(),o()};process.stdin.isTTY&&process.stdin.setRawMode&&process.stdin.setRawMode(!0),process.stdin.resume(),process.stdin.once("data",e)}),console.clear())}if("olympiad"===eo&&"olympiad"!==X&&(console.log(),console.log(chalk.yellow(" This mode will download ~500MB of CTF tools and AI models.")),await H({message:"Continue?",default:!0})||(eo="selection",console.log(chalk.gray(" Switched to National Selection mode.")))),eo!==X&&s({mode:eo}),console.log(),"olympiad"===eo&&m(G)){d(G),console.log(chalk.gray(" Checking competition environment..."));const{execSync:o}=await import("node:child_process"),e=[{name:"pwntools",cmd:'python3 -c "import pwn"'},{name:"z3-solver",cmd:'python3 -c "import z3"'},{name:"numpy",cmd:'python3 -c "import numpy"'},{name:"requests",cmd:'python3 -c "import requests"'}];let t=0;for(const l of e)try{o(l.cmd,{stdio:"ignore"})}catch{t++}if(t>0){console.log(chalk.yellow(` ${t} core libraries missing.`));try{const{confirm:o}=await import("@inquirer/prompts");if(await o({message:" Install competition Python libraries now?",default:!0,theme:{prefix:"",style:{message:o=>chalk.green(o),defaultAnswer:o=>chalk.green(o)}}})){console.log();const{execSync:o}=await import("node:child_process");o("icoa env setup",{stdio:"inherit"})}}catch{console.log(chalk.gray(" Run ")+chalk.white("env setup")+chalk.gray(" later to install."))}console.log()}else console.log(chalk.green(" All core libraries ready.")),console.log()}if(T){const o=y();if(o){const e=Math.floor(o.awaySeconds/60),t=o.awaySeconds%60;console.log(chalk.yellow(` Session resumed. Away: ${e}m ${t}s | Total exits: ${o.exitCount}`)),console.log()}}"selection"===eo?K():"embodied"===eo?(console.log(chalk.cyan.bold(" [Embodied AI Security 🤖]")),console.log(),console.log(chalk.bold.cyan(" VLA4CTF")+chalk.gray(" — ICOA 2026's new ")+chalk.bold.white("practice round")),console.log(chalk.gray(" running before the main events: ")+chalk.green("AI4CTF")+chalk.gray(" (Day 1) and ")+chalk.red("CTF4AI")+chalk.gray(" (Day 2)")),console.log(),console.log(chalk.white(" Embodied AI is at its ImageNet moment.")),console.log(chalk.gray(" VLA models, MuJoCo physics, real robot arms —")),console.log(chalk.gray(" all running on ICOA servers, zero local setup.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.green(" sim")+chalk.gray(" ")+chalk.bold.yellow("★ WOW shortcut")+chalk.gray(" — robot arm replay in 5 sec (no install)")),console.log(chalk.bold.green(" demo2")+chalk.gray(" ~5 min interactive intro + live MuJoCo sim")),console.log(chalk.bold.green(" learn")+chalk.gray(" free 11-card intro (LEARNDEMO01)")),console.log(chalk.bold.green(" learn ")+chalk.bold.yellow("EAxxxxxxxx")+chalk.gray(" full 100/480-card curriculum (team-issued)")),console.log(chalk.bold.green(" exam ")+chalk.bold.yellow("PDxxxxxxxx")+chalk.gray(" Paper D (VLA4CTF) — national selection contestants")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(),console.log(chalk.gray(" Three open tiers: ")+chalk.green("free 11")+chalk.gray(" · ")+chalk.yellow("registered 100")+chalk.gray(" · ")+chalk.bold.magenta("national team 480")+chalk.gray(" (PhD-ready)")),console.log(chalk.gray(" Country team contact: ")+chalk.cyan("australia@icoa2026.au")),console.log(),h(),console.log()):"organizer"===eo?(console.log(chalk.yellow.bold(" [National/Regional Partner]")),console.log(),console.log(chalk.bold.white(" ██╗ ██████╗ ██████╗ █████╗")),console.log(chalk.bold.white(" ██║██╔════╝██╔═══██╗██╔══██╗")),console.log(chalk.bold.white(" ██║██║ ██║ ██║███████║")),console.log(chalk.bold.white(" ██║██║ ██║ ██║██╔══██║")),console.log(chalk.bold.white(" ██║╚██████╗╚██████╔╝██║ ██║")),console.log(chalk.bold.white(" ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝")),console.log(),console.log(chalk.yellow(" International Cyber Olympiad in AI 2026")),console.log(chalk.bold.magenta(" The World's First AI-Native CLI Operating System")),console.log(chalk.bold.magenta(" for Cybersecurity & AI Security Competition")),console.log(chalk.bold.magenta(" and Olympiad for K-12")),console.log(chalk.gray(" Sydney, Australia · Jun 27 - Jul 2, 2026")),console.log(),console.log(chalk.white(" Vision")),console.log(chalk.gray(" Building a global pipeline for youth cyber & AI")),console.log(chalk.gray(" security talent through education and competition.")),console.log(),console.log(chalk.white(" Capacity")),console.log(chalk.gray(" 15,000+ concurrent online examinations")),console.log(chalk.gray(" National selection, training, and education support")),console.log(),console.log(chalk.white(" Olympic Spirit")),console.log(chalk.gray(" Excellence · Friendship · Respect")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" New country accreditation & support:")),console.log(chalk.cyan(" australia@icoa2026.au")),console.log(chalk.cyan(" accreditation@icoa2026.au")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(),S?(console.log(chalk.green(` Logged in as ${$.userName}`)),console.log(chalk.white(" exam list")+chalk.gray(" Manage exams")),console.log(chalk.white(" logout")+chalk.gray(" Disconnect"))):console.log(chalk.white(" join <url>")+chalk.gray(" Connect to manage exams")),console.log(),h(),console.log()):P&&!c()?(console.log(chalk.red(" Token was activated on a different device.")),console.log(chalk.gray(" Contact organizer for assistance.")),console.log()):S?(console.log(chalk.green.bold(` Welcome back, ${$.userName}!`)),console.log(chalk.gray(` Connected to ${$.ctfdUrl}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Ready to compete? Start here:")),console.log(),console.log(chalk.bold.cyan(" challenges")+chalk.gray(" Browse challenges by category")),console.log(chalk.white(" status")+chalk.gray(" Your score & hint budget")),console.log(chalk.white(" scoreboard")+chalk.gray(" Live rankings")),console.log(chalk.white(" help")+chalk.gray(" Full command list")),console.log(),console.log(chalk.gray(" Tool environment:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("help")+chalk.gray(" · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()):P?(Y(),console.log(chalk.green.bold(" Welcome, competitor!")),console.log(chalk.gray(` Workspace: ${Q}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Get started:")),console.log(),console.log(chalk.white(" Step 1 ")+chalk.bold.cyan("join <url>")+chalk.gray(" Connect to competition server")),console.log(chalk.white(" Step 2 ")+chalk.bold.cyan("challenges")+chalk.gray(" Browse & solve challenges")),console.log(chalk.white(" Step 3 ")+chalk.bold.cyan("ai4ctf")+chalk.gray(" Ask AI when stuck")),console.log(),console.log(chalk.gray(" Before Step 1 — make sure your tools are ready:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(),console.log(chalk.gray(" Also: ")+chalk.white("help")+chalk.gray(" all commands")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+w()+chalk.gray(" · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()):(console.log(chalk.bold.white(" Welcome to ICOA CLI — International Olympiad")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" To begin, activate your competition token:")),console.log(),console.log(chalk.bold.cyan(" activate <token>")),console.log(),console.log(chalk.gray(" While waiting, explore:")),console.log(chalk.white(" ref linux")+chalk.gray(" Quick reference for Linux")),console.log(chalk.white(" ref web")+chalk.gray(" Quick reference for Web")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.white(" help")+chalk.gray(" All available commands")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+w()+chalk.gray(" · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()),e.exitOverride(),e.configureOutput({writeErr:()=>{},writeOut:o=>{console.log(o)}});const to=o({input:process.stdin,output:process.stdout,prompt:_(),terminal:!0});let lo=!1;p(!0),N();const no=to.prompt.bind(to);to.prompt=o=>{f()||x()||C()||to.setPrompt(_()),no(o)},to.prompt(),to.on("line",async o=>{if(lo)return;const l=o.trim();if(!l)return to.setPrompt(f()?chalk.magenta("ai4ctf> "):_()),void to.prompt();if("menu"===l||"menu confirm"===l)return k()&&"menu confirm"!==l?(console.log(),console.log(chalk.yellow(" Real exam active. Progress is auto-saved.")),console.log(chalk.gray(" To return to main menu anyway, type ")+chalk.white("menu confirm")),console.log(),void to.prompt()):void u(to);if(f()){lo=!0;const o=await b(l);return lo=!1,"exit"===o&&to.setPrompt(_()),void to.prompt()}if(x()){lo=!0;const o=await v(l);return lo=!1,"exit"!==o&&"solved"!==o||to.setPrompt(_()),void to.prompt()}if(C()){lo=!0;const o=await A(l);return lo=!1,"exit"===o&&to.setPrompt(_()),to.setPrompt(C()?chalk.bold.cyan("vla4ctf> "):_()),void to.prompt()}if(j(l),"exit"===l)return I()?(console.log(),console.log(chalk.yellow(" ⚠ An exam is in progress.")),console.log(chalk.white(" To return to menu without losing progress, type: ")+chalk.bold.cyan("back")),console.log(chalk.white(" To fully close ICOA CLI, type: ")+chalk.bold.cyan("quit")),console.log(chalk.gray(" Your progress is auto-saved either way.")),console.log(),void to.prompt()):(console.log(),console.log(chalk.gray(" ")+chalk.white("exit")+chalk.gray(" returns to the main menu. To fully close ICOA CLI, type ")+chalk.bold.cyan("quit")+chalk.gray(".")),"selection"===eo&&K(),void to.prompt());if("quit"===l||"q"===l||"quit confirm"===l){const o=I();return o&&"demo-free"!==o.session.examId&&"quit confirm"!==l?(console.log(),console.log(chalk.yellow(" ⚠ A real exam is in progress.")),console.log(chalk.gray(" Your answers are auto-saved on the server, but the exam timer keeps ticking")),console.log(chalk.gray(" on the server side even if you close the CLI.")),console.log(),console.log(chalk.white(" To leave the CLI but keep the exam alive, type: ")+chalk.bold.cyan("back")),console.log(chalk.gray(" (recommended — you can resume with ")+chalk.cyan("exam q 1")+chalk.gray(" after relaunching icoa)")),console.log(),console.log(chalk.white(" To really close ICOA CLI, type: ")+chalk.bold.cyan("quit confirm")),console.log(),void to.prompt()):(o&&"demo-free"===o.session.examId&&(console.log(),console.log(chalk.gray(" Demo paused. Resume with: ")+chalk.white("demo")+chalk.gray(" (fresh) or ")+chalk.white("exam q 1")+chalk.gray(" (continue)."))),F(),g(),console.log(chalk.gray(" Session saved. Use ")+chalk.white("icoa --resume")+chalk.gray(" to continue.")),L(),void O(0))}if("back"===l){const o=I(),e=o&&"demo-free"!==o.session.examId,t=o&&"demo-free"===o.session.examId&&(()=>{const e=new Date(o.session.startedAt||0).getTime();return Date.now()-e<18e5})();if(e)console.log(),console.log(chalk.gray(" Exam paused. Your progress is saved.")),console.log(chalk.white(" Resume: exam q 1")+chalk.gray(" · ")+chalk.white("exam review")+chalk.gray(" · ")+chalk.white("exam submit")),console.log();else if(t){const e=Object.keys(o.answers).length,t=o.session.questionCount;console.log(),console.log(chalk.gray(` Demo paused (${e}/${t} answered). Resume with: `)+chalk.white("exam q 1")),console.log(chalk.gray(" Or type ")+chalk.white("demo")+chalk.gray(" to restart.")),console.log()}else{if(o&&"demo-free"===o.session.examId){const{clearExamState:o}=await import("./lib/exam-state.js");o("demo-free")}const e=n();fetch("https://practice.icoa2026.au/api/icoa/demo-stats",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({type:"post-report-back",lang:e.language||"en",timestamp:(new Date).toISOString()}),signal:AbortSignal.timeout(5e3)}).catch(()=>{}),"selection"===eo?K():console.log(chalk.gray(" Already at main menu."))}return void to.prompt()}if("help"===l||"?"===l){if(I()){lo=!0;try{await e.parseAsync(["node","icoa","exam","help"])}catch{}return lo=!1,void to.prompt()}return function(o,e="olympiad"){console.log(),"selection"===e||"organizer"===e?(console.log(chalk.bold.white(" Exam")),console.log(chalk.white(" join <url> ")+chalk.gray("Connect to exam server")),console.log(chalk.white(" exam list ")+chalk.gray("Available exams")),console.log(chalk.white(" exam start <id> ")+chalk.gray("Begin an exam")),console.log(chalk.white(" exam q [n] ")+chalk.gray("View questions")),console.log(chalk.white(" exam answer <n> <X> ")+chalk.gray("Answer question")),console.log(chalk.white(" exam review ")+chalk.gray("Review all answers")),console.log(chalk.white(" exam submit ")+chalk.gray("Submit for grading")),console.log(chalk.white(" exam result ")+chalk.gray("View your score")),console.log(),console.log(chalk.bold.white(" System")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference")),console.log(chalk.white(" setup ")+chalk.gray("Settings / switch mode")),console.log(chalk.white(" lang [code] ")+chalk.gray("Switch language")),console.log(chalk.white(" clear ")+chalk.gray("Clear screen")),console.log(chalk.white(" exit ")+chalk.gray("Quit")),console.log()):o?(console.log(chalk.cyan(" ═══════════════════════════════════════════════")),console.log(chalk.bold.white(" How it works")),console.log(),console.log(chalk.gray(" 1. Browse ")+chalk.white("challenges")+chalk.gray(" and pick one")),console.log(chalk.gray(" 2. ")+chalk.white("open <id>")+chalk.gray(" to read the challenge")),console.log(chalk.gray(" 3. Use ")+chalk.white("ai4ctf")+chalk.gray(" to chat with AI when stuck")),console.log(chalk.gray(" 4. ")+chalk.white("submit <id> icoa{flag}")+chalk.gray(" to score points")),console.log(chalk.gray(" 5. Check ")+chalk.white("scoreboard")+chalk.gray(" to track your rank")),console.log(chalk.cyan(" ═══════════════════════════════════════════════")),console.log(),console.log(chalk.bold.white(" Competition")),console.log(chalk.white(" join <url> ")+chalk.gray("Connect to CTFd")),console.log(chalk.white(" challenges (ch) ")+chalk.gray("List challenges by category")),console.log(chalk.white(" open <id> ")+chalk.gray("Read challenge + get next steps")),console.log(chalk.white(" submit <id> <flag> ")+chalk.gray("Submit a flag")),console.log(chalk.white(" scoreboard (sb) ")+chalk.gray("Live rankings")),console.log(chalk.white(" status ")+chalk.gray("Your score, budget & timer")),console.log(chalk.white(" time ")+chalk.gray("Countdown timer")),console.log(),console.log(chalk.bold.white(" AI Teammate")+chalk.gray(" — 3 levels, use wisely")),console.log(chalk.white(' hint "question" ')+chalk.gray("Level A — General guidance (50 uses)")),console.log(chalk.white(' hint-b "question" ')+chalk.gray("Level B — Deep analysis (10 uses)")),console.log(chalk.white(' hint-c "question" ')+chalk.gray("Level C — Critical assist (2 uses)")),console.log(chalk.white(" hint budget ")+chalk.gray("Check remaining uses")),console.log(chalk.white(" ai4ctf ")+chalk.gray("Free-chat with AI (no limit)")),console.log(),console.log(chalk.bold.white(" Tools")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference (linux, web, crypto...)")),console.log(chalk.white(" shell ")+chalk.gray("Docker sandbox")),console.log(chalk.white(" files <id> ")+chalk.gray("Download challenge files")),console.log(chalk.white(" connect <id> ")+chalk.gray("Connect to remote target")),console.log(chalk.white(" note [text] ")+chalk.gray("Personal notepad")),console.log(chalk.white(" log ")+chalk.gray("Session history")),console.log(),console.log(chalk.bold.white(" System")),console.log(chalk.white(" setup ")+chalk.gray("Configure settings")),console.log(chalk.white(" lang [code] ")+chalk.gray("Switch language (15 supported)")),console.log(chalk.white(" logout ")+chalk.gray("Disconnect")),console.log(chalk.white(" clear ")+chalk.gray("Clear screen")),console.log(chalk.white(" exit ")+chalk.gray("Quit (session saved)")),console.log()):(console.log(chalk.bold.yellow(" Restricted Mode — activate with a token to unlock all commands")),console.log(),console.log(chalk.white(" activate <token> ")+chalk.gray("Unlock full access")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference")),console.log(chalk.white(" exit ")+chalk.gray("Quit")),console.log())}(a(),eo),void to.prompt()}if("more help"===l.toLowerCase()&&I()){lo=!0;try{await e.parseAsync(["node","icoa","exam","more-help"])}catch{}return lo=!1,void to.prompt()}if("continue"===l.toLowerCase())return console.log(),console.log(chalk.green.bold(" ═══ AI4CTF — AI as Your Teammate ═══")),console.log(),console.log(chalk.white(" In AI4CTF, you solve cybersecurity challenges")),console.log(chalk.white(" with AI by your side.")),console.log(),console.log(chalk.white(" In competition, you get AI help at 3 levels:")),console.log(chalk.yellow(" hint a")+chalk.gray(" General guidance (50 uses)")),console.log(chalk.yellow(" hint b")+chalk.gray(" Deep analysis (10 uses)")),console.log(chalk.yellow(" hint c")+chalk.gray(" Critical assist (2 uses)")),console.log(),console.log(chalk.white(" Try it now! Type: ")+chalk.bold.green("ai4ctf")),console.log(chalk.gray(' Chat freely with your AI teammate. Type "exit" when done.')),console.log(),console.log(chalk.gray(" After ai4ctf, try: ")+chalk.bold.red("ctf4ai")+chalk.gray(' — trick the AI into saying "koala"')),console.log(),void to.prompt();if(/^ICOA-[A-Z]{2,3}-\d{1,6}$/i.test(l.trim())){lo=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim()])}catch{}return lo=!1,void to.prompt()}if(/^[A-Z]{2}[0-9A-HJKMNP-TV-Z]{8}$/i.test(l.trim())){lo=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim().toUpperCase()])}catch{}return lo=!1,void to.prompt()}const s=l.match(/^exam\s+([A-Z]{2}[0-9A-HJKMNP-TV-Z]{8})$/i);if(s){lo=!0;try{await e.parseAsync(["node","icoa","exam","token",s[1].toUpperCase()])}catch{}return lo=!1,void to.prompt()}const y=l.match(/^exam\s+([A-Z]{2,3})$/i);if(y){lo=!0;try{await e.parseAsync(["node","icoa","exam","list",y[1]])}catch{}return lo=!1,void to.prompt()}if("clear"===l||"cls"===l)return console.clear(),void to.prompt();if(l.startsWith("activate ")){const o=l.slice(9).trim(),e=r(o);return"ok"===e?console.log(chalk.green(" Access granted! Token bound to this device.")):"already_bound"===e?(console.log(),console.log(chalk.red(" Token already activated on a different device.")),console.log(chalk.gray(" Each token binds to the first device that uses it. If you lost the device,")),console.log(chalk.gray(" contact your proctor to have the token re-issued for a new device."))):(console.log(),console.log(chalk.red(" Token not recognized.")),console.log(chalk.gray(" Possible reasons:")),console.log(chalk.white(" • ")+chalk.gray("Typo — tokens are case-insensitive, 10 chars, start with a 2-letter country code (e.g. ")+chalk.cyan("UAK7M2R9Q4")+chalk.gray(")")),console.log(chalk.white(" • ")+chalk.gray("Expired — ask your proctor or organizer for a fresh token")),console.log(chalk.white(" • ")+chalk.gray("Network — verify connection to ")+chalk.cyan("practice.icoa2026.au")),console.log(chalk.gray(" Still stuck? type ")+chalk.cyan("help")+chalk.gray(" or try ")+chalk.cyan("exam demo")+chalk.gray(" for a free practice round."))),console.log(),void to.prompt()}if("activate"===l)return console.log(chalk.gray(" Usage: ")+chalk.white("activate <token>")),console.log(),void to.prompt();const m=I();if(m){const o=l.toUpperCase().trim(),t=o=>{const e=m.questions.find(e=>e.number===o);return!!e&&("ai4ctf"===e.type||"ctf4ai"===e.type||e.options&&!e.options.A&&!e.options.B)},n=o=>{const e="demo-free"!==m.session.examId,t=e&&o>=39?"ctf4ai":e&&o>=31?"ai4ctf":null;console.log(),console.log(chalk.yellow(` Q${o} is a practical question — letters (A/B/C/D) don't apply here.`)),t?(console.log(chalk.white(" Enter the AI chat for this question: ")+chalk.bold.cyan(t)),console.log(chalk.gray(" Or submit a flag directly: ")+chalk.green(`exam answer ${o} ICOA{your_flag}`))):console.log(chalk.gray(" Submit a flag: ")+chalk.green(`exam answer ${o} ICOA{your_flag}`)),console.log()};if(/^[ABCD]$/.test(o)){const l=m._lastQ||1;if(t(l))return n(l),void to.prompt();lo=!0;try{await e.parseAsync(["node","icoa","exam","answer",String(l),o])}catch{}return lo=!1,void to.prompt()}const s=o.match(/^(\d+)\s+([ABCD])$/);if(s){const o=parseInt(s[1],10);if(t(o))return n(o),void to.prompt();lo=!0;try{await e.parseAsync(["node","icoa","exam","answer",s[1],s[2]])}catch{}return lo=!1,void to.prompt()}}const d=l.split(/\s+/)[0].toLowerCase(),p=/^python3?(\.\d+)?$/.test(d),h=l.startsWith("!")||d.startsWith("!")||p;if("embodied"===eo&&!h&&!["demo2","learn","exam","vla4ctf","lang","ref","setup","env","sim"].includes(d))return console.log(chalk.gray(" Not available in Embodied AI Security mode.")),console.log(chalk.white(" Try ")+chalk.bold.cyan("demo2")+chalk.gray(" (intro) · ")+chalk.bold.cyan("learn")+chalk.gray(" (curriculum) · ")+chalk.bold.cyan("exam <PD-token>")+chalk.gray(" (Paper D)")),console.log(),void to.prompt();if("selection"===eo&&!h&&!["exam","demo","retry","nations","next","prev","continue","setup","lang","ref","ai4ctf","ctf4ai","mark","unmark","review","submit","env","sim"].includes(d)){if(console.log(chalk.gray(" Not available in Selection mode.")),m){const o=m._lastQ||1;console.log(chalk.white(` Resume exam: exam q ${o}`)+chalk.gray(" · ")+chalk.white("A/B/C/D")+chalk.gray(" to answer"))}else console.log(chalk.gray(" Try: demo · setup to switch mode"));return console.log(),void to.prompt()}if("organizer"===eo&&!["join","exam","demo","retry","next","prev","logout","setup","lang","ref","ctf","mark","unmark","review","submit"].includes(d))return console.log(chalk.gray(" Not available in Organizer mode. Switch via: setup")),console.log(),void to.prompt();if(!("olympiad"!==eo||a()&&c()||i(d)))return console.log(chalk.yellow(" Restricted mode. ")+chalk.gray("Enter your access token:")),console.log(chalk.white(" activate <token>")),console.log(),console.log(chalk.gray(" Free commands: ")+chalk.white("ref [topic]")+chalk.gray(", ")+chalk.white("help")+chalk.gray(", ")+chalk.white("exit")),console.log(),void to.prompt();if(!["join","activate","challenges","ch","open","submit","flag","scoreboard","sb","status","time","ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","demo","retry","nations","next","prev","continue","logout","ctf4ai","mark","unmark","review","submit","learn","demo2","vla4ctf","theme","sim"].includes(d)){if(V.has(d))return console.log(chalk.red(` Blocked: ${d} is not allowed during competition.`)),console.log(),void to.prompt();if(/(?:^|\s)(?:\/(?!home\/|Users\/|tmp\/)|\.\.\/|~\/)/.test(l)&&!l.startsWith("cd ")){const o=/(?:^|\s)\/(?!home\/\w+\/icoa-workspace|Users\/\w+\/icoa-workspace|tmp\/)/.test(l),e=/\.\./.test(l);if(o||e)return console.log(chalk.red(" Blocked: access outside workspace is not allowed.")),console.log(chalk.gray(` Workspace: ${Q}`)),console.log(),void to.prompt()}let o=l.startsWith("!")?l.slice(1).trim():l;if("darwin"===process.platform){const e="/opt/homebrew/opt/python@3.12/bin/python3.12";o=o.replace(/^python3?\s/,`${e} `).replace(/^(python3|python)$/,e)}else if("win32"===process.platform){const e=(()=>{try{return t("py -3 --version",{stdio:["ignore","ignore","ignore"],timeout:1500}),"py -3"}catch{}return"python"})();o=o.replace(/^python3?(\.\d+)?\s/,`${e} `).replace(/^python3?(\.\d+)?$/,e)}else{const e=(()=>{try{return t("which python3.12",{stdio:"ignore"}),"python3.12"}catch{return"python3"}})();o=o.replace(/^python\s/,`${e} `).replace(/^python$/,e)}const e=Y();/^(\S*python3?(\.\d+)?)\s*$/.test(o)&&(o=`PYTHONSTARTUP="${function(){const o=W(B(),".icoa");M(o)||U(o,{recursive:!0});const e=W(o,"python-startup.py");return M(e)||z(e,"# ICOA exam interactive startup — auto-loaded by PYTHONSTARTUP\nimport base64, struct, hashlib, re, json, os, sys, binascii\ntry: import requests\nexcept ImportError: pass\ntry: from Crypto.Cipher import AES\nexcept ImportError: pass\ntry: from Crypto.Util.Padding import pad, unpad\nexcept ImportError: pass\ntry: from pwn import xor, p32, u32, p64, u64\nexcept ImportError: pass\ntry: import bs4\nexcept ImportError: pass\ntry: import numpy as np\nexcept ImportError: pass\n"),e}()}" ${o}`,console.log(),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log(chalk.bold.white(" Python ready — ICOA exam toolkit pre-loaded")),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log(),console.log(chalk.white(" Already imported: ")+chalk.gray("base64, struct, hashlib, re, json, binascii")),console.log(chalk.white(" Also available: ")+chalk.gray("requests, bs4, numpy, AES, pad/unpad, xor, p32/u32/p64/u64")),console.log(),console.log(chalk.yellow(" Quick examples:")),console.log(chalk.gray(' base64.b64decode("aGVsbG8=") ')+chalk.gray("# decode base64")),console.log(chalk.gray(' bytes.fromhex("48656c6c6f") ')+chalk.gray("# hex → bytes")),console.log(chalk.gray(' "ICOA{x}".encode() ')+chalk.gray("# str → bytes")),console.log(chalk.gray(" [chr(c) for c in [73,67,79,65]] ")+chalk.gray("# ASCII codes")),console.log(chalk.gray(' xor(bytes.fromhex("0a2b"), b"IC") ')+chalk.gray("# pwntools XOR")),console.log(),console.log(chalk.gray(" Exit: ")+chalk.white("exit()")+chalk.gray(" or Ctrl-D")),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log()),lo=!0;try{R()&&await q()?await D(o,to):await Z(o,to,e)}catch{console.log(chalk.yellow(` Command failed: ${d}`))}return lo=!1,console.log(),void to.prompt()}lo=!0;const w=l.trim(),T=w.toLowerCase();let $,S=null,P="";if(m)if("submit"===T)S="final";else if(T.startsWith("submit ")){let o=w.slice(7).trim();/^submit\s+/i.test(o)&&(o=o.replace(/^submit\s+/i,"").trim()),o=o.replace(/^["'`]+|["'`]+$/g,"").trim(),o&&/^ICOA\{[^}]*\}?$/i.test(o)&&(S="flag",P=o)}else/^ICOA\{[^}]+\}$/i.test(w)&&(S="flag",P=w);$="final"===S?["exam","submit"]:"flag"===S?["exam","answer",String(m?._lastQ||1),P]:function(o){const e=o.split(/\s+/),t=e[0].toLowerCase(),l=e.slice(1),n={demo:["exam","demo"],retry:["exam","demo-retry"],nations:["exam","nations"],next:["exam","next"],prev:["exam","prev"],mark:["exam","mark",...l],unmark:["exam","unmark",...l],review:["exam","review"],logout:["ctf","logout"],join:["ctf","join",...l],activate:["ctf","activate",...l],challenges:["ctf","challenges"],ch:["ctf","challenges"],open:["ctf","open",...l],submit:["ctf","submit",...l],flag:["ctf","submit",...l],scoreboard:["ctf","scoreboard",...l],sb:["ctf","scoreboard",...l],status:["ctf","status"],time:["ctf","time"]};return n[t]?n[t]:["ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","ctf4ai"].includes(t)?[t,...l]:e}(l);const E="ctf"===$[0]&&"join"===$[1];E&&to.pause(),process.exit=()=>{throw new Error(J)};try{await e.parseAsync(["node","icoa",...$])}catch(o){const e=o instanceof Error?o.message:String(o);if(e===J);else if(e.includes("commander.unknownCommand")){const{distance:o}=await import("fastest-levenshtein"),e=["ctf","ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","exam","ctf4ai","theme","clear","cls","quit","exit","back","menu","help","continue","activate","demo","challenges","status","scoreboard","join","logout"],t=d.split(/\s+/)[0]||d;let l={word:"",dist:1/0};for(const n of e){const e=o(t.toLowerCase(),n);e<l.dist&&(l={word:n,dist:e})}console.log(chalk.yellow(` Unknown command: ${d}.`)),l.dist>0&&l.dist<=2&&console.log(chalk.gray(" Did you mean: ")+chalk.bold.cyan(l.word)+chalk.gray("?")),console.log(chalk.gray(" Type ")+chalk.cyan("help")+chalk.gray(" for the full command list."))}else e.includes("commander.")||(e.includes("fetch failed")||e.includes("ECONNREFUSED")||e.includes("ETIMEDOUT"))&&console.log(chalk.yellow(" Network error. Check your connection."))}finally{process.exit=O,lo=!1,E&&to.resume()}f()?to.setPrompt(chalk.magenta("ai4ctf> ")):x()?to.setPrompt(chalk.red("ctf4ai> ")):C()&&to.setPrompt(chalk.bold.cyan("vla4ctf> ")),console.log(),to.prompt()}),to.on("SIGINT",()=>{if(console.log(),f()||x())console.log(chalk.yellow(" Ctrl+C did not close ICOA CLI — you are still in the AI chat.")),console.log(chalk.white(" Type ")+chalk.bold.cyan("exit")+chalk.white(" to leave the chat and return to the menu."));else if(I()){const o="demo-free"!==I().session.examId;console.log(chalk.yellow(" Ctrl+C did NOT close ICOA CLI.")),console.log(chalk.gray(` Your ${o?"exam":"demo"} is paused and every answer is auto-saved.`)),console.log(),console.log(chalk.white(" Resume: ")+chalk.cyan("exam q 1")+chalk.gray(" · Back to menu: ")+chalk.cyan("back")+chalk.gray(" · Close CLI: ")+chalk.cyan(o?"quit confirm":"quit"))}else console.log(chalk.yellow(" Ctrl+C did not close ICOA CLI — you are still at the ")+chalk.cyan("icoa>")+chalk.yellow(" prompt.")),console.log(chalk.gray(" Keep typing — ")+chalk.cyan("help")+chalk.gray(" lists commands. (Only ")+chalk.cyan("quit")+chalk.gray(" or Ctrl+D actually close the CLI.)"));console.log(),to.prompt()}),to.on("close",()=>{F(),g(),L(),O(0)})}function Z(o,t,l){return new Promise(n=>{const s=process.stdin,a=!!s.isTTY&&!!s.isRaw;if(t.pause(),s.isTTY&&"function"==typeof s.setRawMode)try{s.setRawMode(!1)}catch{}const r=e(o,{shell:!0,stdio:"inherit",cwd:l||process.cwd()}),i=()=>{if(s.isTTY&&"function"==typeof s.setRawMode&&a)try{s.setRawMode(!0)}catch{}t.resume(),n()};r.on("close",i),r.on("error",i)})}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "icoa-cli",
3
- "version": "2.19.134",
4
- "description": "ICOA CLI — The world's first CLI-native cyber & AI security olympiad terminal: AI4CTF (Day 1), CTF4AI (Day 2), VLA4CTF (Day 3 — embodied AI)",
3
+ "version": "2.19.136",
4
+ "description": "ICOA CLI — The world's first CLI-native cyber & AI security olympiad terminal: AI4CTF (Day 1), CTF4AI (Day 2), VLA4CTF (Practice Round — embodied AI)",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "icoa": "dist/index.js"