icoa-cli 2.19.135 → 2.19.137
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/ai4ctf.js +1 -1
- package/dist/commands/demo2.js +1 -1
- package/dist/commands/exam.js +1 -1
- package/dist/repl.js +1 -1
- package/package.json +2 -2
package/dist/commands/ai4ctf.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(b,j){const a4=a0j,k=b();while(!![]){try{const p=parseInt(a4(0x1d4))/(-0x1dd3+-0xe12*0x2+0x73f*0x8)*(-parseInt(a4(0x1f6))/(-0x943+0x1b*-0x16a+-0x1*-0x2f73))+parseInt(a4(0x158))/(0x2597*0x1+-0x4*-0x496+0x1*-0x37ec)+parseInt(a4(0x124))/(0x12ae+0x35e*-0x9+0xba4)*(-parseInt(a4(0x133))/(-0xcd9+-0x173a+0x2418))+-parseInt(a4(0x140))/(0x1286+0xcd1+-0x1f51)*(parseInt(a4(0x1f5))/(-0x2540+0x21f1*0x1+0x356))+parseInt(a4(0x12d))/(0x32*0x78+-0x1*-0x6a4+-0x1e0c)*(parseInt(a4(0x185))/(-0x14ca+0x21*-0x121+0x3a14))+parseInt(a4(0x151))/(0x2*0xf5e+-0x373*-0x6+-0x3364)*(parseInt(a4(0x128))/(-0x1eb3+-0x1*-0x1bc5+-0x2f9*-0x1))+parseInt(a4(0x142))/(-0x1*0x62f+-0x2*-0x34+0x5d3);if(p===j)break;else k['push'](k['shift']());}catch(q){k['push'](k['shift']());}}}(a0b,-0x43981*0x1+-0x11*0x1744+0x9d5fd));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';function a0j(a,b){a=a-(-0x1960+0x1*0x103d+0xa21);const c=a0b();let d=c[a];if(a0j['yfWgLh']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0xd6d+-0x1025*-0x1+-0x1d92,o,p,q=-0x64b+0x4*0x5f6+-0x118d;p=i['charAt'](q++);~p&&(o=n%(-0x2262+-0x2*0x631+0x2ec8)?o*(-0x1*-0x1bef+0x7*-0xbd+0x106*-0x16)+p:p,n++%(-0x996*-0x1+-0x1*-0xde5+-0x1777))?l+=String['fromCharCode'](-0x25ee+0x1*0x2245+-0x2*-0x254&o>>(-(-0x2369+0x1*-0x66b+0x29d6)*n&0x1cd6+-0xd10+-0xfc0)):-0xd6*-0x6+0xf4a+-0x144e){p=j['indexOf'](p);}for(let r=0xc47+0xbc1+-0x1808,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](0x1800+-0x1d60+0xe8*0x6))['slice'](-(0x219d+0x2060+0x1*-0x41fb));}return decodeURIComponent(m);};a0j['kQGXKu']=e,a0j['gajcXt']={},a0j['yfWgLh']=!![];}const f=c[0x36*0x14+0x1d*-0xe2+0x1562],g=a+f,h=a0j['gajcXt'][g];return!h?(d=a0j['kQGXKu'](d),a0j['gajcXt'][g]=d):d=h,d;}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=!(-0x18b6+0xcbc+0xbfb),g=null,r=0x4*0x5f6+-0x1987+0x1af,y=!(-0x2*0x631+-0x1d51+-0x2*-0x14da);const h=0x12*0x9cb+0x6b6*-0xe+0xd*0x12e;let u=null;export function isChatActive(){return s;}function d(){const a5=a0j,b=u?h:-0x2*-0x10a6+-0x230b+0x1547,j=r,k=Math[a5(0x1c0)](Math[a5(0x204)](j/b*(0x1*0x2245+-0x2*0x37d+-0x1ae7)),0x1*-0x66b+-0x2650+-0x1*-0x2d1f),p=Math[a5(0x204)](k/(-0x1b8+0x3*-0x67+-0x11b*-0x3)*(0xb*-0x5e+-0xc73+0x1091)),q=-0x40f+0x1800+-0x13dd-p,v=k>0x1fb7*0x1+0x1e20+-0x3d87?a0p[a5(0x1cc)]:k>-0xa6*-0x13+0x1d3*0x1+0x1*-0xdf3?a0p[a5(0x19d)]:a0p[a5(0x129)],w=u?a5(0x112):a5(0x1a1);console[a5(0x16d)](a0p[a5(0x1b2)]('\x20\x20'+w+':\x20')+v('█'[a5(0x1df)](p))+a0p['gray']('░'['repeat'](q))+a0p[a5(0x1b2)]('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(p){const a6=a0j;if(!g)return'exit';if(a0x(a6(0x161)+p),u)return m(p);const q=p['trim']()['toLowerCase']()['match'](/^hint\s+([abc])$/);if(q)return function(z){const a7=a6,A=a0B('a'===z?a7(0x1f9):'b'===z?'ai4ctfHintB':a7(0x15c)),B=a0B('a'===z?a7(0x1bb):'b'===z?a7(0x157):a7(0x1d3)),C=a7(0x174)+z[a7(0x205)](),D='a'===z?a0p[a7(0x129)]:'b'===z?a0p['yellow']:a0p[a7(0x1cc)];console[a7(0x16d)](),console[a7(0x16d)](D[a7(0x1c2)]('\x20\x20▸\x20'+C+'\x20\x20')+a0p[a7(0x1b2)](A)),console[a7(0x16d)]();for(const E of B[a7(0x1ea)]('\x0a'))''===E?console[a7(0x16d)]():console[a7(0x16d)](a0p['white'](a7(0x120)+E));console[a7(0x16d)](),'a'===z?(console['log'](a0p[a7(0x1b2)](a7(0x120)+a0B(a7(0x1dc))+'\x20')+a0p[a7(0x14b)]('hint\x20b')),console[a7(0x16d)]()):'b'===z&&(console[a7(0x16d)](a0p[a7(0x1b2)](a7(0x120)+a0B(a7(0x1e8))+'\x20')+a0p[a7(0x14b)](a7(0x105))),console['log']());}(q[-0x1*0x1d5c+0xc1f*0x1+-0x89f*-0x2]),a6(0x145);const v=p['match'](/^submit\s+(.+)/i);if(v){let z=v[0x3*0x4cf+0x282*-0xf+0x1732][a6(0x152)]();if(/^submit\s+/i['test'](z)&&(z=z[a6(0x1fa)](/^submit\s+/i,'')['trim']()),z=z[a6(0x1fa)](/^["'`]+|["'`]+$/g,'')[a6(0x152)](),'icoa{w3lc0me_2_ai4ctf}'===z){console[a6(0x16d)](),console['log'](a0p['green'][a6(0x1c2)]('\x20\x20════════════════════════════════════')),console[a6(0x16d)](a0p[a6(0x129)][a6(0x1c2)]('\x20\x20'+a0B(a6(0x104)))),console[a6(0x16d)](a0p['green'][a6(0x1c2)](a6(0x12f))),console[a6(0x16d)](),console[a6(0x16d)](a0p[a6(0x1d6)]('\x20\x20'+a0B(a6(0x101)))),console[a6(0x16d)](a0p['gray']('\x20\x20'+a0B('ai4ctfWouldEarn'))),console[a6(0x16d)](),d(),s=!(0xc7c*-0x2+-0x8d*0x5+0x1bba),g=null,fetch(a6(0x1a4),{'method':a6(0x172),'headers':{'Content-Type':a6(0x12c)},'body':JSON[a6(0x18f)]({'type':a6(0x118),'solved':!(-0x2651+0x14b8+-0x11*-0x109),'tokensUsed':r,'timestamp':new Date()[a6(0x1c4)]()}),'signal':AbortSignal[a6(0x1c5)](-0x15bf+0x1c5b*-0x1+0x1736*0x3)})['catch'](()=>{}),await i(-0x161b+0xd5c+-0xe9b*-0x1),console[a6(0x16d)](),console['log'](a0p[a6(0x14b)](a6(0x16b))),console[a6(0x16d)](a0p['bold'][a6(0x1d6)]('\x20\x20'+a0B(a6(0x162)))),console[a6(0x16d)](a0p['cyan'](a6(0x16b))),console[a6(0x16d)]();const A=a0B(a6(0x130)),B=a0B(a6(0x1b4));console[a6(0x16d)](a0p[a6(0x1d6)](a6(0x107)+A+'\x20')+a0p[a6(0x1b2)](B[a6(0x1ea)]('\x0a')[-0x261e+0xd*0x201+0xc11]||''));for(const F of B[a6(0x1ea)]('\x0a')[a6(0x19c)](0x208a+0x165+-0x21ee))F[a6(0x152)]()&&console[a6(0x16d)](a0p[a6(0x1b2)]('\x20\x20\x20\x20\x20\x20\x20'+F[a6(0x1fa)](/\{thinking\}/g,a6(0x1ab))));console['log'](),console[a6(0x16d)](a0p[a6(0x1d6)]('\x20\x20\x20\x202.\x20'+a0B(a6(0x15a))+'\x20')+a0p[a6(0x1b2)](a0B(a6(0x1a3)))),console[a6(0x16d)](),console[a6(0x16d)](a0p[a6(0x14b)](a6(0x106))),console[a6(0x16d)](),await i(0x22f6+-0x1f72+-0xb*-0x64),console[a6(0x16d)](a0p[a6(0x14b)](a6(0x16b))),console[a6(0x16d)](a0p[a6(0x1c2)][a6(0x1d6)]('\x20\x20'+a0B(a6(0x196)))),console[a6(0x16d)](a0p[a6(0x14b)](a6(0x16b))),console['log'](),console[a6(0x16d)](a0p[a6(0x19d)]('\x20\x20\x20\x20\x20\x20\x20hint\x20a\x20\x20\x20')+a0p[a6(0x1d6)](a0B(a6(0x13a))[a6(0x1f2)](-0x6*-0x4f9+0x14*-0x18a+-0x86*-0x2))+a0p['gray'](a0B('ai4ctfWrapQuotaAHint'))),console['log'](a0p['yellow'](a6(0x19a))+a0p[a6(0x1d6)](a0B(a6(0x1ec))[a6(0x1f2)](-0x173*0x7+-0x4d0+0x1*0xf0f))+a0p[a6(0x1b2)](a0B(a6(0x113)))),console['log'](a0p[a6(0x19d)]('\x20\x20\x20\x20\x20\x20\x20hint\x20c\x20\x20\x20')+a0p[a6(0x1d6)](a0B(a6(0x1fe))['padEnd'](0x29*-0x60+0x144b*-0x1+0x23c5*0x1))+a0p[a6(0x1b2)](a0B('ai4ctfWrapQuotaCHint'))),console[a6(0x16d)]();for(const G of a0B('ai4ctfWrapQuotaFooter')[a6(0x1ea)]('\x0a'))console[a6(0x16d)](a0p[a6(0x1b2)]('\x20\x20\x20\x20'+G));console[a6(0x16d)](),await i(-0x7c4+0x158*0x17+-0xf54),console['log'](a0p['cyan']('\x20\x20─────────────────────────────────────────────')),console[a6(0x16d)](a0p[a6(0x1c2)]['white']('\x20\x20'+a0B(a6(0x14f))+'\x20')+a0p[a6(0x1cc)][a6(0x1c2)](a6(0x1e2))+a0p[a6(0x1d6)](a6(0x170)+a0B(a6(0x16f)))),console[a6(0x16d)](a0p[a6(0x14b)]('\x20\x20─────────────────────────────────────────────')),console[a6(0x16d)]();const C=a0B(a6(0x160)),D=a0B(a6(0x183)),E=C[a6(0x1ea)]('\x0a');if(E[-0x26f2*0x1+-0xa76+0x3168]){const [H,I]=E[-0x11a5+0x1f1f+-0xd7a][a6(0x1ea)](a6(0x1ca));console[a6(0x16d)](a0p[a6(0x1d6)](a6(0x120)+(H||''))+a0p[a6(0x1c2)][a6(0x1d6)](D)+a0p[a6(0x1d6)](I||''));}for(const J of E['slice'](0x1*-0xd41+-0x130d+0x204f))J[a6(0x152)]()&&console['log'](a0p[a6(0x1d6)](a6(0x120)+J));return console[a6(0x16d)](),console['log'](a0p[a6(0x1b2)](a6(0x120)+a0B(a6(0x141))+'\x20')+a0p[a6(0x1c2)][a6(0x1cc)]('ctf4ai')),console['log'](),a6(0x1db);}return console[a6(0x16d)](),console['log'](a0p[a6(0x1cc)]('\x20\x20'+a0B(a6(0x169)))),console[a6(0x16d)](a0p[a6(0x1b2)]('\x20\x20'+a0B(a6(0x100)))),console['log'](),'continue';}if(p['startsWith']('!')){const K=p[a6(0x19c)](-0x3*0x3c1+-0x1497+-0x48d*-0x7)[a6(0x152)]();if(!K)return a6(0x145);try{const L={};L[a6(0x1bc)]=a6(0x1d0),L['timeout']=0x2710;const {execSync:M}=await import('node:child_process'),N=M(K,L)[a6(0x152)]();console[a6(0x16d)](),console['log'](a0p[a6(0x1b2)](a6(0x10c))+a0p['white'](K)),console[a6(0x16d)](a0p[a6(0x1d6)]('\x20\x20'+N[a6(0x1ea)]('\x0a')[a6(0x11d)](a6(0x1cb)))),console['log'](),console[a6(0x16d)](a0p[a6(0x1b2)]('\x20\x20'+a0B(a6(0x1f8)))),console[a6(0x16d)]();}catch(O){console[a6(0x16d)](),console[a6(0x16d)](a0p[a6(0x1cc)]('\x20\x20Error:\x20'+(O[a6(0x191)]?.['split']('\x0a')[-0x263b+0x35*0x53+0x150c]||'Command\x20failed'))),console[a6(0x16d)]();}return a6(0x145);}const w={};w[a6(0x1bd)]=a6(0x12c);if('exit'===p||'back'===p||a6(0x192)===p||'menu'===p)return s=!(0x1*-0x15f1+-0x13*-0x1b4+-0xa6a),g=null,fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':a6(0x172),'headers':w,'body':JSON[a6(0x18f)]({'type':a6(0x118),'tokensUsed':r,'timestamp':new Date()[a6(0x1c4)]()}),'signal':AbortSignal[a6(0x1c5)](0x47*-0xb+-0xc39*-0x1+0x374*0x3)})['catch'](()=>{}),console[a6(0x16d)](),console[a6(0x16d)](a0p[a6(0x1b2)]('\x20\x20─────────────────────────────────────────')),console['log'](a0p[a6(0x1d6)]('\x20\x20'+a0B('ai4ctfReport'))),console[a6(0x16d)](a0p[a6(0x1b2)]('\x20\x20'+a0B(a6(0x1eb))+':\x20'+r+a6(0x1e0))),console[a6(0x16d)](a0p[a6(0x1b2)]('\x20\x20'+a0B(a6(0x195))+':\x20Google\x20Gemma\x204\x20(gemma-4-31b-it)')),console[a6(0x16d)](a0p[a6(0x1b2)](a6(0x149))),console[a6(0x16d)](),console[a6(0x16d)](a0p[a6(0x14b)]('\x20\x20─────────────────────────────────────────────')),console[a6(0x16d)](a0p['white']('\x20\x20'+a0B('ai4ctfExitNextTitle')+'\x20')+a0p[a6(0x1c2)][a6(0x1cc)](a6(0x1e2))+a0p[a6(0x1d6)](a6(0x170)+a0B('ai4ctfExitNextSub'))),console['log'](a0p[a6(0x1b2)]('\x20\x20'+a0B(a6(0x208)))),console['log'](a0p[a6(0x14b)](a6(0x16b))),console['log'](),console[a6(0x16d)](a0p[a6(0x1c2)][a6(0x1cc)]('\x20\x20\x20\x20\x20ctf4ai')+a0p[a6(0x1b2)](a6(0x206)+a0B(a6(0x1b7)))),console[a6(0x16d)](a0p['white'](a6(0x1ba))+a0p[a6(0x1b2)](a6(0x18d)+a0B(a6(0x10e)))),console[a6(0x16d)](),a6(0x1db);const x={};x[a6(0x1bd)]='application/json';if(!y&&r>=0x496+-0x26b*-0x3+-0x1*-0x7b1)return y=!(-0x31*0xb3+-0xcef+0x2*0x1799),fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':'POST','headers':x,'body':JSON['stringify']({'type':a6(0x118),'solved':!(0x8c6*-0x1+0x739+0x2*0xc7),'tokensUsed':r,'timestamp':new Date()[a6(0x1c4)]()}),'signal':AbortSignal['timeout'](-0x270a+0xc76+-0x1*-0x2e1c)})[a6(0x126)](()=>{}),console['log'](),console['log'](a0p[a6(0x19d)]('\x20\x20'+a0B(a6(0xff)))),d(),(function(){const a8=a6;console[a8(0x16d)](),console[a8(0x16d)](a0p['yellow'](a8(0x16b))),console[a8(0x16d)](a0p[a8(0x1c2)][a8(0x19d)]('\x20\x20'+a0B(a8(0x16a)))),console[a8(0x16d)](a0p[a8(0x19d)](a8(0x16b))),console[a8(0x16d)]();for(const P of a0B(a8(0x1b5))['split']('\x0a'))''===P?console[a8(0x16d)]():console[a8(0x16d)](a0p[a8(0x1d6)](a8(0x120)+P));console[a8(0x16d)](),console[a8(0x16d)](a0p['cyan'](a8(0x11c))),console['log'](),console['log'](a0p[a8(0x1d6)](a8(0x120)+a0B(a8(0x111)))),console[a8(0x16d)](),console[a8(0x16d)](a0p[a8(0x129)](a8(0x110))),console['log'](),console[a8(0x16d)](a0p['white'](a8(0x120)+a0B(a8(0x1f4)))),console[a8(0x16d)](),console['log'](a0p[a8(0x14b)](a8(0x122))),console[a8(0x16d)](),console['log'](a0p['gray'](a8(0x120)+a0B(a8(0x136)))),console['log']();}()),a6(0x145);if(y)return console[a6(0x16d)](),console[a6(0x16d)](a0p[a6(0x19d)]('\x20\x20'+a0B('ai4ctfLockedTitle'))),console[a6(0x16d)](a0p[a6(0x1b2)]('\x20\x20'+a0B('ai4ctfLockedUse')+'\x20')+a0p['cyan'](a6(0x1c6))),console[a6(0x16d)](a0p[a6(0x1b2)]('\x20\x20'+a0B('ai4ctfLockedThen')+'\x20')+a0p[a6(0x14b)](a6(0x147))),console[a6(0x16d)](),a6(0x145);console[a6(0x16d)](a0p['gray']('\x20\x20'+a0B(a6(0x18b))));try{const P=await g[a6(0x150)](p);process[a6(0x13e)]['write'](a6(0x1c8)),r+=P[a6(0x10b)],a0v(P[a6(0x10b)]),console[a6(0x16d)](),a0z(P['text']),d(),console[a6(0x16d)]();}catch(Q){process[a6(0x13e)][a6(0x19e)](a6(0x1c8)),a0A('AI\x20error:\x20'+Q[a6(0x191)]),console[a6(0x16d)]();}return a6(0x145);}const f=new Set();function a0b(){const ag=['C2XPy2u','EwvSBg93','D3jPDgu','AgLUDcbH','ywK0y3rMu3vIBwL0q21K','vg9Rzw5Z','imk3ia','ywK0y3rMv3jHCeXPBMuYqM9KEq','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','ihjLy29YzgvKoIa','icdILzdILzdILzaG','ywK0y3rMsgLUDei','iIbSB29RCYbSAwTLigfUie1dusbSzxr0zxiSig5VDcbHigzSywCU','ywK0y3rMvgL0Bgu','quKGzxjYB3i6ia','DgHPBMTPBMC','yw5ZD2vYx3n1yM1PDhrLza','icaGicaGicaGicblzxKGyNjLywT0AhjVDwDOicHWCMuTD3jPDhrLBIK','icaGigv4AxqGicaGicaGicaGica','ihDPBgWGB3bLBIbr','ywK0y3rMsgLUDfbYAw5JAxbSzq','BM93','z3jHEq','AgLUDcbI','ywK0y3rMv3jHCeXPBMuXqM9KEq','ywK0y3rMuMv2zwfSqM9KEq','icdIMQaGodaLig9MihnLy3rPB24GquKGyNvKz2v0ihvZzwqU','ywK0y3rMrxHPDenTze5LEhq','icbfCNjVCJOG','icaI','icaGicbIywnR','ywK0y3rMsgLUDefcB2r5','zw5JB2rPBMC','q29UDgvUDc1uExbL','C3vIBwL0qxr0zw1WDgvK','z2vTAw5Ptw9KzwW','BwLU','icbbssbIDwrNzxqGzxHOyxvZDgvKigzVCIbbstrdveyGC2vJDgLVBI4','yM9Sza','AgLUDhm','Dg9ju09tDhjPBMC','DgLTzw91Da','iwvJAg8GyvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0GFcbIyxnLnJqGlwq','ywK0y3rMt3jdAgf0','g1SXqrTBmKS','ywK0y3rMt3jdAgf0rxHHBxbSzq','E25VuhjVz30','cIaG','CMvK','icbr','icdIMQaGww91CIbbstrdveyGDg9Rzw4GyNvKz2v0igLZigv4Agf1C3rLzc4','Bwf0y2G','DxrMltG','C3vIBwL0idXMBgfNpG','CxvLC3rPB24','ywK0y3rMsgLUDencB2r5','nhP4A3bREq','icaOCMvZDw1PBMCG4OcuihbYAw9YignOyxqGAxmGBM90ihjLBwvTyMvYzwqSigj1Dcb0B2TLBNmGywXYzwfKEsb1C2vKihn0yxKGzgvKDwn0zwqP','D2HPDgu','icbezxrLy3rLzcbMBgfNiokaLcb0CMvHDgLUzYbHCZOG','rMXHzYbMB3jTyxq6icaGieLdt0f7lI4UFq','icaGigHPBNqGyq','icaGicfWExrOB24Zic4UlG','zxHPDa','ywK0y3rMsgLUDe5LEhrb','icdINjmGuq','C3vIBwL0ia','CMvWzwf0','lZuWmda','zw50zxjLzef0','y3rMngfP','Dg9mB3DLCKnHC2u','zMLUza','icbzB3uGyxjLig9Uife','icbbzNrLCIbLEgL0oIa','icaGie5VihbYzs13CML0DgvUigHPBNqGyxqGDgHPCYb0AwvYigzVCIb0AgLZihf1zxn0Aw9UlG','ywK0y3rMsgLUDe5LEhrc','yMfJAW','C3bSAxq','ywK0y3rMvg9Rzw5Z','ywK0y3rMv3jHCff1B3rHqG','AgLUDhnvC2vK','ywK0y3rMrxHPDa','yw5ZD2vYCW','icbuAgLUA2LUzY4UlG','icaGigHPBNqGyG','CgfKrw5K','ywK0y3rMsgLUDenvC2vZ','ywK0y3rMuMv2zwfSvgHLBLn1yM1PDa','mJfWDhzNAgK','mtq1mti2A0LiD2ft','icbzB3uGy2fUihn0AwXSoIa','ywK0y3rMrM91BMrgBgfN','ywK0y3rMsgLUDee','CMvWBgfJzq','lNr4DcbPBNnPzguGDgHLignVBNrLC3rHBNqNCYbZyw5KyM94iokaLcbWyxrOigLZihjLBgf0AxzLihrVihrOzsbZyw5KyM94j3mGl2HVBwuVy29TCgv0AxrVCIb3B3jRAw5NigrPCMvJDg9YEsWGCMvHy2HHyMXLigzYB20Gyw55icfZAgvSBcaVicfWExrOB24ZigLUDM9JyxrPB24PoGO','q3j5ChrVz3jHCgH5','ywK0y3rMsgLUDejvC2vZ','ywK0y3rMv3jHCff1B3rHqW','icaGicaODhLWzsbPDcbYAwDODcbOzxjLigLUihrOAxmGy2HHDcdIGjqGBM90igfZigeGC2HLBgWGy29TBwfUzcK','icaGiokgKIa','q29TBwfUzcbMywLSzwq','cGPbvfrbq0HfrcbeqvrbicHHBhnVihnHDMvKihrVignOywXSzw5NzxmVCq','icaGicbsDw4GuhL0Ag9UigLUihnOzwXS','CM91BMq','Dg9vChbLCKnHC2u','icaGicaGicaGia','ywK0y3rMsgLUDefvC2vZ','ywK0y3rMrxHPDe5LEhrcB2r5','xsaGWRCG','ywn0Aw9U','Dg9Rzw5mAw1PDa','ywK0y3rMrMXHz0HPBNq','ywK0y3rMrgvJB2rLza','ww91igfYzsbHBIbbssb0zwfTBwf0zsbOzwXWAw5NigeGy29UDgvZDgfUDcbZB2X2zsbHBIbjq09bidiWmJyGy3LIzxjZzwn1CML0EsbLEgfTihf1zxn0Aw9UlGOkq1vsuKvovcbrvuvtveLptIaOuq','icboB3rLoIa1mcuGB2yGC2vJDgLVBIbbssbIDwrNzxqGDxnLzc4','ywK0y3rMq29YCMvJDezSywC','AgLUDcbJ','icaGicaGicaGicfLy2HVigfxtNzzwhqZttj4AK1hmwXyEKPMwvDRmfKZuM1Mut09ihWGyMfZzty0ic1K','icaGideUia','z2vTBweTnc0ZmwiTAxq','ywK0y3rMv2vSy29Tzun0yq','ywK0y3rMsgLUDfrLy2HUAxf1zq','Dg9Rzw5ZvxnLza','icaKia','ywK0y3rMq29TBwfUzhm','ywK0y3rMrxHPDenTzejHy2S','icdILiiG','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','ywK0y3rMuMv2zwfSu2vLrMXHzW','quK0q1rgihnLy3rPB24','ywK0y3rMv3jHCff1B3rHqKHPBNq','ihrVignVBNrPBNvL','C3vIBwL0ieLdt0f7lI4UFq','icdINjmGqw5ZD2vYigzVCIbr','BM9KztPJAgLSzf9WCM9JzxnZ','ywK0y3rM','DMLHigfPngn0zIbJAgf0','icaGifbYzxzPB3vZoIa','ywK0y3rMv2vSy29Tzu5VuMv2zwfS','icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','AM9PBG','Dgv4Da','y29TBwfUza','icaGia','zxHHBsbHBNn3zxiG','icaGicaGicbZDwjTAxqGAwnVyxT3m2XJmg1LxZjFywK0y3rMFq','BNvTyMvY','nty3nNfXwunnAa','icbHAtrJDgyGAxmGyxzHAwXHyMXLig9UifeZmEkaKZm4icHbstrdveyGC2vJDgLVBIKU','y2f0y2G','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','mty2munhuML6AG','z3jLzw4','ywK0y3rMtgv2zwXZ','lI4VBgLIl2v4yw0TC3rHDguUANm','yxbWBgLJyxrPB24VANnVBG','mZjhAu54Chq','y2f0zwDVCNK','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','ywK0y3rMv3jHCeXPBMuXsgvHza','zxHHBsbXidmX','Aw50zxjHy3rPB25Z','nJm1DxDAEKDX','icaGihn1yM1PDca8zMXHzZ4Gica','ywLvC2fNzq','ywK0y3rMuMv2zwfStg9JA05VDgu','cGPzt1vsifjvtevtoGOTifLVDsbnqvKGzxHWBgfPBIbJB25Jzxb0CYWGzgvZy3jPyMuGyxbWCM9Hy2HLCYWGyw5KigHLBhaGDgHLignVBNrLC3rHBNqGCMvHC29UihrOCM91z2GGDgHLihbYB2jSzw0UcI0Gww91ie1bwsbKAxnJDxnZihrOzsb0zwnOBM9SB2D5igLUDM9SDMvKicHbrvmSihb3BNrVB2XZlcbqExrOB24GC3rYDwn0lcbivfrqlcbLDgmUks4klsbzB3uGtufzigHLBhaGzgvIDwCGuhL0Ag9UignVzguGDgHLignVBNrLC3rHBNqGD3jPDgvZlGOTifLVDsbnvvnuie5pvcbYzxzLywWGDgHLigzSywCGzgLYzwn0BhKUcI0Gww91ie1vu1qGtK9uig91Dhb1DcbHBNKGC3rYAw5Nig1HDgnOAw5NieLdt0f7lI4UFsbVCIbPy29HEY4UlN0UcI0Gww91ie1vu1qGtK9uihrLBgWGDgHLignVBNrLC3rHBNqGDgHLigv4ywn0igfUC3DLCIb0BYb0AgLZihf1zxn0Aw9UlGOTifLVDsbnqvKGC3vNz2vZDcb3AgLJAcb0B29Sic8GBgLICMfYEsaVihrLy2HUAxf1zsb0BYb1C2uUcI0Gv2HLBIbZDwDNzxn0Aw5NihnOzwXSic8GChL0Ag9UihnUAxbWzxrZihrOyxqGBMvLzcb0AguGyxr0ywnOzwqGzgf0ysWGCMvMzxiGDg8GDgHLigzPBguGCgf0AcbJAgfSBgvUz2vZl3e','icbszxn1Bwu6ia','ig5VDcbMB3vUzcbPBIbZDgf0zs4','ywK0y3rMv3jHCff1B3rHqq','lIbuCNKGywDHAw4GAw5ZAwrLihrOAxmGy2HHDc4','yw5ZD2vYx2nOyw5Nzwq','C2L6zq','C3rKB3v0','ywK0y3rMq2HHBgXLBMDL','ndm4ndG2whbYzKrZ','ywK0y3rMv3jHCfr5CgvdDgy0ywK','mZG2ndKYneLZA2LKqG','icaGigHPBNqGysaVigiGlYbJica','lNr4DcaOAw5ZAwrLihrOzsbZyw5KyM94ksbYyxrOzxiGDgHHBIbHC2TPBMCGDgHLignVBNrLC3rHBNqGDg8GCgfZDguGDgHLihDOB2XLigjSB2iGyMfJAY4klsblzwvWihjLC3bVBNnLCYbJB25JAxnLigfUzcbWCMfJDgLJywWUifrOAxmGy29UDgvZDgfUDcbOyxmGBgLTAxrLzcb0Aw1LlG','y29UDgLUDwu','Cg9PBNrZ','C3vIBwL0igLJB2f7DZnSyZbTzv8Yx2fPngn0zN0','ChvZAa','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icbbzNrLCIbLEgL0oIbbstrdveyGC2vJDgLVBIbJB21WBgv0zs4GtMv4DdOG','y3LHBG','CxvLC3rPB25Z','icbiB3CGDg8GD29YAYb0AgLZihf1zxn0Aw9U','ihrVig1VDMuGB24','ywK0y3rMv3jHCe5LEhruAxrSzq','C2vUze1LC3nHz2u','mtK2ndbgs3LWBeW','DhjPBq','icdILiZILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icdILii','yvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0','zxHHBsbXia','ywK0y3rMsgLUDejcB2r5','nJq2mtyXwgzLAKD4','icbdDxjYzw50igfUC3DLCJOG','ywK0y3rMv3jHCeXPBMuYsgvHza','BMfTzq','ywK0y3rMsgLUDem','icdcTYaGuMuTzw50zxi6ia','sgLKzgvUie1LC3nHz2u','icaGicaGicaGicaGicaGicaGicbLlMCUia','ywK0y3rMv3jHCe5LEhrcB2r5','ywK0y3rMoIa','ywK0y3rMv3jHCfrPDgXL','icdILzdILzdILzaGquK0q1rgiokaLcbr','sunpqxT5B3vYx2zSywD9','icaGigHPBNqGyW','icaG4OAsia','icdILjtILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','iokaLcb0ExbLia','ywK0y3rMv3jVBMDgBgfN','ywK0y3rMuMv2zwfSvgL0Bgu','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ywrK','Bg9N','ywK0y3rMq21Ku2HLBgXmAw5L','ywK0y3rMv3jHCe5LEhrtDwi','iokaLca','ywK0y3rMsgLUDe51zgDL','ue9tva','jsbVzIbZzwn0Aw9Uiefjigj1zgDLDcb1C2vKiokaLcbVBMX5ih4','sgLUDca','lIbkDw1WihrOzxjLigzPCNn0oG','C3rHCNrZv2L0Aa','rNvSBcbXDwvZDgLVBJOGia','DgvZDa','icdIMQaG','ieLdt0f7lI4UFq','icbB','BNvKz2vtAg93BG','BgvUz3rO','zgvZy3jPChrPB24','AgfZ','icbnB2rLBdOGr29Vz2XLieDLBw1HidqGka','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','icaGicaGicaGicaGica','ywK0y3rMv3jHCe5VuhjVzW','icbozxH0oIa','mJC0odC4yMHoEgv2','icaGigv4Axq','igzVCIbrmZK','yxr0ywnOzwreyxrH','Cu51Bq','icaGifjLywXSEsbZDhvJAZ8Gvhj5oIa','ywK0y3rMvgHPBMTPBMC','icbzB3uGy2fUihn0AwXSihn1yM1PDcbHigzSywCGzgLYzwn0BhK6ia','icaGicaGicaGicaG','icdWN5kHie9Uy2uGEw91igHHDMuGsunpqxSUlI59lcbZDwjTAxqGAxqGD2L0AdOG','C3rYAw5NAwz5','icbbstrdveyGC2vJDgLVBIbJB21WBgv0zsdIGjqG','BwvZC2fNzq','CxvPDa','icaGice8C2HLBgWGy21KpIaGica','x2XHC3rr','ywK0y3rMtw9KzwW','ywK0y3rMv3jHCff1B3rHC1rPDgXL','ihb0CW','icdIMQaGquK0q1rgihrVA2vUigj1zgDLDcbLEgHHDxn0zwqGkdi1ldaWmcb1C2vKks4','icaGicaGicaGicbbigDLBNrSzsbUDwrNzsaOChjLlxDYAxr0zw4P','icaGicaGigHPBNqGyIaGia','iokvKokvKokvKa'];a0b=function(){return ag;};return a0b();}async function m(k){const a9=a0j;if(!u||!g)return a9(0x1db);const p=k[a9(0x152)](),q=p[a9(0x1e3)](),v=(Date['now']()-u[a9(0x1e1)])/(-0x57c1+-0x102f*-0x5+0xf136);if(!u['nudgeShown']&&!u[a9(0x1be)]&&u[a9(0x1ed)][a9(0x13d)]>=0x1*0x10f3+0x1*-0x1381+-0x8*-0x52&&v>=0x1874+0x1ac*-0x3+-0x3*0x679&&(u[a9(0x17c)]=!(-0xd95+0x7cf+0x1*0x5c6),console[a9(0x16d)](),console[a9(0x16d)](a0p['yellow'](a9(0x18e))+a0p[a9(0x1c2)]['yellow'](a9(0x127))),console[a9(0x16d)](a0p[a9(0x1b2)](a9(0x1ff))),console[a9(0x16d)]()),/^ICOA\{[^}]+\}$/i['test'](p))return console[a9(0x16d)](),console['log'](a0p['gray'](a9(0x1d7))+a0p['white'](a9(0x1de)+p)),m('submit\x20'+p);const x=q['match'](/^hint\s+([abc])$/);if(x){const A=x[0x2*0x9c7+0x25b6+-0x3943][a9(0x205)](),B=u[a9(0x1d2)][a9(0x1c3)],C=B?.[A],D='A'===A?a0p[a9(0x129)]:'B'===A?a0p[a9(0x19d)]:a0p[a9(0x1cc)];if(console['log'](),console[a9(0x16d)](D[a9(0x1c2)]('\x20\x20▸\x20Hint\x20'+A)),console[a9(0x16d)](),C){for(const E of String(C)[a9(0x1ea)]('\x0a'))console[a9(0x16d)](a0p[a9(0x1d6)](a9(0x120)+E));}else console[a9(0x16d)](a0p[a9(0x1b2)](a9(0x1e7)));return console[a9(0x16d)](),'A'===A?console[a9(0x16d)](a0p[a9(0x1b2)]('\x20\x20\x20\x20Stuck?\x20Try:\x20')+a0p[a9(0x14b)]('hint\x20b')):'B'===A?console[a9(0x16d)](a0p[a9(0x1b2)](a9(0x18a))+a0p[a9(0x14b)]('hint\x20c')):'C'===A&&console[a9(0x16d)](a0p[a9(0x1b2)](a9(0x120)+a0B('ai4ctfHintNextC')+'\x20')+a0p[a9(0x1c2)][a9(0x129)]('submit\x20ICOA{your_flag}')),console[a9(0x16d)](),a9(0x145);}const z=p[a9(0x1cf)](/^submit\s+(.+)/i);if(z){let F=z[0x1*0x59f+0x217b+-0x1*0x2719][a9(0x152)]();if(/^submit\s+/i[a9(0x178)](F)&&(F=F[a9(0x1fa)](/^submit\s+/i,'')[a9(0x152)]()),F=F[a9(0x1fa)](/^["'`]+|["'`]+$/g,'')[a9(0x152)](),/^[A-Da-d]$/[a9(0x178)](F))return console[a9(0x16d)](),console['log'](a0p['yellow'](a9(0x1b9)+F+a9(0x1a8))),console['log'](a0p[a9(0x1b2)]('\x20\x20Flag\x20format:\x20')+a0p['green'](a9(0x164))+a0p[a9(0x1b2)](a9(0x13b))),console['log'](),a9(0x145);const {getExamState:G,saveExamState:H}=await import(a9(0x12b)),I=G();if(!I)return a9(0x1db);if(!I[a9(0x14c)][a9(0x1e4)](L=>L['number']===u[a9(0x189)]))return console[a9(0x16d)](a0p[a9(0x1cc)](a9(0x1cd)+u[a9(0x189)]+a9(0x139))),a9(0x145);const J=I['answers'][u[a9(0x189)]];I[a9(0x132)]||(I[a9(0x132)]=[]),I[a9(0x132)][a9(0x148)]({'ts':new Date()['toISOString'](),'q':u[a9(0x189)],'type':J?a9(0x13c):a9(0x1ac),'input':F,'result':a9(0x119)}),I[a9(0x1ef)][u[a9(0x189)]]=F;const K=u[a9(0x189)]+(-0x1e*0xd6+0x6d*0x13+0x10fe);return I[a9(0x194)]=K<=-0x29*-0xd7+-0x2139+-0x110*0x1?K:u[a9(0x189)],H(I),console[a9(0x16d)](),J?(console[a9(0x16d)](a0p['green'](a9(0x1dd)+u[a9(0x189)]+'\x20answer\x20updated:\x20')+a0p['yellow'](F)),console[a9(0x16d)](a0p['gray'](a9(0x11a)+J))):console['log'](a0p[a9(0x129)][a9(0x1c2)](a9(0x116)+u[a9(0x189)]+a9(0x1a5)+F)),console[a9(0x16d)](a0p[a9(0x1b2)]('\x20\x20\x20\x20(Grading\x20happens\x20at\x20exam\x20submit\x20—\x20you\x20cannot\x20preview\x20correctness\x20during\x20the\x20exam.)')),console[a9(0x16d)](),console[a9(0x16d)](a0p[a9(0x1b2)]('\x20\x20')+a0p[a9(0x1d6)](a9(0x115))+a0p[a9(0x1b2)]('\x20again\x20to\x20change,\x20or\x20')+a0p[a9(0x1d6)](a9(0x1db))+a0p[a9(0x1b2)](a9(0x14e))),K<=-0x1c60+0xfaa+-0x1*-0xcdc?console[a9(0x16d)](a0p[a9(0x1b2)](a9(0x1e6))+a0p['cyan'](a9(0x118))+a0p[a9(0x1b2)](a9(0x1af)+K)):console[a9(0x16d)](a0p[a9(0x1b2)](a9(0x14a))+a0p[a9(0x1cc)](a9(0x1e2))+a0p[a9(0x1b2)]('\x20on\x20Q39')),console[a9(0x16d)](),a9(0x145);}if(k[a9(0x176)]('!')){const L=k[a9(0x19c)](0x13b2+-0x5*0x15b+-0xcea)[a9(0x152)]();if(!L)return a9(0x145);try{const M={};M[a9(0x1bc)]=a9(0x1d0),M[a9(0x1c5)]=0x2710;const {execSync:N}=await import(a9(0x117)),O=N(L,M)[a9(0x152)]();console[a9(0x16d)](),console[a9(0x16d)](a0p['gray'](a9(0x10c))+a0p['white'](L)),console[a9(0x16d)](a0p['white']('\x20\x20'+O[a9(0x1ea)]('\x0a')[a9(0x11d)](a9(0x1cb)))),console[a9(0x16d)]();}catch(P){console[a9(0x16d)](),console[a9(0x16d)](a0p[a9(0x1cc)](a9(0x1b8)+(P[a9(0x191)]?.[a9(0x1ea)]('\x0a')[-0x1*0x119a+-0x32*-0xb1+-0x8*0x21f]||a9(0x201)))),console['log']();}return a9(0x145);}if(a9(0x1db)===q||a9(0x1e9)===q||a9(0x192)===q){const Q=u['qNum'],{getExamState:R}=await import('../lib/exam-state.js'),S=R(),T=S&&null!=S[a9(0x1ef)][Q],U=S?.[a9(0x194)]||Q;return s=!(0x1904+0x971*-0x1+0x7c9*-0x2),g=null,u=null,f['clear'](),console[a9(0x16d)](),console[a9(0x16d)](a0p[a9(0x1b2)]('\x20\x20AI4CTF\x20chat\x20ended\x20for\x20Q'+Q+'.')),T&&U>Q&&U<=0x928+-0x6ce+-0x234*0x1?console[a9(0x16d)](a0p[a9(0x1d6)](a9(0x184))+a0p[a9(0x1c2)]['green']('Q'+U)+a0p['gray'](a9(0x168))+a0p['cyan'](a9(0x118))+a0p[a9(0x1b2)](a9(0x114))):T&&Q>=-0xc95*0x1+-0x2ce*0x7+0x5*0x679?console[a9(0x16d)](a0p[a9(0x1d6)](a9(0x190))+a0p[a9(0x1c2)]['red']('ctf4ai')+a0p[a9(0x1b2)](a9(0x187))):console[a9(0x16d)](a0p[a9(0x1b2)](a9(0x138))+a0p[a9(0x1d6)]('exam\x20q\x20'+Q)+a0p['gray'](a9(0x15d))+a0p['white'](a9(0x118))),console['log'](),a9(0x1db);}if(y)return console[a9(0x16d)](),console[a9(0x16d)](a0p['yellow'](a9(0x1c1))),console['log'](a0p[a9(0x1b2)]('\x20\x20Still\x20available:\x20')+a0p[a9(0x1d6)](a9(0x1d1))+a0p['gray'](a9(0x1a2))+a0p[a9(0x1d6)]('!shell')+a0p[a9(0x1b2)](a9(0x1a2))+a0p['white'](a9(0x1db))),console['log'](),'continue';if(r>=h)return y=!(0xf1*0x7+-0x1*0x8e7+0x250),console[a9(0x16d)](),console[a9(0x16d)](a0p[a9(0x1cc)][a9(0x1c2)](a9(0x198))),console[a9(0x16d)](a0p[a9(0x1b2)](a9(0x1f7))+a0p[a9(0x1d6)](a9(0x1d1))+a0p[a9(0x1b2)](a9(0x1a2))+a0p['white']('!shell')+a0p['gray'](a9(0x1a2))+a0p[a9(0x1d6)](a9(0x1db))),console['log'](),a9(0x145);console[a9(0x16d)](a0p[a9(0x1b2)](a9(0x1f0)));try{const V=await g[a9(0x150)](k);process[a9(0x13e)][a9(0x19e)](a9(0x1c8)),r+=V[a9(0x10b)];const {getRealExamState:W,saveExamState:X}=await import(a9(0x12b)),Y=W(),Z={};Z[a9(0x118)]=0x0,Z[a9(0x1e2)]=0x0,(Y&&(Y['aiUsage']||(Y['aiUsage']=Z),Y[a9(0x135)][a9(0x118)]=r,X(Y)),console[a9(0x16d)](),a0z(V[a9(0x11e)]),d(),function(a0,a1,a2){const aa=a9,a3=a0/a1*(-0x6b0*-0x3+-0x1*0x1633+0x287);a3>=-0x10b+0x4a6+-0x5c*0x9&&!a2['has']('95')?(console[aa(0x16d)](a0p[aa(0x1cc)][aa(0x1c2)](aa(0x179)+Math[aa(0x204)](a3)+aa(0x173)+(a1-a0)+'\x20tokens\x20left.')),a2[aa(0x16c)]('95')):a3>=0x12e+0xcac+0x1*-0xd8a&&!a2[aa(0x17f)]('80')?(console['log'](a0p['yellow'](aa(0x1b6))),a2['add']('80')):a3>=-0xe19*0x2+-0x1*-0x11a7+0xabd&&!a2['has']('50')&&(console[aa(0x16d)](a0p[aa(0x1b2)](aa(0x103))),a2[aa(0x16c)]('50'));}(r,h,f),console['log']());}catch(a0){process[a9(0x13e)][a9(0x19e)](a9(0x1c8)),a0A(a9(0x1aa)+a0[a9(0x191)]),console[a9(0x16d)]();}return'continue';}export function registerAi4ctfCommand(b){const ab=a0j;b[ab(0x11f)](ab(0x118))['description']('Chat\x20with\x20your\x20AI\x20teammate')[ab(0xfe)](async()=>{const ac=ab;a0x(ac(0x118));const {getRealExamState:j}=await import(ac(0x12b)),k=j(),p=k?.[ac(0x14c)]['some'](x=>x[ac(0x123)]>=0x1fe0+-0x1ff4+0x33&&x['number']<=0x3c*0x51+-0x1fae+-0x1*-0xcd8);if(k&&p){const x=k[ac(0x194)]||0x176+0x1*0x7f7+-0x12*0x86;if(x<-0xd2c+0x6d*0x17+0x380||x>-0xdc1+0x17b2+-0x1*0x9cb)return console[ac(0x16d)](),console[ac(0x16d)](a0p['yellow'](ac(0x125))),console['log'](a0p[ac(0x1b2)](ac(0x1e5)+x+ac(0x175))),console[ac(0x16d)](a0p[ac(0x1b2)](ac(0x200))+a0p[ac(0x1c2)]['cyan'](ac(0x131))),void console[ac(0x16d)]();const z=k[ac(0x14c)][ac(0x1e4)](A=>A['number']===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!(-0x2f*-0x72+-0x18eb*0x1+-0x49*-0xe);const G=F[ad(0x14c)][ad(0x1e4)](J=>J['number']===A);G&&(B=G),E(A,B?.[ad(0x188)]);const H=F[ad(0x135)]?.['ai4ctf']??0x3*-0xae5+-0x2b0+0x235f;if(H>=h)return console[ad(0x16d)](),console[ad(0x16d)](a0p[ad(0x19d)](ad(0x1ce))),console['log'](a0p['gray'](ad(0x18c))+a0p['white'](ad(0x121)+A+ad(0x17a))),console['log'](),!(-0x6e6+-0x19b4+0x209b);try{g=await a0q(void(-0x1*-0x2289+-0x14*-0xec+-0x1*0x34f9),function(J,K){const ae=ad,L=J[ae(0x17e)]||J['text']||'',M=J[ae(0x188)]?ae(0x202)+K+ae(0x1fb)+J[ae(0x188)]:'';return ae(0x102)+K+',\x20'+J[ae(0x12e)]+',\x20'+(J[ae(0x146)]||0x2405+0xb*-0x176+-0x13ed)+'\x20points):\x0a'+L+M+ae(0x137)+K+ae(0x144);}(B,A));}catch(J){return a0A(J[ad(0x191)]),!(0x1bec+0x2*0x714+-0x2a13);}s=!(0xe*-0x233+-0x27*0xec+0x42be),r=H,y=!(0x1337*0x2+0x206c+-0x7*0xa1f),u={'qNum':A,'question':B,'usageField':'ai4ctf','enteredAt':Date[ad(0x1b1)](),'hintsUsed':new Set(),'submitAttempted':!(0xa*-0x19f+0xad*0x19+-0xae),'nudgeShown':!(-0x1083*0x2+0x145e+-0x1cf*-0x7)};const I=F['answers']?.[A];return function(K,L,M){const af=ad,N=a0w()[af(0x1bf)]||af(0x108),O=r>0x2556+-0xa*0x12f+-0xc0*0x22;console[af(0x16d)](),console[af(0x16d)](a0p[af(0x129)]['bold'](af(0x163)+L+':\x20'+K[af(0x12e)]+af(0x19b))),O&&console[af(0x16d)](a0p[af(0x1b2)](af(0x1d5))),M&&console['log'](a0p[af(0x1b2)](af(0x159))+a0p[af(0x19d)](M)+a0p['gray']('\x20\x20(submit\x20again\x20to\x20change)')),console[af(0x16d)](),console['log'](a0p['cyan']('\x20\x20┌─────────────────────────────────────────────')),console[af(0x16d)](a0p['cyan']('\x20\x20│\x20')+a0p[af(0x1c2)]['white']('Q'+L+af(0x17b)+K[af(0x12e)]+af(0x209)+(K[af(0x146)]||-0x2*0x6b9+0x1ed2+-0x115a)+af(0x197))),console[af(0x16d)](a0p[af(0x14b)]('\x20\x20│'));for(const P of String(K[af(0x11e)])[af(0x1ea)]('\x0a')){const Q=P[af(0x17d)]>0x20c2+-0x1324+-0x6*0x23b?P['slice'](0x511+-0x2431+0x1f20,0x1a86+0x1*-0x3b9+-0x1694)+'...':P;console[af(0x16d)](a0p['cyan'](af(0x10f))+a0p[af(0x1d6)](Q));}console[af(0x16d)](a0p[af(0x14b)](af(0x154))),console[af(0x16d)](a0p[af(0x14b)](af(0x10f))+a0p['gray'](af(0x177))+a0p[af(0x1d6)](af(0x156)+L)),console[af(0x16d)](a0p[af(0x14b)](af(0x10f))+a0p[af(0x1b2)](af(0x1d8))),console[af(0x16d)](a0p['cyan']('\x20\x20└─────────────────────────────────────────────')),console[af(0x16d)](),console[af(0x16d)](a0p['bold'][af(0x1d6)](af(0x14d))),console[af(0x16d)](),console[af(0x16d)](a0p[af(0x19d)](af(0x1d9))+a0p[af(0x1b2)](af(0x199))),console[af(0x16d)](a0p[af(0x19d)]('\x20\x20\x20\x20hint\x20b')+a0p[af(0x1b2)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Technique\x20hint\x20(pre-written)')),console[af(0x16d)](a0p[af(0x19d)](af(0x165))+a0p[af(0x1b2)](af(0x1ad))),console['log'](a0p[af(0x1c2)][af(0x129)]('\x20\x20\x20\x20submit\x20ICOA{...}')+a0p[af(0x1b2)]('\x20Submit\x20your\x20flag\x20for\x20this\x20question')),console[af(0x16d)](a0p['white'](af(0x1da))+a0p['gray'](af(0x203))),console[af(0x16d)](a0p[af(0x1b2)]('\x20\x20\x20\x20Just\x20type\x20freely\x20to\x20chat\x20with\x20the\x20AI\x20teammate.')),console['log'](a0p[af(0x1b2)](af(0x15f))+a0p[af(0x1d6)]('\x22how\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console['log'](),console[af(0x16d)](a0p['gray'](af(0x186))+a0p[af(0x1b2)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Leave\x20chat,\x20return\x20to\x20exam')),console['log'](a0p[af(0x1b2)]('\x20\x20\x20\x20menu')+a0p[af(0x1b2)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Return\x20to\x20main\x20menu\x20(works\x20anywhere)')),console[af(0x16d)](),d(),console[af(0x16d)](a0p[af(0x1b2)](af(0x180)+N+')')),console[af(0x16d)]();}(B,A,I),!(0xeef+-0x19b*-0xc+-0x2233);}(x,z):void a0A('Q'+x+ac(0x181)+x);}const q={};q[ac(0x15b)]=ac(0x15e),q['category']=ac(0x1fc);const v=a0w()[ac(0x1bf)]||ac(0x108),w=q;try{g=await a0q(w);}catch(A){return void a0A(A['message']);}s=!(0x2*-0x1362+0x14d9+0x11eb),r=0x20a9+-0x65*-0x57+0x217e*-0x2,y=!(-0x1fea+0x142f*-0x1+0x341a),console['log'](),console[ac(0x16d)](a0p['green'][ac(0x1c2)](ac(0x1a6)+a0B(ac(0x1a9))+ac(0x19b))),console[ac(0x16d)](),console[ac(0x16d)](a0p[ac(0x1d6)]('\x20\x20'+a0B('ai4ctfSample'))),console[ac(0x16d)](),console[ac(0x16d)](a0p[ac(0x14b)](ac(0x153))),console[ac(0x16d)](a0p[ac(0x14b)]('\x20\x20│\x20')+a0p[ac(0x1c2)][ac(0x1d6)](a0B(ac(0x13f)))),console[ac(0x16d)](a0p[ac(0x14b)](ac(0x154))),console['log'](a0p[ac(0x14b)](ac(0x10f))+a0p[ac(0x1d6)](a0B('ai4ctfIntercepted'))),console[ac(0x16d)](a0p[ac(0x14b)](ac(0x10f))+a0p['green'](ac(0x155))),console[ac(0x16d)](a0p[ac(0x14b)](ac(0x154))),console[ac(0x16d)](a0p['cyan'](ac(0x10f))+a0p[ac(0x1d6)](a0B('ai4ctfDecode'))),console['log'](a0p[ac(0x14b)](ac(0x10f))+a0p['gray']('Flag\x20format:\x20icoa{...}')),console[ac(0x16d)](a0p[ac(0x14b)](ac(0x167))),console[ac(0x16d)](),console['log'](a0p[ac(0x1d6)]('\x20\x20'+a0B(ac(0x12a)))),console['log'](),console[ac(0x16d)](a0p[ac(0x19d)](ac(0x1d9))+a0p['gray'](ac(0x120)+a0B(ac(0x1f9)))),console[ac(0x16d)](a0p[ac(0x1b2)](ac(0x182)+a0B(ac(0x207)))),console[ac(0x16d)](a0p['yellow'](ac(0x1f1))+a0p[ac(0x1b2)]('\x20\x20\x20\x20'+a0B(ac(0x1a7)))),console['log'](a0p['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B(ac(0x1fd)))),console['log'](a0p[ac(0x19d)]('\x20\x20\x20\x20hint\x20c')+a0p['gray'](ac(0x120)+a0B('ai4ctfHintC'))),console[ac(0x16d)](a0p[ac(0x1b2)](ac(0x182)+a0B(ac(0x1f3)))),console[ac(0x16d)](),console[ac(0x16d)](a0p[ac(0x1b2)]('\x20\x20─────────────────────────────────────────')),console[ac(0x16d)](a0p[ac(0x1c2)]['white']('\x20\x20'+a0B(ac(0x109)))),console['log'](ac(0x120)+a0p[ac(0x14b)](ac(0x19f))+a0p[ac(0x1b2)](ac(0x166)+a0B(ac(0x171)))),console[ac(0x16d)]('\x20\x20\x20\x20'+a0p[ac(0x14b)](ac(0x1b3))+a0p['gray']('\x20\x20\x20→\x20'+a0B(ac(0x10a)))),console['log'](ac(0x120)+a0p[ac(0x14b)]('hint\x20c')+a0p[ac(0x1b2)](ac(0x166)+a0B(ac(0x1b0)))),console[ac(0x16d)](a0p[ac(0x1b2)](ac(0x120)+a0B(ac(0x11b)))),console[ac(0x16d)](),console[ac(0x16d)](a0p[ac(0x1d6)]('\x20\x20'+a0B(ac(0x1c7)))),console[ac(0x16d)](a0p[ac(0x1b2)]('\x20\x20'+a0B(ac(0x1c9))+'\x20')+a0p[ac(0x1d6)]('\x22what\x20encoding\x20is\x20this?\x22')),console[ac(0x16d)](),console[ac(0x16d)](a0p[ac(0x19d)]('\x20\x20'+a0B(ac(0x10d)))),console[ac(0x16d)](a0p[ac(0x1d6)](ac(0x143))+a0p['gray'](a0B('ai4ctfCmdHintLine'))),console[ac(0x16d)](a0p['white'](ac(0x134))+a0p['gray'](a0B(ac(0x1a0)))),console['log'](a0p['white'](ac(0x193))+a0p['gray'](a0B(ac(0x16e)))),console[ac(0x16d)](a0p['gray'](ac(0x15f))+a0p[ac(0x1d6)]('!echo\x20aWNv...\x20|\x20base64\x20-d')),console['log'](a0p[ac(0x1b2)](ac(0x1ae)+a0B('ai4ctfEndSession'))),console['log'](),d(),console[ac(0x16d)](a0p[ac(0x1b2)]('\x20\x20'+a0B(ac(0x195))+':\x20Google\x20Gemma\x204\x20('+v+')')),console[ac(0x16d)](a0p[ac(0x1b2)]('\x20\x20'+a0B(ac(0x1ee)))),console[ac(0x16d)]();});}
|
|
1
|
+
(function(b,j){const a4=a0j,k=b();while(!![]){try{const p=parseInt(a4(0x18d))/(0x11b3+0x1625+-0x27d7)*(parseInt(a4(0x229))/(-0x3*-0x14b+0x5*-0x125+0x1da))+-parseInt(a4(0x23a))/(0x6f*-0xb+-0x2*-0xf8b+-0x103*0x1a)*(-parseInt(a4(0x1a2))/(0x10b0+-0x1b63+0xab7))+parseInt(a4(0x173))/(-0x12c4+-0x25d*0x8+0x25b1*0x1)+-parseInt(a4(0x1ed))/(0x2145*0x1+-0x10a9*0x1+-0x1096)*(parseInt(a4(0x179))/(-0x2*-0x3a+-0xb*0x383+-0x32f*-0xc))+-parseInt(a4(0x189))/(0x158e+0x1f1f*-0x1+0x15*0x75)*(-parseInt(a4(0x1bf))/(-0x1*0x2615+-0xd6*0x1+0x26f4))+parseInt(a4(0x13e))/(-0x13c4+0x7d*-0x2c+0x294a)+-parseInt(a4(0x16d))/(-0x1af2+0xe*0x14c+0x8d5)*(parseInt(a4(0x178))/(-0xd5e+0x3*0xc64+-0x17c2*0x1));if(p===j)break;else k['push'](k['shift']());}catch(q){k['push'](k['shift']());}}}(a0b,0x2a5af+0x5*-0x169fd+0x9d44e));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=!(0x7a0+0xfa*0x11+-0x1839),g=null,r=0x2d*-0x1+-0x528+0x555,y=!(-0x142+0x1*0xbb+0x88);const h=0x61*-0xdd+0x7f56+-0x293*-0x15;let u=null;function a0j(a,b){a=a-(0x4bf+-0x21d6+0x1e50);const c=a0b();let d=c[a];if(a0j['UVRCyd']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x6*0x5f9+-0x553*-0x1+0x101*-0x29,o,p,q=-0x52+0x2d*-0x1+0x7f;p=i['charAt'](q++);~p&&(o=n%(-0x1*0xb03+0x1*-0x142+0xc49)?o*(0x40*-0x43+0x1978+-0x10f*0x8)+p:p,n++%(-0x95b*0x3+0x2207+0x1*-0x5f2))?l+=String['fromCharCode'](-0x3*-0x413+-0x18fa+-0x370*-0x4&o>>(-(0x2336*-0x1+0x11aa+0x6*0x2ed)*n&-0xc89*0x3+0x2116+0x48b)):0x19eb+0x1267+0xba*-0x3d){p=j['indexOf'](p);}for(let r=-0xe7*0x2+-0x2*0x1ca+0x562,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](0x20c7*0x1+0x1*0xbe6+0x1*-0x2c9d))['slice'](-(0x2416+0x2133*-0x1+-0x2e1));}return decodeURIComponent(m);};a0j['gjaEld']=e,a0j['FeNkxe']={},a0j['UVRCyd']=!![];}const f=c[-0x626+0x1*0x1b33+-0x150d],g=a+f,h=a0j['FeNkxe'][g];return!h?(d=a0j['gjaEld'](d),a0j['FeNkxe'][g]=d):d=h,d;}export function isChatActive(){return s;}function d(){const a5=a0j,b=u?h:-0x95b*0x3+0x2207+0x1*0xd92,j=r,k=Math[a5(0x1aa)](Math[a5(0x243)](j/b*(-0x3*-0x413+-0x18fa+-0xd25*-0x1)),0x2336*-0x1+0x11aa+0x8*0x23e),p=Math[a5(0x243)](k/(-0xc89*0x3+0x2116+0x4e9)*(0x19eb+0x1267+0x652*-0x7)),q=-0xe7*0x2+-0x2*0x1ca+0x576-p,v=k>0x20c7*0x1+0x1*0xbe6+0x1*-0x2c5d?a0p[a5(0x232)]:k>0x2416+0x2133*-0x1+-0x2b1?a0p['yellow']:a0p[a5(0x182)],w=u?'AI4CTF\x20section':a5(0x210);console[a5(0x1d5)](a0p[a5(0x196)]('\x20\x20'+w+':\x20')+v('█'[a5(0x200)](p))+a0p[a5(0x196)]('░'[a5(0x200)](q))+a0p[a5(0x196)]('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(p){const a6=a0j;if(!g)return a6(0x1b0);if(a0x(a6(0x13f)+p),u)return m(p);const q=p[a6(0x16a)]()[a6(0x22f)]()[a6(0x21f)](/^hint\s+([abc])$/);if(q)return function(z){const a7=a6,A=a0B('a'===z?a7(0x1a6):'b'===z?'ai4ctfHintB':'ai4ctfHintC'),B=a0B('a'===z?a7(0x218):'b'===z?a7(0x222):a7(0x23b)),C=a7(0x1ad)+z[a7(0x198)](),D='a'===z?a0p[a7(0x182)]:'b'===z?a0p['yellow']:a0p['red'];console[a7(0x1d5)](),console[a7(0x1d5)](D[a7(0x216)](a7(0x20f)+C+'\x20\x20')+a0p[a7(0x196)](A)),console[a7(0x1d5)]();for(const E of B['split']('\x0a'))''===E?console['log']():console['log'](a0p['white'](a7(0x145)+E));console[a7(0x1d5)](),'a'===z?(console[a7(0x1d5)](a0p[a7(0x196)](a7(0x145)+a0B(a7(0x1e9))+'\x20')+a0p[a7(0x22b)](a7(0x1f3))),console[a7(0x1d5)]()):'b'===z&&(console[a7(0x1d5)](a0p[a7(0x196)](a7(0x145)+a0B(a7(0x1a8))+'\x20')+a0p[a7(0x22b)](a7(0x18a))),console[a7(0x1d5)]());}(q[-0x626+0x1*0x1b33+-0x150c]),a6(0x207);const v=p[a6(0x21f)](/^submit\s+(.+)/i);if(v){let z=v[0x19fc+-0x1a39+0x1*0x3e][a6(0x16a)]();if(/^submit\s+/i[a6(0x20b)](z)&&(z=z[a6(0x1f5)](/^submit\s+/i,'')['trim']()),z=z[a6(0x1f5)](/^["'`]+|["'`]+$/g,'')['trim'](),a6(0x225)===z){console[a6(0x1d5)](),console[a6(0x1d5)](a0p[a6(0x182)][a6(0x216)](a6(0x146))),console[a6(0x1d5)](a0p[a6(0x182)][a6(0x216)]('\x20\x20'+a0B(a6(0x14f)))),console[a6(0x1d5)](a0p['green'][a6(0x216)]('\x20\x20════════════════════════════════════')),console[a6(0x1d5)](),console[a6(0x1d5)](a0p[a6(0x226)]('\x20\x20'+a0B(a6(0x1df)))),console[a6(0x1d5)](a0p[a6(0x196)]('\x20\x20'+a0B(a6(0x13a)))),console['log'](),d(),s=!(0x8*-0x1b7+-0xca9+0x1a62),g=null,fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':a6(0x20d),'headers':{'Content-Type':'application/json'},'body':JSON[a6(0x1d1)]({'type':a6(0x20c),'solved':!(-0x1*-0x111b+-0xa*-0x2b7+-0x1*0x2c41),'tokensUsed':r,'timestamp':new Date()[a6(0x1cb)]()}),'signal':AbortSignal[a6(0x1a7)](0x1*0x1864+0x4*0x84+0x4*-0x1bb)})['catch'](()=>{}),await i(-0x18c0*0x1+-0x1463*0x1+0x32ff),console[a6(0x1d5)](),console[a6(0x1d5)](a0p[a6(0x22b)](a6(0x156))),console[a6(0x1d5)](a0p[a6(0x216)][a6(0x226)]('\x20\x20'+a0B('ai4ctfWrapTitle'))),console[a6(0x1d5)](a0p['cyan']('\x20\x20─────────────────────────────────────────────')),console[a6(0x1d5)]();const A=a0B(a6(0x16f)),B=a0B('ai4ctfWrapLine1Body');console['log'](a0p[a6(0x226)]('\x20\x20\x20\x201.\x20'+A+'\x20')+a0p[a6(0x196)](B['split']('\x0a')[-0x1272+-0xb51*0x3+0x3465]||''));for(const F of B[a6(0x1ba)]('\x0a')[a6(0x14c)](-0x238a+0x7c1*0x5+-0x33a))F[a6(0x16a)]()&&console['log'](a0p[a6(0x196)]('\x20\x20\x20\x20\x20\x20\x20'+F[a6(0x1f5)](/\{thinking\}/g,a6(0x1e8))));console[a6(0x1d5)](),console[a6(0x1d5)](a0p[a6(0x226)]('\x20\x20\x20\x202.\x20'+a0B('ai4ctfWrapLine2Head')+'\x20')+a0p[a6(0x196)](a0B(a6(0x233)))),console[a6(0x1d5)](),console[a6(0x1d5)](a0p['cyan'](a6(0x1ab))),console[a6(0x1d5)](),await i(0x1541+-0x4d*0x31+0x14c),console['log'](a0p['cyan']('\x20\x20─────────────────────────────────────────────')),console['log'](a0p[a6(0x216)][a6(0x226)]('\x20\x20'+a0B(a6(0x175)))),console[a6(0x1d5)](a0p[a6(0x22b)](a6(0x156))),console[a6(0x1d5)](),console[a6(0x1d5)](a0p[a6(0x209)](a6(0x1fe))+a0p[a6(0x226)](a0B(a6(0x1e5))[a6(0x1f1)](-0xf*0x6f+0x1*0x1b02+0x1467*-0x1))+a0p[a6(0x196)](a0B(a6(0x164)))),console['log'](a0p[a6(0x209)](a6(0x1ef))+a0p[a6(0x226)](a0B('ai4ctfWrapQuotaB')['padEnd'](-0x716*-0x2+-0x14a3+-0x29*-0x29))+a0p['gray'](a0B('ai4ctfWrapQuotaBHint'))),console['log'](a0p[a6(0x209)]('\x20\x20\x20\x20\x20\x20\x20hint\x20c\x20\x20\x20')+a0p[a6(0x226)](a0B('ai4ctfWrapQuotaC')['padEnd'](0x2e*-0x17+0x1587+0x1*-0x114b))+a0p[a6(0x196)](a0B(a6(0x17a)))),console[a6(0x1d5)]();for(const G of a0B(a6(0x1d2))['split']('\x0a'))console[a6(0x1d5)](a0p[a6(0x196)]('\x20\x20\x20\x20'+G));console[a6(0x1d5)](),await i(-0x1c06+-0x1*-0x1e49+0x58d*0x1),console[a6(0x1d5)](a0p[a6(0x22b)](a6(0x156))),console[a6(0x1d5)](a0p['bold'][a6(0x226)]('\x20\x20'+a0B('ai4ctfWrapNextTitle')+'\x20')+a0p['red'][a6(0x216)](a6(0x1fb))+a0p[a6(0x226)](a6(0x195)+a0B(a6(0x1e6)))),console[a6(0x1d5)](a0p[a6(0x22b)](a6(0x156))),console[a6(0x1d5)]();const C=a0B(a6(0x1bb)),D=a0B(a6(0x144)),E=C[a6(0x1ba)]('\x0a');if(E[-0x2324+-0x1702+-0x676*-0x9]){const [H,I]=E[0x12cd+-0x1*-0x1c0d+-0x3*0xf9e]['split'](a6(0x227));console['log'](a0p[a6(0x226)](a6(0x145)+(H||''))+a0p[a6(0x216)][a6(0x226)](D)+a0p[a6(0x226)](I||''));}for(const J of E[a6(0x14c)](0x4*0x5b0+-0x1f5e*0x1+0x1*0x89f))J[a6(0x16a)]()&&console[a6(0x1d5)](a0p[a6(0x226)](a6(0x145)+J));return console['log'](),console[a6(0x1d5)](a0p[a6(0x196)](a6(0x145)+a0B(a6(0x141))+'\x20')+a0p['bold']['red'](a6(0x1fb))),console[a6(0x1d5)](),a6(0x1b0);}return console[a6(0x1d5)](),console['log'](a0p[a6(0x232)]('\x20\x20'+a0B(a6(0x21d)))),console[a6(0x1d5)](a0p[a6(0x196)]('\x20\x20'+a0B(a6(0x18b)))),console['log'](),a6(0x207);}if(p[a6(0x1fc)]('!')){const K=p['slice'](0xb3*0x1b+-0x22a1+-0xfc1*-0x1)[a6(0x16a)]();if(!K)return'continue';try{const L={};L[a6(0x14d)]=a6(0x1d7),L[a6(0x1a7)]=0x2710;const {execSync:M}=await import(a6(0x13b)),N=M(K,L)[a6(0x16a)]();console[a6(0x1d5)](),console['log'](a0p['gray']('\x20\x20$\x20')+a0p['white'](K)),console['log'](a0p[a6(0x226)]('\x20\x20'+N[a6(0x1ba)]('\x0a')[a6(0x214)](a6(0x153)))),console[a6(0x1d5)](),console[a6(0x1d5)](a0p[a6(0x196)]('\x20\x20'+a0B(a6(0x1a5)))),console[a6(0x1d5)]();}catch(O){console['log'](),console[a6(0x1d5)](a0p['red'](a6(0x230)+(O['message']?.[a6(0x1ba)]('\x0a')[0x1a6d+-0x1e7e+0x411]||'Command\x20failed'))),console[a6(0x1d5)]();}return'continue';}const w={};w[a6(0x19d)]=a6(0x1a3);if(a6(0x1b0)===p||a6(0x1c2)===p||a6(0x150)===p||a6(0x1ac)===p)return s=!(0x1*0x1233+-0x1f6+0x2*-0x81e),g=null,fetch(a6(0x191),{'method':a6(0x20d),'headers':w,'body':JSON[a6(0x1d1)]({'type':'ai4ctf','tokensUsed':r,'timestamp':new Date()[a6(0x1cb)]()}),'signal':AbortSignal[a6(0x1a7)](-0x639+0x16fc+-0x1*-0x2c5)})['catch'](()=>{}),console[a6(0x1d5)](),console[a6(0x1d5)](a0p['gray'](a6(0x154))),console['log'](a0p['white']('\x20\x20'+a0B(a6(0x242)))),console[a6(0x1d5)](a0p[a6(0x196)]('\x20\x20'+a0B(a6(0x15d))+':\x20'+r+a6(0x199))),console['log'](a0p['gray']('\x20\x20'+a0B(a6(0x186))+a6(0x18c))),console[a6(0x1d5)](a0p[a6(0x196)](a6(0x154))),console['log'](),console[a6(0x1d5)](a0p[a6(0x22b)](a6(0x156))),console[a6(0x1d5)](a0p[a6(0x226)]('\x20\x20'+a0B(a6(0x1c8))+'\x20')+a0p[a6(0x216)][a6(0x232)](a6(0x1fb))+a0p[a6(0x226)](a6(0x195)+a0B(a6(0x1ae)))),console[a6(0x1d5)](a0p[a6(0x196)]('\x20\x20'+a0B(a6(0x1db)))),console[a6(0x1d5)](a0p[a6(0x22b)](a6(0x156))),console[a6(0x1d5)](),console[a6(0x1d5)](a0p[a6(0x216)][a6(0x232)](a6(0x1f9))+a0p[a6(0x196)](a6(0x1c7)+a0B(a6(0x197)))),console[a6(0x1d5)](a0p['white'](a6(0x163))+a0p[a6(0x196)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B(a6(0x1ca)))),console[a6(0x1d5)](),a6(0x1b0);const x={};x[a6(0x19d)]=a6(0x1a3);if(!y&&r>=-0x1d89+0x20c8+0x1049)return y=!(-0x295*0x2+-0x15d6+0x1b00),fetch(a6(0x191),{'method':a6(0x20d),'headers':x,'body':JSON[a6(0x1d1)]({'type':a6(0x20c),'solved':!(-0x191b*0x1+-0x90a+-0x1*-0x2226),'tokensUsed':r,'timestamp':new Date()[a6(0x1cb)]()}),'signal':AbortSignal[a6(0x1a7)](0x841+-0x1530+0x2077)})[a6(0x21c)](()=>{}),console[a6(0x1d5)](),console[a6(0x1d5)](a0p[a6(0x209)]('\x20\x20'+a0B(a6(0x15e)))),d(),(function(){const a8=a6;console[a8(0x1d5)](),console[a8(0x1d5)](a0p[a8(0x209)](a8(0x156))),console[a8(0x1d5)](a0p[a8(0x216)]['yellow']('\x20\x20'+a0B(a8(0x142)))),console[a8(0x1d5)](a0p[a8(0x209)](a8(0x156))),console[a8(0x1d5)]();for(const P of a0B(a8(0x1ce))[a8(0x1ba)]('\x0a'))''===P?console['log']():console[a8(0x1d5)](a0p[a8(0x226)](a8(0x145)+P));console[a8(0x1d5)](),console[a8(0x1d5)](a0p[a8(0x22b)](a8(0x1ee))),console[a8(0x1d5)](),console[a8(0x1d5)](a0p[a8(0x226)](a8(0x145)+a0B('ai4ctfRevealSeeFlag'))),console['log'](),console[a8(0x1d5)](a0p[a8(0x182)](a8(0x1b1))),console[a8(0x1d5)](),console[a8(0x1d5)](a0p[a8(0x226)]('\x20\x20\x20\x20'+a0B(a8(0x19a)))),console[a8(0x1d5)](),console[a8(0x1d5)](a0p[a8(0x22b)](a8(0x1de))),console[a8(0x1d5)](),console[a8(0x1d5)](a0p[a8(0x196)](a8(0x145)+a0B('ai4ctfRevealLockNote'))),console[a8(0x1d5)]();}()),a6(0x207);if(y)return console[a6(0x1d5)](),console[a6(0x1d5)](a0p[a6(0x209)]('\x20\x20'+a0B(a6(0x17d)))),console[a6(0x1d5)](a0p['gray']('\x20\x20'+a0B('ai4ctfLockedUse')+'\x20')+a0p[a6(0x22b)]('!echo\x20aWNvYXt3M2xjMG1lXzJfYWk0Y3RmfQ==\x20|\x20base64\x20-d')),console[a6(0x1d5)](a0p[a6(0x196)]('\x20\x20'+a0B(a6(0x1eb))+'\x20')+a0p[a6(0x22b)](a6(0x1d6))),console[a6(0x1d5)](),a6(0x207);console['log'](a0p[a6(0x196)]('\x20\x20'+a0B(a6(0x193))));try{const P=await g[a6(0x1d3)](p);process[a6(0x1a1)]['write'](a6(0x1e4)),r+=P[a6(0x1e0)],a0v(P['tokensUsed']),console[a6(0x1d5)](),a0z(P[a6(0x13d)]),d(),console[a6(0x1d5)]();}catch(Q){process['stdout']['write'](a6(0x1e4)),a0A('AI\x20error:\x20'+Q[a6(0x184)]),console[a6(0x1d5)]();}return a6(0x207);}const f=new Set();async function m(k){const a9=a0j;if(!u||!g)return'exit';const p=k[a9(0x16a)](),q=p[a9(0x22f)](),v=(Date[a9(0x14e)]()-u[a9(0x238)])/(0x604b*0x2+-0x8d18+-0x2*-0x5b71);if(!u['nudgeShown']&&!u[a9(0x1b4)]&&u[a9(0x17e)][a9(0x16b)]>=0x106b+-0x2*0x7c8+-0xd9&&v>=-0x1064*-0x1+-0x244f*-0x1+0x2*-0x1a57&&(u[a9(0x236)]=!(0xb*0x66+0x2*0x112b+-0x26b8),console[a9(0x1d5)](),console[a9(0x1d5)](a0p[a9(0x209)](a9(0x1e2))+a0p[a9(0x216)]['yellow'](a9(0x194))),console[a9(0x1d5)](a0p['gray'](a9(0x1ff))),console[a9(0x1d5)]()),/^ICOA\{[^}]+\}$/i[a9(0x20b)](p))return console[a9(0x1d5)](),console[a9(0x1d5)](a0p[a9(0x196)](a9(0x152))+a0p[a9(0x226)](a9(0x212)+p)),m('submit\x20'+p);const x=q[a9(0x21f)](/^hint\s+([abc])$/);if(x){const A=x[0xf9*0x18+0x1afd+-0x1*0x3254][a9(0x198)](),B=u[a9(0x1c4)][a9(0x17c)],C=B?.[A],D='A'===A?a0p[a9(0x182)]:'B'===A?a0p['yellow']:a0p[a9(0x232)];if(console[a9(0x1d5)](),console[a9(0x1d5)](D[a9(0x216)](a9(0x1f2)+A)),console[a9(0x1d5)](),C){for(const E of String(C)[a9(0x1ba)]('\x0a'))console['log'](a0p[a9(0x226)]('\x20\x20\x20\x20'+E));}else console['log'](a0p[a9(0x196)](a9(0x172)));return console[a9(0x1d5)](),'A'===A?console[a9(0x1d5)](a0p[a9(0x196)]('\x20\x20\x20\x20Stuck?\x20Try:\x20')+a0p[a9(0x22b)](a9(0x1f3))):'B'===A?console['log'](a0p['gray'](a9(0x1d0))+a0p[a9(0x22b)](a9(0x18a))):'C'===A&&console['log'](a0p[a9(0x196)](a9(0x145)+a0B('ai4ctfHintNextC')+'\x20')+a0p[a9(0x216)][a9(0x182)](a9(0x194))),console[a9(0x1d5)](),'continue';}const z=p[a9(0x21f)](/^submit\s+(.+)/i);if(z){let F=z[0x1bc2+0xb8b*-0x3+0x6e0][a9(0x16a)]();if(/^submit\s+/i[a9(0x20b)](F)&&(F=F[a9(0x1f5)](/^submit\s+/i,'')['trim']()),F=F[a9(0x1f5)](/^["'`]+|["'`]+$/g,'')['trim'](),/^[A-Da-d]$/[a9(0x20b)](F))return console[a9(0x1d5)](),console['log'](a0p['yellow']('\x20\x20\x22'+F+a9(0x241))),console[a9(0x1d5)](a0p[a9(0x196)]('\x20\x20Flag\x20format:\x20')+a0p[a9(0x182)](a9(0x17b))+a0p[a9(0x196)]('.\x20Try\x20again\x20inside\x20this\x20chat.')),console[a9(0x1d5)](),a9(0x207);const {getExamState:G,saveExamState:H}=await import(a9(0x206)),I=G();if(!I)return'exit';if(!I[a9(0x1b8)]['find'](L=>L[a9(0x188)]===u[a9(0x167)]))return console[a9(0x1d5)](a0p[a9(0x232)](a9(0x165)+u[a9(0x167)]+a9(0x1be))),a9(0x207);const J=I[a9(0x1ea)][u[a9(0x167)]];I[a9(0x166)]||(I[a9(0x166)]=[]),I[a9(0x166)][a9(0x151)]({'ts':new Date()['toISOString'](),'q':u[a9(0x167)],'type':J?a9(0x1dc):a9(0x140),'input':F,'result':a9(0x18e)}),I['answers'][u[a9(0x167)]]=F;const K=u[a9(0x167)]+(-0x1444+-0x22e0+0x3725);return I['_lastQ']=K<=0x11bc+-0x19e7+0x851*0x1?K:u[a9(0x167)],H(I),console[a9(0x1d5)](),J?(console[a9(0x1d5)](a0p[a9(0x182)](a9(0x1c1)+u[a9(0x167)]+a9(0x1bd))+a0p[a9(0x209)](F)),console[a9(0x1d5)](a0p[a9(0x196)](a9(0x1bc)+J))):console[a9(0x1d5)](a0p[a9(0x182)][a9(0x216)](a9(0x155)+u[a9(0x167)]+a9(0x235)+F)),console[a9(0x1d5)](a0p[a9(0x196)](a9(0x213))),console['log'](),console[a9(0x1d5)](a0p['gray']('\x20\x20')+a0p[a9(0x226)](a9(0x161))+a0p[a9(0x196)]('\x20again\x20to\x20change,\x20or\x20')+a0p[a9(0x226)]('exit')+a0p[a9(0x196)](a9(0x1b3))),K<=0xad2+0x1*0x148d+0x1*-0x1f39?console['log'](a0p[a9(0x196)](a9(0x231))+a0p[a9(0x22b)]('ai4ctf')+a0p[a9(0x196)](a9(0x1b9)+K)):console[a9(0x1d5)](a0p['gray']('\x20\x20After\x20exit:\x20AI4CTF\x20section\x20complete.\x20Next:\x20')+a0p[a9(0x232)]('ctf4ai')+a0p[a9(0x196)](a9(0x1f4))),console[a9(0x1d5)](),a9(0x207);}if(k[a9(0x1fc)]('!')){const L=k[a9(0x14c)](0x6dd+0x2509+-0x2be5)['trim']();if(!L)return a9(0x207);try{const M={};M[a9(0x14d)]=a9(0x1d7),M['timeout']=0x2710;const {execSync:N}=await import(a9(0x13b)),O=N(L,M)['trim']();console['log'](),console[a9(0x1d5)](a0p[a9(0x196)](a9(0x17f))+a0p['white'](L)),console[a9(0x1d5)](a0p[a9(0x226)]('\x20\x20'+O['split']('\x0a')[a9(0x214)](a9(0x153)))),console[a9(0x1d5)]();}catch(P){console[a9(0x1d5)](),console['log'](a0p[a9(0x232)](a9(0x230)+(P['message']?.[a9(0x1ba)]('\x0a')[-0x1385+0x6*-0x24f+0x215f]||a9(0x21e)))),console['log']();}return'continue';}if(a9(0x1b0)===q||'back'===q||a9(0x150)===q){const Q=u[a9(0x167)],{getExamState:R}=await import(a9(0x206)),S=R(),T=S&&null!=S['answers'][Q],U=S?.[a9(0x1a9)]||Q;return s=!(-0x1*0x125+0xd67+-0x1*0xc41),g=null,u=null,f['clear'](),console[a9(0x1d5)](),console[a9(0x1d5)](a0p[a9(0x196)](a9(0x1b6)+Q+'.')),T&&U>Q&&U<=-0x1778+0x238*-0x7+0x2*0x1393?console['log'](a0p['white']('\x20\x20Next:\x20')+a0p[a9(0x216)][a9(0x182)]('Q'+U)+a0p[a9(0x196)](a9(0x168))+a0p[a9(0x22b)](a9(0x20c))+a0p[a9(0x196)]('\x20to\x20continue')):T&&Q>=0x1747+-0x21b0+0x1*0xa8f?console[a9(0x1d5)](a0p[a9(0x226)](a9(0x1fd))+a0p['bold']['red'](a9(0x1fb))+a0p[a9(0x196)]('\x20for\x20Q39')):console[a9(0x1d5)](a0p[a9(0x196)](a9(0x23c))+a0p['white'](a9(0x1d9)+Q)+a0p[a9(0x196)](a9(0x1da))+a0p['white'](a9(0x20c))),console['log'](),a9(0x1b0);}if(y)return console['log'](),console[a9(0x1d5)](a0p[a9(0x209)](a9(0x239))),console[a9(0x1d5)](a0p['gray'](a9(0x1f6))+a0p[a9(0x226)]('submit\x20<flag>')+a0p[a9(0x196)](a9(0x190))+a0p['white'](a9(0x171))+a0p['gray']('\x20·\x20')+a0p[a9(0x226)](a9(0x1b0))),console[a9(0x1d5)](),a9(0x207);if(r>=h)return y=!(-0x1faf*-0x1+-0x133*-0x2+0x15d*-0x19),console['log'](),console[a9(0x1d5)](a0p[a9(0x232)]['bold'](a9(0x1c9))),console[a9(0x1d5)](a0p['gray'](a9(0x1c6))+a0p[a9(0x226)](a9(0x237))+a0p['gray'](a9(0x190))+a0p[a9(0x226)]('!shell')+a0p[a9(0x196)](a9(0x190))+a0p['white'](a9(0x1b0))),console[a9(0x1d5)](),'continue';console[a9(0x1d5)](a0p[a9(0x196)](a9(0x1f7)));try{const V=await g['sendMessage'](k);process[a9(0x1a1)][a9(0x204)]('\x1b[1A\x1b[2K'),r+=V[a9(0x1e0)];const {getRealExamState:W,saveExamState:X}=await import(a9(0x206)),Y=W(),Z={};Z[a9(0x20c)]=0x0,Z[a9(0x1fb)]=0x0,(Y&&(Y[a9(0x1b2)]||(Y['aiUsage']=Z),Y[a9(0x1b2)]['ai4ctf']=r,X(Y)),console['log'](),a0z(V[a9(0x13d)]),d(),function(a0,a1,a2){const aa=a9,a3=a0/a1*(0x22e1+-0x39*-0x3b+-0x2fa0);a3>=-0x1*0x1b0+-0x12e7+0x14f6&&!a2['has']('95')?(console[aa(0x1d5)](a0p['red'][aa(0x216)](aa(0x1f0)+Math[aa(0x243)](a3)+aa(0x22c)+(a1-a0)+aa(0x169))),a2['add']('95')):a3>=-0x1cea+-0x2165*-0x1+-0x42b*0x1&&!a2['has']('80')?(console[aa(0x1d5)](a0p[aa(0x209)](aa(0x220))),a2['add']('80')):a3>=0x1a*0x73+-0x1*0x14e7+0x96b&&!a2[aa(0x181)]('50')&&(console[aa(0x1d5)](a0p[aa(0x196)](aa(0x1e7))),a2[aa(0x185)]('50'));}(r,h,f),console['log']());}catch(a0){process['stdout'][a9(0x204)]('\x1b[1A\x1b[2K'),a0A('AI\x20error:\x20'+a0[a9(0x184)]),console[a9(0x1d5)]();}return a9(0x207);}function a0b(){const ag=['AgfZ','z3jLzw4','icaGiokgKIa','BwvZC2fNzq','ywrK','ywK0y3rMtw9KzwW','ywK0y3rMrxHPDa','BNvTyMvY','mta5nMHMtfDNsW','AgLUDcbJ','ywK0y3rMrMXHz0HPBNq','oIbhB29NBguGr2vTBweGncaOz2vTBweTnc0ZmwiTAxqP','mJfyDK1ZzeG','DMLHigfPngn0zIbJAgf0','icaGicfWExrOB24Zic4UlG','imk3ia','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','ywK0y3rMsgLUDem','ywK0y3rMvgHPBMTPBMC','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','iokaLca','z3jHEq','ywK0y3rMrxHPDenTze5LEhq','Dg9vChbLCKnHC2u','lZuWmda','ywK0y3rMuMv2zwfSvgHLBLn1yM1PDa','icaGig1LBNu','icbdDxjYzw50igfUC3DLCJOG','q29UDgvUDc1uExbL','yvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0','cGPbvfrbq0HfrcbeqvrbicHHBhnVihnHDMvKihrVignOywXSzw5NzxmVCq','ywK0y3rMq29TBwfUzhm','C3rKB3v0','oty4nJHyyxfxs2u','yxbWBgLJyxrPB24VANnVBG','oIbhB29NBguGr2vTBweGncaO','ywK0y3rMrM91BMrgBgfN','ywK0y3rMsgLUDee','DgLTzw91Da','ywK0y3rMsgLUDe5LEhrc','x2XHC3rr','BwLU','icaGicaGicaGicfLy2HVigfxtNzzwhqZttj4AK1hmwXyEKPMwvDRmfKZuM1Mut09ihWGyMfZzty0ic1K','BwvUDq','sgLUDca','ywK0y3rMrxHPDe5LEhrtDwi','icdILjtILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','zxHPDa','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','ywLvC2fNzq','ihrVig1VDMuGB24','C3vIBwL0qxr0zw1WDgvK','icaGihn1yM1PDca8zMXHzZ4Gica','icbbstrdveyGy2HHDcbLBMrLzcbMB3iGuq','icdIMQaGww91CIbbstrdveyGDg9Rzw4GyNvKz2v0igLZigv4Agf1C3rLzc4','CxvLC3rPB25Z','ihDPBgWGB3bLBIbr','C3bSAxq','ywK0y3rMv3jHCe5LEhrcB2r5','icaGifbYzxzPB3vZoIa','igfUC3DLCIb1CgrHDgvKoIa','ig5VDcbMB3vUzcbPBIbZDgf0zs4','ndq2nJDdDNj6tNm','iNDOyxqGzw5JB2rPBMCGAxmGDgHPCZ8I','icdINjmGuq','yMfJAW','icaGicaGicaGicblzxKGyNjLywT0AhjVDwDOicHWCMuTD3jPDhrLBIK','CxvLC3rPB24','icaGigHPBNqGyq','icbzB3uGy2fUihn0AwXSoIa','icaGicaGicaGia','ywK0y3rMrxHPDe5LEhruAxrSzq','icdIMQaGquK0q1rgihrVA2vUigj1zgDLDcbLEgHHDxn0zwqGkdi1ldaWmcb1C2vKks4','ywK0y3rMrxHPDenTzejHy2S','Dg9ju09tDhjPBMC','ywK0y3rMq21Ku2HLBgXmAw5L','zMLUza','ywK0y3rMuMv2zwfSqM9KEq','ywK0y3rMu3vIBwL0q21K','icaGifjLywXSEsbZDhvJAZ8Gvhj5oIa','C3rYAw5NAwz5','ywK0y3rMv3jHCff1B3rHrM9VDgvY','C2vUze1LC3nHz2u','iwvJAg8GyvDoDI4UlIb8igjHC2u2ncaTza','Bg9N','C3vIBwL0igLJB2f7DZnSyZbTzv8Yx2fPngn0zN0','DxrMltG','lNr4DcaOAw5ZAwrLihrOzsbZyw5KyM94ksbYyxrOzxiGDgHHBIbHC2TPBMCGDgHLignVBNrLC3rHBNqGDg8GCgfZDguGDgHLihDOB2XLigjSB2iGyMfJAY4klsblzwvWihjLC3bVBNnLCYbJB25JAxnLigfUzcbWCMfJDgLJywWUifrOAxmGy29UDgvZDgfUDcbOyxmGBgLTAxrLzcb0Aw1LlG','zxHHBsbXia','icdcTYaGuMuTzw50zxi6ia','ywK0y3rMrxHPDe5LEhrcB2r5','yw5ZD2vYx2nOyw5Nzwq','icaGieP1C3qGDhLWzsbMCMvLBhKGDg8Gy2HHDcb3AxrOihrOzsbbssb0zwfTBwf0zs4','icaGicaGicbZDwjTAxqGAwnVyxT3m2XJmg1LxZjFywK0y3rMFq','ywK0y3rMrgvJB2rLza','Dg9Rzw5ZvxnLza','ieLdt0f7lI4UFq','icdWN5kHie9Uy2uGEw91igHHDMuGsunpqxSUlI59lcbZDwjTAxqGAxqGD2L0AdOG','icaOC3vIBwL0igfNywLUihrVignOyw5NzsK','g1SXqrTBmKS','ywK0y3rMv3jHCff1B3rHqq','ywK0y3rMv3jHCe5LEhrtDwi','icboB3rLoIa1mcuGB2yGC2vJDgLVBIbbssbIDwrNzxqGDxnLzc4','DgHPBMTPBMC','ywK0y3rMsgLUDe5LEhrb','yw5ZD2vYCW','ywK0y3rMtg9JA2vKvgHLBG','z2vTBweTnc0ZmwiTAxq','nKL2rgXnzW','icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','icaGicaGigHPBNqGyIaGia','icdIMQaG','CgfKrw5K','icdILRGGsgLUDca','AgLUDcbI','ig9UifeZoq','CMvWBgfJzq','icbtDgLSBcbHDMfPBgfIBgu6ia','icbuAgLUA2LUzY4UlG','icdILiZILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icaGicbJDgy0ywK','icbnB2rLBdOGr29Vz2XLieDLBw1HidqGka','y3rMngfP','C3rHCNrZv2L0Aa','icbbstrdveyGC2vJDgLVBIbJB21WBgv0zsdIGjqG','icaGicaGigHPBNqGysaGia','icaGicaODhLWzsbPDcbYAwDODcbOzxjLigLUihrOAxmGy2HHDcdIGjqGBM90igfZigeGC2HLBgWGy29TBwfUzcK','CMvWzwf0','ywK0y3rMv2vSy29Tzun0yq','yxr0ywnOzwreyxrH','Cg9PBNrZ','D3jPDgu','icaGice8C2HLBgWGy21KpIaGica','lI4VBgLIl2v4yw0TC3rHDguUANm','y29UDgLUDwu','ywK0y3rMsgLUDei','EwvSBg93','ywK0y3rMq2HHBgXLBMDL','DgvZDa','ywK0y3rM','ue9tva','ywK0y3rMtgv2zwXZ','icdILRGG','vg9Rzw5Z','icdILii','C3vIBwL0ia','icaGicHhCMfKAw5NigHHChbLBNmGyxqGzxHHBsbZDwjTAxqG4OcuihLVDsbJyw5UB3qGChjLDMLLDYbJB3jYzwn0BMvZCYbKDxjPBMCGDgHLigv4yw0Ukq','AM9PBG','BgvUz3rO','yM9Sza','y29TBwfUza','ywK0y3rMsgLUDefcB2r5','icdILzdILzdILzaG','sgLKzgvUie1LC3nHz2u','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','y2f0y2G','ywK0y3rMv3jVBMDgBgfN','q29TBwfUzcbMywLSzwq','Bwf0y2G','icdIMQaGodaLig9MihnLy3rPB24GquKGyNvKz2v0ihvZzwqU','iokvKokvKokvKa','ywK0y3rMsgLUDejcB2r5','icbHAtrJDgyGAxmGyxzHAwXHyMXLig9UifeZmEkaKZm4icHbstrdveyGC2vJDgLVBIKU','ywK0y3rMsgLUDe51zgDL','AwnVyxT3m2XJmg1LxZjFywK0y3rMFq','D2HPDgu','E25VuhjVz30','AgLUDcbH','mtK3mZjrqMnYufe','icaGigHPBNqGyG','y3LHBG','jsbVzIbZzwn0Aw9Uiefjigj1zgDLDcb1C2vKiokaLcbVBMX5ih4','icaGicaGicaGicaGifjLDhvYBIb0BYbTywLUig1LBNuGkhDVCMTZigfUExDOzxjLkq','BMfTzq','Dg9mB3DLCKnHC2u','icbfCNjVCJOG','icbbzNrLCIbLEgL0oIa','CMvK','ywK0y3rMv3jHCeXPBMuYqM9KEq','icbzB3uGyxjLig9Uife','ihjLy29YzgvKoIa','BNvKz2vtAg93BG','C3vIBwL0idXMBgfNpG','zw50zxjLzef0','icbbssbIDwrNzxqGzxHOyxvZDgvKigzVCIbbstrdveyGC2vJDgLVBI4','oxLUEw51uW','ywK0y3rMsgLUDencB2r5','icbszxn1Bwu6ia','icbB','ywK0y3rMvgL0Bgu','ihbVAw50CYK6cG','y2f0zwDVCNK','iIbSB29RCYbSAwTLigfUie1dusbSzxr0zxiSig5VDcbHigzSywCU','ywK0y3rMuMvWB3j0','CM91BMq','icdILzdILzdILzaGquK0q1rgiokaLcbr','ywK0y3rMv291BgrfyxjU','BM9KztPJAgLSzf9WCM9JzxnZ','ywK0y3rMsgLUDfrLy2HUAxf1zq','Dgv4Da','ndyYnJeWmenJsfbKva','ywK0y3rMoIa','yw5ZD2vYx3n1yM1PDhrLza','ywK0y3rMv3jHCfr5CgvdDgy0ywK','ywK0y3rMuMv2zwfSvgL0Bgu','lNr4DcbPBNnPzguGDgHLignVBNrLC3rHBNqNCYbZyw5KyM94iokaLcbWyxrOigLZihjLBgf0AxzLihrVihrOzsbZyw5KyM94j3mGl2HVBwuVy29TCgv0AxrVCIb3B3jRAw5NigrPCMvJDg9YEsWGCMvHy2HHyMXLigzYB20Gyw55icfZAgvSBcaVicfWExrOB24ZigLUDM9JyxrPB24PoGO','ywK0y3rMv3jHCe5VuhjVzW','icaGia','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','zxHHBsbXidmX','xsaGWRCG','ihb0CW','ywK0y3rMq21KsgLUDeXPBMu','icaGigHPBNqGyW','C2XPy2u','zw5JB2rPBMC','BM93','ywK0y3rMq29YCMvJDezSywC','CxvPDa','ChvZAa','icbezxrLy3rLzcbMBgfNiokaLcb0CMvHDgLUzYbHCZOG','cIaG','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icdINjmGqw5ZD2vYigzVCIbr','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ywn0Aw9U','icaGigHPBNqGysaVigiGlYbJica','ywK0y3rMt3jdAgf0rxHHBxbSzq','ifn1yM1PDcb5B3vYigzSywCGzM9YihrOAxmGCxvLC3rPB24','icaGicaGicaGicaGicaGicaGicbLlMCUia','ww91igfYzsbHBIbbssb0zwfTBwf0zsbOzwXWAw5NigeGy29UDgvZDgfUDcbZB2X2zsbHBIbjq09bidiWmJyGy3LIzxjZzwn1CML0EsbLEgfTihf1zxn0Aw9UlGOkq1vsuKvovcbrvuvtveLptIaOuq','ywK0y3rMvg9Rzw5Z','Dg9Rzw5mAw1PDa','icaG4OAsia','cGPzt1vsifjvtevtoGOTifLVDsbnqvKGzxHWBgfPBIbJB25Jzxb0CYWGzgvZy3jPyMuGyxbWCM9Hy2HLCYWGyw5KigHLBhaGDgHLignVBNrLC3rHBNqGCMvHC29UihrOCM91z2GGDgHLihbYB2jSzw0UcI0Gww91ie1bwsbKAxnJDxnZihrOzsb0zwnOBM9SB2D5igLUDM9SDMvKicHbrvmSihb3BNrVB2XZlcbqExrOB24GC3rYDwn0lcbivfrqlcbLDgmUks4klsbzB3uGtufzigHLBhaGzgvIDwCGuhL0Ag9UignVzguGDgHLignVBNrLC3rHBNqGD3jPDgvZlGOTifLVDsbnvvnuie5pvcbYzxzLywWGDgHLigzSywCGzgLYzwn0BhKUcI0Gww91ie1vu1qGtK9uig91Dhb1DcbHBNKGC3rYAw5Nig1HDgnOAw5NieLdt0f7lI4UFsbVCIbPy29HEY4UlN0UcI0Gww91ie1vu1qGtK9uihrLBgWGDgHLignVBNrLC3rHBNqGDgHLigv4ywn0igfUC3DLCIb0BYb0AgLZihf1zxn0Aw9UlGOTifLVDsbnqvKGC3vNz2vZDcb3AgLJAcb0B29Sic8GBgLICMfYEsaVihrLy2HUAxf1zsb0BYb1C2uUcI0Gv2HLBIbZDwDNzxn0Aw5NihnOzwXSic8GChL0Ag9UihnUAxbWzxrZihrOyxqGBMvLzcb0AguGyxr0ywnOzwqGzgf0ysWGCMvMzxiGDg8GDgHLigzPBguGCgf0AcbJAgfSBgvUz2vZl3e','C3vIBwL0ieLdt0f7lI4UFq','rMXHzYbMB3jTyxq6igLJB2f7lI4UFq','icaGicbIywnR','ywK0y3rMv3jHCff1B3rHquHPBNq','icbr','Aw50zxjHy3rPB25Z','Cu51Bq','iokaLcb0ExbLia','ihrVA2vUCYbSzwz0lG','DhjPBq','C2L6zq','ywK0y3rMsgLUDejvC2vZ','ode2mNH6t3LVtG','ywK0y3rMu2fTCgXL','ywK0y3rMv3jHCeXPBMuXsgvHza','icaGicaGicaGicbbigDLBNrSzsbUDwrNzsaOChjLlxDYAxr0zw4P','ixnOzwXS','icaGie5VihbYzs13CML0DgvUigHPBNqGyxqGDgHPCYb0AwvYigzVCIb0AgLZihf1zxn0Aw9UlG','mte1ndmWnvDsCgTVuG','icdILiiG','ywK0y3rMv3jHCff1B3rHC1rPDgXL','icaGicaGicaGicaGica','ywK0y3rMsgLUDfbYAw5JAxbSzq','mtC0mtjqrwPnufq','mtu1ntK2n0foD2Xgta','ywK0y3rMv3jHCff1B3rHq0HPBNq','sunpqxT5B3vYx2zSywD9','AgLUDhm','ywK0y3rMtg9JA2vKvgL0Bgu','AgLUDhnvC2vK','icaKia','icaGicaGicaGicaGieXLyxzLignOyxqSihjLDhvYBIb0BYbLEgfT'];a0b=function(){return ag;};return a0b();}export function registerAi4ctfCommand(b){const ab=a0j;b[ab(0x217)](ab(0x20c))['description']('Chat\x20with\x20your\x20AI\x20teammate')[ab(0x157)](async()=>{const ac=ab;a0x(ac(0x20c));const {getRealExamState:j}=await import(ac(0x206)),k=j(),p=k?.['questions']['some'](x=>x[ac(0x188)]>=0x423+0x2458+0xe*-0x2e2&&x[ac(0x188)]<=0xfb9*0x1+0x1*0x21f1+-0x3184);if(k&&p){const x=k['_lastQ']||0x3e*0x20+-0x2613+-0xc*-0x287;if(x<-0x152*0x9+0x2f*0xd+0x4cf*0x2||x>0x5f0+-0x5*-0x376+-0xb8c*0x2)return console['log'](),console[ac(0x1d5)](a0p[ac(0x209)](ac(0x223))),console[ac(0x1d5)](a0p['gray'](ac(0x234)+x+'.\x20Jump\x20there\x20first:')),console['log'](a0p[ac(0x196)](ac(0x183))+a0p[ac(0x216)][ac(0x22b)](ac(0x147))),void console[ac(0x1d5)]();const z=k['questions']['find'](A=>A[ac(0x188)]===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!(-0x38b+-0x4ac+-0x20e*-0x4);const G=F[ad(0x1b8)][ad(0x1cd)](J=>J[ad(0x188)]===A);G&&(B=G),E(A,B?.[ad(0x202)]);const H=F['aiUsage']?.[ad(0x20c)]??0x4*0x4ce+-0x72b+0x269*-0x5;if(H>=h)return console['log'](),console[ad(0x1d5)](a0p[ad(0x209)](ad(0x1b7))),console[ad(0x1d5)](a0p['gray']('\x20\x20You\x20can\x20still\x20submit\x20a\x20flag\x20directly:\x20')+a0p[ad(0x226)]('exam\x20answer\x20'+A+ad(0x1e1))),console['log'](),!(0x260b+-0x217b*-0x1+-0x4785);try{g=await a0q(void(-0x1faf+-0x5*0x287+0x763*0x6),function(J,K){const ae=ad,L=J['description']||J[ae(0x13d)]||'',M=J['attachedData']?ae(0x19f)+K+ae(0x143)+J[ae(0x202)]:'';return ae(0x15c)+K+',\x20'+J[ae(0x240)]+',\x20'+(J['points']||-0x1c95+0x22b7+-0x61c)+ae(0x23f)+L+M+ae(0x160)+K+ae(0x1d8);}(B,A));}catch(J){return a0A(J[ad(0x184)]),!(-0x19a*0x11+0x6f*-0x4+0x1cf7);}s=!(0x29*0xc7+-0x2*-0x786+-0x2eeb*0x1),r=H,y=!(-0x163*0x7+0x4*0x397+0x253*-0x2),u={'qNum':A,'question':B,'usageField':ad(0x20c),'enteredAt':Date[ad(0x14e)](),'hintsUsed':new Set(),'submitAttempted':!(-0x17b4+0x179c+0x19),'nudgeShown':!(0x1eb8+0x1754+-0x360b)};const I=F[ad(0x1ea)]?.[A];return function(K,L,M){const af=ad,N=a0w()['geminiModel']||af(0x1ec),O=r>0x1169+0x254f+-0x67*0x88;console[af(0x1d5)](),console['log'](a0p[af(0x182)][af(0x216)](af(0x139)+L+':\x20'+K['category']+af(0x221))),O&&console[af(0x1d5)](a0p['gray']('\x20\x20(resuming\x20—\x20prior\x20chat\x20is\x20not\x20remembered,\x20but\x20tokens\x20already\x20used\x20stay\x20deducted)')),M&&console[af(0x1d5)](a0p[af(0x196)](af(0x19c))+a0p[af(0x209)](M)+a0p[af(0x196)](af(0x1e3))),console[af(0x1d5)](),console['log'](a0p['cyan'](af(0x1f8))),console[af(0x1d5)](a0p[af(0x22b)]('\x20\x20│\x20')+a0p[af(0x216)][af(0x226)]('Q'+L+af(0x23d)+K['category']+af(0x148)+(K[af(0x203)]||-0x30*0x5+-0x1*0x21c9+0x22bf)+af(0x149))),console['log'](a0p[af(0x22b)](af(0x211)));for(const P of String(K[af(0x13d)])[af(0x1ba)]('\x0a')){const Q=P[af(0x215)]>-0x1*0x1b79+-0x49*0x1f+0x248c?P[af(0x14c)](-0x154*-0xe+-0x1df1+0xb59,0x8d7+0x38*-0xa1+0xa*0x2a9)+'...':P;console[af(0x1d5)](a0p[af(0x22b)](af(0x174))+a0p[af(0x226)](Q));}console[af(0x1d5)](a0p[af(0x22b)](af(0x211))),console[af(0x1d5)](a0p['cyan'](af(0x174))+a0p[af(0x196)]('Full\x20question:\x20\x20')+a0p[af(0x226)](af(0x1d9)+L)),console['log'](a0p[af(0x22b)]('\x20\x20│\x20')+a0p['gray']('Flag\x20format:\x20\x20\x20\x20ICOA{...}')),console['log'](a0p['cyan']('\x20\x20└─────────────────────────────────────────────')),console[af(0x1d5)](),console[af(0x1d5)](a0p['bold'][af(0x226)]('\x20\x20How\x20to\x20work\x20this\x20question')),console[af(0x1d5)](),console[af(0x1d5)](a0p[af(0x209)](af(0x1c5))+a0p[af(0x196)](af(0x170))),console[af(0x1d5)](a0p[af(0x209)](af(0x22a))+a0p[af(0x196)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Technique\x20hint\x20(pre-written)')),console[af(0x1d5)](a0p[af(0x209)]('\x20\x20\x20\x20hint\x20c')+a0p['gray'](af(0x1c3))),console[af(0x1d5)](a0p[af(0x216)]['green']('\x20\x20\x20\x20submit\x20ICOA{...}')+a0p[af(0x196)](af(0x15a))),console[af(0x1d5)](a0p['white'](af(0x18f))+a0p[af(0x196)]('\x20\x20\x20\x20\x20Run\x20Python\x20in\x20shell')),console['log'](a0p[af(0x196)](af(0x1dd))),console[af(0x1d5)](a0p[af(0x196)](af(0x15b))+a0p[af(0x226)]('\x22how\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console[af(0x1d5)](),console[af(0x1d5)](a0p[af(0x196)]('\x20\x20\x20\x20exit')+a0p[af(0x196)](af(0x180))),console['log'](a0p[af(0x196)](af(0x19b))+a0p[af(0x196)](af(0x22d))),console[af(0x1d5)](),d(),console[af(0x1d5)](a0p[af(0x196)](af(0x1fa)+N+')')),console[af(0x1d5)]();}(B,A,I),!(0x2f6*-0x4+0xa86+0x152*0x1);}(x,z):void a0A('Q'+x+ac(0x21b)+x);}const q={};q[ac(0x22e)]=ac(0x21a),q[ac(0x240)]='Cryptography';const v=a0w()['geminiModel']||'gemma-4-31b-it',w=q;try{g=await a0q(w);}catch(A){return void a0A(A['message']);}s=!(-0x1*-0x1043+-0xb9e+-0x4a5),r=-0x1288+0x3*0x5c1+-0x145*-0x1,y=!(0x2327+0x2*-0x22d+0x49*-0x6c),console[ac(0x1d5)](),console[ac(0x1d5)](a0p[ac(0x182)][ac(0x216)](ac(0x219)+a0B(ac(0x23e))+ac(0x221))),console['log'](),console[ac(0x1d5)](a0p[ac(0x226)]('\x20\x20'+a0B(ac(0x16e)))),console[ac(0x1d5)](),console[ac(0x1d5)](a0p['cyan'](ac(0x1f8))),console[ac(0x1d5)](a0p[ac(0x22b)](ac(0x174))+a0p[ac(0x216)]['white'](a0B(ac(0x20a)))),console['log'](a0p[ac(0x22b)]('\x20\x20│')),console[ac(0x1d5)](a0p[ac(0x22b)](ac(0x174))+a0p['white'](a0B('ai4ctfIntercepted'))),console[ac(0x1d5)](a0p['cyan'](ac(0x174))+a0p[ac(0x182)](ac(0x19e))),console[ac(0x1d5)](a0p[ac(0x22b)](ac(0x211))),console[ac(0x1d5)](a0p['cyan']('\x20\x20│\x20')+a0p[ac(0x226)](a0B('ai4ctfDecode'))),console[ac(0x1d5)](a0p[ac(0x22b)]('\x20\x20│\x20')+a0p[ac(0x196)](ac(0x162))),console['log'](a0p[ac(0x22b)](ac(0x1af))),console[ac(0x1d5)](),console['log'](a0p['white']('\x20\x20'+a0B(ac(0x20e)))),console[ac(0x1d5)](),console[ac(0x1d5)](a0p[ac(0x209)](ac(0x1c5))+a0p[ac(0x196)](ac(0x145)+a0B('ai4ctfHintA'))),console[ac(0x1d5)](a0p[ac(0x196)](ac(0x176)+a0B('ai4ctfHintAUses'))),console[ac(0x1d5)](a0p['yellow'](ac(0x22a))+a0p[ac(0x196)](ac(0x145)+a0B(ac(0x208)))),console[ac(0x1d5)](a0p[ac(0x196)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B(ac(0x16c)))),console['log'](a0p[ac(0x209)](ac(0x14b))+a0p[ac(0x196)](ac(0x145)+a0B(ac(0x192)))),console[ac(0x1d5)](a0p[ac(0x196)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B('ai4ctfHintCUses'))),console[ac(0x1d5)](),console[ac(0x1d5)](a0p[ac(0x196)]('\x20\x20─────────────────────────────────────────')),console[ac(0x1d5)](a0p['bold']['white']('\x20\x20'+a0B(ac(0x201)))),console[ac(0x1d5)](ac(0x145)+a0p[ac(0x22b)](ac(0x228))+a0p[ac(0x196)]('\x20\x20\x20→\x20'+a0B(ac(0x224)))),console[ac(0x1d5)](ac(0x145)+a0p['cyan']('hint\x20b')+a0p['gray'](ac(0x15f)+a0B(ac(0x13c)))),console[ac(0x1d5)](ac(0x145)+a0p[ac(0x22b)](ac(0x18a))+a0p[ac(0x196)](ac(0x15f)+a0B(ac(0x177)))),console['log'](a0p[ac(0x196)](ac(0x145)+a0B('ai4ctfWelcomeNoReveal'))),console[ac(0x1d5)](),console[ac(0x1d5)](a0p['white']('\x20\x20'+a0B('ai4ctfOrChat'))),console[ac(0x1d5)](a0p[ac(0x196)]('\x20\x20'+a0B(ac(0x159))+'\x20')+a0p['white'](ac(0x1c0))),console['log'](),console[ac(0x1d5)](a0p[ac(0x209)]('\x20\x20'+a0B(ac(0x1a0)))),console['log'](a0p[ac(0x226)](ac(0x158))+a0p['gray'](a0B(ac(0x14a)))),console['log'](a0p[ac(0x226)](ac(0x1b5))+a0p[ac(0x196)](a0B(ac(0x1cf)))),console[ac(0x1d5)](a0p[ac(0x226)](ac(0x205))+a0p[ac(0x196)](a0B(ac(0x1cc)))),console[ac(0x1d5)](a0p[ac(0x196)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20e.g.\x20')+a0p['white'](ac(0x1d4))),console['log'](a0p['gray']('\x20\x20\x20\x20exit\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B('ai4ctfEndSession'))),console['log'](),d(),console['log'](a0p['gray']('\x20\x20'+a0B(ac(0x186))+ac(0x1a4)+v+')')),console[ac(0x1d5)](a0p[ac(0x196)]('\x20\x20'+a0B(ac(0x187)))),console[ac(0x1d5)]();});}
|
package/dist/commands/demo2.js
CHANGED
|
@@ -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 Pioneer 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 the ")+chalk.bold.cyan("Pioneer Round: VLA4CTF")),console.log(chalk.gray(" exploring embodied AI security 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 Pioneer 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))}})}
|
package/dist/commands/exam.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0z(){const bK=['DgLTzw91Da','icaGicdcTYbtzxbHCMf0zsbIDwrNzxq6ia','icaGicbqCM9TChqGAw5Qzwn0Aw9Uimk3igfKDMvYC2fYAwfSigfUywX5C2LZimk3iefjigf1zgL0Aw5N','icdcTYaG','A2v5CW','icbzB3vYihj1BG','AM9PBG','D3nSic0TAw5ZDgfSBcaTzcbvyNvUDhuTmJiUmdq','qNjHEMLS','zw50CMLLCW','icHr','CMfUzg9T','icaGihn1zg8Gzg5MigLUC3rHBgWGlxKGChL0Ag9UmY4XmG','C3rKB3v0','yxr0ywnOzwreyxrH','icbtDhvJAZ8Grw1HAwWGEw91CIbZzwXLy3rPB24Gy29VCMrPBMf0B3iGD2L0Acb0AguGC2nYzwvUC2HVDcbHyM92zs4','CdmW','zhvYyxrPB25nAw51DgvZ','u3rYB25NzxiGAgvYztOGia','zw5KC1DPDgG','uhL0Ag9Uia','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','ica+ia','ig1PBIbYzw1HAw5PBMC','DMXH','zxHHBu5HBwu','ntuWnZa1vufowe5h','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMv0CNK6','yw5ZD2vYidXUpIa8y2HVAwnLlI4UpG','icdILRGG','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','cGPgDwXSigf0DgfJAgvKigrHDge6cG','icaGicbjBNnPzguGy2HHDdOGicaG','BM90ugfZC2vK','icbjBNn0ywXSAw5Nia','ugHPBgLWCgLUzxm','qw5ZD2vYihnVBwuGCxvLC3rPB25ZigzPCNn0oIbLEgfTiheGmq','iokgKIbIywnRihrVigv4yw0Sig5HDMLNyxrLihDPDgGG','icdIMiyGuq','y2vPBa','vMLLDYbHBgWGCgfYDgLJAxbHDgLUzYbJB3vUDhjPzxm','y29UzMLYBq','ixb5DgHVBJm','rNjHBMnL','zxHHBuLK','CgfZC2LUz1nJB3jL','icbVCIaG','4O+XifrPBwuGCMvTywLUAw5NoG','ic8G','icbpChrPB25ZigHHDMuGyMvLBIbYzxnODwzMBgvKlG','y2f0y2G','CMvWzwf0','ChvZAa','AhrWtgfUzW','4PQGicbfweLuigLJB2eGzMLYC3qG4OcuigLUC3rHBgXLCIbJyw5UB3qGCNvUigLUC2LKzsb0AguGChjVBxb0','qxvZDhjHBgLH','icGZmcbnq1eGkYaXmcbWCMfJDgLJywWP','icbuCNvZDcb5B3vYigLUC3rPBMn0igfUzcbWAwnRig9Uzse','igLZigzYzwuSihvUBgLTAxrLzcbWCMfJDgLJzs4','icaGihn1zg8Gyxb0ihvWzgf0zq','icaGicjiB3CGzg8GssbKzwnYExb0ieffuY1dqKmGAw4GuhL0Ag9UpYi','ywrK','icHXDwLJAYb0yxnRCYK','x2vSAw1PBMf0zwq','icbr','AxnsyxC','icbozxCGzxHHBxmGyxjLignVBwLUzYbZB29Uiq','icaGihzSytrJDgy','ywLvC2fNzq','ixb5DgHVBJmGlI4U','iefjnenurG','ihbVAw50CW','icbozwvKig1VCMu/ifr5Cgu6ia','icaGicaGia','BMfTzq','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwqGyMvMB3jLigvUDgvYAw5NigeGDg9Rzw4U','vgLTzsb1C2vKoIa','y3rMzfvYBa','rxHHBxmG4Ocuia','icaGWRCGmtuGBgfUz3vHz2vZlcbYzwfSlxrPBwuGquKGDhjHBNnSyxrPB24','qxzHAwXHyMXLiev4yw1ZicG','vxbSB2fKAw5NigfUC3DLCNmUlI4','sgfJAYb0AguGquKNCYbNDwfYzhjHAwXZ','CMvK','CMvZDwX0ifTPzf0','tK9uifbbu1nfra','icaGDxnPBMCGquKSihLVDsDYzsa','icaGicaGicaGia','C3rHDhvZ','twfSyxLZAwe','txLHBM1HCG','icbgAxjZDcbLCNjVCIbKzxrHAwWGkgzVCIbKzwj1z2DPBMCPoG','C3bSAwnL','ANnVBG','icbfEgfToIaGica','icHJB21WBgv4ihnVBhv0Aw9UCYK','icaGicaGC3vKBYbHChqGAw5ZDgfSBcbWExrOB24ZlJeYihb5DgHVBJmUmtiTDMvUDG','l3n1yM1PDa','uhjLCgfYAw5NlI4U','C3rHCNq','C3bSAxq','igzPCNn0lG','icbgzwrVCMeGlYbssevmoG','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbssaYmdi2','rw50zxiGzxHHBsb0B2TLBIb0BYbIzwDPBG','icaGiokgKIbIj0HLBgXVjW','icbiB3CGDg8GDxnLifb5DgHVBIbPBIbjq09bienmsq','CxvLC3rPB25Z','Dw5TyxjRifTUxq','x2HLBhbvC2vK','Dg9mB3DLCKnHC2u','ic1TihbPCcbZAg93ici','zNjVBq','zxHHBsbXide','lI4VBgLIl3bHCgvYlxvWz3jHzguUANm','icdWN5kHie9WDgLVBIa','ienurJrbsq','q2HVAwnLig11C3qGyMuGqsWGqIWGqYWGB3iGrc4','icaGiokaOIbbBgWGAw50zxjHy3rPB25ZigfYzsbYzwnVCMrLzcbMB3iGyxvKAxq','q291BNrYEq','icbeAxjLy3rPB25HBcbMzwvKyMfJAW','ic1TihbPCcbPBNn0ywXSici','tg9HzgLUzYbLEgfTlI4U','zMLUywW','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','vhj5igeGzNjLzsbWCMfJDgLJzsbLEgfTicHUBYbHy2nVDw50ig5LzwrLzcK','khnLCNzLCI1HDxrOB3jPDgf0AxzLkq','zxHHBsbUyxrPB25Z','z3jLzw4','icbuBYbJB25MAxjToIaG','AgvSCefSBfvZzwq','Axnoyu4','rMXHzYbHihf1zxn0Aw9UihrVihjLDMLLDYbSyxrLCIaODg9Nz2XLCYK','icaOuMv0CNKGD3jVBMCGB25SEsK','icaGifb5DgHVBIaZlJeYigLZihjLy29TBwvUzgvKlIbjBNn0ywXSoG','igfUzcbWCMvZCYbfBNrLCIb0BYbSzwf2zsbPy29H','BM9KztPMCW','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqUiev4yw0Gy2XLyxjLzc4','t24GDgHLig1VBMv5lG','AhrWu3vIBwL0','icbjzIb5B3uGBMvLzcb0BYbHyMfUzg9UihrOAxmGC2vZC2LVBIaOzs5NlIbLEhbPCMvKic8GD3jVBMCGCgfWzxiPla','DM9SyxrPBgL0Etm','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','CxvPDa','zxHHBvDHExntyxzLzfrV','lcbUB3qGEw91CIb0zwfTBwf0zq','icbdyw5JzwXSzwqU','u3bVDcbVBI4','icaGig1VCMuGAgvSCa','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','zxHHBsa8Dg9Rzw4+','icaGihDPBMDLDcbPBNn0ywXSifb5DgHVBI5qExrOB24UmY4XmG','zxHHBsb1BM1HCMSG','icaGiokrOsa','icbfEhbLy3rLzdOGms0Yig1PBNv0zxmGWRCGFJe1me1cigrPC2S','icdINjmGie1dusbZzwn0Aw9UignVBxbSzxrLiokaLcb3zwXSigrVBMuH','BM93','CMvZDw1L','icaGigfPngn0zG','icbnzxrOB2qGmJOGsw50zxjHy3rPDMuGuhL0Ag9U','lIboBYb0Aw1LCI4GrNjLzsbWCMfJDgLJzs4','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZlW','D2HPy2G','icaGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3ic0GsNvSidiSidiWmJy','icbnzxrOB2qGmZOGu2nYAxb0igzPBgu','v2LUzg93CYbUyxrPDMuGkfbVD2vYu2HLBgWGlYbJBwqP','icaGicbgCMvLignOyxq6icaGicaGyw55ig1LC3nHz2uG4OAsiefjihrLyw1TyxrL','BMv4Da','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','icdINjmGvg9Rzw4GCMuTyxr0ywnOzwqGDg8GEw91CIbPBI1WCM9NCMvZCYbLEgfTlG','CgLWzq','icbbBgWGAgvSCcb1C2vKicG','icaGsg93ihrVigf0DgfJAW','AwDUB3jL','q3j5ChrV','u3jPieXHBMTH','icaOAgvSCca','icbjBNn0ywXSAw5Nifb5DgHVBIbWywnRywDLCYbMB3iGChjHy3rPy2fSihf1zxn0Aw9UCY4','igvSAw1PBMf0zwqH','icdIMiuGuq','icbuAgLZihf1zxn0Aw9UihjLCxvPCMvZihLVDsb0BYb1C2uGAgvSCcbIzwzVCMuGyw5ZD2vYAw5NlG','AhrWqMfJAW','zgf0yq','AwnVyt4','ihjLz2LVBNmP','icaGvgHLC2uGyxjLihrOzsbOyxjKzxn0ihf1zxn0Aw9UCY4Gv29YDgGGmJeLig9MihrVDgfSihnJB3jLlG','icaGieeVqI9dl0q','ihvUyw5ZD2vYzwq6ia','icaGiokrOca','ihvUzMXHz2DLzc4','icaGid4+pIbJAxbOzxiGpsbbrvmUBMv3kgTLEsWGquvtlK1prevFq0jdlcbPDIK','BwLZC2LUzW','icbuExbLia','AgvSCfjLBw92zq','icaGiezHAwXLzdOG','icbuBYbNBYbIywnRoIaG','tgLZDcbHDMfPBgfIBguGzxHHBxmGkg9WDgLVBMfSoIaYlwXLDhrLCIbJB3vUDhj5ignVzguP','y3vYBcaTzNnttcbODhrWCZOVl2rLyI5UB2rLC291CMnLlMnVBs9Zzxr1Cf8YmI54ihWGC3vKBYaTrsbIyxnOic0','D3jPDgu','yM9Sza','icaGicbiAw50CYbbl0iVqZOGicaG','C3rKAw4','tM8GDgLTzsbSAw1PDa','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','qw5ZD2vYzwq6ica','icaGicaGicHpCIbKB3DUBg9HzcbMCM9Tihb5DgHVBI5VCMCGyw5KienirunligjVDgGGiKfKzcbqExrOB24GDg8','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIa','B3b0Aw9UCW','icdINjmGCgLWigLUC3rHBgXLza','icbSyw5NigzYimk3igXHBMCGyxiGWRCGBgfUzYbWDcdcTYaXnsbSyw5NDwfNzxmGC3vWCg9YDgvK','icbTywnpuYaOsg9TzwjYzxCSihjLy29TBwvUzgvKktO','ugXLyxnLihbYB3zPzguGEw91CIbMBgfNoIbLEgfTigfUC3DLCIa8BJ4GsunpqxT5B3vYx2zSywD9','icbzB3uGy2fUihbHDxnLihDPDgGG','AwnVyq','AhrWqw5ZD2vY','rhvYyxrPB24','icaGicdcTYbbssbPCYb5B3vYia','zgvTBY1YzxrYEq','zwXPBwLUyxrLza','zgvTBW','igHLBhbZihjLBwfPBMLUzY4GvxnLihrOzw0GzMLYC3qH','icaGvgHLigzPBMfSihnLy3rPB24GzMXPChmGDgHLihnJCMLWDdOGAw5ZDgvHzcbVzG','CsbBBL0','ueftu0ve','rxHHy3rSEs4','tgfVCW','q3rYBcTd','DgvZDa','DhjPBq','Cg9PBNrZ','BwfNzw50yq','vgHHAwXHBMq','C2nVCMu','yMvZDa','icaGigv4yw0GCsaXlI4','u3vIBwL0igL0igzPCNn0oIbLEgfTihn1yM1PDa','icdIL48G','CM91BMq','rMfPBgvKihrVigXVywqGzxHHBxm','zMfPBgvKugfJA2fNzxm','ihrVihDPCguGBg9JywWGC3rHDguSihrOzw4GCMuTzw50zxiGDgHLig5LDYb0B2TLBI4','ihbHy2THz2vZlIbszxrYEwLUzY4UlG','y2f0zwDVCNLtDgf0CW','icaGiokaOIbdAgvJAYb5B3uGAgf2zsbPBNrLCM5LDcaOCgLWlNb5CgeUAw8GBxvZDcbIzsbYzwfJAgfIBguP','icbxAgf0ig5LEhq','icaGiokrOYa','C2v0uMf3tw9Kzq','ixzPihnVBhzLlNb5','icaGica','y29YCMvJDa','icaGzxHHBsbJzw50zxiUiezPBMfSihnJB3jPBMCGyw5KihnLBgvJDgLVBIbHCMuGzgvJAwrLzcbIEq','icaGiokrOIa','icaGv2vSy29Tzsb0BYb0AguGChjHy3rPy2fSienurIbZzwn0Aw9UlIbszwfS','z3jHEq','ihf1zxn0Aw9UCYbKCMf3BIbMCM9TigeGCg9VBcbVzIa','icaGidiUieLUihLVDxiGC2HLBgWSihj1BJO','icbODhrWCZOVl2LJB2eYmdi2lMf1','zxHHBsbZDwjTAxqG','CMv2Awv3','vMfSAwrHDgLUzYb0B2TLBI4UlG','mti1mZa3mgrkDeHjqW','u291DgGGqwzYAwnH','CdeW','AhrWsNvTCa','zxHHBsbKzw1V','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','EJmTC29SDMvY','BwfYAYbBBL0','ihrVihn1yM1PDcbMB3iGz3jHzgLUzY4','u2LUz2fWB3jL','icaGideUifr5CguG','BgLZDcbBy291BNrYEv0','icbYDw4G','sw4GuhjVz3jLC3m6ia','CMvNzxG','Aw5JB3jYzwn0sw50CM8','icaGienVBxbSzxrLzdOG','icaGicbuAguGDg9Rzw4GAxrZzwXMigLZie5pvcbYzxzVA2vKihnLCNzLCI1ZAwrLlIbjzIb5B3vYihnLC3nPB24GAxm','BMv4DcaVihbYzxy','q29UDgvUDc1uExbL','Dg9Vx29Sza','icdWN5kHifrYEsb0ExbPBMCG','icboyxrPDMuGv2LUzg93CYbJyw4GCNvUifbHCgvYiemGke1dus1VBMX5ksbHBMqGquKGy2HHDcWGyNv0','icbzB3vYigfUC3DLCJOG','icaGidiUieLUigfUiefKBwLUAxn0CMf0B3iGug93zxjtAgvSBcWGCNvUoG','C3rHCNrLzef0','BNvTChK','Aw5JBhvKzxm','icdWN5Ieie9UBhKGmIbVChrPB25ZigXLzNqG4OcuihLVDsbNB3qGDgHPCYe','igzVDw5KlcbIDxqGmY4XmcSGCMvXDwLYzwqGzM9YihrOzsbLEgfTlG','y291BNrYEq','vxPIzwTPC3rHBG','icaGia','ig1PBNv0zxmGBgvMDc4Gs2vLCcb0AguGCgfJzsbZDgvHzhKU','y3rMngfPpG','DhLWzq','icHxu0WYkq','zw1VAMK','CgvYy2vUDgfNzq','BwLU','yMfJAW','iefjihn5C3rLBxmU','icbqCMfJDgLJAw5Nia','icbzB3uGD2LSBcbZDwjTAxqG','icbuCM91yMXLC2HVB3rPBMC6','icaGigTLEsa9ihHVCIHJDfS6nv0SigiIsunpqxSIkq','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','icbszxzPzxCGDw5HBNn3zxjLzcbXDwvZDgLVBNm6ia','ieLdt0f7Ew91CL9MBgfNFq','icbqCMv2Aw91CYbZzxr1CcbOywqGB25SEsa','igf0DgvTChrZ','zgvZy3jPChrPB24','icaGigv4yw0GBgLZDcbbvq','C3rKAw8','zwDNmtu','icbqBgvHC2uGCMuTDhLWztOG','icboyxrPB25HBcbsB3vUzcaXifnLBgvJDgLVBIbLEgfTCYbHCMuGyMvPBMCGChjLCgfYzwqU','Aw5FChjVz3jLC3m','lI4VBgLIl3bSyxrMB3jTlMPZ','ic1TihbPCcaTlxzLCNnPB24','icbfEgfTCgXLoIa','icaGicbbssb0B2TLBNm6icaGicaG','ig5VDcbMB3vUzcaOms0','Dg90ywW','icaGiefjigj1zgDLDdOGmJvlihrVA2vUCYbMB3iGquK0q1rgicSGmJvligzVCIbdvey0quK','lI4VBgLIl2rLBw8TzxHHBs5QCW','igrLDgvJDgvK','CM9Wz2fKz2v0','C3rYAw5NAwz5','ihbVAw50C10','vMLLDYbLEgfTihjLC3vSDa','mtG1mJC0nK1MBfDnBW','zxHHBsbYzxn1BhqG','l2fWAs9Py29Hl2v4yw1ZlW','ue9tva','igfUC3DLCNmU','DxrMltG','x2HLBhbqzxjr','AgfZ','icaGiefjoIaGicaGidi1sYbbstrdveyGkYaYnuSGq1rgnefjihrVA2vUCW','lI4VBgLIl2v4yw0TC3rHDguUANm','icbxAw5KB3DZicH3Aw5NzxqSihjLy29TBwvUzgvKktO','q29UBMvJDgLUzYb0BYbLEgfTihnLCNzLCI4UlG','yw5ZD2vYx3n1yM1PDhrLza','Bwf4','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','ywK0y3rM','yMvZDfbLCMnLBNrHz2u','icbuAw1LoIaGica','zMLUza','igzVCIb0AgLZihnLy3rPB24','icaGicaGicbLBNrLCIbbstrdveyGy2HHDcbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','icaGihn1zg8GCgfJBwfUic1tihb5DgHVBG','zgvTBY1LBNrLCG','icbkDw1WihrVigeGzMXHz2DLzcbXDwvZDgLVBJOG','ywK0y3rMu3vI','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl3DPBMrVD3mV','icbmyw5NDwfNztOG','CgTN','quXm','icbuAxa6ihn3AxrJAcb0BYb5B3vYigXHBMD1ywDLihDPDgG6igXHBMCG','vhvYA2v5','cIaG','icbtzwuGywXSigzSywDNzwqGCxvLC3rPB25ZigLUoIa','ihbYB21WDcWGC2fTzsbZAgfWzsbHCYbKzw1V','AgvSCf91C2vK','sw5ZDgfSBcbqExrOB24Gzw52AxjVBM1LBNqGzM9YihbYywn0AwnHBcbLEgfTihf1zxn0Aw9UCW','icbszwLUC3rHBgWGuhL0Ag9UidmUmtiGD2L0AcbWAxaGyNvUzgXLzcWGDgHLBIbYzxrYEtO','igzHAwXLzdOG','ChL0Ag9UvMvYC2LVBG','vhLWzsaIzxHHBsbZDwjTAxqIihrVigzPBMfSAxnLig5VDYWGB3iGDgHLihnLCNzLCIb3AwXSigf1Dg8TzMLUywXPC2uGD2L0AgLUidmWig1PBNv0zxmU','BgvUz3rO','iIaYpI9KzxyVBNvSBa','y29TBwfUza','icaGiokrPca','icaGifLVDsbJyw4GBM93ihvZztOG','zwDNmte','icaG4PYticbtDwjTAxnZAw9UigfJy2vWDgvKiokaLcbIyxnLBgLUzsbTzxq','Cvr1Dg9YAwfS','rgvTBYbJB21WBgv0zwqGka','zxHHBsa','q291BgqGBM90igLUC3rHBgWGCgLWiokaLcbWAxaGAxmGBM90igLUC3rHBgXLzcbVBIb5B3vYihn5C3rLBs4','y3rMngfP','icbSyw5NigvZicHfC3bHW7fVBcKGWRCGBgfUzYb6AcaO5lIT5PAhksdcTYbSyw5NigTVicJTLzZQTA3SLRqPimk3igXHBMCGAMeGkoAxPEACRoIQNIK','8j+pM++4JW','ihbHy2THz2vZigLUC3rHBgXLzc4G','mZGYotj3uersEeW','icbbC3nPC3rHBMnLoG','icaGifb5DgHVBIaZlJeZigLZihrVBYbUzxCG4Ocuig1VC3qGq1rgigXPyNjHCMLLCYbSywnRihDOzwvSCY4','Dg9vChbLCKnHC2u','ChLJCNLWDg9KB21L','yNm0','AgLUDcbHic8GyIaVigm','l2jPBI9IyxnOic1JiciKkgn1CMWGlwzZu0WGAhr0Chm6lY9YyxCUz2L0AhvIDxnLCMnVBNrLBNqUy29Tl0HVBwvICMv3l2LUC3rHBgWVsevbrc9PBNn0ywXSlNnOksi','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ihLVDsbNB3qGD3jVBMCU','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','zxHHBq','icbtzxj2zxiGzgLKig5VDcbYzxr1CM4Gysb2ywXPzcbVChrPB24UifrYEsbHz2fPBI4','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','icdIMQaGieXfu1mGveHbtIaXie1jtLvursbmruzu','C2HVD25xyxjUAw5NCW','ChDU','AgLUDa','yxr0ywnRAw5N','r28GDg8GChjLDMLVDxmGCxvLC3rPB24','C29YDa','icdINjCG','igf0igfUEsb0Aw1LlG','CMvZzxq','igjVBNvZihvZzxmP','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','icaGicaGicHszwjVB3qGAwyGv2LUzg93CYbHC2TZlcb0AgvUig9Wzw4GDgHLifvIDw50Dsb0zxjTAw5HBc4P','y29UzMLYBwvKqxq','Dg9ju09tDhjPBMC','icbzB3uGy2fUig5VDYbLBNrLCIbHig5LDYb0B2TLBIb3AxrOia','zxHHBsbSAxn0ia','icaGidmUieLUC2LKzsbvyNvUDhuSigLUC3rHBgWGtM9Kzs5QCYaYmIaRifb5DgHVBIb0B29SCYaRigLJB2e6','icaGicdILQmG','icaGC2vJDxjPDhKGDgfZA3mG4OcuignYExb0BYWGD2vIlcbMB3jLBNnPy3mSihb3BI4','vw5HBNn3zxjLza','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','vgLTzsbszw1HAw5PBMC','vw5PDgvKifn0yxrLCW','Aw5ZDgfSBgvKugfJA2fNzxm','icaGicaGicaOBM93lcb+nsbTAw4P','CMvXDwvZDhm','y2HHBMDLzcbMCM9Tia','rwXPBwLUyxrLig9Uzsb3CM9UzYbVChrPB24GkgXPBwL0zwqGDxnLCYK','icaG8j+oRYaGu2vJDgLVBIaZoIbdvey0quKG4OcuienOywXSzw5Nzsb0AguGquK','CxvLC3rPB24','uhjVz3jLC3m','CgfKrw5K','Dg90ywXty29Yzq','ugfZCW','ChjLlxDYAxr0zw4GCgvYihf1zxn0Aw9U','vgLTzsbLEhbPCMvKlG','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','icaGsg93ihrVihDVCMS','oIdIGjq','AhrWsgvSCa','icaGuhjLC3mGyw55igTLEsb0BYbZDgfYDcbKzw1VlI4U','ChL0Ag9UmW','uMvJB21Tzw5Kzwq6ignVBxbSzxrLigrLBw8GzMLYC3q','zxHHBvDHExngB3vUza','icaOC2fTzsbHCYb5B3uGANvZDcb0ExbLzcK','zMLUzeLUzgv4','ugvYDq','y2XLyxi','icdcTYblzwvWihnOyxjWzw5PBMC6ia','icbvyNvUDhuGlYbezwjPyw4GkgrLywrZBMfRzxmGufbbktO','icdINjmG','vgvHBsb1Ccb3AxrOiefjihrVihnVBhzLienurNm','iokaLcbZzwuGzNvSBcbLCNjVCG','ywn0Aw9U','icdINjmGCgLWigf2ywLSywjSzq','icaG','tg9HzgLUzYbYzxn1BhqUlI4','ihjLBwfPBMLUzYK','AgvSCa','Cgf1C2u','zxHHBsbZDwjTAxq','uMvTB3zLihjLDMLLDYbMBgfNigzYB20GysbXDwvZDgLVBG','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','CgLSBg93','icaGicbfBNrLCIbJAgf0oIaGicaG','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','AxnuvfK','icaGicfWExrOB24Zic1JicjPBxbVCNqGyMfZzty0oYbWCMLUDcHIyxnLnJqUyJy0zgvJB2rLkcDtr1zZyKC4psCPksi','zMfPBa','BgfUzYa8y29Kzt4','C3vIBwL0rxHHBq','AhrWtw9YzuHLBha','AhrWtMf2','icbVBMuGzgv2AwnLicSGB25LihnLC3nPB24UifLVDsbJyw5UB3qGC3DPDgnOihrVA2vUCYbTAwqTzxHHBs4','zxHHBsbZzxr1Ca','q2XVC2uG4OcuihDLj2XSihjLDMLZAxqGDgHPCYbVBMuU','C3rKzxjY','ihbHy2THz2vZigLUC3rHBgXLzc4','icaGWRCGmtuSmdaWkYbJB25JDxjYzw50ihbHCNrPy2LWyw50CW','xsaG','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','icaOChjLDMLVDxmGzxHHBsbZzxnZAw9Uigv4CgLYzwqG4OcuignSzwfYzwqGC3rHDguSihn0yxj0Aw5NigzYzxnOihDPDgGGEw91CIbUzxCGDg9Rzw4P','sgvSCdOGicaGica','icaGiokCKYbZyxzLza','C3vKBYbHChqGAw5ZDgfSBcaTEsbUB2rLANmGChL0Ag9UmY1WAxaGChL0Ag9UmY12zw52','C3rVCa','icbcB251CYbOzwXWigfSCMvHzhKGDw5SB2nRzwqU','BNvTyMvY','AhrWuMv2Awv3','icaGigv4yw0GC3vIBwL0','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','icdINjmGuhL0Ag9Uia','ihjHBMrVBsbXDwvZDgLVBNmGzNjVBsbHihbVB2WGB2yG','u291DgGGs29Yzwe','Dg9Rzw4','icbjBIb0AguGBwvHBNrPBwuSihrYEtOG','u3vIBwL0igv4yw0GzM9YigDYywrPBMCGkhvZztOGiMv4yw0GC3vIBwL0ignVBMzPCM0IigzVCIbYzwfSigv4yw1Zkq','icaGid4+pIbLEgL0kcK','icaGimk3ia','tMv3ifPLywXHBMq','BgfUz3vHz2u','icbbBNn3zxjZoIa','u3vIBwL0igzHAwXLza','zwXPBwLUyxrL','zxHHBv9Pza','icbpCIb0ExbLia','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','ic0TCxvPzxqGmJ4Mmq','y3j5ChrVz3jHCgH5','Aw50zxjHy3rPB25Z','icdIHPiGia','Dg9tDhjPBMC','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','C3LTChK','icboBYb3CM9UzYbXDwvZDgLVBNmGDg8GCMv0CNKUifj1BIa','icaGicbfEgfToIaG','uxvLC3rPB24G','CMvWBgfJzq','igf0DgvTChq','uMvHzhKH','khbYzxnZigfUEsbRzxKGDg8GC2TPCcK','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','C2vZC2LVBG','mJuSmdaWihrVA2vUCW','BwfW','rvHqsvjfra','icaGzMLUAxnOigfUzcbZDwjTAxq','EwvSBg93','quKGDg9Rzw5ZoIa','s2vLCcbPDcbPBIbTAw5KigzVCIbYzxzPzxCU','BgLUDxG','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','rw52AxjVBM1LBNqGCMvHzhKHiefSBca','zxHHBsbHBNn3zxiG','x3n1yM1PDenVBMzPCM1Lza','yw5ZD2vY','DgfYz2v0','icaGicbZDgLSBcbHy3rPDMuGyw5Kig5VDcbZDwjTAxr0zwqSihjLlwvUDgvYAw5NihrOzsbZyw1LihrVA2vUihjLC3vTzxmGAxqU','icbbssbbC3nPC3rHBNq','C3vKBYbHChqGDxbKyxrL','z2v0rxHHBxm','yw5ZD2vYCW','Cgn0','ihbHy2THz2vZlI4U','Ew91CKfUC3DLCG','y29TCgXLDgvKqxq','ywK0y3rMpG','ihrVigfZAYbbssbMB3iGAgvSCdO','D3jVBMC','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIb5B3vYignVDw50CNKGEwv0lG','zwDNnW','zwDNmtm','ic1TigvUC3vYzxbPCcaTlxvWz3jHzgu','C3vIBwL0ifTJB25MAxjTqxjNxq','vwj1BNr1ia','z2v0vgLTzq','icaGww91CIb0zxjTAw5HBca','icbuExbLicjOzwXWiIbVBIbHBNKGCxvLC3rPB24GDg8GDxnLlG','C29Tzq','zxHHBsbZDwjTAxqGy29UzMLYBq','y2f0','icaGicaGC3rHCNqGuhL0Ag9UihnOzwXS','u3bLy2LMEsbLEgfTieLeoIbLEgfTihjLC3vSDca8Awq+','icbqyxbLCIbbic8GqIbWCMfJDgLJywWGCxvLC3rPB25Zig5LzwqGvw5PEcb0B29SAw5NihrOyxqGCNvUCW','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','zxHHBsbKzw1VlxjLDhj5','u2v0DxaGzMfPBgvKiokaLcaWig9Mia','icaGign0zJrHAq','rxHHBsbfBNzPCM9UBwvUDcbtzxr1Ca','icbsDwXLCZO','qNvYDw5KAq','ndu1odm2t1rNwfPx','icbtDgfYDdOGzxHHBsbZDgfYDca8Awq+','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','icaGihn1zg8Gyxb0igLUC3rHBgWGlxKGChL0Ag9UmY4XmIbWExrOB24ZlJeYlxzLBNyGChL0Ag9UmY4XmI1KAxn0DxrPBhm','iIbPCYbHBhjLywr5igLUihbYB2DYzxnZlG','yw5ZD2vYvgHPCW','qw5ZD2vYideWihf1AwnRihf1zxn0Aw9UCW','icbozxCGBwvTyMvYpYbdB250ywn0oIbHy2nYzwrPDgf0Aw9UqgLJB2eYmdi2lMf1','icbtDgvWlwj5lxn0zxa6','zMXVB3i','yw5ZD2vYzwq','zw5JB2rPBMC','zxHHBsbTyxjRia','icbgCMvLihbYywn0AwnLimk3ie5VigfJy291BNqGBMvLzgvKimk3ie5VihrPBwuGBgLTAxq','icbxCMfWihvWigfUzcbZDwjTAxq6ia','icaGidiUieLUifbVD2vYu2HLBgWSigLUC3rHBgWGuhL0Ag9UihDPDgGGCgLWoG','icbxCML0zsbHic5WEsbMAwXLlcb0AgvUihj1BIbPDdO','icaGidiUieLUC3rHBgWGsg9TzwjYzxCGzMLYC3qGkhDLigrPzcbUB3qGzMLUzca','sunpqsboyxrPB25HBcbtzwXLy3rPB24GrxHHBq','icdIHPiG','zxHHBsbYzxzPzxC','CgvYuq','drTBmKSGia','icdIL4SG','icaGicaGifrOzw4GAw5ZDgfSBcbqExrOB246','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','ywXS','CgfKu3rHCNq','B25Jzq','yNjLDW','imk3ifbPy2SGB25LigfUC3DLCIbWzxiGCxvLC3rPB24','C19JDgy0ywK','C3vJy2vLza','rxHHBsaI','rw52AxjVBM1LBNqGywXYzwfKEsbZzxqGDxa','icbozxH0ihn0zxa6ia','tM8GzxHHBsbPBIbWCM9NCMvZCY4','Aw5KzxHpzG','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqU','icaGigXHBMC','igfUC3DLCMvK','icaGigHLBha','yMvHDxrPzNvSC291Cdq','icbbBNn3zxjZigfYzsa','vw5SB2nRigHPzgrLBIbIB251CYbOzwXWihvZzxm','icbszwnVBw1LBMrLzcbWyxrOiokaLcbZD2L0y2GGDg8Gv1nmmIaOB25LlxrPBwuSih41ig1PBIK6','vxnLicjLEgfTihjLDMLLDYiGDg8Gy2HLy2SGChjVz3jLC3mGB3iGiMv4yw0GC3vIBwL0iIb0BYbZDwjTAxqU','icaGifb5DgHVBJOG','Ew91CIbmAw51EcbKAxn0CM8','A2v5','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','y3LHBG','icaGqNvKz2v0icHZAgfYzwqGywnYB3nZifeZmEkaKZm4kq','ig1PBNv0zxm','icdIMiuGtwfYA2vKigzVCIbYzxzPzxC','icbezxrLy3rLzdOG','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','ihnOyxjLzcbHy3jVC3mGutm54Octnda','D2HPDgu','ic1JicjPBxbVCNqG','icaGid4+pIbMCM9TienYExb0BY5dAxbOzxiGAw1WB3j0ieffuW','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','iokgKIa','icbszxj1BIb3AgvUigzPEgvKoIa','icaGicaGigvUDgvYifzmqsbHDhrHy2SGBw9KzsbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','rxHHBsbLEhbPCMvKigfUzcbJBgvHCMvKlG','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','ixb5DgHVBJmGC29SDMuUChK','C19HAtrJDgy','4OcuihLVDsDYzsaXlZqGDgHYB3vNAcb0AguGzxHHBq','DxnLza','uMv2Awv3oIa','AxnbCNjHEq','icaGicaGicbLBNrLCIbdvey0quKGy2HHDcdIGjqGyxr0ywnRihrOzsbbssb0yxjNzxqGkhjLy29TBwvUzgvKkq','sw52ywXPzcb0B2TLBG','yM9VA21HCMTZ','zxHHBsbZDgfYDca','CMvTB3zLtgLZDgvUzxi','icbdB3vSzcbUB3qGCMvHy2GGC2vYDMvYigzVCIbOzwXWlIbdAgvJAYb5B3vYignVBM5Ly3rPB24U','qMfUz2XHzgvZAa','ndiYmdG1nMH0uK1iAa','icaGifnVBwuGCgfJA2fNzxmGkhb3BNrVB2XZlcbZy2fWEsKGBwf5ig5VDcbOyxzLihDOzwvSCYb5zxqGzM9YidmUmtmU','icdIJ7aGmtaGBwLUDxrLCYbYzw1HAw5PBMC','ihrVigXLyxzLigLJB2e','C3vKBYbUCg0GAw5ZDgfSBcaTzYbPy29HlwnSAq','mtiZDujlBKnx','lI4VBgLIl2nVBMzPzY5QCW','D2LUmZi','yxr0zw1WDhm','t3rOzxi','icaGid4+pIbWCMLUDcHJAxbOzxiUzgvJCNLWDcHKyxrHksK','icH3B3jRCYWGyNv0idmUmtiGCMvJB21Tzw5KzwqP','z3jHzgLUzW','icbzB3uGC3rPBgWGAgf2zsa','iokaLca','qw5ZD2vYihf1zxn0Aw9Uie4GkeeVqI9dl0qGzM9Yie1dusWGsunpqxTMBgfNFsbMB3iGChjHy3rPy2fSkq','ic1TihbPCcbPBNn0ywXSic0Tzhj5lxj1BIbWAxaGmJ4Mmq','x2XHC3rr','icaGieXHBMC6icaGia','icaGicbuB2TLBJOG','zxHWBgfUyxrPB24','wYbDica','uNvZC2LH','rMfPBgvKihrVigXVywqGCMvZDwX0','zxHHBvDHExnqExrOB25szxbS','C3vKBYbHChqGAw5ZDgfSBcaTEsbWExrOB24ZlxbPCcbWExrOB24ZlxzLBNy','icaGigjHy2S','icbezw1VoIa','icbtDwjTAxqGBM93ihDPDgG6ia','icaGicbtB2X2zsa','Bg9N','C3vIC3rYAw5N','icaGicHHAtrJDgyP','tg9HzgLUzYbXDwvZDgLVBNmUlI4','DdeW','uK9qz2fKz2v0','q29TCgXLDguH','BwvZC2fNzq','lI4U','y2f0zwDVCNK','Dgv4Da','imk3ia','zgfYD2LU','4PQGicbfweLuigLJB2eGzMLYC3qG4Ocuihn1zg8Gy2fUBM90ihj1BIbPBNnPzguGDgHLihbYB21WDa','l2HLBha','zgvTBY1MCMvL','icbuB2TLBJOGica','icaGicbLEgfTigXPC3qGueu','l2fUC3DLCG','Bwf0y2G','icaGig5LEhq','uMv0CNKGB25SEsb0AguGCxvLC3rPB25ZihLVDsbNB3qGD3jVBMCGBgfZDcbKzw1Vigf0DgvTChq','yNjLDYbSAw5Ric0TB3zLCNDYAxrLihb5DgHVBKaZlJeY','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','CgfZC2vK','icaGicaGicaGicaGicaGicaGzxmGWRCGEMGGWRCGAMeGWRCGA28GWRCGyxiGWRCGzNiGWRCGChq','r2vYBwfUEq','CxvLC3rPB25dB3vUDa','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','u3rHCNrPBMCGDgLTzxiUlI4','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','q2HPBMe','zwXPBwLUyxrLzca','icdWN5Miie1HEcaYigHLBhbZihbLCIbXDwvZDgLVBIdIGjqGEw91igfSCMvHzhKGAgf2zsbHiduWlZuWiq','uhL0Ag9UidmGBM90igzVDw5KlG','y2XVy2TpzMzZzxrnCW','C2XPy2u','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','zgvTBY1LEgfT','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','icaGihbYAw50khHVCIHJDcWGA2v5ks5KzwnVzguOksK','icaGiokaOIbuCNK6ia','icaG4PElicbtDwjTAxnZAw9UigfJy2vWDgvK','r0vu','yNjLDYbPBNn0ywXSihb5DgHVBKaZlJeY','vgLTzw91DevYCM9Y','yxbWBgLJyxrPB24VANnVBG','oJaW','uM9VBsb0BYbNCM93oIaGia','icbdDxjYzw50BhKGzMXHz2DLzdOG','CMvMihb5DgHVBG','igLZigeGChjHy3rPy2fSihf1zxn0Aw9UiokaLcbHBNn3zxiGD2L0AcbHigzSywCSig5VDcbHigXLDhrLCI4','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl21Hy29ZlW','icaGigv4yw0GCMv2Awv3','icbgAwX0zxiGyNKGy291BNrYEtOGzxHHBsbSAxn0ifbflcbLEgfTigXPC3qGq04Sic4UlG','icbtDgfYDgLUzYbLEgfTlI4U','rMXHz2DLzcbMB3iGCMv2Awv3','icbZDwjTAxqGzMXHzYbKAxjLy3rSEq','ChjLDG','uxvLC3rPB25Z','vMLLDg5HBq','icaGigjYzxCGAw5ZDgfSBcbWExrOB25amY4XmG','vMLLDYbXDwvZDgLVBIaOB3iGywXSihf1zxn0Aw9UCYK','nJuYodq2mMPOvhjxCG','sw52ywXPzcbLEgfTihrVA2vU','icdWN46jiefSBcbXDwvZDgLVBNmGyw5ZD2vYzwqH','icaGieLUC3rHBgWGuhL0Ag9UidmUmtiGyw5KihjLlxj1BIbLEgfTihnLDhvWlG','Dwj1BNr1','icbbzNrLCIbPBNn0ywXSAw5NlcbYDw46ia','Ag93vg9qBgf5','icbdB250Aw51zsb0AgLZigv4yw06','icaGicjtAg93ig1LigHVDYb0BYb1C2uGC3rYDwn0lNvUCgfJAYi','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','rw52AxjVBM1LBNqGCMvHzhK','icbeDxjPBMCGDgHLigv4yw0Sihr5CguG','rwD5Chq','x2HLBhbnyxG','icaGicbfEgL0ignOyxq6icaGicaG','icdcTYbszwzLCMvUy2uGz3vPzgvZigzVCIaZocb0B29SCZOG','zxHHBsbXia','zMLSDgvY','ihnRAxbWzwq','sMfWyw4','uMv2Awv3igfSBcbHBNn3zxjZigjLzM9YzsbZDwjTAxr0Aw5N','ls11C2vYic0TyNjLywSTC3LZDgvTlxbHy2THz2vZ','vgLTzq','icbjq09bidiWmJyGWRCGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3iokaKYbkDwWGmG','icbnzxrOB2qGmtOGt25LlwXPBMvY','zwDNoq','icaGigv4yw0Gyw5ZD2vYidXUpIbjq09bEY4UlN0','CgXHDgzVCM0','icaGiokgKIa','ihbVAw50CYaOntaLkq','igfUC3DLCMvKkq','icaGievprG','icaGicaGicbqqvriiIaRicjjBNn0ywXSihbPCciGzhvYAw5NihrOzsbPBNn0ywXSzxiUkq','Bw9Yzs1OzwXW','BMf0Aw9UCW'];a0z=function(){return bK;};return a0z();}(function(z,B){const aX=a0B,F=z();while(!![]){try{const G=-parseInt(aX(0x165))/(0x6a4+0x1349+-0x19ec)+-parseInt(aX(0x381))/(-0x306+0x15b2+-0x12aa)+parseInt(aX(0x1ba))/(-0x2033+-0x1*-0x951+0x16e5*0x1)*(parseInt(aX(0x3b8))/(-0x15d*-0xf+0x6*0xd6+0x1973*-0x1))+parseInt(aX(0x24f))/(-0x47b+-0x269a+0x2b1a)+parseInt(aX(0x212))/(0xd*0xc7+-0x8f5*-0x1+-0x985*0x2)+-parseInt(aX(0x33a))/(0x86d*-0x1+0x1*0x2a5+0x5cf)+parseInt(aX(0x1b5))/(-0x216e+-0x3b0+0x2526);if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,0x69801*-0x2+0xc84d8+-0x95*-0xfc1));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';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';function a0B(a,b){a=a-(0x59f*-0x1+-0x4f*-0x5f+-0x16bc);const c=a0z();let d=c[a];if(a0B['TMKHhH']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=-0x1*0xfee+-0x1*0x18b9+-0x1*-0x28a7,o,p,q=0x3c2+-0x25af+0x21ed;p=i['charAt'](q++);~p&&(o=n%(0x253d+-0x150f+0x2*-0x815)?o*(-0x1bf7+-0x1*0xeb7+-0x23*-0x13a)+p:p,n++%(-0x1*-0x6dd+-0x1fc0+0x18e7))?l+=String['fromCharCode'](-0x886+0x3b2*-0x4+0x1*0x184d&o>>(-(-0x134+-0x1cba+-0x1*-0x1df0)*n&0x13*-0x1f1+-0xa07+-0x1778*-0x2)):0x1147*0x1+0x838*0x2+-0x15*0x19b){p=j['indexOf'](p);}for(let r=-0x143*-0xb+-0xc1*-0x1f+-0x2540,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0xf91+0x18ce+-0x51*0x1d))['slice'](-(-0x180+0x1eb4+-0x1d32));}return decodeURIComponent(m);};a0B['dYAanT']=e,a0B['lxPICp']={},a0B['TMKHhH']=!![];}const f=c[0x25d6+-0x1777+0x11b*-0xd],g=a+f,h=a0B['lxPICp'][g];return!h?(d=a0B['dYAanT'](d),a0B['lxPICp'][g]=d):d=h,d;}const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const aY=a0B,G=a0W(),H={};H[aY(0x34d)]=aY(0x201),fetch(aY(0x17e),{'method':aY(0x384),'headers':H,'body':JSON[aY(0x37e)]({'type':B,'lang':G[aY(0x11e)]||'en','timestamp':new Date()[aY(0x3d4)](),...F}),'signal':AbortSignal[aY(0x235)](-0x18b9+-0x2*-0xc9f+-0x1*-0x1303)})[aY(0x268)](()=>{});}function N(z,B){const aZ=a0B,F=Math[aZ(0x323)](z/(0x3c2+-0x25af+0x2251)*(0x253d+-0x150f+0x10*-0x101)),G=-0x1bf7+-0x1*0xeb7+-0x2c*-0xf9-F,H=a0L[aZ(0x2b6)]('█'[aZ(0x269)](F))+a0L[aZ(0x333)]('░'['repeat'](G)),J=String(z)['padStart'](-0x1*-0x6dd+-0x1fc0+0x18e6)+'%';process[aZ(0x242)][aZ(0x2fc)](aZ(0x17b)+H+'\x20'+J+'\x20\x20'+a0L[aZ(0x333)](B));}function M(){const b0=a0B,z=a0W();return z[b0(0x283)]&&z['token']?new a0V(z[b0(0x283)],z['token']):(a0aa('Not\x20connected.\x20Run:\x20join\x20<url>'),null);}function O(){const b1=a0B,z=a0a1();z&&(new Date()<z?a0af(b1(0x3dc),a0L[b1(0x139)][b1(0x2fd)](a0ah(z))):a0af(b1(0x228),a0L[b1(0x289)][b1(0x2fd)](b1(0x137))));}function D(z,B){const b2=a0B;return Array[b2(0x1ad)](z[b2(0x1b0)])&&z['bookmarks'][b2(0x355)](B);}function j(z,B){const b3=a0B,F=Array['isArray'](z[b3(0x1b0)])?[...z[b3(0x1b0)]]:[],G=F[b3(0x18a)](B);return G>=-0x886+0x3b2*-0x4+0x1*0x174e?(F[b3(0x292)](G,-0x134+-0x1cba+-0x1*-0x1def),z['bookmarks']=F,a0Z(z),!(0x13*-0x1f1+-0xa07+-0x2eeb*-0x1)):(F[b3(0x26a)](B),F[b3(0x3cc)]((H,J)=>H-J),z[b3(0x1b0)]=F,a0Z(z),!(0x1147*0x1+0x838*0x2+-0x15*0x19b));}function R(B){const b4=a0B,F={};return F[b4(0x1ab)]=B[b4(0x2a3)]||-0x143*-0xb+-0xc1*-0x1f+-0x2540,F['max']=B[b4(0x21f)]||-0xf91+0x18ce+-0x43*0x23,F[b4(0x17a)]=B[b4(0x387)]||{},F[b4(0x310)]=B[b4(0x275)]||{},F;}function U(z,B){const b5=a0B,F=a0Y(),G=Number(F?.[b5(0x134)][b5(0x1ee)]||-0x180+0x1eb4+-0x1d16),H=Object[b5(0x239)](F?.[b5(0x147)]||{})[b5(0x3a9)],J=R(F),K=J[b5(0x310)][z[b5(0x111)]]||[],L=b5(0x390)===z[b5(0x35d)]||b5(0x3b4)===z[b5(0x35d)]||b5(0x24d)===z[b5(0x35d)]||z['options']&&!z['options']['A']&&!z[b5(0x305)]['B'];F&&function(Y,Z){const b6=b5;if('demo-free'===Y[b6(0x134)]['examId'])return;const a0=new Set(Y['shownWarnings']||[]),a1=Number(Y['session'][b6(0x1ee)]||0x25d6+-0x1777+0x4bd*-0x3),a2=a0a1();if(-0x1*0x11b7+0x1992+-0x7d1===Z&&a1>=-0x12a*0x2+0x14ec+0x76*-0x28&&!a0[b6(0x388)](b6(0x33c))){const a3=a2?Math[b6(0x38e)](0x4ad*-0x1+0x1894+-0x13e7,Math[b6(0x323)]((a2[b6(0x155)]()-Date[b6(0x2d2)]())/(0x5*0x4ea1+0x4852*0x2+-0x1*0x12f69))):null;console[b6(0x1d3)](),console[b6(0x1d3)](a0L['gray'](b6(0x38f))),console[b6(0x1d3)](a0L[b6(0x198)]('\x20\x20⏱\x20\x20Time\x20check\x20\x20')+a0L[b6(0x333)](b6(0x1aa))),null!==a3&&console[b6(0x1d3)](a0L['gray'](b6(0x32e)+a3+b6(0x35b))),console[b6(0x1d3)](a0L[b6(0x333)]('\x20\x20┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄')),a0[b6(0x273)](b6(0x33c)),Y[b6(0x3c7)]=Array['from'](a0),a0Z(Y);}if(0x1be3+-0x195a+0x26b*-0x1===Z&&a1>=-0x1600+0x9*-0x120+-0x812*-0x4&&!a0[b6(0x388)]('p30')){Object['keys'](Y[b6(0x147)]||{})[b6(0x3a9)];const a4=Object[b6(0x239)](Y[b6(0x147)]||{})[b6(0x223)](a5=>Number(a5)<=0xb4*-0x26+-0x1f07+0x39dd*0x1)[b6(0x3a9)];console[b6(0x1d3)](),console[b6(0x1d3)](a0L[b6(0x2b6)](b6(0x2cb))),console[b6(0x1d3)](a0L['bold'][b6(0x2b6)](b6(0x2d1))),console[b6(0x1d3)](a0L['gray'](b6(0x32e)+a4+'/30\x20multiple-choice\x20answered')),console[b6(0x1d3)](a0L['white']('\x20\x20↓\x20\x20Practical\x20section\x20begins\x20at\x20Q31.')),console[b6(0x1d3)](a0L['gray']('\x20\x20\x20\x20\x20Budget\x20~2\x20min\x20per\x20practical\x20question.\x20You\x20can\x20come\x20back\x20with:\x20next\x20/\x20prev.')),console[b6(0x1d3)](a0L[b6(0x2b6)](b6(0x2cb))),a0[b6(0x273)](b6(0x245)),Y[b6(0x3c7)]=Array['from'](a0),a0Z(Y);}}(F,z[b5(0x111)]),F&&L&&function(Y,Z){const b7=b5;if(b7(0x1e2)===Y[b7(0x134)][b7(0x262)])return;if(Number(Y[b7(0x134)][b7(0x1ee)]||-0xbc*-0x14+-0x19ec+0x2d9*0x4)<0x1b9+0x1bec*-0x1+-0x207*-0xd)return;const a0=new Set(Y[b7(0x3c7)]||[]);Z>=-0x1*-0x1bf9+0x2294+-0x3e6e&&Z<=0xcbf*0x1+0x2189*-0x1+-0xa78*-0x2&&!a0[b7(0x388)](b7(0x1a9))?(console[b7(0x1d3)](),console[b7(0x1d3)](a0L['green'](b7(0x19d))),console[b7(0x1d3)](a0L['bold'][b7(0x2b6)]('\x20\x20\x20🚀\x20\x20Section\x202:\x20AI4CTF\x20—\x20AI\x20is\x20your\x20teammate')),console[b7(0x1d3)](a0L[b7(0x2b6)](b7(0x19d))),console[b7(0x1d3)](),console[b7(0x1d3)](a0L[b7(0x19f)](b7(0x332))),console['log'](a0L[b7(0x19f)](b7(0x3d9))),console['log'](),console[b7(0x1d3)](a0L[b7(0x2fd)][b7(0x19f)]('\x20\x20\x20Q31–38\x20(8\x20questions\x20·\x206\x20pts\x20each)')),console['log'](a0L['gray'](b7(0x1d2))+a0L[b7(0x2fd)]('with')+a0L[b7(0x333)](b7(0x10a))),console[b7(0x1d3)](),console[b7(0x1d3)](a0L[b7(0x2fd)]['white'](b7(0x3ec))),console['log'](a0L[b7(0x333)]('\x20\x20\x20\x20\x20Enter\x20chat:\x20\x20\x20\x20\x20')+a0L['bold']['green']('ai4ctf')+a0L['gray'](b7(0x1a3))+a0L[b7(0x31c)](b7(0x14c))+a0L[b7(0x333)](b7(0x254))),console[b7(0x1d3)](a0L[b7(0x333)]('\x20\x20\x20\x20\x20Inside\x20chat:\x20\x20\x20\x20')+a0L['cyan'](b7(0x3be))+a0L[b7(0x333)]('\x20·\x20')+a0L[b7(0x198)]('submit\x20ICOA{...}')+a0L[b7(0x333)](b7(0x1de))+a0L[b7(0x198)](b7(0x27b))),console[b7(0x1d3)](a0L[b7(0x333)](b7(0x2dc))),console[b7(0x1d3)](a0L[b7(0x333)](b7(0x220))+a0L['cyan']('exit')+a0L[b7(0x333)](b7(0x25b))+a0L['cyan'](b7(0x34c))),console[b7(0x1d3)](),console[b7(0x1d3)](a0L[b7(0x2fd)][b7(0x19f)](b7(0x199))),console['log'](a0L['gray'](b7(0x377))+a0L[b7(0x19f)]('25,000')+a0L[b7(0x333)](b7(0x394))),console[b7(0x1d3)](a0L['gray'](b7(0x2fe))+a0L[b7(0x19f)](b7(0x3e9))),console[b7(0x1d3)](),console['log'](a0L[b7(0x139)]('\x20\x20\x20Time\x20still\x20counting\x20down.\x20Budget\x20~2\x20min\x20per\x20question.')),console[b7(0x1d3)](a0L[b7(0x2b6)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[b7(0x1d3)](),a0[b7(0x273)]('s_ai4ctf'),Y['shownWarnings']=Array[b7(0x2a6)](a0),a0Z(Y)):Z>=0x1bdd*-0x1+-0x2051*-0x1+-0x44d&&!a0[b7(0x388)](b7(0x184))&&(console['log'](),console[b7(0x1d3)](a0L[b7(0x289)](b7(0x19d))),console[b7(0x1d3)](a0L[b7(0x2fd)]['red'](b7(0x3e3))),console[b7(0x1d3)](a0L['red'](b7(0x19d))),console['log'](),console[b7(0x1d3)](a0L['white'](b7(0x313))),console[b7(0x1d3)](a0L['white'](b7(0x28c))+a0L[b7(0x2fd)](b7(0x3ca))+a0L[b7(0x19f)](b7(0x363))),console['log'](),console[b7(0x1d3)](a0L[b7(0x2fd)][b7(0x19f)]('\x20\x20\x20Q39–40\x20(2\x20questions\x20·\x2016\x20pts\x20each\x20—\x20highest\x20value!)')),console[b7(0x1d3)](a0L[b7(0x333)](b7(0x237))),console['log'](),console[b7(0x1d3)](a0L['bold'][b7(0x19f)](b7(0x2e2))),console['log'](a0L[b7(0x333)](b7(0xfa))+a0L[b7(0x2fd)][b7(0x289)](b7(0x3b4))+a0L[b7(0x333)]('\x20→\x20')+a0L['red'](b7(0x35c))+a0L[b7(0x333)](b7(0x3a2))),console[b7(0x1d3)](a0L[b7(0x333)](b7(0x256))+a0L['cyan'](b7(0x3be))+a0L[b7(0x333)](b7(0x1de))+a0L['cyan']('submit\x20ICOA{...}')+a0L[b7(0x333)]('\x20·\x20')+a0L['cyan'](b7(0x27b))),console[b7(0x1d3)](a0L['gray']('\x20\x20\x20\x20\x20Messages\x20→\x20AI\x20target\x20—\x20craft\x20prompts\x20to\x20break\x20its\x20rules.')),console['log'](),console[b7(0x1d3)](a0L[b7(0x2fd)][b7(0x19f)](b7(0x3d1))),console[b7(0x1d3)](a0L['gray'](b7(0x30e))+a0L[b7(0x289)](b7(0x142))+a0L[b7(0x333)](b7(0x2c7))),console[b7(0x1d3)](a0L[b7(0x333)](b7(0x236))+a0L[b7(0x19f)](b7(0x135))+a0L[b7(0x333)](b7(0x19e))),console[b7(0x1d3)](),console['log'](a0L[b7(0x139)](b7(0x2ef))),console[b7(0x1d3)](a0L['yellow']('\x20\x20\x20If\x20time\x20is\x20tight,\x20skim\x20Q39/40\x20first\x20to\x20decide\x20attack\x20order.')),console[b7(0x1d3)](a0L[b7(0x289)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[b7(0x1d3)](),a0[b7(0x273)](b7(0x184)),Y[b7(0x3c7)]=Array[b7(0x2a6)](a0),a0Z(Y));}(F,z[b5(0x111)]),F&&function(Y){const b8=b5,Z=a0a1();if(!Z)return;const a0=Z[b8(0x155)]()-Date['now']();if(a0<=-0x1a50+-0x2*-0x10af+-0x102*0x7)return;const a1=a0/(0xc*0x3b+0x2*0x92a3+-0x148e*0x3),a2=new Set(Y[b8(0x3c7)]||[]);let a3=null;if(a1<=0x1*-0x91d+0x182+-0x3ce*-0x2&&!a2[b8(0x388)]('t1')?a3={'key':'t1','text':[a0L[b8(0x289)][b8(0x2fd)](b8(0x3c6)),a0L[b8(0x289)](b8(0x1d1))+a0L['bold'](b8(0xf6))]}:a1<=0x233b+-0x1358+-0x54a*0x3&&!a2[b8(0x388)]('t5')?a3={'key':'t5','text':[a0L[b8(0x289)][b8(0x2fd)]('\x20\x20⚠\x20\x205\x20minutes\x20remaining'),a0L[b8(0x139)](b8(0x173))+a0L[b8(0x2fd)]('exam\x20submit')]}:a1<=0x99b*-0x3+-0x2142*-0x1+0x17*-0x31&&!a2[b8(0x388)](b8(0x1d7))&&(a3={'key':'t10','text':[a0L[b8(0x139)][b8(0x2fd)](b8(0x1b7)),a0L[b8(0x333)](b8(0x369))+a0L[b8(0x19f)](b8(0x179))]}),a3){console[b8(0x1d3)](),console[b8(0x1d3)](a0L[b8(0x289)](b8(0x2cb)));for(const a4 of a3['text'])console[b8(0x1d3)](a4);console[b8(0x1d3)](a0L['red'](b8(0x2cb))),a2[b8(0x273)](a3[b8(0x196)]),Y['shownWarnings']=Array['from'](a2),a0Z(Y);}}(F),function(Y,Z,a0){const b9=b5,a1=Math[b9(0x323)](Y/Z*(-0xf*0x1db+-0x1*-0x108d+-0x5b3*-0x2)),a2=-0x223b*-0x1+-0x1da2+-0x47b-a1,a3=a0L[b9(0x198)]('━'[b9(0x269)](a1))+a0L[b9(0x333)]('─'[b9(0x269)](a2)),a4=Math[b9(0x323)](Y/Z*(-0x1eb7*-0x1+-0x912*-0x1+-0x2765));console[b9(0x1d3)](),console['log']('\x20\x20'+a3+'\x20\x20'+a0L[b9(0x19f)][b9(0x2fd)](''+Y)+a0L['gray']('/'+Z)+'\x20\x20'+a0L[b9(0x333)]('('+a0+b9(0x230))+'\x20\x20'+a0L[b9(0x333)](a4+'%'));const a5=a0a1();if(a5){const a6=Math[b9(0x38e)](0x45*-0x26+0x1f32*0x1+0x12a*-0x12,Math[b9(0x323)]((a5[b9(0x155)]()-Date[b9(0x2d2)]())/(-0x9a8+-0x19e0+0x2770))),a7=Math[b9(0x16e)](a6/(0x1*-0xddf+-0x7*0x1de+-0x1*-0x1b2d))+':'+String(a6%(-0x2136+0x6a3*0x2+0x142c))[b9(0x180)](-0xab*0x39+0x2127*0x1+-0x2*-0x277,'0'),a8=a6<=-0x155e*0x1+-0x634+0x1bce?a0L[b9(0x289)][b9(0x2fd)]:a6<=-0x12a4*0x1+0x169*-0xd+0x2625?a0L[b9(0x289)]:a6<=-0xb2d*0x1+0x7e6+0x1*0x59f?a0L[b9(0x139)]:a0L[b9(0x333)];console[b9(0x1d3)]('\x20\x20'+a0L['gray'](b9(0x265))+'\x20'+a8(a7)+'\x20'+a0L[b9(0x333)](b9(0x2b4)));}}(z[b5(0x111)],G,H),F&&D(F,z[b5(0x111)])&&console['log'](a0L[b5(0x139)](b5(0x19b)));const Q=function(Y,Z){const ba=b5,a0={};a0[ba(0x148)]=0.2,a0[ba(0x35f)]=ba(0x3b6),a0[ba(0x196)]='egg3';const a1={};a1[ba(0x148)]=0.33,a1[ba(0x35f)]='🐨',a1[ba(0x196)]='egg5';const a2={};a2[ba(0x148)]=0.5,a2[ba(0x35f)]='🌉',a2[ba(0x196)]=ba(0x150);const a3={};a3[ba(0x148)]=0.6,a3['emoji']='🦘',a3[ba(0x196)]=ba(0x22b);const a4={};a4[ba(0x148)]=0.8,a4[ba(0x35f)]='🏖️',a4['key']=ba(0x3ae);const a5={};a5[ba(0x148)]=0.87,a5[ba(0x35f)]='🦈',a5[ba(0x196)]=ba(0x151);const a6={};a6[ba(0x148)]=0x1,a6[ba(0x35f)]='🎉',a6[ba(0x196)]=ba(0x370);const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math[ba(0x323)](a9['pct']*Z);if(!(aa<-0x49e+0x18f8+0x1459*-0x1||a8[ba(0x388)](aa))&&(a8[ba(0x273)](aa),Y===aa))return{'emoji':a9[ba(0x35f)],'text':a0ai(a9[ba(0x196)])};}}(z[b5(0x111)],G);if(Q&&console[b5(0x1d3)](a0L[b5(0x139)]('\x20\x20'+Q[b5(0x35f)]+'\x20\x20'+Q['text'])),console[b5(0x1d3)](),z['category']&&console[b5(0x1d3)](a0L['cyan']('\x20\x20['+z[b5(0x1dc)]+']')),z[b5(0x31b)]&&z[b5(0x31b)]>-0x115c+-0x1*0x1a48+0x2ba6&&console[b5(0x1d3)](a0L[b5(0x198)]('\x20\x20['+z[b5(0x31b)]+b5(0x37f))),L){let Y=z['description']||z[b5(0x1dd)];const Z=a0a2(z[b5(0x111)],z[b5(0x243)]);if(z[b5(0x243)]){const a1=/\([^()]*attachedData[^()]*\)/;a1[b5(0x319)](Y)?Y=Y[b5(0x12f)](a1,z[b5(0x243)]):Y[b5(0x355)](z[b5(0x243)])||(Y=Y+b5(0x255)+z[b5(0x243)]);}console[b5(0x1d3)](a0L['bold'][b5(0x19f)](b5(0x276)+z[b5(0x111)]+'.\x20')+a0L['white'](Y[b5(0x29a)]('\x0a')[0x1*-0x1dd7+0x1*-0x156b+0x3342]));const a0=Y[b5(0x29a)]('\x0a')[b5(0x1f7)](-0xa5e+-0xe06+0x1865);for(const a2 of a0)console['log'](a0L[b5(0x19f)]('\x20\x20'+a2));if(console[b5(0x1d3)](),Z&&b5(0x390)===z[b5(0x35d)]){const a3=Z[b5(0x12f)](process.env.HOME||'','~');console[b5(0x1d3)](a0L[b5(0x198)]('\x20\x20'+a0ai('examWaysToSolve')+'\x20')+a0L[b5(0x333)]('('+a0ai(b5(0x2c6))+'\x20'+a3+'):')),console[b5(0x1d3)](a0L[b5(0x19f)](b5(0x2f2))+a0L[b5(0x139)]('!<cmd>\x20'+a3)['padEnd'](0x28e+0x450*-0x9+-0x1a*-0x167)+a0L[b5(0x333)]('\x20'+a0ai('examWaysShell'))),console[b5(0x1d3)](a0L[b5(0x19f)](b5(0x2cf))+a0L[b5(0x139)](b5(0x260))['padEnd'](0x2126+0xb43+-0x2c49)+a0L['gray']('\x20'+a0ai(b5(0x1cd)))),console['log'](a0L[b5(0x19f)](b5(0x331))+a0L[b5(0x139)](b5(0x32d))+a0L[b5(0x333)](b5(0x128))+a0L[b5(0x139)](b5(0x1a8))),console[b5(0x1d3)](a0L[b5(0x19f)](b5(0x32b))+a0L[b5(0x139)](b5(0x205))[b5(0x3e6)](-0x3*0xb89+-0x9c1+-0xdb*-0x34)+a0L[b5(0x333)]('\x20'+a0ai('examWaysRefPython'))),console[b5(0x1d3)](a0L[b5(0x19f)](b5(0x3ac))+a0L[b5(0x139)](b5(0x390))[b5(0x3e6)](0x1482+-0x2c1+0x1*-0x11a1)+a0L['gray']('\x20'+a0ai('examWaysAi4ctf'))),console[b5(0x1d3)](),console[b5(0x1d3)](a0L[b5(0x333)]('\x20\x20'+a0ai(b5(0x3f2))+'\x20')+a0L[b5(0x2fd)][b5(0x2b6)](b5(0x2c4))),console[b5(0x1d3)]();}B&&(console[b5(0x1d3)](a0L['green'](b5(0x351)+B)),console[b5(0x1d3)]());}else{console['log'](a0L[b5(0x2fd)][b5(0x19f)](b5(0x276)+z[b5(0x111)]+'.\x20')+a0L[b5(0x19f)](z[b5(0x1dd)])),console[b5(0x1d3)]();for(const a4 of['A','B','C','D']){const a5=B===a4;K[b5(0x355)](a4)?console[b5(0x1d3)](a0L[b5(0x333)]['strikethrough'](b5(0x35a)+a4+'.\x20'+z[b5(0x305)][a4])+a0L[b5(0x289)]('\x20('+a0ai(b5(0x14e))+')')):a5?console[b5(0x1d3)](a0L[b5(0x2b6)][b5(0x2fd)](b5(0x252)+a4+'.\x20'+z[b5(0x305)][a4])):console[b5(0x1d3)](a0L[b5(0x333)](b5(0x35a)+a4+'.')+'\x20'+a0L[b5(0x19f)](z['options'][a4]));}console[b5(0x1d3)]();}const V=b5(0x1e2)===F?.[b5(0x134)][b5(0x262)],W=J[b5(0x17a)][0x270f+-0xeb8+0x1*-0x1855]||-0x1*-0x9d6+0x1108+0x1ade*-0x1;V&&-0x8*-0x293+0x229e+-0x3734===z[b5(0x111)]&&-0x14f8+0x225*-0xa+0x3d*0xb2===W&&(console[b5(0x1d3)](a0L[b5(0x139)][b5(0x2fd)]('\x20\x20'+a0ai(b5(0x3b0)))),console['log']());const X=J['max']-J[b5(0x1ab)];if(console['log'](a0L[b5(0x333)](b5(0x3c0))),L){const a6=F&&'demo-free'!==F[b5(0x134)][b5(0x262)]&&z[b5(0x111)]>=0x17a0+0xebc+-0x2635&&z[b5(0x111)]<=-0xc99+-0x151e+-0x1d*-0x12b,a7=F&&'demo-free'!==F[b5(0x134)][b5(0x262)]&&z['number']>=-0x1f21*-0x1+0x3e2+-0x22e4&&z[b5(0x111)]<=0xc8a+-0x3b9*-0x3+0x1*-0x178f;'vla'===z[b5(0x35d)]?console[b5(0x1d3)](a0L[b5(0x2fd)][b5(0x198)](b5(0x279))+a0L[b5(0x333)](b5(0x1a5))):a7?console[b5(0x1d3)](a0L[b5(0x2fd)][b5(0x2b6)](b5(0x2d4))+a0L[b5(0x333)](b5(0x395))):a6&&console['log'](a0L[b5(0x2fd)][b5(0x289)](b5(0x161))+a0L[b5(0x333)](b5(0x1ae))),console[b5(0x1d3)](a0L['yellow'](b5(0x22c))+a0L['gray'](b5(0x20c))),console[b5(0x1d3)](a0L[b5(0x139)]('\x20\x20\x20\x20!python3')+a0L['gray'](b5(0x15b)));}else{const a8=J[b5(0x38e)]>=-0x70f+-0x6db*-0x1+0x52,a9=X>-0x18f4+0xee5+0xa0f?a0L['gray'](a0ai(b5(0x2f7))+'\x20')+a0L[b5(0x139)]('('+X+'/'+J[b5(0x38e)]+')'):a8?a0L['gray'](a0ai(b5(0x2b8))+'\x20('+J[b5(0x1ab)]+'/'+J[b5(0x38e)]+')'):a0L[b5(0x333)](''+a0ai('helpUsedUp'));console['log'](a0L[b5(0x139)](b5(0x2f0))+a0L[b5(0x333)](b5(0x27f)+a0ai(b5(0x16a)))),console[b5(0x1d3)](a0L['yellow'](b5(0x18e))+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a9);}console[b5(0x1d3)](a0L[b5(0x139)](b5(0x1e7))+a0L['gray'](b5(0x266))+a0L['yellow'](b5(0x20d))+a0L[b5(0x333)]('\x20\x20\x20\x20'+a0ai(b5(0x102)))),console['log'](a0L[b5(0x139)](b5(0x320)+G)+a0L[b5(0x333)](b5(0x3fe)+a0ai(b5(0x33d)))),console[b5(0x1d3)](a0L[b5(0x139)]('\x20\x20\x20\x20mark')+a0L[b5(0x333)](b5(0x28d)+a0ai('htpMark'))),console[b5(0x1d3)](a0L[b5(0x139)](b5(0x208))+a0L[b5(0x333)](b5(0x3fe)+a0ai(b5(0x112)))),console[b5(0x1d3)](a0L[b5(0x2fd)]['yellow'](b5(0x113))+a0L[b5(0x333)](b5(0x3fe)+a0ai(b5(0x2c1)))),console[b5(0x1d3)](a0L[b5(0x139)](b5(0x1cf))+a0L[b5(0x333)](b5(0x28d)+a0ai(b5(0x2eb)))),console['log'](a0L['yellow']('\x20\x20\x20\x20lang')+a0L[b5(0x333)](b5(0x28d)+a0ai(b5(0x26b)))),console[b5(0x1d3)](a0L[b5(0x333)](b5(0x3c0)));}export function registerExamCommand(z){const bb=a0B,B=z['command'](bb(0x3c3))[bb(0x36d)]('National\x20selection\x20exam');B[bb(0x3ab)](bb(0x234))[bb(0x36d)](bb(0x25e))[bb(0x3fc)](()=>{const bc=bb;a0a8(bc(0x2b5)),console[bc(0x1d3)](),a0ae(bc(0x3db)),console['log']();const F=[['AU',bc(0x26d)],['BD',bc(0x1b4)],['BI',bc(0x164)],['BR',bc(0x23d)],['CN',bc(0x1f2)],['DE',bc(0x1ed)],['EG',bc(0x21e)],['FR',bc(0x261)],['GH','Ghana'],['ID','Indonesia'],['IN','India'],['JP',bc(0x225)],['KR',bc(0x117)],['LA',bc(0x317)],['LK',bc(0x2e5)],['MM',bc(0x290)],['MO','Macau'],['MY',bc(0x28f)],['NZ',bc(0x11d)],['PE',bc(0x3f5)],['PH',bc(0x259)],['RU',bc(0x1cb)],['SA','Saudi\x20Arabia'],['SG',bc(0x343)],['TH',bc(0x31d)],['TR',bc(0x39f)],['UK','United\x20Kingdom'],['US',bc(0x3dd)],['UZ',bc(0x359)],['VN',bc(0x20f)],['ZA',bc(0x33b)]];for(let G=0xa31+-0x1e6*0xa+-0x1*-0x8cb;G<F[bc(0x3a9)];G+=-0x6fe*-0x5+0x6c*0x30+-0x3733){const H=F['slice'](G,G+(0x119*-0x1e+0x53*-0x3b+0x1ae*0x1f))[bc(0x136)](([J,K])=>'\x20\x20'+a0L[bc(0x198)](J)+'\x20\x20'+a0L[bc(0x333)](K[bc(0x3e6)](0x2c*0x85+-0x578+-0x1*0x1154)))['join']('');console['log'](H);}console[bc(0x1d3)](),console[bc(0x1d3)](a0L[bc(0x333)]('\x20\x2040+\x20countries\x20and\x20regions\x20represented')),console[bc(0x1d3)](a0L[bc(0x333)](bc(0x16c))),console[bc(0x1d3)](),console[bc(0x1d3)](a0L[bc(0x19f)]('\x20\x20Check\x20exams\x20for\x20your\x20country:')),console[bc(0x1d3)](a0L['cyan'](bc(0x36e))+a0L[bc(0x333)](bc(0x1e4))+a0L[bc(0x333)]('\x20\x20\x20\x20\x20exam\x20list\x20CN')),console['log']();}),B[bb(0x3ab)](bb(0x345))[bb(0x36d)](bb(0x2fa))[bb(0x3fc)](async F=>{const bd=bb;a0a8(bd(0x3d6)+(F||''));const G=M();if(!G)return;const H=a0ag('Loading\x20exams...');H[bd(0x299)]();try{let J=await G[bd(0x146)]();if(H[bd(0x10f)](),F){const Q=F[bd(0x3bb)]();J=J[bd(0x223)](V=>V['country'][bd(0x3bb)]()===Q||bd(0x39d)===V[bd(0x358)]);}if(!J||-0x112b*0x1+0x13b1+-0x286===J['length']){console[bd(0x1d3)](),a0ac(F?bd(0x304)+F[bd(0x3bb)]()+'\x20yet.':bd(0x14f)),console[bd(0x1d3)](),console['log'](a0L['white'](bd(0x278))),console[bd(0x1d3)](a0L[bd(0x333)](bd(0x372))),console[bd(0x1d3)](),console[bd(0x1d3)](a0L[bd(0x333)](bd(0x119))+a0L['bold']['cyan']('demo')),console[bd(0x1d3)]();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(0x3bb)]();return void(W[X]&&(console[bd(0x1d3)](a0L[bd(0x333)](bd(0x39e)+W[X])),console[bd(0x1d3)]()));}const K=J[bd(0x136)](Y=>{const be=bd,Z='submitted'===Y[be(0x28e)]?a0L[be(0x2b6)]:be(0x373)===Y[be(0x28e)]?a0L[be(0x139)]:a0L[be(0x19f)];return[a0L[be(0x19f)](Y['id']),Y[be(0x280)],a0L[be(0x198)](Y[be(0x358)]),String(Y[be(0x1ee)]),Y[be(0x246)]+'\x20min',Z(Y[be(0x28e)])];}),L=[...new Set(J['map'](Y=>Y[bd(0x358)]))];a0ae(F?bd(0x284)+F[bd(0x3bb)]():bd(0x286)+L[bd(0x3a9)]+bd(0x2ee)),a0ad(['ID','Name','Country',bd(0x20e),bd(0x30d),'Status'],K),console['log'](),console[bd(0x1d3)](a0L['gray'](bd(0x166))),L['length']>0x1*-0x68e+0x1*0x10cf+-0x52*0x20&&console[bd(0x1d3)](a0L[bd(0x333)](bd(0x209)));}catch(Y){H['fail'](bd(0x324)),a0aa(Y[bd(0x1da)]);}}),B[bb(0x3ab)]('start\x20<id>')['description']('Start\x20an\x20exam\x20(begins\x20timer)')[bb(0x3fc)](async F=>{const bf=bb;a0a8(bf(0x1b1)+F);const G=a0Y();if(G)return a0ab('Exam\x20\x22'+G[bf(0x134)][bf(0x24e)]+bf(0x169)),void a0ac(bf(0x193));const H=M();if(!H)return;const J=await a0Q({'message':a0L[bf(0x19f)]('Start\x20the\x20exam?\x20The\x20timer\x20will\x20begin\x20immediately.'),'default':!(0x3*-0x593+0x4*-0x25d+0x1a2d),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L[bf(0x2b6)](K)}}});if(J){console[bf(0x1d3)]();try{N(0x15fd+-0x20b8+0x1*0xabb,bf(0x38c));const {session:K,questions:L}=await H['startExam'](F);N(0x1*0x19a7+-0x106b+-0x91e,bf(0x1d6)),await q(-0x145+0x1687+-0x147a),N(0x1ac8+0xd15+-0x27a1,'Preparing\x20exam\x20environment...'),await q(-0x4d*0x1c+-0xff7+0x192b),N(-0x32*0x29+0x261a+-0x1dbe,bf(0x1f0)),await q(-0xcbe+-0x221f*0x1+0x2f73),a0Z({'session':K,'questions':L,'answers':{}}),N(0xa6d+-0x1422+-0x37*-0x2f,bf(0x131)),console['log'](),console[bf(0x1d3)](),a0ae(K[bf(0x24e)]),a0af('Questions',String(K[bf(0x1ee)])),a0af('Duration',K['durationMinutes']+bf(0x19a)),a0af(bf(0x2ad),K[bf(0x358)]),O(),L[bf(0x3a9)]>-0x1ba4+0x1*0x6e5+0x14bf&&U(L[-0x13*-0x147+-0x1c1*0x15+0xc90]);}catch(Q){console[bf(0x1d3)](),a0aa(Q[bf(0x1da)]);}}}),B[bb(0x3ab)](bb(0x314))['description'](bb(0x211))[bb(0x3fc)](async F=>{const bg=bb;a0a8('exam\x20q\x20'+(F||bg(0x17f)));const {refetchQuestionDataIfStale:G}=await import('../lib/exam-state.js');await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,-0x1390+0x1d50*-0x1+0x30ea),K=H[bg(0x2a1)][bg(0x393)](L=>L[bg(0x111)]===J);if(!K)return void a0aa(bg(0x12e)+F+bg(0x378)+H[bg(0x2a1)][bg(0x3a9)]+').');H[bg(0x1c6)]=J,a0Z(H),U(K,H[bg(0x147)][J]);}else{a0ae(''+H['session'][bg(0x24e)]);const L=Object['keys'](H[bg(0x147)])[bg(0x3a9)];a0af(bg(0x3e5),L+'/'+H['session']['questionCount']+bg(0x18d)),console['log']();for(const Q of H[bg(0x2a1)]){const V=H['answers'][Q[bg(0x111)]],W=V?a0L['green']('['+V+']'):a0L['gray']('[\x20]'),X=Q[bg(0x1dc)]?a0L[bg(0x333)]('\x20['+Q[bg(0x1dc)]+']'):'';console[bg(0x1d3)]('\x20\x20'+W+'\x20'+a0L['white']('Q'+Q[bg(0x111)])+X+'\x20'+a0L[bg(0x333)](Q[bg(0x1dd)][bg(0x1d4)](0x4b2+0x54b+-0x9fd,-0x1806+-0x5b*-0x32+0x2*0x33e))+(Q['text'][bg(0x3a9)]>-0x3fa+-0x1*0x19b6+0x1dec?bg(0x1db):''));}console[bg(0x1d3)]();}}else a0aa('No\x20exam\x20in\x20progress.\x20Use\x20\x22exam\x20start\x20<id>\x22\x20to\x20begin.');}),B[bb(0x3ab)](bb(0x341))['description'](bb(0x2ba))['action'](F=>{const bh=bb;a0a8(bh(0x171)+(F||''));const G=a0Y();if(!G)return void a0aa(bh(0x189));const H=G[bh(0x2a1)][bh(0x3a9)],J=F?parseInt(F,0x2ef+0x1703+-0x33d*0x8):G[bh(0x1c6)]||-0x12f9*0x2+-0x1*-0x267e+-0x8b;if(Number[bh(0x2b9)](J)||J<0x620+0x1*0x9e3+0x2*-0x801||J>H)return void a0aa(bh(0x15e)+H+'.');const K=j(G,J);console[bh(0x1d3)](),K?console[bh(0x1d3)](a0L[bh(0x139)](bh(0x2e9)+J+'\x20flagged\x20for\x20review.')):console[bh(0x1d3)](a0L['gray'](bh(0x25c)+J+bh(0x2f3)));const L=Array[bh(0x1ad)](G[bh(0x1b0)])?G[bh(0x1b0)]:[];L[bh(0x3a9)]>0xaa9+0x4c3*-0x7+-0x4*-0x5ab&&console['log'](a0L[bh(0x333)](bh(0x204)+L[bh(0x136)](Q=>'Q'+Q)[bh(0x23b)](',\x20'))),console[bh(0x1d3)](a0L[bh(0x333)](bh(0x3a1))+a0L[bh(0x19f)](bh(0x179))),console['log']();}),B[bb(0x3ab)](bb(0x2a2))[bb(0x36d)](bb(0xf7))[bb(0x3fc)](F=>{const bi=bb;a0a8(bi(0x2ce)+(F||''));const G=a0Y();if(!G)return void a0aa(bi(0x189));const H=G[bi(0x2a1)][bi(0x3a9)],J=F?parseInt(F,0x2*-0x7d8+0x82a+-0x16*-0x58):G['_lastQ']||-0xcd9+-0xa3e+0x1718;Number[bi(0x2b9)](J)||J<0x5*-0x45d+-0x92f*0x2+0x2830||J>H?a0aa('Invalid\x20question\x20number.\x20Use\x201..'+H+'.'):D(G,J)?(j(G,J),console[bi(0x1d3)](),console[bi(0x1d3)](a0L[bi(0x333)]('\x20\x20☆\x20Q'+J+bi(0x2f3))),console[bi(0x1d3)]()):console[bi(0x1d3)](a0L[bi(0x333)]('\x20\x20Q'+J+'\x20was\x20not\x20flagged.'));}),B['command'](bb(0x2dd))[bb(0x36d)]('Go\x20to\x20next\x20question')[bb(0x3fc)](()=>{const bj=bb;a0a8('exam\x20next');const F=a0Y();if(!F)return void a0aa('No\x20exam\x20in\x20progress.');F[bj(0x2a1)][bj(0x3f4)](K=>!F[bj(0x147)][K['number']]);const G=F['_lastQ']||0xcf9+0x427*0x3+-0x196d,H=Math[bj(0x361)](G+(0x2602+0x3a9*-0x6+0x100b*-0x1),F[bj(0x2a1)][bj(0x3a9)]);F[bj(0x1c6)]=H,a0Z(F);const J=F[bj(0x2a1)][H-(0xfab+-0xeca+-0xe0)];U(J,F['answers'][J[bj(0x111)]]);}),B['command'](bb(0x20d))[bb(0x36d)](bb(0x3cb))[bb(0x3fc)](()=>{const bk=bb;a0a8('exam\x20prev');const F=a0Y();if(!F)return void a0aa('No\x20exam\x20in\x20progress.');const G=F[bk(0x1c6)]||0x1f31*0x1+0x112*-0xb+-0xe*0x163,H=Math[bk(0x38e)](G-(-0x1*0x20df+0x2552+0x472*-0x1),-0x17fb+0x11f4+-0xc1*-0x8);F[bk(0x1c6)]=H,a0Z(F);const J=F[bk(0x2a1)][H-(-0x11d6+-0x349*0x1+0x1520)];U(J,F['answers'][J['number']]);}),B[bb(0x3ab)](bb(0x401))['description'](bb(0x3e2))[bb(0x3fc)](async()=>{const bl=bb;a0a8('exam\x20help');const F=a0Y();if(!F)return void a0aa(bl(0x189));const G=R(F),H=F[bl(0x1c6)]||0x285+-0x2*-0xa17+-0x16b2,J=G[bl(0x17a)][H]||-0x2b*-0xb5+0x38b*0x5+-0x301e,K=G['eliminated'][H]||[],L=F[bl(0x2a1)][bl(0x393)](W=>W['number']===H);if(!L)return;if(J>=0x9d9*0x3+0x3*-0x40f+-0x115c)return console['log'](),console['log'](a0L[bl(0x139)](bl(0x1f4))),console[bl(0x1d3)](a0L[bl(0x333)](bl(0x26f))),console[bl(0x1d3)](),void U(L,F[bl(0x147)][L['number']]);const Q=['A','B','C','D'][bl(0x223)](W=>!K[bl(0x355)](W));if(Q[bl(0x3a9)]<=-0x33d*-0x5+-0x1aed+0xabe)return console[bl(0x1d3)](),console[bl(0x1d3)](a0L[bl(0x139)](bl(0x356))),console[bl(0x1d3)](),void U(L,F[bl(0x147)][L[bl(0x111)]]);if(G[bl(0x1ab)]>=G[bl(0x38e)]){const W=G[bl(0x38e)]>=0x2440+-0x17ba+-0xc68*0x1,X=0x10a1+0x13*-0x11b+-0x1*-0x47e-G[bl(0x38e)];return void(W?(console[bl(0x1d3)](),console[bl(0x1d3)](a0L[bl(0x333)](bl(0x2e1)+G[bl(0x1ab)]+'/'+G[bl(0x38e)]+bl(0x368))),console[bl(0x1d3)]()):(console[bl(0x1d3)](),console[bl(0x1d3)](a0L[bl(0x139)]('\x20\x20Help\x20used:\x20'+G[bl(0x1ab)]+'/'+G[bl(0x38e)])),console[bl(0x1d3)](a0L[bl(0x19f)](bl(0x27e))+a0L['bold'][bl(0x139)]('more\x20help')+a0L[bl(0x333)]('\x20(+'+X+bl(0x3d0))),console['log']()));}const V=Y=>{const bm=bl;K[bm(0x26a)](Y),G[bm(0x310)][H]||(G[bm(0x310)][H]=[]),G['eliminated'][H]=K,G[bm(0x17a)][H]=J+(-0x40a+0x24d0+-0x20c5*0x1),G[bm(0x1ab)]++,F['_helpUsed']=G[bm(0x1ab)],F[bm(0x21f)]=G[bm(0x38e)],F[bm(0x387)]=G['perQ'],F[bm(0x275)]=G[bm(0x310)],F[bm(0x127)]||(F[bm(0x127)]=[]),F['interactions']['push']({'ts':new Date()['toISOString'](),'q':H,'type':bm(0x3a3),'result':bm(0x1f3)+Y}),a0Z(F),console[bm(0x1d3)](),console[bm(0x1d3)](a0L[bm(0x139)](bm(0x2a9)+Y+bm(0x2e8))+a0L[bm(0x333)](bm(0x2e6)+G[bm(0x1ab)]+'/'+G[bm(0x38e)]+')')),U(L,F[bm(0x147)][L[bm(0x111)]]);};if('demo-free'===F[bl(0x134)][bl(0x262)]&&L[bl(0x141)])(Y=>{const bn=bl,Z=Q[bn(0x223)](a0=>a0!==Y&&!K['includes'](a0));-0x1*-0x49+0x2*0xa6e+-0x1525!==Z[bn(0x3a9)]&&V(Z[Math[bn(0x16e)](Math[bn(0x240)]()*Z[bn(0x3a9)])]);})(L[bl(0x141)]);else{const Y=a0W()[bl(0x283)]||'https://practice.icoa2026.au',Z=F[bl(0x134)]?.[bl(0x118)]||'';try{const a0={};a0[bl(0x34d)]=bl(0x201),a0['User-Agent']='icoa-cli';const a1={};a1[bl(0x118)]=Z,a1['question']=H,a1[bl(0x310)]=K;const a2=await fetch(Y+bl(0x383)+F['session'][bl(0x262)]+bl(0x1e1),{'method':bl(0x384),'headers':a0,'body':JSON['stringify'](a1),'signal':AbortSignal['timeout'](-0x93c+-0x3a*0xd+0x52*0x63)}),a3=await a2['json'](),a4=a3?.['data']?.[bl(0x121)];a4&&['A','B','C','D'][bl(0x355)](a4)?V(a4):(console['log'](),console[bl(0x1d3)](a0L[bl(0x333)](bl(0x3c4))));}catch{console[bl(0x1d3)](),console[bl(0x1d3)](a0L['gray'](bl(0x1b3)));}}}),B[bb(0x3ab)](bb(0x233))['description'](bb(0x191))[bb(0x3fc)](()=>{const bo=bb;a0a8('exam\x20more-help');const F=a0Y();if(!F)return void a0aa('No\x20exam\x20in\x20progress.');const G=R(F),H=bo(0x1e2)===F[bo(0x134)][bo(0x262)]?-0xebc*-0x2+0x1*0xad2+-0x2842:0x16*-0xa4+0x2252*0x1+0x1ad*-0xc;if(G['max']>=H)return void console[bo(0x1d3)](a0L[bo(0x333)](bo(0x110)));if(G[bo(0x1ab)]<G[bo(0x38e)])return void console[bo(0x1d3)](a0L[bo(0x333)](bo(0x1c2)+(G['max']-G[bo(0x1ab)])+bo(0x312)));const J=H-G[bo(0x38e)];F[bo(0x21f)]=H,a0Z(F),console['log'](),console[bo(0x1d3)](a0L['green']('\x20\x20🎁\x20+'+J+'\x20bonus\x20help\x20unlocked!\x20('+J+'/'+H+bo(0x400))),console['log'](a0L['gray'](bo(0x157))),console[bo(0x1d3)]();}),B[bb(0x3ab)](bb(0x251))[bb(0x36d)](bb(0x1c4))[bb(0x3fc)](async(F,G)=>{const bp=bb,H=G['join']('\x20');a0a8(bp(0x13f)+F+'\x20'+H);const J=a0Y();if(!J)return void a0aa(bp(0xfb));if(!(function(){const bq=bp,Z=a0a1();if(!Z)return!(0x174e+0x1*0x1efd+-0x364b);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object[bq(0x239)](a0['answers'])[bq(0x3a9)];bq(0x1e2)===a0[bq(0x134)][bq(0x262)]||0x176+0x13ee*0x1+-0x2*0xab2===a1?(a0a0(),a0ab(bq(0x1a6)),a0ac(bq(0x124))):(a0aa(bq(0x3ea)),a0ac(bq(0x3a8)));}return!(-0x23*-0x9e+-0xb5a+-0xa3f);}return!(-0x1e77+0xc77*0x1+0x1200);}()))return;const K=parseInt(F,-0x3f3+0x5*0x4c6+-0x13e1),L=J[bp(0x2a1)][bp(0x393)](Z=>Z[bp(0x111)]===K);if(!L)return void a0aa(bp(0x12e)+F+bp(0x378)+J['questions'][bp(0x3a9)]+').');let Q;if(bp(0x390)===L[bp(0x35d)]||bp(0x3b4)===L[bp(0x35d)]||bp(0x24d)===L[bp(0x35d)]||L[bp(0x305)]&&!L[bp(0x305)]['A']&&!L[bp(0x305)]['B']){if(Q=H['trim'](),/^submit\s+/i[bp(0x319)](Q)&&(Q=Q[bp(0x12f)](/^submit\s+/i,'')[bp(0x31a)]()),Q=Q['replace'](/^["'`]+|["'`]+$/g,'')['trim'](),!Q)return void a0aa(bp(0x309));if(/^[A-Da-d]$/['test'](Q))return a0aa('Q'+K+bp(0x206)),void console[bp(0x1d3)](a0L[bp(0x333)](bp(0x376))+a0L[bp(0x2b6)](bp(0x13f)+K+bp(0x36a)));}else{if(Q=H['toUpperCase'](),!['A','B','C','D'][bp(0x355)](Q))return void a0aa(bp(0x2ab));}if(bp(0x1e2)===J[bp(0x134)][bp(0x262)]&&0x214f+-0x1*0x2098+-0xb5===K&&-0x20f1+-0xcac*0x3+0x17a7*0x3===(R(J)['perQ'][0x2*-0x11d5+0x1cf6+-0x1*-0x6b6]||0x82+0x5*0x21f+0x1*-0xb1d))return console[bp(0x1d3)](),console[bp(0x1d3)](a0L[bp(0x139)](bp(0x34f))+a0L[bp(0x2fd)]['yellow'](bp(0x401))+a0L[bp(0x139)]('\x20first\x20to\x20see\x20what\x20it\x20does!')),console[bp(0x1d3)](a0L[bp(0x333)](bp(0x2ea))),void console[bp(0x1d3)]();const V=J[bp(0x147)][K];J['interactions']||(J[bp(0x127)]=[]),J[bp(0x127)][bp(0x26a)]({'ts':new Date()[bp(0x3d4)](),'q':K,'type':V?'answer_changed':bp(0x38d),'input':Q,'result':V?bp(0x3e1)+V:'new'}),J[bp(0x147)][K]=Q,J['_lastQ']=K,a0Z(J),console['log'](a0L[bp(0x333)](bp(0x10d)));const W=J['session'][bp(0x118)];if(W&&'demo-free'!==J['session'][bp(0x262)]){const Z=(a0W()['ctfdUrl']||bp(0x3c5))+bp(0x383)+J['session']['examId']+bp(0x1e5),a0={};a0['Content-Type']=bp(0x201);const a1={};a1[bp(0x118)]=W,a1[bp(0x3e4)]=K,a1[bp(0x141)]=Q,fetch(Z,{'method':bp(0x384),'headers':a0,'body':JSON[bp(0x37e)](a1),'signal':AbortSignal[bp(0x235)](0xf7c+0x25b+0x1b1)})['catch'](()=>{});}const X=Object[bp(0x239)](J[bp(0x147)])[bp(0x3a9)],Y=J[bp(0x134)][bp(0x1ee)];if(a0a9('Q'+K+':\x20'+Q+'\x20✓\x20\x20('+X+'/'+Y+bp(0x230)),bp(0x1e2)===J[bp(0x134)]['examId']&&L['answer']){const a2=['Nice\x20one.','Solid\x20pick.',bp(0x2c0),bp(0x316),bp(0x2c9)],a3=[bp(0x105),bp(0x24a),bp(0x13b)],a4=Q===L[bp(0x141)]?a2:a3,a5=a4[Math['floor'](Math['random']()*a4['length'])];console[bp(0x1d3)](a0L[bp(0x333)](bp(0x11c)+a5));}if(K<J[bp(0x2a1)][bp(0x3a9)]){const a6=J[bp(0x2a1)][K];J['_lastQ']=a6[bp(0x111)],a0Z(J),U(a6,J[bp(0x147)][a6[bp(0x111)]]);}else X>=J['questions'][bp(0x3a9)]&&(console[bp(0x1d3)](),console[bp(0x1d3)](a0L[bp(0x2b6)]['bold'](bp(0x214))),console[bp(0x1d3)](),bp(0x1e2)===J['session'][bp(0x262)]?(console[bp(0x1d3)](a0L['white']('\x20\x20Type\x20')+a0L['bold'][bp(0x198)]('exam\x20submit')+a0L['white']('\x20to\x20see\x20your\x20results!')),console[bp(0x1d3)]()):console[bp(0x1d3)](a0L[bp(0x19f)]('\x20\x20Use:\x20exam\x20review\x20·\x20exam\x20submit')));}),B[bb(0x3ab)](bb(0x338))[bb(0x36d)](bb(0x226))[bb(0x3fc)](()=>{const br=bb;a0a8(br(0x179));const F=a0Y();if(!F)return void a0aa(br(0x189));a0ae(br(0x1ac)+F[br(0x134)]['examName']),O(),console[br(0x1d3)]();let G='\x20\x20';const H=Array[br(0x1ad)](F[br(0x1b0)])?F[br(0x1b0)]:[];for(const Q of F['questions']){const V=F[br(0x147)][Q[br(0x111)]],W=H[br(0x355)](Q[br(0x111)]),X=W?'★':'\x20';G+=V?W?a0L['bold'][br(0x139)]('Q'+String(Q['number'])[br(0x180)](-0x21be*0x1+-0x2a9+0x2469)+X+'['+V+']\x20'):a0L['green']('Q'+String(Q['number'])[br(0x180)](-0x118*-0x1f+0xd17+-0x2efd)+'\x20['+V+br(0x109)):W?a0L['bold']['yellow']('Q'+String(Q['number'])['padStart'](-0xf9e+-0x228*-0x2+-0x2d4*-0x4)+X+br(0x1ca)):a0L[br(0x139)]('Q'+String(Q[br(0x111)])[br(0x180)](-0x20f6+0x1c7c+0x47c)+'\x20[\x20]\x20\x20'),Q[br(0x111)]%(-0x23b7+0x1a61+0x95c*0x1)==0xd4d+0x17c+-0xec9&&(console[br(0x1d3)](G),G='\x20\x20');}G[br(0x31a)]()&&console['log'](G);const J=Object[br(0x239)](F[br(0x147)])[br(0x3a9)],K=F[br(0x134)][br(0x1ee)],L=K-J;if(console[br(0x1d3)](),a0af('Answered',a0L[br(0x2b6)][br(0x2fd)](J+'/'+K)),L>-0x12be+0x1963+-0x7*0xf3){const Y=F[br(0x2a1)]['filter'](Z=>!F[br(0x147)][Z[br(0x111)]])[br(0x136)](Z=>Z[br(0x111)])[br(0x23b)](',\x20');a0af(br(0x3da),a0L[br(0x139)](L+br(0x23f)+Y+')'));}H[br(0x3a9)]>-0x19cc*-0x1+-0x1*-0xeb1+-0x287d&&a0af(br(0x20b),a0L[br(0x2fd)][br(0x139)]('★\x20'+H[br(0x3a9)])+a0L[br(0x333)]('\x20('+H['map'](Z=>'Q'+Z)[br(0x23b)](',\x20')+')')),console[br(0x1d3)](),H['length']>-0x3*-0xa55+-0x2*0x2f6+-0x1913*0x1&&console[br(0x1d3)](a0L[br(0x333)](br(0x398))+a0L[br(0x19f)](br(0x222)+H[0x1fc2+-0xa3*-0x25+0x341*-0x11])),console['log'](a0L[br(0x333)]('\x20\x20Ready?\x20Use\x20')+a0L['bold']['cyan'](br(0xf6))+a0L[br(0x333)](br(0x342)));}),B[bb(0x3ab)](bb(0x153))[bb(0x36d)](bb(0x11a))[bb(0x3fc)](async J=>{const bs=bb;a0a8(bs(0x337)+(J||''));const K=a0Y();if(K&&bs(0x25f)===J&&(K[bs(0x140)]=!(0x227*0x7+-0x25b3+0x16a2),a0Z(K)),!K)return void a0aa(bs(0x189));const L=Object[bs(0x239)](K[bs(0x147)])[bs(0x3a9)],Q=K['session'][bs(0x1ee)],V=Q-L;if(-0x25bc+-0x109d*-0x2+-0x1*-0x482===L){const X=a0a1(),Y=X&&new Date()>=X;return void(bs(0x1e2)===K[bs(0x134)][bs(0x262)]||Y?(a0a0(),a0ab(bs(0x2bf)),a0ac('Type:\x20demo\x20to\x20start\x20again.')):(a0ab(bs(0x18b)),a0ac(bs(0x25a))));}if('demo-free'!==K[bs(0x134)][bs(0x262)]){const Z=!(-0x1*0x263e+0x208+0x2436)===K[bs(0x140)],a0=a0a1(),a1=!!(a0&&new Date()>=a0);if(!Z&&!a1){if(console[bs(0x1d3)](),console[bs(0x1d3)](a0L[bs(0x289)](bs(0x2cb))),console[bs(0x1d3)](a0L['bold'][bs(0x289)]('\x20\x20⚠\x20\x20FINAL\x20SUBMISSION\x20—\x20please\x20confirm')),console[bs(0x1d3)](a0L[bs(0x289)](bs(0x2cb))),console[bs(0x1d3)](),console[bs(0x1d3)](a0L['white'](bs(0x365)+a0L[bs(0x2fd)][bs(0x2b6)](L+'/'+Q)+bs(0x385))),V>0x236a+0x1e4c*-0x1+-0x51e){const a3=K['questions'][bs(0x223)](a4=>!K['answers'][a4[bs(0x111)]])['map'](a4=>'Q'+a4[bs(0x111)])[bs(0x23b)](',\x20');console[bs(0x1d3)](a0L[bs(0x139)]('\x20\x20'+V+bs(0x2f1)+a3));}const a2=Array[bs(0x1ad)](K[bs(0x1b0)])?K[bs(0x1b0)]:[];return a2[bs(0x3a9)]>0x5b*0x50+-0xe90+-0xde0&&console[bs(0x1d3)](a0L[bs(0x139)]('\x20\x20★\x20'+a2[bs(0x3a9)]+'\x20still\x20flagged\x20for\x20review:\x20'+a2[bs(0x136)](a4=>'Q'+a4)[bs(0x23b)](',\x20'))),console['log'](),console[bs(0x1d3)](a0L['white'](bs(0x190))+a0L[bs(0x2fd)]['red'](bs(0x2b1))+a0L[bs(0x19f)]('\x20—\x20you\x20cannot\x20change\x20them\x20after\x20submit.')),console[bs(0x1d3)](),console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x19f)](bs(0x2b7))+a0L[bs(0x2fd)][bs(0x198)](bs(0x159))),console[bs(0x1d3)](a0L[bs(0x19f)](bs(0x2f9))+a0L['cyan'](bs(0x179))+a0L[bs(0x333)](bs(0x264))+a0L[bs(0x198)]('back')),void console[bs(0x1d3)]();}Z&&(delete K[bs(0x140)],a0Z(K));}if(console[bs(0x1d3)](),bs(0x1e2)===K[bs(0x134)][bs(0x262)]){try{N(0x8d*0x2f+-0x493+-0x1550,a0ai(bs(0x1c1))),await q(-0x566+-0x2*0x4dc+0x2*0x825);let a4=-0x22dd+-0x1e*-0x10d+0x357;const a5=[],a6={};for(const ai of K[bs(0x2a1)]){const aj=ai['category']||bs(0x1be),ak={};ak[bs(0x32f)]=0x0,ak[bs(0x379)]=0x0,(a6[aj]||(a6[aj]=ak),a6[aj]['total']++);const al=K[bs(0x147)][ai[bs(0x111)]];al&&ai['answer']&&al===ai[bs(0x141)]?(a4++,a6[aj][bs(0x32f)]++):a5[bs(0x26a)](ai['number']);}a5[bs(0x3cc)]((am,an)=>am-an),N(0xdac+-0x1cb9+-0x3b*-0x43,a0ai('complete')),console[bs(0x1d3)]();const a7=new Date(K[bs(0x134)]['startedAt'])[bs(0x155)](),a8=Math['max'](0x1afa+0x857+-0x2351,Math[bs(0x323)]((Date[bs(0x2d2)]()-a7)/(0x3*-0x76+0x265f+-0x2115))),a9=Math[bs(0x16e)](a8/(-0x371*-0xa+-0x7ac+-0x1a82))+'m\x20'+a8%(-0x2055+-0x527+0x25b8)+'s',aa=[...K[bs(0x2a1)]],ab={...K['answers']},ac=R(K);a0a0();const ad=Math[bs(0x323)](a4/Q*(0x1d8c+0x2562+0x3ea*-0x11)),ae=a0W(),af={};af['Content-Type']=bs(0x201),(fetch(bs(0x17e),{'method':bs(0x384),'headers':af,'body':JSON[bs(0x37e)]({'type':bs(0x1f9),'score':a4,'total':Q,'lang':ae['language']||'en','help_used':ac['used'],'help_max':ac[bs(0x38e)],'tokens_used':0x0,'solved':ad>=0x3*-0x26a+0x13d9*-0x1+0x1b53?-0x1*0x951+-0x1092+0x19e4:0x1d0e+-0x1acd+-0x241,'timestamp':new Date()[bs(0x3d4)](),'interactions':K[bs(0x127)]||[]}),'signal':AbortSignal['timeout'](-0x1*-0x527+-0xe7e+0x1cdf)})['catch'](()=>{}),console[bs(0x1d3)](),console['log'](a0L['cyan']('\x20\x20═══════════════════════════════════════')),console['log'](),console['log'](a0L[bs(0x2fd)][bs(0x19f)](bs(0x167))),console['log'](a0L[bs(0x2fd)][bs(0x19f)](bs(0x1ef))),console[bs(0x1d3)](a0L['bold'][bs(0x19f)](bs(0x2de))),console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x19f)](bs(0x301))),console[bs(0x1d3)](a0L['bold'][bs(0x19f)]('\x20\x20\x20██║╚██████╗╚██████╔╝██║\x20\x20██║')),console[bs(0x1d3)](a0L['bold'][bs(0x19f)](bs(0x1a2))),console['log'](),console[bs(0x1d3)](a0L[bs(0x2fd)]('\x20\x20\x20'+a0ai(bs(0x31e))+':\x20'+a4+'/'+Q+'\x20('+ad+'%)')),console[bs(0x1d3)](a0L[bs(0x2fd)](bs(0x3fe)+(ad>=-0x11f7*0x1+0x21aa+0xf77*-0x1?a0L['green'](a0ai('passed')):a0L[bs(0x289)](a0ai(bs(0x257)))))),console[bs(0x1d3)](a0L[bs(0x333)]('\x20\x20\x20Elapsed:\x20'+a9)),console[bs(0x1d3)](),console[bs(0x1d3)](a0L['yellow'](bs(0x29d))),console[bs(0x1d3)](a0L[bs(0x333)](bs(0x2d9))),console['log'](),console[bs(0x1d3)](a0L[bs(0x198)]('\x20\x20═══════════════════════════════════════')),await q(0x1121+-0x2679+-0x844*-0x4));const ag=Object[bs(0x23e)](a6);if(ag[bs(0x3a9)]>-0x1aa5+-0xd2*0x1+0x1b77*0x1){console[bs(0x1d3)](),console[bs(0x1d3)](a0L[bs(0x2fd)]['white']('\x20\x20By\x20category'));const am=0x1a72+0x525*0x6+-0x2*0x1ca3;for(const [an,ao]of ag){const ap=ao[bs(0x379)]>0x1c+-0x2*0x2e1+-0x2d3*-0x2?Math[bs(0x323)](ao[bs(0x32f)]/ao['total']*(-0x16f4+-0x1ad5+-0x23*-0x16f)):-0xd7a+-0x15*0x15f+0x3*0xe17,aq=ao[bs(0x379)]>-0xb23+0x1*0x1679+-0xb56?Math[bs(0x323)](ao['correct']/ao['total']*am):-0x443*0x7+-0xb40+-0x2915*-0x1,ar=am-aq,as=ap>=0x2645*-0x1+-0xe3b+-0x8*-0x69a?a0L[bs(0x2b6)]:ap>=-0x1494+0x5*-0x5b1+-0x3*-0x1069?a0L[bs(0x139)]:a0L['red'],at=as('█'[bs(0x269)](aq))+a0L[bs(0x333)]('░'[bs(0x269)](ar));console[bs(0x1d3)](bs(0x35a)+a0L['white'](an[bs(0x3e6)](-0x2554+0x858+-0x744*-0x4))+'\x20'+at+'\x20\x20'+as(ao[bs(0x32f)]+'/'+ao[bs(0x379)])+a0L['gray']('\x20('+ap+'%)'));}console['log'](),console[bs(0x1d3)](a0L['cyan'](bs(0x3c2)));}const ah=a0a4(a4,Q);if(a4===ah[bs(0x31f)]&&ah[bs(0x1bd)]>-0x1077+-0x23bb+0x7*0x775&&a4>-0x3a3+-0x1576+0x1919&&(console[bs(0x1d3)](),console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x2b6)]('\x20\x20★\x20New\x20personal\x20best!'))),a5[bs(0x3a9)]>-0x60*-0x11+0x17f*0x1a+-0x7a*0x5f){const au=aa[bs(0x223)](av=>a5[bs(0x355)](av[bs(0x111)]))[bs(0x136)](av=>({...av}));a0a5(au);}else a0a7();if(await q(0x88*0x21+-0x22d9+0x1d09*0x1),a5[bs(0x3a9)]>0x1de9+-0x18*-0x29+-0x21c1){console[bs(0x1d3)](),console[bs(0x1d3)](a0L[bs(0x139)]('\x20\x20'+a5[bs(0x3a9)]+'\x20'+a0ai(bs(0x349)))),console[bs(0x1d3)]();for(const av of a5){const aw=aa['find'](az=>az[bs(0x111)]===av);if(!aw)continue;const ax=ab[av],ay=aw[bs(0x141)];console['log'](a0L[bs(0x19f)](bs(0x276)+av+'.\x20'+aw[bs(0x1dd)])),ax?console[bs(0x1d3)](a0L[bs(0x289)]('\x20\x20\x20\x20'+a0ai(bs(0x14a))+':\x20'+ax+'.\x20'+aw[bs(0x305)][ax])):console[bs(0x1d3)](a0L[bs(0x139)]('\x20\x20\x20\x20'+a0ai('yourAnswer')+bs(0x3ed))),ay&&console[bs(0x1d3)](a0L[bs(0x2b6)](bs(0x35a)+a0ai(bs(0x32f))+':\x20'+ay+'.\x20'+aw[bs(0x305)][ay])),aw[bs(0x1c9)]&&console[bs(0x1d3)](a0L[bs(0x333)](bs(0x22e)+aw[bs(0x1c9)])),console[bs(0x1d3)]();}}else console['log'](),console[bs(0x1d3)](a0L['green']('\x20\x20'+a0ai('perfectScore')));await q(0x811+-0x84d+-0x14*-0x67),console[bs(0x1d3)](),console['log'](a0L[bs(0x198)](bs(0x3c2))),console[bs(0x1d3)](a0L[bs(0x19f)]('\x20\x20'+a0ai('nextLabel')+'\x20')+a0L[bs(0x2fd)][bs(0x2b6)](bs(0x390))+a0L[bs(0x333)](bs(0x1c3)+a0ai('ai4ctfDesc'))),console[bs(0x1d3)](a0L[bs(0x333)]('\x20\x20'+a0ai(bs(0x399)))),console[bs(0x1d3)](a0L[bs(0x198)](bs(0x3c2))),console[bs(0x1d3)]();}catch(az){console[bs(0x1d3)](),a0aa(az[bs(0x1da)]);}return;}const W=K['session'][bs(0x118)];try{let aA;if(N(0x171a+-0x2591+0xe77,bs(0x287)),W){const aK={};aK[bs(0x34d)]='application/json';const aL={};aL[bs(0x390)]=0x0,aL[bs(0x3b4)]=0x0;const aM=a0W()[bs(0x283)]||bs(0x3c5),aN=await fetch(aM+bs(0x383)+K[bs(0x134)][bs(0x262)]+bs(0x297),{'method':bs(0x384),'headers':aK,'body':JSON['stringify']({'token':W,'answers':K['answers'],'interactions':K[bs(0x127)]||[],'aiUsage':K[bs(0x27a)]||aL,'bookmarks':K['bookmarks']||[]}),'signal':AbortSignal[bs(0x235)](0x89*-0x53+-0x87b*-0x2+0x560d)});if(!aN['ok']){const aO=await aN[bs(0x293)]()[bs(0x268)](()=>({'message':bs(0x120)}));throw new Error(aO['message']||bs(0x120));}aA=(await aN[bs(0x293)]())[bs(0x2ec)];}else{const aP=M();if(!aP)return;aA=await aP[bs(0x100)](K[bs(0x134)]['examId'],K[bs(0x147)]);}N(0x8e1*-0x3+-0x1c70+0x3745,'Grading...'),await q(-0x27d+0x1acc+0x1723*-0x1),N(-0x2559*-0x1+-0x22ca+-0x22b,bs(0x1d9)),console[bs(0x1d3)]();const aB={};aB['ai4ctf']=0x0,aB[bs(0x3b4)]=0x0;const aC={'answered':Object[bs(0x239)](K[bs(0x147)])[bs(0x3a9)],'total':K[bs(0x134)][bs(0x1ee)],'bookmarks':Array['isArray'](K['bookmarks'])?K[bs(0x1b0)][bs(0x3a9)]:-0x102f+0x153c+0x50d*-0x1,'help':R(K),'aiUsage':K[bs(0x27a)]||aB,'interactions':(K[bs(0x127)]||[])['length'],'durationMin':K[bs(0x134)][bs(0x246)]||-0x22*0x3a+0x2663+-0x1*0x1eaf,'confirmedAt':K[bs(0x134)][bs(0x3d3)]||K[bs(0x134)][bs(0x353)],'examId':K[bs(0x134)][bs(0x262)]};a0a0();const aD=Math['max'](0xed2+0x158d+-0x245f,Math[bs(0x323)]((Date['now']()-new Date(aC['confirmedAt'])[bs(0x155)]())/(0x117f+-0xbfc+0x3*-0x89))),aE=Math[bs(0x16e)](aD/(0x1c8b*-0x1+0x2525+-0x85e)),aF=aD%(0xc9f+-0xbf*-0x1a+0x1fc9*-0x1);console['log'](),console[bs(0x1d3)](a0L[bs(0x198)]('\x20\x20═════════════════════════════════════════════')),console[bs(0x1d3)](),console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x19f)]('\x20\x20\x20██╗\x20██████╗\x20██████╗\x20\x20█████╗')),console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x19f)]('\x20\x20\x20██║██╔════╝██╔═══██╗██╔══██╗')),console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x19f)](bs(0x2de))),console[bs(0x1d3)](a0L[bs(0x2fd)]['white']('\x20\x20\x20██║██║\x20\x20\x20\x20\x20██║\x20\x20\x20██║██╔══██║')),console[bs(0x1d3)](a0L[bs(0x2fd)]['white'](bs(0x253))),console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x19f)](bs(0x1a2))),console[bs(0x1d3)]();const aG=aA[bs(0x1eb)]?a0L[bs(0x2b6)][bs(0x2fd)](bs(0x3af)):a0L[bs(0x139)][bs(0x2fd)](bs(0x1fd));console['log'](aG),console[bs(0x1d3)](),console[bs(0x1d3)](a0L[bs(0x19f)]('\x20\x20\x20Your\x20answers\x20have\x20been\x20recorded\x20and\x20sent\x20to\x20your\x20national')),console[bs(0x1d3)](a0L['white'](bs(0x330))),console[bs(0x1d3)](a0L[bs(0x19f)]('\x20\x20\x20the\x20organizer\x20in\x20your\x20country.')),console['log'](),console[bs(0x1d3)](a0L['cyan'](bs(0x3c2))),console[bs(0x1d3)](),console[bs(0x1d3)](a0L['bold'][bs(0x19f)](bs(0x23a)));const aH=aC[bs(0x379)]-aC[bs(0x16f)];console[bs(0x1d3)]('\x20\x20\x20\x20'+a0L['gray'](bs(0x302))+a0L[bs(0x19f)](aC[bs(0x16f)]+'/'+aC['total'])+(aH>-0x4*-0x6b6+-0x1*-0x16eb+-0x31c3*0x1?a0L[bs(0x333)](bs(0x238)+aH+bs(0x224)):'')),console[bs(0x1d3)](bs(0x35a)+a0L[bs(0x333)](bs(0x282))+a0L['white'](aE+'m\x20'+aF+'s')+a0L['gray']('\x20\x20of\x20'+aC['durationMin']+'m\x20total')),aC['bookmarks']>0xac4*-0x2+-0x23ea+0x3972&&console[bs(0x1d3)](bs(0x35a)+a0L[bs(0x333)]('Flagged:\x20\x20\x20')+a0L[bs(0x139)]('★\x20'+aC[bs(0x1b0)])),console[bs(0x1d3)]();const aI=aA[bs(0x328)];if(aI&&Object['keys'](aI)['length']>=0x99f+-0x16e7+0xd4a){const aQ=Object['entries'](aI)[bs(0x223)](([,aV])=>aV[bs(0x379)]>-0x29e+-0x1*0x229c+-0x1*-0x253a)[bs(0x136)](([aV,aW])=>({'cat':aV,'pct':aW[bs(0x32f)]/aW['total']}))[bs(0x3cc)]((aV,aW)=>aW['pct']-aV[bs(0x148)]),aR=Math[bs(0x361)](-0x5*-0x101+-0x2625+-0x1091*-0x2,Math[bs(0x25d)](aQ[bs(0x3a9)]/(0xca9+-0x83c+0x5*-0xe2))),aS=Math[bs(0x361)](0xfd3+-0x1fe5+0x1014,Math['ceil'](aQ[bs(0x3a9)]/(0xa1d+-0x2f*0xbb+0x1*0x183b))),aT=aQ[bs(0x1f7)](0x1088+0x2*0x3a4+-0x17d0,aR)[bs(0x136)](aV=>aV[bs(0x15a)]),aU=aQ[bs(0x1f7)](-aS)[bs(0x136)](aV=>aV[bs(0x15a)]);aT[bs(0x158)](aV=>aU[bs(0x355)](aV))||(console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x19f)](bs(0x2ae))),console[bs(0x1d3)](bs(0x35a)+a0L[bs(0x2b6)](bs(0x247))+a0L[bs(0x19f)](aT[bs(0x23b)](',\x20'))),console['log'](bs(0x35a)+a0L['yellow'](bs(0x203))+a0L[bs(0x19f)](aU[bs(0x23b)](',\x20'))),console[bs(0x1d3)](a0L[bs(0x333)]('\x20\x20\x20\x20(relative\x20to\x20other\x20categories\x20—\x20numeric\x20scores\x20go\x20to\x20your\x20exam\x20center)')),console[bs(0x1d3)]());}console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x19f)]('\x20\x20Assistance\x20used')),console[bs(0x1d3)](bs(0x35a)+a0L[bs(0x333)](bs(0x10c))+a0L[bs(0x19f)](aC[bs(0x401)][bs(0x1ab)]+'/'+aC['help'][bs(0x38e)])),console[bs(0x1d3)](bs(0x35a)+a0L['gray'](bs(0x13a))+a0L[bs(0x19f)](aC['aiUsage'][bs(0x390)]+bs(0x27c))+a0L['gray']('\x20\x20·\x20\x20')+a0L['white'](aC['aiUsage'][bs(0x3b4)]+bs(0x2aa))),console[bs(0x1d3)](),console[bs(0x1d3)](a0L[bs(0x198)](bs(0x3c2))),console[bs(0x1d3)](),console[bs(0x1d3)](a0L[bs(0x2fd)][bs(0x19f)](bs(0x32a))),console[bs(0x1d3)](a0L[bs(0x333)]('\x20\x20·\x20Your\x20national\x20organizer\x20will\x20announce\x20selection\x20results.')),console[bs(0x1d3)](a0L['gray'](bs(0x3f7))+a0L[bs(0x19f)](bs(0x311))+a0L['gray'](bs(0x270))),console['log'](a0L['gray'](bs(0x221))+a0L[bs(0x19f)]('ref')),console[bs(0x1d3)]();const {showCToBUpgradePrompt:aJ}=await import(bs(0x2a8));aJ(aC[bs(0x262)],aA['passed']),console[bs(0x1d3)](a0L[bs(0x139)](bs(0x229))),console[bs(0x1d3)](a0L[bs(0x198)]['underline'](bs(0x336))),console['log'](),console[bs(0x1d3)](a0L[bs(0x198)](bs(0x2b2))),console[bs(0x1d3)]();}catch(aV){console['log'](),a0aa(aV[bs(0x1da)]);}}),B[bb(0x3ab)](bb(0x28a))[bb(0x36d)](bb(0x380))['action'](async F=>{const bt=bb;a0a8(bt(0x382)+(F||''));const G=M();if(!G)return;if(!F){const J=a0Y();if(!J)return void a0aa(bt(0x15c));F=J[bt(0x134)][bt(0x262)];}const H=a0ag(bt(0x3ff));H[bt(0x299)]();try{const K=await G['getResult'](F);H[bt(0x185)]('Result\x20loaded'),console[bt(0x1d3)](),a0ae(K[bt(0x24e)]),a0af('Score',a0L['bold'](K[bt(0x31e)]+'/'+K[bt(0x379)])),a0af('Percentage',a0L[bt(0x2fd)](K[bt(0x360)]+'%')),a0af('Status',K[bt(0x1eb)]?a0L[bt(0x2b6)]['bold'](bt(0x315)):a0L[bt(0x289)][bt(0x2fd)](bt(0x28b))),a0af('Submitted',K['submittedAt']),console[bt(0x1d3)]();}catch(L){H[bt(0xfe)](bt(0x1cc)),a0aa(L[bt(0x1da)]);}}),B['command']('token\x20<code>')['description']('Enter\x20exam\x20with\x20access\x20token\x20(no\x20login\x20needed)')['action'](async J=>{const bu=bb;a0a8('exam\x20token\x20'+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import(bu(0x38a)),V=K();if(V){const a2=V[bu(0x134)][bu(0x118)],a3=a0a1(),a4=!!a2&&a2[bu(0x31a)]()[bu(0x3bb)]()!==J[bu(0x31a)]()[bu(0x3bb)](),a5=!!a3&&a3[bu(0x155)]()+(-0x2*0x1b14b2+0x17092e+0x240e7*0x1a)<Date[bu(0x2d2)]();if(a4&&a5)return Q(),console[bu(0x1d3)](),console[bu(0x1d3)](a0L[bu(0x333)](bu(0x10b))),console[bu(0x1d3)](),console[bu(0x1d3)](a0L[bu(0x19f)](bu(0x371))+a0L[bu(0x2fd)][bu(0x198)](bu(0x3b2)+J)),void console[bu(0x1d3)]();if(!a2&&J)return V[bu(0x134)][bu(0x118)]=J[bu(0x31a)](),L(V),console['log'](),console[bu(0x1d3)](a0L[bu(0x2b6)](bu(0x2df))),console['log'](a0L['gray'](bu(0x3ad))+a0L[bu(0x19f)](bu(0xff))+a0L['gray'](bu(0x1de))+a0L[bu(0x19f)](bu(0xf6))),console[bu(0x1d3)](),console['log'](a0L[bu(0x2fd)][bu(0x19f)](bu(0x219))),console[bu(0x1d3)](a0L[bu(0x333)](bu(0x22e))+a0L[bu(0x2fd)][bu(0x198)](bu(0x2a7))+a0L[bu(0x333)](bu(0x1f1))),console[bu(0x1d3)](a0L[bu(0x333)](bu(0x22e))+a0L[bu(0x2fd)][bu(0x198)](bu(0x179))+a0L['gray']('\x20\x20\x20see\x20progress\x20+\x20flagged\x20items')),void console[bu(0x1d3)]();const a6=Object['keys'](V['answers'])['length'],a7=V[bu(0x134)][bu(0x1ee)],a8=a0a1(),a9=a8?Math[bu(0x38e)](0xb47*-0x1+0x1a*0xd+0x9f5,Math[bu(0x323)]((a8['getTime']()-Date[bu(0x2d2)]())/(-0x1*0x19ee9+0x8ead*-0x2+-0x31*-0x1313))):null;return console[bu(0x1d3)](),console[bu(0x1d3)](a0L[bu(0x139)]('\x20\x20⚠\x20\x20An\x20exam\x20is\x20already\x20in\x20progress\x20on\x20this\x20device.')),console[bu(0x1d3)](),console[bu(0x1d3)](a0L[bu(0x333)](bu(0x294))+a0L[bu(0x19f)](V[bu(0x134)][bu(0x24e)])),a2&&console[bu(0x1d3)](a0L[bu(0x333)](bu(0x1e3))+a0L['white'](a2)+(a2===J?a0L[bu(0x2b6)](bu(0x3f3)):a0L['yellow']('\x20\x20(different\x20from\x20the\x20one\x20you\x20typed)'))),console[bu(0x1d3)](a0L['gray'](bu(0x11f))+a0L[bu(0x19f)](a6+'/'+a7)),null!==a9&&console['log'](a0L[bu(0x333)](bu(0x392))+a0L[bu(0x19f)](a9+bu(0x24c))),console[bu(0x1d3)](),console[bu(0x1d3)](a0L[bu(0x2fd)][bu(0x19f)]('\x20\x20To\x20continue\x20this\x20exam:')),console[bu(0x1d3)](a0L[bu(0x333)]('\x20\x20\x20\x20→\x20')+a0L[bu(0x2fd)][bu(0x198)](bu(0x2a7))+a0L[bu(0x333)](bu(0x1f1))),console[bu(0x1d3)](a0L['gray'](bu(0x22e))+a0L[bu(0x2fd)][bu(0x198)](bu(0x179))+a0L['gray'](bu(0x21b))),console['log'](a0L[bu(0x333)](bu(0x22e))+a0L[bu(0x2fd)]['cyan']('exam\x20submit')+a0L['gray'](bu(0x138))),a2&&a2!==J&&(console[bu(0x1d3)](),console[bu(0x1d3)](a0L[bu(0x139)]('\x20\x20Note:\x20you\x20typed\x20a\x20different\x20token.\x20Each\x20exam\x20token\x20is\x20bound\x20to')),console['log'](a0L[bu(0x139)](bu(0x103))),console['log'](),console[bu(0x1d3)](a0L['gray'](bu(0x2c2))),console[bu(0x1d3)](a0L[bu(0x333)](bu(0x346))+a0L[bu(0x2fd)][bu(0x198)]('exam\x20reset')+a0L[bu(0x333)](bu(0x326)))),void console[bu(0x1d3)]();}const {isNativeWindowsCmd:W}=await import(bu(0x374));if(!W()&&!a0am()){let aa=!(-0x11f7+-0x43*-0x47+-0x9d*0x1);try{const ab={};ab[bu(0x34d)]=bu(0x201);const ac=a0W()[bu(0x283)]||bu(0x3c5),ad=await fetch(ac+'/api/icoa/exam-token',{'method':bu(0x384),'headers':ab,'body':JSON['stringify']({'token':J[bu(0x31a)](),'deviceHash':a0aj(),'peek':!(0x17f*-0x10+0x12a+0x16c6)}),'signal':AbortSignal[bu(0x235)](-0x40*0x80+0x1*-0x2686+-0x1*-0x5a0e)});if(ad['ok']){const ae=await ad['json']();(ae?.['data']?.[bu(0x122)]||'')[bu(0x248)]('-c')&&(aa=!(-0xf79*0x2+0x57*-0x6f+0x44ab*0x1));}}catch{}if(!aa)return console['log'](),a0ab(bu(0x281)),console[bu(0x1d3)](a0L[bu(0x333)](bu(0x178))+a0L[bu(0x2fd)]['cyan'](bu(0x104))),console[bu(0x1d3)](a0L['gray'](bu(0x123))+a0L[bu(0x2fd)]['cyan'](bu(0x362))+a0L[bu(0x333)](bu(0x133))),console[bu(0x1d3)](a0L[bu(0x333)]('\x20\x20(Paper\x20C\x20tokens\x20skip\x20this\x20gate\x20—\x20Paper\x20C\x20is\x20MCQ-only)')),void console[bu(0x1d3)]();}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(0x31a)]()[bu(0x1d4)](0x5aa+-0x40f*-0x7+0x2213*-0x1,0x1*-0x2244+0x3f9*0x3+0x165b)[bu(0x3bb)]()],Z=a0W(),a0=Z[bu(0x283)]||'https://practice.icoa2026.au',a1=Y||Z['language']||'en';Y&&Y!==(Z[bu(0x11e)]||'en')&&a0X({'language':Y}),console[bu(0x1d3)](),N(-0x8f*-0x2b+0x9b*-0x2e+-0x1*-0x3d5,bu(0x339));try{const af={};af[bu(0x34d)]=bu(0x201);const ag=await fetch(a0+bu(0x13d),{'method':'POST','headers':af,'body':JSON[bu(0x37e)]({'token':J[bu(0x31a)](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal[bu(0x235)](0x7*-0x1df+-0x23ea+-0x7*-0xc95)});if(!ag['ok']){N(0x20ab*-0x1+0x25a3+-0x4f8,''),console['log']();const ao=await ag[bu(0x293)]()[bu(0x268)](()=>({'message':bu(0x1af)}));return a0aa(ao[bu(0x1da)]||bu(0x213)),void a0ac('Check\x20your\x20token\x20or\x20contact\x20your\x20proctor.');}N(0x179c+0x2b*0x65+-0x2875,bu(0x2b0));const ah=await ag[bu(0x293)](),{session:ai,questions:aj,languages:ak}=ah[bu(0x2ec)];N(-0x3bb*-0x4+-0x2*0xd0a+0xb64,bu(0x298)),await q(-0x3b4+-0x1c8f*0x1+0x301*0xb),N(0x1264*0x1+0x252+-0x22*0x99,'Ready!'),console[bu(0x1d3)](),console[bu(0x1d3)](),a0ae(ai[bu(0x24e)]),console['log'](),a0af(bu(0x20e),ai[bu(0x1ee)]+bu(0x26e)),a0af(bu(0x30d),ai[bu(0x246)]+bu(0x19a)),a0af('Total',(ai[bu(0x3e7)]||0xc61+-0x3e*-0xa+-0xe37)+bu(0x27d)),a0af(bu(0x3e8),(ai[bu(0x263)]||-0x38e+-0x1ba5+0x1f7e)+bu(0x22f)),console[bu(0x1d3)](),console[bu(0x1d3)](a0L[bu(0x19f)](bu(0x3b9))),console[bu(0x1d3)](a0L[bu(0x19f)](bu(0x12a))),console['log'](a0L[bu(0x19f)]('\x20\x20\x20\x20Hints:\x20\x20\x20A(5)\x20B(3)\x20C(1)\x20—\x20practical\x20only')),console['log'](a0L[bu(0x19f)](bu(0x389))),ak&&ak['length']>-0xcf2+0x49c+0x1*0x857&&console[bu(0x1d3)](a0L[bu(0x19f)](bu(0x1c7)+ak[bu(0x23b)](',\x20')+'\x20—\x20switch\x20with:\x20lang\x20<code>')),console[bu(0x1d3)](),console['log'](a0L[bu(0x139)](bu(0x163))),console[bu(0x1d3)](a0L[bu(0x19f)](bu(0x2ac))),console[bu(0x1d3)](a0L[bu(0x19f)]('\x20\x20\x20\x20•\x20Server\x20auto-finalises\x20your\x20answers\x20if\x20you\x20do\x20not\x20submit\x20before\x20the\x20deadline')),console[bu(0x1d3)](a0L['white']('\x20\x20\x20\x20•\x20You\x20may\x20exit\x20and\x20resume\x20with\x20the\x20same\x20token')),console[bu(0x1d3)](),await new Promise(ap=>{const bv=bu;process['stdout'][bv(0x2fc)](a0L['bold'][bv(0x139)]('\x20\x20Press\x20Enter\x20to\x20start\x20the\x20exam\x20timer...\x20'));const aq=!!process[bv(0x2ff)][bv(0xfc)]&&process[bv(0x2ff)][bv(0x277)];process[bv(0x2ff)][bv(0xfc)]&&process[bv(0x2ff)][bv(0x32c)]&&process[bv(0x2ff)][bv(0x32c)](!(0xf26+-0x21*0xbb+0x8f6));const ar=as=>{const bw=bv,at=as[bw(0x129)]();(at[bw(0x355)]('\x0a')||at['includes']('\x0d'))&&(process[bw(0x2ff)]['removeListener'](bw(0x2ec),ar),process['stdin'][bw(0xfc)]&&process[bw(0x2ff)][bw(0x32c)]&&process[bw(0x2ff)][bw(0x32c)](aq),process[bw(0x242)][bw(0x2fc)]('\x0a'),ap());};process[bv(0x2ff)]['on'](bv(0x2ec),ar),process[bv(0x2ff)]['resume']();});const al=new Date()['toISOString']();ai[bu(0x3d3)]=al,ai['token']=J[bu(0x31a)]();try{const ap=Date['now'](),aq=await fetch(a0+'/api/icoa/server-time',{'method':bu(0x1fe),'signal':AbortSignal[bu(0x235)](0x1066+-0xa7*-0x1a+0x5*-0x454)});if(aq['ok']){const ar=await aq['json'](),as=ar?.[bu(0x2ec)]?.['server_time_ms'];if(bu(0x111)==typeof as&&as>-0x17a0+0x105f+-0x26b*-0x3){const at=(ap+Date[bu(0x2d2)]())/(-0x77*0x3+0x61*-0x2c+0x1213);ai[bu(0x1f6)]=Math[bu(0x323)](as-at),ai['deadlineServerMs']=as+(-0xcf0+-0x113*0x14+0x22a8)*ai['durationMinutes']*(0x12a7+-0xf0d*0x1+0x2*0x27);}}}catch{}const am={};am[bu(0x390)]=0x0,am[bu(0x3b4)]=0x0;const an={};an[bu(0x134)]=ai,an['questions']=aj,an[bu(0x147)]={},an[bu(0x127)]=[],an[bu(0x27a)]=am,(a0Z(an),console[bu(0x1d3)](),a0a9('Exam\x20started!\x20Timer\x20is\x20running.'),a0af('Time\x20Remaining',ai['durationMinutes']+bu(0x202)),aj[bu(0x3a9)]>0x1ebb+0x2*-0x12ad+-0x235*-0x3&&U(aj[-0x1*-0x1387+-0x338+0xa7*-0x19]));}catch(au){console[bu(0x1d3)](),bu(0x200)===au[bu(0x280)]?a0aa(bu(0x3eb)):a0aa(au[bu(0x1da)]||'Failed\x20to\x20start\x20exam');}}),B[bb(0x3ab)](bb(0x3cf),{'hidden':!(-0x43*-0x7f+-0x457+-0x19b*0x12)})[bb(0x36d)]('Abandon\x20current\x20exam\x20session\x20and\x20wipe\x20local\x20state\x20(recovery\x20only)')[bb(0x3fc)](async()=>{const bx=bb;a0a8('exam\x20reset');const {getRealExamState:F,clearExamState:G}=await import(bx(0x38a)),H=F();if(!H)return console[bx(0x1d3)](),console[bx(0x1d3)](a0L[bx(0x333)]('\x20\x20No\x20active\x20exam\x20session\x20to\x20reset.')),void console['log']();const J=H[bx(0x134)][bx(0x118)];if(console['log'](),console['log'](a0L[bx(0x139)]('\x20\x20⚠\x20\x20Reset\x20will\x20abandon\x20your\x20current\x20exam\x20session\x20on\x20this\x20device.')),console['log'](a0L['gray'](bx(0x12d))+a0L[bx(0x19f)](H[bx(0x134)][bx(0x24e)])),J&&console[bx(0x1d3)](a0L[bx(0x333)](bx(0x1c8))+a0L[bx(0x19f)](J)),console[bx(0x1d3)](a0L['gray'](bx(0x34b))),console[bx(0x1d3)](a0L[bx(0x333)](bx(0x143))),console[bx(0x1d3)](),console['log'](a0L[bx(0x333)](bx(0x2f6))+a0L['bold'][bx(0x198)](bx(0x3cf))+a0L[bx(0x333)]('\x20to\x20confirm,\x20or\x20anything\x20else\x20to\x20cancel:')),bx(0x3cf)!==(await new Promise(K=>{const by=bx;process[by(0x242)][by(0x2fc)](by(0x24b));const L=Q=>{const bz=by,V=Q[bz(0x129)]()[bz(0x31a)]();(V[bz(0x355)]('\x0a')||V[bz(0x355)]('\x0d')||V['length']>-0x3*0x125+0x452+-0xe3)&&(process[bz(0x2ff)]['removeListener'](bz(0x2ec),L),K(V[bz(0x12f)](/[\r\n]/g,'')));};process[by(0x2ff)]['on'](by(0x2ec),L),process[by(0x2ff)][by(0x2d3)]();}))[bx(0x2a4)]())return console[bx(0x1d3)](a0L[bx(0x333)](bx(0x2c8))),void console[bx(0x1d3)]();G(),console[bx(0x1d3)](),console['log'](a0L[bx(0x2b6)]('\x20\x20✓\x20Exam\x20state\x20cleared.')),console['log'](a0L[bx(0x333)](bx(0x3d5))+a0L[bx(0x2fd)][bx(0x198)](bx(0x2cc))),console['log']();}),B[bb(0x3ab)](bb(0x311))[bb(0x36d)](bb(0x2b3))[bb(0x3fc)](async()=>{const bA=bb;a0a8(bA(0x33e)),E(bA(0x397));const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import(bA(0x37b));a0W()['demoIntroSeen']||(await(async function(){const bB=bA;let a0=!(-0x1c*0xac+-0x21a2+0x3473);const a1=process[bB(0x2ff)],a2=()=>{a0=!(-0x22fb+-0x1a*0x121+0x4055);},a3=a1[bB(0xfc)]&&'function'==typeof a1['setRawMode'];a3&&(a1['setRawMode'](!(0x233*-0x2+0x30a+0x15c)),a1[bB(0x2d3)](),a1[bB(0x181)]('data',a2));const a4=async a5=>{let a6=-0x2*-0xcf9+0x4*0x1b9+-0x106b*0x2;for(;a6<a5&&!a0;)await q(-0x1bf*0xf+-0x1aee+0x356f),a6+=-0x377+-0x17d3+0x1b9a;};try{if(console[bB(0x3f6)](),console[bB(0x1d3)](),console[bB(0x1d3)](a0L[bB(0x333)](bB(0x3fe))+a0L['dim'](bB(0x132))),console[bB(0x1d3)](),console[bB(0x1d3)](a0L[bB(0x2fd)][bB(0x19f)](bB(0x167))),console['log'](a0L[bB(0x2fd)][bB(0x19f)](bB(0x1ef))),console['log'](a0L['bold'][bB(0x19f)](bB(0x2de))),console[bB(0x1d3)](a0L['bold'][bB(0x19f)](bB(0x301))),console[bB(0x1d3)](a0L[bB(0x2fd)][bB(0x19f)](bB(0x253))),console[bB(0x1d3)](a0L[bB(0x2fd)]['white'](bB(0x1a2))),console['log'](),console[bB(0x1d3)](a0L['bold'][bB(0x139)]('\x20\x20\x20International\x20Cyber\x20Olympiad\x20in\x20AI')),console['log'](a0L[bB(0x333)]('\x20\x20\x20Sydney,\x20Australia\x20\x20·\x20\x20Jun\x2027\x20–\x20Jul\x202,\x202026')),await a4(-0x1d11+0x124c+0x1489),a0)return;if(console[bB(0x1d3)](),console[bB(0x1d3)](a0L[bB(0x19f)]('\x20\x20\x20What\x20you\x27ll\x20do\x20today:')),console['log'](),await a4(0xb85+-0x30*-0x4+0x7*-0x16b),a0)return;if(console[bB(0x1d3)](a0L[bB(0x198)]('\x20\x20\x20\x20\x20▣\x20')+a0L[bB(0x19f)](bB(0x16b))+a0L['gray'](bB(0x3df))),await a4(0xa85*0x1+-0x1b55+0xc*0x1a1),a0)return;if(console[bB(0x1d3)](a0L[bB(0x2b6)](bB(0x3d8))+a0L['white'](bB(0x3fa))+a0L['gray'](bB(0x1d5))),await a4(-0x2115+-0x4*0x5f3+0x3b9d),a0)return;if(console[bB(0x1d3)](a0L[bB(0x289)](bB(0x3d8))+a0L[bB(0x19f)](bB(0x288))+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20(ctf4ai)')),await a4(-0x1b*-0xcd+0x7*-0x150+-0x8eb),a0)return;if(console['log'](),console[bB(0x1d3)](a0L[bB(0x2fd)]['white'](bB(0x156))+a0L[bB(0x2fd)][bB(0x139)]('IS')+a0L[bB(0x2fd)][bB(0x19f)]('\x20the\x20competition.')),console[bB(0x1d3)](),await a4(0x147f+0x4*-0x568+-0x1*-0x6fd),a0)return;if(console[bB(0x1d3)](a0L[bB(0x333)]('\x20\x20\x20·\x20110\x20CTF\x20tools\x20pre-configured')),await a4(0x12dd+-0x93*0x2b+-0x1*-0x764),a0)return;if(console[bB(0x1d3)](a0L[bB(0x333)](bB(0x285))),await a4(0x1*-0x24ee+-0x174d+-0x1*-0x3dcb),a0)return;if(console[bB(0x1d3)](a0L[bB(0x333)](bB(0x108))),await a4(0x1*0xa+-0x454+0x76a),a0)return;console[bB(0x1d3)](),console[bB(0x1d3)](a0L[bB(0x2fd)]['cyan'](bB(0x3ef))),await a4(0x1619+0x1132+-0x17ab);}finally{((()=>{const bC=bB;if(a3){a1['removeListener']('data',a2);try{a1[bC(0x32c)](!(0x78b+0x1681*-0x1+0xef7));}catch{}a1[bC(0x402)]();}})()),console['clear']();}}()),a0X({'demoIntroSeen':!(-0xc*0x1f1+0x133c+0x410)})),console['log'](),console['log'](a0L[bA(0x19f)](bA(0x1d0))+a0L[bA(0x333)](H+bA(0x334)+J+bA(0x2d6))),console[bA(0x1d3)](a0L[bA(0x333)](bA(0x30a))+a0L['cyan'](bA(0x318))+a0L[bA(0x333)]('\x20or\x20leave\x20with\x20')+a0L[bA(0x198)]('back')+a0L['gray'](bA(0x3ce))),await new Promise(a0=>{const bD=bA;process[bD(0x242)][bD(0x2fc)](a0L[bD(0x2fd)][bD(0x139)]('\x20\x20Press\x20Enter\x20to\x20begin...\x20'));const a1=!!process[bD(0x2ff)][bD(0xfc)]&&process[bD(0x2ff)]['isRaw'];process[bD(0x2ff)][bD(0xfc)]&&process[bD(0x2ff)][bD(0x32c)]&&process[bD(0x2ff)][bD(0x32c)](!(0x1*0x1b9e+-0x2*-0x1c1+-0x1f1f));const a2=a3=>{const bE=bD,a4=a3[bE(0x129)]();(a4[bE(0x355)]('\x0a')||a4[bE(0x355)]('\x0d'))&&(process[bE(0x2ff)][bE(0x1b2)](bE(0x2ec),a2),process['stdin'][bE(0xfc)]&&process[bE(0x2ff)][bE(0x32c)]&&process['stdin'][bE(0x32c)](a1),process['stdout']['write']('\x0a'),a0());};process[bD(0x2ff)]['on'](bD(0x2ec),a2),process['stdin']['resume']();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import('../lib/exam-state.js');Q()&&V(bA(0x1e2)),console[bA(0x1d3)](),a0ae('ICOA\x20Demo\x20Exam\x20—\x20Free\x20Practice'),console[bA(0x1d3)](),console[bA(0x1d3)](a0L[bA(0x19f)](bA(0x172))),console[bA(0x1d3)](a0L['white']('\x20\x20'+H+bA(0x116)+J+bA(0x183)));const W=a0a3();if(W['attempts']>0x2348+0x241e+-0x2*0x23b3){const a0=W[bA(0x391)],a1=a0>=-0xabd*0x3+-0x2576+0x1b5*0x29?a0L['green']:a0>=-0x1087*-0x2+0x212f*-0x1+0x3*0x1f?a0L[bA(0x139)]:a0L[bA(0x19f)];console[bA(0x1d3)](),console[bA(0x1d3)](a0L['gray']('\x20\x20Your\x20best:\x20')+a1(W[bA(0x31f)]+'/'+H+'\x20('+a0+'%)')+a0L['gray'](bA(0x238)+W[bA(0x1bd)]+bA(0x36c)));}console[bA(0x1d3)](),console[bA(0x1d3)](a0L[bA(0x333)]('\x20\x20─────────────────────────────────────────')),console[bA(0x1d3)](a0L['white']('\x20\x20'+a0ai(bA(0x218)))),console['log'](a0L[bA(0x139)](bA(0x2f0))+a0L[bA(0x333)]('\x20\x20\x20\x20\x20\x20\x20'+a0ai(bA(0x30c)))),console[bA(0x1d3)](a0L[bA(0x139)](bA(0x18e))+a0L[bA(0x333)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bA(0x3ee)))),console[bA(0x1d3)](a0L[bA(0x139)](bA(0x1e7))+a0L[bA(0x333)](bA(0x266))+a0L['yellow'](bA(0x20d))+a0L[bA(0x333)](bA(0x35a)+a0ai(bA(0x102)))),console[bA(0x1d3)](a0L[bA(0x139)](bA(0x2ca))+a0L[bA(0x333)](bA(0x32e)+a0ai(bA(0x101)))),console[bA(0x1d3)](a0L[bA(0x139)]('\x20\x20\x20\x20back')+a0L['gray'](bA(0x28d)+a0ai(bA(0x2eb)))),console['log'](a0L[bA(0x139)](bA(0x18c))+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bA(0x26b)))),console[bA(0x1d3)](a0L['gray'](bA(0x1ec))),console['log'](a0L[bA(0x333)]('\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(0x333)](bA(0x3c0))),console['log']();const {getConfig:X}=await import(bA(0x1bb)),Y=X()[bA(0x11e)]||'en';'en'===Y?(console[bA(0x1d3)](a0L[bA(0x333)]('\x20\x20Questions\x20in\x20English.\x20To\x20switch\x20language\x20first:')),console['log'](a0L[bA(0x333)](bA(0x3b5))),console['log'](a0L[bA(0x333)](bA(0x307)))):console[bA(0x1d3)](a0L[bA(0x2b6)](bA(0x39b)+Y)),console[bA(0x1d3)](),console['log'](a0L[bA(0x19f)](bA(0x20a)));const Z={...L,'startedAt':new Date()[bA(0x3d4)]()};console[bA(0x1d3)](),N(-0x4b*-0x23+0x1d6*0xc+-0x1b3*0x13,'Preparing\x20questions...'),await q(0xd64+0x1*0x1101+-0x1d9d),N(-0x29*-0x77+-0x5*-0x2f+-0x13d2*0x1,'Shuffling\x20options...'),await q(0x900+-0x13af+-0x5*-0x24b),N(-0x2510*-0x1+-0x13af*-0x1+-0x386f,'Almost\x20ready...'),await q(0x1*0x43a+-0x9c8*0x1+0x624),N(0x164c+0x14cd+0x1*-0x2ab5,bA(0x131)),console[bA(0x1d3)](),console[bA(0x1d3)](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af(bA(0x20e),String(H)),a0af(bA(0x30d),bA(0x300)),U(K[0x1a97+-0x1*-0x120b+-0x2*0x1651]);}),B[bb(0x3ab)](bb(0x30f))[bb(0x36d)](bb(0x1e8))[bb(0x3fc)](async()=>{const bF=bb;a0a8(bF(0x15f)),E('post-report-retry');const {getLocalizedDemoSession:F}=await import('../lib/demo-exam.js'),G=a0a6();if(!G||-0x1*0xe99+-0x135*0x10+0x21e9===G[bF(0x3a9)])return console[bF(0x1d3)](),console[bF(0x1d3)](a0L[bF(0x139)](bF(0x12c))+a0L[bF(0x2fd)][bF(0x198)](bF(0x311))+a0L[bF(0x139)](bF(0x29b))),void console['log']();const H=a0Y();if(H){if(bF(0x1e2)!==H[bF(0x134)]['examId'])return a0ab(bF(0x186)+H[bF(0x134)][bF(0x24e)]+'\x22\x20is\x20in\x20progress.'),void a0ac(bF(0x321));a0a0();}const J=V=>{const bG=bF;if(!V[bG(0x141)])return V;const W=V[bG(0x305)][V[bG(0x141)]],X=['A','B','C','D'][bG(0x136)](a2=>V[bG(0x305)][a2]);for(let a2=X['length']-(0x2*-0x5ff+-0x1d73+0x2972);a2>-0x56*0x2a+-0x56*0x38+0x20ec;a2--){const a3=Math[bG(0x16e)](Math[bG(0x240)]()*(a2+(0x148b+0x290+-0xb8d*0x2)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[-0x1aba+-0x1f2a+0x23a*0x1a],Y['B']=X[-0x1327*-0x1+-0x22eb+0xfc5*0x1],Y['C']=X[-0x1898+0x21cd+-0xf*0x9d],Y['D']=X[0x1*0x306+0x775+0x2*-0x53c];const Z=Y,a0=['A','B','C','D'][bG(0x393)](a4=>Z[a4]===W),a1={...V};return a1[bG(0x305)]=Z,a1['answer']=a0,a1;},K=G[bF(0x136)]((V,W)=>({...J(V),'number':W+(-0x58a*-0x6+-0x26b5+0x57a)})),L=F(),Q={...L,'examName':L[bF(0x24e)]+bF(0x2bb),'questionCount':K['length'],'startedAt':new Date()[bF(0x3d4)]()};console[bF(0x1d3)](),a0ae('Demo\x20Retry\x20—\x20Wrong\x20Questions\x20Only'),console[bF(0x1d3)](),console['log'](a0L[bF(0x19f)](bF(0x364)+K['length']+'\x20question'+(-0x25cd*-0x1+0x5*-0x224+0x88*-0x33===K[bF(0x3a9)]?'':'s')+bF(0x3c1))),console[bF(0x1d3)](a0L[bF(0x333)](bF(0x267))),console[bF(0x1d3)](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af(bF(0x20e),String(K[bF(0x3a9)])),a0af('Duration','No\x20time\x20limit'),U(K[-0x219c+-0x26d1+0x486d]);}),B[bb(0x3ab)]('setup')[bb(0x36d)](bb(0x3a4))['action'](async()=>{const bH=bb;if(a0a8('exam\x20setup'),0xea9+-0x2ce+-0xbdb===a0a3()[bH(0x1bd)])return console[bH(0x1d3)](),a0ab('Complete\x20the\x20demo\x20first\x20before\x20setting\x20up.'),console[bH(0x1d3)](a0L[bH(0x333)]('\x20\x20→\x20')+a0L[bH(0x2fd)][bH(0x198)](bH(0x33e))),void console[bH(0x1d3)]();const K=a0ak();if(K){const a4=K[bH(0x3de)][bH(0x3a9)],a5=a4+K[bH(0x325)][bH(0x3a9)];if(a4>=0x5e*0x4f+0x26e*-0xa+0x2*-0x257||(a5>0x2190+-0x1*-0x1cb3+-0x3e43?a4/a5:-0x141d*-0x1+0x1534+-0x2951*0x1)>=0x319*-0x7+-0x4c6+0xd*0x209+0.7)return console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x2b6)](bH(0x3f9))+a0L[bH(0x2b6)](bH(0x187))),console['log'](a0L['gray'](bH(0x34a)+K[bH(0x14b)][bH(0x29a)]('T')[0xbb3*-0x1+0x1b7*0x1+0x9fc])),console[bH(0x1d3)](a0L['gray'](bH(0x194)+K[bH(0x3a7)])),console[bH(0x1d3)](a0L['gray']('\x20\x20\x20\x20Packages:\x20'+a4+'\x20installed')),K[bH(0x325)][bH(0x3a9)]>-0x2f5*0x2+-0x1501+0x1*0x1aeb&&console[bH(0x1d3)](a0L['yellow'](bH(0x2f8)+K[bH(0x325)]['join'](',\x20'))),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x188))+a0L[bH(0x2fd)]['cyan'](bH(0x2cc))),console['log'](a0L[bH(0x333)](bH(0x123))+a0L[bH(0x2fd)][bH(0x198)](bH(0x362))+a0L[bH(0x333)]('\x20to\x20return\x20to\x20the\x20main\x20menu.')),void console[bH(0x1d3)]();console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x139)](bH(0x36b)+a4+'/'+a5+bH(0x327))),console[bH(0x1d3)]();}console[bH(0x1d3)](),a0ae(bH(0x162)),console['log'](),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x2e7))),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x2d0))),console['log']();const L=(a6,a7)=>{const bI=bH,a8=process[bI(0x22d)];console[bI(0x1d3)](),a0aa(bI(0x2f5)===a6?bI(0x1f5):bI(0x249)+a7+bI(0x357)),console['log'](),console[bI(0x1d3)](a0L[bI(0x2fd)]['white'](bI(0x1f8))),console[bI(0x1d3)](),bI(0x1df)===a8?(console['log'](a0L['yellow'](bI(0x308))),console[bI(0x1d3)](a0L[bI(0x2b6)](bI(0x210))),console[bI(0x1d3)](),console[bI(0x1d3)](a0L[bI(0x333)]('\x20\x20Or\x20download\x20installer:')),console[bI(0x1d3)](a0L[bI(0x333)](bI(0x207)))):'linux'===a8?(console[bI(0x1d3)](a0L[bI(0x139)](bI(0x3f8))),console[bI(0x1d3)](a0L[bI(0x2b6)]('\x20\x20\x20\x20sudo\x20add-apt-repository\x20ppa:deadsnakes/ppa\x20-y')),console[bI(0x1d3)](a0L[bI(0x2b6)](bI(0x271))),console['log'](a0L['green'](bI(0x168))),console[bI(0x1d3)](a0L[bI(0x333)]('\x20\x20\x20\x20sudo\x20update-alternatives\x20--install\x20/usr/bin/python3\x20python3\x20/usr/bin/python3.12\x201')),console[bI(0x1d3)](),console[bI(0x1d3)](a0L[bI(0x139)](bI(0x29c))),console[bI(0x1d3)](a0L[bI(0x2b6)](bI(0x241))),console['log'](),console[bI(0x1d3)](a0L[bI(0x139)]('\x20\x20Arch\x20/\x20Manjaro:')),console[bI(0x1d3)](a0L[bI(0x2b6)](bI(0x396)))):bI(0x1bc)===a8?(console[bI(0x1d3)](a0L['yellow'](bI(0x38b))),console[bI(0x1d3)](a0L[bI(0x2b6)](bI(0x2cd))),console['log'](),console['log'](a0L[bI(0x333)]('\x20\x20Or\x20download\x20installer:')),console[bI(0x1d3)](a0L[bI(0x333)](bI(0x39a)))):console[bI(0x1d3)](a0L[bI(0x333)](bI(0x2d7))),console['log'](),console[bI(0x1d3)](a0L['white'](bI(0x217))+a0L[bI(0x2fd)][bI(0x198)]('exam\x20setup')),console[bI(0x1d3)]();},Q=bH(0x3f0);let V='';try{const a6={};a6['encoding']=bH(0x386),a6['timeout']=0x1388,V=a0an(Q+'\x20--version',a6)['trim']()[bH(0x12f)](bH(0x249),'');const a7=V[bH(0x29a)]('.')[bH(0x136)](Number);if(a7[0xa1*-0x39+0x236c*-0x1+0xcd*0x59]<0x1c2e+-0x1055+-0xbd6||0xb0f+-0x3*-0x392+-0x15c2===a7[0xba9*0x3+0x2cf*-0x7+-0xf52]&&a7[-0x81a+0x1*-0x62d+0xe48]<-0x185f*-0x1+0x2614+-0x3e69)return void L(bH(0x34e),V);0x47*0x33+0x17c9*0x1+-0x25eb===a7[0x4dd*0x1+-0x60f*-0x1+-0xc*0xe9]&&a7[0x2*0x515+-0x178*0x10+0xd57]<0x5*-0x23f+-0xa3d*0x2+0xb*0x2e3?console['log'](a0L[bH(0x2b6)](bH(0x115)+V)+a0L[bH(0x333)](bH(0x1c0))):console['log'](a0L[bH(0x2b6)](bH(0x115)+V));}catch{return void L(bH(0x2f5));}try{const a8={};a8[bH(0x36f)]=bH(0x2e3),a8[bH(0x235)]=0x1388,(a0an(Q+bH(0x375),a8),console[bH(0x1d3)](a0L[bH(0x2b6)](bH(0x3fd))));}catch{console['log'](a0L['yellow'](bH(0xf8)));try{const a9={};a9[bH(0x36f)]=bH(0x2e3),a9['timeout']=0x7530,(a0an(Q+bH(0x152),a9),console['log'](a0L[bH(0x2b6)](bH(0x306))));}catch{a0aa(bH(0x3b3)),console[bH(0x1d3)]();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import('../lib/platform.js'),{execFileSync:ac}=await import('node:child_process'),ad=aa(),ae=ab(),af=bH(0x13c)===process['platform']&&!ad,ag=bH(0x1df)===process[bH(0x22d)];let ah=bH(0x195);if(af||ad)try{const {readFileSync:ak}=await import(bH(0x2be)),al=ak('/etc/os-release',bH(0x386)),am=(al[bH(0x1e6)](/^ID="?([^"\n]+)/m)||[])[-0x29*0x62+-0x58e+0x1*0x1541]||'',an=(al[bH(0x1e6)](/^VERSION_ID="?([^"\n]+)/m)||[])[0x12d*0x3+0x99c+-0x29*0x52]||'';bH(0x216)===am?ah=bH(0x154)+an+(ad?'\x20(WSL2)':''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?bH(0x35e):''));}catch{}let ai=!(-0x2*0x93b+0x16a9+0x2*-0x219);if(ag)try{const ao={};ao[bH(0x36f)]='ignore',ao[bH(0x235)]=0x7d0,(ac(bH(0x2d8),[bH(0x182)],ao),ai=!(0x3d*-0x1+0x1*0x303+-0x2c6));}catch{ai=!(-0xd*0x187+0x330+0x10ac);}const aj=ae?bH(0x26c):bH(0x1e0);return console[bH(0x1d3)](a0L['bold']['yellow']('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](a0L[bH(0x2fd)][bH(0x139)]('\x20\x20'+aj)),console['log'](a0L[bH(0x2fd)][bH(0x139)](bH(0x197))),console[bH(0x1d3)](),af||ad?(console['log'](a0L[bH(0x19f)]('\x20\x20Detected:\x20')+a0L[bH(0x198)](ah)),console[bH(0x1d3)](a0L[bH(0x333)]('\x20\x20(Minimal\x20Ubuntu\x20/\x20cloud\x20/\x20WSL2\x20images\x20often\x20ship\x20without\x20pip.)')),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x2fd)][bH(0x19f)](bH(0x16d))),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x344))+a0L[bH(0x2fd)][bH(0x198)]('quit')+a0L['white'](bH(0x2bd))),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x335))),console[bH(0x1d3)](),console[bH(0x1d3)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x2fd)][bH(0x198)](bH(0x145))),console[bH(0x1d3)](bH(0x27f)+a0L['bold'][bH(0x198)](bH(0x1ce))),console[bH(0x1d3)](),console['log'](a0L['white'](bH(0x114))),console[bH(0x1d3)](),console[bH(0x1d3)](bH(0x27f)+a0L['bold'][bH(0x198)]('icoa')),console[bH(0x1d3)](bH(0x27f)+a0L[bH(0x333)](bH(0x2ed))+'\x20'+a0L['bold'][bH(0x198)](bH(0x104)))):ag?(console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x19c))+a0L['cyan']('macOS')),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x2fd)]['white'](bH(0x16d))),console['log'](),console[bH(0x1d3)](a0L[bH(0x19f)]('\x20\x20\x20\x201.\x20Type\x20')+a0L['bold'][bH(0x198)](bH(0x2c5))+a0L[bH(0x19f)](bH(0x1b8))),console[bH(0x1d3)](),ai?(console[bH(0x1d3)](a0L[bH(0x19f)]('\x20\x20\x20\x202.\x20Reinstall\x20Python\x20with\x20pip\x20(Homebrew\x20detected\x20✓):')),console[bH(0x1d3)](),console[bH(0x1d3)](bH(0x27f)+a0L[bH(0x2fd)][bH(0x198)](bH(0x1ff))),console[bH(0x1d3)](bH(0x27f)+a0L['bold'][bH(0x198)](bH(0x1e9)))):(console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x176))+a0L[bH(0x2fd)][bH(0x139)]('brew')+a0L[bH(0x19f)]('):')),console[bH(0x1d3)](),console[bH(0x1d3)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x2fd)][bH(0x198)](bH(0x3bf))),console[bH(0x1d3)](),console['log'](a0L[bH(0x19f)](bH(0x17d))),console[bH(0x1d3)](),console[bH(0x1d3)](bH(0x27f)+a0L[bH(0x2fd)]['cyan']('brew\x20install\x20python@3.12'))),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x250))),console['log'](),console['log'](bH(0x27f)+a0L['bold']['cyan']('icoa')),console['log'](bH(0x27f)+a0L[bH(0x333)](bH(0x2ed))+'\x20'+a0L['bold']['cyan']('exam\x20setup'))):ae?(console['log'](a0L[bH(0x19f)](bH(0x19c))+a0L[bH(0x198)](bH(0x2db))),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x2fd)][bH(0x139)]('\x20\x20ICOA\x20officially\x20supports\x20WSL2\x20on\x20Windows.')),console['log'](a0L[bH(0x333)](bH(0x350))),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x15d))),console[bH(0x1d3)](a0L['gray']('\x20\x20far\x20more\x20smoothly\x20inside\x20WSL2\x20Ubuntu.')),console[bH(0x1d3)](),console['log'](a0L[bH(0x2fd)]['white'](bH(0x192))),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x19f)]('\x20\x20\x20\x201.\x20Type\x20')+a0L['bold'][bH(0x198)](bH(0x2c5))+a0L[bH(0x19f)](bH(0x1b8))),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x352))),console[bH(0x1d3)](),console[bH(0x1d3)](bH(0x27f)+a0L['bold']['cyan'](bH(0x23c))),console['log'](),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x3d2))),console['log'](a0L[bH(0x19f)](bH(0x3d7))),console[bH(0x1d3)](),console[bH(0x1d3)](bH(0x27f)+a0L['bold']['cyan'](bH(0x2fb))),console[bH(0x1d3)](bH(0x27f)+a0L[bH(0x2fd)][bH(0x198)](bH(0x10e))),console[bH(0x1d3)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x2fd)][bH(0x198)](bH(0x1b9))),console['log'](bH(0x27f)+a0L[bH(0x2fd)][bH(0x198)]('icoa')),console[bH(0x1d3)](),console['log'](a0L['gray'](bH(0x1ea))),console['log'](),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x344))+a0L['bold']['cyan']('quit')+a0L[bH(0x19f)](bH(0x1b8))),console['log'](a0L[bH(0x19f)](bH(0x174))),console[bH(0x1d3)](),console['log'](bH(0x27f)+a0L[bH(0x2fd)]['cyan']('winget\x20install\x20--id\x20Python.Python.3.12\x20-e')),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x303))),console[bH(0x1d3)](a0L['gray'](bH(0x232))),console[bH(0x1d3)](a0L[bH(0x19f)]('\x20\x20\x20\x203.\x20Open\x20a\x20NEW\x20PowerShell\x20window\x20(PATH\x20refresh),\x20then:')),console[bH(0x1d3)](),console['log'](bH(0x27f)+a0L[bH(0x2fd)]['cyan'](bH(0x30b))),console[bH(0x1d3)](bH(0x27f)+a0L[bH(0x333)](bH(0x2ed))+'\x20'+a0L[bH(0x2fd)]['cyan']('exam\x20setup'))):(console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x1a7))+a0L[bH(0x198)](process[bH(0x22d)])+a0L[bH(0x19f)](')')),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x3a5))),console[bH(0x1d3)](bH(0x27f)+a0L[bH(0x2fd)]['cyan'](bH(0x30b))),console['log'](bH(0x27f)+a0L['gray'](bH(0x2ed))+'\x20'+a0L[bH(0x2fd)][bH(0x198)]('exam\x20setup'))),console[bH(0x1d3)](),console['log'](a0L[bH(0x333)](bH(0x244))),void console[bH(0x1d3)]();}}const W={};W[bH(0x18f)]=bH(0x3bd),W[bH(0x3bc)]=bH(0x2e4),W[bH(0x340)]='z3',W[bH(0xf9)]='PIL',W['pwntools']=bH(0x3c8),W[bH(0x1d8)]=bH(0x37d);const X=['pwntools',bH(0x126),bH(0x3e0),'beautifulsoup4',bH(0x354),bH(0xf9),'scapy',bH(0x12b),bH(0x340),bH(0x3bc),bH(0x1d8),bH(0x2c3),bH(0x348)],Y=W;console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x258)+X[bH(0x3a9)]+bH(0x149))),console[bH(0x1d3)]();let Z='';try{const ap={};ap[bH(0x170)]='utf-8',ap[bH(0x235)]=0x2710,a0an(Q+bH(0x1c5),ap);}catch(aq){const ar=String(aq?.[bH(0x242)]||aq?.[bH(0x106)]||aq?.[bH(0x1da)]||'');/externally-managed-environment|break-system-packages/i[bH(0x319)](ar)&&(Z=bH(0x227),console[bH(0x1d3)](a0L[bH(0x139)]('\x20\x20ℹ\x20PEP\x20668\x20detected\x20—\x20using\x20--user\x20install\x20(no\x20sudo\x20needed)')),console['log']());}const a0=V['split']('.')['map'](Number);-0x3*0xb07+0x746+-0x52a*-0x5===a0[-0x20ef+-0x24d*0xb+0xf*0x3e2]&&a0[0x5c6+-0x19e3+0x19*0xce]>=-0x29a*-0x2+0x93a+-0xe61&&(console[bH(0x1d3)](a0L[bH(0x139)]('\x20\x20⚠\x20Python\x20'+V+bH(0x37c))),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x1b6))),console[bH(0x1d3)](a0L['gray'](bH(0x2bc))),bH(0x13c)===process['platform']&&(console['log'](a0L[bH(0x2b6)](bH(0x296))),console[bH(0x1d3)](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(0x1d3)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+bH(0x2af)+as+'\x22\x20'+Z+bH(0x125),{'encoding':bH(0x386),'timeout':0x2bf20,'stdio':bH(0x2e0)}),a0an(Q+bH(0x1a0)+(Y[as]||as)+'\x22',{'stdio':bH(0x2e3),'timeout':0x2710});let at='';try{const au=a0an(Q+bH(0x2a5)+as+bH(0x3aa),{'encoding':bH(0x386),'timeout':0x1388})[bH(0x1e6)](/^Version:\s*(.+)$/m);au&&(at=au[0x2706+0xd08+-0x340d][bH(0x31a)]());}catch{}console[bH(0x1d3)](a0L['green']('\x20\x20✓\x20'+as)+(at?a0L['gray']('\x20('+at+')'):'')),a1['push'](at?as+'=='+at:as);}catch(av){const aw=String(av?.[bH(0x242)]||av?.[bH(0x106)]||av?.[bH(0x1da)]||'')[bH(0x1f7)](-(0x1cf3*0x1+0xad*-0xe+-0xd*0x161)),ax=aw['split']('\x0a')[bH(0x223)](ay=>ay[bH(0x31a)]())[bH(0x1f7)](-(-0x29*0x5e+0x21e2+0x16*-0xdb))['join']('\x20|\x20')['slice'](0x254c+0x1*-0x1a23+-0xb29,-0x17ab+-0x2*0x6fd+0x261d);console[bH(0x1d3)](a0L[bH(0x289)](bH(0x3cd)+as)+a0L[bH(0x333)]('\x20\x20'+ax)),a2[bH(0x26a)]({'pkg':as,'error':ax}),a3||(a3=aw);}0x1*0x2128+0x6*-0x504+-0x310===a1[bH(0x3a9)]&&a3&&(console[bH(0x1d3)](),console[bH(0x1d3)](a0L['yellow'](bH(0x291))),console['log'](a0L['gray']('\x20\x20'+a3['split']('\x0a')[bH(0x1f7)](-(-0x12ba+0x93b*-0x2+0x129b*0x2))[bH(0x23b)](bH(0x3a0))))),a0al({'completedAt':new Date()[bH(0x3d4)](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2[bH(0x136)](ay=>ay[bH(0x39c)])}),console[bH(0x1d3)](),-0xd01*-0x1+0x6b*-0x3+-0xbc0===a2['length']?a0a9(bH(0x13e)+X[bH(0x3a9)]+bH(0x107)):-0x20+0x17*-0x1ae+0x26c2===a1[bH(0x3a9)]?(a0aa(bH(0x160)+X[bH(0x3a9)]+bH(0x107)),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x139)](bH(0x366))),0x509*-0x2+0x13e+0x8d7===a0[-0x1*0xad2+-0x260e+0x30e0]&&a0[-0x38*-0x5d+0xa67*-0x1+0x1a8*-0x6]>=0x20f2+0x43*0x38+-0x2f8d?(console[bH(0x1d3)](a0L[bH(0x333)](bH(0x3ba))),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x215)))):(console[bH(0x1d3)](a0L[bH(0x333)](bH(0x329))),console[bH(0x1d3)](a0L['gray'](bH(0x1fc))+a0L[bH(0x198)](Q+'\x20-m\x20pip\x20install\x20pwntools')+a0L[bH(0x333)](bH(0x3fb))),console['log'](a0L['gray']('\x20\x20\x20\x20•\x20On\x20Kali/Ubuntu\x2022+:\x20might\x20need\x20python3.12-dev\x20+\x20build-essential'))),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x1a4))+a0L[bH(0x2fd)]['cyan']('exam\x20setup'))):a0ab(a1['length']+'/'+X[bH(0x3a9)]+bH(0x3b7)+a2[bH(0x3a9)]+bH(0x3a6)+a2[bH(0x136)](ay=>ay[bH(0x39c)])[bH(0x23b)](',\x20')),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x198)](bH(0x2cb))),console[bH(0x1d3)](a0L['bold']['white'](bH(0x2a0))),console[bH(0x1d3)](a0L[bH(0x198)](bH(0x2cb))),console[bH(0x1d3)](),console['log'](a0L['bold'][bH(0x139)](bH(0x22a))+a0L['gray'](bH(0x274))),console[bH(0x1d3)](a0L[bH(0x19f)]('\x20\x20Just\x20add\x20!\x20before\x20the\x20command:')),console['log'](a0L[bH(0x2b6)](bH(0xfd))),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x29f))),console['log'](),console[bH(0x1d3)](a0L[bH(0x2fd)][bH(0x139)](bH(0x2d5))+a0L[bH(0x333)]('\x20(explore\x20&\x20experiment)')),console[bH(0x1d3)](a0L[bH(0x19f)]('\x20\x20Start\x20a\x20Python\x20session,\x20type\x20commands\x20one\x20by\x20one:')),console[bH(0x1d3)](a0L['green']('\x20\x20\x20\x20!python3')),console['log'](a0L[bH(0x333)](bH(0x1a1))),console['log'](a0L[bH(0x333)](bH(0x33f))),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x2f4))),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x1bf))),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x11b))),console[bH(0x1d3)](),console['log'](a0L[bH(0x2fd)][bH(0x139)](bH(0x2da))+a0L['gray'](bH(0x295))),console[bH(0x1d3)](a0L['white'](bH(0x175))),console[bH(0x1d3)](a0L[bH(0x2b6)]('\x20\x20\x20\x20!cat\x20<<\x20\x27EOF\x27\x20>\x20solve.py')),console[bH(0x1d3)](a0L[bH(0x333)]('\x20\x20\x20\x20from\x20pwn\x20import\x20xor')),console[bH(0x1d3)](a0L['gray']('\x20\x20\x20\x20ct\x20=\x20bytes.fromhex(\x220a2b0e1c...\x22)')),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x367))),console['log'](a0L[bH(0x333)](bH(0x1fb))),console[bH(0x1d3)](a0L[bH(0x2b6)](bH(0x231))),console[bH(0x1d3)](a0L[bH(0x2b6)]('\x20\x20\x20\x20!python3\x20solve.py')),console[bH(0x1d3)](),console[bH(0x1d3)](a0L[bH(0x2fd)][bH(0x139)](bH(0x144))),console[bH(0x1d3)](a0L[bH(0x19f)](bH(0x21d))+a0L[bH(0x2fd)][bH(0x198)](bH(0x3c9))+a0L[bH(0x19f)](bH(0x14d))),console[bH(0x1d3)](a0L['gray'](bH(0x272))),console[bH(0x1d3)](a0L['gray'](bH(0x21a))),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x37a))),console['log'](a0L[bH(0x198)](bH(0x2cb))),console['log'](),console['log'](a0L[bH(0x19f)](bH(0x188))+a0L[bH(0x2fd)][bH(0x198)]('exam\x20<token>')),console[bH(0x1d3)](a0L[bH(0x333)](bH(0x123))+a0L['bold'][bH(0x198)](bH(0x362))+a0L[bH(0x333)](bH(0x133))),console[bH(0x1d3)]();}),B[bb(0x3fc)](()=>{const bJ=bb;a0a8('exam');const F=a0Y();if(F){a0ae(bJ(0x347)+F[bJ(0x134)]['examName']),O();const J=Object[bJ(0x239)](F[bJ(0x147)])[bJ(0x3a9)];return a0af(bJ(0x3e5),J+'/'+F[bJ(0x134)][bJ(0x1ee)]+bJ(0x18d)),console[bJ(0x1d3)](),void console[bJ(0x1d3)](a0L[bJ(0x333)]('\x20\x20exam\x20q\x20[n]\x20\x20|\x20exam\x20answer\x20<n>\x20<A-D>\x20|\x20exam\x20review\x20|\x20exam\x20submit'));}const G=a0a3(),H=a0ak();console[bJ(0x1d3)](),a0ae(bJ(0x177)),console[bJ(0x1d3)](),-0x2407+-0x3a*0x86+-0x135*-0x37===G[bJ(0x1bd)]?(console[bJ(0x1d3)](a0L[bJ(0x139)](bJ(0x17c))+a0L['yellow'](bJ(0x3f1))),console['log'](a0L[bJ(0x333)](bJ(0x22e))+a0L[bJ(0x2fd)][bJ(0x198)]('exam\x20demo'))):(console[bJ(0x1d3)](a0L['green'](bJ(0x322))+a0L[bJ(0x2b6)](bJ(0x3b1)+G[bJ(0x1bd)]+bJ(0x130)+(-0xbe+0x220f*0x1+-0x10a8*0x2!==G[bJ(0x1bd)]?'s':'')+')')),H?(console[bJ(0x1d3)](a0L[bJ(0x2b6)](bJ(0x322))+a0L[bJ(0x2b6)](bJ(0x21c))),console['log'](a0L[bJ(0x139)](bJ(0x17c))+a0L[bJ(0x139)](bJ(0x29e))),console[bJ(0x1d3)](a0L[bJ(0x333)](bJ(0x22e))+a0L[bJ(0x2fd)]['cyan'](bJ(0x2cc)))):(console[bJ(0x1d3)](a0L['yellow']('\x20\x20○\x20')+a0L[bJ(0x139)](bJ(0x1fa))),console[bJ(0x1d3)](a0L[bJ(0x333)](bJ(0x22e))+a0L[bJ(0x2fd)][bJ(0x198)]('exam\x20setup')))),console['log']();});}
|
|
1
|
+
(function(z,B){const aX=a0B,F=z();while(!![]){try{const G=-parseInt(aX(0x2ea))/(0x3d5*-0xa+-0x2bb*-0xd+0x4*0xb5)*(-parseInt(aX(0x476))/(-0x16d*0x1+0x200a+-0x1e9b))+parseInt(aX(0x257))/(-0x18dd+-0x2107+0x225*0x1b)*(-parseInt(aX(0x254))/(0x52*-0x17+-0xa45+0x11a7*0x1))+-parseInt(aX(0x41a))/(0xfb0+0x1177+-0x1091*0x2)*(parseInt(aX(0x3ef))/(-0x25ca+0x4*-0x48f+0x4*0xe03))+-parseInt(aX(0x4d8))/(0x19f1+-0x24f5+0xb0b)+-parseInt(aX(0x348))/(-0x2415+-0x168e+-0x17*-0x28d)*(-parseInt(aX(0x2e4))/(0x42f+0x1343+0xd*-0x1cd))+-parseInt(aX(0x200))/(0xb07+0x5*-0xb1+-0x8*0xf1)*(-parseInt(aX(0x276))/(0x4d*0x1d+-0x113+-0xb*0xb1))+-parseInt(aX(0x319))/(-0x1*-0x1073+0x1c62+-0x2cc9);if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,0x236e9+-0x528e+0xbd*0x3d1));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';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';function a0B(a,b){a=a-(0x12*-0x187+-0x2c0+0x1*0x201d);const c=a0z();let d=c[a];if(a0B['ZHWuYF']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x71*-0x1d+-0x1bd2+0x289f*0x1,o,p,q=-0x885+0x2be+0x5c7;p=i['charAt'](q++);~p&&(o=n%(-0x1*-0x1f6a+0x1*0x22c5+0xd*-0x517)?o*(-0x168a+0x1*0xbed+-0x1b*-0x67)+p:p,n++%(0x5*-0x303+0x2563+-0x1dc*0xc))?l+=String['fromCharCode'](-0xb73*0x1+-0x2e6*-0xd+-0x22*0xbe&o>>(-(-0x1*-0x1d6b+-0x76d*0x4+0x4b)*n&-0x30b*-0x7+0x2707+-0x3e*0xf9)):-0x2*-0x235+0x5*-0x371+-0x28f*-0x5){p=j['indexOf'](p);}for(let r=-0xaf6*0x2+-0x857+-0x3d*-0x7f,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0x220*-0x4+0x205a+-0x28ca))['slice'](-(-0x948*0x3+0x1e22+0x8*-0x49));}return decodeURIComponent(m);};a0B['ZNuDdW']=e,a0B['uUKDJz']={},a0B['ZHWuYF']=!![];}const f=c[-0x1*-0x127c+-0xc*-0x79+-0x1828],g=a+f,h=a0B['uUKDJz'][g];return!h?(d=a0B['ZNuDdW'](d),a0B['uUKDJz'][g]=d):d=h,d;}const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const aY=a0B,G=a0W(),H={};H[aY(0x3bf)]=aY(0x314),fetch(aY(0x47c),{'method':aY(0x498),'headers':H,'body':JSON[aY(0x283)]({'type':B,'lang':G[aY(0x27d)]||'en','timestamp':new Date()[aY(0x22b)](),...F}),'signal':AbortSignal[aY(0x31d)](-0x946*0x3+0x17f0*0x1+0x176a)})[aY(0x2f5)](()=>{});}function N(z,B){const aZ=a0B,F=Math[aZ(0x38d)](z/(0x2be+-0x1e9d+0x1c43*0x1)*(0x1*0x80d+0x2*-0xa+-0x7db)),G=0x1*0xbed+-0x19*0x189+0x1a92-F,H=a0L[aZ(0x462)]('█'[aZ(0x37b)](F))+a0L[aZ(0x3ec)]('░'[aZ(0x37b)](G)),J=String(z)[aZ(0x26c)](-0x1*-0x2563+-0x143*-0x11+-0x3ad3)+'%';process[aZ(0x2b5)][aZ(0x423)]('\x0d\x1b[2K\x20\x20'+H+'\x20'+J+'\x20\x20'+a0L[aZ(0x3ec)](B));}function M(){const b0=a0B,z=a0W();return z['ctfdUrl']&&z[b0(0x261)]?new a0V(z['ctfdUrl'],z['token']):(a0aa(b0(0x2d9)),null);}function O(){const b1=a0B,z=a0a1();z&&(new Date()<z?a0af(b1(0x36f),a0L[b1(0x291)][b1(0x35f)](a0ah(z))):a0af(b1(0x23d),a0L['red'][b1(0x35f)](b1(0x2a8))));}function D(z,B){const b2=a0B;return Array[b2(0x3d5)](z[b2(0x2cf)])&&z[b2(0x2cf)][b2(0x47d)](B);}function j(z,B){const b3=a0B,F=Array[b3(0x3d5)](z['bookmarks'])?[...z[b3(0x2cf)]]:[],G=F[b3(0x338)](B);return G>=0x25ae+-0x2015*-0x1+-0x3*0x1741?(F[b3(0x301)](G,-0x1*-0x1d6b+-0x76d*0x4+0x4a),z[b3(0x2cf)]=F,a0Z(z),!(-0x30b*-0x7+0x2707+-0x1*0x3c53)):(F['push'](B),F[b3(0x3dc)]((H,J)=>H-J),z[b3(0x2cf)]=F,a0Z(z),!(-0x2*-0x235+0x5*-0x371+-0x28f*-0x5));}function R(B){const b4=a0B,F={};return F['used']=B['_helpUsed']||-0xaf6*0x2+-0x857+-0x3d*-0x7f,F['max']=B[b4(0x3af)]||-0x220*-0x4+0x205a+-0x28c6,F['perQ']=B[b4(0x486)]||{},F[b4(0x270)]=B['_eliminated']||{},F;}function a0z(){const bK=['icHLEhbSB3jLicyGzxHWzxjPBwvUDcK','igzVCIb0AgLZihnLy3rPB24','8j+pM++4JW','C2nVCMu','q29UBMvJDgLUzYb0BYbLEgfTihnLCNzLCI4UlG','zwDNmtm','icbdDxjYzw50BhKGzMXHz2DLzdOG','zgvTBY1YzxrYEq','icaGiokCKYbZyxzLza','ihjLz2LVBNmP','t24GDgHLig1VBMv5lG','icbB','icaOChjLDMLVDxmGzxHHBsbZzxnZAw9Uigv4CgLYzwqG4OcuignSzwfYzwqGC3rHDguSihn0yxj0Aw5NigzYzxnOihDPDgGGEw91CIbUzxCGDg9Rzw4P','u2LUz2fWB3jL','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','q29UDgvUDc1uExbL','icaGicbbssb0B2TLBNm6icaGicaG','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','ueftu0ve','iokgKIa','lI4VBgLIl2rLBw8TzxHHBs5QCW','zxHHBsbKzw1VlxjLDhj5','uhjLCgfYAw5Nihf1zxn0Aw9UCY4UlG','zgvZy3jPChrPB24','y29UzMLYBq','AwDUB3jL','yMvZDfbLCMnLBNrHz2u','yNm0','u3rHCNrPBMCGDgLTzxiUlI4','CMfUzg9T','uMv2Awv3oIa','zgvHzgXPBMvtzxj2zxjnCW','igzSywDNzwqGzM9YihjLDMLLDY4','icdIMiuGtwfYA2vKigzVCIbYzxzPzxC','B3b0Aw9UCW','y29TBwfUza','igzPCNn0ihrVihnLzsb3Agf0igL0igrVzxmH','AxnbCNjHEq','icaOC2fTzsbHCYb5B3uGANvZDcb0ExbLzcK','icbszxj1BIb3AgvUigzPEgvKoIa','icbeDxjPBMCGDgHLigv4yw0Sihr5CguG','y2vPBa','x3n1yM1PDenVBMzPCM1Lza','ihrVignVBMzPCM0Sig9YigfUExrOAw5NigvSC2uGDg8Gy2fUy2vSoG','C29YDa','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','Cgf1C2u','igrLDgvJDgvK','AhrWu3vIBwL0','icaGievprG','CMvZzxq','icbfEhbLy3rLzdOGms0Yig1PBNv0zxmGWRCGFJe1me1cigrPC2S','icbtDgfYDdOGzxHHBsbZDgfYDca8Awq+','icaGicaGicbLBNrLCIbdvey0quKGy2HHDcdIGjqGyxr0ywnRihrOzsbbssb0yxjNzxqGkhjLy29TBwvUzgvKkq','rxHHBsbLEhbPCMvKigfUzcbJBgvHCMvKlG','icbuCM91yMXLC2HVB3rPBMC6','icaGiezHAwXLzdOG','lI4VBgLIl2v4yw0TC3rHDguUANm','icaGzMLUAxnOigfUzcbZDwjTAxq','igLZigzYzwuSihvUBgLTAxrLzcbWCMfJDgLJzs4','z3jHEq','qw5ZD2vYihnVBwuGCxvLC3rPB25ZigzPCNn0oIbLEgfTiheGmq','zgvTBY1LBNrLCG','mJuYnJeXnfzMsxPzuq','zxHHBsbUyxrPB25Z','icaGicaGicaGia','CgfZC2LUz1nJB3jL','icbzB3vYihj1BG','icaGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3ic0GsNvSidiSidiWmJy','icaGicaGicHpCIbKB3DUBg9HzcbMCM9Tihb5DgHVBI5VCMCGyw5KienirunligjVDgGGiKfKzcbqExrOB24GDg8','sunpqsbezw1Viev4yw0G4OcuiezYzwuGuhjHy3rPy2u','icaGicaGC3vKBYb1CgrHDguTywX0zxjUyxrPDMvZic0TAw5ZDgfSBcaVDxnYl2jPBI9WExrOB24Zihb5DgHVBJmGl3vZCI9IAw4VChL0Ag9UmY4XmIaX','ChvZAa','tg9HzgLUzYbLEgfTCY4UlG','icaGifb5DgHVBIaZlJeZigLZihrVBYbUzxCG4Ocuig1VC3qGq1rgigXPyNjHCMLLCYbSywnRihDOzwvSCY4','icaGign0zJrHAq','u29SAwqGCgLJAY4','tMv3ifPLywXHBMq','DhLWzq','zxHHBuLK','ywrK','icaGid4+pIbJAxbOzxiGpsbbrvmUBMv3kgTLEsWGquvtlK1prevFq0jdlcbPDIK','icaGiokaOIbdAgvJAYb5B3uGAgf2zsbPBNrLCM5LDcaOCgLWlNb5CgeUAw8GBxvZDcbIzsbYzwfJAgfIBguP','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbsq','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','icbYDw4G','icdWN46jiefSBcbXDwvZDgLVBNmGyw5ZD2vYzwqH','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','u291DgGGqwzYAwnH','icdWN5kHifrYEsb0ExbPBMCG','icaGia','zMfPBgvKugfJA2fNzxm','r2HHBMe','C19JDgy0ywK','icaGieXHBMC6icaGia','DgvZDa','uhL0Ag9UidmGBM90igzVDw5KlG','ifSGxsaG','r3jHzgLUzY4UlG','icaGig1HCMS','rxHHBsaI','icdcTYbzB3vYig5HDgLVBMfSig9Yz2fUAxPLCIb3AwXSigfUBM91BMnLihnLBgvJDgLVBIbYzxn1BhrZlG','iIaYpI9KzxyVBNvSBa','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','icbgAwX0zxiGyNKGy291BNrYEtOGzxHHBsbSAxn0ifbflcbLEgfTigXPC3qGq04Sic4UlG','icaGicaGicaGkgn0zJrHAsK','nufzsLrmzq','icboyxrPB25HBcbsB3vUzcaXifnLBgvJDgLVBIbLEgfTCYbHCMuGyMvPBMCGChjLCgfYzwqU','y29TCgXLDgvKqxq','zgvTBY1MCMvL','iokCKYaGka','Dg9Vx29Sza','ihn0AwXSigzSywDNzwqGzM9YihjLDMLLDZOG','lI4VBgLIl2nVBMzPzY5QCW','vw5PDgvKieTPBMDKB20','D3jPDgu','CgvYuq','igfUC3DLCNmU','r0vu','u2nVCMu','zxHHBvDHExntyxzLzfrV','y29UzMLYBwvKqxq','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','vMfSAwrHDgLUzYb0B2TLBI4UlG','icdIMQaGieXfu1mGveHbtIaXie1jtLvursbmruzu','quXm','icdIHPiG','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','icbszxzPzxCGDw5HBNn3zxjLzcbXDwvZDgLVBNm6ia','ieLdt0f7Ew91CL9MBgfNFq','vxnLicjLEgfTihjLDMLLDYiGDg8Gy2HLy2SGChjVz3jLC3mGB3iGiMv4yw0GC3vIBwL0iIb0BYbZDwjTAxqU','DhjPBq','icdIL4SG','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','zxHHBsbYzxnLDa','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','icbgAxjZDcbLCNjVCIbKzxrHAwWGkgzVCIbKzwj1z2DPBMCPoG','iokgKIbIywnRihrVigv4yw0Sig5HDMLNyxrLihDPDgGG','icaGiokrOsa','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','ueLm','C3vKBYbHChqGAw5ZDgfSBcaTEsbUB2rLANmGChL0Ag9UmY1WAxaGChL0Ag9UmY12zw52','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqUiev4yw0Gy2XLyxjLzc4','C3vKBYbUCg0GAw5ZDgfSBcaTzYbPy29HlwnSAq','icaGigjHy2S','u291DgGGs29Yzwe','t3rOzxi','q291BNrYEq','zwXPBwLUyxrL','yMfJAW','icbuAw1LoIaGica','zxHHBvDHExngB3vUza','icbuBYbJB250Aw51zsb0AgLZigv4yw06','EJmTC29SDMvY','rxHHBsbZDgfYDgvKisbuAw1LCIbPCYbYDw5UAw5NlG','u3jPieXHBMTH','icbezxrLy3rLzdOG','rwD5Chq','icaGigv4yw0Gyw5ZD2vYidXUpIbjq09bEY4UlN0','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','icbzB3vYigfUC3DLCJOG','icdWN5kHie9WDgLVBIa','cIaG','icbtDgvWlwj5lxn0zxa6','qNjHEMLS','icbozxH0ihn0zxa6ia','icaGicbuAguGDg9Rzw4GAxrZzwXMigLZie5pvcbYzxzVA2vKihnLCNzLCI1ZAwrLlIbjzIb5B3vYihnLC3nPB24GAxm','ihrVihnLzsb5B3vYihjLC3vSDhmH','CgfZC2vK','iefjihn5C3rLBxmU','zxHHBsa8Dg9Rzw4+','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','icaGig1VCMuGAgvSCa','Dwj1BNr1','Dg9vChbLCKnHC2u','icaGidmUieLUC2LKzsbvyNvUDhuSigLUC3rHBgWGtM9Kzs5QCYaYmIaRifb5DgHVBIb0B29SCYaRigLJB2e6','q29TCgXLDguH','ChjLDG','z3jLzw4','BwfW','icbnzxrOB2qGmtOGt25LlwXPBMvY','zw1VAMK','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl21Hy29ZlW','uMv0CNKGB25SEsb0AguGCxvLC3rPB25ZihLVDsbNB3qGD3jVBMCGBgfZDcbKzw1Vigf0DgvTChq','BgvUz3rO','icaGihDPBMDLDcbPBNn0ywXSifb5DgHVBI5qExrOB24UmY4XmG','D2LUmZi','l2fWAs9Py29Hl2v4yw1ZlW','zxHHBsbSAxn0ia','zxHHBq','qNvYDw5KAq','rwXPBwLUyxrLig9Uzsb3CM9UzYbVChrPB24GkgXPBwL0zwqGDxnLCYK','ihbHy2THz2vZigLUC3rHBgXLzc4','z2v0vgLTzq','C3rKzxjY','D2L0Aa','CMvTB3zLtgLZDgvUzxi','q3rYBcTd','mNfLEvjLBq','ChjLlxDYAxr0zw4GCgvYihf1zxn0Aw9U','khbYzxnZigfUEsbRzxKGDg8GC2TPCcK','icdIL48G','icaGicbLEgfTigXPC3qGueu','sw52ywXPzcbLEgfTihrVA2vU','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','Aw5JBhvKzxm','icaG8j+AGcaGu2vJDgLVBIaYoIbbstrdveyG4OcuiefjigLZihLVDxiGDgvHBw1HDgu','icaGideUifr5CguG','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','icaGihn1zg8GDxbKyxrLlwfSDgvYBMf0AxzLCYaTlwLUC3rHBgWGl3vZCI9IAw4VChL0Ag9UmYbWExrOB24Zic91C3iVyMLUl3b5DgHVBJmUmtiGmq','Cvr1Dg9YAwfS','icbbC3nPC3rHBMnLoG','BNvTyMvY','oJaW','x2HLBhbqzxjr','y2HHBMDLzcbMCM9Tia','zNvUy3rPB24','ihrVigfZAYbbssbMB3iGAgvSCdO','BMv3','icaGieeVqI9dl0q','icbr','icbdB3vSzcbUB3qGCMvHy2GGC2vYDMvYigzVCIbOzwXWlIbdAgvJAYb5B3vYignVBM5Ly3rPB24U','icaGicaGigvUDgvYifzmqsbHDhrHy2SGBw9KzsbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','ywn0Aw9U','AwnVyq','icaGiokrOca','icaGzxHHBsbJzw50zxiUiezPBMfSihnJB3jPBMCGyw5KihnLBgvJDgLVBIbHCMuGzgvJAwrLzcbIEq','icbvyNvUDhuGlYbezwjPyw4GkgrLywrZBMfRzxmGufbbktO','C3vJy2vLza','oIdIGjq','icboBYbHy3rPDMuGzxHHBsbZzxnZAw9UihrVihjLC2v0lG','l2HLBha','ue9tva','CxvLC3rPB24','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','icbjBIb0AguGBwvHBNrPBwuSihrYEtOG','ihrOzsbJB21WzxrPDgLVBI4','ixb5DgHVBJmGC29SDMuUChK','AwnVyt4','zMXVB3i','ugHPBgLWCgLUzxm','ig1PBNv0zxmGBgvMDc4Gs2vLCcb0AguGCgfJzsbZDgvHzhKU','Bw9Yzs1OzwXW','lI4VBgLIl3bSyxrMB3jTlMPZ','icbbCMnOic8GtwfUAMfYBZO','ihrVigXLyxzLigLJB2e','icaGicaGicaGicaGicaGicaGzxmGWRCGEMGGWRCGAMeGWRCGA28GWRCGyxiGWRCGzNiGWRCGChq','icaGicfWExrOB24ZihnVBhzLlNb5','uxvLC3rPB24G','igfUzcbWCMvZCYbfBNrLCIb0BYbSzwf2zsbPy29H','wYbD','Axnoyu4','ig9YigXLyxzLihDPDgGG','sunpqsboyxrPB25HBcbtzwXLy3rPB24GrxHHBq','zwDNnW','ig5VDcbMB3vUzcaOms0','icbpCIbKB3DUBg9HzcbPBNn0ywXSzxi6','icaGid4+pIbWCMLUDcHJAxbOzxiUzgvJCNLWDcHKyxrHksK','vxnLCI1bz2vUDa','icaGiokrOIa','ic8G','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','yxr0zw1WDhm','ixzPihnVBhzLlNb5','icaGC2vJDxjPDhKGDgfZA3mG4OcuignYExb0BYWGD2vIlcbMB3jLBNnPy3mSihb3BI4','ic1TigvUC3vYzxbPCcaTlxvWz3jHzgu','lcbUB3qGEw91CIb0zwfTBwf0zq','C3rYAwTLDgHYB3vNAa','Cgn0','ihLLDc4','y2XLyxi','zMLUzeLUzgv4','icaOAgvSCca','uMvTB3zLihjLDMLLDYbMBgfNigzYB20GysbXDwvZDgLVBG','icboB3rLoIb5B3uGDhLWzwqGysbKAwzMzxjLBNqGDg9Rzw4UievHy2GGzxHHBsb0B2TLBIbPCYbIB3vUzcb0BW','ugXLyxnLihbYB3zPzguGEw91CIbMBgfNoIbLEgfTigfUC3DLCIa8BJ4GsunpqxT5B3vYx2zSywD9','icdIMQaGiefUigv4yw0GAxmGywXYzwfKEsbPBIbWCM9NCMvZCYbVBIb0AgLZigrLDMLJzs4','icbtDhvJAZ8Grw1HAwWGEw91CIbZzwXLy3rPB24Gy29VCMrPBMf0B3iGD2L0Acb0AguGC2nYzwvUC2HVDcbHyM92zs4','icaGicdcTYbtzxbHCMf0zsbIDwrNzxq6ia','ihnRAxbWzwq','ig1PBIbYzw1HAw5PBMC','DgfYz2v0','BgLUDxG','icbfEgfToIaGica','zMLUza','ugvYy2vUDgfNzq','icbozxCGzxHHBxmGyxjLignVBwLUzYbZB29Uiq','x2XHC3rr','ic1TihbPCcaTlxzLCNnPB24','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','icaGiokgKIa','lIboBYb0Aw1LCI4GrNjLzsbWCMfJDgLJzs4','BNvTChK','BMfTzq','q3j5ChrV','q2XVC2uG4OcuihDLj2XSihjLDMLZAxqGDgHPCYbVBMuU','mtqWmtK4ogrvsMvVCG','ienurJrbsq','uMv2Awv3igfSBcbHBNn3zxjZigjLzM9YzsbZDwjTAxr0Aw5N','zgf0yq','icbzB3uGD2LSBcbZDwjTAxqG','CgLWzq','icaGigv4yw0GCsaXlI4','zMfPBa','BMv4Da','AgLUDcbHic8GyIaVigm','rhvYyxrPB24','sw5KB25LC2LH','icbfEgfTCgXLoIa','tg9HzgLUzYbXDwvZDgLVBNmUlI4','icaGicjtAg93ig1LigHVDYb0BYb1C2uGC3rYDwn0lNvUCgfJAYi','icdILRGG','icaGidiUieLUifbVD2vYu2HLBgWSigLUC3rHBgWGuhL0Ag9UihDPDgGGCgLWoG','icaGicaGia','Dw5TyxjRifTUxq','AM9PBG','ihLVDsbNB3qGD3jVBMCU','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMv0CNK6','icaGiokgKIbIj0HLBgXVjW','ANnVBG','4PQGicbfweLuigLJB2eGzMLYC3qG4Ocuihn1zg8Gy2fUBM90ihj1BIbPBNnPzguGDgHLihbYB21WDa','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZlW','icaGiefjigj1zgDLDdOGmJvlihrVA2vUCYbMB3iGquK0q1rgicSGmJvligzVCIbdvey0quK','u3rHCNqGDgHLigv4yw0/ifrOzsb0Aw1LCIb3AwXSigjLz2LUigLTBwvKAwf0zwX5lG','zhvYyxrPB25nAw51DgvZ','icaGica','icHr','icbeAxjLy3rPB25HBcbMzwvKyMfJAW','icbiB3CGDg8GDxnLifb5DgHVBIbPBIbjq09bienmsq','zxHHBsbXide','C3rKAw4','CgXHDgzVCM0','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','Aw5JB3jYzwn0sw50CM8','icdWN5Miie1HEcaYigHLBhbZihbLCIbXDwvZDgLVBIdIGjqGEw91igfSCMvHzhKGAgf2zsbHiduWlZuWiq','ihjLBwfPBMLUzYK','AhrWtgfUzW','yw5ZD2vYidXUpIa8y2HVAwnLlI4UpG','rMfPBgvKihrVigXVywqGzxHHBxm','Ew91CKfUC3DLCG','y3vYBcaTzNnttcbODhrWCZOVl2rLyI5UB2rLC291CMnLlMnVBs9Zzxr1Cf8YmI54ihWGC3vKBYaTrsbIyxnOic0','sgfJAYb0AguGquKNCYbNDwfYzhjHAwXZ','icbqBgvHC2uGCMuTDhLWztOG','icdIMQaGuhL0Ag9Uia','C3vIBwL0ieLdt0f7lI4UFq','uhjLCgfYAw5NlI4U','zgvTBW','u3rYB25NzxiGAgvYztOGia','rMXHz2DLzcbMB3iGCMv2Awv3','mtbKwK5XA2y','ic0TDMvYC2LVBG','zxHHBsbOzwXW','zwXPBwLUyxrLzca','zxHHBu5HBwu','u3vIBwL0igL0igzPCNn0oIbLEgfTihn1yM1PDa','CMvWBgfJzq','ywK0y3rMrgvZyW','yNjLDW','qwjHBMrVBIbJDxjYzw50igv4yw0GC2vZC2LVBIbHBMqGD2LWzsbSB2nHBcbZDgf0zsaOCMvJB3zLCNKGB25SEsK','uhjVz3jLC3m','C2XPy2u','ixb5DgHVBJmGlI4U','r2vYBwfUEq','BMv4DeXHyMvS','tg9HzgLUzYbLEgfTlI4U','icaGieHPBNrZoIaGieeOnsKGqIGZksbdkdePiokaLcbWCMfJDgLJywWGB25SEq','icaGiokaOIbuCNK6ia','BM9KztPMCW','CgLSBg93','uMvZDwX0igXVywrLza','AwnVys1JBgK','BM9KztPJAgLSzf9WCM9JzxnZ','icaGicbgCMvLignOyxq6icaGicaGyw55ig1LC3nHz2uG4OAsiefjihrLyw1TyxrL','icbVBMuGzgv2AwnLicSGB25LihnLC3nPB24UifLVDsbJyw5UB3qGC3DPDgnOihrVA2vUCYbTAwqTzxHHBs4','A2v5CW','rw50zxiGzxHHBsb3AxrOigfJy2vZCYb0B2TLBIaOBM8GBg9NAw4GBMvLzgvKkq','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','yw5ZD2vY','icbtzxj2zxiGzgLKig5VDcbYzxr1CM4Gysb2ywXPzcbVChrPB24UifrYEsbHz2fPBI4','icbSyw5NigzYimk3igXHBMCGyxiGWRCGBgfUzYbWDcdcTYaXnsbSyw5NDwfNzxmGC3vWCg9YDgvK','C3LTChK','rNjHBMnL','DdeW','zxHHBsbTyxjRia','zxHHBvDHExntAgvSBa','qw5ZD2vYzwq6ica','icaGicbtB2X2zsa','icbpCIb0ExbLia','ugfZCW','icaG','tgfVCW','CxvLC3rPB25Z','Dg9ju09tDhjPBMC','itXJBwq+ia','ihbHy2THz2vZlIbszxrYEwLUzY4UlG','u3vIBwL0igv4yw0GzM9YigDYywrPBMCGkhvZztOGiMv4yw0GC3vIBwL0ignVBMzPCM0IigzVCIbYzwfSigv4yw1Zkq','qMfUz2XHzgvZAa','icaGigfPngn0zG','Aw5FChjVz3jLC3m','icbnzxrOB2qGmZOGu2nYAxb0igzPBgu','Dg9tDhjPBMC','icaGidiUieLUihLVDxiGC2HLBgWSihj1BJO','icbxAw5KB3DZicH3Aw5NzxqSihjLy29TBwvUzgvKktO','y3LHBG','yw5ZD2vYx3n1yM1PDhrLza','ywXS','icdcTYaG','rMfPBgvKihrVihn0yxj0igv4yw0','y291BNrYEq','AxnuvfK','vgLTzq','icbMyxiGBw9YzsbZBw9VDgHSEsbPBNnPzguGv1nmmIbvyNvUDhuU','CMvZDwX0ifTPzf0','q2HPBMe','AgfZ','C3vKBYbHChqGAw5ZDgfSBcaTEsbWExrOB24ZlxbPCcbWExrOB24ZlxzLBNy','icaGicdcTYbbssbPCYb5B3vYia','icaGiokrOYa','Ew91CIbmAw51EcbKAxn0CM8','BM93','icaGihzSytrJDgy','icaGWRCGmtuGBgfUz3vHz2vZlcbYzwfSlxrPBwuGquKGDhjHBNnSyxrPB24','CxvLC3rPB25dB3vUDa','zxHHBsbWCMv2','icbqCMv2Aw91CYbZzxr1CcbOywqGB25SEsa','ihf1zxn0Aw9U','icbtzwuGywXSigzSywDNzwqGCxvLC3rPB25ZigLUoIa','icaGiokrPca','icbzB3uGC3rPBgWGAgf2zsa','AhrWsNvTCa','icdIMiyGuq','icbqCMvZCYbfBNrLCIb0BYbIzwDPBI4UlIa','icaGig5LEhq','mJyWmZztzgjry3a','icHXDwLJAYb0yxnRCYK','AgvSCfvZzwrvCa','mtGWEKjeB1vQ','icdcTYblzwvWihnOyxjWzw5PBMC6ia','zwDNmte','zxHHBsbZDwjTAxqG','igzPCNn0lG','ihvUzMXHz2DLzc4','Bwf4','icGR','igfUC3DLCMvKkq','zxHHBsbUzxH0','Dg9Rzw4','AhrWtw9YzuHLBha','zxHHBsbYzxzPzxC','CdmW','iokaLcb5B3uGy2fUBM90ignOyw5Nzsb0AgvTigfMDgvYihn1yM1PDc4','icaGicaGC3vKBYbHChqGAw5ZDgfSBcbWExrOB24ZlJeYihb5DgHVBJmUmtiTDMvUDG','icbuExbLia','yMvZDa','C2HVD25xyxjUAw5NCW','icbpChrPB25ZigHHDMuGyMvLBIbYzxnODwzMBgvKlG','Dg90ywW','CgfKu3rHCNq','iokaLcbZzwuGzNvSBcbLCNjVCG','icbtDwjTAxqGBM93ihDPDgG6ia','C2nHChK','zwXPBwLUyxrLza','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','sw5ZDgfSBcbqExrOB24Gzw52AxjVBM1LBNqGzM9YihbYywn0AwnHBcbLEgfTihf1zxn0Aw9UCW','zw50CMLLCW','zwDNmW','zMLUywW','ntq4mZuZm1Pzv3fvDq','igjVBNvZigHLBhaGDw5SB2nRzwqHicG','igLZigeGChjHy3rPy2fSihf1zxn0Aw9UiokaLcbHBNn3zxiGD2L0AcbHigzSywCSig5VDcbHigXLDhrLCI4','icdIMQaGiduGBwLUDxrLCYbYzw1HAw5PBMC','icaGidiUieLUigfUiefKBwLUAxn0CMf0B3iGug93zxjtAgvSBcWGCNvUoG','icbqyxbLCIbbic8GqIbWCMfJDgLJywWGCxvLC3rPB25Zig5LzwqGvw5PEcb0B29SAw5NihrOyxqGCNvUCW','icdcTYbszwzLCMvUy2uGz3vPzgvZigzVCIaZocb0B29SCZOG','BgfUz3vHz2u','Bwf0y2G','qw5ZD2vYihf1zxn0Aw9Uie4GkeeVqI9dl0qGzM9Yie1dusWGsunpqxTMBgfNFsbMB3iGChjHy3rPy2fSkq','y3rMzfvYBa','D2LUz2v0igLUC3rHBgWGls1PzcbqExrOB24UuhL0Ag9UlJmUmtiGlwu','icbVzIa','C3rYAw5NAwz5','yMvHDxrPzNvSC291Cdq','icaGvgHLigzPBMfSihnLy3rPB24GzMXPChmGDgHLihnJCMLWDdOGAw5ZDgvHzcbVzG','iIbPCYbPBIbWCM9NCMvZCY4','BwLZC2LUzW','CxvPDa','icaGicaGicbLBNrLCIbbstrdveyGy2HHDcbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','AgvSCa','icaGutmX4OctmZGGkdGGCxvLC3rPB25Zimk3idyGChrZigvHy2GP','icaGicbiAw50CYbbl0iVqZOGicaG','igzHAwXLzdOG','ihvUyw5ZD2vYzwq6ia','Bsb0B3rHBa','4OcuihLVDsDYzsaXlZqGDgHYB3vNAcb0AguGzxHHBq','EwvSBg93','CM9Wz2fKz2v0','icaGicaGicbqqvriiIaRicjjBNn0ywXSihbPCciGzhvYAw5NihrOzsbPBNn0ywXSzxiUkq','uMvHzhKH','rxHHy3rSEs4','icbkDxn0igfKzcaHigjLzM9Yzsb0AguGy29TBwfUzdO','C19HAtrJDgy','yw5ZD2vYCW','AhrWqMfJAW','C3vIC3rYAw5N','4PQGicbfweLuigLJB2eGzMLYC3qG4OcuigLUC3rHBgXLCIbJyw5UB3qGCNvUigLUC2LKzsb0AguGChjVBxb0','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIa','icbuCNvZDcb5B3vYigLUC3rPBMn0igfUzcbWAwnRig9Uzse','icaGicbfBNrLCIbJAgf0oIaGicaG','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','icdINjCG','icaGicbuB2TLBJOG','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','icaGsg93ihrVihDVCMS','iokaLcbZD2L0y2GGD2L0AdOGBgfUzYa8y29Kzt4','icaGicHYzwXHDgL2zsb0BYbVDgHLCIbJyxrLz29YAwvZiokaLcbUDw1LCMLJihnJB3jLCYbNBYb0BYb5B3vYigv4yw0Gy2vUDgvYkq','ChLJCNLWDg9KB21L','icaGigzYB20GChDUigLTCg9YDcb4B3i','rvHqsvjfra','icaGiefjoIaGicaGidi1sYbbstrdveyGkYaYnuSGq1rgnefjihrVA2vUCW','icbtDgfYDgLUzYbLEgfTlI4U','CgfKrw5K','icaGid4+pIbLEgL0kcK','ihbHy2THz2vZigLUC3rHBgXLzc4G','z3jHzgLUzW','icHJB21WBgv4ihnVBhv0Aw9UCYK','vhvYA2v5','ywLvC2fNzq','icbbBNn3zxjZigfYzsa','icbTywnpuYaOsg9TzwjYzxCSihjLy29TBwvUzgvKktO','BgfUzYa8y29Kzt4','C3rKB3v0','zxHHBsbZDwjTAxq','icbgzwrVCMeGlYbssevmoG','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','ihWG','ic1TihbPCcbPBNn0ywXSihb3BNrVB2XZ','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','qxzHAwXHyMXLiev4yw1ZicG','C3rHCNq','icbdAgvJAYbLEgfTCYbMB3iGEw91CIbJB3vUDhj5oG','zhvYyxrPB25nAw4','C2v0Dxa','icbbC3nPC3rHBMnLihvZzwq','icbszwLUC3rHBgWGuhL0Ag9UidmUmtiGD2L0AcbWAxaGyNvUzgXLzcWGDgHLBIbYzxrYEtO','icdIMQaGifjLC2v0ihDPBgWGywjHBMrVBIb5B3vYign1CNjLBNqGzxHHBsbZzxnZAw9Uig9UihrOAxmGzgv2AwnLlG','x2vSAw1PBMf0zwq','icbbzNrLCIbPBNn0ywXSAw5NlcbYDw46ia','icbkDw1WihrVigeGzMXHz2DLzcbXDwvZDgLVBJOG','tMfTzq','tM8GDgLTzsbSAw1PDa','icaGicbfEgL0ignOyxq6icaGicaG','y2f0zwDVCNK','l2fUC3DLCG','y2f0zwDVCNLtDgf0CW','twfSyxLZAwe','l2fWAs9Py29Hl3nLCNzLCI10Aw1L','yM9VA21HCMTZ','icdIJ7aGmtaGBwLUDxrLCYbYzw1HAw5PBMC','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','icbtDgfYDcbHifb5DgHVBIbZzxnZAw9Ulcb0ExbLignVBw1HBMrZig9UzsbIEsbVBMu6','icaGsg93ihrVigf0DgfJAW','yxr0ywnRAw5N','yNjLDYbPBNn0ywXSihb5DgHVBKaZlJeY','zwDNnq','tg9HzgLUzYbYzxn1BhqUlI4','ihbVAw50CW','tM90ignVBM5Ly3rLzc4GuNvUoIbQB2LUidX1CMW+','C3rHCNrLzef0','icaGiokaOIbpBIblywXPl1vIDw50DsaYmIS6ig1Pz2H0ig5LzwqGChL0Ag9UmY4XmI1KzxyGkYbIDwLSzc1LC3nLBNrPywW','qw5ZD2vYzwq','icaOugfWzxiGqYb0B2TLBNmGC2TPCcb0AgLZigDHDguG4OcuifbHCgvYiemGAxmGtunrlw9UBhKP','icaGicbcDwrNzxqGFJiGBwLUihbLCIbWCMfJDgLJywWGCxvLC3rPB24UifLVDsbJyw4Gy29TzsbIywnRihDPDgG6ig5LEhqGlYbWCMv2lG','icbjq09big9MzMLJAwfSBhKGC3vWCg9YDhmGv1nmmIbVBIbxAw5KB3DZlG','B25Jzq','AhrWuMv2Awv3','Dg9mB3DLCKnHC2u','igfUC3DLCMvK','ndmYq0jAB1Dr','icbLEgfTiheGw25Dicb8igv4yw0Gyw5ZD2vYidXUpIa8qs1epIb8igv4yw0GCMv2Awv3ihWGzxHHBsbZDwjTAxq','DxnLza','igf0DgvTChrZ','ihrVihDPCguGBg9JywWGC3rHDguSihrOzw4GCMuTzw50zxiGDgHLig5LDYb0B2TLBI4','icbuAgLZihf1zxn0Aw9UihjLCxvPCMvZihLVDsb0BYb1C2uGAgvSCcbIzwzVCMuGyw5ZD2vYAw5NlG','ndG1ntK2DMXdtufS','icbozxCGBwvTyMvYpYbdB250ywn0oIbHy2nYzwrPDgf0Aw9UqgLJB2eYmdi2lMf1','icaGiokaOIbtzxj2zxiGyxv0BY1MAw5HBgLZzxmGEw91CIbHBNn3zxjZigLMihLVDsbKBYbUB3qGC3vIBwL0igjLzM9Yzsb0AguGzgvHzgXPBMu','ihf1zxn0Aw9UCYbKCMf3BIbMCM9TigeGCg9VBcbVzIa','icbxCMfWihvWigfUzcbZDwjTAxq6ia','C3vIBwL0DgvK','qwXTB3n0ihjLywr5lI4U','icdINjmGvg9Rzw4GCMuTyxr0ywnOzwqGDg8GEw91CIbPBI1WCM9NCMvZCYbLEgfTlG','CgvYy2vUDgfNzq','vhLWzsaIzxHHBsbZDwjTAxqIihrVigzPBMfSAxnLig5VDYWGB3iGDgHLihnLCNzLCIb3AwXSigf1Dg8TzMLUywXPC2uGD2L0AgLUidmWig1PBNv0zxmU','zgLT','y2f0y2G','ihnOyxjLzcbHy3jVC3mGutm54Octnda','DxrMltG','igvSAw1PBMf0zwqH','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','u3rHDhvZ','yNjLDYbSAw5Ric0TB3zLCNDYAxrLihb5DgHVBKaZlJeY','sw5KAwe','rw52AxjVBM1LBNqGCMvHzhK','uMvJB21Tzw5Kzwq6ignVBxbSzxrLigrLBw8GzMLYC3q','icdWN5Ieie9UBhKGmIbVChrPB25ZigXLzNqG4OcuihLVDsbNB3qGDgHPCYe','icaGigjYzxCGAw5ZDgfSBcbWExrOB25amY4XmG','C3bSAwnL','icaG4PElicbtDwjTAxnZAw9UigfJy2vWDgvK','BMf0Aw9UCW','imk3ia','icdINjmGuhL0Ag9Uia','icbbssbbC3nPC3rHBNq','CMv2Awv3','zxHHBsbKzw1V','icdINjmGrxHHBsbZDgf0zsbJBgvHCMvKlG','C3bSAxq','D2HPDgu','icaGienVBxbSzxrLzdOG','icaGicfWExrOB24Z','CMvM','C3rHDhvZ','yw5ZD2vYzwq','AgvSCfjLBw92zq','ywK0y3rMpG','zgfYD2LU','yxbWBgLJyxrPB24VANnVBG','ihbYB21WDcWGC2fTzsbZAgfWzsbHCYbKzw1V','AhrWtwfYAW','zxHPDa','zxHHBsbHBNn3zxiG','mZe5otaWoeLdtwvNsq','ihbVAw50CYaOntaLkq','yxr0ywnOzwreyxrH','tgLZDcbHDMfPBgfIBguGzxHHBxmGkg9WDgLVBMfSoIaYlwXLDhrLCIbJB3vUDhj5ignVzguP','DgLTzw91Da','x2HLBhbvC2vK','zxHHBsbZzxr1Ca','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ChDU','yw5ZD2vYx2nOyw5Nzwq','icbmyw5NDwfNztOG','ic1TihbPCcbPBNn0ywXSic0Tzhj5lxj1BIbWAxaGmJ4Mmq','cGPgDwXSigf0DgfJAgvKigrHDge6cG','ica+ia','Cg9PBNrZ','AgvSCefSBfvZzwq','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','u3bLy2LMEsbLEgfTieLeoIbLEgfTihjLC3vSDca8Awq+','imk3ifbPy2SGB25LigfUC3DLCIbWzxiGCxvLC3rPB24','vgLTzsb1C2vKoIa','icbozwvKig1VCMu/ifr5Cgu6ia','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','xsaG','icdIMQaGiezjtKfmifnvqK1ju1njt04G4OcuihbSzwfZzsbJB25MAxjT','icaGicjiB3CGzg8GssbKzwnYExb0ieffuY1dqKmGAw4GuhL0Ag9UpYi','icbjBNn0ywXSAw5Nia','icaGicbqCM9TChqGAw5Qzwn0Aw9Uimk3igfKDMvYC2fYAwfSigfUywX5C2LZimk3iefjigf1zgL0Aw5N','ihbHy2THz2vZlI4U','ls11C2vYic0TyNjLywSTC3LZDgvTlxbHy2THz2vZ','icdINjmGCgLWigLUC3rHBgXLza','ywK0y3rM','Aw5KzxHpzG','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','icbcB251CYbOzwXWigfSCMvHzhKGDw5SB2nRzwqU','4O+XifrPBwuGCMvTywLUAw5NoG','icaGihn1zg8Gyxb0ihvWzgf0zq','icbuBYbJB25MAxjToIaG','BwfNzw50yq','uhL0Ag9Uia','icbrDwvZDgLVBNmGAw4Grw5NBgLZAc4Gvg8GC3DPDgnOigXHBMD1ywDLigzPCNn0oG','Dgv4Da','icaGicdILQmG','icaGihn1zg8GywrKlwfWDc1YzxbVC2L0B3j5ihbWytPKzwfKC25HA2vZl3bWysaTEq','zxHHBsbZDwjTAxqGy29UzMLYBq','icaGicHHAtrJDgyP','zxHHBsa','mtaWndK2uvnOq3LV','vw5PDgvKifn0yxrLCW','icbxCML0zsbHic5WEsbMAwXLlcb0AgvUihj1BIbPDdO','Aw50zxjHy3rPB25Z','icaGutm54OctndaGkdiGCxvLC3rPB25Zimk3ide2ihb0CYbLywnOiokaLcbOAwDOzxn0ihzHBhvLisK','AxnsyxC','CgTN','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','icbSyw5NigvZicHfC3bHW7fVBcKGWRCGBgfUzYb6AcaO5lIT5PAhksdcTYbSyw5NigTVicJTLzZQTA3SLRqPimk3igXHBMCGAMeGkoAxPEACRoIQNIK','DMXH','icaGu3LKBMv5lcbbDxn0CMfSAweGimk3icbkDw4GmJCG4OctieP1BcaYlcaYmdi2','uM9VBsb0BYbNCM93oIaGia','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','khnLCNzLCI1HDxrOB3jPDgf0AxzLkq','icaGifLVDsbJyw4GBM93ihvZztOG','uxvLC3rPB25Z','icaGigXHBMC','zgvTB0LUDhjVu2vLBG','icaGieLUC3rHBgWGuhL0Ag9UidmUmtiGyw5KihjLlxj1BIbLEgfTihnLDhvWlG','icaGihn1zg8GCgfJBwfUic1tihb5DgHVBG','vMLLDYbXDwvZDgLVBIaOB3iGywXSihf1zxn0Aw9UCYK','A2v5','icbvC2u6igv4yw0GCMv2Awv3imk3igv4yw0GC3vIBwL0','yM9Sza','icbszwnVBw1LBMrLzcbWyxrOiokaLcbZD2L0y2GGDg8Gv1nmmIaOB25LlxrPBwuSih41ig1PBIK6','icbzB3vYigjLC3q6ia','zw5JB2rPBMC','rxHHBsbfBNzPCM9UBwvUDcbtzxr1Ca','CMvXDwvZDhm','ChL0Ag9UvMvYC2LVBG','zxHWBgfUyxrPB24','icaGigv4yw0GCMv2Awv3','zNjVBq','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl3DPBMrVD3mV','AhrWtMf2','s2vLCcbPDcbPBIbTAw5KigzVCIbYzxzPzxCU','rxHHBxmG4Ocuia','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','icaGWRCGmtuSmdaWkYbJB25JDxjYzw50ihbHCNrPy2LWyw50CW','vgLTzsbszw1HAw5PBMC','icdWN46bicS','y3rMngfP','icaOzgLMzMvYzw50igzYB20GDgHLig9Uzsb5B3uGDhLWzwqP','icdINjmGie1dusbZzwn0Aw9UignVBxbSzxrLiokaLcb3zwXSigrVBMuH','zMLSDgvY','mJuSmdaWihrVA2vUCW','C3rKAw8','ihbVAw50C10','ihjHBMrVBsbXDwvZDgLVBNmGzNjVBsbHihbVB2WGB2yG','tM8GzxHHBsbPBIbWCM9NCMvZCY4','ic1TihbPCcbZAg93ici','CMvWzwf0','ihDHCYbUB3qGzMXHz2DLzc4','vgvHBsb1Ccb3AxrOiefjihrVihnVBhzLienurNm','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','ic1JicjPBxbVCNqG','icaGicbZDgLSBcbHy3rPDMuGyw5Kig5VDcbZDwjTAxr0zwqSihjLlwvUDgvYAw5NihrOzsbZyw1LihrVA2vUihjLC3vTzxmGAxqU','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','Bg9N','CMvZDw1L','C3rHCNqGpgLKpG','sw52ywXPzcb0B2TLBG','icbqCMfJDgLJAw5Nia','BgLZDcbBy291BNrYEv0','u3vIBwL0DgvK','C2v0uMf3tw9Kzq','quKGDg9Rzw5ZoIa','Dw5KzxjSAw5L','BwvZC2fNzq','CM91BMq','BwLU','icaGvgHLC2uGyxjLihrOzsbOyxjKzxn0ihf1zxn0Aw9UCY4Gv29YDgGGmJeLig9MihrVDgfSihnJB3jLlG','zxHHBsbTB3jLlwHLBha','twfJyxu','CMvK','icaGicfWExrOB24Zic1JicjPBxbVCNqGyMfZzty0oYbWCMLUDcHIyxnLnJqUyJy0zgvJB2rLkcDtr1zZyKC4psCPksi','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIb5B3vYignVDw50CNKGEwv0lG','icdINjmG','C3rHCNrfEgfT','iIbPCYbHBhjLywr5igLUihbYB2DYzxnZlG','icaGicbjBNnPzguGy2HHDdOGicaG','AhrWqw5ZD2vY','icbxAgf0ig5LEhq','u3vIBwL0igzHAwXLza','igf0DgvTChq','ic1TihbPCcbPBNn0ywXSici','vwj1BNr1ia','D2HPy2G','icaGicfJyxqGpdWGj0vprICGpIbZB2X2zs5WEq','C2vZC2LVBG','C3rVCa','icbuBYbNBYbIywnRoIaG','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','icbbBNn3zxjZoIa','icbzB3uGy2fUig5VDYbLBNrLCIbHig5LDYb0B2TLBIb3AxrOia','icaGww91CIbHBNn3zxjZigHHDMuGyMvLBIbYzwnVCMrLzcbHBMqGC2vUDcb0BYb5B3vYig5HDgLVBMfS','lI4U','ig1PBNv0zxm','y3rMngfPpG','rw52AxjVBM1LBNqGCMvHzhKHiefSBca','icbizwXWihvZzwq6ia','zwDNmtu','y29YCMvJDa','x2HLBhbnyxG'];a0z=function(){return bK;};return a0z();}function U(z,B){const b5=a0B,F=a0Y(),G=Number(F?.[b5(0x3a1)][b5(0x249)]||-0x948*0x3+0x1e22+0x4*-0x8b),H=Object[b5(0x219)](F?.[b5(0x298)]||{})[b5(0x468)],J=R(F),K=J[b5(0x270)][z[b5(0x484)]]||[],L='ai4ctf'===z[b5(0x3fe)]||b5(0x371)===z[b5(0x3fe)]||'vla'===z[b5(0x3fe)]||z['options']&&!z['options']['A']&&!z['options']['B'];F&&function(Y,Z){const b6=b5;if(b6(0x41d)===Y[b6(0x3a1)][b6(0x3ff)])return;const a0=new Set(Y['shownWarnings']||[]),a1=Number(Y['session']['questionCount']||-0x1*-0x127c+-0xc*-0x79+-0x1800),a2=a0a1();if(-0x13*0x17e+0x1ec8+-0x132*0x2===Z&&a1>=0xbf*-0x2b+-0x1b16+-0x3b53*-0x1&&!a0[b6(0x241)]('p10')){const a3=a2?Math[b6(0x25d)](-0x11f*-0x11+-0x16e4+0x3d5,Math[b6(0x38d)]((a2[b6(0x471)]()-Date[b6(0x246)]())/(0x7253+-0xc1*0x10d+0x72*0x2d5))):null;console[b6(0x382)](),console[b6(0x382)](a0L[b6(0x3ec)](b6(0x3dd))),console[b6(0x382)](a0L[b6(0x236)]('\x20\x20⏱\x20\x20Time\x20check\x20\x20')+a0L[b6(0x3ec)](b6(0x290))),null!==a3&&console[b6(0x382)](a0L['gray'](b6(0x1e8)+a3+b6(0x4a1))),console[b6(0x382)](a0L[b6(0x3ec)](b6(0x3dd))),a0[b6(0x400)]('p10'),Y['shownWarnings']=Array[b6(0x368)](a0),a0Z(Y);}if(-0x391+-0x866+0xc15===Z&&a1>=-0x4aa*0x1+0x24cb+-0x1ff9&&!a0[b6(0x241)](b6(0x264))){Object[b6(0x219)](Y[b6(0x298)]||{})[b6(0x468)];const a4=Object['keys'](Y[b6(0x298)]||{})[b6(0x374)](a5=>Number(a5)<=0x16bd+-0x528+0x1177*-0x1)[b6(0x468)];console['log'](),console['log'](a0L[b6(0x462)](b6(0x417))),console[b6(0x382)](a0L[b6(0x35f)]['green'](b6(0x373))),console[b6(0x382)](a0L['gray'](b6(0x1e8)+a4+'/30\x20multiple-choice\x20answered')),console['log'](a0L['white']('\x20\x20↓\x20\x20Practical\x20section\x20begins\x20at\x20Q31.')),console['log'](a0L[b6(0x3ec)](b6(0x2de))),console[b6(0x382)](a0L['green'](b6(0x417))),a0['add'](b6(0x264)),Y[b6(0x269)]=Array[b6(0x368)](a0),a0Z(Y);}}(F,z[b5(0x484)]),F&&L&&function(Y,Z){const b7=b5;if(b7(0x41d)===Y[b7(0x3a1)][b7(0x3ff)])return;if(Number(Y[b7(0x3a1)]['questionCount']||-0x7*0xe8+-0xb39+0x11b9)<0xec1+-0x16f6+0x85d)return;const a0=new Set(Y[b7(0x269)]||[]);Z>=0xec5*-0x1+0x6*-0x5ed+0x1*0x3272&&Z<=0x6*-0x2c1+-0x20f4+0x20*0x18d&&!a0[b7(0x241)](b7(0x297))?(console[b7(0x382)](),console[b7(0x382)](a0L[b7(0x462)](b7(0x4b5))),console[b7(0x382)](a0L[b7(0x35f)][b7(0x462)](b7(0x47e))),console[b7(0x382)](a0L[b7(0x462)](b7(0x4b5))),console[b7(0x382)](),console[b7(0x382)](a0L['white']('\x20\x20\x20Welcome\x20to\x20the\x20practical\x20CTF\x20section.\x20Real')),console[b7(0x382)](a0L[b7(0x30b)](b7(0x4b8))),console[b7(0x382)](),console[b7(0x382)](a0L[b7(0x35f)]['white'](b7(0x28b))),console[b7(0x382)](a0L[b7(0x3ec)](b7(0x225))+a0L['bold'](b7(0x473))+a0L['gray'](b7(0x49a))),console[b7(0x382)](),console[b7(0x382)](a0L[b7(0x35f)][b7(0x30b)](b7(0x2a3))),console[b7(0x382)](a0L[b7(0x3ec)]('\x20\x20\x20\x20\x20Enter\x20chat:\x20\x20\x20\x20\x20')+a0L['bold'][b7(0x462)](b7(0x337))+a0L['gray'](b7(0x3c3))+a0L[b7(0x33f)](b7(0x312))+a0L[b7(0x3ec)](b7(0x29f))),console[b7(0x382)](a0L['gray'](b7(0x398))+a0L['cyan'](b7(0x4e1))+a0L['gray'](b7(0x304))+a0L[b7(0x236)](b7(0x1fb))+a0L[b7(0x3ec)](b7(0x304))+a0L[b7(0x236)](b7(0x20c))),console[b7(0x382)](a0L[b7(0x3ec)](b7(0x217))),console['log'](a0L[b7(0x3ec)](b7(0x2c9))+a0L[b7(0x236)](b7(0x317))+a0L['gray'](b7(0x439))+a0L[b7(0x236)]('next\x20/\x20prev')),console['log'](),console[b7(0x382)](a0L[b7(0x35f)][b7(0x30b)]('\x20\x20\x20Budget\x20(shared\x20across\x20Q31–38)')),console[b7(0x382)](a0L['gray'](b7(0x3c0))+a0L['white']('25,000')+a0L[b7(0x3ec)](b7(0x3b1))),console['log'](a0L['gray'](b7(0x28c))+a0L[b7(0x30b)](b7(0x477))),console[b7(0x382)](),console[b7(0x382)](a0L['yellow']('\x20\x20\x20Time\x20still\x20counting\x20down.\x20Budget\x20~2\x20min\x20per\x20question.')),console[b7(0x382)](a0L[b7(0x462)](b7(0x4b5))),console[b7(0x382)](),a0[b7(0x400)](b7(0x297)),Y[b7(0x269)]=Array[b7(0x368)](a0),a0Z(Y)):Z>=0xa10+-0xa3*-0xa+-0x1047&&!a0['has'](b7(0x40d))&&(console['log'](),console[b7(0x382)](a0L['red']('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[b7(0x382)](a0L[b7(0x35f)][b7(0x392)]('\x20\x20\x20🎯\x20\x20Section\x203:\x20CTF4AI\x20—\x20Challenge\x20the\x20AI')),console['log'](a0L[b7(0x392)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](),console[b7(0x382)](a0L['white'](b7(0x285))),console['log'](a0L[b7(0x30b)]('\x20\x20\x20using\x20AI,\x20you\x27re\x20')+a0L[b7(0x35f)](b7(0x2d4))+a0L[b7(0x30b)](b7(0x459))),console[b7(0x382)](),console[b7(0x382)](a0L[b7(0x35f)][b7(0x30b)](b7(0x34c))),console[b7(0x382)](a0L[b7(0x3ec)](b7(0x333))),console[b7(0x382)](),console[b7(0x382)](a0L[b7(0x35f)][b7(0x30b)](b7(0x2d3))),console[b7(0x382)](a0L[b7(0x3ec)](b7(0x29e))+a0L['bold']['red']('ctf4ai')+a0L['gray'](b7(0x3c3))+a0L[b7(0x392)](b7(0x3aa))+a0L['gray'](b7(0x315))),console[b7(0x382)](a0L[b7(0x3ec)](b7(0x398))+a0L[b7(0x236)](b7(0x4e1))+a0L['gray'](b7(0x304))+a0L['cyan'](b7(0x1fb))+a0L['gray'](b7(0x304))+a0L[b7(0x236)](b7(0x20c))),console[b7(0x382)](a0L['gray']('\x20\x20\x20\x20\x20Messages\x20→\x20AI\x20target\x20—\x20craft\x20prompts\x20to\x20break\x20its\x20rules.')),console[b7(0x382)](),console[b7(0x382)](a0L['bold'][b7(0x30b)](b7(0x36d))),console[b7(0x382)](a0L[b7(0x3ec)](b7(0x243))+a0L[b7(0x392)](b7(0x4c9))+a0L[b7(0x3ec)](b7(0x4ba))),console[b7(0x382)](a0L[b7(0x3ec)](b7(0x4c6))+a0L[b7(0x30b)](b7(0x375))+a0L['gray'](b7(0x2f6))),console[b7(0x382)](),console[b7(0x382)](a0L[b7(0x291)](b7(0x38f))),console[b7(0x382)](a0L[b7(0x291)]('\x20\x20\x20If\x20time\x20is\x20tight,\x20skim\x20Q39/40\x20first\x20to\x20decide\x20attack\x20order.')),console[b7(0x382)](a0L[b7(0x392)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](),a0['add']('s_ctf4ai'),Y[b7(0x269)]=Array['from'](a0),a0Z(Y));}(F,z[b5(0x484)]),F&&function(Y){const b8=b5,Z=a0a1();if(!Z)return;const a0=Z[b8(0x471)]()-Date[b8(0x246)]();if(a0<=-0x1f30*0x1+-0x2*-0x118d+-0x3ea)return;const a1=a0/(-0x1a2fd+-0x1*-0xf7d5+0x19588),a2=new Set(Y[b8(0x269)]||[]);let a3=null;if(a1<=-0x1d95*-0x1+0x2*0x2d9+-0x46*0x81&&!a2[b8(0x241)]('t1')?a3={'key':'t1','text':[a0L[b8(0x392)][b8(0x35f)](b8(0x42c)),a0L[b8(0x392)](b8(0x26e))+a0L[b8(0x35f)](b8(0x2b6))]}:a1<=0xdf3*0x1+-0x337*0x1+-0xab7&&!a2[b8(0x241)]('t5')?a3={'key':'t5','text':[a0L[b8(0x392)][b8(0x35f)](b8(0x279)),a0L['yellow'](b8(0x2ee))+a0L[b8(0x35f)](b8(0x2b6))]}:a1<=-0x29a+-0x222e+-0x3*-0xc46&&!a2[b8(0x241)](b8(0x221))&&(a3={'key':b8(0x221),'text':[a0L[b8(0x291)][b8(0x35f)](b8(0x2d0)),a0L[b8(0x3ec)](b8(0x430))+a0L[b8(0x30b)](b8(0x263))]}),a3){console[b8(0x382)](),console[b8(0x382)](a0L[b8(0x392)](b8(0x417)));for(const a4 of a3['text'])console[b8(0x382)](a4);console[b8(0x382)](a0L[b8(0x392)](b8(0x417))),a2[b8(0x400)](a3[b8(0x35d)]),Y['shownWarnings']=Array[b8(0x368)](a2),a0Z(Y);}}(F),function(Y,Z,a0){const b9=b5,a1=Math['round'](Y/Z*(-0x8af+0x31*-0xa9+-0x1493*-0x2)),a2=0x21e+-0x222c+0x202c-a1,a3=a0L[b9(0x236)]('━'[b9(0x37b)](a1))+a0L[b9(0x3ec)]('─'[b9(0x37b)](a2)),a4=Math['round'](Y/Z*(-0x8bb*0x3+-0x1934+0x1*0x33c9));console[b9(0x382)](),console['log']('\x20\x20'+a3+'\x20\x20'+a0L[b9(0x30b)]['bold'](''+Y)+a0L[b9(0x3ec)]('/'+Z)+'\x20\x20'+a0L[b9(0x3ec)]('('+a0+b9(0x25f))+'\x20\x20'+a0L[b9(0x3ec)](a4+'%'));const a5=a0a1();if(a5){const a6=Math[b9(0x25d)](-0x24e8+-0x1*0x2209+0x46f1,Math['round']((a5[b9(0x471)]()-Date[b9(0x246)]())/(0x5ab+-0x1e1f+0x1c5c))),a7=Math[b9(0x49f)](a6/(0x16e5+0xaab+-0x2154))+':'+String(a6%(-0x59d*-0x1+0x23a9+-0x290a))[b9(0x26c)](0x178c+0x2202+-0x4*0xe63,'0'),a8=a6<=-0x952+0xb*0x31b+-0x189b*0x1?a0L[b9(0x392)][b9(0x35f)]:a6<=0xb24+-0x7*-0x2b7+-0x1cf9?a0L[b9(0x392)]:a6<=-0xb*0x224+0x1b2*-0x2+0x8*0x3a9?a0L[b9(0x291)]:a0L[b9(0x3ec)];console[b9(0x382)]('\x20\x20'+a0L[b9(0x3ec)](b9(0x33c))+'\x20'+a8(a7)+'\x20'+a0L[b9(0x3ec)](b9(0x355)));}}(z['number'],G,H),F&&D(F,z[b5(0x484)])&&console[b5(0x382)](a0L[b5(0x291)](b5(0x3d1)));const Q=function(Y,Z){const ba=b5,a0={};a0[ba(0x4bc)]=0.2,a0[ba(0x465)]=ba(0x3b2),a0[ba(0x35d)]=ba(0x274);const a1={};a1['pct']=0.33,a1[ba(0x465)]='🐨',a1[ba(0x35d)]=ba(0x2d6);const a2={};a2['pct']=0.5,a2[ba(0x465)]='🌉',a2[ba(0x35d)]=ba(0x4ae);const a3={};a3[ba(0x4bc)]=0.6,a3['emoji']='🦘',a3[ba(0x35d)]='egg9';const a4={};a4[ba(0x4bc)]=0.8,a4[ba(0x465)]='🏖️',a4['key']=ba(0x259);const a5={};a5[ba(0x4bc)]=0.87,a5[ba(0x465)]='🦈',a5[ba(0x35d)]=ba(0x3b5);const a6={};a6[ba(0x4bc)]=0x1,a6[ba(0x465)]='🎉',a6[ba(0x35d)]=ba(0x3ad);const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math[ba(0x38d)](a9[ba(0x4bc)]*Z);if(!(aa<0x1*0x1dfa+-0xa97*-0x1+-0x2890||a8['has'](aa))&&(a8[ba(0x400)](aa),Y===aa))return{'emoji':a9[ba(0x465)],'text':a0ai(a9[ba(0x35d)])};}}(z['number'],G);if(Q&&console[b5(0x382)](a0L[b5(0x291)]('\x20\x20'+Q[b5(0x465)]+'\x20\x20'+Q[b5(0x342)])),console[b5(0x382)](),z['category']&&console[b5(0x382)](a0L[b5(0x236)]('\x20\x20['+z[b5(0x2ca)]+']')),z[b5(0x327)]&&z[b5(0x327)]>-0x4a4+-0xb3*0x2c+0x236a&&console[b5(0x382)](a0L[b5(0x236)](b5(0x3bb)+z['points']+b5(0x377))),L){let Y=z[b5(0x3c7)]||z['text'];const Z=a0a2(z[b5(0x484)],z[b5(0x31b)]);if(z[b5(0x31b)]){const a1=/\([^()]*attachedData[^()]*\)/;a1[b5(0x40f)](Y)?Y=Y['replace'](a1,z[b5(0x31b)]):Y['includes'](z[b5(0x31b)])||(Y=Y+b5(0x325)+z[b5(0x31b)]);}console['log'](a0L[b5(0x35f)][b5(0x30b)](b5(0x48c)+z[b5(0x484)]+'.\x20')+a0L[b5(0x30b)](Y['split']('\x0a')[-0x6cf+-0x1*-0x2303+-0x1c34]));const a0=Y[b5(0x30a)]('\x0a')[b5(0x20b)](0x22*-0x68+-0x2*0x182+0x10d5);for(const a2 of a0)console[b5(0x382)](a0L[b5(0x30b)]('\x20\x20'+a2));if(console[b5(0x382)](),Z&&b5(0x337)===z['type']){const a3=Z[b5(0x206)](process.env.HOME||'','~');console[b5(0x382)](a0L[b5(0x236)]('\x20\x20'+a0ai('examWaysToSolve')+'\x20')+a0L[b5(0x3ec)]('('+a0ai(b5(0x428))+'\x20'+a3+'):')),console[b5(0x382)](a0L[b5(0x30b)](b5(0x491))+a0L['yellow'](b5(0x22c)+a3)['padEnd'](0x5fa+-0xe42*-0x1+-0x1408)+a0L['gray']('\x20'+a0ai(b5(0x223)))),console[b5(0x382)](a0L[b5(0x30b)](b5(0x43a))+a0L[b5(0x291)]('!python3')[b5(0x2ab)](0x129c+-0x3*0x76d+-0x1*-0x3cb)+a0L[b5(0x3ec)]('\x20'+a0ai('examWaysPythonRepl'))),console['log'](a0L[b5(0x30b)](b5(0x4b3))+a0L[b5(0x291)](b5(0x4b7))+a0L['gray']('\x20\x20→\x20\x20')+a0L[b5(0x291)](b5(0x49d))),console[b5(0x382)](a0L['white'](b5(0x244))+a0L[b5(0x291)]('ref\x20python')[b5(0x2ab)](0x6c4+-0x1551*-0x1+0x1bf5*-0x1)+a0L['gray']('\x20'+a0ai('examWaysRefPython'))),console[b5(0x382)](a0L[b5(0x30b)](b5(0x24e))+a0L[b5(0x291)]('ai4ctf')[b5(0x2ab)](0xc*-0x222+-0xa9d+0x2455)+a0L['gray']('\x20'+a0ai('examWaysAi4ctf'))),console[b5(0x382)](),console['log'](a0L[b5(0x3ec)]('\x20\x20'+a0ai(b5(0x447))+'\x20')+a0L[b5(0x35f)]['green']('submit\x20ICOA{your_flag}')),console['log']();}B&&(console[b5(0x382)](a0L[b5(0x462)](b5(0x450)+B)),console[b5(0x382)]());}else{console[b5(0x382)](a0L['bold'][b5(0x30b)](b5(0x48c)+z[b5(0x484)]+'.\x20')+a0L['white'](z['text'])),console['log']();for(const a4 of['A','B','C','D']){const a5=B===a4;K[b5(0x47d)](a4)?console[b5(0x382)](a0L[b5(0x3ec)][b5(0x4bb)](b5(0x40a)+a4+'.\x20'+z['options'][a4])+a0L[b5(0x392)]('\x20('+a0ai('wrong')+')')):a5?console[b5(0x382)](a0L[b5(0x462)][b5(0x35f)](b5(0x4e7)+a4+'.\x20'+z[b5(0x3d2)][a4])):console[b5(0x382)](a0L['gray'](b5(0x40a)+a4+'.')+'\x20'+a0L[b5(0x30b)](z[b5(0x3d2)][a4]));}console['log']();}const V=b5(0x41d)===F?.[b5(0x3a1)][b5(0x3ff)],W=J[b5(0x424)][0x1164+-0x18a1+0x73f]||0x3db+0x22ac*0x1+-0x1*0x2687;V&&0x1*0x23ed+-0x13bd+0x26*-0x6d===z[b5(0x484)]&&0x1737+-0x1f9b+0x864===W&&(console['log'](a0L[b5(0x291)]['bold']('\x20\x20'+a0ai(b5(0x482)))),console[b5(0x382)]());const X=J[b5(0x25d)]-J['used'];if(console[b5(0x382)](a0L['gray'](b5(0x435))),L){const a6=F&&b5(0x41d)!==F[b5(0x3a1)][b5(0x3ff)]&&z[b5(0x484)]>=0x7c0+-0x11f+-0x67a&&z[b5(0x484)]<=0x2f3+0x1*0x224b+-0x1*0x2516,a7=F&&b5(0x41d)!==F[b5(0x3a1)][b5(0x3ff)]&&z[b5(0x484)]>=0x3b6+0x1854+-0x1beb&&z[b5(0x484)]<=0xeab*-0x2+-0xa*0x1bb+0x1*0x2eca;b5(0x351)===z[b5(0x3fe)]?console[b5(0x382)](a0L['bold']['cyan'](b5(0x247))+a0L['gray'](b5(0x48e))):a7?console[b5(0x382)](a0L['bold'][b5(0x462)](b5(0x230))+a0L[b5(0x3ec)](b5(0x289))):a6&&console[b5(0x382)](a0L[b5(0x35f)]['red'](b5(0x3fb))+a0L[b5(0x3ec)](b5(0x3e5))),console[b5(0x382)](a0L[b5(0x291)](b5(0x44e))+a0L[b5(0x3ec)]('\x20\x20submit\x20flag\x20directly')),console['log'](a0L[b5(0x291)](b5(0x30d))+a0L[b5(0x3ec)]('\x20\x20\x20\x20\x20\x20start\x20Python\x20shell'));}else{const a8=J[b5(0x25d)]>=-0x2422+0x19d*0x4+0x1dcc,a9=X>-0x2694+-0x733+0x2dc7?a0L[b5(0x3ec)](a0ai(b5(0x311))+'\x20')+a0L[b5(0x291)]('('+X+'/'+J['max']+')'):a8?a0L['gray'](a0ai(b5(0x328))+'\x20('+J[b5(0x2e6)]+'/'+J['max']+')'):a0L['gray'](''+a0ai(b5(0x256)));console[b5(0x382)](a0L[b5(0x291)](b5(0x48b))+a0L[b5(0x3ec)](b5(0x4e9)+a0ai('answerThis'))),console[b5(0x382)](a0L['yellow']('\x20\x20\x20\x20help')+b5(0x3f1)+a9);}console[b5(0x382)](a0L['yellow']('\x20\x20\x20\x20next')+a0L[b5(0x3ec)](b5(0x4b4))+a0L['yellow'](b5(0x461))+a0L['gray'](b5(0x40a)+a0ai(b5(0x36a)))),console[b5(0x382)](a0L[b5(0x291)](b5(0x4de)+G)+a0L['gray'](b5(0x228)+a0ai(b5(0x250)))),console['log'](a0L[b5(0x291)](b5(0x413))+a0L[b5(0x3ec)](b5(0x3f1)+a0ai(b5(0x316)))),console['log'](a0L[b5(0x291)](b5(0x367))+a0L['gray'](b5(0x228)+a0ai(b5(0x2e1)))),console['log'](a0L[b5(0x35f)]['yellow']('\x20\x20\x20\x20exam\x20submit')+a0L['gray'](b5(0x228)+a0ai(b5(0x3e0)))),console[b5(0x382)](a0L[b5(0x291)](b5(0x440))+a0L[b5(0x3ec)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b5(0x299)))),console[b5(0x382)](a0L['yellow'](b5(0x358))+a0L[b5(0x3ec)](b5(0x3f1)+a0ai(b5(0x1f3)))),console[b5(0x382)](a0L[b5(0x3ec)]('\x20\x20─────────────────────────────────────────'));}export function registerExamCommand(z){const bb=a0B,B=z['command'](bb(0x46d))[bb(0x3c7)]('National\x20selection\x20exam');B[bb(0x3d3)](bb(0x303))[bb(0x3c7)]('View\x20all\x20participating\x20countries')[bb(0x48f)](()=>{const bc=bb;a0a8(bc(0x3f0)),console[bc(0x382)](),a0ae(bc(0x271)),console['log']();const F=[['AU','Australia'],['BD',bc(0x22f)],['BI',bc(0x46e)],['BR',bc(0x454)],['CN',bc(0x240)],['DE',bc(0x20d)],['EG',bc(0x44d)],['FR',bc(0x220)],['GH',bc(0x40c)],['ID',bc(0x4e3)],['IN',bc(0x2fc)],['JP','Japan'],['KR',bc(0x441)],['LA',bc(0x229)],['LK',bc(0x44b)],['MM','Myanmar'],['MO',bc(0x391)],['MY',bc(0x2cd)],['NZ',bc(0x3fd)],['PE','Peru'],['PH',bc(0x4a0)],['RU','Russia'],['SA','Saudi\x20Arabia'],['SG',bc(0x3bd)],['TH','Thailand'],['TR',bc(0x2b0)],['UK',bc(0x422)],['US',bc(0x349)],['UZ','Uzbekistan'],['VN','Vietnam'],['ZA',bc(0x408)]];for(let G=-0x3*0x680+-0xeb9+0x2239;G<F[bc(0x468)];G+=0xc4e+0x1*-0x557+0x37a*-0x2){const H=F[bc(0x20b)](G,G+(0xebf+0x1fa0+-0x81*0x5c))[bc(0x463)](([J,K])=>'\x20\x20'+a0L[bc(0x236)](J)+'\x20\x20'+a0L['gray'](K['padEnd'](0x1*-0x1bfe+0x1d0f+-0x101)))[bc(0x4eb)]('');console[bc(0x382)](H);}console['log'](),console[bc(0x382)](a0L['gray']('\x20\x2040+\x20countries\x20and\x20regions\x20represented')),console[bc(0x382)](a0L[bc(0x3ec)](bc(0x2eb))),console[bc(0x382)](),console['log'](a0L[bc(0x30b)](bc(0x2be))),console[bc(0x382)](a0L[bc(0x236)]('\x20\x20\x20\x20exam\x20list\x20AU')+a0L[bc(0x3ec)](bc(0x47a))+a0L[bc(0x3ec)]('\x20\x20\x20\x20\x20exam\x20list\x20CN')),console[bc(0x382)]();}),B[bb(0x3d3)](bb(0x387))['description'](bb(0x31c))[bb(0x48f)](async F=>{const bd=bb;a0a8(bd(0x46c)+(F||''));const G=M();if(!G)return;const H=a0ag(bd(0x3f9));H[bd(0x2bd)]();try{let J=await G['getExams']();if(H[bd(0x3a2)](),F){const Q=F['toUpperCase']();J=J[bd(0x374)](V=>V['country'][bd(0x45e)]()===Q||bd(0x42d)===V[bd(0x23b)]);}if(!J||0xc40+-0x2*0xa7b+0x8b6===J[bd(0x468)]){console['log'](),a0ac(F?bd(0x29c)+F[bd(0x45e)]()+bd(0x4bd):bd(0x394)),console[bd(0x382)](),console[bd(0x382)](a0L[bd(0x30b)](bd(0x4ce))),console[bd(0x382)](a0L[bd(0x3ec)](bd(0x41b))),console[bd(0x382)](),console['log'](a0L['gray'](bd(0x49b))+a0L[bd(0x35f)][bd(0x236)](bd(0x1fd))),console[bd(0x382)]();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[bd(0x382)](a0L['gray']('\x20\x20Tip:\x20switch\x20to\x20your\x20language\x20with:\x20lang\x20'+W[X])),console[bd(0x382)]()));}const K=J[bd(0x463)](Y=>{const be=bd,Z=be(0x2ef)===Y[be(0x30f)]?a0L[be(0x462)]:be(0x231)===Y[be(0x30f)]?a0L[be(0x291)]:a0L['white'];return[a0L[be(0x30b)](Y['id']),Y[be(0x4d5)],a0L[be(0x236)](Y[be(0x23b)]),String(Y[be(0x249)]),Y[be(0x1e7)]+'\x20min',Z(Y['status'])];}),L=[...new Set(J[bd(0x463)](Y=>Y[bd(0x23b)]))];a0ae(F?bd(0x36c)+F['toUpperCase']():bd(0x2bc)+L['length']+bd(0x3b9)),a0ad(['ID',bd(0x2c7),bd(0x443),bd(0x357),'Duration',bd(0x2fa)],K),console['log'](),console[bd(0x382)](a0L[bd(0x3ec)](bd(0x3e4))),L[bd(0x468)]>-0xa*0x14e+-0x669+0x1376&&console[bd(0x382)](a0L[bd(0x3ec)](bd(0x418)));}catch(Y){H['fail'](bd(0x1f5)),a0aa(Y['message']);}}),B['command'](bb(0x384))['description']('Start\x20an\x20exam\x20(begins\x20timer)')['action'](async F=>{const bf=bb;a0a8('exam\x20start\x20'+F);const G=a0Y();if(G)return a0ab(bf(0x414)+G[bf(0x3a1)][bf(0x204)]+bf(0x397)),void a0ac(bf(0x432));const H=M();if(!H)return;const J=await a0Q({'message':a0L[bf(0x30b)](bf(0x1e6)),'default':!(-0x7a2+0x33e+0x464),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L[bf(0x462)](K)}}});if(J){console[bf(0x382)]();try{N(0x1340+-0x183c+0x27e*0x2,bf(0x3b4));const {session:K,questions:L}=await H[bf(0x396)](F);N(-0x2*0x3bb+-0x2*0xb96+0x30*0xa4,bf(0x4e5)),await q(-0x200c+0x35*-0xb3+0x45e3*0x1),N(0x1c36+-0x1f84+-0x2*-0x1c5,'Preparing\x20exam\x20environment...'),await q(-0x9b*0x23+-0x3a*-0x68+-0x1*0x197),N(-0x16eb+0x102c+0x719*0x1,bf(0x3cc)),await q(0x25*-0xf5+0x1929+0xad6),a0Z({'session':K,'questions':L,'answers':{}}),N(0x5d1*-0x1+0x2497+0x1*-0x1e62,'Ready!'),console[bf(0x382)](),console[bf(0x382)](),a0ae(K[bf(0x204)]),a0af(bf(0x357),String(K[bf(0x249)])),a0af('Duration',K[bf(0x1e7)]+'\x20minutes'),a0af('Country',K[bf(0x23b)]),O(),L[bf(0x468)]>0x2218+-0x12f+0x20e9*-0x1&&U(L[0xfa6*0x1+-0xb1c+-0x245*0x2]);}catch(Q){console[bf(0x382)](),a0aa(Q[bf(0x38c)]);}}}),B[bb(0x3d3)]('q\x20[n]')[bb(0x3c7)](bb(0x35c))['action'](async F=>{const bg=bb;a0a8('exam\x20q\x20'+(F||bg(0x238)));const {refetchQuestionDataIfStale:G}=await import(bg(0x3e9));await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,-0x523*0x6+0x21f*-0x4+0x2758),K=H[bg(0x22a)][bg(0x4cc)](L=>L[bg(0x484)]===J);if(!K)return void a0aa(bg(0x4a8)+F+bg(0x4af)+H[bg(0x22a)][bg(0x468)]+').');H[bg(0x4cf)]=J,a0Z(H),U(K,H[bg(0x298)][J]);}else{a0ae(''+H[bg(0x3a1)][bg(0x204)]);const L=Object[bg(0x219)](H[bg(0x298)])['length'];a0af(bg(0x20a),L+'/'+H[bg(0x3a1)][bg(0x249)]+bg(0x2e3)),console[bg(0x382)]();for(const Q of H[bg(0x22a)]){const V=H['answers'][Q[bg(0x484)]],W=V?a0L['green']('['+V+']'):a0L[bg(0x3ec)](bg(0x4aa)),X=Q[bg(0x2ca)]?a0L['gray']('\x20['+Q[bg(0x2ca)]+']'):'';console['log']('\x20\x20'+W+'\x20'+a0L['white']('Q'+Q[bg(0x484)])+X+'\x20'+a0L[bg(0x3ec)](Q[bg(0x342)][bg(0x29a)](-0x1bd*-0x2+0x143*0xa+0x28*-0x67,-0x1*-0x3a5+-0x597+0x22e))+(Q[bg(0x342)][bg(0x468)]>0x202*0x9+0x236f+0x1*-0x3545?bg(0x3a8):''));}console['log']();}}else a0aa(bg(0x34f));}),B[bb(0x3d3)]('mark\x20[n]')[bb(0x3c7)]('Flag\x20a\x20question\x20to\x20review\x20later\x20(toggles)')[bb(0x48f)](F=>{const bh=bb;a0a8(bh(0x222)+(F||''));const G=a0Y();if(!G)return void a0aa(bh(0x379));const H=G[bh(0x22a)][bh(0x468)],J=F?parseInt(F,0x16*0x4f+-0xeda+0x81a):G[bh(0x4cf)]||0x639*0x2+0x2381+-0x2ff2;if(Number[bh(0x4ab)](J)||J<-0x158*-0xb+-0x5*0x3e3+0x4a8||J>H)return void a0aa(bh(0x42f)+H+'.');const K=j(G,J);console['log'](),K?console[bh(0x382)](a0L[bh(0x291)]('\x20\x20★\x20Q'+J+bh(0x3d0))):console[bh(0x382)](a0L[bh(0x3ec)]('\x20\x20☆\x20Q'+J+bh(0x25c)));const L=Array[bh(0x3d5)](G[bh(0x2cf)])?G[bh(0x2cf)]:[];L[bh(0x468)]>0x83*-0x25+-0x2d0+-0x125*-0x13&&console[bh(0x382)](a0L[bh(0x3ec)](bh(0x3b6)+L[bh(0x463)](Q=>'Q'+Q)[bh(0x4eb)](',\x20'))),console['log'](a0L[bh(0x3ec)](bh(0x24d))+a0L[bh(0x30b)](bh(0x263))),console[bh(0x382)]();}),B[bb(0x3d3)](bb(0x4ea))['description'](bb(0x4c1))[bb(0x48f)](F=>{const bi=bb;a0a8('exam\x20unmark\x20'+(F||''));const G=a0Y();if(!G)return void a0aa(bi(0x379));const H=G['questions'][bi(0x468)],J=F?parseInt(F,0x2609*0x1+0xd36+-0x3335):G[bi(0x4cf)]||0x1*-0x93c+-0x61*-0x3d+0x8*-0x1bc;Number[bi(0x4ab)](J)||J<0x9*0xf+-0x173b+0x16b5||J>H?a0aa(bi(0x42f)+H+'.'):D(G,J)?(j(G,J),console[bi(0x382)](),console[bi(0x382)](a0L[bi(0x3ec)](bi(0x251)+J+'\x20unflagged.')),console['log']()):console[bi(0x382)](a0L[bi(0x3ec)]('\x20\x20Q'+J+bi(0x37c)));}),B[bb(0x3d3)](bb(0x4e0))['description']('Go\x20to\x20next\x20question')[bb(0x48f)](()=>{const bj=bb;a0a8(bj(0x260));const F=a0Y();if(!F)return void a0aa(bj(0x379));F[bj(0x22a)][bj(0x4bf)](K=>!F['answers'][K[bj(0x484)]]);const G=F[bj(0x4cf)]||0x1c86+-0x7ac*0x3+-0x581*0x1,H=Math[bj(0x38e)](G+(-0x17b9*-0x1+-0x726+-0x2a*0x65),F[bj(0x22a)]['length']);F['_lastQ']=H,a0Z(F);const J=F[bj(0x22a)][H-(-0x126+0x1*0x1f23+-0x1dfc*0x1)];U(J,F['answers'][J['number']]);}),B[bb(0x3d3)](bb(0x461))[bb(0x3c7)]('Go\x20to\x20previous\x20question')[bb(0x48f)](()=>{const bk=bb;a0a8(bk(0x24a));const F=a0Y();if(!F)return void a0aa(bk(0x379));const G=F[bk(0x4cf)]||0x2dd*0x2+0x23f*0x1+-0x7f8,H=Math['max'](G-(0x2445*-0x1+0x1b1f*0x1+0x927),0xf7*0x1c+-0x14d*0x1+-0x6*0x449);F[bk(0x4cf)]=H,a0Z(F);const J=F[bk(0x22a)][H-(-0xa98+-0xc4d+0x16e6)];U(J,F[bk(0x298)][J[bk(0x484)]]);}),B[bb(0x3d3)]('help')[bb(0x3c7)](bb(0x46f))[bb(0x48f)](async()=>{const bl=bb;a0a8(bl(0x202));const F=a0Y();if(!F)return void a0aa(bl(0x379));const G=R(F),H=F[bl(0x4cf)]||-0x17c6*0x1+-0xbe1+-0x38*-0xa3,J=G[bl(0x424)][H]||0x1597*-0x1+-0x778*-0x4+-0x849,K=G[bl(0x270)][H]||[],L=F['questions'][bl(0x4cc)](W=>W[bl(0x484)]===H);if(!L)return;if(J>=-0x1f*-0x79+-0x446+-0xa5f)return console['log'](),console[bl(0x382)](a0L['yellow'](bl(0x1f1))),console[bl(0x382)](a0L[bl(0x3ec)](bl(0x29d))),console[bl(0x382)](),void U(L,F[bl(0x298)][L[bl(0x484)]]);const Q=['A','B','C','D'][bl(0x374)](W=>!K[bl(0x47d)](W));if(Q[bl(0x468)]<=-0x68+-0x559*0x2+0xb1c*0x1)return console[bl(0x382)](),console[bl(0x382)](a0L[bl(0x291)](bl(0x2ff))),console[bl(0x382)](),void U(L,F[bl(0x298)][L[bl(0x484)]]);if(G[bl(0x2e6)]>=G[bl(0x25d)]){const W=G[bl(0x25d)]>=0x26d8+-0x2290+-0x42a*0x1,X=-0xd*-0x1ab+0x1d*-0x143+0xf06-G[bl(0x25d)];return void(W?(console['log'](),console[bl(0x382)](a0L[bl(0x3ec)]('\x20\x20All\x20help\x20used\x20('+G['used']+'/'+G[bl(0x25d)]+bl(0x45b))),console['log']()):(console[bl(0x382)](),console['log'](a0L[bl(0x291)](bl(0x3ac)+G[bl(0x2e6)]+'/'+G['max'])),console[bl(0x382)](a0L[bl(0x30b)](bl(0x32d))+a0L['bold'][bl(0x291)]('more\x20help')+a0L[bl(0x3ec)](bl(0x25e)+X+'\x20bonus\x20uses)')),console[bl(0x382)]()));}const V=Y=>{const bm=bl;K['push'](Y),G['eliminated'][H]||(G[bm(0x270)][H]=[]),G['eliminated'][H]=K,G[bm(0x424)][H]=J+(0x451*0x1+0x8*-0x2ba+-0x38*-0x50),G['used']++,F[bm(0x31e)]=G['used'],F[bm(0x3af)]=G['max'],F[bm(0x486)]=G[bm(0x424)],F[bm(0x2c4)]=G[bm(0x270)],F['interactions']||(F[bm(0x34b)]=[]),F[bm(0x34b)]['push']({'ts':new Date()[bm(0x22b)](),'q':H,'type':'help_used','result':bm(0x203)+Y}),a0Z(F),console['log'](),console['log'](a0L[bm(0x291)](bm(0x451)+Y+bm(0x2f8))+a0L[bm(0x3ec)](bm(0x4c0)+G['used']+'/'+G[bm(0x25d)]+')')),U(L,F[bm(0x298)][L['number']]);};if(bl(0x41d)===F[bl(0x3a1)][bl(0x3ff)]&&L[bl(0x21c)])(Y=>{const bn=bl,Z=Q['filter'](a0=>a0!==Y&&!K[bn(0x47d)](a0));0x1*0x260d+-0x4a6*-0x8+0xbb*-0x67!==Z[bn(0x468)]&&V(Z[Math[bn(0x49f)](Math[bn(0x3cd)]()*Z[bn(0x468)])]);})(L['answer']);else{const Y=a0W()[bl(0x280)]||bl(0x3c1),Z=F['session']?.[bl(0x261)]||'';try{const a0={};a0['Content-Type']='application/json',a0[bl(0x4b2)]=bl(0x215);const a1={};a1['token']=Z,a1[bl(0x499)]=H,a1[bl(0x270)]=K;const a2=await fetch(Y+bl(0x46b)+F[bl(0x3a1)][bl(0x3ff)]+bl(0x497),{'method':bl(0x498),'headers':a0,'body':JSON[bl(0x283)](a1),'signal':AbortSignal[bl(0x31d)](0x1*-0x97+-0xe6*-0x9+0xc09)}),a3=await a2[bl(0x1e2)](),a4=a3?.[bl(0x4db)]?.[bl(0x444)];a4&&['A','B','C','D']['includes'](a4)?V(a4):(console[bl(0x382)](),console[bl(0x382)](a0L[bl(0x3ec)](bl(0x21d))));}catch{console['log'](),console[bl(0x382)](a0L[bl(0x3ec)](bl(0x48d)));}}}),B['command'](bb(0x4a2))[bb(0x3c7)]('Unlock\x20hidden\x20bonus\x20help\x20uses')[bb(0x48f)](()=>{const bo=bb;a0a8(bo(0x390));const F=a0Y();if(!F)return void a0aa(bo(0x379));const G=R(F),H=bo(0x41d)===F[bo(0x3a1)][bo(0x3ff)]?-0x1*-0x223+-0x152+-0xc9:0x1a1d*-0x1+-0x7*0x3b6+0x3435;if(G[bo(0x25d)]>=H)return void console[bo(0x382)](a0L[bo(0x3ec)](bo(0x33b)));if(G['used']<G[bo(0x25d)])return void console[bo(0x382)](a0L[bo(0x3ec)](bo(0x24f)+(G[bo(0x25d)]-G[bo(0x2e6)])+'\x20helps\x20remaining.\x20Use\x20them\x20first!'));const J=H-G['max'];F[bo(0x3af)]=H,a0Z(F),console['log'](),console[bo(0x382)](a0L[bo(0x462)](bo(0x370)+J+bo(0x277)+J+'/'+H+bo(0x1f2))),console[bo(0x382)](a0L[bo(0x3ec)]('\x20\x20Type\x20\x22help\x22\x20on\x20any\x20question\x20to\x20use.')),console['log']();}),B[bb(0x3d3)](bb(0x1f4))['description'](bb(0x27f))['action'](async(F,G)=>{const bp=bb,H=G[bp(0x4eb)]('\x20');a0a8(bp(0x318)+F+'\x20'+H);const J=a0Y();if(!J)return void a0aa(bp(0x34f));if(!(function(){const bq=bp,Z=a0a1();if(!Z)return!(0xe6*-0x8+0x1*0x1c73+-0x1*0x1543);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object[bq(0x219)](a0[bq(0x298)])[bq(0x468)];bq(0x41d)===a0[bq(0x3a1)][bq(0x3ff)]||-0xecb+-0x71c+0x15e7===a1?(a0a0(),a0ab(bq(0x3e6)),a0ac(bq(0x44f))):(a0aa('Time\x20expired.'),a0ac(bq(0x2f3)));}return!(-0xf*-0x139+-0x1a06+0xc*0xa4);}return!(0x12b*0x7+0x86b*-0x1+0x3e);}()))return;const K=parseInt(F,0x2*-0xb19+0x1678*0x1+0x6*-0xa),L=J['questions']['find'](Z=>Z['number']===K);if(!L)return void a0aa(bp(0x4a8)+F+bp(0x4af)+J[bp(0x22a)]['length']+').');let Q;if(bp(0x337)===L[bp(0x3fe)]||'ctf4ai'===L[bp(0x3fe)]||'vla'===L[bp(0x3fe)]||L[bp(0x3d2)]&&!L['options']['A']&&!L[bp(0x3d2)]['B']){if(Q=H['trim'](),/^submit\s+/i[bp(0x40f)](Q)&&(Q=Q[bp(0x206)](/^submit\s+/i,'')[bp(0x433)]()),Q=Q[bp(0x206)](/^["'`]+|["'`]+$/g,'')[bp(0x433)](),!Q)return void a0aa(bp(0x4c3));if(/^[A-Da-d]$/[bp(0x40f)](Q))return a0aa('Q'+K+bp(0x278)),void console['log'](a0L['gray'](bp(0x4e4))+a0L[bp(0x462)]('exam\x20answer\x20'+K+bp(0x431)));}else{if(Q=H['toUpperCase'](),!['A','B','C','D']['includes'](Q))return void a0aa('Choice\x20must\x20be\x20A,\x20B,\x20C,\x20or\x20D.');}if('demo-free'===J[bp(0x3a1)][bp(0x3ff)]&&-0xf43*0x2+0xfa6+0xee2===K&&0x99d+0x2*-0xe3b+-0x12d9*-0x1===(R(J)[bp(0x424)][0x83c+-0xd*0x18d+0xbef]||0x239d+-0x88*0x23+-0x1105))return console[bp(0x382)](),console[bp(0x382)](a0L[bp(0x291)](bp(0x409))+a0L[bp(0x35f)]['yellow'](bp(0x28a))+a0L[bp(0x291)](bp(0x3d4))),console[bp(0x382)](a0L['gray'](bp(0x2e9))),void console[bp(0x382)]();const V=J['answers'][K];J['interactions']||(J[bp(0x34b)]=[]),J['interactions'][bp(0x3f8)]({'ts':new Date()[bp(0x22b)](),'q':K,'type':V?bp(0x322):bp(0x237),'input':Q,'result':V?bp(0x487)+V:bp(0x48a)}),J['answers'][K]=Q,J['_lastQ']=K,a0Z(J),console[bp(0x382)](a0L[bp(0x3ec)](bp(0x3b8)));const W=J[bp(0x3a1)][bp(0x261)];if(W&&bp(0x41d)!==J['session'][bp(0x3ff)]){const Z=(a0W()[bp(0x280)]||'https://practice.icoa2026.au')+bp(0x46b)+J[bp(0x3a1)]['examId']+bp(0x2cb),a0={};a0[bp(0x3bf)]=bp(0x314);const a1={};a1[bp(0x261)]=W,a1['question']=K,a1[bp(0x21c)]=Q,fetch(Z,{'method':bp(0x498),'headers':a0,'body':JSON['stringify'](a1),'signal':AbortSignal[bp(0x31d)](0x160e+-0x547+0x2c1)})['catch'](()=>{});}const X=Object[bp(0x219)](J[bp(0x298)])[bp(0x468)],Y=J[bp(0x3a1)][bp(0x249)];if(a0a9('Q'+K+':\x20'+Q+bp(0x41e)+X+'/'+Y+bp(0x25f)),bp(0x41d)===J[bp(0x3a1)]['examId']&&L['answer']){const a2=['Nice\x20one.',bp(0x3fc),bp(0x3ba),bp(0x295),'Spot\x20on.'],a3=[bp(0x4d7),bp(0x33a),bp(0x36b)],a4=Q===L['answer']?a2:a3,a5=a4[Math[bp(0x49f)](Math[bp(0x3cd)]()*a4['length'])];console[bp(0x382)](a0L['gray']('\x20\x20\x20\x20·\x20'+a5));}if(K<J['questions'][bp(0x468)]){const a6=J[bp(0x22a)][K];J[bp(0x4cf)]=a6[bp(0x484)],a0Z(J),U(a6,J[bp(0x298)][a6[bp(0x484)]]);}else X>=J[bp(0x22a)][bp(0x468)]&&(console[bp(0x382)](),console[bp(0x382)](a0L['green'][bp(0x35f)](bp(0x406))),console[bp(0x382)](),bp(0x41d)===J[bp(0x3a1)][bp(0x3ff)]?(console[bp(0x382)](a0L[bp(0x30b)]('\x20\x20Type\x20')+a0L[bp(0x35f)]['cyan'](bp(0x2b6))+a0L[bp(0x30b)](bp(0x457))),console[bp(0x382)]()):console['log'](a0L[bp(0x30b)](bp(0x35e))));}),B[bb(0x3d3)](bb(0x307))[bb(0x3c7)](bb(0x4da))[bb(0x48f)](()=>{const br=bb;a0a8(br(0x263));const F=a0Y();if(!F)return void a0aa('No\x20exam\x20in\x20progress.');a0ae(br(0x3ce)+F[br(0x3a1)][br(0x204)]),O(),console[br(0x382)]();let G='\x20\x20';const H=Array[br(0x3d5)](F[br(0x2cf)])?F[br(0x2cf)]:[];for(const Q of F[br(0x22a)]){const V=F[br(0x298)][Q[br(0x484)]],W=H[br(0x47d)](Q[br(0x484)]),X=W?'★':'\x20';G+=V?W?a0L[br(0x35f)][br(0x291)]('Q'+String(Q[br(0x484)])[br(0x26c)](0x1*-0x22f+-0x12b9*0x1+-0x14ea*-0x1)+X+'['+V+']\x20'):a0L[br(0x462)]('Q'+String(Q[br(0x484)])[br(0x26c)](0x1*-0x491+-0xd00+0x1193)+'\x20['+V+br(0x32f)):W?a0L['bold'][br(0x291)]('Q'+String(Q[br(0x484)])[br(0x26c)](0x13af+0x7e0+0x1b8d*-0x1)+X+'[\x20]\x20\x20'):a0L['yellow']('Q'+String(Q[br(0x484)])['padStart'](0x2500+0x408*0x1+0xb2*-0x3b)+br(0x411)),Q[br(0x484)]%(-0x1e8d+-0x1*0x1181+0x3014)==-0x1d07+-0xd44+0x2a4b&&(console[br(0x382)](G),G='\x20\x20');}G[br(0x433)]()&&console[br(0x382)](G);const J=Object[br(0x219)](F[br(0x298)])[br(0x468)],K=F[br(0x3a1)][br(0x249)],L=K-J;if(console[br(0x382)](),a0af(br(0x2dc),a0L['green'][br(0x35f)](J+'/'+K)),L>0x3a*-0x91+-0x66f+0x2749){const Y=F[br(0x22a)][br(0x374)](Z=>!F[br(0x298)][Z[br(0x484)]])[br(0x463)](Z=>Z[br(0x484)])[br(0x4eb)](',\x20');a0af('Unanswered',a0L[br(0x291)](L+br(0x1e9)+Y+')'));}H[br(0x468)]>-0x35*0x6d+-0x189e+0x2f2f&&a0af(br(0x1ff),a0L[br(0x35f)][br(0x291)]('★\x20'+H[br(0x468)])+a0L[br(0x3ec)]('\x20('+H[br(0x463)](Z=>'Q'+Z)['join'](',\x20')+')')),console[br(0x382)](),H[br(0x468)]>-0x15c3+0x2a*0x5+0x14f1&&console['log'](a0L[br(0x3ec)](br(0x2c6))+a0L[br(0x30b)]('exam\x20q\x20'+H[-0x823+-0x154d+0x1d70])),console[br(0x382)](a0L[br(0x3ec)]('\x20\x20Ready?\x20Use\x20')+a0L['bold'][br(0x236)]('exam\x20submit')+a0L[br(0x3ec)]('\x20to\x20submit\x20for\x20grading.'));}),B[bb(0x3d3)]('submit\x20[confirmArg]')['description'](bb(0x22e))['action'](async J=>{const bs=bb;a0a8(bs(0x25a)+(J||''));const K=a0Y();if(K&&bs(0x3c8)===J&&(K[bs(0x3da)]=!(-0x1cf4+-0x5*0x77e+-0x1*-0x426a),a0Z(K)),!K)return void a0aa('No\x20exam\x20in\x20progress.');const L=Object[bs(0x219)](K[bs(0x298)])['length'],Q=K[bs(0x3a1)][bs(0x249)],V=Q-L;if(0x2*0x20f+-0xc0*0x2f+-0x2*-0xf91===L){const X=a0a1(),Y=X&&new Date()>=X;return void(bs(0x41d)===K[bs(0x3a1)][bs(0x3ff)]||Y?(a0a0(),a0ab(bs(0x43e)),a0ac(bs(0x44f))):(a0ab('No\x20answers\x20to\x20submit.'),a0ac(bs(0x3ed))));}if(bs(0x41d)!==K[bs(0x3a1)][bs(0x3ff)]){const Z=!(-0x3f*-0x3e+-0x25ae+0x166c)===K[bs(0x3da)],a0=a0a1(),a1=!!(a0&&new Date()>=a0);if(!Z&&!a1){if(console[bs(0x382)](),console[bs(0x382)](a0L[bs(0x392)](bs(0x417))),console[bs(0x382)](a0L['bold'][bs(0x392)](bs(0x330))),console[bs(0x382)](a0L[bs(0x392)](bs(0x417))),console['log'](),console[bs(0x382)](a0L[bs(0x30b)](bs(0x4dc)+a0L[bs(0x35f)]['green'](L+'/'+Q)+bs(0x425))),V>0x7de*-0x2+-0x705+-0x5*-0x48d){const a3=K[bs(0x22a)][bs(0x374)](a4=>!K[bs(0x298)][a4[bs(0x484)]])['map'](a4=>'Q'+a4[bs(0x484)])['join'](',\x20');console['log'](a0L[bs(0x291)]('\x20\x20'+V+bs(0x28e)+a3));}const a2=Array[bs(0x3d5)](K[bs(0x2cf)])?K[bs(0x2cf)]:[];return a2[bs(0x468)]>-0xca*-0x15+-0x23dc+-0x66e*-0x3&&console['log'](a0L[bs(0x291)]('\x20\x20★\x20'+a2[bs(0x468)]+bs(0x420)+a2[bs(0x463)](a4=>'Q'+a4)['join'](',\x20'))),console[bs(0x382)](),console['log'](a0L[bs(0x30b)](bs(0x2b2))+a0L[bs(0x35f)][bs(0x392)](bs(0x275))+a0L[bs(0x30b)](bs(0x265))),console['log'](),console[bs(0x382)](a0L[bs(0x35f)][bs(0x30b)](bs(0x33e))+a0L['bold'][bs(0x236)](bs(0x345))),console[bs(0x382)](a0L[bs(0x30b)](bs(0x3a3))+a0L['cyan'](bs(0x263))+a0L[bs(0x3ec)]('\x20\x20or\x20\x20')+a0L[bs(0x236)](bs(0x445))),void console['log']();}Z&&(delete K[bs(0x3da)],a0Z(K));}if(console[bs(0x382)](),bs(0x41d)===K[bs(0x3a1)]['examId']){try{N(-0x1f36+0x1*0x2362+-0x2*0x216,a0ai(bs(0x2ae))),await q(0x1889+0x3*-0x9db+-0x18d*-0x4);let a4=0xb4*-0x10+-0x9fc*-0x3+-0x12b4;const a5=[],a6={};for(const ai of K['questions']){const aj=ai['category']||bs(0x442),ak={};ak[bs(0x3ae)]=0x0,ak[bs(0x26b)]=0x0,(a6[aj]||(a6[aj]=ak),a6[aj][bs(0x26b)]++);const al=K[bs(0x298)][ai[bs(0x484)]];al&&ai[bs(0x21c)]&&al===ai[bs(0x21c)]?(a4++,a6[aj][bs(0x3ae)]++):a5[bs(0x3f8)](ai[bs(0x484)]);}a5[bs(0x3dc)]((am,an)=>am-an),N(-0xd*-0xa9+0x13a9+-0x1bda,a0ai('complete')),console[bs(0x382)]();const a7=new Date(K[bs(0x3a1)][bs(0x2da)])[bs(0x471)](),a8=Math['max'](-0x20ee+-0x9*-0x120+0x16ce,Math[bs(0x38d)]((Date[bs(0x246)]()-a7)/(0xb18+0x9*-0x22+-0x5fe))),a9=Math[bs(0x49f)](a8/(-0x12f1+-0xfb5+0x22e2))+'m\x20'+a8%(0x12*-0x83+-0x239*0x2+-0xfe*-0xe)+'s',aa=[...K['questions']],ab={...K['answers']},ac=R(K);a0a0();const ad=Math['round'](a4/Q*(0x1b5e*0x1+0xb*0x2de+-0x3a84)),ae=a0W(),af={};af['Content-Type']=bs(0x314),(fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':bs(0x498),'headers':af,'body':JSON[bs(0x283)]({'type':'demo-exam','score':a4,'total':Q,'lang':ae[bs(0x27d)]||'en','help_used':ac[bs(0x2e6)],'help_max':ac[bs(0x25d)],'tokens_used':0x0,'solved':ad>=-0x869+-0x946*0x2+0x1b31*0x1?-0x6*0x185+-0x4*-0x387+-0x4fd:-0x1f2e+-0x1f*-0x5e+0x13cc,'timestamp':new Date()[bs(0x22b)](),'interactions':K[bs(0x34b)]||[]}),'signal':AbortSignal[bs(0x31d)](-0x2*-0x135a+-0x4d*-0x75+0x365d*-0x1)})[bs(0x2f5)](()=>{}),console['log'](),console[bs(0x382)](a0L[bs(0x236)]('\x20\x20═══════════════════════════════════════')),console[bs(0x382)](),console[bs(0x382)](a0L[bs(0x35f)]['white'](bs(0x2bb))),console[bs(0x382)](a0L['bold'][bs(0x30b)](bs(0x32e))),console[bs(0x382)](a0L[bs(0x35f)][bs(0x30b)](bs(0x2d1))),console[bs(0x382)](a0L[bs(0x35f)]['white']('\x20\x20\x20██║██║\x20\x20\x20\x20\x20██║\x20\x20\x20██║██╔══██║')),console[bs(0x382)](a0L[bs(0x35f)]['white'](bs(0x1ef))),console[bs(0x382)](a0L[bs(0x35f)][bs(0x30b)](bs(0x381))),console[bs(0x382)](),console['log'](a0L[bs(0x35f)](bs(0x228)+a0ai(bs(0x3b3))+':\x20'+a4+'/'+Q+'\x20('+ad+'%)')),console[bs(0x382)](a0L[bs(0x35f)]('\x20\x20\x20'+(ad>=0x5+0x19a9+-0x1972?a0L['green'](a0ai(bs(0x458))):a0L[bs(0x392)](a0ai('notPassed'))))),console[bs(0x382)](a0L[bs(0x3ec)]('\x20\x20\x20Elapsed:\x20'+a9)),console[bs(0x382)](),console[bs(0x382)](a0L['yellow']('\x20\x20\x20International\x20Cyber\x20Olympiad\x20in\x20AI\x202026')),console[bs(0x382)](a0L['gray'](bs(0x3f4))),console['log'](),console[bs(0x382)](a0L[bs(0x236)](bs(0x354))),await q(-0x1*0x24e1+-0x1789+0x4822));const ag=Object[bs(0x273)](a6);if(ag['length']>0x1e40+-0x1f5+-0x1c4b){console[bs(0x382)](),console[bs(0x382)](a0L[bs(0x35f)][bs(0x30b)]('\x20\x20By\x20category'));const am=0xaa7+0x110*-0x1+-0x98d*0x1;for(const [an,ao]of ag){const ap=ao[bs(0x26b)]>0x25d7+-0x4ca+-0x210d?Math[bs(0x38d)](ao['correct']/ao[bs(0x26b)]*(0x814+-0x10ac+0x8fc)):-0x130b*-0x1+-0x13a7+-0xc*-0xd,aq=ao[bs(0x26b)]>-0x2*0x374+-0xd27*-0x1+-0x63f?Math[bs(0x38d)](ao[bs(0x3ae)]/ao[bs(0x26b)]*am):-0x6*-0x593+0x78d+-0x28ff,ar=am-aq,as=ap>=-0x10cd+-0x124*0x6+0x17f5?a0L[bs(0x462)]:ap>=-0x1*-0x2303+0x718+0x29e9*-0x1?a0L[bs(0x291)]:a0L[bs(0x392)],at=as('█'[bs(0x37b)](aq))+a0L[bs(0x3ec)]('░'[bs(0x37b)](ar));console['log']('\x20\x20\x20\x20'+a0L[bs(0x30b)](an[bs(0x2ab)](0xfb5*0x1+0x5a7*-0x6+0x1249))+'\x20'+at+'\x20\x20'+as(ao[bs(0x3ae)]+'/'+ao['total'])+a0L[bs(0x3ec)]('\x20('+ap+'%)'));}console[bs(0x382)](),console[bs(0x382)](a0L[bs(0x236)]('\x20\x20─────────────────────────────────────────────'));}const ah=a0a4(a4,Q);if(a4===ah[bs(0x268)]&&ah['attempts']>-0x476*0x7+0x16ab+-0x224*-0x4&&a4>0x133a+-0x22c+-0x110e&&(console[bs(0x382)](),console[bs(0x382)](a0L[bs(0x35f)][bs(0x462)]('\x20\x20★\x20New\x20personal\x20best!'))),a5['length']>-0xb57+-0xee4*-0x1+-0x38d){const au=aa['filter'](av=>a5[bs(0x47d)](av[bs(0x484)]))[bs(0x463)](av=>({...av}));a0a5(au);}else a0a7();if(await q(0x6*0x5e5+-0xc2f*0x1+-0xb77),a5[bs(0x468)]>-0x4ed*-0x5+0x1*-0xdc1+-0xae0){console[bs(0x382)](),console[bs(0x382)](a0L['yellow']('\x20\x20'+a5[bs(0x468)]+'\x20'+a0ai(bs(0x1f0)))),console[bs(0x382)]();for(const av of a5){const aw=aa['find'](az=>az[bs(0x484)]===av);if(!aw)continue;const ax=ab[av],ay=aw['answer'];console[bs(0x382)](a0L[bs(0x30b)](bs(0x48c)+av+'.\x20'+aw[bs(0x342)])),ax?console[bs(0x382)](a0L[bs(0x392)]('\x20\x20\x20\x20'+a0ai(bs(0x1f6))+':\x20'+ax+'.\x20'+aw[bs(0x3d2)][ax])):console['log'](a0L[bs(0x291)](bs(0x40a)+a0ai(bs(0x1f6))+bs(0x495))),ay&&console[bs(0x382)](a0L[bs(0x462)](bs(0x40a)+a0ai(bs(0x3ae))+':\x20'+ay+'.\x20'+aw[bs(0x3d2)][ay])),aw['explanation']&&console[bs(0x382)](a0L['gray'](bs(0x4d2)+aw[bs(0x366)])),console[bs(0x382)]();}}else console[bs(0x382)](),console[bs(0x382)](a0L['green']('\x20\x20'+a0ai('perfectScore')));await q(-0x8f*0x9+-0x1d18+0x29ef),console[bs(0x382)](),console['log'](a0L['cyan'](bs(0x320))),console[bs(0x382)](a0L['white']('\x20\x20'+a0ai(bs(0x20e))+'\x20')+a0L[bs(0x35f)][bs(0x462)](bs(0x337))+a0L['gray']('\x20—\x20'+a0ai(bs(0x207)))),console['log'](a0L['gray']('\x20\x20'+a0ai('ai4ctfSub'))),console[bs(0x382)](a0L[bs(0x236)](bs(0x320))),console[bs(0x382)]();}catch(az){console['log'](),a0aa(az[bs(0x38c)]);}return;}const W=K[bs(0x3a1)][bs(0x261)];try{let aA;if(N(-0x1463+-0x4*0x531+0x2927,'Uploading\x20answers...'),W){const aK={};aK[bs(0x3bf)]=bs(0x314);const aL={};aL['ai4ctf']=0x0,aL['ctf4ai']=0x0;const aM=a0W()[bs(0x280)]||bs(0x3c1),aN=await fetch(aM+bs(0x46b)+K[bs(0x3a1)]['examId']+'/submit',{'method':'POST','headers':aK,'body':JSON[bs(0x283)]({'token':W,'answers':K[bs(0x298)],'interactions':K[bs(0x34b)]||[],'aiUsage':K[bs(0x2b1)]||aL,'bookmarks':K[bs(0x2cf)]||[]}),'signal':AbortSignal['timeout'](0x4ea3+-0x18ab+-0x4a0*-0x1)});if(!aN['ok']){const aO=await aN[bs(0x1e2)]()[bs(0x2f5)](()=>({'message':bs(0x39b)}));throw new Error(aO[bs(0x38c)]||'Submit\x20failed');}aA=(await aN['json']())[bs(0x4db)];}else{const aP=M();if(!aP)return;aA=await aP['submitExam'](K[bs(0x3a1)][bs(0x3ff)],K[bs(0x298)]);}N(-0x1aff+0x2b*0x83+0x2*0x298,bs(0x412)),await q(0x25*0x6b+-0x6a1+0x12*-0x6d),N(0x1173+-0x1777+0x668,bs(0x460)),console[bs(0x382)]();const aB={};aB['ai4ctf']=0x0,aB['ctf4ai']=0x0;const aC={'answered':Object[bs(0x219)](K[bs(0x298)])['length'],'total':K[bs(0x3a1)][bs(0x249)],'bookmarks':Array[bs(0x3d5)](K[bs(0x2cf)])?K[bs(0x2cf)][bs(0x468)]:0x282*-0x6+0xf53+-0x47,'help':R(K),'aiUsage':K[bs(0x2b1)]||aB,'interactions':(K[bs(0x34b)]||[])[bs(0x468)],'durationMin':K[bs(0x3a1)]['durationMinutes']||0x119f+-0x9f*-0xe+0x1a51*-0x1,'confirmedAt':K[bs(0x3a1)][bs(0x429)]||K[bs(0x3a1)][bs(0x2da)],'examId':K[bs(0x3a1)][bs(0x3ff)]};a0a0();const aD=Math[bs(0x25d)](-0x1fbf+-0x68+-0x1*-0x2027,Math[bs(0x38d)]((Date['now']()-new Date(aC['confirmedAt'])['getTime']())/(0x1454+-0x7a*-0x47+-0x3242))),aE=Math['floor'](aD/(-0x1de3+0xe1*-0x19+0x3418)),aF=aD%(-0xb*0x181+0x1fe7+0x4*-0x3c8);console[bs(0x382)](),console[bs(0x382)](a0L['cyan'](bs(0x21b))),console[bs(0x382)](),console[bs(0x382)](a0L[bs(0x35f)][bs(0x30b)](bs(0x2bb))),console[bs(0x382)](a0L[bs(0x35f)][bs(0x30b)](bs(0x32e))),console[bs(0x382)](a0L[bs(0x35f)][bs(0x30b)](bs(0x2d1))),console[bs(0x382)](a0L[bs(0x35f)][bs(0x30b)](bs(0x339))),console[bs(0x382)](a0L[bs(0x35f)]['white'](bs(0x1ef))),console['log'](a0L[bs(0x35f)][bs(0x30b)](bs(0x381))),console[bs(0x382)]();const aG=aA[bs(0x458)]?a0L[bs(0x462)][bs(0x35f)]('\x20\x20\x20✓\x20\x20Submission\x20accepted\x20—\x20baseline\x20met'):a0L[bs(0x291)][bs(0x35f)](bs(0x302));console['log'](aG),console['log'](),console['log'](a0L[bs(0x30b)](bs(0x3a7))),console[bs(0x382)](a0L['white'](bs(0x492))),console[bs(0x382)](a0L['white']('\x20\x20\x20the\x20organizer\x20in\x20your\x20country.')),console[bs(0x382)](),console['log'](a0L[bs(0x236)]('\x20\x20─────────────────────────────────────────────')),console[bs(0x382)](),console['log'](a0L[bs(0x35f)]['white'](bs(0x3f3)));const aH=aC[bs(0x26b)]-aC[bs(0x310)];console[bs(0x382)](bs(0x40a)+a0L[bs(0x3ec)](bs(0x224))+a0L['white'](aC[bs(0x310)]+'/'+aC[bs(0x26b)])+(aH>-0xcd7+0x10f7+-0x20*0x21?a0L['gray']('\x20\x20·\x20\x20'+aH+bs(0x4c7)):'')),console[bs(0x382)]('\x20\x20\x20\x20'+a0L[bs(0x3ec)](bs(0x32c))+a0L['white'](aE+'m\x20'+aF+'s')+a0L[bs(0x3ec)](bs(0x282)+aC[bs(0x2bf)]+bs(0x28f))),aC[bs(0x2cf)]>-0xef*0x1+-0x79f*0x1+-0x16d*-0x6&&console[bs(0x382)](bs(0x40a)+a0L['gray']('Flagged:\x20\x20\x20')+a0L[bs(0x291)]('★\x20'+aC[bs(0x2cf)])),console[bs(0x382)]();const aI=aA[bs(0x2cc)];if(aI&&Object[bs(0x219)](aI)[bs(0x468)]>=0x258b+0x14dd+-0x3a66){const aQ=Object[bs(0x273)](aI)['filter'](([,aV])=>aV[bs(0x26b)]>-0x4*-0x836+-0x7*0x3d+-0x1f2d)[bs(0x463)](([aV,aW])=>({'cat':aV,'pct':aW['correct']/aW[bs(0x26b)]}))[bs(0x3dc)]((aV,aW)=>aW['pct']-aV['pct']),aR=Math['min'](0x17+-0x2441+0x242c,Math[bs(0x3d9)](aQ[bs(0x468)]/(-0x1fc6+0x9*0x1f2+0xe47*0x1))),aS=Math[bs(0x38e)](-0x2e9+0x188e+-0x15a3,Math[bs(0x3d9)](aQ['length']/(0x1b6a+0x27d+-0x1de4))),aT=aQ['slice'](0x4df*0x1+0x19e*-0x5+0x337,aR)[bs(0x463)](aV=>aV['cat']),aU=aQ[bs(0x20b)](-aS)['map'](aV=>aV['cat']);aT['some'](aV=>aU[bs(0x47d)](aV))||(console[bs(0x382)](a0L[bs(0x35f)][bs(0x30b)](bs(0x1ea))),console[bs(0x382)](bs(0x40a)+a0L[bs(0x462)](bs(0x1fe))+a0L[bs(0x30b)](aT['join'](',\x20'))),console[bs(0x382)]('\x20\x20\x20\x20'+a0L[bs(0x291)](bs(0x353))+a0L[bs(0x30b)](aU['join'](',\x20'))),console[bs(0x382)](a0L[bs(0x3ec)](bs(0x2a5))),console[bs(0x382)]());}console['log'](a0L[bs(0x35f)]['white'](bs(0x2c1))),console[bs(0x382)](bs(0x40a)+a0L[bs(0x3ec)]('Help:\x20\x20\x20\x20\x20\x20')+a0L[bs(0x30b)](aC[bs(0x28a)][bs(0x2e6)]+'/'+aC[bs(0x28a)][bs(0x25d)])),console[bs(0x382)](bs(0x40a)+a0L['gray'](bs(0x38a))+a0L['white'](aC[bs(0x2b1)][bs(0x337)]+'\x20AI4CTF')+a0L[bs(0x3ec)](bs(0x239))+a0L['white'](aC[bs(0x2b1)][bs(0x371)]+bs(0x4d9))),console[bs(0x382)](),console[bs(0x382)](a0L['cyan'](bs(0x320))),console[bs(0x382)](),console['log'](a0L['bold'][bs(0x30b)](bs(0x39a))),console['log'](a0L['gray'](bs(0x415))),console[bs(0x382)](a0L[bs(0x3ec)](bs(0x258))+a0L[bs(0x30b)]('demo')+a0L[bs(0x3ec)](bs(0x3eb))),console['log'](a0L[bs(0x3ec)](bs(0x27c))+a0L[bs(0x30b)](bs(0x30e))),console[bs(0x382)]();const {showCToBUpgradePrompt:aJ}=await import('../lib/paper-upgrade.js');aJ(aC[bs(0x3ff)],aA[bs(0x458)]),console[bs(0x382)](a0L['yellow']('\x20\x20ICOA\x202026\x20·\x20Sydney,\x20Australia\x20·\x20Jun\x2027\x20–\x20Jul\x202')),console[bs(0x382)](a0L[bs(0x236)][bs(0x38b)]('\x20\x20https://icoa2026.au')),console[bs(0x382)](),console[bs(0x382)](a0L[bs(0x236)](bs(0x21b))),console[bs(0x382)]();}catch(aV){console[bs(0x382)](),a0aa(aV[bs(0x38c)]);}}),B[bb(0x3d3)](bb(0x23f))['description']('View\x20exam\x20result')[bb(0x48f)](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(0x32a));F=J[bt(0x3a1)][bt(0x3ff)];}const H=a0ag(bt(0x2d7));H[bt(0x2bd)]();try{const K=await G['getResult'](F);H[bt(0x494)](bt(0x214)),console[bt(0x382)](),a0ae(K[bt(0x204)]),a0af(bt(0x427),a0L[bt(0x35f)](K['score']+'/'+K[bt(0x26b)])),a0af(bt(0x4cd),a0L[bt(0x35f)](K[bt(0x2f2)]+'%')),a0af(bt(0x2fa),K[bt(0x458)]?a0L[bt(0x462)][bt(0x35f)](bt(0x3c2)):a0L[bt(0x392)][bt(0x35f)]('NOT\x20PASSED')),a0af(bt(0x388),K['submittedAt']),console[bt(0x382)]();}catch(L){H[bt(0x4df)]('Failed\x20to\x20load\x20result'),a0aa(L[bt(0x38c)]);}}),B['command']('token\x20<code>')[bb(0x3c7)](bb(0x21a))[bb(0x48f)](async J=>{const bu=bb;a0a8('exam\x20token\x20'+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import('../lib/exam-state.js'),V=K();if(V){const a2=V[bu(0x3a1)]['token'],a3=a0a1(),a4=!!a2&&a2[bu(0x433)]()[bu(0x45e)]()!==J[bu(0x433)]()[bu(0x45e)](),a5=!!a3&&a3['getTime']()+(0x293dc0*0x1+0x77f4e+-0x1545ce)<Date[bu(0x246)]();if(a4&&a5)return Q(),console[bu(0x382)](),console[bu(0x382)](a0L[bu(0x3ec)](bu(0x3bc))),console[bu(0x382)](),console[bu(0x382)](a0L[bu(0x30b)](bu(0x1f9))+a0L[bu(0x35f)][bu(0x236)](bu(0x347)+J)),void console[bu(0x382)]();if(!a2&&J)return V['session'][bu(0x261)]=J[bu(0x433)](),L(V),console[bu(0x382)](),console['log'](a0L[bu(0x462)](bu(0x2f1))),console['log'](a0L[bu(0x3ec)](bu(0x356))+a0L['white'](bu(0x2b4))+a0L[bu(0x3ec)]('\x20·\x20')+a0L[bu(0x30b)](bu(0x2b6))),console['log'](),console['log'](a0L[bu(0x35f)][bu(0x30b)]('\x20\x20Continue\x20this\x20exam:')),console['log'](a0L[bu(0x3ec)](bu(0x4d2))+a0L[bu(0x35f)][bu(0x236)](bu(0x1ec))+a0L['gray']('\x20\x20\x20\x20\x20\x20resume\x20at\x20any\x20question')),console[bu(0x382)](a0L[bu(0x3ec)](bu(0x4d2))+a0L[bu(0x35f)][bu(0x236)]('exam\x20review')+a0L[bu(0x3ec)](bu(0x42a))),void console[bu(0x382)]();const a6=Object[bu(0x219)](V[bu(0x298)])[bu(0x468)],a7=V[bu(0x3a1)]['questionCount'],a8=a0a1(),a9=a8?Math[bu(0x25d)](0x417+-0x29*0x2f+0x5*0xb0,Math[bu(0x38d)]((a8[bu(0x471)]()-Date['now']())/(0x1*0x13cdb+-0x1c39*-0x1+-0x6eb4))):null;return console[bu(0x382)](),console[bu(0x382)](a0L['yellow'](bu(0x4c4))),console[bu(0x382)](),console[bu(0x382)](a0L[bu(0x3ec)](bu(0x4cb))+a0L[bu(0x30b)](V[bu(0x3a1)][bu(0x204)])),a2&&console[bu(0x382)](a0L[bu(0x3ec)]('\x20\x20Token:\x20\x20\x20')+a0L['white'](a2)+(a2===J?a0L[bu(0x462)](bu(0x3d6)):a0L['yellow'](bu(0x372)))),console[bu(0x382)](a0L[bu(0x3ec)](bu(0x3a5))+a0L[bu(0x30b)](a6+'/'+a7)),null!==a9&&console['log'](a0L[bu(0x3ec)](bu(0x446))+a0L['white'](a9+bu(0x4c8))),console[bu(0x382)](),console[bu(0x382)](a0L[bu(0x35f)]['white'](bu(0x448))),console['log'](a0L[bu(0x3ec)](bu(0x4d2))+a0L[bu(0x35f)][bu(0x236)]('exam\x20q\x201')+a0L[bu(0x3ec)](bu(0x404))),console[bu(0x382)](a0L['gray'](bu(0x4d2))+a0L[bu(0x35f)][bu(0x236)](bu(0x263))+a0L[bu(0x3ec)]('\x20\x20\x20see\x20progress\x20+\x20flagged\x20items')),console[bu(0x382)](a0L[bu(0x3ec)](bu(0x4d2))+a0L['bold'][bu(0x236)](bu(0x2b6))+a0L[bu(0x3ec)](bu(0x3ea))),a2&&a2!==J&&(console['log'](),console[bu(0x382)](a0L[bu(0x291)](bu(0x4c2))),console['log'](a0L[bu(0x291)](bu(0x218))),console['log'](),console[bu(0x382)](a0L['gray']('\x20\x20If\x20you\x20need\x20to\x20abandon\x20this\x20session\x20(e.g.\x20expired\x20/\x20wrong\x20paper),')),console[bu(0x382)](a0L[bu(0x3ec)](bu(0x405))+a0L[bu(0x35f)][bu(0x236)](bu(0x436))+a0L[bu(0x3ec)](bu(0x2e8)))),void console[bu(0x382)]();}const {isNativeWindowsCmd:W}=await import(bu(0x4a3));if(!W()&&!a0am()){let aa=!(-0x13ce+0xec5+0x50a);try{const ab={};ab[bu(0x3bf)]=bu(0x314);const ac=a0W()[bu(0x280)]||'https://practice.icoa2026.au',ad=await fetch(ac+bu(0x329),{'method':bu(0x498),'headers':ab,'body':JSON['stringify']({'token':J[bu(0x433)](),'deviceHash':a0aj(),'peek':!(-0xf1d*-0x1+0x16*-0x89+-0x5*0xab)}),'signal':AbortSignal[bu(0x31d)](0xcf4+-0x2*-0xcfb+-0x1362)});if(ad['ok']){const ae=await ad[bu(0x1e2)]();(ae?.[bu(0x4db)]?.['exam_id']||'')['endsWith']('-c')&&(aa=!(-0x525+-0xb*-0x259+-0x1*0x14ae));}}catch{}if(!aa)return console[bu(0x382)](),a0ab('Pre-exam\x20setup\x20required\x20before\x20entering\x20a\x20token.'),console['log'](a0L[bu(0x3ec)](bu(0x42e))+a0L[bu(0x35f)][bu(0x236)](bu(0x31f))),console[bu(0x382)](a0L[bu(0x3ec)](bu(0x226))+a0L[bu(0x35f)][bu(0x236)]('back')+a0L[bu(0x3ec)](bu(0x37e))),console[bu(0x382)](a0L[bu(0x3ec)](bu(0x2dd))),void console[bu(0x382)]();}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(0x29a)](0x1*-0x182f+0xb*-0x139+0x1*0x25a2,-0x7*0x559+-0x1c9f*-0x1+-0x2*-0x469)[bu(0x45e)]()],Z=a0W(),a0=Z[bu(0x280)]||bu(0x3c1),a1=Y||Z[bu(0x27d)]||'en';Y&&Y!==(Z['language']||'en')&&a0X({'language':Y}),console[bu(0x382)](),N(0xd0d*-0x1+0xe4d*0x1+-0x140,bu(0x42b));try{const af={};af[bu(0x3bf)]=bu(0x314);const ag=await fetch(a0+bu(0x329),{'method':bu(0x498),'headers':af,'body':JSON[bu(0x283)]({'token':J[bu(0x433)](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal['timeout'](-0x2947+-0x2a88+0x7adf)});if(!ag['ok']){N(-0x18b+0x24*0xa2+0x1*-0x153d,''),console[bu(0x382)]();const ao=await ag[bu(0x1e2)]()[bu(0x2f5)](()=>({'message':bu(0x385)}));return a0aa(ao[bu(0x38c)]||bu(0x47b)),void a0ac('Check\x20your\x20token\x20or\x20contact\x20your\x20proctor.');}N(-0x7*0x47d+0x257*-0xc+-0x3*-0x13df,bu(0x20f));const ah=await ag[bu(0x1e2)](),{session:ai,questions:aj,languages:ak}=ah[bu(0x4db)];N(-0x1b1f+0x5*-0x5d5+0x1c42*0x2,bu(0x1fc)),await q(-0xfb3+-0x152d+-0x4*-0x96a),N(-0x10f0+-0x259*0x10+0x1b72*0x2,'Ready!'),console['log'](),console[bu(0x382)](),a0ae(ai['examName']),console[bu(0x382)](),a0af(bu(0x357),ai[bu(0x249)]+'\x20(30\x20MCQ\x20+\x2010\x20practical)'),a0af(bu(0x4e2),ai[bu(0x1e7)]+bu(0x3a9)),a0af('Total',(ai['totalScore']||-0x2177+0xe*0xdf+0x45f*0x5)+bu(0x2d8)),a0af(bu(0x227),(ai[bu(0x3f2)]||-0x6*0x178+0x1ad3+-0x11b8)+bu(0x31a)),console[bu(0x382)](),console[bu(0x382)](a0L[bu(0x30b)](bu(0x483))),console[bu(0x382)](a0L[bu(0x30b)](bu(0x2b8))),console['log'](a0L['white'](bu(0x210))),console[bu(0x382)](a0L['white'](bu(0x2a9))),ak&&ak[bu(0x468)]>-0x26b*0xf+0x106e+0xa*0x1fc&&console[bu(0x382)](a0L[bu(0x30b)](bu(0x40e)+ak['join'](',\x20')+bu(0x2a4))),console[bu(0x382)](),console[bu(0x382)](a0L[bu(0x291)]('\x20\x20Rules:')),console[bu(0x382)](a0L[bu(0x30b)]('\x20\x20\x20\x20•\x20All\x20interactions\x20are\x20recorded\x20for\x20audit')),console[bu(0x382)](a0L[bu(0x30b)](bu(0x2ec))),console[bu(0x382)](a0L['white']('\x20\x20\x20\x20•\x20You\x20may\x20exit\x20and\x20resume\x20with\x20the\x20same\x20token')),console[bu(0x382)](),await new Promise(ap=>{const bv=bu;process[bv(0x2b5)][bv(0x423)](a0L['bold'][bv(0x291)]('\x20\x20Press\x20Enter\x20to\x20start\x20the\x20exam\x20timer...\x20'));const aq=!!process[bv(0x1ed)][bv(0x23c)]&&process[bv(0x1ed)][bv(0x34d)];process[bv(0x1ed)][bv(0x23c)]&&process[bv(0x1ed)][bv(0x389)]&&process['stdin'][bv(0x389)](!(-0x1b34+-0x16*-0xfe+0x561));const ar=as=>{const bw=bv,at=as['toString']();(at[bw(0x47d)]('\x0a')||at[bw(0x47d)]('\x0d'))&&(process[bw(0x1ed)][bw(0x474)](bw(0x4db),ar),process[bw(0x1ed)][bw(0x23c)]&&process['stdin'][bw(0x389)]&&process[bw(0x1ed)][bw(0x389)](aq),process[bw(0x2b5)][bw(0x423)]('\x0a'),ap());};process[bv(0x1ed)]['on'](bv(0x4db),ar),process[bv(0x1ed)][bv(0x383)]();});const al=new Date()[bu(0x22b)]();ai[bu(0x429)]=al,ai[bu(0x261)]=J['trim']();try{const ap=Date[bu(0x246)](),aq=await fetch(a0+bu(0x2ce),{'method':bu(0x426),'signal':AbortSignal[bu(0x31d)](-0x2e9*-0xd+0x2*0x287+-0x1f2b)});if(aq['ok']){const ar=await aq[bu(0x1e2)](),as=ar?.['data']?.['server_time_ms'];if(bu(0x484)==typeof as&&as>0x2*0x133e+0x1fb9+0x1767*-0x3){const at=(ap+Date['now']())/(0x487+-0x1*-0xc73+0xc*-0x16a);ai['clockOffsetMs']=Math['round'](as-at),ai[bu(0x3cf)]=as+(-0x1a0b+-0x3fb*0x5+0x1*0x2e2e)*ai[bu(0x1e7)]*(-0x7*0x322+0x2161+-0x78b);}}}catch{}const am={};am[bu(0x337)]=0x0,am[bu(0x371)]=0x0;const an={};an[bu(0x3a1)]=ai,an[bu(0x22a)]=aj,an['answers']={},an[bu(0x34b)]=[],an[bu(0x2b1)]=am,(a0Z(an),console['log'](),a0a9(bu(0x44a)),a0af('Time\x20Remaining',ai[bu(0x1e7)]+bu(0x485)),aj[bu(0x468)]>-0x134a+-0x1c3c+-0x229*-0x16&&U(aj[0x25*-0x10d+0xa7d+0x1c64]));}catch(au){console[bu(0x382)](),'TimeoutError'===au[bu(0x4d5)]?a0aa(bu(0x2f9)):a0aa(au[bu(0x38c)]||bu(0x23a));}}),B[bb(0x3d3)](bb(0x3e2),{'hidden':!(-0x1b8d+0x1100+0xa8d)})[bb(0x3c7)](bb(0x209))[bb(0x48f)](async()=>{const bx=bb;a0a8(bx(0x436));const {getRealExamState:F,clearExamState:G}=await import(bx(0x3e9)),H=F();if(!H)return console[bx(0x382)](),console[bx(0x382)](a0L[bx(0x3ec)](bx(0x496))),void console[bx(0x382)]();const J=H[bx(0x3a1)]['token'];if(console[bx(0x382)](),console[bx(0x382)](a0L[bx(0x291)](bx(0x2c3))),console[bx(0x382)](a0L['gray']('\x20\x20\x20\x20\x20Exam:\x20\x20')+a0L['white'](H['session']['examName'])),J&&console['log'](a0L[bx(0x3ec)](bx(0x2a1))+a0L['white'](J)),console[bx(0x382)](a0L['gray'](bx(0x456))),console[bx(0x382)](a0L[bx(0x3ec)](bx(0x380))),console[bx(0x382)](),console['log'](a0L[bx(0x3ec)](bx(0x267))+a0L['bold'][bx(0x236)](bx(0x3e2))+a0L[bx(0x3ec)](bx(0x3db))),bx(0x3e2)!==(await new Promise(K=>{const by=bx;process[by(0x2b5)][by(0x423)](by(0x326));const L=Q=>{const bz=by,V=Q[bz(0x233)]()[bz(0x433)]();(V[bz(0x47d)]('\x0a')||V[bz(0x47d)]('\x0d')||V[bz(0x468)]>0x24a*-0xb+-0xa40*-0x2+0x4ae*0x1)&&(process[bz(0x1ed)][bz(0x474)](bz(0x4db),L),K(V[bz(0x206)](/[\r\n]/g,'')));};process[by(0x1ed)]['on'](by(0x4db),L),process[by(0x1ed)][by(0x383)]();}))[bx(0x2e2)]())return console['log'](a0L[bx(0x3ec)]('\x20\x20Cancelled.')),void console[bx(0x382)]();G(),console[bx(0x382)](),console[bx(0x382)](a0L[bx(0x462)](bx(0x309))),console[bx(0x382)](a0L['gray'](bx(0x3a6))+a0L['bold'][bx(0x236)](bx(0x45a))),console[bx(0x382)]();}),B[bb(0x3d3)]('demo')[bb(0x3c7)]('Try\x20a\x20free\x20practice\x20exam\x20(no\x20account\x20needed)')[bb(0x48f)](async()=>{const bA=bb;a0a8('exam\x20demo'),E(bA(0x3ee));const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import('../lib/demo-exam.js');a0W()[bA(0x359)]||(await(async function(){const bB=bA;let a0=!(0x254d+0x13e8+0x4*-0xe4d);const a1=process['stdin'],a2=()=>{a0=!(-0x27c*-0xa+-0x3ba*-0x7+0xf6*-0x35);},a3=a1[bB(0x23c)]&&bB(0x488)==typeof a1[bB(0x389)];a3&&(a1[bB(0x389)](!(-0x209f*0x1+0x2*0x5a1+0x155d)),a1[bB(0x383)](),a1[bB(0x2e0)](bB(0x4db),a2));const a4=async a5=>{let a6=-0x169+-0x1c3c+0x1*0x1da5;for(;a6<a5&&!a0;)await q(-0x14be+0x2227*0x1+-0x1*0xd19),a6+=-0x2*0x482+-0x23ea*-0x1+0xa6*-0x29;};try{if(console[bB(0x4be)](),console[bB(0x382)](),console[bB(0x382)](a0L[bB(0x3ec)]('\x20\x20\x20')+a0L[bB(0x2f4)](bB(0x478))),console['log'](),console[bB(0x382)](a0L[bB(0x35f)][bB(0x30b)](bB(0x2bb))),console['log'](a0L['bold'][bB(0x30b)](bB(0x32e))),console[bB(0x382)](a0L[bB(0x35f)][bB(0x30b)](bB(0x2d1))),console[bB(0x382)](a0L['bold'][bB(0x30b)](bB(0x339))),console['log'](a0L[bB(0x35f)][bB(0x30b)](bB(0x1ef))),console[bB(0x382)](a0L['bold']['white'](bB(0x381))),console[bB(0x382)](),console['log'](a0L[bB(0x35f)]['yellow'](bB(0x403))),console[bB(0x382)](a0L[bB(0x3ec)](bB(0x352))),await a4(-0x12de+-0x1081+0x2d23),a0)return;if(console['log'](),console['log'](a0L[bB(0x30b)]('\x20\x20\x20What\x20you\x27ll\x20do\x20today:')),console[bB(0x382)](),await a4(0x24*0x107+0x41e+0x79*-0x52),a0)return;if(console['log'](a0L[bB(0x236)](bB(0x343))+a0L[bB(0x30b)]('Answer\x2010\x20quick\x20questions')+a0L[bB(0x3ec)]('\x20\x20\x20\x20\x20\x20\x20\x20(now,\x20~5\x20min)')),await a4(0x1057+0x1af*0x8+-0x1b13),a0)return;if(console[bB(0x382)](a0L[bB(0x462)](bB(0x343))+a0L[bB(0x30b)](bB(0x37d))+a0L['gray'](bB(0x346))),await a4(-0x24ab*-0x1+0x196e+-0x3b5d),a0)return;if(console[bB(0x382)](a0L[bB(0x392)]('\x20\x20\x20\x20\x20▣\x20')+a0L['white'](bB(0x1f8))+a0L['gray'](bB(0x419))),await a4(0x3f5+0x1d42+-0x1*0x1db3),a0)return;if(console[bB(0x382)](),console[bB(0x382)](a0L[bB(0x35f)]['white']('\x20\x20\x20Your\x20terminal\x20')+a0L['bold'][bB(0x291)]('IS')+a0L[bB(0x35f)]['white'](bB(0x49c))),console['log'](),await a4(-0x1828+0x20*0xfb+0x2*-0xae),a0)return;if(console['log'](a0L[bB(0x3ec)]('\x20\x20\x20·\x20110\x20CTF\x20tools\x20pre-configured')),await a4(0x23c1+-0x23c*0xf+-0xad),a0)return;if(console['log'](a0L[bB(0x3ec)](bB(0x248))),await a4(-0xf4d+0x19fb+-0x48f*0x2),a0)return;if(console[bB(0x382)](a0L[bB(0x3ec)](bB(0x36e))),await a4(-0x3a*0x51+-0x1*0xfb5+0x252f),a0)return;console[bB(0x382)](),console['log'](a0L[bB(0x35f)][bB(0x236)]('\x20\x20\x20Press\x20any\x20key\x20to\x20start\x20demo...')),await a4(-0x199e*0x1+-0x2*-0x83e+0x18c2);}finally{((()=>{const bC=bB;if(a3){a1[bC(0x474)](bC(0x4db),a2);try{a1[bC(0x389)](!(-0x9*-0x59+-0x1d82+0x1*0x1a62));}catch{}a1[bC(0x3de)]();}})()),console[bB(0x4be)]();}}()),a0X({'demoIntroSeen':!(-0x14f3*-0x1+-0x1834+0x341*0x1)})),console[bA(0x382)](),console[bA(0x382)](a0L[bA(0x30b)]('\x20\x20Demo:\x20')+a0L[bA(0x3ec)](H+bA(0x2ed)+J+bA(0x4d3))),console[bA(0x382)](a0L[bA(0x3ec)]('\x20\x20You\x20can\x20pause\x20with\x20')+a0L[bA(0x236)](bA(0x475))+a0L['gray'](bA(0x4ac))+a0L[bA(0x236)](bA(0x445))+a0L[bA(0x3ec)]('\x20at\x20any\x20time.')),await new Promise(a0=>{const bD=bA;process[bD(0x2b5)][bD(0x423)](a0L['bold'][bD(0x291)](bD(0x252)));const a1=!!process['stdin'][bD(0x23c)]&&process[bD(0x1ed)][bD(0x34d)];process[bD(0x1ed)][bD(0x23c)]&&process[bD(0x1ed)][bD(0x389)]&&process[bD(0x1ed)]['setRawMode'](!(-0x26c9*-0x1+0x26a9+0x5*-0xf7d));const a2=a3=>{const bE=bD,a4=a3[bE(0x233)]();(a4[bE(0x47d)]('\x0a')||a4[bE(0x47d)]('\x0d'))&&(process[bE(0x1ed)]['removeListener'](bE(0x4db),a2),process[bE(0x1ed)][bE(0x23c)]&&process['stdin'][bE(0x389)]&&process[bE(0x1ed)][bE(0x389)](a1),process[bE(0x2b5)][bE(0x423)]('\x0a'),a0());};process[bD(0x1ed)]['on'](bD(0x4db),a2),process[bD(0x1ed)]['resume']();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import(bA(0x3e9));Q()&&V('demo-free'),console[bA(0x382)](),a0ae(bA(0x3f6)),console[bA(0x382)](),console[bA(0x382)](a0L[bA(0x30b)]('\x20\x20Free\x20practice\x20·\x20No\x20account\x20needed\x20·\x20No\x20time\x20limit')),console[bA(0x382)](a0L[bA(0x30b)]('\x20\x20'+H+bA(0x378)+J+bA(0x32b)));const W=a0a3();if(W[bA(0x4b6)]>0x2402+-0x74*0x9+-0x1fee*0x1){const a0=W[bA(0x3ca)],a1=a0>=0x1d25+0x509*0x1+-0x21de?a0L[bA(0x462)]:a0>=-0x14b7+0x469+0x108a?a0L[bA(0x291)]:a0L[bA(0x30b)];console[bA(0x382)](),console['log'](a0L[bA(0x3ec)](bA(0x361))+a1(W[bA(0x268)]+'/'+H+'\x20('+a0+'%)')+a0L[bA(0x3ec)]('\x20\x20·\x20\x20'+W['attempts']+bA(0x2e7)));}console[bA(0x382)](),console[bA(0x382)](a0L[bA(0x3ec)](bA(0x435))),console[bA(0x382)](a0L[bA(0x30b)]('\x20\x20'+a0ai('howToPlay'))),console[bA(0x382)](a0L[bA(0x291)]('\x20\x20\x20\x20A/B/C/D')+a0L['gray'](bA(0x4e9)+a0ai(bA(0x399)))),console[bA(0x382)](a0L[bA(0x291)]('\x20\x20\x20\x20help')+a0L[bA(0x3ec)](bA(0x3f1)+a0ai('htpHelp'))),console[bA(0x382)](a0L['yellow'](bA(0x253))+a0L[bA(0x3ec)]('\x20/\x20')+a0L[bA(0x291)](bA(0x461))+a0L[bA(0x3ec)]('\x20\x20\x20\x20'+a0ai(bA(0x36a)))),console[bA(0x382)](a0L[bA(0x291)](bA(0x45c))+a0L[bA(0x3ec)](bA(0x1e8)+a0ai(bA(0x262)))),console[bA(0x382)](a0L[bA(0x291)](bA(0x440))+a0L[bA(0x3ec)](bA(0x3f1)+a0ai('htpBack'))),console[bA(0x382)](a0L['yellow'](bA(0x358))+a0L['gray'](bA(0x3f1)+a0ai(bA(0x1f3)))),console[bA(0x382)](a0L['gray'](bA(0x4a6))),console[bA(0x382)](a0L[bA(0x3ec)]('\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[bA(0x382)](a0L[bA(0x3ec)](bA(0x435))),console[bA(0x382)]();const {getConfig:X}=await import(bA(0x421)),Y=X()[bA(0x27d)]||'en';'en'===Y?(console[bA(0x382)](a0L[bA(0x3ec)](bA(0x341))),console['log'](a0L[bA(0x3ec)](bA(0x350))),console[bA(0x382)](a0L[bA(0x3ec)](bA(0x21e)))):console[bA(0x382)](a0L['green'](bA(0x323)+Y)),console['log'](),console[bA(0x382)](a0L[bA(0x30b)](bA(0x2aa)));const Z={...L,'startedAt':new Date()[bA(0x22b)]()};console[bA(0x382)](),N(0x123a*-0x1+0x1c38+-0x9fe*0x1,bA(0x3c6)),await q(-0x1*-0x21e5+0x3*-0x5fb+-0xf2c),N(-0x1613+0x6eb+-0x31*-0x50,'Shuffling\x20options...'),await q(0x1796+0x2424+0xbca*-0x5),N(0x1dc8*0x1+-0xdf0+-0xf88,bA(0x2f0)),await q(-0x2bf*-0x2+0x9d9*0x2+-0x189a),N(-0xac0+-0x13*0x7b+0x1445,bA(0x294)),console[bA(0x382)](),console[bA(0x382)](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af('Questions',String(H)),a0af(bA(0x4e2),bA(0x2c8)),U(K[-0x7f*0xc+0x4bb+0x1*0x139]);}),B['command'](bb(0x3b7))['description'](bb(0x467))[bb(0x48f)](async()=>{const bF=bb;a0a8(bF(0x3c5)),E('post-report-retry');const {getLocalizedDemoSession:F}=await import(bF(0x3c4)),G=a0a6();if(!G||-0x3*0xb96+-0x24b+-0x250d*-0x1===G['length'])return console[bF(0x382)](),console[bF(0x382)](a0L[bF(0x291)]('\x20\x20No\x20wrong\x20questions\x20to\x20retry.\x20Run\x20')+a0L[bF(0x35f)]['cyan'](bF(0x1fd))+a0L[bF(0x291)](bF(0x25b))),void console[bF(0x382)]();const H=a0Y();if(H){if(bF(0x41d)!==H[bF(0x3a1)][bF(0x3ff)])return a0ab('Exam\x20\x22'+H[bF(0x3a1)][bF(0x204)]+bF(0x286)),void a0ac(bF(0x205));a0a0();}const J=V=>{const bG=bF;if(!V[bG(0x21c)])return V;const W=V[bG(0x3d2)][V['answer']],X=['A','B','C','D'][bG(0x463)](a2=>V[bG(0x3d2)][a2]);for(let a2=X[bG(0x468)]-(-0x7c2+0x192+0x5*0x13d);a2>-0x2395+-0x1*-0x1b25+0x870;a2--){const a3=Math['floor'](Math[bG(0x3cd)]()*(a2+(-0x207a+-0x37d+0x23f8)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[-0x1b1f+-0x8d0+0x23ef],Y['B']=X[0x2145+-0x1a29*-0x1+-0x3b6d],Y['C']=X[-0x22df*-0x1+0xf*-0x225+0x159*-0x2],Y['D']=X[-0x3*0xc70+-0x1*-0x714+0x1e3f];const Z=Y,a0=['A','B','C','D'][bG(0x4cc)](a4=>Z[a4]===W),a1={...V};return a1[bG(0x3d2)]=Z,a1['answer']=a0,a1;},K=G[bF(0x463)]((V,W)=>({...J(V),'number':W+(0x5*0x527+-0x1f77+0x5b5)})),L=F(),Q={...L,'examName':L[bF(0x204)]+'\x20\x20(Retry\x20wrong\x20only)','questionCount':K[bF(0x468)],'startedAt':new Date()[bF(0x22b)]()};console[bF(0x382)](),a0ae('Demo\x20Retry\x20—\x20Wrong\x20Questions\x20Only'),console[bF(0x382)](),console['log'](a0L[bF(0x30b)](bF(0x386)+K[bF(0x468)]+bF(0x24c)+(-0xde7+0x1e30+-0x412*0x4===K[bF(0x468)]?'':'s')+bF(0x1df))),console[bF(0x382)](a0L[bF(0x3ec)](bF(0x26a))),console[bF(0x382)](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af('Questions',String(K[bF(0x468)])),a0af(bF(0x4e2),bF(0x2c8)),U(K[-0xa3c+0x2642+-0x1c06]);}),B[bb(0x3d3)](bb(0x2c0))[bb(0x3c7)](bb(0x272))[bb(0x48f)](async()=>{const bH=bb;if(a0a8(bH(0x31f)),-0x4e4+-0x52f+0x1*0xa13===a0a3()[bH(0x4b6)])return console['log'](),a0ab('Complete\x20the\x20demo\x20first\x20before\x20setting\x20up.'),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x42e))+a0L[bH(0x35f)][bH(0x236)](bH(0x308))),void console[bH(0x382)]();const K=a0ak();if(K){const a4=K['installedPackages'][bH(0x468)],a5=a4+K[bH(0x40b)][bH(0x468)];if(a4>=-0x1e87+0xad2+0x13bd||(a5>0x5cf*0x1+0x262f+-0x2bfe?a4/a5:0xa2b+-0x981*0x3+0x8*0x24b)>=-0x1*-0x32+0x1efe+0x1*-0x1f30+0.7)return console['log'](),console[bH(0x382)](a0L[bH(0x462)](bH(0x395))+a0L[bH(0x462)]('Environment\x20already\x20set\x20up')),console['log'](a0L[bH(0x3ec)](bH(0x30c)+K[bH(0x41c)][bH(0x30a)]('T')[-0xbae+-0x1*-0xac1+0xed])),console[bH(0x382)](a0L[bH(0x3ec)]('\x20\x20\x20\x20Python:\x20'+K[bH(0x365)])),console[bH(0x382)](a0L[bH(0x3ec)]('\x20\x20\x20\x20Packages:\x20'+a4+'\x20installed')),K[bH(0x40b)][bH(0x468)]>-0x4*0x4bc+0x1*0xc+0x12e4&&console['log'](a0L[bH(0x291)](bH(0x3e8)+K[bH(0x40b)][bH(0x4eb)](',\x20'))),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x30b)](bH(0x455))+a0L[bH(0x35f)]['cyan'](bH(0x45a))),console['log'](a0L[bH(0x3ec)](bH(0x226))+a0L['bold'][bH(0x236)](bH(0x445))+a0L['gray'](bH(0x37e))),void console[bH(0x382)]();console[bH(0x382)](),console['log'](a0L[bH(0x291)](bH(0x24b)+a4+'/'+a5+bH(0x22d))),console[bH(0x382)]();}console[bH(0x382)](),a0ae(bH(0x363)),console[bH(0x382)](),console[bH(0x382)](a0L['white']('\x20\x20Installing\x20Python\x20packages\x20for\x20practical\x20questions.')),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x3e3))),console[bH(0x382)]();const L=(a6,a7)=>{const bI=bH,a8=process[bI(0x1ee)];console[bI(0x382)](),a0aa(bI(0x287)===a6?bI(0x410):bI(0x340)+a7+'\x20found,\x20but\x203.10+\x20required\x20for\x20the\x20exam.'),console['log'](),console[bI(0x382)](a0L[bI(0x35f)][bI(0x30b)](bI(0x480))),console[bI(0x382)](),bI(0x313)===a8?(console[bI(0x382)](a0L[bI(0x291)](bI(0x2b3))),console[bI(0x382)](a0L['green'](bI(0x300))),console[bI(0x382)](),console[bI(0x382)](a0L[bI(0x3ec)]('\x20\x20Or\x20download\x20installer:')),console['log'](a0L[bI(0x3ec)](bI(0x466)))):bI(0x4ca)===a8?(console[bI(0x382)](a0L[bI(0x291)](bI(0x493))),console[bI(0x382)](a0L[bI(0x462)](bI(0x344))),console['log'](a0L[bI(0x462)](bI(0x33d))),console[bI(0x382)](a0L[bI(0x462)]('\x20\x20\x20\x20sudo\x20apt\x20install\x20-y\x20python3.12\x20python3.12-venv\x20python3.12-distutils')),console[bI(0x382)](a0L[bI(0x3ec)](bI(0x481))),console[bI(0x382)](),console[bI(0x382)](a0L[bI(0x291)](bI(0x2b7))),console[bI(0x382)](a0L[bI(0x462)]('\x20\x20\x20\x20sudo\x20dnf\x20install\x20-y\x20python3.12')),console[bI(0x382)](),console[bI(0x382)](a0L['yellow'](bI(0x4a4))),console[bI(0x382)](a0L[bI(0x462)](bI(0x35b)))):bI(0x46a)===a8?(console['log'](a0L[bI(0x291)](bI(0x235))),console[bI(0x382)](a0L[bI(0x462)](bI(0x469))),console[bI(0x382)](),console[bI(0x382)](a0L[bI(0x3ec)](bI(0x4b0))),console[bI(0x382)](a0L[bI(0x3ec)](bI(0x369)))):console[bI(0x382)](a0L[bI(0x3ec)](bI(0x1e4))),console['log'](),console[bI(0x382)](a0L['white'](bI(0x2c5))+a0L[bI(0x35f)][bI(0x236)]('exam\x20setup')),console['log']();},Q='python3';let V='';try{const a6={};a6[bH(0x362)]=bH(0x2f7),a6[bH(0x31d)]=0x1388,V=a0an(Q+bH(0x201),a6)[bH(0x433)]()['replace'](bH(0x340),'');const a7=V['split']('.')[bH(0x463)](Number);if(a7[-0xb*-0x31+-0x3*0x8a1+0x4*0x5f2]<0x653*0x1+0x885+0xed5*-0x1||0x2*0x781+-0x1e61*0x1+0x166*0xb===a7[0x1ae6+0x7ac+0xb86*-0x3]&&a7[0x6b*0x43+-0xa49+0x5*-0x38b]<-0x80f+-0x34f+0xb68)return void L(bH(0x41f),V);-0x4*-0x9a7+0x1b4f+-0x1bc*0x26===a7[-0x1*0x851+0x1*0x45f+0x3f2]&&a7[0xb1*-0x11+0x156f+-0x9ad]<-0x1175+0x1b5d+0x1*-0x9dc?console['log'](a0L[bH(0x462)](bH(0x305)+V)+a0L[bH(0x3ec)]('\x20(works,\x20but\x203.12\x20recommended)')):console[bH(0x382)](a0L[bH(0x462)]('\x20\x20✓\x20Python\x20'+V));}catch{return void L(bH(0x287));}try{const a8={};a8[bH(0x376)]=bH(0x3c9),a8['timeout']=0x1388,(a0an(Q+bH(0x4d0),a8),console['log'](a0L['green']('\x20\x20✓\x20pip\x20available')));}catch{console['log'](a0L['yellow'](bH(0x2a2)));try{const a9={};a9['stdio']='ignore',a9[bH(0x31d)]=0x7530,(a0an(Q+bH(0x4b9),a9),console['log'](a0L[bH(0x462)](bH(0x336))));}catch{a0aa('Could\x20not\x20install\x20pip\x20—\x20pip\x20is\x20not\x20installed\x20on\x20your\x20system.'),console[bH(0x382)]();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import(bH(0x4a3)),{execFileSync:ac}=await import(bH(0x216)),ad=aa(),ae=ab(),af=bH(0x4ca)===process[bH(0x1ee)]&&!ad,ag=bH(0x313)===process[bH(0x1ee)];let ah=bH(0x245);if(af||ad)try{const {readFileSync:ak}=await import(bH(0x212)),al=ak('/etc/os-release',bH(0x2f7)),am=(al[bH(0x27e)](/^ID="?([^"\n]+)/m)||[])[-0x2286+0x245f*-0x1+0x46e6]||'',an=(al['match'](/^VERSION_ID="?([^"\n]+)/m)||[])[-0x47c*-0x2+-0x8*-0x2b0+-0x1*0x1e77]||'';bH(0x45d)===am?ah=bH(0x39e)+an+(ad?'\x20(WSL2)':''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?'\x20(WSL2)':''));}catch{}let ai=!(-0x23fb+0x1253*-0x2+-0x48a2*-0x1);if(ag)try{const ao={};ao[bH(0x376)]=bH(0x3c9),ao['timeout']=0x7d0,(ac(bH(0x39f),[bH(0x208)],ao),ai=!(0x1f08*0x1+-0xc5b*-0x3+-0x4419));}catch{ai=!(-0x1fd1+-0x22e7+0x42b9);}const aj=ae?bH(0x29b):bH(0x1e3);return console['log'](a0L[bH(0x35f)][bH(0x291)](bH(0x43b))),console[bH(0x382)](a0L[bH(0x35f)][bH(0x291)]('\x20\x20'+aj)),console['log'](a0L[bH(0x35f)][bH(0x291)](bH(0x43b))),console[bH(0x382)](),af||ad?(console[bH(0x382)](a0L['white'](bH(0x44c))+a0L['cyan'](ah)),console['log'](a0L['gray']('\x20\x20(Minimal\x20Ubuntu\x20/\x20cloud\x20/\x20WSL2\x20images\x20often\x20ship\x20without\x20pip.)')),console['log'](),console[bH(0x382)](a0L[bH(0x35f)][bH(0x30b)](bH(0x453))),console['log'](),console[bH(0x382)](a0L[bH(0x30b)](bH(0x47f))+a0L[bH(0x35f)]['cyan']('quit')+a0L[bH(0x30b)](bH(0x4a9))),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x30b)](bH(0x234))),console['log'](),console['log'](bH(0x4e9)+a0L[bH(0x35f)][bH(0x236)]('sudo\x20apt\x20update')),console[bH(0x382)](bH(0x4e9)+a0L[bH(0x35f)]['cyan'](bH(0x242))),console[bH(0x382)](),console['log'](a0L[bH(0x30b)](bH(0x407))),console[bH(0x382)](),console[bH(0x382)](bH(0x4e9)+a0L[bH(0x35f)][bH(0x236)](bH(0x490))),console['log'](bH(0x4e9)+a0L[bH(0x3ec)](bH(0x49e))+'\x20'+a0L[bH(0x35f)]['cyan']('exam\x20setup'))):ag?(console['log'](a0L['white'](bH(0x44c))+a0L[bH(0x236)]('macOS')),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x35f)]['white'](bH(0x453))),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x30b)](bH(0x47f))+a0L[bH(0x35f)][bH(0x236)](bH(0x288))+a0L[bH(0x30b)](bH(0x4a5))),console['log'](),ai?(console[bH(0x382)](a0L[bH(0x30b)]('\x20\x20\x20\x202.\x20Reinstall\x20Python\x20with\x20pip\x20(Homebrew\x20detected\x20✓):')),console[bH(0x382)](),console[bH(0x382)](bH(0x4e9)+a0L[bH(0x35f)][bH(0x236)](bH(0x2d5))),console['log'](bH(0x4e9)+a0L[bH(0x35f)][bH(0x236)](bH(0x2fb)))):(console['log'](a0L[bH(0x30b)]('\x20\x20\x20\x202.\x20Install\x20Homebrew\x20first\x20(we\x20did\x20not\x20find\x20')+a0L['bold'][bH(0x291)](bH(0x208))+a0L[bH(0x30b)]('):')),console[bH(0x382)](),console[bH(0x382)](bH(0x4e9)+a0L['bold']['cyan']('/bin/bash\x20-c\x20\x22$(curl\x20-fsSL\x20https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\x22')),console[bH(0x382)](),console['log'](a0L[bH(0x30b)]('\x20\x20\x20\x20\x20\x20\x20Then\x20install\x20Python:')),console[bH(0x382)](),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x35f)][bH(0x236)](bH(0x2d5)))),console[bH(0x382)](),console[bH(0x382)](a0L['white'](bH(0x1e0))),console[bH(0x382)](),console['log'](bH(0x4e9)+a0L[bH(0x35f)][bH(0x236)]('icoa')),console[bH(0x382)](bH(0x4e9)+a0L[bH(0x3ec)](bH(0x49e))+'\x20'+a0L[bH(0x35f)][bH(0x236)](bH(0x31f)))):ae?(console['log'](a0L[bH(0x30b)](bH(0x44c))+a0L[bH(0x236)]('Windows\x20native\x20(PowerShell\x20/\x20cmd)')),console['log'](),console[bH(0x382)](a0L[bH(0x35f)][bH(0x291)](bH(0x2df))),console[bH(0x382)](a0L[bH(0x3ec)]('\x20\x20Native\x20Windows\x20can\x20run\x20Paper\x20C\x20(MCQ-only)\x20and\x20AI\x20chat,\x20but')),console['log'](a0L['gray'](bH(0x27b))),console['log'](a0L[bH(0x3ec)](bH(0x23e))),console['log'](),console[bH(0x382)](a0L[bH(0x35f)][bH(0x30b)](bH(0x360))),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x30b)](bH(0x47f))+a0L['bold'][bH(0x236)](bH(0x288))+a0L[bH(0x30b)](bH(0x4a5))),console[bH(0x382)](a0L[bH(0x30b)](bH(0x27a))),console[bH(0x382)](),console[bH(0x382)](bH(0x4e9)+a0L['bold']['cyan']('wsl\x20--install\x20-d\x20Ubuntu-22.04')),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x3ec)]('\x20\x20\x20\x20\x20\x20\x20(Reboot\x20if\x20Windows\x20asks,\x20then\x20open\x20the\x20Ubuntu\x20terminal.)')),console[bH(0x382)](a0L[bH(0x30b)](bH(0x45f))),console['log'](),console[bH(0x382)](bH(0x4e9)+a0L['bold'][bH(0x236)](bH(0x1f7))),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x35f)][bH(0x236)](bH(0x43d))),console['log'](bH(0x4e9)+a0L[bH(0x35f)][bH(0x236)](bH(0x43f))),console[bH(0x382)](bH(0x4e9)+a0L[bH(0x35f)][bH(0x236)](bH(0x490))),console[bH(0x382)](),console[bH(0x382)](a0L['gray'](bH(0x437))),console[bH(0x382)](),console[bH(0x382)](a0L['white'](bH(0x47f))+a0L[bH(0x35f)][bH(0x236)]('quit')+a0L[bH(0x30b)](bH(0x4a5))),console['log'](a0L[bH(0x30b)](bH(0x4e8))),console[bH(0x382)](),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L['bold']['cyan'](bH(0x281))),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x3f5))),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x293))),console[bH(0x382)](a0L['white']('\x20\x20\x20\x203.\x20Open\x20a\x20NEW\x20PowerShell\x20window\x20(PATH\x20refresh),\x20then:')),console['log'](),console[bH(0x382)](bH(0x4e9)+a0L[bH(0x35f)]['cyan'](bH(0x490))),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L['gray'](bH(0x49e))+'\x20'+a0L[bH(0x35f)][bH(0x236)]('exam\x20setup'))):(console[bH(0x382)](a0L[bH(0x30b)](bH(0x3a4))+a0L[bH(0x236)](process[bH(0x1ee)])+a0L[bH(0x30b)](')')),console['log'](),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x2c2))),console['log'](bH(0x4e9)+a0L['bold'][bH(0x236)](bH(0x490))),console[bH(0x382)](bH(0x4e9)+a0L['gray'](bH(0x49e))+'\x20'+a0L[bH(0x35f)]['cyan']('exam\x20setup'))),console[bH(0x382)](),console[bH(0x382)](a0L['gray'](bH(0x4c5))),void console[bH(0x382)]();}}const W={};W[bH(0x284)]=bH(0x3cb),W[bH(0x2a6)]=bH(0x4d6),W[bH(0x449)]='z3',W[bH(0x213)]=bH(0x43c),W['pwntools']=bH(0x321),W['ROPgadget']=bH(0x292);const X=['pwntools','cryptography',bH(0x364),'beautifulsoup4',bH(0x4d4),bH(0x213),bH(0x26f),bH(0x21f),bH(0x449),bH(0x2a6),'ROPgadget','volatility3','regex'],Y=W;console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x30b)](bH(0x332)+X['length']+bH(0x334))),console[bH(0x382)]();let Z='';try{const ap={};ap[bH(0x362)]=bH(0x2f7),ap[bH(0x31d)]=0x2710,a0an(Q+bH(0x324),ap);}catch(aq){const ar=String(aq?.[bH(0x2b5)]||aq?.[bH(0x472)]||aq?.[bH(0x38c)]||'');/externally-managed-environment|break-system-packages/i[bH(0x40f)](ar)&&(Z=bH(0x335),console['log'](a0L[bH(0x291)]('\x20\x20ℹ\x20PEP\x20668\x20detected\x20—\x20using\x20--user\x20install\x20(no\x20sudo\x20needed)')),console['log']());}const a0=V[bH(0x30a)]('.')[bH(0x463)](Number);0x1126+-0x49*-0x5d+0x3f8*-0xb===a0[0xa97*0x3+-0xfd7+-0xfee]&&a0[0x46c+-0x2*0x1051+-0x1*-0x1c37]>=0x2330+0x11ee+-0x3511&&(console[bH(0x382)](a0L[bH(0x291)](bH(0x1fa)+V+bH(0x3df))),console['log'](a0L[bH(0x3ec)]('\x20\x20\x20\x20Some\x20packages\x20(pwntools,\x20scapy)\x20may\x20not\x20have\x20wheels\x20yet\x20for\x203.13.')),console[bH(0x382)](a0L[bH(0x3ec)]('\x20\x20\x20\x20Python\x203.12\x20is\x20recommended.\x20Install:')),bH(0x4ca)===process['platform']&&(console[bH(0x382)](a0L['green'](bH(0x266))),console[bH(0x382)](a0L[bH(0x462)](bH(0x3f7)))),console[bH(0x382)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+bH(0x39d)+as+'\x22\x20'+Z+'\x20--quiet\x202>&1',{'encoding':bH(0x2f7),'timeout':0x2bf20,'stdio':bH(0x4dd)}),a0an(Q+bH(0x37f)+(Y[as]||as)+'\x22',{'stdio':bH(0x3c9),'timeout':0x2710});let at='';try{const au=a0an(Q+bH(0x37a)+as+bH(0x416),{'encoding':'utf-8','timeout':0x1388})[bH(0x27e)](/^Version:\s*(.+)$/m);au&&(at=au[0x1*-0x1051+-0x2635*0x1+0x3687]['trim']());}catch{}console['log'](a0L[bH(0x462)](bH(0x395)+as)+(at?a0L[bH(0x3ec)]('\x20('+at+')'):'')),a1[bH(0x3f8)](at?as+'=='+at:as);}catch(av){const aw=String(av?.[bH(0x2b5)]||av?.[bH(0x472)]||av?.[bH(0x38c)]||'')[bH(0x20b)](-(0x1*0x1b02+-0x1cb6+0x4*0xd1)),ax=aw[bH(0x30a)]('\x0a')['filter'](ay=>ay[bH(0x433)]())[bH(0x20b)](-(-0x1f3*-0x12+0x6*0x531+0x211d*-0x2))[bH(0x4eb)](bH(0x2b9))[bH(0x20b)](-0x457*0x2+-0x1da7+0x3*0xcc7,-0x1f16*0x1+-0x981+0x290f);console[bH(0x382)](a0L['red'](bH(0x2a0)+as)+a0L[bH(0x3ec)]('\x20\x20'+ax)),a2[bH(0x3f8)]({'pkg':as,'error':ax}),a3||(a3=aw);}-0x1*0x22bf+0x13*-0xcc+0x2b*0x129===a1[bH(0x468)]&&a3&&(console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x291)](bH(0x438))),console['log'](a0L['gray']('\x20\x20'+a3['split']('\x0a')[bH(0x20b)](-(-0x425*-0x1+0x2608+-0x2a27))[bH(0x4eb)](bH(0x452))))),a0al({'completedAt':new Date()[bH(0x22b)](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2[bH(0x463)](ay=>ay[bH(0x34e)])}),console[bH(0x382)](),0x1f9b+0x268f+0xa06*-0x7===a2[bH(0x468)]?a0a9(bH(0x3ab)+X[bH(0x468)]+bH(0x470)):0x15e+0x1*0x1d12+-0x79c*0x4===a1[bH(0x468)]?(a0aa('Setup\x20failed\x20—\x200\x20of\x20'+X[bH(0x468)]+bH(0x470)),console['log'](),console[bH(0x382)](a0L[bH(0x291)](bH(0x3e7))),0x49d*0x2+-0x2*-0x977+-0x1c25===a0[0x145d*-0x1+-0x1eb1+0x330e]&&a0[0xfda+0xc1*0x25+0x16*-0x1fd]>=0x75e+0x29*-0x73+-0x7*-0x196?(console[bH(0x382)](a0L[bH(0x3ec)](bH(0x3fa))),console['log'](a0L[bH(0x3ec)](bH(0x35a)))):(console[bH(0x382)](a0L[bH(0x3ec)](bH(0x402))),console['log'](a0L['gray'](bH(0x211))+a0L[bH(0x236)](Q+bH(0x2ba))+a0L[bH(0x3ec)](bH(0x26d))),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x2db)))),console[bH(0x382)](),console['log'](a0L['white'](bH(0x3d7))+a0L['bold']['cyan'](bH(0x31f)))):a0ab(a1[bH(0x468)]+'/'+X[bH(0x468)]+bH(0x2ad)+a2['length']+bH(0x28d)+a2[bH(0x463)](ay=>ay[bH(0x34e)])[bH(0x4eb)](',\x20')),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x236)](bH(0x417))),console['log'](a0L[bH(0x35f)][bH(0x30b)](bH(0x1eb))),console['log'](a0L['cyan']('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](),console[bH(0x382)](a0L[bH(0x35f)][bH(0x291)](bH(0x464))+a0L[bH(0x3ec)](bH(0x255))),console['log'](a0L[bH(0x30b)](bH(0x296))),console['log'](a0L[bH(0x462)](bH(0x393))),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x1e1))),console[bH(0x382)](),console['log'](a0L['bold'][bH(0x291)]('\x20\x20Method\x202:\x20Interactive\x20Python')+a0L[bH(0x3ec)](bH(0x3b0))),console['log'](a0L[bH(0x30b)](bH(0x2d2))),console[bH(0x382)](a0L[bH(0x462)](bH(0x30d))),console[bH(0x382)](a0L[bH(0x3ec)]('\x20\x20\x20\x20>>>\x20from\x20Crypto.Cipher\x20import\x20AES')),console[bH(0x382)](a0L['gray'](bH(0x4d1))),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x401))),console['log'](a0L[bH(0x3ec)](bH(0x4b1))),console[bH(0x382)](a0L['gray'](bH(0x2ac))),console[bH(0x382)](),console[bH(0x382)](a0L['bold'][bH(0x291)](bH(0x232))+a0L[bH(0x3ec)](bH(0x2af))),console[bH(0x382)](a0L[bH(0x30b)](bH(0x34a))),console[bH(0x382)](a0L[bH(0x462)](bH(0x3a0))),console[bH(0x382)](a0L['gray'](bH(0x2a7))),console[bH(0x382)](a0L['gray']('\x20\x20\x20\x20ct\x20=\x20bytes.fromhex(\x220a2b0e1c...\x22)')),console[bH(0x382)](a0L[bH(0x3ec)]('\x20\x20\x20\x20key\x20=\x20xor(ct[:5],\x20b\x22ICOA{\x22)')),console[bH(0x382)](a0L[bH(0x3ec)]('\x20\x20\x20\x20print(xor(ct,\x20key).decode())')),console[bH(0x382)](a0L[bH(0x462)](bH(0x3e1))),console[bH(0x382)](a0L[bH(0x462)](bH(0x4a7))),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x35f)][bH(0x291)](bH(0x306))),console[bH(0x382)](a0L[bH(0x30b)](bH(0x3d8))+a0L[bH(0x35f)][bH(0x236)]('hint')+a0L['white'](bH(0x489))),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x331))),console[bH(0x382)](a0L[bH(0x3ec)](bH(0x4e6))),console['log'](a0L[bH(0x3ec)](bH(0x1e5))),console['log'](a0L['cyan'](bH(0x417))),console[bH(0x382)](),console[bH(0x382)](a0L[bH(0x30b)](bH(0x455))+a0L['bold'][bH(0x236)]('exam\x20<token>')),console['log'](a0L[bH(0x3ec)](bH(0x226))+a0L['bold'][bH(0x236)](bH(0x445))+a0L['gray'](bH(0x37e))),console[bH(0x382)]();}),B[bb(0x48f)](()=>{const bJ=bb;a0a8(bJ(0x46d));const F=a0Y();if(F){a0ae('In\x20Progress:\x20'+F[bJ(0x3a1)][bJ(0x204)]),O();const J=Object[bJ(0x219)](F['answers'])[bJ(0x468)];return a0af('Progress',J+'/'+F[bJ(0x3a1)][bJ(0x249)]+bJ(0x2e3)),console['log'](),void console['log'](a0L[bJ(0x3ec)](bJ(0x2e5)));}const G=a0a3(),H=a0ak();console[bJ(0x382)](),a0ae(bJ(0x4ad)),console['log'](),0x167e+0x59c*-0x3+-0xa*0x91===G[bJ(0x4b6)]?(console[bJ(0x382)](a0L[bJ(0x291)](bJ(0x434))+a0L[bJ(0x291)](bJ(0x2fe))),console['log'](a0L['gray'](bJ(0x4d2))+a0L[bJ(0x35f)][bJ(0x236)](bJ(0x308)))):(console[bJ(0x382)](a0L[bJ(0x462)](bJ(0x479))+a0L[bJ(0x462)]('Demo\x20completed\x20('+G[bJ(0x4b6)]+bJ(0x39c)+(-0x1*0xc95+-0xf66+0x2*0xdfe!==G[bJ(0x4b6)]?'s':'')+')')),H?(console[bJ(0x382)](a0L['green']('\x20\x20●\x20')+a0L[bJ(0x462)](bJ(0x2fd))),console[bJ(0x382)](a0L[bJ(0x291)](bJ(0x434))+a0L[bJ(0x291)]('Enter\x20exam\x20token\x20to\x20begin')),console[bJ(0x382)](a0L[bJ(0x3ec)](bJ(0x4d2))+a0L[bJ(0x35f)][bJ(0x236)](bJ(0x45a)))):(console['log'](a0L[bJ(0x291)]('\x20\x20○\x20')+a0L[bJ(0x291)](bJ(0x3be))),console[bJ(0x382)](a0L['gray'](bJ(0x4d2))+a0L[bJ(0x35f)][bJ(0x236)](bJ(0x31f))))),console['log']();});}
|
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 E}from"./lib/demo-exam.js";import{isNativeWindowsCmd as L}from"./lib/platform.js";import{resetTerminalTheme as P}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 _(){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 ${E})`,n=L();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),E=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:L,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 L({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()):E&&!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()):E?(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(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.")),P(),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{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,E="";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",E=o)}else/^ICOA\{[^}]+\}$/i.test(w)&&(S="flag",E=w);$="final"===S?["exam","submit"]:"flag"===S?["exam","answer",String(m?._lastQ||1),E]: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 L="ctf"===$[0]&&"join"===$[1];L&&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,L&&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(),P(),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 R,isDockerAvailable as D}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(" [Pioneer 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 ")+chalk.bold.white("Pioneer Round")),console.log(chalk.gray(" exploring embodied AI security 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{D()&&await q()?await R(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.
|
|
4
|
-
"description": "ICOA CLI — The world's first CLI-native cyber & AI security olympiad terminal: AI4CTF (Day 1), CTF4AI (Day 2), VLA4CTF (
|
|
3
|
+
"version": "2.19.137",
|
|
4
|
+
"description": "ICOA CLI — The world's first CLI-native cyber & AI security olympiad terminal: AI4CTF (Day 1), CTF4AI (Day 2), VLA4CTF (Pioneer Round — embodied AI)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"icoa": "dist/index.js"
|