icoa-cli 2.19.156 → 2.19.158
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/exam.js +1 -1
- package/dist/commands/learn.js +1 -1
- package/dist/repl.js +1 -1
- package/package.json +1 -1
package/dist/commands/ai4ctf.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(b,j){const a7=a0j,k=b();while(!![]){try{const q=parseInt(a7(0x209))/(-0x25*-0x26+-0x583*0x5+0x1612)*(-parseInt(a7(0x24e))/(0xd*-0xf6+0x26*-0x66+-0x1d*-0xf4))+parseInt(a7(0x238))/(-0x1a29+0x122c+0x800)+parseInt(a7(0x15c))/(0x1108+0x11*0xf9+-0x218d)+-parseInt(a7(0x1bf))/(-0x1352+0x1*-0x418+0x176f)+-parseInt(a7(0x18a))/(0x2449+-0x1343*-0x1+-0x67*0x8a)+-parseInt(a7(0x1d8))/(0x4*-0x44f+-0x4e1*0x2+0x1b05)+parseInt(a7(0x1e1))/(0x4*-0x4b5+0xc02+0x6da)*(parseInt(a7(0x1fb))/(-0x8*0x1b3+0x1*-0x169+0xf0a));if(q===j)break;else k['push'](k['shift']());}catch(v){k['push'](k['shift']());}}}(a0b,-0x7412+0x5a3*0xd6+0x2cc7d));import a0q from'chalk';import{createChatSession as a0v}from'../lib/gemini.js';import{addTokenUsage as a0x}from'../lib/budget.js';import{getConfig as a0z}from'../lib/config.js';import{logCommand as a0A}from'../lib/logger.js';import{printMarkdown as a0B,printError as a0C}from'../lib/ui.js';import{t as a0D}from'../lib/i18n.js';function a0j(a,b){a=a-(-0x691+0x6ae+0x32*0x6);const c=a0b();let d=c[a];if(a0j['tdvmub']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=-0x17c5+-0x1072+-0x5*-0x80b,o,p,q=-0x1a7b*-0x1+-0x1*-0x1be7+-0x1*0x3662;p=i['charAt'](q++);~p&&(o=n%(-0x2182+-0x1e70+0x3ff6)?o*(-0x1*-0x397+0x18f+0x273*-0x2)+p:p,n++%(0x4a*-0x66+0x200b*-0x1+0x3d8b))?l+=String['fromCharCode'](-0x1f55+-0xd2c+0x4*0xb60&o>>(-(-0x81f+0x2228+-0x1a07)*n&-0x793*-0x2+0x1*-0x2b8+-0x1*0xc68)):0x185c+-0x20f3+0x897){p=j['indexOf'](p);}for(let r=-0x8c+-0x3c6*-0x8+-0x1da4,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](0x10aa+0x2cb+0x1365*-0x1))['slice'](-(0x258e+0x610*-0x6+-0x1*0x12c));}return decodeURIComponent(m);};a0j['tEsTNS']=e,a0j['bEAxzJ']={},a0j['tdvmub']=!![];}const f=c[0x1d78+-0x25*0x1+0x1d53*-0x1],g=a+f,h=a0j['bEAxzJ'][g];return!h?(d=a0j['tEsTNS'](d),a0j['bEAxzJ'][g]=d):d=h,d;}import{getExamState as a0E,saveExamState as a0F}from'../lib/exam-state.js';const g=b=>new Promise(j=>setTimeout(j,b));let r=!(-0x5*0x193+0x6b2*-0x4+-0x22a8*-0x1),y=null,h=-0x1*-0x2253+-0x1dd+-0x2076,u=!(-0x1c4f+0x2*-0x2a0+-0x2*-0x10c8);const d=-0xa5d*0x3+0x47d6+0x11*0x359;let f=null;export function isChatActive(){return r;}function m(){const a8=a0j,b=f?d:0x131c+0x2487+-0x241b,j=h,k=Math['min'](Math[a8(0x1cd)](j/b*(0x1*-0x119b+-0x1dba+-0x13*-0x283)),-0x1*0x4dc+-0x474*0x7+0x1*0x246c),q=Math['round'](k/(-0x3f8*-0x3+-0x383+-0x801)*(-0x49*0x1d+-0x23*0x4+0x8e5)),v=0x10aa+0x2cb+0x1361*-0x1-q,x=k>0x258e+0x610*-0x6+-0x1*0xde?a0q['red']:k>0x1d78+-0x25*0x1+0x1d21*-0x1?a0q['yellow']:a0q[a8(0x14f)],z=f?a8(0x14a):a8(0x1b5);console[a8(0x179)](a0q[a8(0x1eb)]('\x20\x20'+z+':\x20')+x('█'[a8(0x165)](q))+a0q[a8(0x1eb)]('░'[a8(0x165)](v))+a0q['gray']('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(q){const a9=a0j;if(!y)return a9(0x16a);if(a0A('ai4ctf:\x20'+q),f)return p(q);const v=q[a9(0x17e)]()[a9(0x158)]()['match'](/^hint\s+([abc])$/);if(v)return function(B){const aa=a9,C=a0D('a'===B?aa(0x1f3):'b'===B?'ai4ctfHintB':'ai4ctfHintC'),D=a0D('a'===B?aa(0x1d2):'b'===B?'ai4ctfHintBBody':aa(0x208)),E=aa(0x153)+B[aa(0x1fa)](),F='a'===B?a0q[aa(0x14f)]:'b'===B?a0q[aa(0x1d3)]:a0q[aa(0x1a4)];console[aa(0x179)](),console[aa(0x179)](F['bold'](aa(0x216)+E+'\x20\x20')+a0q['gray'](C)),console[aa(0x179)]();for(const G of D[aa(0x1a6)]('\x0a'))''===G?console[aa(0x179)]():console[aa(0x179)](a0q[aa(0x190)](aa(0x163)+G));console[aa(0x179)](),'a'===B?(console[aa(0x179)](a0q[aa(0x1eb)]('\x20\x20\x20\x20'+a0D(aa(0x236))+'\x20')+a0q[aa(0x1db)](aa(0x178))),console[aa(0x179)]()):'b'===B&&(console['log'](a0q[aa(0x1eb)](aa(0x163)+a0D('ai4ctfHintNextB')+'\x20')+a0q['cyan']('hint\x20c')),console[aa(0x179)]());}(v[-0x14db+-0xf91*0x1+0x246d]),a9(0x1c0);const x=q[a9(0x21b)](/^submit\s+(.+)/i);if(x){let B=x[-0x2*0x67f+-0xb*0xf8+0x17a7*0x1][a9(0x17e)]();if(/^submit\s+/i[a9(0x1d4)](B)&&(B=B[a9(0x152)](/^submit\s+/i,'')[a9(0x17e)]()),B=B[a9(0x152)](/^["'`]+|["'`]+$/g,'')[a9(0x17e)](),'icoa{w3lc0me_2_ai4ctf}'===B){console[a9(0x179)](),console[a9(0x179)](a0q[a9(0x14f)][a9(0x225)](a9(0x167))),console[a9(0x179)](a0q[a9(0x14f)][a9(0x225)]('\x20\x20'+a0D('ai4ctfCorrectFlag'))),console[a9(0x179)](a0q[a9(0x14f)][a9(0x225)](a9(0x167))),console[a9(0x179)](),console['log'](a0q[a9(0x190)]('\x20\x20'+a0D(a9(0x207)))),console[a9(0x179)](a0q[a9(0x1eb)]('\x20\x20'+a0D(a9(0x1a8)))),console[a9(0x179)](),m(),r=!(-0x926+-0x2*-0xd55+-0x1183),y=null,fetch(a9(0x226),{'method':a9(0x22f),'headers':{'Content-Type':a9(0x14e)},'body':JSON[a9(0x1ef)]({'type':'ai4ctf','solved':!(0x1*-0x220e+0xa3*-0x1+0x1*0x22b1),'tokensUsed':h,'timestamp':new Date()['toISOString']()}),'signal':AbortSignal['timeout'](-0x1*0xf81+-0x139e+0x36a7)})['catch'](()=>{}),await g(0x2*0x1fd+-0xd4+0x2*0x15b),console['log'](),console[a9(0x179)](a0q[a9(0x1db)](a9(0x1b1))),console[a9(0x179)](a0q[a9(0x225)][a9(0x190)]('\x20\x20'+a0D(a9(0x17f)))),console[a9(0x179)](a0q[a9(0x1db)](a9(0x1b1))),console[a9(0x179)]();const C=a0D('ai4ctfWrapLine1Head'),D=a0D(a9(0x210));console[a9(0x179)](a0q[a9(0x190)](a9(0x1b3)+C+'\x20')+a0q[a9(0x1eb)](D[a9(0x1a6)]('\x0a')[-0x4f*-0x67+-0x1*0x259f+0x5d6]||''));for(const H of D[a9(0x1a6)]('\x0a')['slice'](-0x1427+0x1c5b+-0x1*0x833))H['trim']()&&console[a9(0x179)](a0q[a9(0x1eb)]('\x20\x20\x20\x20\x20\x20\x20'+H[a9(0x152)](/\{thinking\}/g,a9(0x194))));console[a9(0x179)](),console[a9(0x179)](a0q[a9(0x190)](a9(0x166)+a0D('ai4ctfWrapLine2Head')+'\x20')+a0q['gray'](a0D(a9(0x155)))),console[a9(0x179)](),console['log'](a0q[a9(0x1db)](a9(0x1b6))),console[a9(0x179)](),await g(-0x266*0xf+0x10af*0x2+0xa6c),console[a9(0x179)](a0q[a9(0x1db)](a9(0x1b1))),console[a9(0x179)](a0q[a9(0x225)]['white']('\x20\x20'+a0D(a9(0x197)))),console[a9(0x179)](a0q[a9(0x1db)](a9(0x1b1))),console[a9(0x179)](),console[a9(0x179)](a0q[a9(0x1d3)](a9(0x196))+a0q[a9(0x190)](a0D(a9(0x19f))[a9(0x1dd)](0xca9+-0xf3a*-0x2+0x625*-0x7))+a0q[a9(0x1eb)](a0D(a9(0x19a)))),console[a9(0x179)](a0q[a9(0x1d3)](a9(0x16f))+a0q['white'](a0D(a9(0x243))['padEnd'](-0x1d0a+0x6*0x68+0x1ab4))+a0q[a9(0x1eb)](a0D(a9(0x24a)))),console[a9(0x179)](a0q[a9(0x1d3)]('\x20\x20\x20\x20\x20\x20\x20hint\x20c\x20\x20\x20')+a0q['white'](a0D(a9(0x18f))[a9(0x1dd)](0x61e+-0x836*-0x3+-0x1ea6))+a0q[a9(0x1eb)](a0D(a9(0x189)))),console[a9(0x179)]();for(const I of a0D(a9(0x211))['split']('\x0a'))console[a9(0x179)](a0q[a9(0x1eb)](a9(0x163)+I));console[a9(0x179)](),await g(0xc*-0x339+-0x706+0x3582),console[a9(0x179)](a0q[a9(0x1db)](a9(0x1b1))),console[a9(0x179)](a0q[a9(0x225)][a9(0x190)]('\x20\x20'+a0D(a9(0x14c))+'\x20')+a0q[a9(0x1a4)][a9(0x225)]('ctf4ai')+a0q['white'](a9(0x157)+a0D(a9(0x21f)))),console['log'](a0q[a9(0x1db)](a9(0x1b1))),console[a9(0x179)]();const E=a0D(a9(0x215)),F=a0D(a9(0x1c5)),G=E[a9(0x1a6)]('\x0a');if(G[0x6*0x1eb+-0x6*0x3ab+-0x2a0*-0x4]){const [J,K]=G[0x280*0xe+0x408+-0x2708]['split'](a9(0x228));console[a9(0x179)](a0q[a9(0x190)](a9(0x163)+(J||''))+a0q[a9(0x225)][a9(0x190)](F)+a0q[a9(0x190)](K||''));}for(const L of G['slice'](-0x1a6c+0x1*-0x1be8+0x3655))L[a9(0x17e)]()&&console[a9(0x179)](a0q[a9(0x190)](a9(0x163)+L));return console[a9(0x179)](),console['log'](a0q[a9(0x1eb)]('\x20\x20\x20\x20'+a0D(a9(0x240))+'\x20')+a0q[a9(0x225)][a9(0x1a4)](a9(0x1b9))),console[a9(0x179)](),a9(0x16a);}return console[a9(0x179)](),console[a9(0x179)](a0q[a9(0x1a4)]('\x20\x20'+a0D(a9(0x231)))),console[a9(0x179)](a0q['gray']('\x20\x20'+a0D(a9(0x164)))),console[a9(0x179)](),a9(0x1c0);}if(q[a9(0x19b)]('!')){const M=q[a9(0x221)](0x391*-0x1+0xd8a+0xb*-0xe8)[a9(0x17e)]();if(!M)return a9(0x1c0);try{const N={};N['encoding']=a9(0x184),N['timeout']=0x2710;const {execSync:O}=await import(a9(0x1fe)),P=O(M,N)[a9(0x17e)]();console[a9(0x179)](),console['log'](a0q[a9(0x1eb)](a9(0x170))+a0q[a9(0x190)](M)),console[a9(0x179)](a0q['white']('\x20\x20'+P[a9(0x1a6)]('\x0a')[a9(0x15d)](a9(0x1d7)))),console[a9(0x179)](),console[a9(0x179)](a0q[a9(0x1eb)]('\x20\x20'+a0D('ai4ctfFoundFlag'))),console['log']();}catch(Q){console['log'](),console[a9(0x179)](a0q[a9(0x1a4)](a9(0x20c)+(Q[a9(0x21e)]?.[a9(0x1a6)]('\x0a')[-0x240a*0x1+0x8c6+-0xa*-0x2ba]||a9(0x244)))),console[a9(0x179)]();}return a9(0x1c0);}const z={};z[a9(0x1b8)]=a9(0x14e);if('exit'===q||a9(0x198)===q||a9(0x1bd)===q||'menu'===q)return r=!(0x1d1f+-0x200e+0x2f0),y=null,fetch(a9(0x226),{'method':'POST','headers':z,'body':JSON[a9(0x1ef)]({'type':a9(0x218),'tokensUsed':h,'timestamp':new Date()['toISOString']()}),'signal':AbortSignal['timeout'](0x18a+0x215*-0x1+0x1413)})[a9(0x1a7)](()=>{}),console[a9(0x179)](),console[a9(0x179)](a0q[a9(0x1eb)](a9(0x159))),console[a9(0x179)](a0q[a9(0x190)]('\x20\x20'+a0D(a9(0x1dc)))),console[a9(0x179)](a0q['gray']('\x20\x20'+a0D(a9(0x1c2))+':\x20'+h+'/5000')),console[a9(0x179)](a0q[a9(0x1eb)]('\x20\x20'+a0D('ai4ctfModel')+a9(0x1cc))),console['log'](a0q[a9(0x1eb)]('\x20\x20─────────────────────────────────────────')),console['log'](),console[a9(0x179)](a0q['cyan'](a9(0x1b1))),console['log'](a0q['white']('\x20\x20'+a0D('ai4ctfExitNextTitle')+'\x20')+a0q['bold']['red']('ctf4ai')+a0q[a9(0x190)](a9(0x157)+a0D(a9(0x22c)))),console['log'](a0q['gray']('\x20\x20'+a0D('ai4ctfExitNextBody'))),console['log'](a0q['cyan']('\x20\x20─────────────────────────────────────────────')),console[a9(0x179)](),console[a9(0x179)](a0q[a9(0x225)]['red'](a9(0x23c))+a0q['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0D('ai4ctfExitCmdNext'))),console[a9(0x179)](a0q['white'](a9(0x16d))+a0q[a9(0x1eb)](a9(0x1df)+a0D(a9(0x22a)))),console[a9(0x179)](),a9(0x16a);const A={};A[a9(0x1b8)]='application/json';if(!u&&h>=0xb2*-0x8+0x2687+-0x1*0xd6f)return u=!(0x568+-0x1*0xd09+0x7a1*0x1),fetch(a9(0x226),{'method':a9(0x22f),'headers':A,'body':JSON[a9(0x1ef)]({'type':a9(0x218),'solved':!(0x1307+0x2da+-0x15e0),'tokensUsed':h,'timestamp':new Date()[a9(0x1e3)]()}),'signal':AbortSignal[a9(0x1c9)](-0x15b*-0x7+-0xcd6+0x16e1)})[a9(0x1a7)](()=>{}),console[a9(0x179)](),console[a9(0x179)](a0q[a9(0x1d3)]('\x20\x20'+a0D('tokenLimit'))),m(),(function(){const ab=a9;console[ab(0x179)](),console['log'](a0q['yellow']('\x20\x20─────────────────────────────────────────────')),console[ab(0x179)](a0q[ab(0x225)]['yellow']('\x20\x20'+a0D(ab(0x1b2)))),console[ab(0x179)](a0q[ab(0x1d3)]('\x20\x20─────────────────────────────────────────────')),console[ab(0x179)]();for(const R of a0D(ab(0x1b7))[ab(0x1a6)]('\x0a'))''===R?console[ab(0x179)]():console[ab(0x179)](a0q[ab(0x190)]('\x20\x20\x20\x20'+R));console[ab(0x179)](),console[ab(0x179)](a0q[ab(0x1db)](ab(0x1f8))),console['log'](),console['log'](a0q[ab(0x190)](ab(0x163)+a0D(ab(0x1ed)))),console[ab(0x179)](),console['log'](a0q['green'](ab(0x21c))),console[ab(0x179)](),console[ab(0x179)](a0q[ab(0x190)](ab(0x163)+a0D(ab(0x185)))),console[ab(0x179)](),console[ab(0x179)](a0q[ab(0x1db)](ab(0x18c))),console[ab(0x179)](),console[ab(0x179)](a0q[ab(0x1eb)](ab(0x163)+a0D(ab(0x230)))),console[ab(0x179)]();}()),a9(0x1c0);if(u)return console[a9(0x179)](),console['log'](a0q[a9(0x1d3)]('\x20\x20'+a0D(a9(0x183)))),console[a9(0x179)](a0q[a9(0x1eb)]('\x20\x20'+a0D(a9(0x154))+'\x20')+a0q['cyan'](a9(0x250))),console[a9(0x179)](a0q[a9(0x1eb)]('\x20\x20'+a0D(a9(0x1a5))+'\x20')+a0q['cyan']('submit\x20icoa{w3lc0me_2_ai4ctf}')),console[a9(0x179)](),a9(0x1c0);console[a9(0x179)](a0q[a9(0x1eb)]('\x20\x20'+a0D('ai4ctfThinking')));try{const R=await y[a9(0x1ae)](q);process['stdout'][a9(0x234)]('\x1b[1A\x1b[2K'),h+=R[a9(0x20f)],a0x(R[a9(0x20f)]),console[a9(0x179)](),a0B(R[a9(0x1f4)]),m(),console[a9(0x179)]();}catch(S){process[a9(0x188)][a9(0x234)]('\x1b[1A\x1b[2K'),a0C('AI\x20error:\x20'+S[a9(0x21e)]),console['log']();}return a9(0x1c0);}const w=new Set();async function p(q){const ac=a0j;if(!f||!y)return ac(0x16a);const v=q[ac(0x17e)](),x=v['toLowerCase'](),z=(Date[ac(0x222)]()-f[ac(0x1de)])/(-0x1c300+0x5*-0x2c83+0x38bef*0x1);if(!f[ac(0x229)]&&!f[ac(0x174)]&&f[ac(0x168)][ac(0x19e)]>=-0x3*0x599+-0x1*0xe6b+-0x12*-0x1bc&&z>=0x14bf+-0x1ed8+-0xe*-0xb9&&(f[ac(0x229)]=!(0x977+0x2*0xac5+0x1*-0x1f01),console[ac(0x179)](),console['log'](a0q[ac(0x1d3)](ac(0x1bb))+a0q[ac(0x225)][ac(0x1d3)](ac(0x224))),console['log'](a0q[ac(0x1eb)](ac(0x235))),console['log']()),/^ICOA\{[^}]+\}$/i['test'](v))return console['log'](),console[ac(0x179)](a0q[ac(0x1eb)]('\x20\x20Detected\x20flag\x20—\x20treating\x20as:\x20')+a0q['white'](ac(0x17b)+v)),p('submit\x20'+v);const A=x[ac(0x21b)](/^hint\s+([abc])$/);if(A){const C=A[0x33f*-0x5+-0x35e*-0xb+-0x14ce][ac(0x1fa)]();f[ac(0x168)][ac(0x1c8)](C);const D=a0E();D&&(D['interactions']||(D[ac(0x1a2)]=[]),D['interactions'][ac(0x160)]({'ts':new Date()[ac(0x1e3)](),'q':f['qNum'],'type':'hint_used','input':C}),a0F(D));const E=f['question'][ac(0x171)],F=E?.[C],G='A'===C?a0q[ac(0x14f)]:'B'===C?a0q[ac(0x1d3)]:a0q[ac(0x1a4)];if(console[ac(0x179)](),console[ac(0x179)](G[ac(0x225)](ac(0x1f7)+C)),console[ac(0x179)](),F){for(const H of String(F)[ac(0x1a6)]('\x0a'))console['log'](a0q['white'](ac(0x163)+H));}else console[ac(0x179)](a0q['gray'](ac(0x15a)));return console[ac(0x179)](),'A'===C?console[ac(0x179)](a0q['gray']('\x20\x20\x20\x20Stuck?\x20Try:\x20')+a0q[ac(0x1db)](ac(0x178))):'B'===C?console[ac(0x179)](a0q[ac(0x1eb)](ac(0x191))+a0q[ac(0x1db)](ac(0x247))):'C'===C&&console[ac(0x179)](a0q[ac(0x1eb)]('\x20\x20\x20\x20'+a0D(ac(0x233))+'\x20')+a0q[ac(0x225)][ac(0x14f)](ac(0x224))),console[ac(0x179)](),ac(0x1c0);}const B=v[ac(0x21b)](/^submit\s+(.+)/i);if(B){let I=B[0x378+0x636+-0x9ad]['trim']();if(/^submit\s+/i[ac(0x1d4)](I)&&(I=I[ac(0x152)](/^submit\s+/i,'')[ac(0x17e)]()),I=I['replace'](/^["'`]+|["'`]+$/g,'')[ac(0x17e)](),/^[A-Da-d]$/['test'](I))return console[ac(0x179)](),console[ac(0x179)](a0q['yellow']('\x20\x20\x22'+I+ac(0x20a))),console[ac(0x179)](a0q[ac(0x1eb)]('\x20\x20Flag\x20format:\x20')+a0q[ac(0x14f)](ac(0x181))+a0q['gray'](ac(0x1ea))),console['log'](),ac(0x1c0);const {getExamState:J,saveExamState:K}=await import(ac(0x14d)),L=J();if(!L)return ac(0x16a);if(!L[ac(0x1ca)][ac(0x202)](O=>O[ac(0x1b0)]===f[ac(0x1c1)]))return console[ac(0x179)](a0q['red'](ac(0x1e6)+f[ac(0x1c1)]+ac(0x1fd))),ac(0x1c0);const M=L[ac(0x1ee)][f['qNum']];L[ac(0x1a2)]||(L[ac(0x1a2)]=[]),L[ac(0x1a2)][ac(0x160)]({'ts':new Date()[ac(0x1e3)](),'q':f['qNum'],'type':M?ac(0x1d1):ac(0x175),'input':I,'result':ac(0x1ba)}),L[ac(0x1ee)][f[ac(0x1c1)]]=I;const N=f[ac(0x1c1)]+(0x478+-0x1ef0+0x1a79);return L[ac(0x242)]=N<=-0x1ee9+-0x1*0x1220+-0x312f*-0x1?N:f[ac(0x1c1)],K(L),console[ac(0x179)](),M?(console['log'](a0q[ac(0x14f)](ac(0x246)+f['qNum']+ac(0x1ac))+a0q[ac(0x1d3)](I)),console['log'](a0q[ac(0x1eb)]('\x20\x20\x20\x20Previous:\x20'+M))):console[ac(0x179)](a0q[ac(0x14f)][ac(0x225)](ac(0x1a1)+f['qNum']+ac(0x21a)+I)),console['log'](a0q[ac(0x1eb)](ac(0x169))),console[ac(0x179)](),console['log'](a0q['gray']('\x20\x20')+a0q[ac(0x190)](ac(0x1e8))+a0q['gray'](ac(0x1cf))+a0q[ac(0x190)]('exit')+a0q['gray'](ac(0x18b))),N<=0x7*0x3ef+-0x1e17+0x2b4?console['log'](a0q[ac(0x1eb)](ac(0x1c7))+a0q[ac(0x1db)]('ai4ctf')+a0q[ac(0x1eb)]('\x20will\x20open\x20Q'+N)):console[ac(0x179)](a0q[ac(0x1eb)]('\x20\x20After\x20exit:\x20AI4CTF\x20section\x20complete.\x20Next:\x20')+a0q['red'](ac(0x1b9))+a0q[ac(0x1eb)](ac(0x19c))),console[ac(0x179)](),ac(0x1c0);}if(q[ac(0x19b)]('!')){const O=q[ac(0x221)](-0x1*-0x1751+-0x1*0xbcf+-0xb81)[ac(0x17e)]();if(!O)return ac(0x1c0);try{const P={};P[ac(0x193)]='utf-8',P['timeout']=0x2710;const {execSync:Q}=await import(ac(0x1fe)),R=Q(O,P)[ac(0x17e)]();console[ac(0x179)](),console[ac(0x179)](a0q[ac(0x1eb)](ac(0x170))+a0q['white'](O)),console[ac(0x179)](a0q[ac(0x190)]('\x20\x20'+R['split']('\x0a')[ac(0x15d)](ac(0x1d7)))),console[ac(0x179)]();}catch(S){console[ac(0x179)](),console['log'](a0q[ac(0x1a4)](ac(0x20c)+(S['message']?.[ac(0x1a6)]('\x0a')[-0x6e+-0x1*-0x7ac+0x73e*-0x1]||ac(0x244)))),console[ac(0x179)]();}return ac(0x1c0);}if('exit'===x||'back'===x||ac(0x1bd)===x){const T=f[ac(0x1c1)],{getExamState:U}=await import(ac(0x14d)),V=U(),W=V&&null!=V['answers'][T],X=V?.[ac(0x242)]||T;return r=!(0x3ea+-0x244c+0x2063),y=null,f=null,w[ac(0x251)](),console[ac(0x179)](),console[ac(0x179)](a0q['gray'](ac(0x241)+T+'.')),W&&X>T&&X<=0x20b8+0x47e+-0x2510?console[ac(0x179)](a0q['white'](ac(0x17d))+a0q[ac(0x225)]['green']('Q'+X)+a0q[ac(0x1eb)](ac(0x213))+a0q[ac(0x1db)](ac(0x218))+a0q['gray'](ac(0x1e5))):W&&T>=-0x10*-0x202+0x20f2+-0x40ec?console[ac(0x179)](a0q[ac(0x190)](ac(0x17a))+a0q[ac(0x225)]['red'](ac(0x1b9))+a0q[ac(0x1eb)](ac(0x245))):console[ac(0x179)](a0q[ac(0x1eb)](ac(0x18e))+a0q[ac(0x190)](ac(0x253)+T)+a0q[ac(0x1eb)](ac(0x1d5))+a0q[ac(0x190)](ac(0x218))),console[ac(0x179)](),ac(0x16a);}if(u)return console[ac(0x179)](),console['log'](a0q[ac(0x1d3)](ac(0x195))),console['log'](a0q[ac(0x1eb)](ac(0x204))+a0q[ac(0x190)]('submit\x20<flag>')+a0q[ac(0x1eb)](ac(0x223))+a0q['white'](ac(0x182))+a0q['gray'](ac(0x223))+a0q[ac(0x190)](ac(0x16a))),console[ac(0x179)](),ac(0x1c0);if(h>=d)return u=!(-0x263b*0x1+-0x10*-0x72+-0x1f1b*-0x1),console['log'](),console[ac(0x179)](a0q[ac(0x1a4)][ac(0x225)](ac(0x1c4))),console[ac(0x179)](a0q[ac(0x1eb)](ac(0x1ec))+a0q[ac(0x190)](ac(0x1da))+a0q[ac(0x1eb)](ac(0x223))+a0q[ac(0x190)](ac(0x182))+a0q[ac(0x1eb)](ac(0x223))+a0q['white'](ac(0x16a))),console[ac(0x179)](),ac(0x1c0);console['log'](a0q[ac(0x1eb)]('\x20\x20Thinking...'));try{const Y=await y['sendMessage'](q);process[ac(0x188)][ac(0x234)](ac(0x200)),h+=Y[ac(0x20f)];const {getRealExamState:Z,saveExamState:a0}=await import(ac(0x14d)),a1=Z(),a2={};a2[ac(0x218)]=0x0,a2[ac(0x1b9)]=0x0,(a1&&(a1[ac(0x1ad)]||(a1[ac(0x1ad)]=a2),a1[ac(0x1ad)]['ai4ctf']=h,a0(a1)),console[ac(0x179)](),a0B(Y['text']),m(),function(a3,a4,a5){const ad=ac,a6=a3/a4*(0x14*-0xb9+-0x19ff+0x2b9*0xf);a6>=-0x1c02+0x122+-0x915*-0x3&&!a5[ad(0x1cb)]('95')?(console[ad(0x179)](a0q[ad(0x1a4)][ad(0x225)](ad(0x156)+Math[ad(0x1cd)](a6)+ad(0x1e0)+(a4-a3)+ad(0x21d))),a5[ad(0x1c8)]('95')):a6>=0xcc1*-0x3+0x1*0x14a2+-0x3*-0x5fb&&!a5[ad(0x1cb)]('80')?(console[ad(0x179)](a0q[ad(0x1d3)]('\x20\x20⚠\x2080%\x20of\x20section\x20AI\x20budget\x20used.')),a5[ad(0x1c8)]('80')):a6>=0x3a*-0x1c+-0x4cc+0x1*0xb56&&!a5['has']('50')&&(console[ad(0x179)](a0q[ad(0x1eb)](ad(0x192))),a5['add']('50'));}(h,d,w),console[ac(0x179)]());}catch(a3){process[ac(0x188)][ac(0x234)](ac(0x200)),a0C('AI\x20error:\x20'+a3[ac(0x21e)]),console[ac(0x179)]();}return ac(0x1c0);}export function registerAi4ctfCommand(b){const ae=a0j;b[ae(0x201)](ae(0x218))[ae(0x180)](ae(0x1fc))['action'](async()=>{const af=ae;a0A(af(0x218));const {getRealExamState:j}=await import(af(0x14d)),k=j(),q=k?.['questions'][af(0x15f)](A=>A[af(0x1b0)]>=0x39*-0x81+0x28*-0x46+0x10c*0x26&&A['number']<=-0x8*-0x394+0x14ae+0x2*-0x1894);if(k&&q){const A=k[af(0x242)]||-0x2585+-0x251a+0x4aa0;if(A<0x25*-0xf7+-0x167f+0x1*0x3a51||A>0x1*0xec3+-0x11*0x67+-0x18e*0x5)return console[af(0x179)](),console[af(0x179)](a0q[af(0x1d3)](af(0x20e))),console[af(0x179)](a0q[af(0x1eb)](af(0x1c3)+A+af(0x151))),console[af(0x179)](a0q['gray']('\x20\x20\x20\x20→\x20')+a0q[af(0x225)][af(0x1db)]('exam\x20q\x2031')),void console[af(0x179)]();const B=k[af(0x1ca)][af(0x202)](C=>C['number']===A);return B?void await async function(C,D){const ag=af,{getRealExamState:E,refetchQuestionDataIfStale:F,materializeAttachedData:G}=await import(ag(0x14d));await F();const H=E();if(!H)return!(-0x237+-0xa07*0x2+-0x2*-0xb23);const I=H[ag(0x1ca)][ag(0x202)](L=>L[ag(0x1b0)]===C);I&&(D=I),G(C,D?.[ag(0x220)]);const J=H[ag(0x1ad)]?.[ag(0x218)]??0x1813+0x18e2+-0x97*0x53;if(J>=d)return console[ag(0x179)](),console[ag(0x179)](a0q[ag(0x1d3)]('\x20\x20⚠\x20Your\x20AI4CTF\x20token\x20budget\x20is\x20exhausted.')),console[ag(0x179)](a0q['gray'](ag(0x20d))+a0q[ag(0x190)](ag(0x1ff)+C+ag(0x16b))),console[ag(0x179)](),!(-0xdb8+-0x18d*0x9+-0x1bae*-0x1);try{y=await a0v(void(-0xeb*-0x1+0x16b3*0x1+-0x179e),function(L,M){const ah=ag,N=L[ah(0x180)]||L[ah(0x1f4)]||'',O=L[ah(0x220)]?ah(0x172)+M+ah(0x1f6)+L[ah(0x220)]:'';return ah(0x15e)+M+',\x20'+L[ah(0x1e4)]+',\x20'+(L[ah(0x237)]||-0x124a+-0x11b5*-0x2+0x18e*-0xb)+'\x20points):\x0a'+N+O+ah(0x1f2)+M+ah(0x1f5);}(D,C));}catch(L){return a0C(L[ag(0x21e)]),!(0x1*0x26c3+-0x1d*-0xe5+-0x40b3);}r=!(0xa72+-0xb9e+0x12c),h=J,u=!(-0x17e*0x4+0x167*0x1a+-0x1e7d),f={'qNum':C,'question':D,'usageField':ag(0x218),'enteredAt':Date['now'](),'hintsUsed':new Set(),'submitAttempted':!(0x2108+0x5*-0xcc+-0x1d0b),'nudgeShown':!(-0xcd*-0x1d+-0x5fe*0x1+-0x113a)};const K=H[ag(0x1ee)]?.[C];return function(M,N,O){const ai=ag,P=a0z()[ai(0x1be)]||ai(0x176),Q=h>-0x12f+-0x97b+0xaaa;console[ai(0x179)](),console[ai(0x179)](a0q['green'][ai(0x225)](ai(0x1a9)+N+':\x20'+M['category']+ai(0x1ab))),Q&&console['log'](a0q[ai(0x1eb)](ai(0x23b))),O&&console[ai(0x179)](a0q[ai(0x1eb)](ai(0x249))+a0q[ai(0x1d3)](O)+a0q[ai(0x1eb)](ai(0x161))),console[ai(0x179)](),console['log'](a0q['cyan'](ai(0x1e9))),console[ai(0x179)](a0q[ai(0x1db)]('\x20\x20│\x20')+a0q[ai(0x225)][ai(0x190)]('Q'+N+ai(0x24c)+M[ai(0x1e4)]+']\x20\x20·\x20'+(M[ai(0x237)]||-0x2cc*0xd+-0x12ee*-0x1+0x1174)+ai(0x1d6))),console[ai(0x179)](a0q[ai(0x1db)](ai(0x205)));for(const R of String(M['text'])['split']('\x0a')){const S=R[ai(0x206)]>0x5*-0x67f+-0xdbb+0x2*0x1739?R[ai(0x221)](-0x25af+0x1216+0x1399,0xb7*0x2f+-0x329*0xa+-0x1c6)+ai(0x248):R;console[ai(0x179)](a0q['cyan'](ai(0x254))+a0q[ai(0x190)](S));}console[ai(0x179)](a0q[ai(0x1db)](ai(0x205))),console[ai(0x179)](a0q[ai(0x1db)]('\x20\x20│\x20')+a0q['gray'](ai(0x212))+a0q['white'](ai(0x253)+N)),console[ai(0x179)](a0q['cyan'](ai(0x254))+a0q[ai(0x1eb)](ai(0x149))),console[ai(0x179)](a0q[ai(0x1db)](ai(0x16e))),console['log'](),console[ai(0x179)](a0q[ai(0x225)][ai(0x190)](ai(0x1b4))),console[ai(0x179)](),console[ai(0x179)](a0q['yellow']('\x20\x20\x20\x20hint\x20a')+a0q[ai(0x1eb)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20A\x20gentle\x20nudge\x20(pre-written)')),console[ai(0x179)](a0q[ai(0x1d3)](ai(0x1e7))+a0q[ai(0x1eb)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Technique\x20hint\x20(pre-written)')),console[ai(0x179)](a0q[ai(0x1d3)]('\x20\x20\x20\x20hint\x20c')+a0q[ai(0x1eb)](ai(0x24b))),console['log'](a0q['bold'][ai(0x14f)](ai(0x24d))+a0q['gray'](ai(0x239))),console[ai(0x179)](a0q[ai(0x190)](ai(0x16c))+a0q[ai(0x1eb)](ai(0x23d))),console[ai(0x179)](a0q[ai(0x1eb)](ai(0x17c))),console[ai(0x179)](a0q[ai(0x1eb)](ai(0x18d))+a0q['white']('\x22how\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console['log'](),console[ai(0x179)](a0q[ai(0x1eb)](ai(0x177))+a0q[ai(0x1eb)](ai(0x20b))),console[ai(0x179)](a0q['gray'](ai(0x1c6))+a0q[ai(0x1eb)](ai(0x1aa))),console[ai(0x179)](),m(),console[ai(0x179)](a0q['gray']('\x20\x20Model:\x20Google\x20Gemma\x204\x20('+P+')')),console[ai(0x179)]();}(D,C,K),!(-0x17*-0x77+-0x1*-0x208b+-0x2b3c);}(A,B):void a0C('Q'+A+af(0x203)+A);}const v={};v[af(0x1af)]=af(0x150),v[af(0x1e4)]='Cryptography';const x=a0z()[af(0x1be)]||af(0x176),z=v;try{y=await a0v(z);}catch(C){return void a0C(C[af(0x21e)]);}r=!(0x6a7*-0x2+-0x267c+-0xe*-0x3b3),h=0x293*0x2+-0x2133+0xa7*0x2b,u=!(-0xc82+0x803*0x4+0x1389*-0x1),console['log'](),console[af(0x179)](a0q[af(0x14f)][af(0x225)]('\x20\x20═══\x20'+a0D(af(0x1a3))+af(0x1ab))),console[af(0x179)](),console[af(0x179)](a0q[af(0x190)]('\x20\x20'+a0D(af(0x1f9)))),console[af(0x179)](),console['log'](a0q[af(0x1db)](af(0x1e9))),console[af(0x179)](a0q[af(0x1db)](af(0x254))+a0q['bold'][af(0x190)](a0D(af(0x23e)))),console[af(0x179)](a0q[af(0x1db)](af(0x205))),console[af(0x179)](a0q['cyan'](af(0x254))+a0q[af(0x190)](a0D(af(0x219)))),console[af(0x179)](a0q[af(0x1db)]('\x20\x20│\x20')+a0q[af(0x14f)]('aWNvYXt3M2xjMG1lXzJfYWk0Y3RmfQ==')),console[af(0x179)](a0q[af(0x1db)](af(0x205))),console[af(0x179)](a0q['cyan'](af(0x254))+a0q[af(0x190)](a0D(af(0x1e2)))),console[af(0x179)](a0q[af(0x1db)](af(0x254))+a0q[af(0x1eb)](af(0x23a))),console[af(0x179)](a0q[af(0x1db)]('\x20\x20└─────────────────────────────────────────────')),console[af(0x179)](),console[af(0x179)](a0q['white']('\x20\x20'+a0D(af(0x1bc)))),console['log'](),console[af(0x179)](a0q[af(0x1d3)]('\x20\x20\x20\x20hint\x20a')+a0q[af(0x1eb)](af(0x163)+a0D('ai4ctfHintA'))),console['log'](a0q['gray'](af(0x19d)+a0D(af(0x22e)))),console[af(0x179)](a0q['yellow'](af(0x1e7))+a0q[af(0x1eb)](af(0x163)+a0D(af(0x1a0)))),console[af(0x179)](a0q[af(0x1eb)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0D(af(0x252)))),console['log'](a0q[af(0x1d3)](af(0x232))+a0q['gray'](af(0x163)+a0D(af(0x187)))),console[af(0x179)](a0q[af(0x1eb)](af(0x19d)+a0D(af(0x24f)))),console[af(0x179)](),console[af(0x179)](a0q[af(0x1eb)](af(0x159))),console[af(0x179)](a0q[af(0x225)][af(0x190)]('\x20\x20'+a0D(af(0x199)))),console[af(0x179)]('\x20\x20\x20\x20'+a0q['cyan'](af(0x1ce))+a0q[af(0x1eb)](af(0x173)+a0D(af(0x22b)))),console[af(0x179)]('\x20\x20\x20\x20'+a0q[af(0x1db)](af(0x178))+a0q[af(0x1eb)](af(0x173)+a0D('ai4ctfHintTechnique'))),console['log'](af(0x163)+a0q['cyan'](af(0x247))+a0q[af(0x1eb)](af(0x173)+a0D(af(0x217)))),console[af(0x179)](a0q[af(0x1eb)](af(0x163)+a0D('ai4ctfWelcomeNoReveal'))),console['log'](),console['log'](a0q[af(0x190)]('\x20\x20'+a0D(af(0x227)))),console['log'](a0q['gray']('\x20\x20'+a0D('ai4ctfOrChatExample')+'\x20')+a0q[af(0x190)](af(0x1d9))),console[af(0x179)](),console[af(0x179)](a0q[af(0x1d3)]('\x20\x20'+a0D(af(0x22d)))),console[af(0x179)](a0q['white'](af(0x1d0))+a0q[af(0x1eb)](a0D(af(0x214)))),console['log'](a0q[af(0x190)]('\x20\x20\x20\x20submit\x20<flag>\x20\x20\x20')+a0q[af(0x1eb)](a0D(af(0x15b)))),console[af(0x179)](a0q['white']('\x20\x20\x20\x20!<shell\x20cmd>\x20\x20\x20\x20')+a0q[af(0x1eb)](a0D(af(0x14b)))),console['log'](a0q[af(0x1eb)](af(0x18d))+a0q[af(0x190)](af(0x23f))),console[af(0x179)](a0q[af(0x1eb)]('\x20\x20\x20\x20exit\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0D(af(0x1f0)))),console[af(0x179)](),m(),console[af(0x179)](a0q[af(0x1eb)]('\x20\x20'+a0D(af(0x1f1))+af(0x162)+x+')')),console['log'](a0q['gray']('\x20\x20'+a0D(af(0x186)))),console['log']();});}function a0b(){const aj=['icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','ywK0y3rMu2fTCgXL','Dg9vChbLCKnHC2u','mteWodHpwwXWsfG','q2HHDcb3AxrOihLVDxiGquKGDgvHBw1HDgu','ig5VDcbMB3vUzcbPBIbZDgf0zs4','BM9KztPJAgLSzf9WCM9JzxnZ','zxHHBsbHBNn3zxiG','g1SXqrTBmKS','y29TBwfUza','zMLUza','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','icbtDgLSBcbHDMfPBgfIBgu6ia','icdILii','BgvUz3rO','ywK0y3rMrgvJB2rLza','ywK0y3rMsgLUDencB2r5','mtDrDhPPsLm','iIbSB29RCYbSAwTLigfUie1dusbSzxr0zxiSig5VDcbHigzSywCU','icaGicaGicaGicaGieXLyxzLignOyxqSihjLDhvYBIb0BYbLEgfT','icbfCNjVCJOG','icbzB3uGy2fUihn0AwXSihn1yM1PDcbHigzSywCGzgLYzwn0BhK6ia','icbHAtrJDgyGAxmGyxzHAwXHyMXLig9UifeZmEkaKZm4icHbstrdveyGC2vJDgLVBIKU','Dg9Rzw5ZvxnLza','ywK0y3rMv3jHCeXPBMuXqM9KEq','ywK0y3rMv3jHCff1B3rHrM9VDgvY','rNvSBcbXDwvZDgLVBJOGia','iokaLcb0ExbLia','ywK0y3rMq21KsgLUDeXPBMu','ywK0y3rMv3jHCe5LEhrcB2r5','icdILRGG','ywK0y3rMsgLUDfbYAw5JAxbSzq','ywK0y3rM','ywK0y3rMsw50zxjJzxb0zwq','ihjLy29YzgvKoIa','Bwf0y2G','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','ihrVA2vUCYbSzwz0lG','BwvZC2fNzq','ywK0y3rMv3jHCe5LEhrtDwi','yxr0ywnOzwreyxrH','C2XPy2u','BM93','imk3ia','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','yM9Sza','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','ywK0y3rMt3jdAgf0','E25VuhjVz30','BNvKz2vtAg93BG','ywK0y3rMrxHPDenTzejHy2S','ywK0y3rMsgLUDe51zgDL','ywK0y3rMrxHPDe5LEhrtDwi','ywK0y3rMq29TBwfUzhm','ywK0y3rMsgLUDefvC2vZ','ue9tva','ywK0y3rMuMv2zwfStg9JA05VDgu','ywK0y3rMv3jVBMDgBgfN','icaGigHPBNqGyW','ywK0y3rMsgLUDe5LEhrd','D3jPDgu','icaGicaODhLWzsbPDcbYAwDODcbOzxjLigLUihrOAxmGy2HHDcdIGjqGBM90igfZigeGC2HLBgWGy29TBwfUzcK','ywK0y3rMsgLUDe5LEhrb','Cg9PBNrZ','mZe3mJuWz3vpteLx','ifn1yM1PDcb5B3vYigzSywCGzM9YihrOAxmGCxvLC3rPB24','rMXHzYbMB3jTyxq6igLJB2f7lI4UFq','icaOCMvZDw1PBMCG4OcuihbYAw9YignOyxqGAxmGBM90ihjLBwvTyMvYzwqSigj1Dcb0B2TLBNmGywXYzwfKEsb1C2vKihn0yxKGzgvKDwn0zwqP','icaGicbJDgy0ywK','icaGicbsDw4GuhL0Ag9UigLUihnOzwXS','ywK0y3rMq2HHBgXLBMDL','iwvJAg8GyvDoDI4UlIb8igjHC2u2ncaTza','ywK0y3rMv3jHCfr5CgvdDgy0ywK','icbbstrdveyGy2HHDcbLBMrLzcbMB3iGuq','x2XHC3rr','ywK0y3rMv3jHCff1B3rHqG','q29TBwfUzcbMywLSzwq','igzVCIbrmZK','icdINjmGuq','AgLUDcbJ','lI4U','icbdDxjYzw50igfUC3DLCJOG','ywK0y3rMv3jHCff1B3rHqKHPBNq','icaGicaGicaGicblzxKGyNjLywT0AhjVDwDOicHWCMuTD3jPDhrLBIK','icbB','icaGihn1yM1PDcbjq09bEY4UlN0','nJG5nZHtse1AvLm','ywK0y3rMsgLUDenvC2vZ','iwvJAg8GyvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0GFcbIyxnLnJqGlwq','y2XLyxi','ywK0y3rMsgLUDejvC2vZ','zxHHBsbXia','icdILiiG','rMXHzYbMB3jTyxq6icaGieLdt0f7lI4UFq','quK0q1rgihnLy3rPB24','ywK0y3rMq21Ku2HLBgXmAw5L','ywK0y3rMv3jHCe5LEhruAxrSzq','lI4VBgLIl2v4yw0TC3rHDguUANm','yxbWBgLJyxrPB24VANnVBG','z3jLzw4','sgLKzgvUie1LC3nHz2u','lIbkDw1WihrOzxjLigzPCNn0oG','CMvWBgfJzq','sgLUDca','ywK0y3rMtg9JA2vKvxnL','ywK0y3rMv3jHCeXPBMuYqM9KEq','icdIMQaG','iokaLca','Dg9mB3DLCKnHC2u','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icaGie5VihbYzs13CML0DgvUigHPBNqGyxqGDgHPCYb0AwvYigzVCIb0AgLZihf1zxn0Aw9UlG','ywK0y3rMu3vIBwL0q21K','mtCZntKXnMrrAePMAa','AM9PBG','ww91igfYzsbHBIbbssb0zwfTBwf0zsbOzwXWAw5NigeGy29UDgvZDgfUDcbZB2X2zsbHBIbjq09bidiWmJyGy3LIzxjZzwn1CML0EsbLEgfTihf1zxn0Aw9UlGOkq1vsuKvovcbrvuvtveLptIaOuq','C29Tzq','ChvZAa','icaOC3vIBwL0igfNywLUihrVignOyw5NzsK','oIbhB29NBguGr2vTBweGncaO','icaGia','ywK0y3rMrMXHz0HPBNq','CMvWzwf0','icaGidiUia','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','AgLUDhnvC2vK','icaGicHhCMfKAw5NigHHChbLBNmGyxqGzxHHBsbZDwjTAxqG4OcuihLVDsbJyw5UB3qGChjLDMLLDYbJB3jYzwn0BMvZCYbKDxjPBMCGDgHLigv4yw0Ukq','zxHPDa','ieLdt0f7lI4UFq','icaGicfWExrOB24Zic4UlG','icaGicbIywnR','icdILjtILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icaGicaGigHPBNqGyIaGia','icaKia','AgLUDhm','cGPbvfrbq0HfrcbeqvrbicHHBhnVihnHDMvKihrVignOywXSzw5NzxmVCq','icaG4OAsia','C3vIBwL0qxr0zw1WDgvK','yw5ZD2vYx3n1yM1PDhrLza','z2vTBweTnc0ZmwiTAxq','icaGigv4Axq','AgLUDcbI','Bg9N','icbbstrdveyGC2vJDgLVBIbJB21WBgv0zsdIGjqG','C3vIBwL0ia','icaGieP1C3qGDhLWzsbMCMvLBhKGDg8Gy2HHDcb3AxrOihrOzsbbssb0zwfTBwf0zs4','icbozxH0oIa','DhjPBq','ywK0y3rMv3jHCfrPDgXL','zgvZy3jPChrPB24','sunpqxT5B3vYx2zSywD9','ixnOzwXS','ywK0y3rMtg9JA2vKvgL0Bgu','DxrMltG','ywK0y3rMuMv2zwfSvgHLBLn1yM1PDa','ywK0y3rMrxHPDa','ywK0y3rMsgLUDem','C3rKB3v0','ywK0y3rMv3jHCff1B3rHq0HPBNq','mZKXotuZnNHpueDtzG','ihrVig1VDMuGB24','icaGicaGicbZDwjTAxqGAwnVyxT3m2XJmg1LxZjFywK0y3rMFq','icaGicaGicaGicaGicaGicaGicbLlMCUia','icbszxn1Bwu6ia','ywK0y3rMv3jHCff1B3rHqW','D2HPDgu','icaGifjLywXSEsbZDhvJAZ8Gvhj5oIa','icboB3rLoIa1mcuGB2yGC2vJDgLVBIbbssbIDwrNzxqGDxnLzc4','zw5JB2rPBMC','DgHPBMTPBMC','icbbssbIDwrNzxqGzxHOyxvZDgvKigzVCIbbstrdveyGC2vJDgLVBI4','icaGicaGigHPBNqGysaGia','ywK0y3rMv3jHCff1B3rHC1rPDgXL','yMfJAW','ywK0y3rMv2vSy29Tzun0yq','ywK0y3rMv3jHCff1B3rHquHPBNq','C3rHCNrZv2L0Aa','ig9UifeZoq','icaGicaGicaGicaGica','C2L6zq','ywK0y3rMv3jHCff1B3rHqq','ywK0y3rMsgLUDei','icdINjmGqw5ZD2vYigzVCIbr','Aw50zxjHy3rPB25Z','ywK0y3rMvgL0Bgu','CMvK','ywK0y3rMtg9JA2vKvgHLBG','C3bSAxq','y2f0y2G','ywK0y3rMv291BgrfyxjU','icdILzdILzdILzaGquK0q1rgiokaLcbr','icaGicaGicaGicaGifjLDhvYBIb0BYbTywLUig1LBNuGkhDVCMTZigfUExDOzxjLkq','iokvKokvKokvKa','igfUC3DLCIb1CgrHDgvKoIa','ywLvC2fNzq','C2vUze1LC3nHz2u','BMfTzq','BNvTyMvY','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ywK0y3rMuMv2zwfSvgL0Bgu','icaGideUia','icbiB3CGDg8GD29YAYb0AgLZihf1zxn0Aw9U','vg9Rzw5Z','icaGicaGicaGicfLy2HVigfxtNzzwhqZttj4AK1hmwXyEKPMwvDRmfKZuM1Mut09ihWGyMfZzty0ic1K','ywK0y3rMuMv2zwfSqM9KEq','q29UDgvUDc1uExbL','y3rMngfP','DMLHigfPngn0zIbJAgf0','icdWN5kHie9Uy2uGEw91igHHDMuGsunpqxSUlI59lcbZDwjTAxqGAxqGD2L0AdOG','ywK0y3rMtgv2zwXZ','CxvPDa','z2vTAw5Ptw9KzwW','mJC0mdK1mfbTBfvMqG','y29UDgLUDwu','Cu51Bq','ywK0y3rMvg9Rzw5Z','icbzB3uGyxjLig9Uife','icdIMQaGquK0q1rgihrVA2vUigj1zgDLDcbLEgHHDxn0zwqGkdi1ldaWmcb1C2vKks4','ywK0y3rMv3jHCe5VuhjVzW','icaGig1LBNu','icbbzNrLCIbLEgL0oIa','ywrK','DgLTzw91Da','CxvLC3rPB25Z','AgfZ','oIbhB29NBguGr2vTBweGncaOz2vTBweTnc0ZmwiTAxqP','CM91BMq','AgLUDcbH','igfNywLUihrVignOyw5NzsWGB3iG','icaGigHPBNqGysaVigiGlYbJica','yw5ZD2vYx2nOyw5Nzwq','ywK0y3rMsgLUDefcB2r5','EwvSBg93','DgvZDa','icdcTYaGuMuTzw50zxi6ia','ihb0CW','cIaG','mJmXnJe5nwXeCNPHtG','iNDOyxqGzw5JB2rPBMCGAxmGDgHPCZ8I','C3vIBwL0idXMBgfNpG','y3LHBG','ywK0y3rMuMvWB3j0','CgfKrw5K','zw50zxjLzef0','icaGicaGicaGicaG','jsbVzIbZzwn0Aw9Uiefjigj1zgDLDcb1C2vKiokaLcbVBMX5ih4','mtmYntznD3HfyMW','ywK0y3rMrgvJB2rL','Dg9ju09tDhjPBMC','y2f0zwDVCNK','ihrVignVBNrPBNvL','icbr','icaGigHPBNqGyG','C3vIBwL0ieLdt0f7lI4UFq','icdILiZILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','lIbuCNKGywDHAw4GAw5ZAwrLihrOAxmGy2HHDc4','z3jHEq','icbzB3uGy2fUihn0AwXSoIa','ywK0y3rMuMv2zwfSu2vLrMXHzW','yw5ZD2vYCW','C3rYAw5NAwz5','ywK0y3rMrw5Ku2vZC2LVBG','ywK0y3rMtw9KzwW','cGPzt1vsifjvtevtoGOTifLVDsbnqvKGzxHWBgfPBIbJB25Jzxb0CYWGzgvZy3jPyMuGyxbWCM9Hy2HLCYWGyw5KigHLBhaGDgHLignVBNrLC3rHBNqGCMvHC29UihrOCM91z2GGDgHLihbYB2jSzw0UcI0Gww91ie1bwsbKAxnJDxnZihrOzsb0zwnOBM9SB2D5igLUDM9SDMvKicHbrvmSihb3BNrVB2XZlcbqExrOB24GC3rYDwn0lcbivfrqlcbLDgmUks4klsbzB3uGtufzigHLBhaGzgvIDwCGuhL0Ag9UignVzguGDgHLignVBNrLC3rHBNqGD3jPDgvZlGOTifLVDsbnvvnuie5pvcbYzxzLywWGDgHLigzSywCGzgLYzwn0BhKUcI0Gww91ie1vu1qGtK9uig91Dhb1DcbHBNKGC3rYAw5Nig1HDgnOAw5NieLdt0f7lI4UFsbVCIbPy29HEY4UlN0UcI0Gww91ie1vu1qGtK9uihrLBgWGDgHLignVBNrLC3rHBNqGDgHLigv4ywn0igfUC3DLCIb0BYb0AgLZihf1zxn0Aw9UlGOTifLVDsbnqvKGC3vNz2vZDcb3AgLJAcb0B29Sic8GBgLICMfYEsaVihrLy2HUAxf1zsb0BYb1C2uUcI0Gv2HLBIbZDwDNzxn0Aw5NihnOzwXSic8GChL0Ag9UihnUAxbWzxrZihrOyxqGBMvLzcb0AguGyxr0ywnOzwqGzgf0ysWGCMvMzxiGDg8GDgHLigzPBguGCgf0AcbJAgfSBgvUz2vZl3e','ywK0y3rMsgLUDee','Dgv4Da','lNr4DcaOAw5ZAwrLihrOzsbZyw5KyM94ksbYyxrOzxiGDgHHBIbHC2TPBMCGDgHLignVBNrLC3rHBNqGDg8GCgfZDguGDgHLihDOB2XLigjSB2iGyMfJAY4klsblzwvWihjLC3bVBNnLCYbJB25JAxnLigfUzcbWCMfJDgLJywWUifrOAxmGy29UDgvZDgfUDcbOyxmGBgLTAxrLzcb0Aw1LlG','lNr4DcbPBNnPzguGDgHLignVBNrLC3rHBNqNCYbZyw5KyM94iokaLcbWyxrOigLZihjLBgf0AxzLihrVihrOzsbZyw5KyM94j3mGl2HVBwuVy29TCgv0AxrVCIb3B3jRAw5NigrPCMvJDg9YEsWGCMvHy2HHyMXLigzYB20Gyw55icfZAgvSBcaVicfWExrOB24ZigLUDM9JyxrPB24PoGO','icdILRGGsgLUDca'];a0b=function(){return aj;};return a0b();}
|
|
1
|
+
(function(b,j){const a7=a0j,k=b();while(!![]){try{const q=parseInt(a7(0x159))/(-0x1*0x4dd+-0xf0d*0x1+0x13eb)+-parseInt(a7(0x11c))/(-0xcb3*-0x1+-0xa66+-0x24b*0x1)*(-parseInt(a7(0x10a))/(0x1d*0xa3+0x1*-0x1442+0x1ce))+-parseInt(a7(0x125))/(0xf74*0x1+-0x127c+-0x6*-0x82)*(parseInt(a7(0x15b))/(0x215a+0x5a7+-0x26fc))+-parseInt(a7(0x8e))/(0x1*-0x263d+-0xcd*0x19+0x3a48)+-parseInt(a7(0x147))/(0x1542+-0x2e7*0xb+0xab2)*(parseInt(a7(0x124))/(-0x227a+0x1915+0x96d))+-parseInt(a7(0x153))/(-0x1e24+-0x98+0x1ec5)+-parseInt(a7(0x149))/(-0x2*-0x593+0x1547+-0x2063)*(-parseInt(a7(0x121))/(0x1b13+0x112*-0x1+-0x2*0xcfb));if(q===j)break;else k['push'](k['shift']());}catch(v){k['push'](k['shift']());}}}(a0b,0x101*0x365+-0x31f3*-0xb+-0x506d));import a0q from'chalk';import{createChatSession as a0v}from'../lib/gemini.js';import{addTokenUsage as a0x}from'../lib/budget.js';import{getConfig as a0z}from'../lib/config.js';import{logCommand as a0A}from'../lib/logger.js';import{printMarkdown as a0B,printError as a0C}from'../lib/ui.js';import{t as a0D}from'../lib/i18n.js';import{getExamState as a0E,saveExamState as a0F}from'../lib/exam-state.js';const g=b=>new Promise(j=>setTimeout(j,b));let r=!(0x1b73*0x1+-0x9b8+-0x11ba),y=null,h=-0x7f*-0x5+-0xd56+0xadb,u=!(-0x191*0x9+-0x36*0x3f+-0x2*-0xdb2);const d=0x2*0x27cf+-0x985a+-0x1*-0xaa64;let f=null;function a0j(a,b){a=a-(0x1*0x24ff+0x136e+-0x1*0x37e2);const c=a0b();let d=c[a];if(a0j['wPPhZz']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x1da1+0x1b73*0x1+-0x3914,o,p,q=-0x211a+-0x7f*-0x5+0x1e9f;p=i['charAt'](q++);~p&&(o=n%(-0x6f6+-0x191*0x9+-0x41*-0x53)?o*(-0x1732*-0x1+0x1*-0xb2d+-0xbc5)+p:p,n++%(0x8c*0x19+0x1*-0x92+-0xd16))?l+=String['fromCharCode'](-0x4*0x3c5+0x1c5b+0x83*-0x18&o>>(-(-0x266c+-0x13*0x8+0x2706)*n&0x4f*0x3b+-0x1b*0x13+0x1*-0x102e)):0xbb9+0x226c+-0x2e25){p=j['indexOf'](p);}for(let r=0x1896+0x2017+-0x38ad,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0x2*0x12cd+-0x120b+0x37b5))['slice'](-(-0x1970+-0x205c+-0x842*-0x7));}return decodeURIComponent(m);};a0j['NXlfNv']=e,a0j['HCGHbG']={},a0j['wPPhZz']=!![];}const f=c[0x1f31+0x24e+0x5*-0x6b3],g=a+f,h=a0j['HCGHbG'][g];return!h?(d=a0j['NXlfNv'](d),a0j['HCGHbG'][g]=d):d=h,d;}export function isChatActive(){return r;}function a0b(){const aj=['ywK0y3rMu2fTCgXL','z3jLzw4','ywK0y3rMv3jHCeXPBMuXsgvHza','ue9tva','ywK0y3rMuMvWB3j0','ywK0y3rM','yxr0ywnOzwreyxrH','icaGieP1C3qGDhLWzsbMCMvLBhKGDg8Gy2HHDcb3AxrOihrOzsbbssb0zwfTBwf0zs4','BNvKz2vtAg93BG','icaGicaGicaGicaGifjLDhvYBIb0BYbTywLUig1LBNuGkhDVCMTZigfUExDOzxjLkq','ywK0y3rMrgvJB2rLza','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','CxvLC3rPB24','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','zw5JB2rPBMC','AwnVyxT3m2XJmg1LxZjFywK0y3rMFq','z2vTAw5Ptw9KzwW','CMvK','DgvZDa','icbgBgfNigzVCM1HDdOG','icdIMQaGquK0q1rgihrVA2vUigj1zgDLDcbLEgHHDxn0zwqGkdi1ldaWmcb1C2vKks4','icaGigHPBNqGyq','icbozxH0oIa','Dg9Rzw5mAw1PDa','Cg9PBNrZ','ywK0y3rMuMv2zwfSvgL0Bgu','mZyZmJuYtK55verd','zxHHBsbHBNn3zxiG','jsbVzIbZzwn0Aw9Uiefjigj1zgDLDcb1C2vKiokaLcbVBMX5ih4','icbszxn1Bwu6ia','icdILii','Bg9N','AgfZ','ywK0y3rMsgLUDe51zgDL','ywK0y3rMv3jHCff1B3rHqKHPBNq','icaGie5VihbYzs13CML0DgvUigHPBNqGyxqGDgHPCYb0AwvYigzVCIb0AgLZihf1zxn0Aw9UlG','ywK0y3rMrgvJB2rL','icaI','y2f0y2G','icdcTYaGuMuTzw50zxi6ia','icaGifbYzxzPB3vZoIa','icaGice8C2HLBgWGy21KpIaGica','q29TBwfUzcbMywLSzwq','ywK0y3rMtg9JA2vKvgL0Bgu','C3vIBwL0qxr0zw1WDgvK','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','C3bSAxq','C3rYAw5NAwz5','C2L6zq','ywK0y3rMsgLUDee','icaGigHPBNqGysaVigiGlYbJica','icbbstrdveyGy2HHDcbLBMrLzcbMB3iGuq','z2vTBweTnc0ZmwiTAxq','AgLUDhnvC2vK','igfUC3DLCIb1CgrHDgvKoIa','x2XHC3rr','y3LHBG','icaGicaGicaGicaGica','D2HPDgu','icbbssbIDwrNzxqGzxHOyxvZDgvKigzVCIbbstrdveyGC2vJDgLVBI4','ywK0y3rMuMv2zwfSu2vLrMXHzW','C3vIBwL0ieLdt0f7lI4UFq','AgLUDcbH','icbHAtrJDgyGAxmGyxzHAwXHyMXLig9UifeZmEkaKZm4icHbstrdveyGC2vJDgLVBIKU','sunpqxT5B3vYx2zSywD9','CMvWzwf0','icbr','ywK0y3rMq29YCMvJDezSywC','Dg9mB3DLCKnHC2u','ywK0y3rMvgL0Bgu','ywn0Aw9U','iokaLca','icaGigv4AxqGicaGicaGicaGica','icdINjmGuq','ihDPBgWGB3bLBIbr','ywK0y3rMsgLUDem','q3j5ChrVz3jHCgH5','ywK0y3rMvgHPBMTPBMC','lIbkDw1WihrOzxjLigzPCNn0oG','BM93','ywK0y3rMq2HHBgXLBMDL','ChvZAa','Dg9vChbLCKnHC2u','quKGzxjYB3i6ia','icaGig1LBNu','C3rHCNrZv2L0Aa','icaGicaGicaGicbbigDLBNrSzsbUDwrNzsaOChjLlxDYAxr0zw4P','iIbSB29RCYbSAwTLigfUie1dusbSzxr0zxiSig5VDcbHigzSywCU','DxrMltG','ihbVAw50CYK6cG','icdILRGGsgLUDca','icaG4OAsia','Aw50zxjHy3rPB25Z','ywK0y3rMv3jHCff1B3rHqW','ywK0y3rMsgLUDefvC2vZ','ywK0y3rMtg9JA2vKvxnL','lNr4DcbPBNnPzguGDgHLignVBNrLC3rHBNqNCYbZyw5KyM94iokaLcbWyxrOigLZihjLBgf0AxzLihrVihrOzsbZyw5KyM94j3mGl2HVBwuVy29TCgv0AxrVCIb3B3jRAw5NigrPCMvJDg9YEsWGCMvHy2HHyMXLigzYB20Gyw55icfZAgvSBcaVicfWExrOB24ZigLUDM9JyxrPB24PoGO','CgfKrw5K','vg9Rzw5Z','lZuWmda','zxHHBsbXia','ywK0y3rMv3jHCeXPBMuYsgvHza','ixnOzwXS','icaGihn1yM1PDcbjq09bEY4UlN0','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','y29UDgLUDwu','ihrVignVBNrPBNvL','Dgv4Da','ywK0y3rMuMv2zwfSvgHLBLn1yM1PDa','ywK0y3rMsgLUDenvC2vZ','icbtDgLSBcbHDMfPBgfIBgu6ia','C3vIBwL0ia','ywK0y3rMrM91BMrgBgfN','icdINjmGqw5ZD2vYigzVCIbr','ig5VDcbMB3vUzcbPBIbZDgf0zs4','ywK0y3rMv3jHCff1B3rHqq','C3rKB3v0','ywK0y3rMsgLUDe5LEhrc','icbzB3uGy2fUihn0AwXSihn1yM1PDcbHigzSywCGzgLYzwn0BhK6ia','icaOC3vIBwL0igfNywLUihrVignOyw5NzsK','ihb0CW','DhjPBq','ywK0y3rMv3jHCfrPDgXL','ywK0y3rMrxHPDe5LEhruAxrSzq','ywK0y3rMv3jHCff1B3rHC1rPDgXL','CM91BMq','icbzB3uGy2fUihn0AwXSoIa','icbzB3uGyxjLig9Uife','ieLdt0f7lI4UFq','yxbWBgLJyxrPB24VANnVBG','ywK0y3rMv2vSy29Tzu5VuMv2zwfS','icbfCNjVCJOG','cIaG','lI4U','imk3ia','Bwf0y2G','z3jHEq','BwvUDq','ywK0y3rMv3jHCe5LEhruAxrSzq','icbezxrLy3rLzcbMBgfNiokaLcb0CMvHDgLUzYbHCZOG','zxHPDa','yvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0','BM9KztPJAgLSzf9WCM9JzxnZ','cGPzt1vsifjvtevtoGOTifLVDsbnqvKGzxHWBgfPBIbJB25Jzxb0CYWGzgvZy3jPyMuGyxbWCM9Hy2HLCYWGyw5KigHLBhaGDgHLignVBNrLC3rHBNqGCMvHC29UihrOCM91z2GGDgHLihbYB2jSzw0UcI0Gww91ie1bwsbKAxnJDxnZihrOzsb0zwnOBM9SB2D5igLUDM9SDMvKicHbrvmSihb3BNrVB2XZlcbqExrOB24GC3rYDwn0lcbivfrqlcbLDgmUks4klsbzB3uGtufzigHLBhaGzgvIDwCGuhL0Ag9UignVzguGDgHLignVBNrLC3rHBNqGD3jPDgvZlGOTifLVDsbnvvnuie5pvcbYzxzLywWGDgHLigzSywCGzgLYzwn0BhKUcI0Gww91ie1vu1qGtK9uig91Dhb1DcbHBNKGC3rYAw5Nig1HDgnOAw5NieLdt0f7lI4UFsbVCIbPy29HEY4UlN0UcI0Gww91ie1vu1qGtK9uihrLBgWGDgHLignVBNrLC3rHBNqGDgHLigv4ywn0igfUC3DLCIb0BYb0AgLZihf1zxn0Aw9UlGOTifLVDsbnqvKGC3vNz2vZDcb3AgLJAcb0B29Sic8GBgLICMfYEsaVihrLy2HUAxf1zsb0BYb1C2uUcI0Gv2HLBIbZDwDNzxn0Aw5NihnOzwXSic8GChL0Ag9UihnUAxbWzxrZihrOyxqGBMvLzcb0AguGyxr0ywnOzwqGzgf0ysWGCMvMzxiGDg8GDgHLigzPBguGCgf0AcbJAgfSBgvUz2vZl3e','icaGicaODhLWzsbPDcbYAwDODcbOzxjLigLUihrOAxmGy2HHDcdIGjqGBM90igfZigeGC2HLBgWGy29TBwfUzcK','ywK0y3rMtw9KzwW','icaGicbsDw4GuhL0Ag9UigLUihnOzwXS','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','ywK0y3rMv3jVBMDgBgfN','icaKia','mZnwwMDxAgK','icdILiZILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ywK0y3rMv3jHCff1B3rHqG','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','icaGicHhCMfKAw5NigHHChbLBNmGyxqGzxHHBsbZDwjTAxqG4OcuihLVDsbJyw5UB3qGChjLDMLLDYbJB3jYzwn0BMvZCYbKDxjPBMCGDgHLigv4yw0Ukq','DgLTzw91Da','iNDOyxqGzw5JB2rPBMCGAxmGDgHPCZ8I','EwvSBg93','ywK0y3rMrxHPDe5LEhrtDwi','icbiB3CGDg8GD29YAYb0AgLZihf1zxn0Aw9U','ywK0y3rMrxHPDa','ihrVA2vUCYbSzwz0lG','xsaGWRCG','zw50zxjLzef0','C3vIBwL0igLJB2f7DZnSyZbTzv8Yx2fPngn0zN0','icaGicaGicaGicaG','CxvLC3rPB25Z','ywK0y3rMv3jHCe5LEhrcB2r5','mZm3ndjlD2jAv3C','DgHPBMTPBMC','Dg9Rzw5ZvxnLza','rMXHzYbMB3jTyxq6igLJB2f7lI4UFq','ywK0y3rMv3jHCeXPBMuXqM9KEq','nJmWodi2oxfuyM9gBa','icaGicaGicaGicbuzwnOBMLXDwuGAgLUDcaOChjLlxDYAxr0zw4P','icaGicfWExrOB24Zic4UlG','ogLJqxnlva','nZjHBw1nA1G','CMvWBgfJzq','icaGia','ywLvC2fNzq','q2HHDcb3AxrOihLVDxiGquKGDgvHBw1HDgu','icdILzdILzdILzaGquK0q1rgiokaLcbr','y2f0zwDVCNK','y3rMngfP','iokvKokvKokvKa','icaGicaGicaGicaGicaGicaGicbLlMCUia','icaGidiUia','icaGigHPBNqGyG','Cu51Bq','icbnB2rLBdOGr29Vz2XLieDLBw1HidqGka','Dg9ju09tDhjPBMC','ww91igfYzsbHBIbbssb0zwfTBwf0zsbOzwXWAw5NigeGy29UDgvZDgfUDcbZB2X2zsbHBIbjq09bidiWmJyGy3LIzxjZzwn1CML0EsbLEgfTihf1zxn0Aw9UlGOkq1vsuKvovcbrvuvtveLptIaOuq','icaGicbIywnR','ywK0y3rMtg9JA2vKvgHLBG','ywK0y3rMsgLUDei','icbdDxjYzw50igfUC3DLCJOG','ywK0y3rMv3jHCe5VuhjVzW','ywK0y3rMv3jHCff1B3rHquHPBNq','icaGicaGia','rNvSBcbXDwvZDgLVBJOGia','ywK0y3rMv3jHCff1B3rHq0HPBNq','icdILiiG','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','BMfTzq','C3vIBwL0idXMBgfNpG','ywK0y3rMq21Ku2HLBgXmAw5L','icaGicaGicbZDwjTAxqGAwnVyxT3m2XJmg1LxZjFywK0y3rMFq','ywK0y3rMq21KsgLUDeXPBMu','sgLKzgvUie1LC3nHz2u','icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','mZGWndm2n2vWtLDgtW','ywK0y3rMq29TBwfUzhm','mtbOEM1nBwy','ywK0y3rMsgLUDe5LEhrb','ywK0y3rMv3jHCeXPBMuYqM9KEq','ywK0y3rMv3jHCfr5CgvdDgy0ywK','ywK0y3rMoIa','ywK0y3rMsgLUDencB2r5','iwvJAg8GyvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0GFcbIyxnLnJqGlwq','BNvTyMvY','zxHHBsbXidmX','yMfJAW','mJeWnZuXmKnWEgTnrG','sgLUDca','D3jPDgu','zgvZy3jPChrPB24','ihrVig1VDMuGB24','yw5ZD2vYCW','nJqYoduYreD3Ehvy','icbbzNrLCIbLEgL0oIa','nJeYmdb4yMHqzgu','q29UDgvUDc1uExbL','icaGigHPBNqGyW','ifn1yM1PDcb5B3vYigzSywCGzM9YihrOAxmGCxvLC3rPB24','iwvJAg8GyvDoDI4UlIb8igjHC2u2ncaTza','C2vUze1LC3nHz2u','ywK0y3rMsgLUDejcB2r5','y2XLyxi','oIbhB29NBguGr2vTBweGncaOz2vTBweTnc0ZmwiTAxqP','oIbhB29NBguGr2vTBweGncaO','ywK0y3rMsw50zxjJzxb0zwq','AgLUDf91C2vK','AM9PBG','zMLUza','ig9UifeZoq','icaGiokgKIa','icdIMQaG','yM9Sza','cGPbvfrbq0HfrcbeqvrbicHHBhnVihnHDMvKihrVignOywXSzw5NzxmVCq','C29Tzq','ywK0y3rMrxHPDenTzejHy2S','lI4VBgLIl2v4yw0TC3rHDguUANm','ywK0y3rMt3jdAgf0','icboB3rLoIa1mcuGB2yGC2vJDgLVBIbbssbIDwrNzxqGDxnLzc4','g1SXqrTBmKS','icaGicaGigHPBNqGyYaGia','C2XPy2u','AgLUDcbI','ywK0y3rMsgLUDe5LEhrd','ywK0y3rMrxHPDenTze5LEhq','BwvZC2fNzq','ywK0y3rMrMXHz0HPBNq'];a0b=function(){return aj;};return a0b();}function m(){const a8=a0j,b=f?d:0x1*0x2361+0x19d5+-0x29ae,j=h,k=Math['min'](Math[a8(0xf1)](j/b*(0x1c5b+0x1df1+0x88*-0x6d)),-0x266c+-0x13*0x8+0x2768),q=Math[a8(0xf1)](k/(0x4f*0x3b+-0x1b*0x13+0x1*-0xfd0)*(0xbb9+0x226c+-0x2e11)),v=0x1896+0x2017+-0x3899-q,x=k>-0x2*0x12cd+-0x120b+0x37f5?a0q[a8(0x18c)]:k>-0x1970+-0x205c+-0x1cff*-0x2?a0q['yellow']:a0q[a8(0x17c)],z=f?'AI4CTF\x20section':a8(0xd6);console[a8(0x93)](a0q[a8(0xfc)]('\x20\x20'+z+':\x20')+x('█'[a8(0xb5)](q))+a0q['gray']('░'[a8(0xb5)](v))+a0q[a8(0xfc)]('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(q){const a9=a0j;if(!y)return'exit';if(a0A(a9(0x14d)+q),f)return p(q);const v=q['trim']()[a9(0xb8)]()[a9(0xfb)](/^hint\s+([abc])$/);if(v)return function(B){const aa=a9,C=a0D('a'===B?'ai4ctfHintA':'b'===B?aa(0x137):aa(0xbf)),D=a0D('a'===B?'ai4ctfHintABody':'b'===B?aa(0x161):aa(0x14e)),E=aa(0x154)+B['toUpperCase'](),F='a'===B?a0q[aa(0x17c)]:'b'===B?a0q[aa(0x111)]:a0q[aa(0x18c)];console[aa(0x93)](),console[aa(0x93)](F[aa(0x16c)]('\x20\x20▸\x20'+E+'\x20\x20')+a0q['gray'](C)),console[aa(0x93)]();for(const G of D['split']('\x0a'))''===G?console[aa(0x93)]():console[aa(0x93)](a0q[aa(0xae)](aa(0x127)+G));console[aa(0x93)](),'a'===B?(console['log'](a0q[aa(0xfc)](aa(0x127)+a0D(aa(0x14a))+'\x20')+a0q[aa(0xac)](aa(0x176))),console['log']()):'b'===B&&(console[aa(0x93)](a0q[aa(0xfc)](aa(0x127)+a0D(aa(0xe9))+'\x20')+a0q[aa(0xac)]('hint\x20c')),console[aa(0x93)]());}(v[0x1f31+0x24e+0x1*-0x217e]),a9(0xdd);const x=q[a9(0xfb)](/^submit\s+(.+)/i);if(x){let B=x[-0x7ef+0x23b*-0x7+0x178d][a9(0xed)]();if(/^submit\s+/i[a9(0x18d)](B)&&(B=B['replace'](/^submit\s+/i,'')['trim']()),B=B[a9(0x126)](/^["'`]+|["'`]+$/g,'')[a9(0xed)](),a9(0x18a)===B){console['log'](),console[a9(0x93)](a0q[a9(0x17c)][a9(0x16c)](a9(0x186))),console['log'](a0q[a9(0x17c)][a9(0x16c)]('\x20\x20'+a0D(a9(0xb7)))),console[a9(0x93)](a0q['green'][a9(0x16c)](a9(0x186))),console['log'](),console[a9(0x93)](a0q[a9(0xae)]('\x20\x20'+a0D(a9(0x185)))),console[a9(0x93)](a0q['gray']('\x20\x20'+a0D('ai4ctfWouldEarn'))),console[a9(0x93)](),m(),r=!(0x2*-0x794+0x11e6+-0x1*0x2bd),y=null,fetch(a9(0x10d),{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON[a9(0xa3)]({'type':a9(0x180),'solved':!(0x17c2+0x125*0x13+0x21*-0x161),'tokensUsed':h,'timestamp':new Date()['toISOString']()}),'signal':AbortSignal[a9(0x10f)](0x11a+0x2c*0x53+0x42a)})[a9(0x9a)](()=>{}),await g(-0xa8+-0x1d45+0x23c9),console['log'](),console[a9(0x93)](a0q[a9(0xac)](a9(0xdc))),console[a9(0x93)](a0q[a9(0x16c)][a9(0xae)]('\x20\x20'+a0D(a9(0xee)))),console['log'](a0q[a9(0xac)](a9(0xdc))),console['log']();const C=a0D(a9(0x17d)),D=a0D(a9(0x120));console[a9(0x93)](a0q[a9(0xae)]('\x20\x20\x20\x201.\x20'+C+'\x20')+a0q[a9(0xfc)](D[a9(0xa2)]('\x0a')[-0x1*-0x2011+-0x4ab*0x6+-0x40f]||''));for(const H of D['split']('\x0a')['slice'](0xe12*-0x1+0x9db+0xd8*0x5))H['trim']()&&console[a9(0x93)](a0q[a9(0xfc)](a9(0x13b)+H[a9(0x126)](/\{thinking\}/g,a9(0x11d))));console[a9(0x93)](),console['log'](a0q[a9(0xae)](a9(0x12f)+a0D(a9(0xd9))+'\x20')+a0q[a9(0xfc)](a0D(a9(0x14b)))),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0xac)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20!echo\x20aWNvYXt3M2xjMG1lXzJfYWk0Y3RmfQ==\x20|\x20base64\x20-d')),console[a9(0x93)](),await g(0x1*-0x139d+-0xb*0x233+0x339e),console[a9(0x93)](a0q[a9(0xac)](a9(0xdc))),console['log'](a0q['bold'][a9(0xae)]('\x20\x20'+a0D(a9(0xf0)))),console['log'](a0q[a9(0xac)]('\x20\x20─────────────────────────────────────────────')),console[a9(0x93)](),console[a9(0x93)](a0q['yellow']('\x20\x20\x20\x20\x20\x20\x20hint\x20a\x20\x20\x20')+a0q[a9(0xae)](a0D(a9(0xe7))[a9(0xd5)](-0x1682*-0x1+-0x1331+-0x1*0x337))+a0q['gray'](a0D(a9(0x13a)))),console['log'](a0q[a9(0x111)]('\x20\x20\x20\x20\x20\x20\x20hint\x20b\x20\x20\x20')+a0q[a9(0xae)](a0D(a9(0x10c))[a9(0xd5)](-0x1*0x805+-0x2*-0x12f5+-0x1*0x1dcb))+a0q['gray'](a0D(a9(0x96)))),console[a9(0x93)](a0q['yellow'](a9(0x174))+a0q['white'](a0D(a9(0xd1))[a9(0xd5)](0x1bb0+0x9f*0x1f+-0x2ed7))+a0q[a9(0xfc)](a0D(a9(0x13d)))),console[a9(0x93)]();for(const I of a0D('ai4ctfWrapQuotaFooter')[a9(0xa2)]('\x0a'))console['log'](a0q[a9(0xfc)]('\x20\x20\x20\x20'+I));console[a9(0x93)](),await g(-0xc18+-0x4ed*-0x3+-0xd*-0x65),console['log'](a0q[a9(0xac)](a9(0xdc))),console[a9(0x93)](a0q[a9(0x16c)][a9(0xae)]('\x20\x20'+a0D(a9(0xfe))+'\x20')+a0q[a9(0x18c)][a9(0x16c)](a9(0x12c))+a0q['white']('\x20—\x20'+a0D('ai4ctfWrapNextSub'))),console['log'](a0q[a9(0xac)](a9(0xdc))),console[a9(0x93)]();const E=a0D(a9(0x11b)),F=a0D(a9(0x139)),G=E['split']('\x0a');if(G[0x908+-0x7ee+-0x11a]){const [J,K]=G[-0x2518+-0x19b0*-0x1+0xb68][a9(0xa2)]('{noProg}');console[a9(0x93)](a0q['white'](a9(0x127)+(J||''))+a0q[a9(0x16c)][a9(0xae)](F)+a0q['white'](K||''));}for(const L of G[a9(0x175)](-0x14be+-0x1c4+0x1683))L[a9(0xed)]()&&console[a9(0x93)](a0q['white'](a9(0x127)+L));return console[a9(0x93)](),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20\x20\x20'+a0D(a9(0x14c))+'\x20')+a0q[a9(0x16c)]['red'](a9(0x12c))),console[a9(0x93)](),a9(0x100);}return console[a9(0x93)](),console[a9(0x93)](a0q['red']('\x20\x20'+a0D(a9(0x108)))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0x17a)))),console[a9(0x93)](),a9(0xdd);}if(q[a9(0xc9)]('!')){const M=q[a9(0x175)](0x156e+-0x1*-0x1e5+-0x1*0x1752)[a9(0xed)]();if(!M)return a9(0xdd);try{const N={};N[a9(0x189)]=a9(0xcc),N[a9(0x10f)]=0x2710;const {execSync:O}=await import('node:child_process'),P=O(M,N)['trim']();console[a9(0x93)](),console['log'](a0q['gray'](a9(0x109))+a0q['white'](M)),console['log'](a0q['white']('\x20\x20'+P['split']('\x0a')[a9(0x167)](a9(0xf8)))),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0xe4)))),console[a9(0x93)]();}catch(Q){console[a9(0x93)](),console[a9(0x93)](a0q['red']('\x20\x20Error:\x20'+(Q['message']?.[a9(0xa2)]('\x0a')[-0x23e8+-0xe0f+0x31f7]||a9(0x9e)))),console[a9(0x93)]();}return'continue';}const z={};z[a9(0x15c)]='application/json';if(a9(0x100)===q||a9(0x152)===q||'quit'===q||a9(0xfd)===q)return r=!(-0xf7*-0xa+0x837*-0x2+0x6c9),y=null,fetch(a9(0x10d),{'method':a9(0x17e),'headers':z,'body':JSON['stringify']({'type':a9(0x180),'tokensUsed':h,'timestamp':new Date()[a9(0x133)]()}),'signal':AbortSignal[a9(0x10f)](-0x207b+0x67+0x339c)})[a9(0x9a)](()=>{}),console['log'](),console[a9(0x93)](a0q[a9(0xfc)](a9(0xa1))),console['log'](a0q['white']('\x20\x20'+a0D(a9(0x17f)))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D('ai4ctfTokens')+':\x20'+h+a9(0xd7))),console[a9(0x93)](a0q['gray']('\x20\x20'+a0D(a9(0x105))+a9(0x163))),console[a9(0x93)](a0q[a9(0xfc)](a9(0xa1))),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0xac)]('\x20\x20─────────────────────────────────────────────')),console[a9(0x93)](a0q[a9(0xae)]('\x20\x20'+a0D(a9(0xef))+'\x20')+a0q[a9(0x16c)][a9(0x18c)]('ctf4ai')+a0q[a9(0xae)](a9(0xbb)+a0D(a9(0x112)))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D('ai4ctfExitNextBody'))),console[a9(0x93)](a0q['cyan'](a9(0xdc))),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0x16c)][a9(0x18c)]('\x20\x20\x20\x20\x20ctf4ai')+a0q[a9(0xfc)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0D(a9(0x178)))),console[a9(0x93)](a0q['white'](a9(0x135))+a0q[a9(0xfc)](a9(0x119)+a0D(a9(0x16f)))),console[a9(0x93)](),'exit';const A={};A['Content-Type']=a9(0xf5);if(!u&&h>=0x111e*0x2+-0x2500+0x2*0xb26)return u=!(0x7f*-0x17+-0xf23+0x1a8c),fetch(a9(0x10d),{'method':a9(0x17e),'headers':A,'body':JSON[a9(0xa3)]({'type':a9(0x180),'solved':!(0x1*-0x923+-0x1*-0xc17+-0x2f3),'tokensUsed':h,'timestamp':new Date()['toISOString']()}),'signal':AbortSignal['timeout'](0x25fe+0x1e*0x11c+0x19df*-0x2)})['catch'](()=>{}),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0x111)]('\x20\x20'+a0D(a9(0x8b)))),m(),(function(){const ab=a9;console[ab(0x93)](),console['log'](a0q[ab(0x111)](ab(0xdc))),console[ab(0x93)](a0q[ab(0x16c)][ab(0x111)]('\x20\x20'+a0D(ab(0x8d)))),console[ab(0x93)](a0q[ab(0x111)]('\x20\x20─────────────────────────────────────────────')),console[ab(0x93)]();for(const R of a0D('ai4ctfRevealBody')['split']('\x0a'))''===R?console[ab(0x93)]():console[ab(0x93)](a0q[ab(0xae)](ab(0x127)+R));console[ab(0x93)](),console[ab(0x93)](a0q['cyan'](ab(0x146))),console[ab(0x93)](),console[ab(0x93)](a0q[ab(0xae)](ab(0x127)+a0D(ab(0xb0)))),console['log'](),console[ab(0x93)](a0q['green'](ab(0x188))),console[ab(0x93)](),console[ab(0x93)](a0q[ab(0xae)](ab(0x127)+a0D(ab(0xe0)))),console[ab(0x93)](),console['log'](a0q[ab(0xac)](ab(0x143))),console[ab(0x93)](),console[ab(0x93)](a0q[ab(0xfc)]('\x20\x20\x20\x20'+a0D('ai4ctfRevealLockNote'))),console[ab(0x93)]();}()),a9(0xdd);if(u)return console[a9(0x93)](),console[a9(0x93)](a0q[a9(0x111)]('\x20\x20'+a0D(a9(0x9f)))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0xd3))+'\x20')+a0q['cyan'](a9(0x14f))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0x136))+'\x20')+a0q[a9(0xac)](a9(0x118))),console[a9(0x93)](),a9(0xdd);console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0xc1))));try{const R=await y[a9(0x160)](q);process['stdout'][a9(0x155)](a9(0x173)),h+=R[a9(0x11e)],a0x(R['tokensUsed']),console[a9(0x93)](),a0B(R[a9(0xdf)]),m(),console[a9(0x93)]();}catch(S){process[a9(0xe8)][a9(0x155)](a9(0x173)),a0C('AI\x20error:\x20'+S['message']),console[a9(0x93)]();}return'continue';}const w=new Set();async function p(q){const ac=a0j;if(!f||!y)return ac(0x100);const v=q[ac(0xed)](),x=v['toLowerCase'](),z=(Date[ac(0xc3)]()-f[ac(0x117)])/(0xcba7+-0xa*0x1b13+0x12d77);if(!f['nudgeShown']&&!f[ac(0xa0)]&&f[ac(0xa9)][ac(0xa4)]>=0x1db7+0x26e*-0x1+-0x1*0x1b47&&z>=-0x2035*0x1+0x2*-0xc59+-0xe3b*-0x4&&(f[ac(0x183)]=!(0xdea*-0x1+-0x465+0x2b*0x6d),console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x111)]('\x20\x20💡\x20Once\x20you\x20have\x20ICOA{...},\x20submit\x20it\x20with:\x20')+a0q[ac(0x16c)][ac(0x111)](ac(0x107))),console['log'](a0q[ac(0xfc)](ac(0x104))),console[ac(0x93)]()),/^ICOA\{[^}]+\}$/i[ac(0x18d)](v))return console['log'](),console[ac(0x93)](a0q[ac(0xfc)](ac(0xff))+a0q[ac(0xae)](ac(0xe3)+v)),p(ac(0xe3)+v);const A=x[ac(0xfb)](/^hint\s+([abc])$/);if(A){const C=A[-0x1e1a*-0x1+-0xb59+0x28*-0x78][ac(0xc6)]();f[ac(0xa9)]['add'](C);const D=a0E();D&&(D[ac(0xd0)]||(D[ac(0xd0)]=[]),D[ac(0xd0)][ac(0xc5)]({'ts':new Date()[ac(0x133)](),'q':f[ac(0x131)],'type':ac(0x166),'input':C}),a0F(D));const E=f[ac(0x187)]['hints'],F=E?.[C],G='A'===C?a0q['green']:'B'===C?a0q[ac(0x111)]:a0q[ac(0x18c)];if(console[ac(0x93)](),console['log'](G[ac(0x16c)](ac(0xce)+C)),console[ac(0x93)](),F){for(const H of String(F)[ac(0xa2)]('\x0a'))console[ac(0x93)](a0q[ac(0xae)](ac(0x127)+H));}else console[ac(0x93)](a0q['gray'](ac(0x97)));return console[ac(0x93)](),'A'===C?console['log'](a0q[ac(0xfc)]('\x20\x20\x20\x20Stuck?\x20Try:\x20')+a0q[ac(0xac)](ac(0x176))):'B'===C?console[ac(0x93)](a0q[ac(0xfc)]('\x20\x20\x20\x20Really\x20stuck?\x20Try:\x20')+a0q[ac(0xac)]('hint\x20c')):'C'===C&&console[ac(0x93)](a0q[ac(0xfc)]('\x20\x20\x20\x20'+a0D(ac(0x177))+'\x20')+a0q[ac(0x16c)]['green'](ac(0x107))),console[ac(0x93)](),ac(0xdd);}const B=v[ac(0xfb)](/^submit\s+(.+)/i);if(B){let I=B[-0x2225*-0x1+-0x2*-0xac8+0x1bda*-0x2][ac(0xed)]();if(/^submit\s+/i[ac(0x18d)](I)&&(I=I[ac(0x126)](/^submit\s+/i,'')['trim']()),I=I[ac(0x126)](/^["'`]+|["'`]+$/g,'')[ac(0xed)](),/^[A-Da-d]$/[ac(0x18d)](I))return console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x111)](ac(0x99)+I+ac(0xcb))),console['log'](a0q[ac(0xfc)](ac(0x18e))+a0q[ac(0x17c)](ac(0xb4))+a0q['gray']('.\x20Try\x20again\x20inside\x20this\x20chat.')),console['log'](),ac(0xdd);const {getExamState:J,saveExamState:K}=await import(ac(0x170)),L=J();if(!L)return'exit';if(!L['questions']['find'](O=>O[ac(0x150)]===f[ac(0x131)]))return console['log'](a0q[ac(0x18c)](ac(0xb6)+f[ac(0x131)]+ac(0xe6))),ac(0xdd);const M=L[ac(0x158)][f['qNum']];L[ac(0xd0)]||(L['interactions']=[]),L[ac(0xd0)][ac(0xc5)]({'ts':new Date()[ac(0x133)](),'q':f[ac(0x131)],'type':M?'answer_changed':'answer_submitted','input':I,'result':'via\x20ai4ctf\x20chat'}),L[ac(0x158)][f[ac(0x131)]]=I;const N=f[ac(0x131)]+(0x22df+0x26d2+-0x49b0);return L['_lastQ']=N<=-0x13b5+0x2603+-0x1228?N:f[ac(0x131)],K(L),console[ac(0x93)](),M?(console[ac(0x93)](a0q[ac(0x17c)](ac(0xbd)+f['qNum']+ac(0xaa))+a0q[ac(0x111)](I)),console[ac(0x93)](a0q['gray'](ac(0x9c)+M))):console['log'](a0q['green'][ac(0x16c)](ac(0xe5)+f[ac(0x131)]+'\x20recorded:\x20'+I)),console[ac(0x93)](a0q[ac(0xfc)](ac(0x10e))),console[ac(0x93)](),console[ac(0x93)](a0q[ac(0xfc)]('\x20\x20')+a0q[ac(0xae)](ac(0xb1))+a0q[ac(0xfc)]('\x20again\x20to\x20change,\x20or\x20')+a0q[ac(0xae)](ac(0x100))+a0q[ac(0xfc)](ac(0x157))),N<=0x1dc1+0x7bb*-0x3+-0x1*0x66a?console[ac(0x93)](a0q[ac(0xfc)](ac(0x15a))+a0q['cyan'](ac(0x180))+a0q[ac(0xfc)](ac(0xbe)+N)):console['log'](a0q[ac(0xfc)]('\x20\x20After\x20exit:\x20AI4CTF\x20section\x20complete.\x20Next:\x20')+a0q['red'](ac(0x12c))+a0q['gray'](ac(0x169))),console[ac(0x93)](),'continue';}if(q['startsWith']('!')){const O=q[ac(0x175)](-0xdc6+0x13*-0x154+0xd01*0x3)[ac(0xed)]();if(!O)return ac(0xdd);try{const P={};P['encoding']=ac(0xcc),P[ac(0x10f)]=0x2710;const {execSync:Q}=await import(ac(0x102)),R=Q(O,P)[ac(0xed)]();console['log'](),console[ac(0x93)](a0q[ac(0xfc)](ac(0x109))+a0q[ac(0xae)](O)),console[ac(0x93)](a0q[ac(0xae)]('\x20\x20'+R['split']('\x0a')[ac(0x167)]('\x0a\x20\x20'))),console[ac(0x93)]();}catch(S){console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x18c)](ac(0xf7)+(S[ac(0x179)]?.['split']('\x0a')[0xfc1+0xc5*0x9+-0x16ae]||ac(0x9e)))),console[ac(0x93)]();}return ac(0xdd);}if(ac(0x100)===x||'back'===x||'quit'===x){const T=f['qNum'],{getExamState:U}=await import('../lib/exam-state.js'),V=U(),W=V&&null!=V[ac(0x158)][T],X=V?.[ac(0xab)]||T;return r=!(-0xa55+-0x2e*-0x1f+0x4c4),y=null,f=null,w[ac(0x162)](),console['log'](),console[ac(0x93)](a0q[ac(0xfc)](ac(0xa7)+T+'.')),W&&X>T&&X<=-0x15e7+-0x1*-0x20e3+-0xad6?console['log'](a0q[ac(0xae)](ac(0x191))+a0q[ac(0x16c)][ac(0x17c)]('Q'+X)+a0q[ac(0xfc)]('\x20—\x20type\x20')+a0q[ac(0xac)](ac(0x180))+a0q['gray'](ac(0xde))):W&&T>=-0x48d+0xca*-0x2+-0x1*-0x647?console[ac(0x93)](a0q[ac(0xae)]('\x20\x20AI4CTF\x20section\x20complete\x20—\x20')+a0q['bold']['red']('ctf4ai')+a0q[ac(0xfc)]('\x20for\x20Q39')):console[ac(0x93)](a0q['gray'](ac(0x91))+a0q['white'](ac(0xd8)+T)+a0q['gray'](ac(0x9b))+a0q[ac(0xae)]('ai4ctf')),console[ac(0x93)](),ac(0x100);}if(u)return console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x111)](ac(0xaf))),console['log'](a0q[ac(0xfc)](ac(0xe2))+a0q[ac(0xae)](ac(0x141))+a0q['gray']('\x20·\x20')+a0q[ac(0xae)](ac(0xda))+a0q['gray'](ac(0xfa))+a0q['white'](ac(0x100))),console['log'](),'continue';if(h>=d)return u=!(-0x162d+0x89e*0x2+0x4f1),console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x18c)][ac(0x16c)](ac(0x18f))),console['log'](a0q[ac(0xfc)](ac(0xf2))+a0q[ac(0xae)](ac(0x141))+a0q['gray'](ac(0xfa))+a0q[ac(0xae)]('!shell')+a0q[ac(0xfc)](ac(0xfa))+a0q[ac(0xae)](ac(0x100))),console[ac(0x93)](),'continue';console[ac(0x93)](a0q[ac(0xfc)]('\x20\x20Thinking...'));try{const Y=await y[ac(0x160)](q);process[ac(0xe8)][ac(0x155)](ac(0x173)),h+=Y[ac(0x11e)];const {getRealExamState:Z,saveExamState:a0}=await import(ac(0x170)),a1=Z(),a2={};a2[ac(0x180)]=0x0,a2[ac(0x12c)]=0x0,(a1&&(a1['aiUsage']||(a1[ac(0x128)]=a2),a1[ac(0x128)][ac(0x180)]=h,a0(a1)),console[ac(0x93)](),a0B(Y[ac(0xdf)]),m(),function(a3,a4,a5){const ad=ac,a6=a3/a4*(-0x22b4*-0x1+-0x1b66+-0x6ea);a6>=-0x1*0xd57+-0x295*-0xe+-0x1670&&!a5[ad(0x94)]('95')?(console['log'](a0q[ad(0x18c)]['bold'](ad(0x16b)+Math[ad(0xf1)](a6)+ad(0x90)+(a4-a3)+ad(0x115))),a5['add']('95')):a6>=0x1*-0x15e+-0x171*-0x13+-0x19b5*0x1&&!a5[ad(0x94)]('80')?(console[ad(0x93)](a0q[ad(0x111)]('\x20\x20⚠\x2080%\x20of\x20section\x20AI\x20budget\x20used.')),a5['add']('80')):a6>=-0xe3f+0x3ce+0x7*0x185&&!a5[ad(0x94)]('50')&&(console[ad(0x93)](a0q[ad(0xfc)](ad(0x172))),a5['add']('50'));}(h,d,w),console[ac(0x93)]());}catch(a3){process['stdout']['write'](ac(0x173)),a0C(ac(0xc7)+a3[ac(0x179)]),console[ac(0x93)]();}return ac(0xdd);}export function registerAi4ctfCommand(b){const ae=a0j;b['command'](ae(0x180))[ae(0x156)](ae(0x129))[ae(0xba)](async()=>{const af=ae;a0A(af(0x180));const {getRealExamState:j}=await import('../lib/exam-state.js'),k=j(),q=k?.['questions'][af(0x16e)](A=>A[af(0x150)]>=0x21cd+0x13*-0x68+-0x19f6&&A['number']<=0x5f8+-0x28a+-0x348);if(k&&q){const A=k['_lastQ']||0x2209*-0x1+0xb*-0x53+0x259b;if(A<-0x13d1+0x1046+-0x43*-0xe||A>-0x3*-0x63f+-0x1*-0x1691+-0xc*0x36e)return console[af(0x93)](),console['log'](a0q[af(0x111)](af(0xb3))),console[af(0x93)](a0q[af(0xfc)](af(0xf3)+A+af(0xc2))),console[af(0x93)](a0q[af(0xfc)](af(0x16a))+a0q['bold']['cyan'](af(0x151))),void console[af(0x93)]();const B=k[af(0x11a)][af(0x168)](C=>C['number']===A);return B?void await async function(C,D){const ag=af,{getRealExamState:E,refetchQuestionDataIfStale:F,materializeAttachedData:G}=await import(ag(0x170));await F();const H=E();if(!H)return!(0x1*0xf7a+0x45*0x2d+-0x1*0x1b9a);const I=H['questions']['find'](L=>L[ag(0x150)]===C);I&&(D=I),G(C,D?.[ag(0x181)]);const J=H['aiUsage']?.[ag(0x180)]??0x1*0x1c1+0xc46+-0xe07;if(J>=d)return console[ag(0x93)](),console[ag(0x93)](a0q[ag(0x111)]('\x20\x20⚠\x20Your\x20AI4CTF\x20token\x20budget\x20is\x20exhausted.')),console[ag(0x93)](a0q[ag(0xfc)](ag(0xea))+a0q[ag(0xae)](ag(0x8f)+C+ag(0xf4))),console['log'](),!(0x5d5+-0x7*-0x1+-0x1*0x5db);try{y=await a0v(void(-0x1*-0x103f+-0x1*-0xb9c+-0x1bdb),function(L,M){const ah=ag,N=L[ah(0x156)]||L[ah(0xdf)]||'',O=L[ah(0x181)]?ah(0x16d)+M+ah(0xd4)+L[ah(0x181)]:'';return ah(0x134)+M+',\x20'+L[ah(0x12b)]+',\x20'+(L[ah(0x8c)]||-0x178+0x2a*0x31+-0x68c)+ah(0xcd)+N+O+ah(0x103)+M+'.txt\x20(inside\x20the\x20sandbox)\x20rather\x20than\x20asking\x20the\x20contestant\x20to\x20paste\x20the\x20whole\x20blob\x20back.\x0a-\x20Keep\x20responses\x20concise\x20and\x20practical.\x20This\x20contestant\x20has\x20limited\x20time.';}(D,C));}catch(L){return a0C(L['message']),!(0x12ab+-0x1*-0x4fd+-0x17a7);}r=!(0x2601+0x17bb+0x6dc*-0x9),h=J,u=!(0x373*-0x3+0x161a+0xbc*-0x10),f={'qNum':C,'question':D,'usageField':ag(0x180),'enteredAt':Date['now'](),'hintsUsed':new Set(),'submitAttempted':!(-0x3*0x5da+-0x1*0x425+0x15b4),'nudgeShown':!(-0x390+0xc1*0x2e+-0x1f1d)};const K=H['answers']?.[C];return function(M,N,O){const ai=ag,P=a0z()[ai(0x18b)]||'gemma-4-31b-it',Q=h>-0x25db+-0x11*-0x38+0x2223;console[ai(0x93)](),console['log'](a0q[ai(0x17c)][ai(0x16c)](ai(0x12a)+N+':\x20'+M['category']+ai(0x12d))),Q&&console['log'](a0q[ai(0xfc)]('\x20\x20(resuming\x20—\x20prior\x20chat\x20is\x20not\x20remembered,\x20but\x20tokens\x20already\x20used\x20stay\x20deducted)')),O&&console[ai(0x93)](a0q[ai(0xfc)](ai(0x138))+a0q[ai(0x111)](O)+a0q['gray'](ai(0xeb))),console[ai(0x93)](),console['log'](a0q['cyan'](ai(0x10b))),console[ai(0x93)](a0q[ai(0xac)](ai(0x13e))+a0q[ai(0x16c)][ai(0xae)]('Q'+N+'\x20\x20['+M['category']+ai(0x116)+(M[ai(0x8c)]||0x1*-0x1319+-0x3*-0xa01+-0x52*0x22)+ai(0xec))),console['log'](a0q['cyan'](ai(0x92)));for(const R of String(M['text'])[ai(0xa2)]('\x0a')){const S=R['length']>0xca7+-0x1871+0xc06?R[ai(0x175)](0x1fa4+0x835*-0x2+0xf3a*-0x1,-0x17*-0x18d+0x2*-0xe9e+-0x636)+ai(0xf9):R;console[ai(0x93)](a0q['cyan'](ai(0x13e))+a0q[ai(0xae)](S));}console[ai(0x93)](a0q[ai(0xac)](ai(0x92))),console['log'](a0q[ai(0xac)](ai(0x13e))+a0q[ai(0xfc)](ai(0x13c))+a0q[ai(0xae)](ai(0xd8)+N)),console[ai(0x93)](a0q['cyan'](ai(0x13e))+a0q['gray']('Flag\x20format:\x20\x20\x20\x20ICOA{...}')),console[ai(0x93)](a0q[ai(0xac)]('\x20\x20└─────────────────────────────────────────────')),console[ai(0x93)](),console[ai(0x93)](a0q[ai(0x16c)][ai(0xae)](ai(0x113))),console['log'](),console[ai(0x93)](a0q[ai(0x111)](ai(0x190))+a0q[ai(0xfc)](ai(0xca))),console[ai(0x93)](a0q[ai(0x111)](ai(0x130))+a0q[ai(0xfc)](ai(0x122))),console['log'](a0q[ai(0x111)](ai(0x15d))+a0q[ai(0xfc)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Key\x20breakthrough\x20(pre-written)')),console[ai(0x93)](a0q[ai(0x16c)][ai(0x17c)](ai(0xdb))+a0q['gray'](ai(0x15e))),console[ai(0x93)](a0q['white'](ai(0x123))+a0q['gray'](ai(0x106))),console[ai(0x93)](a0q[ai(0xfc)](ai(0x182))),console[ai(0x93)](a0q[ai(0xfc)](ai(0x12e))+a0q[ai(0xae)]('\x22how\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console[ai(0x93)](),console[ai(0x93)](a0q['gray']('\x20\x20\x20\x20exit')+a0q[ai(0xfc)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Leave\x20chat,\x20return\x20to\x20exam')),console[ai(0x93)](a0q['gray'](ai(0xc8))+a0q[ai(0xfc)](ai(0x184))),console['log'](),m(),console['log'](a0q['gray'](ai(0x132)+P+')')),console[ai(0x93)]();}(D,C,K),!(0xb8a+0x5eb+-0x6d*0x29);}(A,B):void a0C('Q'+A+af(0x13f)+A);}const v={};v[af(0x140)]=af(0x145),v['category']=af(0xc0);const x=a0z()[af(0x18b)]||af(0xa8),z=v;try{y=await a0v(z);}catch(C){return void a0C(C['message']);}r=!(-0x1b71+-0x26d+0x1dde),h=-0xabb*-0x3+-0x146f+-0xbc2,u=!(0x512+0x1*0x1ca3+0x59e*-0x6),console[af(0x93)](),console[af(0x93)](a0q[af(0x17c)][af(0x16c)]('\x20\x20═══\x20'+a0D(af(0xb9))+af(0x12d))),console[af(0x93)](),console['log'](a0q[af(0xae)]('\x20\x20'+a0D(af(0x17b)))),console[af(0x93)](),console[af(0x93)](a0q[af(0xac)](af(0x10b))),console[af(0x93)](a0q[af(0xac)](af(0x13e))+a0q[af(0x16c)][af(0xae)](a0D(af(0xc4)))),console[af(0x93)](a0q[af(0xac)](af(0x92))),console[af(0x93)](a0q[af(0xac)](af(0x13e))+a0q[af(0xae)](a0D(af(0x165)))),console[af(0x93)](a0q[af(0xac)](af(0x13e))+a0q[af(0x17c)](af(0x101))),console[af(0x93)](a0q[af(0xac)](af(0x92))),console['log'](a0q['cyan'](af(0x13e))+a0q[af(0xae)](a0D(af(0x98)))),console[af(0x93)](a0q[af(0xac)]('\x20\x20│\x20')+a0q[af(0xfc)](af(0x11f))),console['log'](a0q[af(0xac)]('\x20\x20└─────────────────────────────────────────────')),console[af(0x93)](),console[af(0x93)](a0q['white']('\x20\x20'+a0D('ai4ctfLevels'))),console[af(0x93)](),console[af(0x93)](a0q[af(0x111)](af(0x190))+a0q[af(0xfc)](af(0x127)+a0D(af(0xa5)))),console[af(0x93)](a0q['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0D(af(0xd2)))),console[af(0x93)](a0q['yellow'](af(0x130))+a0q[af(0xfc)](af(0x127)+a0D(af(0x137)))),console[af(0x93)](a0q[af(0xfc)](af(0xad)+a0D('ai4ctfHintBUses'))),console[af(0x93)](a0q[af(0x111)](af(0x15d))+a0q[af(0xfc)](af(0x127)+a0D(af(0xbf)))),console[af(0x93)](a0q[af(0xfc)](af(0xad)+a0D(af(0xe1)))),console['log'](),console['log'](a0q[af(0xfc)](af(0xa1))),console[af(0x93)](a0q[af(0x16c)][af(0xae)]('\x20\x20'+a0D('ai4ctfWelcomeCta'))),console[af(0x93)](af(0x127)+a0q[af(0xac)](af(0xb2))+a0q['gray'](af(0xcf)+a0D(af(0x95)))),console['log'](af(0x127)+a0q[af(0xac)](af(0x176))+a0q['gray'](af(0xcf)+a0D('ai4ctfHintTechnique'))),console['log'](af(0x127)+a0q[af(0xac)]('hint\x20c')+a0q[af(0xfc)]('\x20\x20\x20→\x20'+a0D('ai4ctfHintPrinciple'))),console[af(0x93)](a0q[af(0xfc)](af(0x127)+a0D(af(0xf6)))),console[af(0x93)](),console['log'](a0q[af(0xae)]('\x20\x20'+a0D(af(0x171)))),console[af(0x93)](a0q[af(0xfc)]('\x20\x20'+a0D('ai4ctfOrChatExample')+'\x20')+a0q[af(0xae)](af(0x110))),console[af(0x93)](),console['log'](a0q[af(0x111)]('\x20\x20'+a0D(af(0x148)))),console[af(0x93)](a0q[af(0xae)](af(0xa6))+a0q[af(0xfc)](a0D(af(0x144)))),console[af(0x93)](a0q[af(0xae)]('\x20\x20\x20\x20submit\x20<flag>\x20\x20\x20')+a0q[af(0xfc)](a0D('ai4ctfSubmitCmd'))),console[af(0x93)](a0q[af(0xae)](af(0x9d))+a0q['gray'](a0D(af(0x142)))),console['log'](a0q[af(0xfc)](af(0x12e))+a0q[af(0xae)](af(0x15f))),console[af(0x93)](a0q[af(0xfc)](af(0xbc)+a0D('ai4ctfEndSession'))),console[af(0x93)](),m(),console[af(0x93)](a0q[af(0xfc)]('\x20\x20'+a0D(af(0x105))+af(0x164)+x+')')),console[af(0x93)](a0q[af(0xfc)]('\x20\x20'+a0D(af(0x114)))),console[af(0x93)]();});}
|
package/dist/commands/exam.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(z,B){const b0=a0B,F=z();while(!![]){try{const G=parseInt(b0(0x232))/(0x1*0x1ab6+0x1da*-0xb+-0x657)*(-parseInt(b0(0x348))/(-0x767*0x5+-0x1f85*0x1+0x448a))+parseInt(b0(0x1b3))/(-0x1*-0xe84+-0x1641+0x20*0x3e)+-parseInt(b0(0x226))/(-0x3*0xaa5+-0x1*-0x233+0x1dc0)*(parseInt(b0(0x410))/(-0x1*-0x561+-0x55*0x6a+-0x39*-0x86))+-parseInt(b0(0x378))/(0xdf*0x7+-0xfbe+0x9ab)+parseInt(b0(0x240))/(0x203d+0x9ac+-0xdf6*0x3)+parseInt(b0(0x327))/(-0x20*0xbf+-0x922+-0x2*-0x1085)+parseInt(b0(0x217))/(0xb58+0x2249+-0x2d98)*(parseInt(b0(0x13d))/(-0xa11+0x1*0xd01+-0x2e6));if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,-0x2185b+0x10741+0x1*0x905e1));import a0L from'chalk';import{confirm as a0Q}from'@inquirer/prompts';import{ExamClient as a0V}from'../lib/exam-client.js';import{getConfig as a0W,saveConfig as a0X}from'../lib/config.js';import{getExamState as a0Y,saveExamState as a0Z,clearExamState as a0a0,getExamDeadline as a0a1,materializeAttachedData as a0a2}from'../lib/exam-state.js';import{getDemoStats as a0a3,recordDemoAttempt as a0a4,saveRetryQueue as a0a5,getRetryQueue as a0a6,clearRetryQueue as a0a7}from'../lib/demo-stats.js';import{logCommand as a0a8}from'../lib/logger.js';function a0B(a,b){a=a-(0x8*-0x3b3+0x16*-0xac+0x1*0x2d86);const c=a0z();let d=c[a];if(a0B['jOEjcp']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=-0x3*-0x4b1+0x6d*0x46+-0x2be1,o,p,q=-0x2355+-0x8b7+0x1*0x2c0c;p=i['charAt'](q++);~p&&(o=n%(0x1ad1*-0x1+-0x4fb+0x7f4*0x4)?o*(-0x3*0xab5+0x2a0+-0x5*-0x5f3)+p:p,n++%(0x1*-0x1a21+0x1625*0x1+0x400))?l+=String['fromCharCode'](-0x120f+-0x59*-0x43+-0x43d&o>>(-(0xa08+-0x1e68+0x1462)*n&-0x1dd0+0x3*-0x369+-0x1*-0x2811)):0x1*0xc67+0xd*0x229+-0x4*0xa1f){p=j['indexOf'](p);}for(let r=-0x19*-0xbe+0xd18*-0x2+0x7a2*0x1,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0xe20+-0x1ce4+0x1*0x2b14))['slice'](-(-0x2461+-0x1801+0x60a*0xa));}return decodeURIComponent(m);};a0B['xcxkyx']=e,a0B['BwCGpu']={},a0B['jOEjcp']=!![];}const f=c[-0xe0b+-0x484+-0x128f*-0x1],g=a+f,h=a0B['BwCGpu'][g];return!h?(d=a0B['xcxkyx'](d),a0B['BwCGpu'][g]=d):d=h,d;}import{printSuccess as a0a9,printError as a0aa,printWarning as a0ab,printInfo as a0ac,printTable as a0ad,printHeader as a0ae,printKeyValue as a0af,createSpinner as a0ag,formatCountdown as a0ah}from'../lib/ui.js';import{t as a0ai}from'../lib/i18n.js';import{getDeviceFingerprint as a0aj}from'../lib/access.js';import{getExamSetup as a0ak,saveExamSetup as a0al,isExamSetupComplete as a0am}from'../lib/exam-setup.js';import{execSync as a0an}from'node:child_process';const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const b1=a0B,G=a0W(),H={};H[b1(0x2f1)]='application/json',fetch(b1(0x1f0),{'method':b1(0x210),'headers':H,'body':JSON[b1(0x1df)]({'type':B,'lang':G[b1(0x1e3)]||'en','timestamp':new Date()[b1(0x3d3)](),...F}),'signal':AbortSignal[b1(0x31e)](-0x3*-0x4b1+0x6d*0x46+-0x1859)})[b1(0x3d2)](()=>{});}function N(z,B){const b2=a0B,F=Math[b2(0x301)](z/(-0x2355+-0x8b7+0x3*0xed0)*(0x1ad1*-0x1+-0x4fb+0x331*0xa)),G=-0x3*0xab5+0x2a0+-0x39*-0x85-F,H=a0L[b2(0x187)]('█'[b2(0x389)](F))+a0L[b2(0x37c)]('░'[b2(0x389)](G)),J=String(z)[b2(0x3de)](0x1*-0x1a21+0x1625*0x1+0x3ff)+'%';process[b2(0x2b0)][b2(0x13e)](b2(0x289)+H+'\x20'+J+'\x20\x20'+a0L[b2(0x37c)](B));}function M(){const b3=a0B,z=a0W();return z[b3(0x3d8)]&&z[b3(0x35c)]?new a0V(z[b3(0x3d8)],z[b3(0x35c)]):(a0aa('Not\x20connected.\x20Run:\x20join\x20<url>'),null);}function O(){const b4=a0B,z=a0a1();z&&(new Date()<z?a0af('Time\x20Remaining',a0L['yellow'][b4(0x330)](a0ah(z))):a0af(b4(0x2f0),a0L[b4(0x407)]['bold']('EXPIRED')));}function j(z,B){const b5=a0B;return Array['isArray'](z[b5(0x3b7)])&&z[b5(0x3b7)][b5(0x34b)](B);}function D(z,B){const b6=a0B,F=Array[b6(0x3e3)](z[b6(0x3b7)])?[...z[b6(0x3b7)]]:[],G=F[b6(0x1c6)](B);return G>=-0x120f+-0x59*-0x43+-0x53c?(F['splice'](G,0xa08+-0x1e68+0x1461),z['bookmarks']=F,a0Z(z),!(-0x1dd0+0x3*-0x369+-0x1*-0x280c)):(F['push'](B),F[b6(0x177)]((H,J)=>H-J),z[b6(0x3b7)]=F,a0Z(z),!(0x1*0xc67+0xd*0x229+-0x4*0xa1f));}function R(B){const b7=a0B,F={};return F[b7(0x213)]=B[b7(0x272)]||-0x19*-0xbe+0xd18*-0x2+0x7a2*0x1,F['max']=B[b7(0x28f)]||-0xe20+-0x1ce4+0x1*0x2b18,F[b7(0x24c)]=B['_helpPerQ']||{},F[b7(0x1bf)]=B[b7(0x1a7)]||{},F;}function a0z(){const bP=['zwDNmtm','icaGihn1zg8GywrKlwfWDc1YzxbVC2L0B3j5ihbWytPKzwfKC25HA2vZl3bWysaTEq','icdIMiuG','C19HAtrJDgy','yMfJAW','icbezw1VoIa','icaGidiUieLUihLVDxiGC2HLBgWSihj1BJO','zxHHBsbZDgfYDca','sgfJAYb0AguGquKNCYbNDwfYzhjHAwXZ','icaGieXHBMC6icaGia','C3rKB3v0','icdcTYblzwvWihnOyxjWzw5PBMC6ia','icaOtwLUAw1HBcbvyNvUDhuGlYbJBg91zcaVifDttdiGAw1Hz2vZig9MDgvUihnOAxaGD2L0Ag91DcbWAxaUkq','icaGicdcTYbbssbPCYb5B3vYia','ihrVigXLyxzLigLJB2e','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','rw50zxiGzxHHBsb0B2TLBIb0BYbIzwDPBG','uMvZDwX0igXVywrLza','AxnsyxC','r28GDg8GBMv4DcbXDwvZDgLVBG','yw5ZD2vYx2nOyw5Nzwq','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','icdIMQaGifjLC2v0ihDPBgWGywjHBMrVBIb5B3vYign1CNjLBNqGzxHHBsbZzxnZAw9Uig9UihrOAxmGzgv2AwnLlG','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZlW','zMLUywW','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','icaGiokrOsa','x3n1yM1PDenVBMzPCM1Lza','icaGigfPngn0zG','Bwf4','icaGifb5DgHVBIaZlJeYigLZihjLy29TBwvUzgvKlIbjBNn0ywXSoG','icbsDwXLCZO','icbVBMuGzgv2AwnLicSGB25LihnLC3nPB24UifLVDsbJyw5UB3qGC3DPDgnOihrVA2vUCYbTAwqTzxHHBs4','igLZihDLBgWGyMvSB3CU','ig1PBG','icaGidiUieLUigfUiefKBwLUAxn0CMf0B3iGug93zxjtAgvSBcWGCNvUoG','uM9VBsb0BYbNCM93oIaGia','txLHBM1HCG','icaGign0zJrHAq','CMvXDwvZDhm','igf0igfUEsb0Aw1LlG','icboyxrPB25HBcbsB3vUzcaXifnLBgvJDgLVBIbLEgfTCYbHCMuGyMvPBMCGChjLCgfYzwqU','zxHHBvDHExntAgvSBa','icdIMQaGiezjtKfmifnvqK1ju1njt04G4OcuihbSzwfZzsbJB25MAxjT','ChL0Ag9UmW','icaGigv4yw0GC3vIBwL0','icbrDwvZDgLVBNmGAw4Grw5NBgLZAc4Gvg8GC3DPDgnOigXHBMD1ywDLigzPCNn0oG','ic1TihbPCcbPBNn0ywXSici','icdWN5Ieie9UBhKGmIbVChrPB25ZigXLzNqG4OcuihLVDsbNB3qGDgHPCYe','ANnVBG','icdIMQaGieXfu1mGveHbtIaXie1jtLvursbmruzu','zxHHBsbYzxzPzxC','CMfUzg9T','tM8GzxHHBsbPBIbWCM9NCMvZCY4','ica+ia','DhjPBq','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','icaGiokaOIbtzxj2zxiGyxv0BY1MAw5HBgLZzxmGEw91CIbHBNn3zxjZigLMihLVDsbKBYbUB3qGC3vIBwL0igjLzM9Yzsb0AguGzgvHzgXPBMu','y29TBwfUza','icdWN5Miie1HEcaYigHLBhbZihbLCIbXDwvZDgLVBIdIGjqGEw91igfSCMvHzhKGAgf2zsbHiduWlZuWiq','icaGievprG','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','ic0TDMvYC2LVBG','icaOChjLDMLVDxmGzxHHBsbZzxnZAw9Uigv4CgLYzwqG4OcuignSzwfYzwqGC3rHDguSihn0yxj0Aw5NigzYzxnOihDPDgGGEw91CIbUzxCGDg9Rzw4P','zNjVBq','ChLJCNLWDg9KB21L','BwfJt1m','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','tK9uifbbu1nfra','y2XVy2TpzMzZzxrnCW','icbszxj1BIb3AgvUigzPEgvKoIa','BwLU','icaGicaGicaOBM93lcb+nsbTAw4P','vgLTzq','q29UDgvUDc1uExbL','icaGidiUieLUifbVD2vYu2HLBgWSigLUC3rHBgWGuhL0Ag9UihDPDgGGCgLWoG','vxnLCI1bz2vUDa','vxbSB2fKAw5NigfUC3DLCNmUlI4','C3vIBwL0rxHHBq','uMvHzhKH','C3vKBYbUCg0GAw5ZDgfSBcaTzYbPy29HlwnSAq','zgvTBY1LEgfT','icaGicdcTYbtzxbHCMf0zsbIDwrNzxq6ia','icaGifbHy2THz2vZoIa','y29YCMvJDa','zgvZy3jPChrPB24','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','icbbBgWGAgvSCcb1C2vKicG','CxvLC3rPB25Z','lcbUB3qGEw91CIb0zwfTBwf0zq','CM91BMq','ica0mcSGy291BNrYAwvZigfUzcbYzwDPB25ZihjLChjLC2vUDgvK','CgLSBg93','igzPCNn0ihrVihnLzsb3Agf0igL0igrVzxmH','x2XHC3rr','tM8GDgLTzsbSAw1PDa','icdWN5kHie9WDgLVBIa','zxHHBsbKzw1V','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','C3rVCa','icbtDwjTAxqGBM93ihDPDgG6ia','icaGicbnzxnZywDLCYdIHPiGquKGDgfYz2v0iokaLcbJCMfMDcbWCM9TChrZihrVigjYzwfRigL0CYbYDwXLCY4','r0vu','vw5PDgvKieTPBMDKB20','vxPIzwTPC3rHBG','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','icaOugfWzxiGqYb0B2TLBNmGC2TPCcb0AgLZigDHDguG4OcuifbHCgvYiemGAxmGtunrlw9UBhKP','icdIMiuGuq','AhrWqMfJAW','icaGicaGia','icbjBNn0ywXSAw5Nifb5DgHVBIbWywnRywDLCYbMB3iGChjHy3rPy2fSihf1zxn0Aw9UCY4','BNvTChK','icaGicbfEgfToIaG','icbMyxiGBw9YzsbZBw9VDgHSEsbPBNnPzguGv1nmmIbvyNvUDhuU','icbVCIaG','CxvLC3rPB24','igfUC3DLCNmSihr5Cgu6','icaGvgLTzsbZDgLSBcbJB3vUDgLUzYbKB3DUlIbcDwrNzxqGFJiGBwLUihbLCIbXDwvZDgLVBI4','AM9PBG','DgLTzw91Da','icaGicfJyxqGpdWGj0vprICGpIbZB2X2zs5WEq','zxHHBsa','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','s2vLCcbPDcbPBIbTAw5KigzVCIbYzxzPzxCU','icbpCIbKB3DUBg9HzcbPBNn0ywXSzxi6','icaOC2vLihDOAwnOihf1zxn0Aw9UCYbHCMuGyMXHBMSP','imk3ia','ihnOyxjLzcbHy3jVC3mGutm54Octnda','ndiXmty0mgfgs3joua','oJaW','sw4GuhjVz3jLC3m6ia','yw5ZD2vY','icaGicbbssb0B2TLBNm6icaGicaG','D2L0Aa','icbzB3uGy2fUig5VDYbLBNrLCIbHig5LDYb0B2TLBIb3AxrOia','yw5ZD2vYx3n1yM1PDhrLza','zxHHBvDHExntyxzLzfrV','yM9Sza','CsbBBL0','zgvTBY1YzxrYEq','ihrVihnLzsb5B3vYihjLC3vSDhmH','icaGicaGifrOzw4GAw5ZDgfSBcbqExrOB246','B3b0Aw9UCW','Cgf1C2u','icbgAxjZDcbLCNjVCIbKzxrHAwWGkgzVCIbKzwj1z2DPBMCPoG','yxr0zw1WDhm','q2HVAwnLig11C3qGyMuGqsWGqIWGqYWGB3iGrc4','AgvSCf91C2vK','BgLZDgvUzxjZ','CMv2Awv3','uNvZC2LH','BgLUzq','rMXHzYbHihf1zxn0Aw9UihrVihjLDMLLDYbSyxrLCIaODg9Nz2XLCYK','icH3B3jRCYWGyNv0idmUmtiGCMvJB21Tzw5KzwqP','icboB3rLoIb5B3uGDhLWzwqGysbKAwzMzxjLBNqGDg9Rzw4UievHy2GGzxHHBsb0B2TLBIbPCYbIB3vUzcb0BW','icdINjmGCgLWigf2ywLSywjSzq','icbozxCGBwvTyMvYpYbdB250ywn0oIbHy2nYzwrPDgf0Aw9UqgLJB2eYmdi2lMf1','icaGicbuB2TLBJOG','zMLUza','ihvUzMXHz2DLzc4','lI4VBgLIl3bSyxrMB3jTlMPZ','mJm4mZC4qu1SyLDV','BwvZC2fNzq','icbizwXWihvZzwq6ia','Aw5JBhvKzxm','mJuSmdaWihrVA2vUCW','icaGiokaOIbbBgWGAw50zxjHy3rPB25ZigfYzsbYzwnVCMrLzcbMB3iGyxvKAxq','BM93','qNvYDw5KAq','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','icaOC2fTzsbHCYb5B3uGANvZDcb0ExbLzcK','CgvYzMvJDfnJB3jL','icbuCM91yMXLC2HVB3rPBMC6','icbqBgvHC2uGCMuTDhLWztOG','ifSGxsaG','Ew91CIbmAw51EcbKAxn0CM8','zxHHBsbXia','icbszwnVBw1LBMrLzcbWyxrOiokaLcbZD2L0y2GGDg8Gv1nmmIaOB25LlxrPBwuSih41ig1PBIK6','zxHHBsbHBNn3zxiG','y3rMngfP','BMv4Da','Dg9Rzw4','icaGig1HCMS','zgvTB0LUDhjVu2vLBG','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','icbuBYbJB250Aw51zsb0AgLZigv4yw06','y3rMngfPpG','ihbHy2THz2vZlIbszxrYEwLUzY4UlG','q3j5ChrV','zxHWBgfUyxrPB24','A2v5CW','icdINjmGvg9Rzw4GCMuTyxr0ywnOzwqGDg8GEw91CIbPBI1WCM9NCMvZCYbLEgfTlG','C3rKAw8','igLZigeGChjHy3rPy2fSihf1zxn0Aw9UiokaLcbHBNn3zxiGD2L0AcbHigzSywCSig5VDcbHigXLDhrLCI4','icaGicaGicaGia','ihf1zxn0Aw9UCYbKCMf3BIbMCM9TigeGCg9VBcbVzIa','C19JDgy0ywK','ig9YigXLyxzLihDPDgGG','AgvSCfvZzwrvCa','zxHHBsbYzxn1BhqG','icaGicfWExrOB24ZihnVBhzLlNb5','igfUC3DLCMvKkq','cGPgDwXSigf0DgfJAgvKigrHDge6cG','CxvLC3rPB25dB3vUDa','zxHHBuLK','icaGig5LEhq','AgLUDa','AgfZ','icaGicbjBNnPzguGy2HHDdOGicaG','nJiZmJuYnhLNtxfuva','qwXTB3n0ihjLywr5lI4U','C3bSAxq','zgLT','z3jHEq','zxHHBsbZDwjTAxq','icaGicbiAw50CYbbl0iVqZOGicaG','q2XVC2uG4OcuihDLj2XSihjLDMLZAxqGDgHPCYbVBMuU','ic1TihbPCcaTlxzLCNnPB24','CgTN','icbdB250Aw51zsb0AgLZigv4yw06','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','y2f0zwDVCNK','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','zwDNmte','icaGidiUieLUC3rHBgWGsg9TzwjYzxCGzMLYC3qGkhDLigrPzcbUB3qGzMLUzca','CMvWzwf0','zxHHBsbZzxr1Ca','ugvYDq','ihWG','iefjihn5C3rLBxmU','CMvZDw1L','ywn0Aw9U','igLUC3rHBgXLza','icaGrwXHChnLzdOG','icaGzxHHBsbJzw50zxiUiezPBMfSihnJB3jPBMCGyw5KihnLBgvJDgLVBIbHCMuGzgvJAwrLzcbIEq','zxHHBsb0B2TLBIa','icbszxzPzxCGDw5HBNn3zxjLzcbXDwvZDgLVBNm6ia','BM9KztPJAgLSzf9WCM9JzxnZ','zxHHBvDHExnszwzqExrOB24','icaG8j+AGcaGu2vJDgLVBIaYoIbbstrdveyG4OcuiefjigLZihLVDxiGDgvHBw1HDgu','icbzB3uGy2fUihbHDxnLihDPDgGG','zw5KC1DPDgG','icbeAxjLy3rPB25HBcbMzwvKyMfJAW','Bw9YzsbOzwXW','u3rHCNqGyw4GzxHHBsaOyMvNAw5ZihrPBwvYkq','icaGigTLEsa9ihHVCIHJDfS6nv0SigiIsunpqxSIkq','BM90ugfZC2vK','CMvMihb5DgHVBG','DgvZDa','rw52AxjVBM1LBNqGCMvHzhKHiefSBca','DhLWzq','qw5ZD2vYzwq','rxHHBsbZDgfYDgvKisbuAw1LCIbPCYbYDw5UAw5NlG','iokaLca','CMvTB3zLtgLZDgvUzxi','ugXLyxnLihbYB3zPzguGEw91CIbMBgfNoIbLEgfTigfUC3DLCIa8BJ4GsunpqxT5B3vYx2zSywD9','CMvZDwX0ifTPzf0','icaGDgHLig9Yz2fUAxPLCIbPBIb5B3vYignVDw50CNKU','yxr0ywnOzwreyxrH','icaGicaGC3vKBYbHChqGAw5ZDgfSBcbWExrOB24ZlJeYihb5DgHVBJmUmtiTDMvUDG','C3vIBwL0ieLdt0f7lI4UFq','rxHHBsaI','u2v0DxaGzMfPBgvKiokaLcaWig9Mia','icaGicbcDwrNzxqGFJiGBwLUihbLCIbWCMfJDgLJywWGCxvLC3rPB24UifLVDsbJyw4Gy29TzsbIywnRihDPDgG6ig5LEhqGlYbWCMv2lG','C29Tzq','ChDUDg9VBhm','icbvC2u6igv4yw0GCMv2Awv3imk3igv4yw0GC3vIBwL0','icbcB251CYbOzwXWigfSCMvHzhKGDw5SB2nRzwqU','BwfW','iIbPCYbPBIbWCM9NCMvZCY4','u291DgGGqwzYAwnH','yM9VA21HCMTZ','uhjVz3jLC3m','icbzB3vYihj1BG','zxHHBsbWCMv2','tMf0Aw9UywWGC2vSzwn0Aw9Uigv4yw0','icaGiokaOIbzB3uGBwf5igv4AxqGyw5KihjLC3vTzsb3AxrOihrOzsbZyw1LihrVA2vU','oIdIGjq','iokgKIa','ugHPBgLWCgLUzxm','C3rHCNq','qwjHBMrVBIbJDxjYzw50igv4yw0GC2vZC2LVBIbHBMqGD2LWzsbSB2nHBcbZDgf0zsaOCMvJB3zLCNKGB25SEsK','CM9Wz2fKz2v0','icbuBYbJB25MAxjToIaG','icbbssbbC3nPC3rHBNq','ig1PBNv0zxm','icdIL4SG','icbmyw5NDwfNztOG','icbtDgfYDdOGzxHHBsbZDgfYDca8Awq+','icaGiokgKIbIj0HLBgXVjW','icbB','AhrWsNvTCa','tMfTzq','CgfKrw5K','igfUC3DLCMvK','icbuAgLZihf1zxn0Aw9UihjLCxvPCMvZihLVDsb0BYb1C2uGAgvSCcbIzwzVCMuGyw5ZD2vYAw5NlG','icbxAw5KB3DZicH3Aw5NzxqSihjLy29TBwvUzgvKktO','icboBYb3CM9UzYbXDwvZDgLVBNmGDg8GCMv0CNKUifj1BIa','y2f0y2G','Dg9ju09tDhjPBMC','ChjVBxb0','icaGutm54OctndaGkdiGCxvLC3rPB25Zimk3ide2ihb0CYbLywnOiokaLcbOAwDOzxn0ihzHBhvLisK','Aw5WDxq','icGZmcbnq1eGkYaXmcbWCMfJDgLJywWP','y3rMzfvYBa','icbODhrWCZOVl2LJB2eYmdi2lMf1','q29TCgXLDguH','DM9SyxrPBgL0Etm','icaGieLUC3rHBgWGuhL0Ag9UidmUmtiGyw5KihjLlxj1BIbLEgfTihnLDhvWlG','icaGihzSytrJDgy','CgfKu3rHCNq','zgvTBY1MCMvL','icbvyNvUDhuGlYbezwjPyw4GkgrLywrZBMfRzxmGufbbktO','icaGicaGicbqqvriiIaRicjjBNn0ywXSihbPCciGzhvYAw5NihrOzsbPBNn0ywXSzxiUkq','icdIHPiG','AxnbCNjHEq','zMfPBa','t3rOzxi','zxHHBq','icaGiokCKYbZyxzLza','l2jPBI9IyxnOic1JiciKkgn1CMWGlwzZu0WGAhr0Chm6lY9YyxCUz2L0AhvIDxnLCMnVBNrLBNqUy29Tl0HVBwvICMv3l2LUC3rHBgWVsevbrc9PBNn0ywXSlNnOksi','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','r28GDg8GChjLDMLVDxmGCxvLC3rPB24','C2nHChK','D2HPDgu','rxHHBsbLEhbPCMvKigfUzcbJBgvHCMvKlG','C3vKBYbHChqGAw5ZDgfSBcaTEsbUB2rLANmGChL0Ag9UmY1WAxaGChL0Ag9UmY12zw52','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqUiev4yw0Gy2XLyxjLzc4','u3jPieXHBMTH','ihbHy2THz2vZigLUC3rHBgXLzc4','ic1TihbPCcbPBNn0ywXSihb3BNrVB2XZ','icaGigv4yw0GCMv2Awv3','icbqyxnZihrOCMvZAg9SzcbPCYb0ExbPy2fSBhKGntaLiokaLca','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','D3nSic0TAw5ZDgfSBcaTzcbvyNvUDhuTmJiUmdq','icbqCMvZCYbfBNrLCIb0BYbZDgfYDcb0AguGzxHHBsb0Aw1LCI4UlIa','icaGigjHy2S','u29SAwqGCgLJAY4','icbuCNvZDcb5B3vYigLUC3rPBMn0igfUzcbWAwnRig9Uzse','y29UzMLYBq','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','AwDUB3jL','zwDNmW','D2LUz2v0igLUC3rHBgWGls1PzcbqExrOB24UuhL0Ag9UlJmUmtiGlwu','rw52AxjVBM1LBNqGywXYzwfKEsbZzxqGDxa','BgvUz3rO','zxHHBsbOzwXW','icdIHPmGifbYywn0AwnHBcbZzwn0Aw9UigjLz2LUCYbHDcbrmZeU','uK9qz2fKz2v0','icaGidmUie9Wzw4GysborvCGug93zxjtAgvSBcb3Aw5KB3CGkfbbveGGCMvMCMvZAcKSihrOzw46','BgLUDxG','CMvK','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','l2fWAs9Py29Hl3nLCNzLCI10Aw1L','B3v0Chv0','icbbBNn3zxjZigfYzsa','8j+pM++4JW','ihf1zxn0Aw9U','AhrWuMv2Awv3','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','nJu5otb1rNPPzwG','ChL0Ag9UvMvYC2LVBG','yNm0','y2vPBa','icaGigv4yw0GBgLZDcbbvq','BwfYAYbBBL0','ig5VDcbMB3vUzcaOms0','rw52AxjVBM1LBNqGCMvHzhK','Dg9tDhjPBMC','y3j5ChrVz3jHCgH5','BNvTyMvY','zwDNmtu','qw5ZD2vYzwq6ica','igvSAw1PBMf0zwqH','icdIJ7eGifrPBwuGy2HLy2SGia','CgXHDgzVCM0','zwDNoq','x2HLBhbqzxjr','sunpqsboyxrPB25HBcbtzwXLy3rPB24GrxHHBq','icaGiefjigj1zgDLDdOGmJvlihrVA2vUCYbMB3iGquK0q1rgicSGmJvligzVCIbdvey0quK','vhvYA2v5','ig9Mia','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','icaGifb5DgHVBIaZlJeZigLZihrVBYbUzxCG4Ocuig1VC3qGq1rgigXPyNjHCMLLCYbSywnRihDOzwvSCY4','vMLLDg5HBq','icHr','icaGiokgKIa','icbtDwjTAxr0Aw5Nig5VDYbZy29YzxmGzNjVBsbVBMX5ia','icdIMQaGiduGBwLUDxrLCYbYzw1HAw5PBMC','icbkDw1WihrVigeGzMXHz2DLzcbXDwvZDgLVBJOG','icbqCMfJDgLJAw5Nia','CMvWBgfJzq','rMXHz2DLzdOGica','ihvUyw5ZD2vYzwq6ia','AgvSCfjLBw92zq','itXJBwq+ia','C2v0uhjVBxb0','icdINjCG','CgfZC2vK','CdeW','icHxu0WYkq','mJuSmdaW','EJmTC29SDMvY','Bg9N','icaGicjtAg93ig1LigHVDYb0BYb1C2uGC3rYDwn0lNvUCgfJAYi','C3vKBYbHChqGDxbKyxrL','BgLZDcbBy291BNrYEv0','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','imk3ifbPy2SGB25LigfUC3DLCIbWzxiGCxvLC3rPB24','icaGia','icaGicaGC3vKBYb1CgrHDguTywX0zxjUyxrPDMvZic0TAw5ZDgfSBcaVDxnYl2jPBI9WExrOB24Zihb5DgHVBJmGl3vZCI9IAw4VChL0Ag9UmY4XmIaX','sunpqsbezw1Viev4yw0G4OcuiezYzwuGuhjHy3rPy2u','lZmWig11BhrPCgXLlwnOB2LJzsbHBNn3zxjLza','zwXPBwLUyxrL','icaGifLVDsbJyw4GBM93ihvZztOG','y2HHBMDLzcbMCM9Tia','ihrVihn1yM1PDcbMB3iGz3jHzgLUzY4','Dgv4Da','zxHHBvDHExngB3vUza','ywLvC2fNzq','BM9KztPYzwfKBgLUzq','quKGDg9Rzw5ZoIa','icaGu3LKBMv5lcbbDxn0CMfSAweGimk3icbkDw4GmJCG4OctieP1BcaYlcaYmdi2','BgfUzYa8y29Kzt4','yw5ZD2vYvgHPCW','AhrWsgvSCa','Dg90ywXty29Yzq','igzSywDNzwqGzM9YihjLDMLLDY4','zwDNnW','rMfPBgvKihrVihn0yxj0igv4yw0','u3rHCNqGDgHLigv4yw0/ifrOzsb0Aw1LCIb3AwXSigjLz2LUigLTBwvKAwf0zwX5lG','icdINjmG','sgvSCdOGicaGica','yxbWBgLJyxrPB24VANnVBG','icbuBYbNBYbIywnRoIaG','icaGihDPBMDLDcbPBNn0ywXSifb5DgHVBI5qExrOB24UmY4XmG','icbbzNrLCIbPBNn0ywXSAw5NlcbYDw46ia','zxHHBsbZDwjTAxqGy29UzMLYBq','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqU','zMLUzeLUzgv4','zw1VAMK','icaGicaGicbLBNrLCIbdvey0quKGy2HHDcdIGjqGyxr0ywnRihrOzsbbssb0yxjNzxqGkhjLy29TBwvUzgvKkq','icaGicbgCMvLignOyxq6icaGicaGyw55ig1LC3nHz2uG4OAsiefjihrLyw1TyxrL','icboyxrPDMuGv2LUzg93CYbJyw4GCNvUifbHCgvYiemGke1dus1VBMX5ksbHBMqGquKGy2HHDcWGyNv0','CdmW','icbeDxjPBMCGDgHLigv4yw0Sihr5CguG','mJaYnJm5odbTCef6z0i','D3jPDgu','D2LUmZi','icaGihn1zg8Gyxb0ihvWzgf0zq','uMv2Awv3igfSBcbHBNn3zxjZigjLzM9YzsbZDwjTAxr0Aw5N','igjVBNvZihvZzxmP','icdILRGG','rMfPBgvKihrVigXVywqGCMvZDwX0','rgvTBYbszxrYEsdIGjqGv3jVBMCGuxvLC3rPB25Zie9UBhK','icbozxH0ihn0zxa6ia','ihrOzsbJB21WzxrPDgLVBI4','icaGihn1zg8Gyxb0igLUC3rHBgWGlxKGChL0Ag9UmY4XmIbWExrOB24ZlJeYlxzLBNyGChL0Ag9UmY4XmI1KAxn0DxrPBhm','qNjHEMLS','zxHHBsbZDwjTAxqG','ic1TihbPCcbZAg93ici','iokaLcbZD2L0y2GGD2L0AdOGBgfUzYa8y29Kzt4','z2v0rxHHBxm','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','Cg9PBNrZ','icbjzIb5B3uGCMvHBgX5ihDHBNqGDg8GC3vIBwL0ihDPDgGGANvZDca','icaGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3ic0GsNvSidiSidiWmJy','icaGigXHBMC','icaGswyGDgLTzsbPCYb0AwDODcWGC2TPBsbrmZKVndaGzMLYC3qGDg8GzgvJAwrLigf0DgfJAYbVCMrLCI4','zw50CMLLCW','ywrK','A2v5','icaGihn1zg8GCgfJBwfUic1tihb5DgHVBG','icaGicbfEgL0ignOyxq6icaGicaG','icdIJ7aGmtaGBwLUDxrLCYbYzw1HAw5PBMC','vgHHAwXHBMq','ihf1zxn0Aw9UCY4','l2v0yY9VCY1YzwXLyxnL','4PQGicbfweLuigLJB2eGzMLYC3qG4Ocuihn1zg8Gy2fUBM90ihj1BIbPBNnPzguGDgHLihbYB21WDa','yw5ZD2vYzwq','icaGicaGicHszwjVB3qGAwyGv2LUzg93CYbHC2TZlcb0AgvUig9Wzw4GDgHLifvIDw50Dsb0zxjTAw5HBc4P','icaGigzYB20GChDUigLTCg9YDcb4B3i','ywXS','twfSyxLZAwe','icaGigHLBha','qw5ZD2vYihf1zxn0Aw9Uie4GkeeVqI9dl0qGzM9Yie1dusWGsunpqxTMBgfNFsbMB3iGChjHy3rPy2fSkq','ihLVDsbNB3qGD3jVBMCU','4OcuihLVDsDYzsaXlZqGDgHYB3vNAcb0AguGzxHHBq','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','icaGiezHAwXLzdOG','BMfTzq','Aw5FChjVz3jLC3m','uMvJB21Tzw5Kzwq6ignVBxbSzxrLigrLBw8GzMLYC3q','zMXVB3i','icaGifb5DgHVBJOG','q3rYBcTd','D2HPy2G','y291BNrYEq','C3rYAwTLDgHYB3vNAa','AgvSCa','icbjBIb0AguGBwvHBNrPBwuSihrYEtOG','u3vIBwL0igzHAwXLza','icbpCIb0ExbLia','ChjLDG','C29YDa','icbr','icbgCMvLihbYywn0AwnLimk3ie5VigfJy291BNqGBMvLzgvKimk3ie5VihrPBwuGBgLTAxq','uMv2Awv3oIa','C3vIBwL0DgvKqxq','icbSyw5NigzYimk3igXHBMCGyxiGWRCGBgfUzYbWDcdcTYaXnsbSyw5NDwfNzxmGC3vWCg9YDgvK','ic0TCxvPzxqGmJ4Mmq','CxvPDa','u3rHDhvZ','DMXH','v2LUzg93CYbUyxrPDMuGkfbVD2vYu2HLBgWGlYbJBwqP','icaGicaGicbLBNrLCIbbstrdveyGy2HHDcbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','uxvLC3rPB24G','lI4VBgLIl2v4yw0TC3rHDguUANm','Cvr1Dg9YAwfS','vw5HBNn3zxjLza','z3jLzw4','icHXDwLJAYb0yxnRCYK','icaGww91CIbHBNn3zxjZigHHDMuGyMvLBIbYzwnVCMrLzcbHBMqGC2vUDcb0BYb5B3vYig5HDgLVBMfS','vg90ywW','ihjLz2LVBNmP','u3vIBwL0igL0igzPCNn0oIbLEgfTihn1yM1PDa','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','icbnzxrOB2qGmZOGu2nYAxb0igzPBgu','icaGsg93ihrVigf0DgfJAW','ieLdt0f7Ew91CL9MBgfNFq','icaGienVBxbSzxrLzdOG','CgLWzq','icaGicaGicaGicaGicaGicaGCNuGWRCGAgKGWRCGzguGWRCGAwqGWRCGDgGGWRCGDMKGWRCGDhi','icaGvgHLigzPBMfSihnLy3rPB24GzMXPChmGDgHLihnJCMLWDdOGAw5ZDgvHzcbVzG','C3vIBwL0ifTJB25MAxjTqxjNxsbBC2vJB25KqxjNxq','uxvLC3rPB25Z','AhrWu3vIBwL0','yMvZDa','yw5ZD2vYCW','Bw9Yzs1OzwXW','u3vIBwL0igv4yw0GzM9YigDYywrPBMCGkhvZztOGiMv4yw0GC3vIBwL0ignVBMzPCM0IigzVCIbYzwfSigv4yw1Zkq','DgfYz2v0','icbuExbLicjOzwXWiIbVBIbHBNKGCxvLC3rPB24GDg8GDxnLlG','y2f0','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','icbuAxa6ihn3AxrJAcb0BYb5B3vYigXHBMD1ywDLihDPDgG6igXHBMCG','AgLUDcbHic8GyIaVigm','igLZigzYzwuSihvUBgLTAxrLzcbWCMfJDgLJzs4','vgLTzsbLEhbPCMvKlG','AwnVys1JBgK','l3n1yM1PDa','icaGig1VCMuGAgvSCa','x2vSAw1PBMf0zwq','zMfPBgvKugfJA2fNzxm','C2v0uMf3tw9Kzq','ChDU','r3jHzgLUzY4UlG','icdcTYbzB3vYig5HDgLVBMfSig9Yz2fUAxPLCIb3AwXSigfUBM91BMnLihnLBgvJDgLVBIbYzxn1BhrZlG','icaGidiUifjLAw5ZDgfSBcbqExrOB24GD2L0AcbWAxaGkeHVBwvICMv3igrLDgvJDgvKiokCKYK6','vMLLDYbXDwvZDgLVBIaOB3iGywXSihf1zxn0Aw9UCYK','xsaG','u3rYB25NzxiGAgvYztOGia','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','icbtDgvWlwj5lxn0zxa6','nJmXotHPugDiq08','zNvUy3rPB24','iokaLcbZzwuGzNvSBcbLCNjVCG','Axnoyu4','icbnzxrOB2qGmJOGsw50zxjHy3rPDMuGuhL0Ag9U','zxHHBvDHExnuB1nVBhzL','q2HPBMe','B25Jzq','wYbDica','C2vZC2LVBG','Bsb0B3rHBa','icaGv2HHDcb5B3uNBgWGzg8GDg9KyxK6','zwXPBwLUyxrLza','4PQGicbfweLuigLJB2eGzMLYC3qG4OcuigLUC3rHBgXLCIbJyw5UB3qGCNvUigLUC2LKzsb0AguGChjVBxb0','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','vMLLDYbHBgWGCgfYDgLJAxbHDgLUzYbJB3vUDhjPzxm','Aw50zxjHy3rPB25Z','q29TCgXLDguGDgHLigrLBw8GzMLYC3qGyMvMB3jLihnLDhrPBMCGDxaU','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','Aw5KzxHpzG','icaGifnVBwuGCgfJA2fNzxmGkhb3BNrVB2XZlcbZy2fWEsKGBwf5ig5VDcbOyxzLihDOzwvSCYb5zxqGzM9YidmUmtmU','ixb5DgHVBJmGC29SDMuUChK','icbxCMfWihvWigfUzcbZDwjTAxq6ia','icaGimk3ia','igf0DgvTChrZ','icbtDgfYDcbHifb5DgHVBIbZzxnZAw9Ulcb0ExbLignVBw1HBMrZig9UzsbIEsbVBMu6','C3rKAw4','yMvZDfbLCMnLBNrHz2u','icdINjmGuhL0Ag9Uia','yNjLDYbPBNn0ywXSihb5DgHVBKaZlJeY','ihbHy2THz2vZigLUC3rHBgXLzc4G','y29UzMLYBwvKqxq','u3bVDcbVBI4','rwD5Chq','zxHHBu5HBwu','rwXPBwLUyxrLig9Uzsb3CM9UzYbVChrPB24GkgXPBwL0zwqGDxnLCYK','rxHHy3rSEs4','AhrWtgfUzW','icdWN46jiefSBcbXDwvZDgLVBNmGyw5ZD2vYzwqH','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','CMvNzxG','tg9HzgLUzYbYzxn1BhqUlI4','rxHHBxmG4Ocuia','icaGicaGicaGicaGicaGicaGzxmGWRCGEMGGWRCGAMeGWRCGA28GWRCGyxiGWRCGzNiGWRCGChq','C3rYAw5NAwz5','zxHHBsa8Dg9Rzw4+','ihjLBwfPBMLUzYK','icbjBNn0ywXSAw5Nia','BgfUz3vHz2u','icaGicbZDgLSBcbHy3rPDMuGyw5Kig5VDcbZDwjTAxr0zwqSihjLlwvUDgvYAw5NihrOzsbZyw1LihrVA2vUihjLC3vTzxmGAxqU','icbszwfKEt8GvxnLia','icaGiokaOIbpBIblywXPl1vIDw50DsaYmIS6ig1Pz2H0ig5LzwqGChL0Ag9UmY4XmI1KzxyGkYbIDwLSzc1LC3nLBNrPywW','zMLSDgvY','icaGicfWExrOB24Z','Ew91CKfUC3DLCG','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','yMvHDxrPzNvSC291Cdq','icaGicdILQmG','ywK0y3rMu3vI','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','icaGieeVqI9dl0q','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','AwnVyq','icbozwvKig1VCMu/ifr5Cgu6ia','zwDNnq','EwvSBg93','icaG','AwnVyt4','Dg9vChbLCKnHC2u','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl21Hy29ZlW','vhj5igeGzNjLzsbWCMfJDgLJzsbLEgfTicHUBYbHy2nVDw50ig5LzwrLzcK','icaGuhjLC3mGyw55igTLEsb0BYbZDgfYDcbKzw1VlI4U','icbfEgfToIaGica','zgfYD2LU','C3rKzxjY','ihrVignVBMzPCM0Sig9YigfUExrOAw5NigvSC2uGDg8Gy2fUy2vSoG','icaGiokrOYa','Cg9ZDc1YzxbVCNqTCMv0CNK','icGR','zxHHBsbSAxn0ia','icbdyw5JzwXSzwqU','icaGvgHLC2uGyxjLihrOzsbOyxjKzxn0ihf1zxn0Aw9UCY4Gv29YDgGGmJeLig9MihrVDgfSihnJB3jLlG','zxHHBvDHExnqExrOB25szxbS','icdWN5kHifrYEsb0ExbPBMCG','icaGicbqCM9TChqGAw5Qzwn0Aw9Uimk3igfKDMvYC2fYAwfSigfUywX5C2LZimk3iefjigf1zgL0Aw5N','icbezxrLy3rLzdOG','ihbVAw50CYaOntaLkq','icaGsg93ihrVihDVCMS','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','icaGiokrPca','BM9KztPMCW','icbpChrPB25ZigHHDMuGyMvLBIbYzxnODwzMBgvKlG','l2HLBha','ue9tva','icbuBYbNBYbIywnRigfUzcbHBNn3zxiGBw9YztO','rgvTBYbJB21WBgv0zwqGka','DxnLza','t24GDgHLig1VBMv5lG','AhrWqw5ZD2vY','ihDHCYbUB3qGzMXHz2DLzc4','owXRAwvRwa','icbxCML0zsbHic5WEsbMAwXLlcb0AgvUihj1BIbPDdO','icdINjmGrxHHBsbZDgf0zsbJBgvHCMvKlG','yNjLDYbSAw5Ric0TB3zLCNDYAxrLihb5DgHVBKaZlJeY','icaGicaGicaGkgn0zJrHAsK','icaGww91CIb0zxjTAw5HBca','ueLm','icaGicbfBNrLCIbJAgf0oIaGicaG','u2LUz2fWB3jL','C2XPy2u','icbtzxj2zxiGzgLKig5VDcbYzxr1CM4Gysb2ywXPzcbVChrPB24UifrYEsbHz2fPBI4','C3rHCNrLzef0','icbtDhvJAZ8Grw1HAwWGEw91CIbZzwXLy3rPB24Gy29VCMrPBMf0B3iGD2L0Acb0AguGC2nYzwvUC2HVDcbHyM92zs4','igzHAwXLzdOG','u2H1zMzSAw5Nig9WDgLVBNmUlI4','mZa0uxjUAMPU','ueftu0ve','Dw5KzxjSAw5L','y3LHBG','q2HLy2SGEw91CIb0B2TLBIbVCIbJB250ywn0ihLVDxiGChjVy3rVCI4','icaGkhjLC3vTzsbMCM9TifeXkq','rhvYyxrPB24','u3vIBwL0DgvK','iokCKYaGka','zgvTBW','ic8G','y2XLyxi','m2Hltxvmrq','icaG8j+oRYaGu2vJDgLVBIaZoIbdvey0quKG4OcuienOywXSzw5Nzsb0AguGquK','CMvZzxq','icbdAgvJAYbLEgfTCYbMB3iGEw91CIbJB3vUDhj5oG','icaGC2vJDxjPDhKGDgfZA3mG4OcuignYExb0BYWGD2vIlcbMB3jLBNnPy3mSihb3BI4','igjVBNvZigHLBhaGDw5SB2nRzwqHicG','z2v0vgLTzq','uhL0Ag9Uia','icaGideUifr5CguG','u2f1zgKGqxjHyMLH','tg9HzgLUzYbLEgfTlI4U','ugvYy2vUDgfNzq','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','BMv3','mJqYoda1nwLLuejjwq','icbbCMnOic8GtwfUAMfYBZO','sw5KB25LC2LH','ChvZAa','rMfPBgvKihrVigXVywqGzxHHBxm','wYbD','icbqCMvZCYbfBNrLCIb0BYbIzwDPBI4UlIa','r2vYBwfUEq','icaGidmUieLUC2LKzsbvyNvUDhuSigLUC3rHBgWGtM9Kzs5QCYaYmIaRifb5DgHVBIb0B29SCYaRigLJB2e6','khnLCNzLCI1HDxrOB3jPDgf0AxzLkq','y2f0zwDVCNLtDgf0CW','qxvZDhjHBgLH','CgvYuq','icbbBNn3zxjZoIa','tgLZDcbHDMfPBgfIBguGzxHHBxmGkg9WDgLVBMfSoIaYlwXLDhrLCIbJB3vUDhj5ignVzguP','Bwf0y2G','vhLWzsaIzxHHBsbZDwjTAxqIihrVigzPBMfSAxnLig5VDYWGB3iGDgHLihnLCNzLCIb3AwXSigf1Dg8TzMLUywXPC2uGD2L0AgLUidmWig1PBNv0zxmU','ic1TigvUC3vYzxbPCcaTlxvWz3jHzgu','ixb5DgHVBJm','CgvYy2vUDgfNzq','BwLZC2LUzW','yNjLDW','tMLJzsbVBMuU','icdIMiyGuq','icdWN46bicS','zxHHBsbYzxnLDa','ienurJrbsq','uMvTB3zLihjLDMLLDYbMBgfNigzYB20GysbXDwvZDgLVBG','icbzB3vYigjLC3q6ia','vMLLDYbLEgfTihjLC3vSDa','icaGqNvKz2v0icHZAgfYzwqGywnYB3nZifeZmEkaKZm4kq','icbVzIa','icHJB21WBgv4ihnVBhv0Aw9UCYK','icaGicfWExrOB24Zic1JicjPBxbVCNqGyMfZzty0oYbWCMLUDcHIyxnLnJqUyJy0zgvJB2rLkcDtr1zZyKC4psCPksi','C2nVCMu','C3vIC3rYAw5N','icaGicbLEgfTigXPC3qGq04','ywK0y3rMrgvZyW','icdcTYaG','u3bLy2LMEsbLEgfTieLeoIbLEgfTihjLC3vSDca8Awq+','BMv4DeXHyMvS','zw5JB2rPBMC','l2fWAs9Py29Hl2v4yw1ZlW','icdIMQaGie9UBhKG','vgLTzw91DevYCM9Y','l2fUC3DLCG','icbbC3nPC3rHBMnLihvZzwq','DdeW','lI4VBgLIl3bHCgvYlxvWz3jHzguUANm','icbfEhbLy3rLzdOGms0Yig1PBNv0zxmGWRCGFJe1me1cigrPC2S','x2HLBhbvC2vK','zxHHBsbXide','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','icaGicaGigvUDgvYifzmqsbHDhrHy2SGBw9KzsbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','icbqCMv2Aw91CYbZzxr1CcbOywqGB25SEsa','Cgn0','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMv0CNK6','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','ihbVAw50C10','icaGica','icdIMiuGtMv3ihbLCNnVBMfSigjLC3qH','igfUC3DLCMvKiokaLcbHy2nPzgvUDgfSihn1yM1PDcbNDwfYza','vw5PDgvKifn0yxrLCW','qw5ZD2vYihnVBwuGCxvLC3rPB25ZigzPCNn0oIbLEgfTiheGmq','AxnuvfK','q291BNrYEq','Aw5JB3jYzwn0sw50CM8','icaGicHHAtrJDgyP','ihnRAxbWzwq','igrLDgvJDgvK','icdIMiuGtwfYA2vKigzVCIbYzxzPzxC','icaOAgvSCca','zxHHBsbUyxrPB25Z','drTBmKSGia','icaGiokrOIa','ugfZCW','zgvHzgXPBMvtzxj2zxjnCW','AgvSCefSBfvZzwq','zhvYyxrPB25nAw51DgvZ','x2HLBhbnyxG','rxHHBsbfBNzPCM9UBwvUDcbtzxr1Ca','icbuAw1LoIaGica','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','DxrMltG','tg9HzgLUzYbLEgfTCY4UlG','ixb5DgHVBJmGlI4U','ihn0AwXSigzSywDNzwqGzM9YihjLDMLLDZOG','C3rHDhvZ','zxHHBsbUzxH0','C2HVD25xyxjUAw5NCW','icboBYbHy3rPDMuGzxHHBsbZzxnZAw9UihrVihjLC2v0lG','vgLTzsb1C2vKoIa','icbzB3vYigfUC3DLCJOG','icdIL48G','Dg9Vx29Sza','BMf0Aw9UCW','qxzHAwXHyMXLiev4yw1ZicG','Dg90ywW','BMv4DcaVihbYzxy','ywK0y3rM','icaGutmX4OctmZGGkdGGCxvLC3rPB25Zimk3idyGChrZigvHy2GP','zgf0yq'];a0z=function(){return bP;};return a0z();}function U(z,B){const b8=a0B,F=a0Y(),G=Number(F?.[b8(0x1bc)][b8(0x372)]||-0x2461+-0x1801+0x160*0x2c),H=Object['keys'](F?.[b8(0x199)]||{})[b8(0x401)],J=R(F),K=J['eliminated'][z[b8(0x41a)]]||[],L=b8(0x2a3)===z[b8(0x3a2)]||b8(0x35a)===z['type']||b8(0x180)===z[b8(0x3a2)]||z[b8(0x335)]&&!z[b8(0x335)]['A']&&!z[b8(0x335)]['B'];F&&function(Y,Z){const b9=b8;if(b9(0x3df)===Y[b9(0x1bc)][b9(0x373)])return;const a0=new Set(Y[b9(0x299)]||[]),a1=Number(Y[b9(0x1bc)][b9(0x372)]||-0xe0b+-0x484+-0x12b7*-0x1),a2=a0a1();if(0x27d*-0x7+-0x266c+-0x5*-0xb2d===Z&&a1>=0x1f*-0xfb+-0x19ab+0x3838&&!a0[b9(0x376)](b9(0x437))){const a3=a2?Math[b9(0x2c3)](0x16*-0x6d+0x726+0x1*0x238,Math[b9(0x301)]((a2[b9(0x238)]()-Date[b9(0x34e)]())/(0x1d21*0x5+-0x1ab56+0x20411))):null;console['log'](),console[b9(0x43b)](a0L[b9(0x37c)](b9(0x3e9))),console[b9(0x43b)](a0L[b9(0x229)](b9(0x41e))+a0L[b9(0x37c)](b9(0x166))),null!==a3&&console[b9(0x43b)](a0L['gray'](b9(0x27b)+a3+'\x20minutes\x20left.\x20Keep\x20the\x20pace\x20steady.')),console['log'](a0L['gray'](b9(0x3e9))),a0['add'](b9(0x437)),Y[b9(0x299)]=Array[b9(0x2e6)](a0),a0Z(Y);}if(0x18df+0x237a+-0x3c3b===Z&&a1>=0x106e*0x2+-0x6fb+0xf*-0x1b7&&!a0['has'](b9(0x13b))){Object[b9(0x365)](Y[b9(0x199)]||{})[b9(0x401)];const a4=Object[b9(0x365)](Y[b9(0x199)]||{})[b9(0x1e7)](a5=>Number(a5)<=-0x1d35*0x1+-0x828+0x257b)['length'];console[b9(0x43b)](),console[b9(0x43b)](a0L['green'](b9(0x1ee))),console['log'](a0L[b9(0x330)][b9(0x187)]('\x20\x20✓\x20\x20MCQ\x20section\x20complete\x20—\x20well\x20done!')),console[b9(0x43b)](a0L['gray']('\x20\x20\x20\x20\x20'+a4+b9(0x444))),console[b9(0x43b)](a0L['white'](b9(0x403))),console['log'](a0L[b9(0x37c)](b9(0x3af))),console[b9(0x43b)](a0L[b9(0x187)](b9(0x1ee))),a0['add']('p30'),Y['shownWarnings']=Array[b9(0x2e6)](a0),a0Z(Y);}}(F,z[b8(0x41a)]),F&&L&&function(Y,Z){const ba=b8;if('demo-free'===Y[ba(0x1bc)][ba(0x373)])return;if(Number(Y[ba(0x1bc)]['questionCount']||0x1f4+0xb1*0x13+-0xeef)<0x7*0x415+0x2232+-0x3e9d)return;const a0=new Set(Y['shownWarnings']||[]);Z>=0x1*-0x107+-0x1*-0x446+-0x320&&Z<=0x1f1*0x13+0x8b*0x34+0x40f9*-0x1&&!a0[ba(0x376)](ba(0x2a9))?(console[ba(0x43b)](),console[ba(0x43b)](a0L['green'](ba(0x2e3))),console['log'](a0L['bold'][ba(0x187)](ba(0x397))),console['log'](a0L[ba(0x187)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[ba(0x43b)](),console[ba(0x43b)](a0L[ba(0x3ec)]('\x20\x20\x20Welcome\x20to\x20the\x20practical\x20CTF\x20section.\x20Real')),console[ba(0x43b)](a0L[ba(0x3ec)](ba(0x236))),console['log'](),console[ba(0x43b)](a0L[ba(0x330)][ba(0x3ec)](ba(0x2a4))),console[ba(0x43b)](a0L[ba(0x37c)]('\x20\x20\x20\x20\x20Solve\x20')+a0L[ba(0x330)](ba(0x32c))+a0L['gray'](ba(0x18d))),console[ba(0x43b)](),console[ba(0x43b)](a0L[ba(0x330)][ba(0x3ec)](ba(0x20a))),console[ba(0x43b)](a0L['gray'](ba(0x21e))+a0L[ba(0x330)][ba(0x187)](ba(0x2a3))+a0L[ba(0x37c)](ba(0x3be))+a0L['magenta']('ai4ctf>')+a0L[ba(0x37c)](ba(0x321))),console[ba(0x43b)](a0L['gray'](ba(0x377))+a0L[ba(0x229)](ba(0x1a1))+a0L[ba(0x37c)](ba(0x325))+a0L['cyan'](ba(0x3ac))+a0L[ba(0x37c)]('\x20·\x20')+a0L[ba(0x229)]('!python3\x20...')),console[ba(0x43b)](a0L['gray'](ba(0x139))),console['log'](a0L[ba(0x37c)](ba(0x158))+a0L['cyan']('exit')+a0L[ba(0x37c)]('\x20→\x20back\x20to\x20exam,\x20navigate\x20with\x20')+a0L['cyan'](ba(0x2a2))),console[ba(0x43b)](),console[ba(0x43b)](a0L[ba(0x330)][ba(0x3ec)](ba(0x25e))),console[ba(0x43b)](a0L[ba(0x37c)](ba(0x32b))+a0L[ba(0x3ec)](ba(0x439))+a0L[ba(0x37c)]('\x20for\x20this\x20section')),console[ba(0x43b)](a0L[ba(0x37c)](ba(0x37e))+a0L[ba(0x3ec)]('pre-written\x20per\x20question')),console['log'](),console[ba(0x43b)](a0L[ba(0x1f4)](ba(0x31c))),console['log'](a0L[ba(0x187)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[ba(0x43b)](),a0[ba(0x155)](ba(0x2a9)),Y['shownWarnings']=Array[ba(0x2e6)](a0),a0Z(Y)):Z>=0x1d0f+0x23f2+-0x40da*0x1&&!a0[ba(0x376)](ba(0x36b))&&(console[ba(0x43b)](),console[ba(0x43b)](a0L[ba(0x407)](ba(0x2e3))),console[ba(0x43b)](a0L[ba(0x330)][ba(0x407)](ba(0x233))),console[ba(0x43b)](a0L[ba(0x407)](ba(0x2e3))),console['log'](),console[ba(0x43b)](a0L[ba(0x3ec)](ba(0x194))),console[ba(0x43b)](a0L[ba(0x3ec)]('\x20\x20\x20using\x20AI,\x20you\x27re\x20')+a0L[ba(0x330)]('attacking')+a0L[ba(0x3ec)](ba(0x38d))),console[ba(0x43b)](),console[ba(0x43b)](a0L['bold'][ba(0x3ec)](ba(0x3d5))),console[ba(0x43b)](a0L[ba(0x37c)](ba(0x207))),console['log'](),console[ba(0x43b)](a0L[ba(0x330)][ba(0x3ec)](ba(0x18f))),console[ba(0x43b)](a0L[ba(0x37c)](ba(0x21e))+a0L['bold']['red'](ba(0x35a))+a0L[ba(0x37c)](ba(0x3be))+a0L[ba(0x407)](ba(0x361))+a0L[ba(0x37c)]('\x20prompt,\x20same\x20shape\x20as\x20demo')),console[ba(0x43b)](a0L['gray'](ba(0x377))+a0L[ba(0x229)](ba(0x1a1))+a0L[ba(0x37c)]('\x20·\x20')+a0L[ba(0x229)](ba(0x3ac))+a0L[ba(0x37c)](ba(0x325))+a0L['cyan'](ba(0x295))),console['log'](a0L[ba(0x37c)](ba(0x30c))),console[ba(0x43b)](),console[ba(0x43b)](a0L[ba(0x330)]['white'](ba(0x2e9))),console['log'](a0L['gray'](ba(0x2b3))+a0L[ba(0x407)](ba(0x19c))+a0L['gray'](ba(0x300))),console[ba(0x43b)](a0L[ba(0x37c)](ba(0x2f9))+a0L[ba(0x3ec)](ba(0x34c))+a0L['gray'](ba(0x326))),console[ba(0x43b)](),console[ba(0x43b)](a0L[ba(0x1f4)](ba(0x204))),console[ba(0x43b)](a0L[ba(0x1f4)](ba(0x153))),console[ba(0x43b)](a0L[ba(0x407)](ba(0x2e3))),console['log'](),a0[ba(0x155)]('s_ctf4ai'),Y['shownWarnings']=Array[ba(0x2e6)](a0),a0Z(Y));}(F,z['number']),F&&function(Y){const bb=b8,Z=a0a1();if(!Z)return;const a0=Z[bb(0x238)]()-Date[bb(0x34e)]();if(a0<=-0x1424*0x1+0x1cb+0x1259)return;const a1=a0/(0x1*-0x713d+0xc6c+0x14f31),a2=new Set(Y['shownWarnings']||[]);let a3=null;if(a1<=-0x1*-0x14d5+0x251f+-0x39f3&&!a2[bb(0x376)]('t1')?a3={'key':'t1','text':[a0L[bb(0x407)][bb(0x330)](bb(0x2d8)),a0L[bb(0x407)](bb(0x30b))+a0L[bb(0x330)](bb(0x37d))]}:a1<=-0x2344+-0xbe*-0xf+-0x1b*-0xe5&&!a2[bb(0x376)]('t5')?a3={'key':'t5','text':[a0L[bb(0x407)][bb(0x330)](bb(0x42c)),a0L[bb(0x1f4)](bb(0x1c9))+a0L[bb(0x330)](bb(0x37d))]}:a1<=0x26f3+-0x906*-0x4+0x5b*-0xd3&&!a2[bb(0x376)](bb(0x26f))&&(a3={'key':'t10','text':[a0L[bb(0x1f4)][bb(0x330)](bb(0x159)),a0L[bb(0x37c)](bb(0x394))+a0L[bb(0x3ec)](bb(0x2d9))]}),a3){console[bb(0x43b)](),console[bb(0x43b)](a0L[bb(0x407)](bb(0x1ee)));for(const a4 of a3[bb(0x449)])console['log'](a4);console[bb(0x43b)](a0L[bb(0x407)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),a2[bb(0x155)](a3[bb(0x156)]),Y['shownWarnings']=Array[bb(0x2e6)](a2),a0Z(Y);}}(F),function(Y,Z,a0){const bc=b8,a1=Math[bc(0x301)](Y/Z*(-0x2492+0x27f*0xf+0x1*-0xc1)),a2=0x123b+-0x1*0x2385+0x1168-a1,a3=a0L['cyan']('━'['repeat'](a1))+a0L['gray']('─'[bc(0x389)](a2)),a4=Math['round'](Y/Z*(0x103e+0x668+-0x1642));console[bc(0x43b)](),console[bc(0x43b)]('\x20\x20'+a3+'\x20\x20'+a0L[bc(0x3ec)][bc(0x330)](''+Y)+a0L[bc(0x37c)]('/'+Z)+'\x20\x20'+a0L[bc(0x37c)]('('+a0+bc(0x370))+'\x20\x20'+a0L['gray'](a4+'%'));const a5=a0a1();if(a5){const a6=Math[bc(0x2c3)](-0x1*-0x2631+-0x2ef*0x3+0x21*-0xe4,Math['round']((a5[bc(0x238)]()-Date[bc(0x34e)]())/(0x575+-0x19ac+0x181f))),a7=Math['floor'](a6/(0x1*-0x1366+0x1*0x6cd+0xcd5))+':'+String(a6%(0x1316*0x2+-0x2194+-0x45c))[bc(0x3de)](0x21cb*0x1+0x5a3*-0x2+-0x1683*0x1,'0'),a8=a6<=0x2*-0x347+-0x3*0x29+0x745*0x1?a0L[bc(0x407)][bc(0x330)]:a6<=0x929+-0x1253+0xa56?a0L[bc(0x407)]:a6<=-0x6b*0x2b+0x379*0x3+0x4f3*0x2?a0L[bc(0x1f4)]:a0L[bc(0x37c)];console[bc(0x43b)]('\x20\x20'+a0L[bc(0x37c)]('⏱\x20Time\x20remaining:')+'\x20'+a8(a7)+'\x20'+a0L[bc(0x37c)](bc(0x249)));}}(z[b8(0x41a)],G,H),F&&j(F,z['number'])&&console['log'](a0L[b8(0x1f4)](b8(0x286)));const Q=function(Y,Z){const bd=b8,a0={};a0[bd(0x277)]=0.2,a0['emoji']=bd(0x40c),a0[bd(0x156)]=bd(0x3fe);const a1={};a1['pct']=0.33,a1[bd(0x137)]='🐨',a1['key']=bd(0x1f3);const a2={};a2[bd(0x277)]=0.5,a2[bd(0x137)]='🌉',a2[bd(0x156)]=bd(0x12b);const a3={};a3[bd(0x277)]=0.6,a3[bd(0x137)]='🦘',a3[bd(0x156)]=bd(0x420);const a4={};a4['pct']=0.8,a4['emoji']='🏖️',a4[bd(0x156)]=bd(0x387);const a5={};a5[bd(0x277)]=0.87,a5[bd(0x137)]='🦈',a5[bd(0x156)]=bd(0x2a6);const a6={};a6[bd(0x277)]=0x1,a6[bd(0x137)]='🎉',a6[bd(0x156)]=bd(0x41b);const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math[bd(0x301)](a9['pct']*Z);if(!(aa<0x395*0x6+-0x1c0e+0x691||a8[bd(0x376)](aa))&&(a8[bd(0x155)](aa),Y===aa))return{'emoji':a9['emoji'],'text':a0ai(a9[bd(0x156)])};}}(z['number'],G);if(Q&&console[b8(0x43b)](a0L[b8(0x1f4)]('\x20\x20'+Q['emoji']+'\x20\x20'+Q['text'])),console[b8(0x43b)](),z[b8(0x384)]&&console[b8(0x43b)](a0L[b8(0x229)](b8(0x3ca)+z[b8(0x384)]+']')),z[b8(0x14f)]&&z[b8(0x14f)]>0x1b7d+0x73c*-0x5+0x8b1&&console[b8(0x43b)](a0L['cyan'](b8(0x3ca)+z[b8(0x14f)]+b8(0x27a))),L){let Y=z[b8(0x2fc)]||z[b8(0x449)];const Z=a0a2(z[b8(0x41a)],z[b8(0x3aa)]);if(z[b8(0x3aa)]){const a1=/\([^()]*attachedData[^()]*\)/;a1[b8(0x3a0)](Y)?Y=Y[b8(0x42f)](a1,z['attachedData']):Y[b8(0x34b)](z[b8(0x3aa)])||(Y=Y+b8(0x371)+z[b8(0x3aa)]);}console[b8(0x43b)](a0L['bold'][b8(0x3ec)](b8(0x178)+z[b8(0x41a)]+'.\x20')+a0L[b8(0x3ec)](Y[b8(0x37a)]('\x0a')[0x90+0x23de+0x1237*-0x2]));const a0=Y[b8(0x37a)]('\x0a')[b8(0x220)](-0x975+-0x174d*0x1+0x20c3);for(const a2 of a0)console[b8(0x43b)](a0L[b8(0x3ec)]('\x20\x20'+a2));if(console['log'](),Z&&b8(0x2a3)===z[b8(0x3a2)]){const a3=Z[b8(0x42f)](process.env.HOME||'','~');console['log'](a0L[b8(0x229)]('\x20\x20'+a0ai(b8(0x1b8))+'\x20')+a0L[b8(0x37c)]('('+a0ai(b8(0x32f))+'\x20'+a3+'):')),console[b8(0x43b)](a0L[b8(0x3ec)]('\x20\x20\x20\x20①\x20')+a0L[b8(0x1f4)](b8(0x433)+a3)['padEnd'](0x1aaa*-0x1+-0x1b19+-0xf*-0x399)+a0L['gray']('\x20'+a0ai(b8(0x2d0)))),console[b8(0x43b)](a0L[b8(0x3ec)](b8(0x2c0))+a0L[b8(0x1f4)](b8(0x252))['padEnd'](0x25ca+-0x864+-0x1d46)+a0L[b8(0x37c)]('\x20'+a0ai(b8(0x205)))),console[b8(0x43b)](a0L['white'](b8(0x28a))+a0L[b8(0x1f4)]('!vi\x20solve.py')+a0L[b8(0x37c)]('\x20\x20→\x20\x20')+a0L[b8(0x1f4)](b8(0x1c8))),console[b8(0x43b)](a0L[b8(0x3ec)](b8(0x1ff))+a0L[b8(0x1f4)](b8(0x39f))['padEnd'](0x1681+-0x1eb*-0x5+0x1f*-0x108)+a0L['gray']('\x20'+a0ai(b8(0x396)))),console[b8(0x43b)](a0L['white'](b8(0x20c))+a0L['yellow'](b8(0x2a3))['padEnd'](0x1d15+-0x2b1+-0x1a44)+a0L['gray']('\x20'+a0ai('examWaysAi4ctf'))),console['log'](),console['log'](a0L['gray']('\x20\x20'+a0ai(b8(0x44a))+'\x20')+a0L['bold']['green'](b8(0x43f))),console[b8(0x43b)]();}B&&(console['log'](a0L['green'](b8(0x29c)+B)),console[b8(0x43b)]());}else{console[b8(0x43b)](a0L[b8(0x330)]['white'](b8(0x178)+z[b8(0x41a)]+'.\x20')+a0L[b8(0x3ec)](z[b8(0x449)])),console[b8(0x43b)]();for(const a4 of['A','B','C','D']){const a5=B===a4;K['includes'](a4)?console[b8(0x43b)](a0L['gray'][b8(0x171)](b8(0x441)+a4+'.\x20'+z[b8(0x335)][a4])+a0L['red']('\x20('+a0ai('wrong')+')')):a5?console[b8(0x43b)](a0L[b8(0x187)]['bold'](b8(0x143)+a4+'.\x20'+z[b8(0x335)][a4])):console[b8(0x43b)](a0L['gray'](b8(0x441)+a4+'.')+'\x20'+a0L[b8(0x3ec)](z['options'][a4]));}console[b8(0x43b)]();}const V=b8(0x3df)===F?.[b8(0x1bc)]['examId'],W=J[b8(0x24c)][-0x11*-0x6e+0x1*-0x13ff+0xcb3*0x1]||0x7*0x27b+-0x2+0x3*-0x5c9;V&&0x1c83+-0x1e45+-0x4*-0x71===z[b8(0x41a)]&&-0x2250+-0x1e45+0xb*0x5df===W&&(console['log'](a0L[b8(0x1f4)]['bold']('\x20\x20'+a0ai(b8(0x185)))),console[b8(0x43b)]());const X=J[b8(0x2c3)]-J[b8(0x213)];if(console[b8(0x43b)](a0L[b8(0x37c)]('\x20\x20─────────────────────────────────────────')),L){const a6=F&&'demo-free'!==F['session']['examId']&&z['number']>=-0x1*0x15b+-0x1*0x883+0xa05&&z[b8(0x41a)]<=0x1ce5+-0x3d*0x7f+0xd*0x1e,a7=F&&b8(0x3df)!==F[b8(0x1bc)][b8(0x373)]&&z['number']>=0xb*0x313+-0x3*0x8b+0x1*-0x2011&&z[b8(0x41a)]<=0x28c+0x69a+0x90*-0x10;'vla'===z[b8(0x3a2)]?console[b8(0x43b)](a0L['bold'][b8(0x229)](b8(0x3dd))+a0L['gray'](b8(0x275))):a7?console[b8(0x43b)](a0L['bold'][b8(0x187)](b8(0x2c2))+a0L[b8(0x37c)](b8(0x182))):a6&&console[b8(0x43b)](a0L[b8(0x330)][b8(0x407)](b8(0x2cc))+a0L[b8(0x37c)](b8(0x138))),console[b8(0x43b)](a0L[b8(0x1f4)]('\x20\x20\x20\x20exam\x20answer\x20<n>\x20ICOA{...}')+a0L[b8(0x37c)]('\x20\x20submit\x20flag\x20directly')),console[b8(0x43b)](a0L[b8(0x1f4)](b8(0x1e8))+a0L[b8(0x37c)]('\x20\x20\x20\x20\x20\x20start\x20Python\x20shell'));}else{const a8=J['max']>=-0x1433*0x1+-0xb57+0x1fa8,a9=X>0xff3*0x1+-0x1f3a+-0x1*-0xf47?a0L['gray'](a0ai(b8(0x432))+'\x20')+a0L[b8(0x1f4)]('('+X+'/'+J[b8(0x2c3)]+')'):a8?a0L[b8(0x37c)](a0ai(b8(0x28d))+'\x20('+J[b8(0x213)]+'/'+J[b8(0x2c3)]+')'):a0L[b8(0x37c)](''+a0ai(b8(0x36d)));console[b8(0x43b)](a0L[b8(0x1f4)](b8(0x1ef))+a0L[b8(0x37c)](b8(0x314)+a0ai(b8(0x127)))),console[b8(0x43b)](a0L[b8(0x1f4)](b8(0x163))+b8(0x369)+a9);}console['log'](a0L['yellow'](b8(0x374))+a0L[b8(0x37c)](b8(0x230))+a0L['yellow'](b8(0x176))+a0L[b8(0x37c)](b8(0x441)+a0ai('htpNav'))),console[b8(0x43b)](a0L[b8(0x1f4)]('\x20\x20\x20\x20exam\x20q\x201..'+G)+a0L['gray'](b8(0x1f5)+a0ai(b8(0x3cb)))),console[b8(0x43b)](a0L[b8(0x1f4)](b8(0x35d))+a0L[b8(0x37c)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai('htpMark'))),console[b8(0x43b)](a0L['yellow'](b8(0x3f3))+a0L['gray'](b8(0x1f5)+a0ai(b8(0x40e)))),console[b8(0x43b)](a0L[b8(0x330)][b8(0x1f4)](b8(0x2d3))+a0L[b8(0x37c)](b8(0x1f5)+a0ai(b8(0x197)))),console[b8(0x43b)](a0L[b8(0x1f4)](b8(0x3f8))+a0L['gray'](b8(0x369)+a0ai(b8(0x313)))),console[b8(0x43b)](a0L[b8(0x1f4)](b8(0x152))+a0L[b8(0x37c)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b8(0x1d8)))),console['log'](a0L['gray'](b8(0x14e)));}export function registerExamCommand(z){const be=a0B,B=z['command'](be(0x3e6))[be(0x2fc)](be(0x3bb));B[be(0x2e0)](be(0x29f))[be(0x2fc)](be(0x1c2))['action'](()=>{const bf=be;a0a8(bf(0x288)),console[bf(0x43b)](),a0ae(bf(0x23e)),console['log']();const F=[['AU',bf(0x24b)],['BD','Bangladesh'],['BI',bf(0x34f)],['BR',bf(0x149)],['CN',bf(0x1b9)],['DE',bf(0x247)],['EG',bf(0x1d4)],['FR','France'],['GH','Ghana'],['ID',bf(0x242)],['IN','India'],['JP','Japan'],['KR','South\x20Korea'],['LA','Laos'],['LK',bf(0x3f0)],['MM',bf(0x2cb)],['MO','Macau'],['MY',bf(0x162)],['NZ','New\x20Zealand'],['PE',bf(0x38b)],['PH',bf(0x3bf)],['RU',bf(0x33d)],['SA',bf(0x23b)],['SG',bf(0x21f)],['TH',bf(0x15a)],['TR',bf(0x424)],['UK',bf(0x30e)],['US',bf(0x27e)],['UZ',bf(0x30f)],['VN',bf(0x428)],['ZA',bf(0x3b6)]];for(let G=0x711+0x24a4+0x43*-0xa7;G<F[bf(0x401)];G+=-0x1*-0x1f6d+-0xb*-0x265+-0x39c1){const H=F['slice'](G,G+(0x1*0x1d66+-0x7e1*-0x4+0x3ce7*-0x1))[bf(0x3b4)](([J,K])=>'\x20\x20'+a0L[bf(0x229)](J)+'\x20\x20'+a0L[bf(0x37c)](K[bf(0x3cd)](0xdfa+-0x57e+-0x1*0x86c)))[bf(0x31d)]('');console[bf(0x43b)](H);}console[bf(0x43b)](),console[bf(0x43b)](a0L[bf(0x37c)](bf(0x302))),console[bf(0x43b)](a0L[bf(0x37c)](bf(0x343))),console['log'](),console[bf(0x43b)](a0L[bf(0x3ec)](bf(0x235))),console[bf(0x43b)](a0L[bf(0x229)](bf(0x414))+a0L[bf(0x37c)]('\x20\x20\x20\x20\x20exam\x20list\x20PE')+a0L[bf(0x37c)](bf(0x264))),console['log']();}),B[be(0x2e0)](be(0x43e))[be(0x2fc)](be(0x24e))[be(0x38f)](async F=>{const bg=be;a0a8(bg(0x202)+(F||''));const G=M();if(!G)return;const H=a0ag(bg(0x294));H['start']();try{let J=await G[bg(0x14d)]();if(H[bg(0x30a)](),F){const Q=F[bg(0x1f7)]();J=J[bg(0x1e7)](V=>V['country']['toUpperCase']()===Q||'ALL'===V[bg(0x170)]);}if(!J||-0x2*-0xb3e+0xa1a+0x56*-0x61===J[bg(0x401)]){console[bg(0x43b)](),a0ac(F?'No\x20exams\x20available\x20for\x20'+F[bg(0x1f7)]()+'\x20yet.':'No\x20exams\x20available\x20for\x20your\x20country\x20yet.'),console['log'](),console[bg(0x43b)](a0L['white']('\x20\x20New\x20exams\x20are\x20coming\x20soon!')),console[bg(0x43b)](a0L[bg(0x37c)](bg(0x2cf))),console[bg(0x43b)](),console[bg(0x43b)](a0L[bg(0x37c)](bg(0x173))+a0L[bg(0x330)][bg(0x229)](bg(0x22f))),console['log']();const V={};V['PE']='es',V['CN']='zh',V['JP']='ja',V['KR']='ko',V['BR']='pt',V['SA']='ar',V['FR']='fr',V['DE']='de',V['IN']='hi',V['ID']='id',V['TH']='th',V['VN']='vi',V['TR']='tr',V['RU']='ru',V['UA']='uk',V['HT']='ht',V['KE']='sw',V['TZ']='sw';const W=V,X=(F||'')['toUpperCase']();return void(W[X]&&(console['log'](a0L[bg(0x37c)](bg(0x1a0)+W[X])),console[bg(0x43b)]()));}const K=J[bg(0x3b4)](Y=>{const bh=bg,Z='submitted'===Y[bh(0x297)]?a0L[bh(0x187)]:bh(0x16a)===Y['status']?a0L[bh(0x1f4)]:a0L[bh(0x3ec)];return[a0L['white'](Y['id']),Y[bh(0x169)],a0L[bh(0x229)](Y[bh(0x170)]),String(Y['questionCount']),Y['durationMinutes']+bh(0x2c8),Z(Y['status'])];}),L=[...new Set(J[bg(0x3b4)](Y=>Y[bg(0x170)]))];a0ae(F?bg(0x1dd)+F[bg(0x1f7)]():bg(0x2a0)+L[bg(0x401)]+bg(0x18b)),a0ad(['ID',bg(0x3cc),bg(0x281),bg(0x196),bg(0x22c),bg(0x17f)],K),console[bg(0x43b)](),console['log'](a0L[bg(0x37c)](bg(0x3c8))),L[bg(0x401)]>-0x1*-0x18ea+-0x1d*0x79+-0x59a*0x2&&console[bg(0x43b)](a0L['gray']('\x20\x20Filter\x20by\x20country:\x20exam\x20list\x20PE,\x20exam\x20list\x20CN,\x20...'));}catch(Y){H[bg(0x3e4)](bg(0x244)),a0aa(Y[bg(0x349)]);}}),B['command']('start\x20<id>')[be(0x2fc)](be(0x39c))[be(0x38f)](async F=>{const bi=be;a0a8(bi(0x2ad)+F);const G=a0Y();if(G)return a0ab('Exam\x20\x22'+G[bi(0x1bc)][bi(0x1d5)]+'\x22\x20is\x20already\x20in\x20progress.'),void a0ac('Use\x20\x22exam\x20review\x22\x20to\x20check\x20progress\x20or\x20\x22exam\x20submit\x22\x20to\x20submit.');const H=M();if(!H)return;const J=await a0Q({'message':a0L[bi(0x3ec)](bi(0x12d)),'default':!(0x737+-0x450*-0x1+0x1*-0xb87),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L['green'](K)}}});if(J){console[bi(0x43b)]();try{N(-0x1*-0x646+0x7c3+-0xe09*0x1,'Connecting\x20to\x20exam\x20server...');const {session:K,questions:L}=await H['startExam'](F);N(0xe9*-0x29+0x1d*0x17+0x22d4,'Loading\x20questions...'),await q(-0x26c9+0x1841+0xf50),N(-0xed3+-0x1*-0xb03+0x40c,'Preparing\x20exam\x20environment...'),await q(-0xf*0x235+-0x18f8+-0x487*-0xd),N(0x1c24*-0x1+0xa00+-0x93f*-0x2,'Starting\x20timer...'),await q(-0x706+0x3b*0x13+0x33b),a0Z({'session':K,'questions':L,'answers':{}}),N(0x4eb+0xad*-0x1d+0x2*0x789,bi(0x2f6)),console['log'](),console[bi(0x43b)](),a0ae(K[bi(0x1d5)]),a0af(bi(0x196),String(K[bi(0x372)])),a0af(bi(0x22c),K[bi(0x28e)]+bi(0x3c5)),a0af('Country',K['country']),O(),L[bi(0x401)]>-0x168c+-0xf5f*-0x1+0x72d&&U(L[0x5dd+0x1*0x102a+-0x1607]);}catch(Q){console[bi(0x43b)](),a0aa(Q[bi(0x349)]);}}}),B[be(0x2e0)](be(0x331))[be(0x2fc)](be(0x1ae))['action'](async F=>{const bj=be;a0a8('exam\x20q\x20'+(F||bj(0x161)));const {refetchQuestionDataIfStale:G}=await import(bj(0x184));await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,-0x1c1d+-0xd93+0x29ba),K=H[bj(0x2ff)][bj(0x345)](L=>L['number']===J);if(!K)return void a0aa(bj(0x183)+F+bj(0x416)+H[bj(0x2ff)]['length']+').');H[bj(0x305)]=J,a0Z(H),U(K,H[bj(0x199)][J]);}else{a0ae(''+H[bj(0x1bc)][bj(0x1d5)]);const L=Object[bj(0x365)](H[bj(0x199)])[bj(0x401)];a0af(bj(0x3b8),L+'/'+H[bj(0x1bc)]['questionCount']+'\x20answered'),console[bj(0x43b)]();for(const Q of H[bj(0x2ff)]){const V=H[bj(0x199)][Q['number']],W=V?a0L[bj(0x187)]('['+V+']'):a0L[bj(0x37c)](bj(0x245)),X=Q[bj(0x384)]?a0L['gray']('\x20['+Q[bj(0x384)]+']'):'';console[bj(0x43b)]('\x20\x20'+W+'\x20'+a0L[bj(0x3ec)]('Q'+Q[bj(0x41a)])+X+'\x20'+a0L[bj(0x37c)](Q[bj(0x449)]['substring'](-0x19cb+0x24c3+-0x9*0x138,-0x13*0x1+-0x1a3f+0x1a8e))+(Q[bj(0x449)]['length']>-0x4a*0x1+-0x9*-0x23e+0x8*-0x275?'...':''));}console[bj(0x43b)]();}}else a0aa('No\x20exam\x20in\x20progress.\x20Use\x20\x22exam\x20start\x20<id>\x22\x20to\x20begin.');}),B['command'](be(0x415))[be(0x2fc)](be(0x33f))[be(0x38f)](F=>{const bk=be;a0a8('exam\x20mark\x20'+(F||''));const G=a0Y();if(!G)return void a0aa('No\x20exam\x20in\x20progress.');const H=G['questions'][bk(0x401)],J=F?parseInt(F,0x11dc*0x2+0x37e+0x2*-0x1396):G['_lastQ']||0x2525+0x164f+-0x3b73*0x1;if(Number[bk(0x1b6)](J)||J<-0x1b1d+-0x411+0x1f2f||J>H)return void a0aa(bk(0x40f)+H+'.');const K=D(G,J);console['log'](),K?console[bk(0x43b)](a0L[bk(0x1f4)](bk(0x312)+J+bk(0x12a))):console[bk(0x43b)](a0L[bk(0x37c)]('\x20\x20☆\x20Q'+J+bk(0x346)));const L=Array[bk(0x3e3)](G['bookmarks'])?G['bookmarks']:[];L[bk(0x401)]>-0x1fa6+-0x326+0x1166*0x2&&console[bk(0x43b)](a0L[bk(0x37c)]('\x20\x20Currently\x20flagged:\x20'+L['map'](Q=>'Q'+Q)[bk(0x31d)](',\x20'))),console[bk(0x43b)](a0L[bk(0x37c)]('\x20\x20See\x20all\x20flagged\x20questions\x20in:\x20')+a0L[bk(0x3ec)]('exam\x20review')),console['log']();}),B[be(0x2e0)]('unmark\x20[n]')[be(0x2fc)](be(0x25b))[be(0x38f)](F=>{const bl=be;a0a8('exam\x20unmark\x20'+(F||''));const G=a0Y();if(!G)return void a0aa(bl(0x2db));const H=G[bl(0x2ff)][bl(0x401)],J=F?parseInt(F,0x22d4+-0x20c*0x1+-0x16*0x17d):G[bl(0x305)]||0x2de*-0x1+-0x1a21*0x1+-0x74*-0x40;Number[bl(0x1b6)](J)||J<-0x35b*0x1+-0x2009+-0x2365*-0x1||J>H?a0aa(bl(0x40f)+H+'.'):j(G,J)?(D(G,J),console[bl(0x43b)](),console[bl(0x43b)](a0L['gray'](bl(0x257)+J+bl(0x346))),console['log']()):console[bl(0x43b)](a0L[bl(0x37c)](bl(0x178)+J+bl(0x216)));}),B['command'](be(0x35b))[be(0x2fc)](be(0x2b9))[be(0x38f)](()=>{const bm=be;a0a8(bm(0x298));const F=a0Y();if(!F)return void a0aa(bm(0x2db));F[bm(0x2ff)][bm(0x136)](K=>!F['answers'][K[bm(0x41a)]]);const G=F[bm(0x305)]||0x22*-0x31+-0xe30+-0x2f5*-0x7,H=Math[bm(0x2ee)](G+(-0x1080+0xb*-0x383+-0x1b91*-0x2),F[bm(0x2ff)][bm(0x401)]);F[bm(0x305)]=H,a0Z(F);const J=F[bm(0x2ff)][H-(0x522+-0x1*0x137+-0x3ea)];U(J,F[bm(0x199)][J['number']]);}),B['command'](be(0x176))['description'](be(0x3ea))['action'](()=>{const bn=be;a0a8(bn(0x3ba));const F=a0Y();if(!F)return void a0aa(bn(0x2db));const G=F[bn(0x305)]||-0x4*0x771+-0xb38+-0x7*-0x5db,H=Math[bn(0x2c3)](G-(-0x19*-0xe1+0x777+0x2ad*-0xb),-0x236d*-0x1+-0x533+0x1*-0x1e39);F[bn(0x305)]=H,a0Z(F);const J=F[bn(0x2ff)][H-(-0x25d3+0x21a+0x11*0x21a)];U(J,F[bn(0x199)][J['number']]);}),B['command'](be(0x172))[be(0x2fc)](be(0x1d6))[be(0x38f)](async()=>{const bo=be;a0a8(bo(0x402));const F=a0Y();if(!F)return void a0aa(bo(0x2db));const G=R(F),H=F[bo(0x305)]||-0x3*-0x90a+-0x4*0x628+-0x27d,J=G[bo(0x24c)][H]||-0x14c*0x9+0x439+0x1*0x773,K=G[bo(0x1bf)][H]||[],L=F['questions'][bo(0x345)](W=>W[bo(0x41a)]===H);if(!L)return;if(J>=-0x1314+-0x269f+-0x11*-0x365)return console['log'](),console[bo(0x43b)](a0L[bo(0x1f4)](bo(0x2e1))),console[bo(0x43b)](a0L[bo(0x37c)](bo(0x3fa))),console[bo(0x43b)](),void U(L,F[bo(0x199)][L[bo(0x41a)]]);const Q=['A','B','C','D'][bo(0x1e7)](W=>!K[bo(0x34b)](W));if(Q[bo(0x401)]<=-0x74*-0x4e+0x50c+0x3*-0xd76)return console[bo(0x43b)](),console['log'](a0L[bo(0x1f4)](bo(0x2d6))),console[bo(0x43b)](),void U(L,F[bo(0x199)][L[bo(0x41a)]]);if(G[bo(0x213)]>=G[bo(0x2c3)]){const W=G['max']>=0x95d+0x2440+-0x2d7f,X=0x5*-0x2a1+0x89f*0x1+0x4a4-G[bo(0x2c3)];return void(W?(console['log'](),console[bo(0x43b)](a0L[bo(0x37c)](bo(0x2fe)+G[bo(0x213)]+'/'+G[bo(0x2c3)]+bo(0x2ea))),console[bo(0x43b)]()):(console[bo(0x43b)](),console['log'](a0L[bo(0x1f4)](bo(0x34a)+G[bo(0x213)]+'/'+G['max'])),console[bo(0x43b)](a0L[bo(0x3ec)](bo(0x1f2))+a0L[bo(0x330)]['yellow'](bo(0x39b))+a0L[bo(0x37c)](bo(0x201)+X+bo(0x142))),console[bo(0x43b)]()));}const V=Y=>{const bp=bo;K[bp(0x243)](Y),G[bp(0x1bf)][H]||(G[bp(0x1bf)][H]=[]),G[bp(0x1bf)][H]=K,G[bp(0x24c)][H]=J+(-0x6*0x4e8+0x69*-0x3d+-0x1b3b*-0x2),G[bp(0x213)]++,F[bp(0x272)]=G[bp(0x213)],F[bp(0x28f)]=G[bp(0x2c3)],F[bp(0x421)]=G[bp(0x24c)],F['_eliminated']=G[bp(0x1bf)],F['interactions']||(F[bp(0x1c3)]=[]),F[bp(0x1c3)][bp(0x243)]({'ts':new Date()[bp(0x3d3)](),'q':H,'type':bp(0x33a),'result':'eliminated\x20'+Y}),a0Z(F),console[bp(0x43b)](),console[bp(0x43b)](a0L[bp(0x1f4)](bp(0x307)+Y+bp(0x41d))+a0L['gray'](bp(0x287)+G[bp(0x213)]+'/'+G[bp(0x2c3)]+')')),U(L,F[bp(0x199)][L[bp(0x41a)]]);};if('demo-free'===F[bo(0x1bc)][bo(0x373)]&&L[bo(0x32a)])(Y=>{const bq=bo,Z=Q[bq(0x1e7)](a0=>a0!==Y&&!K[bq(0x34b)](a0));-0x7c*-0x1+-0x13*-0x4a+-0x2fd*0x2!==Z[bq(0x401)]&&V(Z[Math[bq(0x16c)](Math[bq(0x2da)]()*Z['length'])]);})(L[bo(0x32a)]);else{const Y=a0W()[bo(0x3d8)]||bo(0x2de),Z=F[bo(0x1bc)]?.[bo(0x35c)]||'';try{const a0={};a0[bo(0x2f1)]=bo(0x130),a0[bo(0x2f3)]=bo(0x1a4);const a1={};a1[bo(0x35c)]=Z,a1[bo(0x31a)]=H,a1['eliminated']=K;const a2=await fetch(Y+'/api/icoa/exams/'+F[bo(0x1bc)][bo(0x373)]+bo(0x20f),{'method':bo(0x210),'headers':a0,'body':JSON[bo(0x1df)](a1),'signal':AbortSignal[bo(0x31e)](0xdb7+-0x1f5c+0x1f*0x133)}),a3=await a2[bo(0x2d7)](),a4=a3?.[bo(0x2a5)]?.[bo(0x445)];a4&&['A','B','C','D'][bo(0x34b)](a4)?V(a4):(console[bo(0x43b)](),console[bo(0x43b)](a0L['gray'](bo(0x221))));}catch{console['log'](),console[bo(0x43b)](a0L[bo(0x37c)]('\x20\x20Could\x20not\x20reach\x20server\x20for\x20help.\x20Check\x20your\x20connection.'));}}}),B[be(0x2e0)](be(0x19a))['description']('Unlock\x20hidden\x20bonus\x20help\x20uses')[be(0x38f)](()=>{const br=be;a0a8('exam\x20more-help');const F=a0Y();if(!F)return void a0aa(br(0x2db));const G=R(F),H='demo-free'===F[br(0x1bc)][br(0x373)]?0x3c6+0x269a+-0x2a58:0x2f5*-0x2+-0x266d+-0x13*-0x257;if(G[br(0x2c3)]>=H)return void console['log'](a0L[br(0x37c)](br(0x3b3)));if(G[br(0x213)]<G[br(0x2c3)])return void console['log'](a0L[br(0x37c)]('\x20\x20You\x20still\x20have\x20'+(G[br(0x2c3)]-G[br(0x213)])+'\x20helps\x20remaining.\x20Use\x20them\x20first!'));const J=H-G[br(0x2c3)];F[br(0x28f)]=H,a0Z(F),console[br(0x43b)](),console['log'](a0L[br(0x187)](br(0x258)+J+br(0x237)+J+'/'+H+br(0x1e1))),console['log'](a0L['gray'](br(0x19d))),console[br(0x43b)]();}),B['command']('answer\x20<n>\x20<choice...>')[be(0x2fc)](be(0x164))[be(0x38f)](async(F,G)=>{const bs=be,H=G[bs(0x31d)]('\x20');a0a8('exam\x20answer\x20'+F+'\x20'+H);const J=a0Y();if(!J)return void a0aa(bs(0x35f));if(!(function(){const bt=bs,Z=a0a1();if(!Z)return!(0x1fc7+-0x1*-0x25d3+-0x459a);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object[bt(0x365)](a0[bt(0x199)])[bt(0x401)];'demo-free'===a0['session'][bt(0x373)]||0xb*0x31b+0x261+0xc2e*-0x3===a1?(a0a0(),a0ab(bt(0x3ed)),a0ac(bt(0x2b5))):(a0aa(bt(0x1a3)),a0ac(bt(0x250)));}return!(0x1*0x1079+0x79f*0x5+-0x3*0x1231);}return!(-0x119*-0x20+-0x67b+-0x1ca5);}()))return;const K=parseInt(F,-0x466*0x6+0x1*0x1a2f+-0x3f*-0x1),L=J['questions'][bs(0x345)](Z=>Z[bs(0x41a)]===K);if(!L)return void a0aa(bs(0x183)+F+'\x20not\x20found\x20(1-'+J[bs(0x2ff)]['length']+').');let Q;if(bs(0x2a3)===L[bs(0x3a2)]||bs(0x35a)===L[bs(0x3a2)]||bs(0x180)===L[bs(0x3a2)]||L[bs(0x335)]&&!L[bs(0x335)]['A']&&!L['options']['B']){if(Q=H[bs(0x2dd)](),/^submit\s+/i['test'](Q)&&(Q=Q[bs(0x42f)](/^submit\s+/i,'')[bs(0x2dd)]()),Q=Q[bs(0x42f)](/^["'`]+|["'`]+$/g,'')['trim'](),!Q)return void a0aa(bs(0x3a7));if(/^[A-Da-d]$/[bs(0x3a0)](Q))return a0aa('Q'+K+bs(0x368)),void console[bs(0x43b)](a0L[bs(0x37c)]('\x20\x20Example:\x20')+a0L['green'](bs(0x359)+K+bs(0x190)));}else{if(Q=H[bs(0x1f7)](),!['A','B','C','D'][bs(0x34b)](Q))return void a0aa(bs(0x339));}if('demo-free'===J[bs(0x1bc)][bs(0x373)]&&0x2219+0xb*-0x14+0x1*-0x213b===K&&0x252+0x376*-0x9+-0x1e*-0xf6===(R(J)[bs(0x24c)][-0x1*-0x16f9+0x22d4+-0x39cb]||0x9bb+0xbc+0x39*-0x2f))return console[bs(0x43b)](),console[bs(0x43b)](a0L[bs(0x1f4)](bs(0x206))+a0L['bold'][bs(0x1f4)](bs(0x172))+a0L['yellow'](bs(0x304))),console['log'](a0L[bs(0x37c)](bs(0x3cf))),void console[bs(0x43b)]();const V=J[bs(0x199)][K];J[bs(0x1c3)]||(J[bs(0x1c3)]=[]),J[bs(0x1c3)][bs(0x243)]({'ts':new Date()[bs(0x3d3)](),'q':K,'type':V?bs(0x2ba):bs(0x32e),'input':Q,'result':V?bs(0x447)+V:bs(0x23f)}),J['answers'][K]=Q,J[bs(0x305)]=K,a0Z(J),console[bs(0x43b)](a0L[bs(0x37c)](bs(0x3e7)));const W=J[bs(0x1bc)][bs(0x35c)];if(W&&bs(0x3df)!==J['session'][bs(0x373)]){const Z=(a0W()['ctfdUrl']||bs(0x2de))+bs(0x26a)+J['session'][bs(0x373)]+bs(0x26d),a0={};a0[bs(0x2f1)]='application/json';const a1={};a1['token']=W,a1[bs(0x31a)]=K,a1[bs(0x32a)]=Q,fetch(Z,{'method':bs(0x210),'headers':a0,'body':JSON[bs(0x1df)](a1),'signal':AbortSignal[bs(0x31e)](0x26c2+0x1b*-0x11b+0xa9f*0x1)})[bs(0x3d2)](()=>{});}const X=Object[bs(0x365)](J['answers'])[bs(0x401)],Y=J[bs(0x1bc)][bs(0x372)];if(a0a9('Q'+K+':\x20'+Q+bs(0x22e)+X+'/'+Y+'\x20answered)'),'demo-free'===J[bs(0x1bc)]['examId']&&L[bs(0x32a)]){const a2=[bs(0x256),bs(0x3f9),bs(0x214),bs(0x1d7),bs(0x1d3)],a3=[bs(0x37f),bs(0x279),bs(0x322)],a4=Q===L[bs(0x32a)]?a2:a3,a5=a4[Math[bs(0x16c)](Math[bs(0x2da)]()*a4[bs(0x401)])];console[bs(0x43b)](a0L[bs(0x37c)](bs(0x1ca)+a5));}if(K<J['questions'][bs(0x401)]){const a6=J[bs(0x2ff)][K];J['_lastQ']=a6[bs(0x41a)],a0Z(J),U(a6,J['answers'][a6[bs(0x41a)]]);}else X>=J[bs(0x2ff)][bs(0x401)]&&(console[bs(0x43b)](),console[bs(0x43b)](a0L[bs(0x187)][bs(0x330)](bs(0x1d9))),console['log'](),'demo-free'===J[bs(0x1bc)][bs(0x373)]?(console[bs(0x43b)](a0L[bs(0x3ec)]('\x20\x20Type\x20')+a0L[bs(0x330)][bs(0x229)](bs(0x37d))+a0L[bs(0x3ec)](bs(0x333))),console[bs(0x43b)]()):console[bs(0x43b)](a0L[bs(0x3ec)](bs(0x3b2))));}),B[be(0x2e0)](be(0x33c))[be(0x2fc)](be(0x141))['action'](()=>{const bu=be;a0a8(bu(0x2d9));const F=a0Y();if(!F)return void a0aa(bu(0x2db));a0ae(bu(0x17a)+F['session'][bu(0x1d5)]),O(),console['log']();let G='\x20\x20';const H=Array[bu(0x3e3)](F['bookmarks'])?F[bu(0x3b7)]:[];for(const Q of F[bu(0x2ff)]){const V=F[bu(0x199)][Q[bu(0x41a)]],W=H[bu(0x34b)](Q[bu(0x41a)]),X=W?'★':'\x20';G+=V?W?a0L['bold'][bu(0x1f4)]('Q'+String(Q[bu(0x41a)])[bu(0x3de)](0x212a+0x166*-0x5+-0x1a2a)+X+'['+V+']\x20'):a0L[bu(0x187)]('Q'+String(Q[bu(0x41a)])['padStart'](0x115a*0x1+-0x2047*-0x1+-0x319f)+'\x20['+V+bu(0x1af)):W?a0L[bu(0x330)]['yellow']('Q'+String(Q[bu(0x41a)])[bu(0x3de)](-0x62+-0xa69*-0x1+-0xa05)+X+bu(0x1bb)):a0L['yellow']('Q'+String(Q[bu(0x41a)])['padStart'](0x95*0x2+-0x8*0x3df+0x1dd0)+bu(0x355)),Q['number']%(0x431*-0x2+-0x2182+-0x122*-0x25)==-0x176e+0x1596+-0x1d8*-0x1&&(console[bu(0x43b)](G),G='\x20\x20');}G[bu(0x2dd)]()&&console['log'](G);const J=Object['keys'](F[bu(0x199)])[bu(0x401)],K=F[bu(0x1bc)]['questionCount'],L=K-J;if(console[bu(0x43b)](),a0af(bu(0x3a3),a0L[bu(0x187)]['bold'](J+'/'+K)),L>0x2a*0x52+0xa*-0x33a+-0xe*-0x158){const Y=F[bu(0x2ff)][bu(0x1e7)](Z=>!F[bu(0x199)][Z['number']])[bu(0x3b4)](Z=>Z[bu(0x41a)])[bu(0x31d)](',\x20');a0af(bu(0x186),a0L['yellow'](L+bu(0x429)+Y+')'));}H['length']>-0x389+-0x179f*-0x1+-0x1416&&a0af('Flagged\x20for\x20review',a0L[bu(0x330)][bu(0x1f4)]('★\x20'+H['length'])+a0L[bu(0x37c)]('\x20('+H[bu(0x3b4)](Z=>'Q'+Z)['join'](',\x20')+')')),console[bu(0x43b)](),H[bu(0x401)]>0xf*0x1c9+-0x12cb+0x3fe*-0x2&&console[bu(0x43b)](a0L[bu(0x37c)](bu(0x42d))+a0L[bu(0x3ec)](bu(0x357)+H[-0x2111*-0x1+0x1685+0xa*-0x58f])),console[bu(0x43b)](a0L['gray'](bu(0x1e5))+a0L[bu(0x330)][bu(0x229)](bu(0x37d))+a0L['gray'](bu(0x448)));}),B['command'](be(0x195))['description'](be(0x19b))['action'](async(J,K)=>{const bv=be;a0a8(bv(0x14a)+(J||'')+'\x20'+(K||''));const L=a0Y();if(L&&'confirm'===J&&!K&&(L[bv(0x2c1)]=!(0xdc1*0x2+-0x102b+0xb57*-0x1),a0Z(L)),!L)return void a0aa(bv(0x2db));const Q=Object[bv(0x365)](L[bv(0x199)])[bv(0x401)],V=L[bv(0x1bc)][bv(0x372)],W=V-Q;if(-0x182*0x1+-0x267d+0x1*0x27ff===Q){const a0=a0a1(),a1=a0&&new Date()>=a0;return void('demo-free'===L[bv(0x1bc)][bv(0x373)]||a1?(a0a0(),a0ab(bv(0x3ef)),a0ac(bv(0x2b5))):(a0ab(bv(0x135)),a0ac(bv(0x27f))));}const X=a0a1(),Y=!!(X&&new Date()>=X);if(bv(0x3df)!==L[bv(0x1bc)][bv(0x373)]&&!Y&&bv(0x3fb)===J&&Q<-0x74a+-0x227e+0x2*0x14e9){if((K||'')[bv(0x2dd)]()!==String(Q))return console[bv(0x43b)](),console['log'](a0L[bv(0x407)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](a0L[bv(0x330)][bv(0x407)](bv(0x26b)+Q+'/'+V+bv(0x27d))),console[bv(0x43b)](a0L[bv(0x407)](bv(0x2e3))),console[bv(0x43b)](),console['log'](a0L[bv(0x3ec)](bv(0x42b))+a0L[bv(0x330)]['yellow'](''+Q)+a0L['white'](bv(0x425))+a0L['white'](''+V)+a0L['white'](bv(0x15b))),console[bv(0x43b)](a0L['white'](bv(0x3f4))+a0L[bv(0x330)][bv(0x407)](Q+'/'+V+bv(0x2c7))),console['log'](),console['log'](a0L['bold'][bv(0x3ec)](bv(0x211))),console[bv(0x43b)](a0L[bv(0x37c)](bv(0x441))+a0L[bv(0x229)](bv(0x273))+a0L['gray'](bv(0x22b))),console[bv(0x43b)](a0L[bv(0x37c)](bv(0x441))+a0L[bv(0x229)](bv(0x2d9))+a0L[bv(0x37c)](bv(0x324))),console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x330)]['white'](bv(0x150))+a0L[bv(0x330)][bv(0x1f4)](''+Q)+a0L[bv(0x330)][bv(0x3ec)](bv(0x31b))),console[bv(0x43b)](a0L['gray'](bv(0x441))+a0L[bv(0x330)][bv(0x229)]('exam\x20submit\x20confirm\x20'+Q)),console[bv(0x43b)](a0L[bv(0x37c)]('\x20\x20(yes\x20—\x20literally\x20type\x20the\x20number\x20'+Q+';\x20this\x20prevents\x20accidents)')),console['log'](),void(L[bv(0x2c1)]&&(delete L[bv(0x2c1)],a0Z(L)));L[bv(0x2c1)]=!(-0x1*-0x1b68+0xda*0x16+0x4*-0xb89),a0Z(L);}if('demo-free'!==L[bv(0x1bc)][bv(0x373)]){const a2=!(-0xe9a*0x1+-0x1871+0x270b)===L[bv(0x2c1)],a3=a0a1(),a4=!!(a3&&new Date()>=a3);if(!a2&&!a4){if(console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x407)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](a0L['bold'][bv(0x407)](bv(0x2d1))),console[bv(0x43b)](a0L['red'](bv(0x1ee))),console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x3ec)]('\x20\x20You\x20will\x20submit\x20'+a0L[bv(0x330)][bv(0x187)](Q+'/'+V)+'\x20answers.')),W>-0x1*0x211+0x218+0x1*-0x7){const a6=L[bv(0x2ff)][bv(0x1e7)](a7=>!L[bv(0x199)][a7[bv(0x41a)]])[bv(0x3b4)](a7=>'Q'+a7[bv(0x41a)])[bv(0x31d)](',\x20');console[bv(0x43b)](a0L['yellow']('\x20\x20'+W+bv(0x431)+a6));}const a5=Array[bv(0x3e3)](L[bv(0x3b7)])?L[bv(0x3b7)]:[];return a5['length']>-0x1d26+0x5*0x3c+0x1bfa&&console[bv(0x43b)](a0L[bv(0x1f4)](bv(0x2a8)+a5[bv(0x401)]+bv(0x296)+a5['map'](a7=>'Q'+a7)[bv(0x31d)](',\x20'))),console[bv(0x43b)](),console[bv(0x43b)](a0L['white'](bv(0x40b))+a0L[bv(0x330)]['red'](bv(0x2be))+a0L[bv(0x3ec)]('\x20—\x20you\x20cannot\x20change\x20them\x20after\x20submit.')),console['log'](),console[bv(0x43b)](a0L[bv(0x330)]['white'](bv(0x3c3))+a0L['bold'][bv(0x229)](bv(0x134))),console[bv(0x43b)](a0L['white'](bv(0x131))+a0L[bv(0x229)](bv(0x2d9))+a0L[bv(0x37c)](bv(0x319))+a0L[bv(0x229)](bv(0x2aa))),void console['log']();}a2&&(delete L[bv(0x2c1)],a0Z(L));}if(console[bv(0x43b)](),bv(0x3df)===L['session'][bv(0x373)]){try{N(0x12ff*0x1+-0x8*0x37c+0x8e1*0x1,a0ai('grading')),await q(-0x8e9*0x1+0x1190+-0x77b*0x1);let a7=0x31*-0xcb+0x2634+0xa7;const a8=[],a9={};for(const al of L[bv(0x2ff)]){const am=al[bv(0x384)]||bv(0x3e5),an={};an[bv(0x2fb)]=0x0,an[bv(0x2a1)]=0x0,(a9[am]||(a9[am]=an),a9[am]['total']++);const ao=L[bv(0x199)][al['number']];ao&&al[bv(0x32a)]&&ao===al[bv(0x32a)]?(a7++,a9[am][bv(0x2fb)]++):a8['push'](al[bv(0x41a)]);}a8[bv(0x177)]((ap,aq)=>ap-aq),N(-0x1bb6*-0x1+0x1*-0x2081+0x52f,a0ai('complete')),console[bv(0x43b)]();const aa=new Date(L[bv(0x1bc)][bv(0x222)])[bv(0x238)](),ab=Math[bv(0x2c3)](0x3d2+-0x95e+0x58c,Math[bv(0x301)]((Date[bv(0x34e)]()-aa)/(-0x17*0xf8+-0x6be*0x4+0x3528))),ac=Math[bv(0x16c)](ab/(-0x1d14+0x2009+0x2b9*-0x1))+'m\x20'+ab%(0x8*-0xa7+0x18b+0x5b*0xb)+'s',ad=[...L[bv(0x2ff)]],ae={...L[bv(0x199)]},af=R(L);a0a0();const ag=Math['round'](a7/V*(-0x155*-0xb+-0x361*-0x5+0x4*-0x7ca)),ah=a0W(),ai={};ai[bv(0x2f1)]=bv(0x130),(fetch(bv(0x1f0),{'method':bv(0x210),'headers':ai,'body':JSON[bv(0x1df)]({'type':bv(0x2f8),'score':a7,'total':V,'lang':ah['language']||'en','help_used':af[bv(0x213)],'help_max':af[bv(0x2c3)],'tokens_used':0x0,'solved':ag>=0x760*0x3+0x524+0xad*-0x28?-0x77*0x1d+-0x17*0x57+0x154d*0x1:-0x24ee*-0x1+0x101*-0x19+-0xbd5*0x1,'timestamp':new Date()['toISOString'](),'interactions':L['interactions']||[]}),'signal':AbortSignal['timeout'](-0x1e8b+-0x74f+0x3962)})[bv(0x3d2)](()=>{}),console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x229)](bv(0x350))),console[bv(0x43b)](),console['log'](a0L['bold'][bv(0x3ec)](bv(0x1b1))),console[bv(0x43b)](a0L['bold'][bv(0x3ec)](bv(0x309))),console['log'](a0L[bv(0x330)][bv(0x3ec)](bv(0x386))),console[bv(0x43b)](a0L[bv(0x330)][bv(0x3ec)](bv(0x2bf))),console[bv(0x43b)](a0L['bold'][bv(0x3ec)](bv(0x274))),console[bv(0x43b)](a0L[bv(0x330)][bv(0x3ec)](bv(0x3fc))),console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x330)](bv(0x1f5)+a0ai(bv(0x262))+':\x20'+a7+'/'+V+'\x20('+ag+'%)')),console[bv(0x43b)](a0L[bv(0x330)]('\x20\x20\x20'+(ag>=0x199f+0x4d*-0x61+0x3ca?a0L['green'](a0ai(bv(0x436))):a0L[bv(0x407)](a0ai(bv(0x39e)))))),console[bv(0x43b)](a0L['gray'](bv(0x391)+ac)),console['log'](),console[bv(0x43b)](a0L[bv(0x1f4)]('\x20\x20\x20International\x20Cyber\x20Olympiad\x20in\x20AI\x202026')),console[bv(0x43b)](a0L[bv(0x37c)](bv(0x151))),console[bv(0x43b)](),console[bv(0x43b)](a0L['cyan'](bv(0x350))),await q(0x20b0+-0x5*0x33b+-0x4d1));const aj=Object[bv(0x154)](a9);if(aj[bv(0x401)]>-0x1d81+0x2581+0x2*-0x400){console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x330)]['white']('\x20\x20By\x20category'));const ap=0xe6c+-0x237e+0x151c;for(const [aq,ar]of aj){const as=ar[bv(0x2a1)]>0x1a35*0x1+-0x18be+-0x19*0xf?Math[bv(0x301)](ar[bv(0x2fb)]/ar[bv(0x2a1)]*(0x2*-0xa09+-0x21*-0x9c+0x5a)):-0x8e*-0x13+-0x544+-0x546,at=ar[bv(0x2a1)]>-0x1876+-0x38f*-0x1+0x14e7*0x1?Math[bv(0x301)](ar['correct']/ar[bv(0x2a1)]*ap):-0x9b*-0x3b+0x214f+-0x4508,au=ap-at,av=as>=0x1*-0x1c56+-0x1f8e+-0x1*-0x3c34?a0L[bv(0x187)]:as>=-0x1ca*-0x4+-0x1174+0xa7e?a0L[bv(0x1f4)]:a0L['red'],aw=av('█'[bv(0x389)](at))+a0L[bv(0x37c)]('░'[bv(0x389)](au));console[bv(0x43b)](bv(0x441)+a0L['white'](aq[bv(0x3cd)](-0x2139+0x247d+-0x2*0x198))+'\x20'+aw+'\x20\x20'+av(ar[bv(0x2fb)]+'/'+ar[bv(0x2a1)])+a0L['gray']('\x20('+as+'%)'));}console[bv(0x43b)](),console[bv(0x43b)](a0L['cyan']('\x20\x20─────────────────────────────────────────────'));}const ak=a0a4(a7,V);if(a7===ak[bv(0x198)]&&ak['attempts']>-0x2216*0x1+0x171+0x20a6&&a7>0x2*-0xc0e+0x15f8+0x224&&(console['log'](),console[bv(0x43b)](a0L['bold']['green'](bv(0x27c)))),a8[bv(0x401)]>-0xe6b+0x2417+-0x4c*0x49){const ax=ad[bv(0x1e7)](ay=>a8[bv(0x34b)](ay[bv(0x41a)]))[bv(0x3b4)](ay=>({...ay}));a0a5(ax);}else a0a7();if(await q(0xa87+0x1e8f+-0x9ca*0x3),a8['length']>0x6d9*-0x5+-0x3*-0x9eb+0x47c*0x1){console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x1f4)]('\x20\x20'+a8[bv(0x401)]+'\x20'+a0ai(bv(0x282)))),console[bv(0x43b)]();for(const ay of a8){const az=ad[bv(0x345)](aC=>aC[bv(0x41a)]===ay);if(!az)continue;const aA=ae[ay],aB=az[bv(0x32a)];console['log'](a0L[bv(0x3ec)](bv(0x178)+ay+'.\x20'+az[bv(0x449)])),aA?console[bv(0x43b)](a0L['red'](bv(0x441)+a0ai(bv(0x1e9))+':\x20'+aA+'.\x20'+az[bv(0x335)][aA])):console[bv(0x43b)](a0L[bv(0x1f4)]('\x20\x20\x20\x20'+a0ai(bv(0x1e9))+bv(0x3bd))),aB&&console[bv(0x43b)](a0L[bv(0x187)](bv(0x441)+a0ai(bv(0x2fb))+':\x20'+aB+'.\x20'+az[bv(0x335)][aB])),az[bv(0x364)]&&console[bv(0x43b)](a0L['gray'](bv(0x42a)+az[bv(0x364)])),console['log']();}}else console[bv(0x43b)](),console['log'](a0L[bv(0x187)]('\x20\x20'+a0ai(bv(0x352))));await q(-0x9*0x409+-0x1adb+0x9a*0x76),console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x229)](bv(0x3f5))),console[bv(0x43b)](a0L['white']('\x20\x20'+a0ai(bv(0x268))+'\x20')+a0L['bold'][bv(0x187)]('ai4ctf')+a0L['gray'](bv(0x3a5)+a0ai(bv(0x265)))),console['log'](a0L[bv(0x37c)]('\x20\x20'+a0ai(bv(0x1ed)))),console[bv(0x43b)](a0L[bv(0x229)](bv(0x3f5))),console['log']();}catch(aC){console[bv(0x43b)](),a0aa(aC[bv(0x349)]);}return;}const Z=L[bv(0x1bc)]['token'];try{let aD;if(N(-0x2136+-0x198f+0xb1*0x55,bv(0x2f4)),Z){const aN={};aN['Content-Type']=bv(0x130);const aO={};aO['ai4ctf']=0x0,aO[bv(0x35a)]=0x0;const aP=a0W()['ctfdUrl']||bv(0x2de),aQ=await fetch(aP+'/api/icoa/exams/'+L['session']['examId']+bv(0x1a5),{'method':'POST','headers':aN,'body':JSON[bv(0x1df)]({'token':Z,'answers':L[bv(0x199)],'interactions':L[bv(0x1c3)]||[],'aiUsage':L['aiUsage']||aO,'bookmarks':L[bv(0x3b7)]||[]}),'signal':AbortSignal[bv(0x31e)](-0x25ba*0x3+0x2*0x3f9+0xa3d4)});if(!aQ['ok']){const aR=await aQ[bv(0x2d7)]()[bv(0x3d2)](()=>({'message':'Submit\x20failed'}));throw new Error(aR[bv(0x349)]||bv(0x174));}aD=(await aQ[bv(0x2d7)]())['data'];}else{const aS=M();if(!aS)return;aD=await aS[bv(0x2f5)](L['session']['examId'],L[bv(0x199)]);}N(0x14e2+0x2*0x44e+-0x4e2*0x6,bv(0x1ab)),await q(0xe3a*-0x1+0xa9e+0x4c8),N(-0x21e1+0x143*0x1a+0x177,bv(0x3da)),console[bv(0x43b)]();const aE={};aE['ai4ctf']=0x0,aE[bv(0x35a)]=0x0;const aF={'answered':Object[bv(0x365)](L['answers'])[bv(0x401)],'total':L[bv(0x1bc)][bv(0x372)],'bookmarks':Array[bv(0x3e3)](L['bookmarks'])?L[bv(0x3b7)][bv(0x401)]:-0x1415+-0x59*0x4+0x1579,'help':R(L),'aiUsage':L[bv(0x44b)]||aE,'interactions':(L[bv(0x1c3)]||[])['length'],'durationMin':L[bv(0x1bc)][bv(0x28e)]||0x1a1e*0x1+0x19aa+0x19e4*-0x2,'confirmedAt':L[bv(0x1bc)][bv(0x1d2)]||L[bv(0x1bc)][bv(0x222)],'examId':L[bv(0x1bc)][bv(0x373)]};a0a0();const aG=Math[bv(0x2c3)](0x80e+-0x3*0x165+-0x3df,Math[bv(0x301)]((Date[bv(0x34e)]()-new Date(aF[bv(0x1d2)])[bv(0x238)]())/(0xb*0xe9+-0x3*0x1d3+0x3*-0x36))),aH=Math[bv(0x16c)](aG/(0x1*0x267d+0x165d*-0x1+-0x3*0x54c)),aI=aG%(-0x570+-0x1315+0x18c1);console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x229)](bv(0x1ea))),console['log'](),console[bv(0x43b)](a0L['bold']['white'](bv(0x1b1))),console[bv(0x43b)](a0L['bold'][bv(0x3ec)](bv(0x309))),console[bv(0x43b)](a0L[bv(0x330)]['white'](bv(0x386))),console['log'](a0L[bv(0x330)][bv(0x3ec)](bv(0x2bf))),console[bv(0x43b)](a0L[bv(0x330)][bv(0x3ec)](bv(0x274))),console[bv(0x43b)](a0L[bv(0x330)][bv(0x3ec)](bv(0x3fc))),console[bv(0x43b)]();const aJ=aD[bv(0x436)]?a0L['green'][bv(0x330)]('\x20\x20\x20✓\x20\x20Submission\x20accepted\x20—\x20baseline\x20met'):a0L[bv(0x1f4)][bv(0x330)]('\x20\x20\x20○\x20\x20Submission\x20accepted');console['log'](aJ),console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x3ec)](bv(0x189))),console['log'](a0L[bv(0x3ec)](bv(0x392))),console['log'](a0L[bv(0x3ec)](bv(0x3a9))),console[bv(0x43b)](),console['log'](a0L[bv(0x229)](bv(0x3f5))),console[bv(0x43b)](),console['log'](a0L[bv(0x330)][bv(0x3ec)](bv(0x3b9)));const aK=aF[bv(0x2a1)]-aF[bv(0x15e)];console[bv(0x43b)](bv(0x441)+a0L['gray'](bv(0x41c))+a0L['white'](aF[bv(0x15e)]+'/'+aF[bv(0x2a1)])+(aK>0xb55+-0x1*0x115a+0x605?a0L[bv(0x37c)](bv(0x266)+aK+bv(0x284)):'')),console[bv(0x43b)](bv(0x441)+a0L[bv(0x37c)](bv(0x29b))+a0L['white'](aH+'m\x20'+aI+'s')+a0L[bv(0x37c)](bv(0x25f)+aF['durationMin']+bv(0x1bd))),aF[bv(0x3b7)]>0x1*-0x1c2b+0x5*0x4a+-0x1*-0x1ab9&&console[bv(0x43b)](bv(0x441)+a0L[bv(0x37c)](bv(0x430))+a0L[bv(0x1f4)]('★\x20'+aF[bv(0x3b7)])),console[bv(0x43b)]();const aL=aD[bv(0x24a)];if(aL&&Object[bv(0x365)](aL)[bv(0x401)]>=-0x72c+-0xf26*0x1+0x4*0x595){const aT=Object[bv(0x154)](aL)[bv(0x1e7)](([,aY])=>aY[bv(0x2a1)]>-0x1433*-0x1+-0x8e*-0x17+-0x20f5)['map'](([aY,aZ])=>({'cat':aY,'pct':aZ[bv(0x2fb)]/aZ[bv(0x2a1)]}))['sort']((aY,aZ)=>aZ[bv(0x277)]-aY[bv(0x277)]),aU=Math[bv(0x2ee)](0x5c*-0xc+-0x1*-0x3fd+0x55*0x1,Math[bv(0x413)](aT[bv(0x401)]/(0x1df3+0x2645+-0x397*0x13))),aV=Math[bv(0x2ee)](-0x215+0x151*0xd+-0x6*0x281,Math[bv(0x413)](aT[bv(0x401)]/(-0xd98+0x249b*0x1+-0x1700))),aW=aT[bv(0x220)](0x292+-0x5*-0x2a5+-0xfcb,aU)['map'](aY=>aY[bv(0x19e)]),aX=aT[bv(0x220)](-aV)[bv(0x3b4)](aY=>aY['cat']);aW[bv(0x3b0)](aY=>aX[bv(0x34b)](aY))||(console[bv(0x43b)](a0L['bold'][bv(0x3ec)](bv(0x39a))),console['log']('\x20\x20\x20\x20'+a0L[bv(0x187)](bv(0x1b0))+a0L[bv(0x3ec)](aW[bv(0x31d)](',\x20'))),console['log'](bv(0x441)+a0L['yellow'](bv(0x2ca))+a0L['white'](aX['join'](',\x20'))),console[bv(0x43b)](a0L[bv(0x37c)]('\x20\x20\x20\x20(relative\x20to\x20other\x20categories\x20—\x20numeric\x20scores\x20go\x20to\x20your\x20exam\x20center)')),console[bv(0x43b)]());}console[bv(0x43b)](a0L[bv(0x330)][bv(0x3ec)](bv(0x26e))),console[bv(0x43b)](bv(0x441)+a0L[bv(0x37c)](bv(0x12f))+a0L[bv(0x3ec)](aF[bv(0x172)]['used']+'/'+aF[bv(0x172)]['max'])),console[bv(0x43b)](bv(0x441)+a0L[bv(0x37c)](bv(0x44d))+a0L[bv(0x3ec)](aF[bv(0x44b)][bv(0x2a3)]+'\x20AI4CTF')+a0L[bv(0x37c)](bv(0x266))+a0L[bv(0x3ec)](aF[bv(0x44b)][bv(0x35a)]+bv(0x25a))),console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x229)](bv(0x3f5))),console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x330)][bv(0x3ec)]('\x20\x20What\x20next')),console['log'](a0L[bv(0x37c)](bv(0x1ac))),console[bv(0x43b)](a0L[bv(0x37c)](bv(0x2b1))+a0L[bv(0x3ec)](bv(0x22f))+a0L[bv(0x37c)](bv(0x1a2))),console[bv(0x43b)](a0L['gray']('\x20\x20·\x20Reference\x20guides\x20for\x2038\x20tools:\x20')+a0L[bv(0x3ec)]('ref')),console[bv(0x43b)]();const {showCToBUpgradePrompt:aM}=await import(bv(0x270));aM(aF[bv(0x373)],aD['passed']),console[bv(0x43b)](a0L[bv(0x1f4)]('\x20\x20ICOA\x202026\x20·\x20Sydney,\x20Australia\x20·\x20Jun\x2027\x20–\x20Jul\x202')),console[bv(0x43b)](a0L[bv(0x229)][bv(0x228)](bv(0x3d9))),console[bv(0x43b)](),console[bv(0x43b)](a0L[bv(0x229)](bv(0x1ea))),console[bv(0x43b)]();}catch(aY){console['log'](),a0aa(aY[bv(0x349)]);}}),B[be(0x2e0)](be(0x3a8))[be(0x2fc)](be(0x25d))[be(0x38f)](async F=>{const bw=be;a0a8(bw(0x36e)+(F||''));const G=M();if(!G)return;if(!F){const J=a0Y();if(!J)return void a0aa(bw(0x267));F=J[bw(0x1bc)][bw(0x373)];}const H=a0ag(bw(0x1dc));H[bw(0x3c0)]();try{const K=await G['getResult'](F);H['succeed'](bw(0x2b7)),console[bw(0x43b)](),a0ae(K['examName']),a0af('Score',a0L['bold'](K[bw(0x262)]+'/'+K[bw(0x2a1)])),a0af(bw(0x23d),a0L[bw(0x330)](K[bw(0x253)]+'%')),a0af(bw(0x17f),K[bw(0x436)]?a0L[bw(0x187)][bw(0x330)](bw(0x227)):a0L['red'][bw(0x330)](bw(0x2eb))),a0af(bw(0x22d),K[bw(0x17b)]),console[bw(0x43b)]();}catch(L){H[bw(0x3e4)](bw(0x144)),a0aa(L['message']);}}),B[be(0x2e0)]('token\x20<code>')['description']('Enter\x20exam\x20with\x20access\x20token\x20(no\x20login\x20needed)')[be(0x38f)](async J=>{const bx=be;a0a8(bx(0x393)+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import('../lib/exam-state.js'),V=K();if(V){const a2=V[bx(0x1bc)][bx(0x35c)],a3=a0a1(),a4=!!a2&&a2['trim']()[bx(0x1f7)]()!==J[bx(0x2dd)]()[bx(0x1f7)](),a5=!!a3&&a3['getTime']()+(0x272a2*0x1+-0x2*0x10bef2+0x3a8282*0x1)<Date['now']();if(a4&&a5)return Q(),console['log'](),console[bx(0x43b)](a0L[bx(0x37c)](bx(0x2e5))),console[bx(0x43b)](),console['log'](a0L[bx(0x3ec)](bx(0x354))+a0L[bx(0x330)][bx(0x229)](bx(0x320)+J)),void console['log']();if(!a2&&J)return V['session'][bx(0x35c)]=J['trim'](),L(V),console['log'](),console[bx(0x43b)](a0L[bx(0x187)](bx(0x366))),console[bx(0x43b)](a0L[bx(0x37c)](bx(0x446))+a0L['white'](bx(0x126))+a0L['gray'](bx(0x325))+a0L[bx(0x3ec)](bx(0x37d))),console[bx(0x43b)](),console[bx(0x43b)](a0L[bx(0x330)][bx(0x3ec)](bx(0x382))),console['log'](a0L[bx(0x37c)](bx(0x42a))+a0L['bold'][bx(0x229)]('exam\x20q\x201')+a0L[bx(0x37c)](bx(0x385))),console['log'](a0L['gray'](bx(0x42a))+a0L[bx(0x330)][bx(0x229)](bx(0x2d9))+a0L[bx(0x37c)]('\x20\x20\x20see\x20progress\x20+\x20flagged\x20items')),void console['log']();const a6=Object[bx(0x365)](V[bx(0x199)])[bx(0x401)],a7=V['session']['questionCount'],a8=a0a1(),a9=a8?Math[bx(0x2c3)](-0x1e59+-0x2573*-0x1+-0x71a,Math[bx(0x301)]((a8[bx(0x238)]()-Date[bx(0x34e)]())/(0xb*0x88c+-0x13450+0x1c0ac))):null;return console[bx(0x43b)](),console['log'](a0L[bx(0x1f4)]('\x20\x20⚠\x20\x20An\x20exam\x20is\x20already\x20in\x20progress\x20on\x20this\x20device.')),console['log'](),console[bx(0x43b)](a0L['gray'](bx(0x1fb))+a0L[bx(0x3ec)](V[bx(0x1bc)][bx(0x1d5)])),a2&&console[bx(0x43b)](a0L[bx(0x37c)]('\x20\x20Token:\x20\x20\x20')+a0L[bx(0x3ec)](a2)+(a2===J?a0L[bx(0x187)](bx(0x351)):a0L[bx(0x1f4)]('\x20\x20(different\x20from\x20the\x20one\x20you\x20typed)'))),console[bx(0x43b)](a0L['gray'](bx(0x24d))+a0L['white'](a6+'/'+a7)),null!==a9&&console[bx(0x43b)](a0L[bx(0x37c)](bx(0x291))+a0L[bx(0x3ec)](a9+'\x20min\x20remaining')),console[bx(0x43b)](),console['log'](a0L[bx(0x330)][bx(0x3ec)](bx(0x360))),console[bx(0x43b)](a0L[bx(0x37c)](bx(0x42a))+a0L[bx(0x330)][bx(0x229)](bx(0x273))+a0L[bx(0x37c)](bx(0x385))),console[bx(0x43b)](a0L[bx(0x37c)](bx(0x42a))+a0L['bold'][bx(0x229)]('exam\x20review')+a0L['gray'](bx(0x310))),console[bx(0x43b)](a0L[bx(0x37c)](bx(0x42a))+a0L[bx(0x330)][bx(0x229)](bx(0x37d))+a0L['gray']('\x20\x20\x20finish\x20and\x20submit')),a2&&a2!==J&&(console['log'](),console[bx(0x43b)](a0L[bx(0x1f4)](bx(0x341))),console['log'](a0L[bx(0x1f4)](bx(0x2c6))),console[bx(0x43b)](),console[bx(0x43b)](a0L[bx(0x37c)]('\x20\x20If\x20you\x20need\x20to\x20abandon\x20this\x20session\x20(e.g.\x20expired\x20/\x20wrong\x20paper),')),console[bx(0x43b)](a0L['gray']('\x20\x20run\x20')+a0L[bx(0x330)][bx(0x229)](bx(0x259))+a0L[bx(0x37c)]('\x20to\x20wipe\x20local\x20state,\x20then\x20re-enter\x20the\x20new\x20token.'))),void console['log']();}const {isNativeWindowsCmd:W}=await import('../lib/platform.js');if(!W()&&!a0am()){let aa=!(-0x98b+0x20ab*-0x1+-0x65*-0x6b);try{const ab={};ab[bx(0x2f1)]=bx(0x130);const ac=a0W()[bx(0x3d8)]||bx(0x2de),ad=await fetch(ac+'/api/icoa/exam-token',{'method':bx(0x210),'headers':ab,'body':JSON[bx(0x1df)]({'token':J[bx(0x2dd)](),'deviceHash':a0aj(),'peek':!(0x17*-0x41+-0x1a1*-0xd+0x2*-0x7ab)}),'signal':AbortSignal[bx(0x31e)](0xa46+0x15e9+-0xca7)});if(ad['ok']){const ae=await ad[bx(0x2d7)]();(ae?.['data']?.['exam_id']||'')[bx(0x399)]('-c')&&(aa=!(-0x259*-0xf+0x22c7+-0x45fe));}}catch{}if(!aa)return console[bx(0x43b)](),a0ab('Pre-exam\x20setup\x20required\x20before\x20entering\x20a\x20token.'),console[bx(0x43b)](a0L['gray'](bx(0x3e2))+a0L['bold'][bx(0x229)](bx(0x38a))),console[bx(0x43b)](a0L['gray'](bx(0x175))+a0L['bold'][bx(0x229)](bx(0x2aa))+a0L['gray'](bx(0x1c5))),console[bx(0x43b)](a0L[bx(0x37c)](bx(0x311))),void console[bx(0x43b)]();}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[bx(0x2dd)]()[bx(0x263)](0xb07+-0x192f+0x6*0x25c,-0x569+0x2*0x302+-0x99)[bx(0x1f7)]()],Z=a0W(),a0=Z[bx(0x3d8)]||bx(0x2de),a1=Y||Z[bx(0x1e3)]||'en';Y&&Y!==(Z[bx(0x1e3)]||'en')&&a0X({'language':Y}),console[bx(0x43b)](),N(-0x4d8*0x2+-0x1f77+0x2927,'Validating\x20token...');try{const af={};af[bx(0x2f1)]=bx(0x130);const ag=await fetch(a0+bx(0x292),{'method':bx(0x210),'headers':af,'body':JSON[bx(0x1df)]({'token':J['trim'](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal['timeout'](0x11*-0x472+0x4c45+0x1*0x265d)});if(!ag['ok']){N(-0x1*0x791+-0x1969+-0x57f*-0x6,''),console[bx(0x43b)]();const ao=await ag[bx(0x2d7)]()[bx(0x3d2)](()=>({'message':'Invalid\x20token'}));return a0aa(ao[bx(0x349)]||'Invalid\x20exam\x20token'),void a0ac(bx(0x22a));}N(0x851*0x1+-0x50d*0x1+-0x326,bx(0x23c));const ah=await ag[bx(0x2d7)](),{session:ai,questions:aj,languages:ak}=ah['data'];N(-0xd93+0x642*-0x1+0x1411,'Preparing...'),await q(-0x706+-0x15*-0x1+0x7b9),N(-0x2280+-0x748*-0x2+0x1454,bx(0x2f6)),console[bx(0x43b)](),console[bx(0x43b)](),a0ae(ai[bx(0x1d5)]),console['log'](),a0af('Questions',ai[bx(0x372)]+bx(0x3d7)),a0af(bx(0x22c),ai[bx(0x28e)]+bx(0x3c5)),a0af(bx(0x18a),(ai[bx(0x129)]||-0x1465*0x1+-0x27d*-0x4+0xb07)+'\x20points'),a0af(bx(0x28b),(ai['passingScore']||0x173f+-0x21b4+0xac0)+bx(0x209)),console[bx(0x43b)](),console[bx(0x43b)](a0L[bx(0x3ec)]('\x20\x20Assistance:')),console[bx(0x43b)](a0L[bx(0x3ec)](bx(0x383))),console[bx(0x43b)](a0L[bx(0x3ec)]('\x20\x20\x20\x20Hints:\x20\x20\x20A(5)\x20B(3)\x20C(1)\x20—\x20practical\x20only')),console[bx(0x43b)](a0L[bx(0x3ec)]('\x20\x20\x20\x20AI:\x20\x20\x20\x20\x20\x2025K\x20AI4CTF\x20+\x2025K\x20CTF4AI\x20tokens')),ak&&ak[bx(0x401)]>0x1cd*-0x5+0x8*0x31b+0x1*-0xfd6&&console['log'](a0L[bx(0x3ec)](bx(0x2af)+ak[bx(0x31d)](',\x20')+bx(0x14c))),console[bx(0x43b)](),console[bx(0x43b)](a0L[bx(0x1f4)](bx(0x2c5))),console[bx(0x43b)](a0L[bx(0x3ec)](bx(0x34d))),console[bx(0x43b)](a0L[bx(0x3ec)](bx(0x2df))),console[bx(0x43b)](a0L[bx(0x3ec)](bx(0x3bc))),console[bx(0x43b)](),await new Promise(ap=>{const by=bx;process['stdout']['write'](a0L[by(0x330)][by(0x1f4)](by(0x3f7)));const aq=!!process[by(0x1cd)][by(0x280)]&&process[by(0x1cd)][by(0x2b8)];process[by(0x1cd)][by(0x280)]&&process['stdin'][by(0x1a9)]&&process[by(0x1cd)]['setRawMode'](!(-0xd63+-0x60*0x17+0x1*0x1604));const ar=as=>{const bz=by,at=as[bz(0x418)]();(at[bz(0x34b)]('\x0a')||at[bz(0x34b)]('\x0d'))&&(process[bz(0x1cd)][bz(0x3a6)](bz(0x2a5),ar),process[bz(0x1cd)][bz(0x280)]&&process[bz(0x1cd)]['setRawMode']&&process['stdin'][bz(0x1a9)](aq),process[bz(0x2b0)][bz(0x13e)]('\x0a'),ap());};process['stdin']['on'](by(0x2a5),ar),process[by(0x1cd)][by(0x38e)]();});const al=new Date()[bx(0x3d3)]();ai[bx(0x1d2)]=al,ai[bx(0x35c)]=J[bx(0x2dd)]();try{const ap=Date[bx(0x34e)](),aq=await fetch(a0+bx(0x409),{'method':bx(0x30d),'signal':AbortSignal[bx(0x31e)](-0x1049*-0x1+0x1*-0x1271+0x4a0*0x3)});if(aq['ok']){const ar=await aq[bx(0x2d7)](),as=ar?.[bx(0x2a5)]?.['server_time_ms'];if('number'==typeof as&&as>-0xc1*-0x2e+-0x33*0x8e+0x199*-0x4){const at=(ap+Date[bx(0x34e)]())/(0x10*-0x239+-0x2250+0x45e2);ai[bx(0x2ec)]=Math[bx(0x301)](as-at),ai[bx(0x28c)]=as+(-0x1dc6+0xae4+-0x131e*-0x1)*ai[bx(0x28e)]*(0x87d+0x1*-0x24af+0x201a);}}}catch{}const am={};am[bx(0x2a3)]=0x0,am[bx(0x35a)]=0x0;const an={};an[bx(0x1bc)]=ai,an[bx(0x2ff)]=aj,an[bx(0x199)]={},an[bx(0x1c3)]=[],an[bx(0x44b)]=am,(a0Z(an),console[bx(0x43b)](),a0a9(bx(0x3a4)),a0af('Time\x20Remaining',ai[bx(0x28e)]+bx(0x328)),aj[bx(0x401)]>0xcf8+0x18f3+-0x25eb&&U(aj[0x1*0x1fcd+-0x1253+-0x2b2*0x5]));}catch(au){console[bx(0x43b)](),bx(0x26c)===au['name']?a0aa(bx(0x2bb)):a0aa(au[bx(0x349)]||bx(0x12c));}}),B[be(0x2e0)](be(0x234),{'hidden':!(0x7f*-0x1e+-0x11fb*-0x2+-0x1514)})[be(0x2fc)](be(0x3c1))[be(0x38f)](async()=>{const bA=be;a0a8(bA(0x259));const {getRealExamState:F,clearExamState:G}=await import('../lib/exam-state.js'),H=F();if(!H)return console[bA(0x43b)](),console['log'](a0L[bA(0x37c)](bA(0x29a))),void console[bA(0x43b)]();const J=H[bA(0x1bc)][bA(0x35c)];console['log'](),console['log'](a0L[bA(0x1f4)](bA(0x2bc))),console[bA(0x43b)](a0L['gray'](bA(0x317))+a0L[bA(0x3ec)](H['session'][bA(0x1d5)])),J&&console[bA(0x43b)](a0L['gray'](bA(0x344))+a0L[bA(0x3ec)](J)),console[bA(0x43b)](a0L['gray']('\x20\x20\x20\x20\x20The\x20token\x20itself\x20is\x20NOT\x20revoked\x20server-side.\x20If\x20your\x20session\x20is')),console[bA(0x43b)](a0L[bA(0x37c)](bA(0x1e4))),console[bA(0x43b)](),console[bA(0x43b)](a0L[bA(0x37c)]('\x20\x20Type\x20')+a0L[bA(0x330)][bA(0x229)]('reset')+a0L[bA(0x37c)](bA(0x1fe)));const {getMainRl:K}=await import('../lib/main-rl.js'),L=K();if(bA(0x234)!==(await new Promise(Q=>{const bB=bA;if(L){const V=L[bB(0x33b)](bB(0x33e))[bB(0x220)]();L['removeAllListeners']('line'),L[bB(0x434)](bB(0x2dc)),L[bB(0x3d4)](),L['once'](bB(0x33e),W=>{const bC=bB;for(const X of V)L['on']('line',X);Q(W[bC(0x2dd)]());});}else((async()=>{const bD=bB,W={};W[bD(0x3d6)]=process[bD(0x1cd)],W[bD(0x40a)]=process[bD(0x2b0)];const {createInterface:X}=await import(bD(0x44c)),Y=X(W);Y[bD(0x31a)]('\x20\x20>\x20',Z=>{const bE=bD;Y['close'](),Q(Z[bE(0x2dd)]());});})());}))['toLowerCase']())return console[bA(0x43b)](a0L[bA(0x37c)](bA(0x203))),void console['log']();G(),console[bA(0x43b)](),console[bA(0x43b)](a0L[bA(0x187)](bA(0x219))),console[bA(0x43b)](a0L[bA(0x37c)](bA(0x32d))+a0L[bA(0x330)][bA(0x229)](bA(0x1e0))),console[bA(0x43b)]();}),B[be(0x2e0)](be(0x22f))[be(0x2fc)](be(0x1f9))[be(0x38f)](async()=>{const bF=be;a0a8(bF(0x308)),E('demo-enter');const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import('../lib/demo-exam.js');a0W()[bF(0x35e)]||(await(async function(){const bG=bF;let a0=!(0xd61*-0x2+-0x5b7*0x2+0x2631);const a1=process['stdin'],a2=()=>{a0=!(0x115*-0x1c+0x8dc+0x55c*0x4);},a3=a1[bG(0x280)]&&bG(0x1b4)==typeof a1['setRawMode'];a3&&(a1['setRawMode'](!(-0x1*0x1f1b+-0x25c1+-0x2*-0x226e)),a1[bG(0x38e)](),a1[bG(0x1ba)]('data',a2));const a4=async a5=>{let a6=-0x53b+-0x11f*-0x3+0x1de*0x1;for(;a6<a5&&!a0;)await q(-0x1*-0x18e+0x52*0x56+0x16*-0x14f),a6+=-0x21e5*0x1+-0x1c20+0x6ed*0x9;};try{if(console[bG(0x231)](),console[bG(0x43b)](),console[bG(0x43b)](a0L['gray'](bG(0x1f5))+a0L[bG(0x37b)]('(press\x20any\x20key\x20to\x20skip)')),console['log'](),console['log'](a0L[bG(0x330)][bG(0x3ec)]('\x20\x20\x20██╗\x20██████╗\x20██████╗\x20\x20█████╗')),console[bG(0x43b)](a0L[bG(0x330)][bG(0x3ec)](bG(0x309))),console[bG(0x43b)](a0L['bold'][bG(0x3ec)](bG(0x386))),console[bG(0x43b)](a0L[bG(0x330)][bG(0x3ec)]('\x20\x20\x20██║██║\x20\x20\x20\x20\x20██║\x20\x20\x20██║██╔══██║')),console[bG(0x43b)](a0L[bG(0x330)][bG(0x3ec)]('\x20\x20\x20██║╚██████╗╚██████╔╝██║\x20\x20██║')),console[bG(0x43b)](a0L['bold'][bG(0x3ec)](bG(0x3fc))),console[bG(0x43b)](),console['log'](a0L[bG(0x330)][bG(0x1f4)]('\x20\x20\x20International\x20Cyber\x20Olympiad\x20in\x20AI')),console[bG(0x43b)](a0L['gray'](bG(0x44e))),await a4(-0x19e9+-0x1*-0x1237+0x1176*0x1),a0)return;if(console[bG(0x43b)](),console['log'](a0L[bG(0x3ec)](bG(0x1be))),console[bG(0x43b)](),await a4(0x2610+-0x2cf+-0x20e9),a0)return;if(console[bG(0x43b)](a0L[bG(0x229)]('\x20\x20\x20\x20\x20▣\x20')+a0L[bG(0x3ec)]('Answer\x2010\x20quick\x20questions')+a0L[bG(0x37c)](bG(0x2ef))),await a4(-0x17a6+-0x195d+0x33bf),a0)return;if(console[bG(0x43b)](a0L[bG(0x187)]('\x20\x20\x20\x20\x20▣\x20')+a0L[bG(0x3ec)]('Team\x20up\x20with\x20AI\x20to\x20solve\x20CTFs')+a0L['gray'](bG(0x283))),await a4(0x53*0x76+-0x26*0x21+0xf50*-0x2),a0)return;if(console[bG(0x43b)](a0L[bG(0x407)](bG(0x1ec))+a0L[bG(0x3ec)](bG(0x2ae))+a0L[bG(0x37c)](bG(0x21b))),await a4(0x955*-0x1+0x7e5*-0x2+0x1ca3),a0)return;if(console[bG(0x43b)](),console[bG(0x43b)](a0L['bold'][bG(0x3ec)](bG(0x21c))+a0L['bold'][bG(0x1f4)]('IS')+a0L[bG(0x330)][bG(0x3ec)](bG(0x147))),console[bG(0x43b)](),await a4(0x3a5*0x6+-0xbba+-0x4*0x112),a0)return;if(console[bG(0x43b)](a0L['gray']('\x20\x20\x20·\x20110\x20CTF\x20tools\x20pre-configured')),await a4(0x1*0x1487+0x8e1*0x1+-0x12*0x18c),a0)return;if(console[bG(0x43b)](a0L[bG(0x37c)]('\x20\x20\x20·\x2015\x20languages,\x20real-time\x20AI\x20translation')),await a4(0x1fac+-0x14ba+-0x962),a0)return;if(console[bG(0x43b)](a0L[bG(0x37c)]('\x20\x20\x20·\x2015,000+\x20concurrent\x20participants')),await a4(0xd*0x2d5+-0x37a+-0x1e37),a0)return;console['log'](),console[bG(0x43b)](a0L[bG(0x330)]['cyan'](bG(0x1fa))),await a4(-0xc15*-0x2+-0x125*0xd+-0x3*-0x21d);}finally{((()=>{const bH=bG;if(a3){a1[bH(0x3a6)]('data',a2);try{a1[bH(0x1a9)](!(-0x639+0x2*-0xfdf+0x25f8));}catch{}a1[bH(0x336)]();}})()),console[bG(0x231)]();}}()),a0X({'demoIntroSeen':!(-0x1b85+0xd*0x257+-0x2e6)})),console[bF(0x43b)](),console[bF(0x43b)](a0L[bF(0x3ec)](bF(0x2ab))+a0L[bF(0x37c)](H+bF(0x36a)+J+'.\x20No\x20timer.\x20Free\x20practice.')),console[bF(0x43b)](a0L[bF(0x37c)](bF(0x398))+a0L[bF(0x229)](bF(0x16e))+a0L['gray'](bF(0x36c))+a0L[bF(0x229)](bF(0x2aa))+a0L['gray'](bF(0x2ce))),await new Promise(a0=>{const bI=bF;process['stdout']['write'](a0L[bI(0x330)]['yellow'](bI(0x246)));const a1=!!process[bI(0x1cd)]['isTTY']&&process['stdin'][bI(0x2b8)];process[bI(0x1cd)][bI(0x280)]&&process['stdin'][bI(0x1a9)]&&process['stdin'][bI(0x1a9)](!(-0x19*-0x145+-0x1*-0xf95+0x1*-0x2f51));const a2=a3=>{const bJ=bI,a4=a3[bJ(0x418)]();(a4['includes']('\x0a')||a4[bJ(0x34b)]('\x0d'))&&(process[bJ(0x1cd)]['removeListener'](bJ(0x2a5),a2),process[bJ(0x1cd)][bJ(0x280)]&&process[bJ(0x1cd)][bJ(0x1a9)]&&process[bJ(0x1cd)]['setRawMode'](a1),process['stdout'][bJ(0x13e)]('\x0a'),a0());};process[bI(0x1cd)]['on'](bI(0x2a5),a2),process['stdin'][bI(0x38e)]();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import(bF(0x184));Q()&&V(bF(0x3df)),console[bF(0x43b)](),a0ae(bF(0x443)),console[bF(0x43b)](),console[bF(0x43b)](a0L[bF(0x3ec)](bF(0x179))),console[bF(0x43b)](a0L[bF(0x3ec)]('\x20\x20'+H+'\x20random\x20questions\x20from\x20a\x20pool\x20of\x20'+J+bF(0x440)));const W=a0a3();if(W[bF(0x338)]>0xe*-0xe7+0x515*-0x1+-0x1*-0x11b7){const a0=W[bF(0x1ce)],a1=a0>=-0x7f2+0x1*0x1363+-0xb21?a0L['green']:a0>=0x55*-0x25+0x1e50+-0x11cb?a0L[bF(0x1f4)]:a0L[bF(0x3ec)];console['log'](),console[bF(0x43b)](a0L['gray'](bF(0x25c))+a1(W[bF(0x198)]+'/'+H+'\x20('+a0+'%)')+a0L[bF(0x37c)](bF(0x266)+W[bF(0x338)]+bF(0x1cb)));}console['log'](),console['log'](a0L[bF(0x37c)](bF(0x14e))),console[bF(0x43b)](a0L[bF(0x3ec)]('\x20\x20'+a0ai('howToPlay'))),console[bF(0x43b)](a0L[bF(0x1f4)](bF(0x1ef))+a0L[bF(0x37c)]('\x20\x20\x20\x20\x20\x20\x20'+a0ai(bF(0x215)))),console['log'](a0L[bF(0x1f4)](bF(0x163))+a0L[bF(0x37c)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bF(0x128)))),console[bF(0x43b)](a0L[bF(0x1f4)](bF(0x374))+a0L['gray'](bF(0x230))+a0L[bF(0x1f4)](bF(0x176))+a0L['gray'](bF(0x441)+a0ai('htpNav'))),console[bF(0x43b)](a0L[bF(0x1f4)](bF(0x1a6))+a0L[bF(0x37c)](bF(0x27b)+a0ai('htpMoreHelp'))),console[bF(0x43b)](a0L[bF(0x1f4)](bF(0x3f8))+a0L[bF(0x37c)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bF(0x313)))),console[bF(0x43b)](a0L[bF(0x1f4)](bF(0x152))+a0L[bF(0x37c)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bF(0x1d8)))),console[bF(0x43b)](a0L[bF(0x37c)](bF(0x1de))),console[bF(0x43b)](a0L[bF(0x37c)](bF(0x193))),console['log'](a0L['gray']('\x20\x20─────────────────────────────────────────')),console[bF(0x43b)]();const {getConfig:X}=await import('../lib/config.js'),Y=X()[bF(0x1e3)]||'en';'en'===Y?(console[bF(0x43b)](a0L[bF(0x37c)](bF(0x2d4))),console[bF(0x43b)](a0L[bF(0x37c)]('\x20\x20lang\x20es\x20(Español)\x20·\x20lang\x20zh\x20(中文)\x20·\x20lang\x20ko\x20(한국어)\x20·\x20lang\x20ja\x20(日本語)')),console[bF(0x43b)](a0L['gray'](bF(0x17c)))):console[bF(0x43b)](a0L[bF(0x187)](bF(0x3c7)+Y)),console[bF(0x43b)](),console[bF(0x43b)](a0L[bF(0x3ec)]('\x20\x20Starting\x20exam...'));const Z={...L,'startedAt':new Date()[bF(0x3d3)]()};console[bF(0x43b)](),N(0x3*-0x6d3+-0x1638+0x2ab1*0x1,'Preparing\x20questions...'),await q(-0x6fa+-0x1*0x1ced+0x24af*0x1),N(-0x1616+-0xd*-0x299+-0xb87,bF(0x225)),await q(-0x520+0x1468+-0x74*0x20),N(0x1*-0xc08+0x26*0xce+-0x123c,bF(0x379)),await q(-0x8*0xd3+-0x3*0x38+0x7d6),N(-0x1eba+0x1*0x49e+0x1a80,bF(0x2f6)),console[bF(0x43b)](),console['log'](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af(bF(0x196),String(H)),a0af(bF(0x22c),bF(0x306)),U(K[0x1*-0x1745+-0xf97+-0x33d*-0xc]);}),B[be(0x2e0)](be(0x332))[be(0x2fc)]('Retry\x20only\x20the\x20questions\x20you\x20got\x20wrong\x20last\x20demo\x20attempt')[be(0x38f)](async()=>{const bK=be;a0a8('exam\x20demo-retry'),E(bK(0x200));const {getLocalizedDemoSession:F}=await import('../lib/demo-exam.js'),G=a0a6();if(!G||0x68d*-0x2+-0x16b5+0x23cf===G[bK(0x401)])return console[bK(0x43b)](),console[bK(0x43b)](a0L[bK(0x1f4)](bK(0x3d1))+a0L[bK(0x330)][bK(0x229)](bK(0x22f))+a0L[bK(0x1f4)]('\x20first.')),void console['log']();const H=a0Y();if(H){if(bK(0x3df)!==H[bK(0x1bc)][bK(0x373)])return a0ab(bK(0x3ad)+H[bK(0x1bc)]['examName']+bK(0x3b5)),void a0ac(bK(0x18c));a0a0();}const J=V=>{const bL=bK;if(!V[bL(0x32a)])return V;const W=V[bL(0x335)][V[bL(0x32a)]],X=['A','B','C','D']['map'](a2=>V[bL(0x335)][a2]);for(let a2=X[bL(0x401)]-(0x231b*0x1+-0xe64+-0x2*0xa5b);a2>-0x11ab+-0x24ac+0x3657*0x1;a2--){const a3=Math[bL(0x16c)](Math[bL(0x2da)]()*(a2+(0x536+-0x1c*0x5e+0x513)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[0x2104+-0x1ca+-0xe*0x23b],Y['B']=X[-0x1*-0x2149+-0x1fe4+-0x164],Y['C']=X[-0x148b+-0x1f1a+-0x1*-0x33a7],Y['D']=X[-0xc7*0xe+-0x399+0xe7e];const Z=Y,a0=['A','B','C','D']['find'](a4=>Z[a4]===W),a1={...V};return a1[bL(0x335)]=Z,a1[bL(0x32a)]=a0,a1;},K=G['map']((V,W)=>({...J(V),'number':W+(-0x4*-0x7a4+0x1970+-0x37ff)})),L=F(),Q={...L,'examName':L['examName']+'\x20\x20(Retry\x20wrong\x20only)','questionCount':K[bK(0x401)],'startedAt':new Date()[bK(0x3d3)]()};console[bK(0x43b)](),a0ae(bK(0x145)),console['log'](),console[bK(0x43b)](a0L[bK(0x3ec)](bK(0x42e)+K['length']+bK(0x40d)+(-0x203f*0x1+0x2467+-0x427===K[bK(0x401)]?'':'s')+bK(0x165))),console['log'](a0L[bK(0x37c)](bK(0x20e))),console[bK(0x43b)](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af('Questions',String(K[bK(0x401)])),a0af(bK(0x22c),bK(0x306)),U(K[-0x1a72+0xe8c+0xbe6]);}),B['command']('setup')[be(0x2fc)]('Install\x20Python\x20environment\x20for\x20practical\x20exam\x20questions')[be(0x38f)](async()=>{const bM=be;if(a0a8(bM(0x38a)),0x337*0x2+-0xc1d+0x5af===a0a3()['attempts'])return console[bM(0x43b)](),a0ab(bM(0x1c4)),console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20→\x20')+a0L[bM(0x330)][bM(0x229)](bM(0x308))),void console[bM(0x43b)]();const K=a0ak();if(K){const a4=K['installedPackages'][bM(0x401)],a5=a4+K[bM(0x1a8)][bM(0x401)];if(a4>=0x1*0x859+-0x1f*0x133+-0x1*-0x1cdc||(a5>0x11b3*-0x2+0x1f38+-0x5*-0xd6?a4/a5:0x1721+-0x1*-0x1ad7+-0x31f8)>=-0x1*-0x1705+-0x13d3+0x332*-0x1+0.7)return console[bM(0x43b)](),console['log'](a0L[bM(0x187)](bM(0x12e))+a0L['green'](bM(0x400))),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x191)+K['completedAt'][bM(0x37a)]('T')[0x3*0x56d+0x10f6+0x213d*-0x1])),console[bM(0x43b)](a0L['gray'](bM(0x16d)+K[bM(0x411)])),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x2fa)+a4+bM(0x390))),K[bM(0x1a8)][bM(0x401)]>0x107a+-0x1bc7*-0x1+0x1*-0x2c41&&console[bM(0x43b)](a0L[bM(0x1f4)](bM(0x168)+K[bM(0x1a8)]['join'](',\x20'))),console['log'](),console['log'](a0L[bM(0x3ec)](bM(0x146))+a0L[bM(0x330)][bM(0x229)](bM(0x1e0))),console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20Or\x20type\x20')+a0L[bM(0x330)][bM(0x229)]('back')+a0L['gray']('\x20to\x20return\x20to\x20the\x20main\x20menu.')),void console[bM(0x43b)]();console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x1f4)](bM(0x276)+a4+'/'+a5+bM(0x362))),console['log']();}console[bM(0x43b)](),a0ae(bM(0x290)),console['log'](),console[bM(0x43b)](a0L['white'](bM(0x315))),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x271))),console['log']();const L=(a6,a7)=>{const bN=bM,a8=process['platform'];console['log'](),a0aa(bN(0x254)===a6?'Python\x203\x20not\x20found.':'Python\x20'+a7+'\x20found,\x20but\x203.10+\x20required\x20for\x20the\x20exam.'),console[bN(0x43b)](),console[bN(0x43b)](a0L[bN(0x330)][bN(0x3ec)](bN(0x1c1))),console[bN(0x43b)](),bN(0x1fc)===a8?(console[bN(0x43b)](a0L[bN(0x1f4)]('\x20\x20macOS\x20(Homebrew,\x20recommended):')),console[bN(0x43b)](a0L[bN(0x187)]('\x20\x20\x20\x20brew\x20install\x20python@3.12')),console['log'](),console[bN(0x43b)](a0L[bN(0x37c)](bN(0x323))),console[bN(0x43b)](a0L[bN(0x37c)](bN(0x1f8)))):bN(0x406)===a8?(console['log'](a0L[bN(0x1f4)](bN(0x3e0))),console[bN(0x43b)](a0L[bN(0x187)](bN(0x2a7))),console[bN(0x43b)](a0L[bN(0x187)](bN(0x140))),console['log'](a0L['green'](bN(0x148))),console[bN(0x43b)](a0L[bN(0x37c)]('\x20\x20\x20\x20sudo\x20update-alternatives\x20--install\x20/usr/bin/python3\x20python3\x20/usr/bin/python3.12\x201')),console['log'](),console[bN(0x43b)](a0L[bN(0x1f4)]('\x20\x20Fedora\x20/\x20RHEL:')),console[bN(0x43b)](a0L[bN(0x187)]('\x20\x20\x20\x20sudo\x20dnf\x20install\x20-y\x20python3.12')),console[bN(0x43b)](),console[bN(0x43b)](a0L[bN(0x1f4)](bN(0x241))),console[bN(0x43b)](a0L['green'](bN(0x157)))):bN(0x13f)===a8?(console[bN(0x43b)](a0L[bN(0x1f4)](bN(0x3d0))),console[bN(0x43b)](a0L[bN(0x187)](bN(0x132))),console['log'](),console[bN(0x43b)](a0L[bN(0x37c)]('\x20\x20Or\x20download\x20installer:')),console[bN(0x43b)](a0L['gray']('\x20\x20\x20\x20https://www.python.org/downloads/windows/'))):console[bN(0x43b)](a0L[bN(0x37c)](bN(0x2bd))),console['log'](),console['log'](a0L[bN(0x3ec)](bN(0x133))+a0L[bN(0x330)][bN(0x229)](bN(0x38a))),console[bN(0x43b)]();},Q=bM(0x2d2);let V='';try{const a6={};a6[bM(0x269)]='utf-8',a6['timeout']=0x1388,V=a0an(Q+bM(0x2e4),a6)[bM(0x2dd)]()[bM(0x42f)](bM(0x239),'');const a7=V[bM(0x37a)]('.')['map'](Number);if(a7[0x6c7*-0x5+0x210+0x1fd3]<0xb*0xbb+0xf6b+-0x1771||-0x4*-0x831+-0x3*-0x9a7+-0x3db6===a7[-0x1e4+-0x1*0x238b+0x256f*0x1]&&a7[0xb*0x16e+0x7d*0x9+-0x141e*0x1]<-0x110f+-0x1543+0x265c)return void L(bM(0x29e),V);0x67e*0x6+-0x1ef7*0x1+-0x7fa===a7[0xd0e+-0x2273*0x1+0x1*0x1565]&&a7[0x76e+0x1*0x2581+-0x2cee]<0x2025+0x7*-0x25a+-0xfa3?console['log'](a0L['green'](bM(0x1cf)+V)+a0L[bM(0x37c)](bM(0x340))):console[bM(0x43b)](a0L[bM(0x187)](bM(0x1cf)+V));}catch{return void L('missing');}try{const a8={};a8['stdio']=bM(0x3fd),a8[bM(0x31e)]=0x1388,(a0an(Q+bM(0x380),a8),console[bM(0x43b)](a0L[bM(0x187)](bM(0x342))));}catch{console['log'](a0L[bM(0x1f4)](bM(0x1da)));try{const a9={};a9[bM(0x367)]='ignore',a9[bM(0x31e)]=0x7530,(a0an(Q+bM(0x251),a9),console[bM(0x43b)](a0L[bM(0x187)]('\x20\x20✓\x20pip\x20installed')));}catch{a0aa('Could\x20not\x20install\x20pip\x20—\x20pip\x20is\x20not\x20installed\x20on\x20your\x20system.'),console[bM(0x43b)]();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import(bM(0x347)),{execFileSync:ac}=await import(bM(0x395)),ad=aa(),ae=ab(),af=bM(0x406)===process[bM(0x41f)]&&!ad,ag=bM(0x1fc)===process[bM(0x41f)];let ah=bM(0x356);if(af||ad)try{const {readFileSync:ak}=await import(bM(0x20d)),al=ak(bM(0x15c),bM(0x293)),am=(al[bM(0x24f)](/^ID="?([^"\n]+)/m)||[])[0x1624+0x4f*0x76+0xd*-0x481]||'',an=(al[bM(0x24f)](/^VERSION_ID="?([^"\n]+)/m)||[])[0x3*-0xac1+-0x71a+-0x2*-0x13af]||'';'ubuntu'===am?ah='Ubuntu\x20'+an+(ad?bM(0x438):''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?bM(0x438):''));}catch{}let ai=!(0x1577+-0x17db+0x265);if(ag)try{const ao={};ao[bM(0x367)]=bM(0x3fd),ao[bM(0x31e)]=0x7d0,(ac(bM(0x16f),[bM(0x255)],ao),ai=!(0xa16*-0x1+0x1*0x13be+-0x9a8));}catch{ai=!(-0x1*-0x80d+0x26b6+-0x5*0x95a);}const aj=ae?bM(0x1c0):bM(0x15d);return console[bM(0x43b)](a0L[bM(0x330)]['yellow'](bM(0x2fd))),console['log'](a0L['bold'][bM(0x1f4)]('\x20\x20'+aj)),console[bM(0x43b)](a0L[bM(0x330)][bM(0x1f4)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](),af||ad?(console[bM(0x43b)](a0L['white'](bM(0x208))+a0L[bM(0x229)](ah)),console[bM(0x43b)](a0L['gray'](bM(0x2b2))),console[bM(0x43b)](),console[bM(0x43b)](a0L['bold'][bM(0x3ec)](bM(0x1b2))),console['log'](),console[bM(0x43b)](a0L[bM(0x3ec)]('\x20\x20\x20\x201.\x20Type\x20')+a0L['bold']['cyan'](bM(0x17e))+a0L[bM(0x3ec)]('\x20and\x20press\x20Enter\x20to\x20leave\x20icoa')),console[bM(0x43b)](),console[bM(0x43b)](a0L['white'](bM(0x2ac))),console['log'](),console[bM(0x43b)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x330)][bM(0x229)](bM(0x43d))),console['log'](bM(0x314)+a0L[bM(0x330)][bM(0x229)]('sudo\x20apt\x20install\x20-y\x20python3-pip\x20python3-venv')),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x426))),console[bM(0x43b)](),console[bM(0x43b)](bM(0x314)+a0L[bM(0x330)][bM(0x229)](bM(0x1f1))),console[bM(0x43b)](bM(0x314)+a0L[bM(0x37c)](bM(0x1f6))+'\x20'+a0L[bM(0x330)]['cyan'](bM(0x38a)))):ag?(console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x208))+a0L[bM(0x229)](bM(0x2e8))),console['log'](),console[bM(0x43b)](a0L[bM(0x330)]['white'](bM(0x1b2))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x3ec)]('\x20\x20\x20\x201.\x20Type\x20')+a0L[bM(0x330)]['cyan'](bM(0x17e))+a0L[bM(0x3ec)](bM(0x2b4))),console[bM(0x43b)](),ai?(console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x1ad))),console[bM(0x43b)](),console[bM(0x43b)](bM(0x314)+a0L[bM(0x330)][bM(0x229)](bM(0x1d0))),console[bM(0x43b)](bM(0x314)+a0L['bold']['cyan'](bM(0x21a)))):(console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x388))+a0L['bold'][bM(0x1f4)](bM(0x255))+a0L['white']('):')),console['log'](),console[bM(0x43b)](bM(0x314)+a0L[bM(0x330)][bM(0x229)](bM(0x3e8))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x334))),console['log'](),console[bM(0x43b)](bM(0x314)+a0L[bM(0x330)][bM(0x229)]('brew\x20install\x20python@3.12'))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x278))),console[bM(0x43b)](),console[bM(0x43b)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x330)][bM(0x229)](bM(0x1f1))),console[bM(0x43b)](bM(0x314)+a0L[bM(0x37c)](bM(0x1f6))+'\x20'+a0L['bold'][bM(0x229)](bM(0x38a)))):ae?(console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x208))+a0L['cyan'](bM(0x181))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x330)][bM(0x1f4)]('\x20\x20ICOA\x20officially\x20supports\x20WSL2\x20on\x20Windows.')),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x13a))),console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20Paper\x20A\x20/\x20B\x20practical\x20questions\x20need\x20Unix\x20tooling\x20that\x20runs')),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x318))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x330)][bM(0x3ec)](bM(0x358))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x23a))+a0L[bM(0x330)][bM(0x229)](bM(0x17e))+a0L[bM(0x3ec)](bM(0x2b4))),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x2c9))),console[bM(0x43b)](),console[bM(0x43b)]('\x20\x20\x20\x20\x20\x20\x20'+a0L['bold'][bM(0x229)](bM(0x3f6))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x15f))),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x248))),console[bM(0x43b)](),console[bM(0x43b)](bM(0x314)+a0L[bM(0x330)][bM(0x229)]('curl\x20-fsSL\x20https://deb.nodesource.com/setup_22.x\x20|\x20sudo\x20-E\x20bash\x20-')),console[bM(0x43b)](bM(0x314)+a0L['bold']['cyan'](bM(0x3ee))),console[bM(0x43b)](bM(0x314)+a0L[bM(0x330)]['cyan'](bM(0x2f7))),console[bM(0x43b)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x330)][bM(0x229)](bM(0x1f1))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x20b))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x23a))+a0L['bold'][bM(0x229)](bM(0x17e))+a0L['white'](bM(0x2b4))),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x2f2))),console[bM(0x43b)](),console[bM(0x43b)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x330)][bM(0x229)](bM(0x3ff))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20\x20\x20\x20\x20\x20(Or\x20download\x20from\x20python.org\x20and\x20CHECK\x20both\x20\x22Add\x20Python\x20to')),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x3e1))),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x405))),console[bM(0x43b)](),console[bM(0x43b)](bM(0x314)+a0L[bM(0x330)]['cyan'](bM(0x1f1))),console[bM(0x43b)](bM(0x314)+a0L[bM(0x37c)](bM(0x1f6))+'\x20'+a0L['bold'][bM(0x229)](bM(0x38a)))):(console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x408))+a0L[bM(0x229)](process[bM(0x41f)])+a0L[bM(0x3ec)](')')),console[bM(0x43b)](),console['log'](a0L['gray']('\x20\x20Reinstall\x20Python\x203.12\x20with\x20pip\x20bundled,\x20then\x20retry:')),console[bM(0x43b)](bM(0x314)+a0L[bM(0x330)][bM(0x229)]('icoa')),console[bM(0x43b)](bM(0x314)+a0L[bM(0x37c)](bM(0x1f6))+'\x20'+a0L[bM(0x330)]['cyan'](bM(0x38a)))),console[bM(0x43b)](),console['log'](a0L[bM(0x37c)](bM(0x223))),void console['log']();}}const W={};W[bM(0x1eb)]=bM(0x412),W['pycryptodome']=bM(0x363),W[bM(0x43a)]='z3',W[bM(0x303)]=bM(0x21d),W[bM(0x3b1)]=bM(0x1aa),W['ROPgadget']=bM(0x3c2);const X=[bM(0x3b1),bM(0x419),bM(0x2cd),bM(0x1eb),bM(0x316),bM(0x303),bM(0x3eb),'sympy',bM(0x43a),bM(0x2e7),bM(0x404),bM(0x3db),bM(0x1db)],Y=W;console['log'](),console['log'](a0L[bM(0x3ec)](bM(0x1e2)+X[bM(0x401)]+'\x20packages...')),console[bM(0x43b)]();let Z='';try{const ap={};ap['encoding']=bM(0x293),ap[bM(0x31e)]=0x2710,a0an(Q+'\x20-m\x20pip\x20install\x20--dry-run\x20pip\x202>&1',ap);}catch(aq){const ar=String(aq?.['stdout']||aq?.[bM(0x1fd)]||aq?.[bM(0x349)]||'');/externally-managed-environment|break-system-packages/i[bM(0x3a0)](ar)&&(Z='--user\x20--break-system-packages',console[bM(0x43b)](a0L[bM(0x1f4)]('\x20\x20ℹ\x20PEP\x20668\x20detected\x20—\x20using\x20--user\x20install\x20(no\x20sudo\x20needed)')),console['log']());}const a0=V[bM(0x37a)]('.')[bM(0x3b4)](Number);0x2284+-0x43*0x4c+-0xe9d===a0[0x2db*-0xa+0x117b*-0x1+0x2e09]&&a0[0x470*0x6+0x1618+-0x1*0x30b7]>=0x11f7+0x1e38+-0x3022&&(console[bM(0x43b)](a0L['yellow']('\x20\x20⚠\x20Python\x20'+V+bM(0x285))),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x1c7))),console['log'](a0L[bM(0x37c)](bM(0x2c4))),bM(0x406)===process[bM(0x41f)]&&(console[bM(0x43b)](a0L['green'](bM(0x3ab))),console[bM(0x43b)](a0L['green'](bM(0x442)))),console[bM(0x43b)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+bM(0x2d5)+as+'\x22\x20'+Z+bM(0x17d),{'encoding':bM(0x293),'timeout':0x2bf20,'stdio':bM(0x192)}),a0an(Q+'\x20-c\x20\x22import\x20'+(Y[as]||as)+'\x22',{'stdio':'ignore','timeout':0x2710});let at='';try{const au=a0an(Q+bM(0x14b)+as+'\x22\x202>/dev/null',{'encoding':'utf-8','timeout':0x1388})['match'](/^Version:\s*(.+)$/m);au&&(at=au[0x1688+0x4c9+-0x1b50]['trim']());}catch{}console['log'](a0L[bM(0x187)]('\x20\x20✓\x20'+as)+(at?a0L[bM(0x37c)]('\x20('+at+')'):'')),a1[bM(0x243)](at?as+'=='+at:as);}catch(av){const aw=String(av?.['stdout']||av?.[bM(0x1fd)]||av?.[bM(0x349)]||'')[bM(0x220)](-(0x3*-0x6ed+-0x23bc+-0x3a13*-0x1)),ax=aw[bM(0x37a)]('\x0a')[bM(0x1e7)](ay=>ay['trim']())[bM(0x220)](-(0x1117+-0xd60+-0x3b5))['join'](bM(0x38c))[bM(0x220)](0x5*0x101+0x3*0x331+-0xe98,0x13be+0x9*0x450+0x3a16*-0x1);console[bM(0x43b)](a0L[bM(0x407)](bM(0x435)+as)+a0L[bM(0x37c)]('\x20\x20'+ax)),a2[bM(0x243)]({'pkg':as,'error':ax}),a3||(a3=aw);}-0x1960+0x24a1*0x1+-0xb41===a1[bM(0x401)]&&a3&&(console[bM(0x43b)](),console['log'](a0L[bM(0x1f4)](bM(0x337))),console[bM(0x43b)](a0L['gray']('\x20\x20'+a3['split']('\x0a')[bM(0x220)](-(0x26e2+-0xd4*0x1+0x4*-0x982))[bM(0x31d)]('\x0a\x20\x20')))),a0al({'completedAt':new Date()[bM(0x3d3)](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2[bM(0x3b4)](ay=>ay[bM(0x381)])}),console[bM(0x43b)](),-0x8cf*-0x1+-0x747*0x5+0x1b94===a2['length']?a0a9(bM(0x3a1)+X[bM(0x401)]+bM(0x3f1)):-0xf1*0x11+0x1*0x215+0xdec===a1[bM(0x401)]?(a0aa(bM(0x3ae)+X[bM(0x401)]+bM(0x3f1)),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x1f4)](bM(0x353))),0x3ce*-0xa+0x2175+-0x13*-0x3e===a0[0x407+-0x1e72+0x1a6b]&&a0[0x663*0x1+0xea3+-0x1505]>=-0xc73+-0x4ff*-0x7+-0x1679?(console[bM(0x43b)](a0L['gray'](bM(0x427))),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x3dc)))):(console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20\x20\x20•\x20Check\x20you\x20have\x20internet\x20(pip.pypa.io\x20must\x20be\x20reachable)')),console[bM(0x43b)](a0L['gray']('\x20\x20\x20\x20•\x20Try:\x20')+a0L[bM(0x229)](Q+bM(0x3f2))+a0L[bM(0x37c)](bM(0x1b5))),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x1e6)))),console[bM(0x43b)](),console[bM(0x43b)](a0L['white'](bM(0x2ed))+a0L['bold']['cyan']('exam\x20setup'))):a0ab(a1[bM(0x401)]+'/'+X[bM(0x401)]+bM(0x1d1)+a2[bM(0x401)]+bM(0x224)+a2[bM(0x3b4)](ay=>ay[bM(0x381)])['join'](',\x20')),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x229)](bM(0x1ee))),console[bM(0x43b)](a0L[bM(0x330)]['white']('\x20\x20How\x20to\x20use\x20Python\x20in\x20ICOA\x20CLI')),console['log'](a0L['cyan'](bM(0x1ee))),console[bM(0x43b)](),console[bM(0x43b)](a0L[bM(0x330)][bM(0x1f4)]('\x20\x20Method\x201:\x20One-liner')+a0L[bM(0x37c)](bM(0x188))),console[bM(0x43b)](a0L[bM(0x3ec)]('\x20\x20Just\x20add\x20!\x20before\x20the\x20command:')),console[bM(0x43b)](a0L['green'](bM(0x261))),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x3c9))),console[bM(0x43b)](),console['log'](a0L[bM(0x330)][bM(0x1f4)](bM(0x1b7))+a0L[bM(0x37c)]('\x20(explore\x20&\x20experiment)')),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x1cc))),console[bM(0x43b)](a0L[bM(0x187)](bM(0x1e8))),console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20\x20\x20>>>\x20from\x20Crypto.Cipher\x20import\x20AES')),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x19f))),console[bM(0x43b)](a0L['gray']('\x20\x20\x20\x20>>>\x20cipher\x20=\x20AES.new(key,\x20AES.MODE_CBC,\x20iv)')),console['log'](a0L[bM(0x37c)]('\x20\x20\x20\x20>>>\x20print(cipher.decrypt(data))')),console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20\x20\x20>>>\x20exit()')),console[bM(0x43b)](),console['log'](a0L['bold'][bM(0x1f4)](bM(0x18e))+a0L[bM(0x37c)](bM(0x260))),console[bM(0x43b)](a0L[bM(0x3ec)](bM(0x218))),console[bM(0x43b)](a0L[bM(0x187)](bM(0x31f))),console['log'](a0L[bM(0x37c)](bM(0x160))),console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20\x20\x20ct\x20=\x20bytes.fromhex(\x220a2b0e1c...\x22)')),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x39d))),console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20\x20\x20print(xor(ct,\x20key).decode())')),console[bM(0x43b)](a0L['green'](bM(0x2e2))),console[bM(0x43b)](a0L[bM(0x187)](bM(0x36f))),console[bM(0x43b)](),console['log'](a0L[bM(0x330)][bM(0x1f4)](bM(0x3c4))),console[bM(0x43b)](a0L['white'](bM(0x13c))+a0L[bM(0x330)][bM(0x229)](bM(0x375))+a0L[bM(0x3ec)]('\x20to\x20ask\x20AI\x20for\x20help:')),console[bM(0x43b)](a0L[bM(0x37c)]('\x20\x20\x20\x20\x22How\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console[bM(0x43b)](a0L[bM(0x37c)](bM(0x43c))),console['log'](a0L['gray'](bM(0x423))),console[bM(0x43b)](a0L[bM(0x229)](bM(0x1ee))),console[bM(0x43b)](),console[bM(0x43b)](a0L['white'](bM(0x146))+a0L[bM(0x330)][bM(0x229)](bM(0x1e0))),console['log'](a0L[bM(0x37c)](bM(0x175))+a0L[bM(0x330)][bM(0x229)]('back')+a0L['gray']('\x20to\x20return\x20to\x20the\x20main\x20menu.')),console[bM(0x43b)]();}),B[be(0x38f)](()=>{const bO=be;a0a8(bO(0x3e6));const F=a0Y();if(F){a0ae(bO(0x329)+F[bO(0x1bc)][bO(0x1d5)]),O();const J=Object['keys'](F[bO(0x199)])['length'];return a0af(bO(0x3b8),J+'/'+F['session'][bO(0x372)]+bO(0x3ce)),console['log'](),void console['log'](a0L['gray']('\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[bO(0x43b)](),a0ae(bO(0x422)),console['log'](),-0xa47+-0x1b*0xaf+-0x6*-0x4ca===G[bO(0x338)]?(console['log'](a0L[bO(0x1f4)](bO(0x3c6))+a0L[bO(0x1f4)](bO(0x16b))),console[bO(0x43b)](a0L['gray']('\x20\x20\x20\x20→\x20')+a0L[bO(0x330)]['cyan'](bO(0x308)))):(console['log'](a0L['green']('\x20\x20●\x20')+a0L['green'](bO(0x212)+G[bO(0x338)]+'\x20attempt'+(-0x883*-0x1+-0x12ae+0xa2c!==G[bO(0x338)]?'s':'')+')')),H?(console[bO(0x43b)](a0L['green'](bO(0x29d))+a0L[bO(0x187)](bO(0x417))),console[bO(0x43b)](a0L[bO(0x1f4)](bO(0x3c6))+a0L[bO(0x1f4)](bO(0x2b6))),console[bO(0x43b)](a0L['gray'](bO(0x42a))+a0L[bO(0x330)][bO(0x229)](bO(0x1e0)))):(console[bO(0x43b)](a0L['yellow'](bO(0x3c6))+a0L[bO(0x1f4)](bO(0x167))),console['log'](a0L[bO(0x37c)](bO(0x42a))+a0L[bO(0x330)][bO(0x229)](bO(0x38a))))),console[bO(0x43b)]();});}
|
|
1
|
+
(function(z,B){const b0=a0B,F=z();while(!![]){try{const G=-parseInt(b0(0x177))/(0x10e*-0x25+-0x1fd8+0x46df)+parseInt(b0(0x258))/(0xcc7*-0x2+-0x4c1*-0x3+-0x1*-0xb4d)*(-parseInt(b0(0x1cd))/(-0x44*-0x85+0x1828+-0x87f*0x7))+-parseInt(b0(0x2b2))/(-0x1*0x18ad+0x185*0x2+0x15a7)+-parseInt(b0(0x34f))/(-0xa4d+-0x474*0x5+0x2096)+parseInt(b0(0x19e))/(-0x1*0x4fd+0xd8+0x42b)*(parseInt(b0(0x30a))/(0x1*0x1c5b+-0x15d9+0x229*-0x3))+parseInt(b0(0x2a8))/(-0x2521+0x6f5*0x1+-0x78d*-0x4)*(-parseInt(b0(0x16d))/(0x1*0xc7f+0x505+-0x117b*0x1))+parseInt(b0(0x374))/(0x1*-0x1e7+-0x5cc*0x2+-0x15*-0xa5);if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,-0x526*0xef+-0x74576+0x14314d));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';const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const b1=a0B,G=a0W(),H={};H[b1(0x1a8)]=b1(0x168),fetch(b1(0x2a4),{'method':'POST','headers':H,'body':JSON[b1(0x23a)]({'type':B,'lang':G[b1(0x65)]||'en','timestamp':new Date()['toISOString'](),...F}),'signal':AbortSignal['timeout'](-0x21*-0xe3+-0x10af*0x2+0x17a3)})[b1(0x247)](()=>{});}function N(z,B){const b2=a0B,F=Math['round'](z/(-0x25b*-0xd+0x1cb9+-0x157*0x2c)*(0x2*0x6a2+0x1413+-0x2139)),G=0x1964+-0x5*0x37d+-0x7d5-F,H=a0L[b2(0x1cb)]('█'['repeat'](F))+a0L[b2(0x264)]('░'['repeat'](G)),J=String(z)[b2(0x109)](0x133*-0x16+-0x540+0x1fa5)+'%';process['stdout']['write']('\x0d\x1b[2K\x20\x20'+H+'\x20'+J+'\x20\x20'+a0L[b2(0x264)](B));}function M(){const b3=a0B,z=a0W();return z[b3(0x13d)]&&z[b3(0x16a)]?new a0V(z[b3(0x13d)],z[b3(0x16a)]):(a0aa('Not\x20connected.\x20Run:\x20join\x20<url>'),null);}function O(){const b4=a0B,z=a0a1();z&&(new Date()<z?a0af(b4(0x219),a0L[b4(0x1ef)]['bold'](a0ah(z))):a0af(b4(0x20c),a0L[b4(0x22b)][b4(0x32e)]('EXPIRED')));}function j(z,B){const b5=a0B;return Array[b5(0x26f)](z[b5(0x27e)])&&z[b5(0x27e)]['includes'](B);}function D(z,B){const b6=a0B,F=Array[b6(0x26f)](z[b6(0x27e)])?[...z['bookmarks']]:[],G=F[b6(0x12f)](B);return G>=0x1075+-0xa15+-0x3*0x220?(F[b6(0x13f)](G,-0x2290+0x5*0x310+0x1341),z['bookmarks']=F,a0Z(z),!(-0xcfe+0x17b4+-0xab5*0x1)):(F[b6(0x26a)](B),F['sort']((H,J)=>H-J),z[b6(0x27e)]=F,a0Z(z),!(0x1017*-0x2+0x4*0x365+-0x1*-0x129a));}function a0B(a,b){a=a-(-0x12b9*-0x1+0x241a+0x366e*-0x1);const c=a0z();let d=c[a];if(a0B['vBhOQx']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=-0x2568+-0x21*-0xe3+-0x1a1*-0x5,o,p,q=0x3d*-0x71+0x1e9f+-0x3b2;p=i['charAt'](q++);~p&&(o=n%(0x73*0x19+0x4*-0x67b+0xeb5)?o*(-0x1121+0x1964+-0x1*0x803)+p:p,n++%(-0x1a4c+0x133*-0x16+0x34b2))?l+=String['fromCharCode'](-0xa1+0x1075+-0xed5&o>>(-(0x1ff5+-0x3b*0x13+0x1*-0x1b92)*n&-0x4a*0x14+-0xcfe+-0x12cc*-0x1)):0x1017*-0x2+0x4*0x365+-0x1*-0x129a){p=j['indexOf'](p);}for(let r=-0xb42*-0x3+-0x1*0x156d+0xc59*-0x1,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0xeab+-0x159a+0x2455))['slice'](-(-0x231f+0x3cd+0x1f54));}return decodeURIComponent(m);};a0B['LrRVsT']=e,a0B['lVcOmE']={},a0B['vBhOQx']=!![];}const f=c[-0x281+0x8b2+0x1*-0x631],g=a+f,h=a0B['lVcOmE'][g];return!h?(d=a0B['LrRVsT'](d),a0B['lVcOmE'][g]=d):d=h,d;}function a0z(){const bP=['tMfTzq','icaGicaGicaGkgn0zJrHAsK','ihrVihnLzsb5B3vYihjLC3vSDhmH','ic8G','uhjVz3jLC3m','uMv2Awv3oIa','uxvLC3rPB25Z','ic1TigvUC3vYzxbPCcaTlxvWz3jHzgu','icbuAw1LoIaGica','Dwj1BNr1','qwXTB3n0ihjLywr5lI4U','BwfW','C3vIBwL0ieLdt0f7lI4UFq','zwDNnq','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbsq','u3vIBwL0igzHAwXLza','x3n1yM1PDenVBMzPCM1Lza','icbdB3vSzcbUB3qGCMvHy2GGC2vYDMvYigzVCIbOzwXWlIbdAgvJAYb5B3vYignVBM5Ly3rPB24U','ic1TihbPCcbPBNn0ywXSici','icaGign0zJrHAq','q2XVC2uG4OcuihDLj2XSihjLDMLZAxqGDgHPCYbVBMuU','BwfYAYbBBL0','4O+XifrPBwuGCMvTywLUAw5NoG','yMfJAW','icbbCMnOic8GtwfUAMfYBZO','zxHHBsa8Dg9Rzw4+','CMvNzxG','icaGigv4yw0GC3vIBwL0','zwXPBwLUyxrL','Cgn0','icbcEsbJyxrLz29YEq','icaGimk3ia','zxHHBuLK','BgLZDcbBy291BNrYEv0','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','ieLdt0f7Ew91CL9MBgfNFq','C2nVCMu','CMvWzwf0','vwj1BNr1ia','zwXPBwLUyxrLzca','icaGutm54OctndaGkdiGCxvLC3rPB25Zimk3ide2ihb0CYbLywnOiokaLcbOAwDOzxn0ihzHBhvLisK','C3vIBwL0DgvK','l2fWAs9Py29Hl2v4yw1ZlW','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','icaGsg93ihrVihDVCMS','ihrVihn1yM1PDcbMB3iGz3jHzgLUzY4','Dg90ywXty29Yzq','DgLTzw91Da','C3vIBwL0DgvKqxq','icbnzxrOB2qGmJOGsw50zxjHy3rPDMuGuhL0Ag9U','icbizwXWihvZzwq6ia','ChLJCNLWDg9KB21L','rgvTBYbszxrYEsdIGjqGv3jVBMCGuxvLC3rPB25Zie9UBhK','qxzHAwXHyMXLiev4yw1ZicG','CgLWzq','ugXLyxnLihbYB3zPzguGEw91CIbMBgfNoIbLEgfTigfUC3DLCIa8BJ4GsunpqxT5B3vYx2zSywD9','icHJB21WBgv4ihnVBhv0Aw9UCYK','icaOzgLMzMvYzw50igzYB20GDgHLig9Uzsb5B3uGDhLWzwqP','Dg9mB3DLCKnHC2u','ugvYDq','khnLCNzLCI1HDxrOB3jPDgf0AxzLkq','vxPIzwTPC3rHBG','icbqBgvHC2uGCMuTDhLWztOG','icbozxH0ihn0zxa6ia','y3rMngfPpG','icbtDgfYDcbHifb5DgHVBIbZzxnZAw9Ulcb0ExbLignVBw1HBMrZig9UzsbIEsbVBMu6','u3rHDhvZ','zgvZy3jPChrPB24','ihbHy2THz2vZigLUC3rHBgXLzc4','sunpqsbezw1Viev4yw0G4OcuiezYzwuGuhjHy3rPy2u','n1PjAunttq','y29UzMLYBq','y29TCgXLDgvKqxq','vw5PDgvKieTPBMDKB20','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','icaGicaGicaOBM93lcb+nsbTAw4P','ihrVigXLyxzLigLJB2e','BMfTzq','u2LUz2fWB3jL','icbezxrLy3rLzdOG','Dgv4Da','icbbBNn3zxjZoIa','C19HAtrJDgy','icaGiokCKYbZyxzLza','igzHAwXLzdOG','yw5ZD2vYx3n1yM1PDhrLza','Aw5JBhvKzxm','vxnLicjLEgfTihjLDMLLDYiGDg8Gy2HLy2SGChjVz3jLC3mGB3iGiMv4yw0GC3vIBwL0iIb0BYbZDwjTAxqU','icdIMQaGiezjtKfmifnvqK1ju1njt04G4OcuihbSzwfZzsbJB25MAxjT','icaGicaGicHszwjVB3qGAwyGv2LUzg93CYbHC2TZlcb0AgvUig9Wzw4GDgHLifvIDw50Dsb0zxjTAw5HBc4P','rMfPBgvKihrVigXVywqGCMvZDwX0','khbYzxnZigfUEsbRzxKGDg8GC2TPCcK','C2nHChK','B25Jzq','y291BNrYEq','vgHHAwXHBMq','icaOugfWzxiGqYb0B2TLBNmGC2TPCcb0AgLZigDHDguG4OcuifbHCgvYiemGAxmGtunrlw9UBhKP','rw52AxjVBM1LBNqGywXYzwfKEsbZzxqGDxa','icbMyxiGBw9YzsbZBw9VDgHSEsbPBNnPzguGv1nmmIbvyNvUDhuU','icaGiokaOIbdAgvJAYb5B3uGAgf2zsbPBNrLCM5LDcaOCgLWlNb5CgeUAw8GBxvZDcbIzsbYzwfJAgfIBguP','vg90ywW','ifSGxsaG','lcbUB3qGEw91CIb0zwfTBwf0zq','icbszwnVBw1LBMrLzcbWyxrOiokaLcbZD2L0y2GGDg8Gv1nmmIaOB25LlxrPBwuSih41ig1PBIK6','icHr','u29SAwqGCgLJAY4','yM9Sza','y2f0','quXm','icaGicbiAw50CYbbl0iVqZOGicaG','icbuAxa6ihn3AxrJAcb0BYb5B3vYigXHBMD1ywDLihDPDgG6igXHBMCG','AhrWu3vIBwL0','y2XLyxi','zxHHBsbXide','icaGiezHAwXLzdOG','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','icboB3rLoIb5B3uGDhLWzwqGysbKAwzMzxjLBNqGDg9Rzw4UievHy2GGzxHHBsb0B2TLBIbPCYbIB3vUzcb0BW','icaGicbLEgfTigXPC3qGueu','icaGicaGicbLBNrLCIbbstrdveyGy2HHDcbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','tMLJzsbVBMuU','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbssaYmdi2','icaGDgHLig9Yz2fUAxPLCIbPBIb5B3vYignVDw50CNKU','v2LUzg93CYbUyxrPDMuGkfbVD2vYu2HLBgWGlYbJBwqP','twfSyxLZAwe','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','zw50CMLLCW','CxvLC3rPB25dB3vUDa','ig5VDcbMB3vUzcaOms0','icaGiefjoIaGicaGidi1sYbbstrdveyGkYaYnuSGq1rgnefjihrVA2vUCW','icaGvgHLigzPBMfSihnLy3rPB24GzMXPChmGDgHLihnJCMLWDdOGAw5ZDgvHzcbVzG','y2f0zwDVCNLtDgf0CW','icbdDxjYzw50BhKGzMXHz2DLzdOG','icdWN5kHie9WDgLVBIa','tK9uifbbu1nfra','icbxAgf0ig5LEhq','zgvTBY1LBNrLCG','z3jHzgLUzW','zwDNoq','otGYotqWA01YwNbZ','icaGicaGicHpCIbKB3DUBg9HzcbMCM9Tihb5DgHVBI5VCMCGyw5KienirunligjVDgGGiKfKzcbqExrOB24GDg8','AgLUDcbHic8GyIaVigm','r28GDg8GBMv4DcbXDwvZDgLVBG','l2fUC3DLCG','ihrVignVBMzPCM0Sig9YigfUExrOAw5NigvSC2uGDg8Gy2fUy2vSoG','Bwf0y2G','AxnuvfK','tM8GDgLTzsbSAw1PDa','zMfPBgvKugfJA2fNzxm','ihjLBwfPBMLUzYK','zxHHBvDHExngB3vUza','y2HHBMDLzcbMCM9Tia','icaGicfJyxqGpdWGj0vprICGpIbZB2X2zs5WEq','D2HPy2G','uM9VBsb0BYbNCM93oIaGia','C3bSAxq','lIboBYb0Aw1LCI4GrNjLzsbWCMfJDgLJzs4','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','igfUC3DLCMvKiokaLcbHy2nPzgvUDgfSihn1yM1PDcbNDwfYza','icbzB3uGy2fUig5VDYbLBNrLCIbHig5LDYb0B2TLBIb3AxrOia','AwnVys1JBgK','icaGigv4yw0Gyw5ZD2vYidXUpIbjq09bEY4UlN0','zwDNmte','icaGDxnPBMCGquKSihLVDsDYzsa','DxrMltG','icaGzMLUAxnOigfUzcbZDwjTAxq','zw1VAMK','Aw5ZDgfSBgvKugfJA2fNzxm','C3rHCNrLzef0','q29UBMvJDgLUzYb0BYbLEgfTihnLCNzLCI4UlG','icGZmcbnq1eGkYaXmcbWCMfJDgLJywWP','ihrVigfZAYbbssbMB3iGAgvSCdO','icaGicaGicbLBNrLCIbdvey0quKGy2HHDcdIGjqGyxr0ywnRihrOzsbbssb0yxjNzxqGkhjLy29TBwvUzgvKkq','zxHHBsbKzw1V','C3vIC3rYAw5N','qw5ZD2vYzwq6ica','mJaXndy4mtbervfvBMG','icaGidiUieLUifbVD2vYu2HLBgWSigLUC3rHBgWGuhL0Ag9UihDPDgGGCgLWoG','zMfPBa','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','icdIMQaGiduGBwLUDxrLCYbYzw1HAw5PBMC','icbxCML0zsbHic5WEsbMAwXLlcb0AgvUihj1BIbPDdO','icbzB3uGC3rPBgWGAgf2zsa','C3vKBYbHChqGAw5ZDgfSBcaTEsbUB2rLANmGChL0Ag9UmY1WAxaGChL0Ag9UmY12zw52','BgfUz3vHz2u','icaGigjHy2S','icaGigjYzxCGAw5ZDgfSBcbWExrOB25amY4XmG','icaGifLVDsbJyw4GBM93ihvZztOG','l2v0yY9VCY1YzwXLyxnL','zxHHBsbTyxjRia','CxvLC3rPB24','icaGieHPBNrZoIaGieeOnsKGqIGZksbdkdePiokaLcbWCMfJDgLJywWGB25SEq','icbzB3vYihj1BG','icaGiokaOIbpBIblywXPl1vIDw50DsaYmIS6ig1Pz2H0ig5LzwqGChL0Ag9UmY4XmI1KzxyGkYbIDwLSzc1LC3nLBNrPywW','ihvUyw5ZD2vYzwq6ia','zNjVBq','zxHPDa','lI4U','DMXH','icaGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3ic0GsNvSidiSidiWmJy','l2jPBI9IyxnOic1JiciKkgn1CMWGlwzZu0WGAhr0Chm6lY9YyxCUz2L0AhvIDxnLCMnVBNrLBNqUy29Tl0HVBwvICMv3l2LUC3rHBgWVsevbrc9PBNn0ywXSlNnOksi','zxHHBsbXia','zxHHBsbUzxH0','BwLU','zgvTBY1LEgfT','icaGicbLEgfTigXPC3qGq04','ChDU','icaGigv4yw0GCsaXlI4','CMfUzg9T','icaGicbuAguGDg9Rzw4GAxrZzwXMigLZie5pvcbYzxzVA2vKihnLCNzLCI1ZAwrLlIbjzIb5B3vYihnLC3nPB24GAxm','ue9tva','zxHHBsbWCMv2','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqUiev4yw0Gy2XLyxjLzc4','icdIMQaGuhL0Ag9Uia','C3rKAw4','icbiB3CGDg8GDxnLifb5DgHVBIbPBIbjq09bienmsq','icaGicaGicaGicaGicaGicaGzxmGWRCGEMGGWRCGAMeGWRCGA28GWRCGyxiGWRCGzNiGWRCGChq','y3j5ChrVz3jHCgH5','icaGigfPngn0zG','rMfPBgvKihrVigXVywqGzxHHBxm','BwfJt1m','ixb5DgHVBJmGlI4U','C2HVD25xyxjUAw5NCW','Bg9N','igfUC3DLCMvK','u3vIBwL0igv4yw0GzM9YigDYywrPBMCGkhvZztOGiMv4yw0GC3vIBwL0ignVBMzPCM0IigzVCIbYzwfSigv4yw1Zkq','BwLZC2LUzW','zxHHBv9Pza','iokaLcbZzwuGzNvSBcbLCNjVCG','igzVCIb0AgLZihnLy3rPB24','y2XVC2u','Dw5KzxjSAw5L','AhrWtMf2','ic1TihbPCcbZAg93ici','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIb5B3vYignVDw50CNKGEwv0lG','icaGicbqCM9TChqGAw5Qzwn0Aw9Uimk3igfKDMvYC2fYAwfSigfUywX5C2LZimk3iefjigf1zgL0Aw5N','u2H1zMzSAw5Nig9WDgLVBNmUlI4','zxHHBsbYzxn1BhqG','icaGicbfBNrLCIbJAgf0oIaGicaG','icdIJ7eGifrPBwuGy2HLy2SGia','rNjHBMnL','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','CMvZDwX0ifTPzf0','rwD5Chq','icbfEgfTCgXLoIa','ywn0Aw9U','u3rYB25NzxiGAgvYztOGia','ChjVBxb0','icaGiokgKIa','zxHHBsbYzxzPzxC','wYbD','igzSywDNzwqGzM9YihjLDMLLDY4','C2vZC2LVBG','icbqCMvZCYbfBNrLCIb0BYbIzwDPBI4UlIa','t3rOzxi','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','Dg9tDhjPBMC','ihWG','y29YCMvJDa','icaGrwXHChnLzdOG','y3vYBcaTzNnttcbODhrWCZOVl2rLyI5UB2rLC291CMnLlMnVBs9Zzxr1Cf8YmI54ihWGC3vKBYaTrsbIyxnOic0','iIbPCYbPBIbWCM9NCMvZCY4','icbozwvKig1VCMu/ifr5Cgu6ia','BwvZC2fNzq','C3rVCa','icbzB3vYigjLC3q6ia','Cg9PBNrZ','D3nSic0TAw5ZDgfSBcaTzcbvyNvUDhuTmJiUmdq','icaGvgHLC2uGyxjLihrOzsbOyxjKzxn0ihf1zxn0Aw9UCY4Gv29YDgGGmJeLig9MihrVDgfSihnJB3jLlG','icaG','zwDNmtm','q291BgqGBM90igLUC3rHBgWGCgLWiokaLcbWAxaGAxmGBM90igLUC3rHBgXLzcbVBIb5B3vYihn5C3rLBs4','oJaW','iefjihn5C3rLBxmU','icaGicjtAg93ig1LigHVDYb0BYb1C2uGC3rYDwn0lNvUCgfJAYi','ihDHCYbUB3qGzMXHz2DLzc4','zxHHBsbUyxrPB25Z','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZlW','icbdB250Aw51zsb0AgLZigv4yw06','mJuSmdaW','q2HPBMe','icbcB251CYbOzwXWigfSCMvHzhKGDw5SB2nRzwqU','q2HLy2SGEw91CIb0B2TLBIbVCIbJB250ywn0ihLVDxiGChjVy3rVCI4','zwDNmW','icbxCMfWihvWigfUzcbZDwjTAxq6ia','AhrWtwfYAW','CMvWBgfJzq','ueLm','BM9KztPJAgLSzf9WCM9JzxnZ','icbtDgfYDdOGzxHHBsbZDgfYDca8Awq+','x2HLBhbvC2vK','uMv2Awv3igfSBcbHBNn3zxjZigjLzM9YzsbZDwjTAxr0Aw5N','CdeW','icdILRGG','icaGihDPBMDLDcbPBNn0ywXSifb5DgHVBI5qExrOB24UmY4XmG','AgvSCa','icbVCIaG','ig1PBIbYzw1HAw5PBMC','C2XPy2u','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','zwDNmtu','yw5ZD2vYzwq','xsaG','zxHHBvDHExntAgvSBa','ica+ia','icaGicfWExrOB24Z','vhvYA2v5','icbfEhbLy3rLzdOGms0Yig1PBNv0zxmGWRCGFJe1me1cigrPC2S','r2vYBwfUEq','ls11C2vYic0TyNjLywSTC3LZDgvTlxbHy2THz2vZ','lI4VBgLIl2v4yw0TC3rHDguUANm','CM9Wz2fKz2v0','CMvTB3zLtgLZDgvUzxi','cGPgDwXSigf0DgfJAgvKigrHDge6cG','igfUC3DLCNmU','zgvTBW','sw4GuhjVz3jLC3m6ia','yNjLDW','icaGWRCGmtuSmdaWkYbJB25JDxjYzw50ihbHCNrPy2LWyw50CW','zxHHBsbKzw1VlxjLDhj5','icbdAgvJAYbLEgfTCYbMB3iGEw91CIbJB3vUDhj5oG','Axnoyu4','icaG4PYticbtDwjTAxnZAw9UigfJy2vWDgvKiokaLcbIyxnLBgLUzsbTzxq','AwnVyq','vMLLDYbHBgWGCgfYDgLJAxbHDgLUzYbJB3vUDhjPzxm','r3jHzgLUzY4UlG','icbqyxbLCIbbic8GqIbWCMfJDgLJywWGCxvLC3rPB25Zig5LzwqGvw5PEcb0B29SAw5NihrOyxqGCNvUCW','icdINjmGCgLWigf2ywLSywjSzq','icboyxrPB25HBcbsB3vUzcaXifnLBgvJDgLVBIbLEgfTCYbHCMuGyMvPBMCGChjLCgfYzwqU','ig9YigXLyxzLihDPDgGG','zMXVB3i','BMv4DeXHyMvS','icaOEwvZiokaLcbSAxrLCMfSBhKGDhLWzsb0AguGBNvTyMvYia','lI4VBgLIl2rLBw8TzxHHBs5QCW','yNm0','icdIL48G','icaGieXHBMC6icaGia','ihf1zxn0Aw9U','icaGidmUie9Wzw4GysborvCGug93zxjtAgvSBcb3Aw5KB3CGkfbbveGGCMvMCMvZAcKSihrOzw46','zxHHBsbZDwjTAxq','ic1TihbPCcbPBNn0ywXSihb3BNrVB2XZ','icbqCMfJDgLJAw5Nia','zMLUzeLUzgv4','C3vKBYbHChqGAw5ZDgfSBcaTEsbWExrOB24ZlxbPCcbWExrOB24ZlxzLBNy','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','zgvHzgXPBMvtzxj2zxjnCW','icaGievprG','CdmW','CgfKu3rHCNq','rxHHBsbZDgfYDgvKisbuAw1LCIbPCYbYDw5UAw5NlG','igfUC3DLCMvKkq','AhrWqMfJAW','zgvTBY1MCMvL','BM93','u3rHCNrPBMCGDgLTzxiUlI4','icaGicdILQmG','rxHHBsbfBNzPCM9UBwvUDcbtzxr1Ca','icbuBYbNBYbIywnRoIaG','icdIL4SG','AwnVyt4','icaGvgLTzsbZDgLSBcbJB3vUDgLUzYbKB3DUlIbcDwrNzxqGFJiGBwLUihbLCIbXDwvZDgLVBI4','z2v0uMvZDwX0','EJmTC29SDMvY','rMXHzYbHihf1zxn0Aw9UihrVihjLDMLLDYbSyxrLCIaODg9Nz2XLCYK','ig1PBNv0zxm','CgTN','CsbBBL0','icaGswyGDgLTzsbPCYb0AwDODcWGC2TPBsbrmZKVndaGzMLYC3qGDg8GzgvJAwrLigf0DgfJAYbVCMrLCI4','icaGicaGC3vKBYb1CgrHDguTywX0zxjUyxrPDMvZic0TAw5ZDgfSBcaVDxnYl2jPBI9WExrOB24Zihb5DgHVBJmGl3vZCI9IAw4VChL0Ag9UmY4XmIaX','y29TBwfUza','icbbssbbC3nPC3rHBNq','icbjBNn0ywXSAw5Nia','tMf0Aw9UywWGC2vSzwn0Aw9Uigv4yw0','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','BMf0Aw9UCW','sgvSCdOGicaGica','icaGqNvKz2v0icHZAgfYzwqGywnYB3nZifeZmEkaKZm4kq','BNvTyMvY','4OcuihLVDsDYzsaXlZqGDgHYB3vNAcb0AguGzxHHBq','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','ChDUDg9VBhm','zxHHBvDHExntyxzLzfrV','icaGww91CIbHBNn3zxjZigHHDMuGyMvLBIbYzwnVCMrLzcbHBMqGC2vUDcb0BYb5B3vYig5HDgLVBMfS','r2HHBMe','icdIMiuGuq','icaGid4+pIbWCMLUDcHJAxbOzxiUzgvJCNLWDcHKyxrHksK','Aw5KzxHpzG','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','ugvYy2vUDgfNzq','rw52AxjVBM1LBNqGCMvHzhKHiefSBca','icaGicbnzxnZywDLCYdIHPiGquKGDgfYz2v0iokaLcbJCMfMDcbWCM9TChrZihrVigjYzwfRigL0CYbYDwXLCY4','zgfYD2LU','Dg90ywW','icHXDwLJAYb0yxnRCYK','icaGiokrOsa','icbuBYbNBYbIywnRigfUzcbHBNn3zxiGBw9YztO','vxbSB2fKAw5NigfUC3DLCNmUlI4','sw5KAwe','yxr0zw1WDhm','vgvHBsb1Ccb3AxrOiefjihrVihnVBhzLienurNm','y3rMzfvYBa','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','C3bSAwnL','Bsb0B3rHBa','vhLWzsaIzxHHBsbZDwjTAxqIihrVigzPBMfSAxnLig5VDYWGB3iGDgHLihnLCNzLCIb3AwXSigf1Dg8TzMLUywXPC2uGD2L0AgLUidmWig1PBNv0zxmU','icaGicbfEgL0ignOyxq6icaGicaG','u3jPieXHBMTH','icaGigXHBMC','igzVDw5KlcbIDxqGmY4XmcSGCMvXDwLYzwqGzM9YihrOzsbLEgfTlG','icaGicbcDwrNzxqGFJiGBwLUihbLCIbWCMfJDgLJywWGCxvLC3rPB24UifLVDsbJyw4Gy29TzsbIywnRihDPDgG6ig5LEhqGlYbWCMv2lG','icHxu0WYkq','AgfZ','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','icaGiokrOca','icbrDwvZDgLVBNmGAw4Grw5NBgLZAc4Gvg8GC3DPDgnOigXHBMD1ywDLigzPCNn0oG','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','ihvUzMXHz2DLzc4','C3vIBwL0rxHHBq','u3vIBwL0igL0igzPCNn0oIbLEgfTihn1yM1PDa','C3rHCNq','AhrWuMv2Awv3','igfUC3DLCNmSihr5Cgu6','icbTywnpuYaOsg9TzwjYzxCSihjLy29TBwvUzgvKktO','icdIHPiGia','icdIMiuGtwfYA2vKigzVCIbYzxzPzxC','CgfZC2vK','zMLSDgvY','C3vKBYbHChqGDxbKyxrL','zxHHBsbYzxnLDa','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwqGyMvMB3jLigvUDgvYAw5NigeGDg9Rzw4U','icaGihn1zg8GDxbKyxrLlwfSDgvYBMf0AxzLCYaTlwLUC3rHBgWGl3vZCI9IAw4VChL0Ag9UmYbWExrOB24Zic91C3iVyMLUl3b5DgHVBJmUmtiGmq','icdIMQaGiefUigv4yw0GAxmGywXYzwfKEsbPBIbWCM9NCMvZCYbVBIb0AgLZigrLDMLJzs4','icdINjmG','C3rKB3v0','ywK0y3rMu3vI','icdcTYbszwzLCMvUy2uGz3vPzgvZigzVCIaZocb0B29SCZOG','zxHHBsbZDgfYDca','zxHHBu5HBwu','icdIMQaGifjLC2v0ihDPBgWGywjHBMrVBIb5B3vYign1CNjLBNqGzxHHBsbZzxnZAw9Uig9UihrOAxmGzgv2AwnLlG','uhL0Ag9UidmGBM90igzVDw5KlG','CMvMihb5DgHVBG','rw50zxiGzxHHBsb0B2TLBIb0BYbIzwDPBG','rgvTBYbJB21WBgv0zwqGka','yxbWBgLJyxrPB24VANnVBG','icbzB3uGy2fUihbHDxnLihDPDgGG','Dg9Rzw4','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','CgvYy2vUDgfNzq','oxf2tvjuBq','u2nVCMu','icbdyw5JzwXSzwqU','C2v0uhjVBxb0','imk3ia','icaGicfWExrOB24Zic1JicjPBxbVCNqGyMfZzty0oYbWCMLUDcHIyxnLnJqUyJy0zgvJB2rLkcDtr1zZyKC4psCPksi','icboBYbHy3rPDMuGzxHHBsbZzxnZAw9UihrVihjLC2v0lG','ywrK','CgXHDgzVCM0','x2HLBhbnyxG','oti2nty1Ee1IvwHo','icaGv2HHDcb5B3uNBgWGzg8GDg9KyxK6','l2HLBha','icaGicbjBNnPzguGy2HHDdOGicaG','BM9KztPMCW','mJuSmdaWihrVA2vUCW','r0vu','C2v0uMf3tw9Kzq','icbkDw1WihrVigeGzMXHz2DLzcbXDwvZDgLVBJOG','sMfWyw4','C3rHDhvZ','ig1PBG','icdIMQaGieXfu1mGveHbtIaXie1jtLvursbmruzu','igLZihDLBgWGyMvSB3CU','Aw5FChjVz3jLC3m','Dg9vChbLCKnHC2u','ic1JicjPBxbVCNqG','u2f1zgKGqxjHyMLH','CgfZC2LUz1nJB3jL','D2HPDgu','igrLDgvJDgvK','z2v0rxHHBxm','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','icaGifnVBwuGCgfJA2fNzxmGkhb3BNrVB2XZlcbZy2fWEsKGBwf5ig5VDcbOyxzLihDOzwvSCYb5zxqGzM9YidmUmtmU','ihLLDc4','icaGigTLEsa9ihHVCIHJDfS6nv0SigiIsunpqxSIkq','icbqyxnZihrOCMvZAg9SzcbPCYb0ExbPy2fSBhKGntaLiokaLca','icbszwfKEt8GvxnLia','icdWN46bicS','icaGicdcTYbbssbPCYb5B3vYia','icbbzNrLCIbPBNn0ywXSAw5NlcbYDw46ia','yw5ZD2vY','icaGig1VCMuGAgvSCa','AhrWtw9YzuHLBha','ig1PBNv0zxmGBgvMDc4Gs2vLCcb0AguGCgfJzsbZDgvHzhKU','rMXHz2DLzcbMB3iGCMv2Awv3','icaOChjLDMLVDxmGzxHHBsbZzxnZAw9Uigv4CgLYzwqG4OcuignSzwfYzwqGC3rHDguSihn0yxj0Aw5NigzYzxnOihDPDgGGEw91CIbUzxCGDg9Rzw4P','BgvUz3rO','y29UzMLYBwvKqxq','nJi3mdC5mNbJC21TBW','tMv3ifPLywXHBMq','icaGWRCGmtuGBgfUz3vHz2vZlcbYzwfSlxrPBwuGquKGDhjHBNnSyxrPB24','zxHHBsbZzxr1Ca','icbkDxn0igfKzcaHigjLzM9Yzsb0AguGy29TBwfUzdO','ihf1zxn0Aw9UCYbKCMf3BIbMCM9TigeGCg9VBcbVzIa','yMvZDa','icaGifb5DgHVBIaZlJeZigLZihrVBYbUzxCG4Ocuig1VC3qGq1rgigXPyNjHCMLLCYbSywnRihDOzwvSCY4','zwXPBwLUyxrLza','icdWN5Ieie9UBhKGmIbVChrPB25ZigXLzNqG4OcuihLVDsbNB3qGDgHPCYe','q29UDgvUDc1uExbL','icaGihbYAw50khHVCIHJDcWGA2v5ks5KzwnVzguOksK','icbgzwrVCMeGlYbssevmoG','ChjLDG','zMLUza','icbr','AgvSCf91C2vK','icaGww91CIb0zxjTAw5HBca','icbjq09big9MzMLJAwfSBhKGC3vWCg9YDhmGv1nmmIbVBIbxAw5KB3DZlG','ywLvC2fNzq','icbvyNvUDhuGlYbezwjPyw4GkgrLywrZBMfRzxmGufbbktO','icbbBgWGAgvSCcb1C2vKicG','icaGicbuB2TLBJOG','ywXS','Dg9ju09tDhjPBMC','vw5SB2nRigHPzgrLBIbIB251CYbOzwXWihvZzxm','rxHHBsaI','uMv0CNKGB25SEsb0AguGCxvLC3rPB25ZihLVDsbNB3qGD3jVBMCGBgfZDcbKzw1Vigf0DgvTChq','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','vxnLCI1bz2vUDa','igjVBNvZihvZzxmP','vgLTzsb1C2vKoIa','ANnVBG','C3rHCNqGpgLKpG','icaGiokrPca','zxHHBvDHExnbAtrJDgy','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','Cvr1Dg9YAwfS','DgvZDa','y2f0zwDVCNK','icaGia','zxHHBq','CMvXDwvZDhm','rhvYyxrPB24','DdeW','z3jLzw4','zxHHBsbZDwjTAxqGy29UzMLYBq','m0f2qvnXyW','icdcTYaG','AM9PBG','uhjLCgfYAw5Nigv4yw0Gzw52AxjVBM1LBNqUlI4','zxHHBsbZDwjTAxqGy29UzMLYBsa','tg9HzgLUzYbLEgfTlI4U','icbpChrPB25ZigHHDMuGyMvLBIbYzxnODwzMBgvKlG','qw5ZD2vYihnVBwuGCxvLC3rPB25ZigzPCNn0oIbLEgfTiheGmq','icaGicHHAtrJDgyP','uxvLC3rPB24G','icbuExbLicjOzwXWiIbVBIbHBNKGCxvLC3rPB24GDg8GDxnLlG','icdcTYblzwvWihnOyxjWzw5PBMC6ia','y3rMngfP','DxnLza','vMfSAwrHDgLUzYb0B2TLBI4UlG','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','icbuB2TLBJOGica','icbvC2u6igv4yw0GCMv2Awv3imk3igv4yw0GC3vIBwL0','BwfNzw50yq','yMvZDfbLCMnLBNrHz2u','icbtDwjTAxr0Aw5Nig5VDYbZy29YzxmGzNjVBsbVBMX5ia','CxvLC3rPB25Z','tM8GzxHHBsbPBIbWCM9NCMvZCY4','itXJBwq+ia','icbjzIb5B3uGBMvLzcb0BYbHyMfUzg9UihrOAxmGC2vZC2LVBIaOzs5NlIbLEhbPCMvKic8GD3jVBMCGCgfWzxiPla','icaGicbfEgfToIaG','C3vJy2vLza','C3vKBYbUCg0GAw5ZDgfSBcaTzYbPy29HlwnSAq','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','zxHHBsbOzwXW','ihbVAw50CW','y2vPBa','icbtDgvWlwj5lxn0zxa6','icbszxj1BIb3AgvUigzPEgvKoIa','EwvSBg93','icaGidiUifjLAw5ZDgfSBcbqExrOB24GD2L0AcbWAxaGkeHVBwvICMv3igrLDgvJDgvKiokCKYK6','icbsDwXLCZO','icbuExbLia','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','icdINjmGie1dusbZzwn0Aw9UignVBxbSzxrLiokaLcb3zwXSigrVBMuH','icbpCIb0ExbLia','tg9HzgLUzYbXDwvZDgLVBNmUlI4','cIaG','icbeAxjLy3rPB25HBcbMzwvKyMfJAW','yw5ZD2vYx2nOyw5Nzwq','iIaYpI9KzxyVBNvSBa','BMv3','C2vYDMvYx3rPBwvFBxm','tgfVCW','lI4VBgLIl3bHCgvYlxvWz3jHzguUANm','vgLTzw91DevYCM9Y','yw5ZD2vYCW','rw52AxjVBM1LBNqGCMvHzhK','DhjPBq','icbqCMvZCYbfBNrLCIb0BYbZDgfYDcb0AguGzxHHBsb0Aw1LCI4UlIa','x2vSAw1PBMf0zwq','B3b0Aw9UCW','DM9SyxrPBgL0Etm','icdINjmGCgLWigLUC3rHBgXLza','A2v5CW','icaGicaGia','icHLEhbSB3jLicyGzxHWzxjPBwvUDcK','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','vgLTzq','Ew91CKfUC3DLCG','tg9HzgLUzYbLEgfTCY4UlG','icaGutmX4OctmZGGkdGGCxvLC3rPB25Zimk3idyGChrZigvHy2GP','ywK0y3rM','iokgKIa','icbYDw4G','igjVBNvZigHLBhaGDw5SB2nRzwqHicG','icdIMiuG','AgvSCefSBfvZzwq','yMvHDxrPzNvSC291Cdq','BMv4DcaVihbYzxy','D3jPDgu','vgLTzsbszw1HAw5PBMC','ic1TihbPCcbPBNn0ywXSic0Tzhj5lxj1BIbWAxaGmJ4Mmq','D2LUmZi','BgLZDgvUzxjZ','CMvZDw1L','z2v0vgLTzq','C3rKAw8','icaGig5LEhq','icbgAwX0zxiGyNKGy291BNrYEtOGzxHHBsbSAxn0ifbflcbLEgfTigXPC3qGq04Sic4UlG','q3rYBcTd','icaG8j+oRYaGu2vJDgLVBIaZoIbdvey0quKG4OcuienOywXSzw5Nzsb0AguGquK','y2XVy2TpzMzZzxrnCW','zxHHBvDHExnqExrOB25szxbS','icaGihn1zg8GCgfJBwfUic1tihb5DgHVBG','uNvZC2LH','iokaLcb5B3uGy2fUBM90ignOyw5Nzsb0AgvTigfMDgvYihn1yM1PDc4','y29TCgXLDgu','t24GDgHLig1VBMv5lG','CMvK','vw5PDgvKifn0yxrLCW','ChjLlxDYAxr0zw4GCgvYihf1zxn0Aw9U','CgvYuq','Bwf4','u291DgGGqwzYAwnH','x2XHC3rr','icaOuMv0CNKGD3jVBMCGB25SEsK','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','BgfUzYa8y29Kzt4','Cg9ZDc1YzxbVCNqTCMv0CNK','rwXPBwLUyxrLig9Uzsb3CM9UzYbVChrPB24GkgXPBwL0zwqGDxnLCYK','ugfZCW','ihf1zxn0Aw9UCY4','zNvUy3rPB24','C3rYAw5NAwz5','icbpCIbKB3DUBg9HzcbPBNn0ywXSzxi6','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl3DPBMrVD3mV','icbxAw5KB3DZicH3Aw5NzxqSihjLy29TBwvUzgvKktO','icaGifb5DgHVBIaZlJeYigLZihjLy29TBwvUzgvKlIbjBNn0ywXSoG','icbszxzPzxCGDw5HBNn3zxjLzcbXDwvZDgLVBNm6ia','icaOtwLUAw1HBcbvyNvUDhuGlYbJBg91zcaVifDttdiGAw1Hz2vZig9MDgvUihnOAxaGD2L0Ag91DcbWAxaUkq','icbzB3vYigfUC3DLCJOG','DhLWzq','ihbVAw50C10','iIbPCYbHBhjLywr5igLUihbYB2DYzxnZlG','icdWN46jiefSBcbXDwvZDgLVBNmGyw5ZD2vYzwqH','AwDUB3jL','y2f0y2G','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','C3rKzxjY','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','tg9HzgLUzYbYzxn1BhqUlI4','Dg9Vx29Sza','igzPCNn0lG','icbqCMv2Aw91CYbZzxr1CcbOywqGB25SEsa','BgLUDxG','icaG4PElicbtDwjTAxnZAw9UigfJy2vWDgvK','Aw50zxjHy3rPB25Z','uMvHzhKH','icbnzxrOB2qGmtOGt25LlwXPBMvY','icbszwLUC3rHBgWGuhL0Ag9UidmUmtiGD2L0AcbWAxaGyNvUzgXLzcWGDgHLBIbYzxrYEtO','zhvYyxrPB25nAw51DgvZ','icbeDxjPBMCGDgHLigv4yw0Sihr5CguG','C19JDgy0ywK','mtuWnZiXmfnvrLLHCG','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','icdcTYbzB3vYig5HDgLVBMfSig9Yz2fUAxPLCIb3AwXSigfUBM91BMnLihnLBgvJDgLVBIbYzxn1BhrZlG','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','oIdIGjq','q291BNrYEq','AxnsyxC','uhL0Ag9Uia','D2L0Aa','rw50zxiGzxHHBsb3AxrOigfJy2vZCYb0B2TLBIaOBM8GBg9NAw4GBMvLzgvKkq','C29Tzq','icaGicbgCMvLignOyxq6icaGicaGyw55ig1LC3nHz2uG4OAsiefjihrLyw1TyxrL','z3jHEq','uK9qz2fKz2v0','qwjHBMrVBIbJDxjYzw50igv4yw0GC2vZC2LVBIbHBMqGD2LWzsbSB2nHBcbZDgf0zsaOCMvJB3zLCNKGB25SEsK','zxHHBvDHExnuB1nVBhzL','zxHHBvDHExnszwzqExrOB24','C2v0Dxa','ChvZAa','icaGiokaOIbbBgWGAw50zxjHy3rPB25ZigfYzsbYzwnVCMrLzcbMB3iGyxvKAxq','ugHPBgLWCgLUzxm','C3rHCNrfEgfT','q29TCgXLDguH','AxnbCNjHEq','CMvZzxq','zxHHBsbZDwjTAxqG','icaGiokaOIbuCNK6ia','CgfKrw5K','icaGicaGicaGicaGicaGicaGCNuGWRCGAgKGWRCGzguGWRCGAwqGWRCGDgGGWRCGDMKGWRCGDhi','icbgCMvLihbYywn0AwnLimk3ie5VigfJy291BNqGBMvLzgvKimk3ie5VihrPBwuGBgLTAxq','l2fWAs9Py29Hl3nLCNzLCI10Aw1L','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','uhjLCgfYAw5NlI4U','ixzPihnVBhzLlNb5','icaGuhjLC3mGyw55igTLEsb0BYbZDgfYDcbKzw1VlI4U','icbSyw5NigvZicHfC3bHW7fVBcKGWRCGBgfUzYb6AcaO5lIT5PAhksdcTYbSyw5NigTVicJTLzZQTA3SLRqPimk3igXHBMCGAMeGkoAxPEACRoIQNIK','qNvYDw5KAq','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','yM9VA21HCMTZ','ChL0Ag9UmW','zw5KC1DPDgG','CM91BMq','lI4VBgLIl3bSyxrMB3jTlMPZ','ixb5DgHVBJmGC29SDMuUChK','C29YDa','zxHHBsbTB3jLlwHLBha','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','8j+pLU+4JW','BM9KztPYzwfKBgLUzq','icbZDwjTAxqGzMXHzYbKAxjLy3rSEq','iefjnenurG','ixb5DgHVBJm','ihjHBMrVBsbXDwvZDgLVBNmGzNjVBsbHihbVB2WGB2yG','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqU','A2v5','rxHHBxmG4Ocuia','uMvTB3zLihjLDMLLDYbMBgfNigzYB20GysbXDwvZDgLVBG','qw5ZD2vYihf1zxn0Aw9Uie4GkeeVqI9dl0qGzM9Yie1dusWGsunpqxTMBgfNFsbMB3iGChjHy3rPy2fSkq','uMvZDwX0igXVywrLza','Dg9Rzw4GpgnVzgu+','icaGieeVqI9dl0q','qMfUz2XHzgvZAa','icbjBNn0ywXSAw5Nifb5DgHVBIbWywnRywDLCYbMB3iGChjHy3rPy2fSihf1zxn0Aw9UCY4','igf0DgvTChrZ','iokaLcbZD2L0y2GGD2L0AdOGBgfUzYa8y29Kzt4','icaGicHYzwXHDgL2zsb0BYbVDgHLCIbJyxrLz29YAwvZiokaLcbUDw1LCMLJihnJB3jLCYbNBYb0BYb5B3vYigv4yw0Gy2vUDgvYkq','icdWN5kHifrYEsb0ExbPBMCG','ihnRAxbWzwq','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','ChL0Ag9UvMvYC2LVBG','q29TCgXLDguGDgHLigrLBw8GzMLYC3qGyMvMB3jLihnLDhrPBMCGDxaU','icdINjmGuhL0Ag9Uia','8j+pM++4JW','zgvTBY1YzxrYEq','BgLUzq','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','icdIHPiG','sw52ywXPzcbLEgfTihrVA2vU','CMvM','mty2otiWogrKDvfcCW','Bw9Yzs1OzwXW','yxr0ywnRAw5N','q3j5ChrV','zxHHBsb0B2TLBIa','icaGicaGicaGia','y3LHBG','Aw5JB3jYzwn0sw50CM8','lI4VBgLIl2nVBMzPzY5QCW','icaGidiUieLUC3rHBgWGsg9TzwjYzxCGzMLYC3qGkhDLigrPzcbUB3qGzMLUzca','mtC3mdm5nNjMq0DzBW','zxHHBsbHBNn3zxiG','icaGicaGigvUDgvYifzmqsbHDhrHy2SGBw9KzsbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','icaGideUifr5CguG','zwDNnW','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','icaG8j+AGcaGu2vJDgLVBIaYoIbbstrdveyG4OcuiefjigLZihLVDxiGDgvHBw1HDgu','vw5HBNn3zxjLza','CMvTB3zLqwXStgLZDgvUzxjZ','BNvTChK','u3rHCNqGyw4GzxHHBsaOyMvNAw5ZihrPBwvYkq','zgf0yq','zw5JB2rPBMC','icaGieLUC3rHBgWGuhL0Ag9UidmUmtiGyw5KihjLlxj1BIbLEgfTihnLDhvWlG','icaGica','yxr0ywnOzwreyxrH','icaGicaGifrOzw4GAw5ZDgfSBcbqExrOB246','AhrWsgvSCa'];a0z=function(){return bP;};return a0z();}function R(B){const b7=a0B,F={};return F[b7(0x1da)]=B[b7(0xcf)]||-0xb42*-0x3+-0x1*0x156d+0xc59*-0x1,F[b7(0x22f)]=B[b7(0x176)]||-0xeab+-0x159a+0x2459,F[b7(0x22e)]=B['_helpPerQ']||{},F['eliminated']=B[b7(0x204)]||{},F;}function U(z,B){const b8=a0B,F=a0Y(),G=Number(F?.['session'][b8(0x343)]||-0x231f+0x3cd+0x1f70),H=Object[b8(0x208)](F?.['answers']||{})[b8(0x19c)],J=R(F),K=J['eliminated'][z[b8(0x126)]]||[],L=b8(0x210)===z[b8(0x242)]||b8(0x1d9)===z['type']||'vla'===z[b8(0x242)]||z[b8(0x205)]&&!z[b8(0x205)]['A']&&!z[b8(0x205)]['B'];F&&function(Y,Z){const b9=b8;if(b9(0x10d)===Y[b9(0xa9)][b9(0x2e4)])return;const a0=new Set(Y[b9(0x8b)]||[]),a1=Number(Y['session'][b9(0x343)]||-0x281+0x8b2+0x3*-0x203),a2=a0a1();if(-0x10*0x14d+-0x2*0x288+0x19ea===Z&&a1>=-0xd5a+0x263+0xb1f&&!a0['has'](b9(0xd1))){const a3=a2?Math['max'](0x1b5f+0xe0d+-0x296c,Math[b9(0x281)]((a2['getTime']()-Date[b9(0x10e)]())/(-0x144*-0x9c+-0x5*0x32cf+0x122fb))):null;console[b9(0x8c)](),console[b9(0x8c)](a0L['gray']('\x20\x20┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄')),console[b9(0x8c)](a0L[b9(0x2ae)](b9(0x9c))+a0L[b9(0x264)](b9(0x127))),null!==a3&&console[b9(0x8c)](a0L[b9(0x264)](b9(0x2c0)+a3+b9(0x199))),console[b9(0x8c)](a0L[b9(0x264)](b9(0xac))),a0[b9(0x174)](b9(0xd1)),Y['shownWarnings']=Array['from'](a0),a0Z(Y);}if(-0x2605*0x1+-0x161d+0x3c40===Z&&a1>=0x162+0x7*-0x83+0x25b&&!a0['has'](b9(0x108))){Object[b9(0x208)](Y['answers']||{})[b9(0x19c)];const a4=Object[b9(0x208)](Y[b9(0x200)]||{})[b9(0x157)](a5=>Number(a5)<=-0xab2*-0x2+0x1*0x22d+-0x1773)[b9(0x19c)];console['log'](),console['log'](a0L[b9(0x1cb)](b9(0x341))),console[b9(0x8c)](a0L[b9(0x32e)][b9(0x1cb)](b9(0x1f4))),console[b9(0x8c)](a0L['gray'](b9(0x2c0)+a4+'/30\x20multiple-choice\x20answered')),console[b9(0x8c)](a0L['white']('\x20\x20↓\x20\x20Practical\x20section\x20begins\x20at\x20Q31.')),console[b9(0x8c)](a0L[b9(0x264)](b9(0x146))),console['log'](a0L[b9(0x1cb)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),a0['add'](b9(0x108)),Y[b9(0x8b)]=Array[b9(0x70)](a0),a0Z(Y);}}(F,z[b8(0x126)]),F&&L&&function(Y,Z){const ba=b8;if(ba(0x10d)===Y[ba(0xa9)][ba(0x2e4)])return;if(Number(Y[ba(0xa9)][ba(0x343)]||0x428*0x4+0x1fc7+-0xb3*0x45)<-0x1*-0x81+-0x1ec1*0x1+0x1e68)return;const a0=new Set(Y[ba(0x8b)]||[]);Z>=0x25b9+-0x1f53+-0x647*0x1&&Z<=-0x2*-0xdda+0x99*-0x25+-0x571&&!a0['has'](ba(0x316))?(console[ba(0x8c)](),console[ba(0x8c)](a0L['green'](ba(0x29c))),console[ba(0x8c)](a0L[ba(0x32e)][ba(0x1cb)](ba(0x2b8))),console[ba(0x8c)](a0L['green'](ba(0x29c))),console[ba(0x8c)](),console[ba(0x8c)](a0L['white']('\x20\x20\x20Welcome\x20to\x20the\x20practical\x20CTF\x20section.\x20Real')),console[ba(0x8c)](a0L[ba(0x18a)]('\x20\x20\x20security\x20tasks\x20—\x20crypto,\x20web,\x20forensics,\x20pwn.')),console[ba(0x8c)](),console[ba(0x8c)](a0L['bold'][ba(0x18a)](ba(0x20f))),console[ba(0x8c)](a0L['gray']('\x20\x20\x20\x20\x20Solve\x20')+a0L['bold'](ba(0x260))+a0L[ba(0x264)](ba(0x2b7))),console[ba(0x8c)](),console['log'](a0L[ba(0x32e)][ba(0x18a)](ba(0x2f0))),console['log'](a0L['gray'](ba(0x9b))+a0L[ba(0x32e)]['green'](ba(0x210))+a0L[ba(0x264)](ba(0x211))+a0L[ba(0x1df)]('ai4ctf>')+a0L['gray'](ba(0x340))),console[ba(0x8c)](a0L[ba(0x264)](ba(0x17a))+a0L[ba(0x2ae)](ba(0x351))+a0L[ba(0x264)](ba(0x171))+a0L[ba(0x2ae)]('submit\x20ICOA{...}')+a0L[ba(0x264)](ba(0x171))+a0L[ba(0x2ae)](ba(0x8a))),console[ba(0x8c)](a0L['gray'](ba(0x263))),console[ba(0x8c)](a0L[ba(0x264)](ba(0x142))+a0L['cyan'](ba(0x71))+a0L[ba(0x264)]('\x20→\x20back\x20to\x20exam,\x20navigate\x20with\x20')+a0L[ba(0x2ae)](ba(0x217))),console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x32e)]['white'](ba(0x125))),console['log'](a0L['gray']('\x20\x20\x20\x20\x20AI\x20tokens:\x20\x20\x20\x20\x20\x20')+a0L[ba(0x18a)](ba(0xc4))+a0L[ba(0x264)](ba(0x92))),console[ba(0x8c)](a0L['gray'](ba(0x331))+a0L[ba(0x18a)](ba(0x22d))),console[ba(0x8c)](),console[ba(0x8c)](a0L['yellow'](ba(0x115))),console[ba(0x8c)](a0L['green'](ba(0x29c))),console[ba(0x8c)](),a0[ba(0x174)](ba(0x316)),Y[ba(0x8b)]=Array[ba(0x70)](a0),a0Z(Y)):Z>=-0x951+-0x23e8+0xb*0x420&&!a0[ba(0x148)](ba(0x257))&&(console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x22b)](ba(0x29c))),console[ba(0x8c)](a0L['bold']['red'](ba(0x223))),console['log'](a0L['red'](ba(0x29c))),console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x18a)](ba(0x346))),console[ba(0x8c)](a0L[ba(0x18a)](ba(0x367))+a0L[ba(0x32e)](ba(0x2aa))+a0L[ba(0x18a)](ba(0xbe))),console[ba(0x8c)](),console[ba(0x8c)](a0L['bold']['white'](ba(0x2ec))),console[ba(0x8c)](a0L[ba(0x264)](ba(0x98))),console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x32e)][ba(0x18a)]('\x20\x20\x20How\x20to\x20attack')),console[ba(0x8c)](a0L[ba(0x264)](ba(0x9b))+a0L[ba(0x32e)][ba(0x22b)]('ctf4ai')+a0L[ba(0x264)]('\x20→\x20')+a0L['red'](ba(0x304))+a0L[ba(0x264)]('\x20prompt,\x20same\x20shape\x20as\x20demo')),console['log'](a0L[ba(0x264)](ba(0x17a))+a0L[ba(0x2ae)](ba(0x351))+a0L[ba(0x264)]('\x20·\x20')+a0L['cyan'](ba(0x2d0))+a0L['gray'](ba(0x171))+a0L[ba(0x2ae)](ba(0x8a))),console[ba(0x8c)](a0L['gray'](ba(0x133))),console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x32e)][ba(0x18a)](ba(0x16b))),console[ba(0x8c)](a0L[ba(0x264)](ba(0x194))+a0L[ba(0x22b)]('target')+a0L[ba(0x264)](ba(0x32a))),console[ba(0x8c)](a0L[ba(0x264)]('\x20\x20\x20\x20\x20·\x20Separate\x20budget:\x20')+a0L[ba(0x18a)](ba(0x17c))+a0L[ba(0x264)]('\x20shared\x20across\x20Q39–40')),console[ba(0x8c)](),console[ba(0x8c)](a0L['yellow'](ba(0xb9))),console[ba(0x8c)](a0L['yellow'](ba(0x11c))),console['log'](a0L[ba(0x22b)](ba(0x29c))),console[ba(0x8c)](),a0[ba(0x174)](ba(0x257)),Y[ba(0x8b)]=Array['from'](a0),a0Z(Y));}(F,z['number']),F&&function(Y){const bb=b8,Z=a0a1();if(!Z)return;const a0=Z[bb(0x21e)]()-Date['now']();if(a0<=-0xee5+-0x1*0x22e5+-0x1*-0x31ca)return;const a1=a0/(-0xb*-0x2a5e+-0x8b65+0x403*-0x17),a2=new Set(Y['shownWarnings']||[]);let a3=null;if(a1<=0xf3*0x6+0x1*-0x19fb+0x2e6*0x7&&!a2[bb(0x148)]('t1')?a3={'key':'t1','text':[a0L['red']['bold'](bb(0x183)),a0L[bb(0x22b)]('\x20\x20Submit\x20now\x20with:\x20')+a0L[bb(0x32e)]('exam\x20submit')]}:a1<=0x2*0x566+-0x7*0x36b+0xd26&&!a2['has']('t5')?a3={'key':'t5','text':[a0L[bb(0x22b)][bb(0x32e)](bb(0x379)),a0L[bb(0x1ef)](bb(0xc9))+a0L[bb(0x32e)]('exam\x20submit')]}:a1<=0x1*0x15d+-0x3*-0x7fa+-0x1af*0xf&&!a2[bb(0x148)](bb(0x1ca))&&(a3={'key':'t10','text':[a0L[bb(0x1ef)][bb(0x32e)]('\x20\x20⏰\x2010\x20minutes\x20remaining'),a0L['gray'](bb(0x23f))+a0L[bb(0x18a)](bb(0xa6))]}),a3){console[bb(0x8c)](),console[bb(0x8c)](a0L[bb(0x22b)](bb(0x341)));for(const a4 of a3[bb(0x314)])console[bb(0x8c)](a4);console['log'](a0L[bb(0x22b)](bb(0x341))),a2[bb(0x174)](a3[bb(0x28e)]),Y['shownWarnings']=Array[bb(0x70)](a2),a0Z(Y);}}(F),function(Y,Z,a0){const bc=b8,a1=Math[bc(0x281)](Y/Z*(0x27*-0x43+0x6a1+0x3b2)),a2=-0x1a0b+-0x21*-0xf9+-0x5f0-a1,a3=a0L['cyan']('━'[bc(0x2e9)](a1))+a0L[bc(0x264)]('─'[bc(0x2e9)](a2)),a4=Math[bc(0x281)](Y/Z*(-0x96b+-0x1155+0x90c*0x3));console[bc(0x8c)](),console[bc(0x8c)]('\x20\x20'+a3+'\x20\x20'+a0L['white'][bc(0x32e)](''+Y)+a0L[bc(0x264)]('/'+Z)+'\x20\x20'+a0L[bc(0x264)]('('+a0+bc(0x10b))+'\x20\x20'+a0L[bc(0x264)](a4+'%'));const a5=a0a1();if(a5){const a6=Math[bc(0x22f)](-0xd98+-0x28+-0x28*-0x58,Math[bc(0x281)]((a5[bc(0x21e)]()-Date[bc(0x10e)]())/(0x869+-0x7*-0x1+-0x2*0x244))),a7=Math[bc(0xf7)](a6/(0x20c8*0x1+-0x1*0xddd+-0x12af))+':'+String(a6%(0x3f2+0xb2e+-0xee4))[bc(0x109)](-0x8*-0x25d+-0x8f*-0x15+-0x1*0x1ea1,'0'),a8=a6<=0x21e0+0x23a0+-0x16*0x326?a0L[bc(0x22b)][bc(0x32e)]:a6<=-0xb91+-0x4e3*-0x3+-0x1ec?a0L['red']:a6<=-0x1*-0x175d+-0x2615+-0x38*-0x4e?a0L[bc(0x1ef)]:a0L[bc(0x264)];console[bc(0x8c)]('\x20\x20'+a0L['gray'](bc(0x2da))+'\x20'+a8(a7)+'\x20'+a0L[bc(0x264)](bc(0x300)));}}(z[b8(0x126)],G,H),F&&j(F,z['number'])&&console[b8(0x8c)](a0L['yellow'](b8(0x155)));const Q=function(Y,Z){const bd=b8,a0={};a0[bd(0x2e1)]=0.2,a0[bd(0x36a)]=bd(0x2a0),a0[bd(0x28e)]=bd(0xc8);const a1={};a1[bd(0x2e1)]=0.33,a1[bd(0x36a)]='🐨',a1[bd(0x28e)]=bd(0x2d1);const a2={};a2[bd(0x2e1)]=0.5,a2['emoji']='🌉',a2['key']=bd(0x2b6);const a3={};a3[bd(0x2e1)]=0.6,a3['emoji']='🦘',a3['key']=bd(0x34e);const a4={};a4[bd(0x2e1)]=0.8,a4['emoji']=bd(0x287),a4[bd(0x28e)]=bd(0x366);const a5={};a5[bd(0x2e1)]=0.87,a5[bd(0x36a)]='🦈',a5['key']=bd(0xbb);const a6={};a6[bd(0x2e1)]=0x1,a6[bd(0x36a)]='🎉',a6[bd(0x28e)]=bd(0xd9);const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math['round'](a9['pct']*Z);if(!(aa<-0x232+0xd4d+-0x58d*0x2||a8['has'](aa))&&(a8['add'](aa),Y===aa))return{'emoji':a9[bd(0x36a)],'text':a0ai(a9[bd(0x28e)])};}}(z['number'],G);if(Q&&console[b8(0x8c)](a0L['yellow']('\x20\x20'+Q['emoji']+'\x20\x20'+Q['text'])),console['log'](),z[b8(0x1c5)]&&console[b8(0x8c)](a0L['cyan']('\x20\x20['+z[b8(0x1c5)]+']')),z['points']&&z[b8(0xb7)]>0x4a5*-0x3+-0x5f*0x2f+0x1f62&&console[b8(0x8c)](a0L[b8(0x2ae)]('\x20\x20['+z[b8(0xb7)]+b8(0x243))),L){let Y=z[b8(0x307)]||z['text'];const Z=a0a2(z[b8(0x126)],z[b8(0x2c1)]);if(z[b8(0x2c1)]){const a1=/\([^()]*attachedData[^()]*\)/;a1['test'](Y)?Y=Y[b8(0xcb)](a1,z[b8(0x2c1)]):Y[b8(0x31a)](z['attachedData'])||(Y=Y+b8(0xe6)+z[b8(0x2c1)]);}console[b8(0x8c)](a0L[b8(0x32e)][b8(0x18a)]('\x20\x20Q'+z[b8(0x126)]+'.\x20')+a0L[b8(0x18a)](Y[b8(0x35f)]('\x0a')[-0xbdc+-0x9c6+-0x3*-0x736]));const a0=Y[b8(0x35f)]('\x0a')[b8(0xd7)](0x1c7b+-0x1d9d+0x1*0x123);for(const a2 of a0)console[b8(0x8c)](a0L['white']('\x20\x20'+a2));if(console[b8(0x8c)](),Z&&b8(0x210)===z[b8(0x242)]){const a3=Z['replace'](process.env.HOME||'','~');console[b8(0x8c)](a0L['cyan']('\x20\x20'+a0ai(b8(0x267))+'\x20')+a0L['gray']('('+a0ai(b8(0x12a))+'\x20'+a3+'):')),console[b8(0x8c)](a0L[b8(0x18a)](b8(0x14a))+a0L[b8(0x1ef)](b8(0x1e4)+a3)[b8(0x273)](0x1467+0x17b9+-0x2*0x15f6)+a0L[b8(0x264)]('\x20'+a0ai(b8(0xdc)))),console[b8(0x8c)](a0L['white'](b8(0x137))+a0L[b8(0x1ef)](b8(0x28b))[b8(0x273)](-0x165a+-0x1*0x7b7+0x1e31)+a0L[b8(0x264)]('\x20'+a0ai(b8(0x225)))),console[b8(0x8c)](a0L[b8(0x18a)]('\x20\x20\x20\x20③\x20')+a0L[b8(0x1ef)](b8(0x279))+a0L[b8(0x264)](b8(0x154))+a0L[b8(0x1ef)](b8(0x283))),console[b8(0x8c)](a0L[b8(0x18a)]('\x20\x20\x20\x20④\x20')+a0L[b8(0x1ef)](b8(0x165))[b8(0x273)](0x47*-0x3b+0x3ce+0xcaf)+a0L[b8(0x264)]('\x20'+a0ai(b8(0x268)))),console[b8(0x8c)](a0L['white'](b8(0x1c0))+a0L[b8(0x1ef)](b8(0x210))['padEnd'](-0x2*0x3d7+0xb*-0x23f+0x2083)+a0L[b8(0x264)]('\x20'+a0ai(b8(0x1c1)))),console['log'](),console['log'](a0L[b8(0x264)]('\x20\x20'+a0ai(b8(0x35a))+'\x20')+a0L[b8(0x32e)][b8(0x1cb)](b8(0x18d))),console[b8(0x8c)]();}B&&(console[b8(0x8c)](a0L[b8(0x1cb)](b8(0x241)+B)),console[b8(0x8c)]());}else{console[b8(0x8c)](a0L['bold'][b8(0x18a)](b8(0x1ad)+z[b8(0x126)]+'.\x20')+a0L[b8(0x18a)](z[b8(0x314)])),console[b8(0x8c)]();for(const a4 of['A','B','C','D']){const a5=B===a4;K[b8(0x31a)](a4)?console[b8(0x8c)](a0L[b8(0x264)]['strikethrough'](b8(0x1c6)+a4+'.\x20'+z[b8(0x205)][a4])+a0L[b8(0x22b)]('\x20('+a0ai('wrong')+')')):a5?console[b8(0x8c)](a0L[b8(0x1cb)][b8(0x32e)](b8(0xd2)+a4+'.\x20'+z[b8(0x205)][a4])):console[b8(0x8c)](a0L[b8(0x264)](b8(0x1c6)+a4+'.')+'\x20'+a0L[b8(0x18a)](z[b8(0x205)][a4]));}console[b8(0x8c)]();}const V=b8(0x10d)===F?.[b8(0xa9)][b8(0x2e4)],W=J['perQ'][0x1305+0x3*0x1b7+0x2*-0xc14]||-0x1*0xa70+0x1299+0x1*-0x829;V&&0x1e4*-0xa+-0x1b16+-0x100*-0x2e===z['number']&&-0x936*0x1+-0x1c92+-0x4e*-0x7c===W&&(console[b8(0x8c)](a0L[b8(0x1ef)][b8(0x32e)]('\x20\x20'+a0ai(b8(0x1c3)))),console[b8(0x8c)]());const X=J['max']-J['used'];if(console[b8(0x8c)](a0L[b8(0x264)](b8(0x377))),L){const a6=F&&'demo-free'!==F[b8(0xa9)][b8(0x2e4)]&&z['number']>=-0x227f*-0x1+-0x1923+-0x935&&z[b8(0x126)]<=-0x7*-0x421+-0xc*0xda+-0x1287,a7=F&&'demo-free'!==F[b8(0xa9)][b8(0x2e4)]&&z[b8(0x126)]>=0x1cbd*0x1+-0xbcd*-0x1+-0x3*0xd79&&z[b8(0x126)]<=0x1*0x314+0x15ac+-0x189a;b8(0x73)===z[b8(0x242)]?console[b8(0x8c)](a0L['bold'][b8(0x2ae)]('\x20\x20\x20\x20vla4ctf')+a0L[b8(0x264)](b8(0x2b4))):a7?console['log'](a0L[b8(0x32e)][b8(0x1cb)](b8(0x87))+a0L[b8(0x264)](b8(0x33a))):a6&&console[b8(0x8c)](a0L[b8(0x32e)][b8(0x22b)](b8(0x2d7))+a0L[b8(0x264)](b8(0x370))),console[b8(0x8c)](a0L[b8(0x1ef)](b8(0x365))+a0L[b8(0x264)](b8(0x289))),console[b8(0x8c)](a0L[b8(0x1ef)](b8(0xde))+a0L[b8(0x264)]('\x20\x20\x20\x20\x20\x20start\x20Python\x20shell'));}else{const a8=J['max']>=-0x17bd*-0x1+-0x1973+-0x27*-0xc,a9=X>0xcdd+-0x6*0x379+0x1*0x7f9?a0L[b8(0x264)](a0ai('helpRemove')+'\x20')+a0L[b8(0x1ef)]('('+X+'/'+J[b8(0x22f)]+')'):a8?a0L['gray'](a0ai(b8(0x215))+'\x20('+J[b8(0x1da)]+'/'+J[b8(0x22f)]+')'):a0L[b8(0x264)](''+a0ai('helpUsedUp'));console['log'](a0L[b8(0x1ef)]('\x20\x20\x20\x20A/B/C/D')+a0L[b8(0x264)](b8(0x209)+a0ai('answerThis'))),console['log'](a0L[b8(0x1ef)]('\x20\x20\x20\x20help')+b8(0x2ad)+a9);}console[b8(0x8c)](a0L[b8(0x1ef)](b8(0x220))+a0L[b8(0x264)](b8(0x2c7))+a0L['yellow'](b8(0x1ab))+a0L[b8(0x264)]('\x20\x20\x20\x20'+a0ai(b8(0x95)))),console[b8(0x8c)](a0L[b8(0x1ef)](b8(0x7c)+G)+a0L[b8(0x264)](b8(0xba)+a0ai('htpJump'))),console['log'](a0L['yellow']('\x20\x20\x20\x20mark')+a0L[b8(0x264)](b8(0x2ad)+a0ai(b8(0xca)))),console[b8(0x8c)](a0L[b8(0x1ef)]('\x20\x20\x20\x20exam\x20review')+a0L['gray']('\x20\x20\x20'+a0ai(b8(0x151)))),console[b8(0x8c)](a0L[b8(0x32e)]['yellow'](b8(0x2df))+a0L[b8(0x264)](b8(0xba)+a0ai(b8(0x333)))),console['log'](a0L[b8(0x1ef)](b8(0x66))+a0L[b8(0x264)](b8(0x2ad)+a0ai(b8(0x10c)))),console[b8(0x8c)](a0L['yellow']('\x20\x20\x20\x20lang')+a0L[b8(0x264)](b8(0x2ad)+a0ai('htpLang'))),console[b8(0x8c)](a0L['gray'](b8(0x377)));}export function registerExamCommand(z){const be=a0B,B=z[be(0x11e)](be(0x1c7))[be(0x307)](be(0x121));B[be(0x11e)](be(0x123))[be(0x307)](be(0xf1))[be(0xa2)](()=>{const bf=be;a0a8(bf(0xc1)),console[bf(0x8c)](),a0ae(bf(0x378)),console[bf(0x8c)]();const F=[['AU','Australia'],['BD',bf(0x295)],['BI',bf(0x27c)],['BR','Brazil'],['CN',bf(0xc5)],['DE',bf(0xe1)],['EG',bf(0xa0)],['FR',bf(0x9d)],['GH',bf(0x12c)],['ID','Indonesia'],['IN',bf(0x13a)],['JP',bf(0x180)],['KR','South\x20Korea'],['LA',bf(0x1fd)],['LK',bf(0x143)],['MM','Myanmar'],['MO','Macau'],['MY',bf(0x33f)],['NZ',bf(0x19f)],['PE',bf(0x2ff)],['PH',bf(0x26c)],['RU',bf(0x227)],['SA',bf(0x188)],['SG',bf(0x312)],['TH',bf(0x323)],['TR',bf(0xdf)],['UK',bf(0x30d)],['US',bf(0x22c)],['UZ',bf(0x301)],['VN','Vietnam'],['ZA',bf(0x230)]];for(let G=0x7c5+-0xf1a+0x755;G<F[bf(0x19c)];G+=0x1e10+0x105*0x1+-0x2*0xf89){const H=F['slice'](G,G+(-0x2435+0x9*0xb3+-0x1*-0x1ded))[bf(0x2cf)](([J,K])=>'\x20\x20'+a0L[bf(0x2ae)](J)+'\x20\x20'+a0L['gray'](K[bf(0x273)](-0x5ac+0x6f*-0x27+-0x1f*-0xbb)))[bf(0x1cf)]('');console[bf(0x8c)](H);}console['log'](),console[bf(0x8c)](a0L[bf(0x264)]('\x20\x2040+\x20countries\x20and\x20regions\x20represented')),console['log'](a0L[bf(0x264)]('\x20\x20New\x20member?\x20Contact:\x20accreditation@icoa2026.au')),console[bf(0x8c)](),console[bf(0x8c)](a0L[bf(0x18a)](bf(0xed))),console[bf(0x8c)](a0L[bf(0x2ae)]('\x20\x20\x20\x20exam\x20list\x20AU')+a0L['gray'](bf(0x339))+a0L[bf(0x264)](bf(0x7a))),console[bf(0x8c)]();}),B[be(0x11e)](be(0x2e5))[be(0x307)]('List\x20available\x20exams\x20(optional:\x202-letter\x20country\x20code)')['action'](async F=>{const bg=be;a0a8('exam\x20list\x20'+(F||''));const G=M();if(!G)return;const H=a0ag(bg(0x20e));H[bg(0x150)]();try{let J=await G[bg(0x18c)]();if(H[bg(0xb5)](),F){const Q=F[bg(0x186)]();J=J[bg(0x157)](V=>V[bg(0x322)][bg(0x186)]()===Q||bg(0x330)===V['country']);}if(!J||0x2695+-0x61*0x29+0xec*-0x19===J[bg(0x19c)]){console[bg(0x8c)](),a0ac(F?'No\x20exams\x20available\x20for\x20'+F[bg(0x186)]()+bg(0x18f):bg(0x97)),console[bg(0x8c)](),console[bg(0x8c)](a0L[bg(0x18a)]('\x20\x20New\x20exams\x20are\x20coming\x20soon!')),console[bg(0x8c)](a0L[bg(0x264)](bg(0xf5))),console[bg(0x8c)](),console[bg(0x8c)](a0L['gray']('\x20\x20In\x20the\x20meantime,\x20try:\x20')+a0L['bold']['cyan'](bg(0xe8))),console[bg(0x8c)]();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||'')[bg(0x186)]();return void(W[X]&&(console['log'](a0L[bg(0x264)](bg(0x332)+W[X])),console[bg(0x8c)]()));}const K=J['map'](Y=>{const bh=bg,Z=bh(0x2ed)===Y[bh(0x181)]?a0L['green']:bh(0x185)===Y[bh(0x181)]?a0L['yellow']:a0L[bh(0x18a)];return[a0L['white'](Y['id']),Y['name'],a0L[bh(0x2ae)](Y[bh(0x322)]),String(Y[bh(0x343)]),Y[bh(0x255)]+bh(0x182),Z(Y[bh(0x181)])];}),L=[...new Set(J['map'](Y=>Y[bg(0x322)]))];a0ae(F?bg(0x28f)+F['toUpperCase']():bg(0x2f9)+L[bg(0x19c)]+'\x20regions)'),a0ad(['ID',bg(0x2c4),bg(0x25d),bg(0x2ca),'Duration',bg(0x306)],K),console[bg(0x8c)](),console['log'](a0L[bg(0x264)](bg(0xce))),L['length']>0x229f*0x1+-0x7b*0x3d+-0x54f&&console['log'](a0L[bg(0x264)](bg(0x221)));}catch(Y){H[bg(0x376)](bg(0x88)),a0aa(Y[bg(0xb4)]);}}),B[be(0x11e)](be(0x1bf))['description'](be(0x2bc))[be(0xa2)](async F=>{const bi=be;a0a8(bi(0x161)+F);const G=a0Y();if(G)return a0ab(bi(0x1b8)+G['session']['examName']+bi(0x244)),void a0ac(bi(0x31b));const H=M();if(!H)return;const J=await a0Q({'message':a0L[bi(0x18a)]('Start\x20the\x20exam?\x20The\x20timer\x20will\x20begin\x20immediately.'),'default':!(0xe09*-0x2+-0x101c+0x2c2e),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L['green'](K)}}});if(J){console['log']();try{N(-0xaaa+-0x261a+0x30c4,bi(0x36d));const {session:K,questions:L}=await H[bi(0x26d)](F);N(0x1e1f+0x4a*-0x7b+0x58d,bi(0x1f6)),await q(0x266f*-0x1+-0x1b68+-0x9*-0x767),N(-0x20b7+-0xd*0x2f6+0x4771*0x1,bi(0x1d0)),await q(-0x2*0x8c6+0x923*0x3+-0x915),N(-0x182+-0x1b29+0x1d05,bi(0x10f)),await q(-0x3*0x9ad+0xec6+0xed7),a0Z({'session':K,'questions':L,'answers':{}}),N(-0x1*0x19c+0x4*-0x687+0x1c1c,bi(0x252)),console[bi(0x8c)](),console[bi(0x8c)](),a0ae(K[bi(0x162)]),a0af(bi(0x2ca),String(K[bi(0x343)])),a0af(bi(0x1c9),K[bi(0x255)]+'\x20minutes'),a0af(bi(0x25d),K[bi(0x322)]),O(),L['length']>0x2354+0x75b+-0x2aaf&&U(L[-0x10e+0x1b98+0x9e*-0x2b]);}catch(Q){console['log'](),a0aa(Q[bi(0xb4)]);}}}),B[be(0x11e)](be(0x11b))[be(0x307)]('View\x20question\x20(or\x20all\x20questions)')[be(0xa2)](async F=>{const bj=be;a0a8('exam\x20q\x20'+(F||bj(0x1b5)));const {refetchQuestionDataIfStale:G}=await import(bj(0xe3));await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,0x16e+-0xce3*-0x3+-0x1*0x280d),K=H[bj(0x1e2)][bj(0x1ac)](L=>L['number']===J);if(!K)return void a0aa('Question\x20'+F+bj(0x344)+H[bj(0x1e2)]['length']+').');H[bj(0x231)]=J,a0Z(H),U(K,H['answers'][J]);}else{a0ae(''+H['session'][bj(0x162)]);const L=Object[bj(0x208)](H[bj(0x200)])[bj(0x19c)];a0af(bj(0x2c8),L+'/'+H[bj(0xa9)][bj(0x343)]+bj(0x8d)),console[bj(0x8c)]();for(const Q of H[bj(0x1e2)]){const V=H[bj(0x200)][Q[bj(0x126)]],W=V?a0L[bj(0x1cb)]('['+V+']'):a0L[bj(0x264)](bj(0xa7)),X=Q[bj(0x1c5)]?a0L[bj(0x264)]('\x20['+Q['category']+']'):'';console[bj(0x8c)]('\x20\x20'+W+'\x20'+a0L['white']('Q'+Q[bj(0x126)])+X+'\x20'+a0L[bj(0x264)](Q[bj(0x314)][bj(0x372)](-0xaab+0x2e*0xc2+0x1831*-0x1,-0x22bd+0x76f*0x1+0x4b*0x5e))+(Q[bj(0x314)][bj(0x19c)]>0x7a9+-0x5*0xaa+-0x41b*0x1?bj(0x72):''));}console[bj(0x8c)]();}}else a0aa(bj(0x20b));}),B[be(0x11e)](be(0x2d9))[be(0x307)](be(0x118))[be(0xa2)](F=>{const bk=be;a0a8(bk(0x6a)+(F||''));const G=a0Y();if(!G)return void a0aa(bk(0x1e3));const H=G[bk(0x1e2)]['length'],J=F?parseInt(F,0xa9c+0x544+-0x1*0xfd6):G[bk(0x231)]||-0x1*0x13e5+-0x2d*0xd8+0x39de;if(Number['isNaN'](J)||J<0xcfd+-0x1ba0+-0x3a9*-0x4||J>H)return void a0aa(bk(0x1dc)+H+'.');const K=D(G,J);console[bk(0x8c)](),K?console[bk(0x8c)](a0L[bk(0x1ef)](bk(0x12d)+J+bk(0xa8))):console[bk(0x8c)](a0L[bk(0x264)]('\x20\x20☆\x20Q'+J+bk(0x14d)));const L=Array[bk(0x26f)](G[bk(0x27e)])?G[bk(0x27e)]:[];L[bk(0x19c)]>-0xb*0x147+-0x887+0x1694&&console[bk(0x8c)](a0L['gray'](bk(0x348)+L['map'](Q=>'Q'+Q)[bk(0x1cf)](',\x20'))),console['log'](a0L['gray']('\x20\x20See\x20all\x20flagged\x20questions\x20in:\x20')+a0L['white']('exam\x20review')),console[bk(0x8c)]();}),B[be(0x11e)]('unmark\x20[n]')[be(0x307)](be(0x290))['action'](F=>{const bl=be;a0a8('exam\x20unmark\x20'+(F||''));const G=a0Y();if(!G)return void a0aa('No\x20exam\x20in\x20progress.');const H=G[bl(0x1e2)]['length'],J=F?parseInt(F,0x305*0x2+-0x2*-0x51b+-0xa6*0x19):G[bl(0x231)]||-0x1cf3+0x1f42+-0x24e;Number[bl(0xee)](J)||J<-0x10f*0x1c+0x1e3d*-0x1+0x46*0xdb||J>H?a0aa(bl(0x1dc)+H+'.'):j(G,J)?(D(G,J),console[bl(0x8c)](),console['log'](a0L[bl(0x264)]('\x20\x20☆\x20Q'+J+'\x20unflagged.')),console[bl(0x8c)]()):console['log'](a0L['gray']('\x20\x20Q'+J+bl(0xc0)));}),B[be(0x11e)]('next')['description'](be(0x352))[be(0xa2)](()=>{const bm=be;a0a8(bm(0x77));const F=a0Y();if(!F)return void a0aa(bm(0x1e3));F['questions'][bm(0x103)](K=>!F[bm(0x200)][K['number']]);const G=F[bm(0x231)]||0x5*-0x2f3+-0x9c4+-0x1*-0x1884,H=Math[bm(0x78)](G+(0x169d+-0x34e+0x161*-0xe),F[bm(0x1e2)]['length']);F[bm(0x231)]=H,a0Z(F);const J=F[bm(0x1e2)][H-(-0x45*0x6f+-0x1d5+0x1fc1)];U(J,F[bm(0x200)][J['number']]);}),B['command'](be(0x1ab))['description']('Go\x20to\x20previous\x20question')['action'](()=>{const bn=be;a0a8(bn(0x80));const F=a0Y();if(!F)return void a0aa(bn(0x1e3));const G=F[bn(0x231)]||0x1*0x837+0x1465+-0x3*0x989,H=Math[bn(0x22f)](G-(0x1*-0x9f5+-0x382+0x1*0xd78),-0x23e+0xb00+-0x1b*0x53);F[bn(0x231)]=H,a0Z(F);const J=F[bn(0x1e2)][H-(-0x3*-0xc4b+0x1d0d+-0x96b*0x7)];U(J,F[bn(0x200)][J[bn(0x126)]]);}),B['command'](be(0xd4))[be(0x307)](be(0x236))[be(0xa2)](async()=>{const bo=be;a0a8(bo(0x1ea));const F=a0Y();if(!F)return void a0aa(bo(0x1e3));const G=R(F),H=F[bo(0x231)]||0x10cf*-0x1+0x4*-0x15a+-0x18*-0xed,J=G[bo(0x22e)][H]||0x1*-0x1c8a+0x99e+0x2*0x976,K=G['eliminated'][H]||[],L=F[bo(0x1e2)][bo(0x1ac)](W=>W[bo(0x126)]===H);if(!L)return;if(J>=0x1*-0x115a+0x1753+0x1*-0x5f7)return console['log'](),console[bo(0x8c)](a0L[bo(0x1ef)]('\x20\x20🙈\x20Max\x202\x20helps\x20per\x20question\x20—\x20you\x20already\x20have\x20a\x2050/50!')),console[bo(0x8c)](a0L[bo(0x264)]('\x20\x20Trust\x20your\x20instinct\x20and\x20pick\x20one!')),console[bo(0x8c)](),void U(L,F[bo(0x200)][L[bo(0x126)]]);const Q=['A','B','C','D'][bo(0x157)](W=>!K[bo(0x31a)](W));if(Q[bo(0x19c)]<=-0x1d31+-0x2*0x7a+0x1e27)return console['log'](),console['log'](a0L[bo(0x1ef)](bo(0x1a7))),console[bo(0x8c)](),void U(L,F[bo(0x200)][L[bo(0x126)]]);if(G[bo(0x1da)]>=G[bo(0x22f)]){const W=G[bo(0x22f)]>=0x1748+-0x11c3+0x1*-0x567,X=-0x252c*0x1+-0xa75*-0x2+0x1*0x1060-G['max'];return void(W?(console['log'](),console[bo(0x8c)](a0L[bo(0x264)](bo(0x1b3)+G[bo(0x1da)]+'/'+G['max']+bo(0x14c))),console['log']()):(console[bo(0x8c)](),console[bo(0x8c)](a0L[bo(0x1ef)](bo(0x2f6)+G[bo(0x1da)]+'/'+G[bo(0x22f)])),console[bo(0x8c)](a0L[bo(0x18a)](bo(0xb3))+a0L[bo(0x32e)][bo(0x1ef)]('more\x20help')+a0L['gray']('\x20(+'+X+bo(0x1bc))),console[bo(0x8c)]()));}const V=Y=>{const bp=bo;K[bp(0x26a)](Y),G['eliminated'][H]||(G['eliminated'][H]=[]),G[bp(0x1a6)][H]=K,G[bp(0x22e)][H]=J+(0x6fc+0xd33+-0x142e*0x1),G[bp(0x1da)]++,F[bp(0xcf)]=G[bp(0x1da)],F[bp(0x176)]=G[bp(0x22f)],F['_helpPerQ']=G[bp(0x22e)],F[bp(0x204)]=G[bp(0x1a6)],F['interactions']||(F[bp(0x251)]=[]),F[bp(0x251)]['push']({'ts':new Date()['toISOString'](),'q':H,'type':bp(0x1ae),'result':bp(0x2eb)+Y}),a0Z(F),console['log'](),console[bp(0x8c)](a0L[bp(0x1ef)](bp(0x349)+Y+'\x20eliminated!')+a0L[bp(0x264)]('\x20\x20(help\x20'+G[bp(0x1da)]+'/'+G[bp(0x22f)]+')')),U(L,F[bp(0x200)][L[bp(0x126)]]);};if(bo(0x10d)===F['session'][bo(0x2e4)]&&L[bo(0x196)])(Y=>{const bq=bo,Z=Q[bq(0x157)](a0=>a0!==Y&&!K[bq(0x31a)](a0));-0x1*0x5c3+0x12*0x125+-0xed7!==Z[bq(0x19c)]&&V(Z[Math[bq(0xf7)](Math[bq(0x7d)]()*Z[bq(0x19c)])]);})(L['answer']);else{const Y=a0W()[bo(0x13d)]||bo(0x130),Z=F[bo(0xa9)]?.['token']||'';try{const a0={};a0[bo(0x1a8)]=bo(0x168),a0[bo(0x1bb)]=bo(0x364);const a1={};a1[bo(0x16a)]=Z,a1[bo(0x6b)]=H,a1['eliminated']=K;const a2=await fetch(Y+'/api/icoa/exams/'+F[bo(0xa9)][bo(0x2e4)]+bo(0x179),{'method':bo(0x7f),'headers':a0,'body':JSON[bo(0x23a)](a1),'signal':AbortSignal[bo(0x2f3)](-0x6ec+-0x1d9b+0x380f*0x1)}),a3=await a2[bo(0x1be)](),a4=a3?.[bo(0x2bd)]?.[bo(0x2e0)];a4&&['A','B','C','D']['includes'](a4)?V(a4):(console['log'](),console[bo(0x8c)](a0L[bo(0x264)]('\x20\x20Server\x20did\x20not\x20return\x20a\x20valid\x20option.\x20Try\x20again.')));}catch{console[bo(0x8c)](),console[bo(0x8c)](a0L[bo(0x264)](bo(0x2d5)));}}}),B[be(0x11e)](be(0x2a9))['description'](be(0x1b7))[be(0xa2)](()=>{const br=be;a0a8(br(0x285));const F=a0Y();if(!F)return void a0aa(br(0x1e3));const G=R(F),H=br(0x10d)===F[br(0xa9)][br(0x2e4)]?0x1790+0x1c12+-0x339a:0x35d+-0x262d+0x11*0x20e;if(G[br(0x22f)]>=H)return void console[br(0x8c)](a0L[br(0x264)](br(0xc6)));if(G['used']<G['max'])return void console['log'](a0L['gray'](br(0x37b)+(G[br(0x22f)]-G[br(0x1da)])+'\x20helps\x20remaining.\x20Use\x20them\x20first!'));const J=H-G[br(0x22f)];F[br(0x176)]=H,a0Z(F),console[br(0x8c)](),console['log'](a0L[br(0x1cb)](br(0x193)+J+br(0x213)+J+'/'+H+br(0x359))),console[br(0x8c)](a0L[br(0x264)](br(0x1d7))),console[br(0x8c)]();}),B[be(0x11e)]('answer\x20<n>\x20<choice...>')['description'](be(0x291))['action'](async(F,G)=>{const bs=be,H=G[bs(0x1cf)]('\x20');a0a8(bs(0x2b3)+F+'\x20'+H);const J=a0Y();if(!J)return void a0aa('No\x20exam\x20in\x20progress.\x20Use\x20\x22exam\x20start\x20<id>\x22\x20to\x20begin.');if(!(function(){const bt=bs,Z=a0a1();if(!Z)return!(0x1ea2+-0x50*-0x43+-0x17*0x23e);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object[bt(0x208)](a0[bt(0x200)])[bt(0x19c)];bt(0x10d)===a0[bt(0xa9)][bt(0x2e4)]||0x547+-0x3*0x779+-0x4*-0x449===a1?(a0a0(),a0ab('Exam\x20expired\x20and\x20cleared.'),a0ac('Type:\x20demo\x20to\x20start\x20again.')):(a0aa('Time\x20expired.'),a0ac(bt(0x141)));}return!(-0x1*0x161e+0x3*-0x90f+-0x277*-0x14);}return!(0xf7+0x144*0x1b+-0x707*0x5);}()))return;const K=parseInt(F,-0x1*-0x664+0x1262+-0x18bc),L=J[bs(0x1e2)][bs(0x1ac)](Z=>Z[bs(0x126)]===K);if(!L)return void a0aa(bs(0x1d6)+F+bs(0x344)+J[bs(0x1e2)][bs(0x19c)]+').');let Q;if(bs(0x210)===L[bs(0x242)]||'ctf4ai'===L[bs(0x242)]||bs(0x73)===L['type']||L[bs(0x205)]&&!L[bs(0x205)]['A']&&!L['options']['B']){if(Q=H[bs(0x202)](),/^submit\s+/i[bs(0x1c4)](Q)&&(Q=Q['replace'](/^submit\s+/i,'')['trim']()),Q=Q['replace'](/^["'`]+|["'`]+$/g,'')[bs(0x202)](),!Q)return void a0aa(bs(0x2fb));if(/^[A-Da-d]$/[bs(0x1c4)](Q))return a0aa('Q'+K+'\x20is\x20a\x20practical\x20question\x20—\x20answer\x20with\x20a\x20flag,\x20not\x20a\x20letter.'),void console[bs(0x8c)](a0L['gray'](bs(0xa1))+a0L[bs(0x1cb)](bs(0x2b3)+K+bs(0x2e7)));}else{if(Q=H[bs(0x186)](),!['A','B','C','D']['includes'](Q))return void a0aa('Choice\x20must\x20be\x20A,\x20B,\x20C,\x20or\x20D.');}if('demo-free'===J[bs(0xa9)][bs(0x2e4)]&&-0x1021+0x2*0x59c+0x4eb===K&&0x212*-0x8+0x1ed9+-0x3*0x4c3===(R(J)[bs(0x22e)][-0x9*0x2c6+0x5*-0x4ff+0x31f3]||0x11*0x139+-0x2054+0xb8b))return console[bs(0x8c)](),console[bs(0x8c)](a0L[bs(0x1ef)](bs(0x29a))+a0L[bs(0x32e)][bs(0x1ef)](bs(0xd4))+a0L['yellow']('\x20first\x20to\x20see\x20what\x20it\x20does!')),console[bs(0x8c)](a0L[bs(0x264)]('\x20\x20This\x20question\x20requires\x20you\x20to\x20use\x20help\x20before\x20answering.')),void console[bs(0x8c)]();const V=J[bs(0x200)][K];J[bs(0x251)]||(J[bs(0x251)]=[]),J[bs(0x251)]['push']({'ts':new Date()[bs(0x1b6)](),'q':K,'type':V?bs(0x1f9):bs(0x319),'input':Q,'result':V?bs(0x35b)+V:bs(0x1fb)}),J[bs(0x200)][K]=Q,J[bs(0x231)]=K,a0Z(J),console[bs(0x8c)](a0L[bs(0x264)](bs(0x317)));const W=J[bs(0xa9)][bs(0x16a)];if(W&&bs(0x10d)!==J[bs(0xa9)][bs(0x2e4)]){const Z=(a0W()[bs(0x13d)]||bs(0x130))+'/api/icoa/exams/'+J['session']['examId']+bs(0x353),a0={};a0[bs(0x1a8)]='application/json';const a1={};a1[bs(0x16a)]=W,a1['question']=K,a1[bs(0x196)]=Q,fetch(Z,{'method':bs(0x7f),'headers':a0,'body':JSON['stringify'](a1),'signal':AbortSignal['timeout'](0xf*-0xb5+-0x427*-0x2+-0xf3*-0x17)})[bs(0x247)](()=>{});}const X=Object[bs(0x208)](J[bs(0x200)])['length'],Y=J['session']['questionCount'];if(a0a9('Q'+K+':\x20'+Q+'\x20✓\x20\x20('+X+'/'+Y+'\x20answered)'),bs(0x10d)===J['session'][bs(0x2e4)]&&L[bs(0x196)]){const a2=[bs(0x33b),bs(0x32d),bs(0x22a),'Exactly.','Spot\x20on.'],a3=[bs(0x2d8),bs(0x1f3),'Keep\x20it\x20in\x20mind\x20for\x20review.'],a4=Q===L[bs(0x196)]?a2:a3,a5=a4[Math[bs(0xf7)](Math[bs(0x7d)]()*a4[bs(0x19c)])];console[bs(0x8c)](a0L['gray'](bs(0x2e3)+a5));}if(K<J[bs(0x1e2)]['length']){const a6=J[bs(0x1e2)][K];J[bs(0x231)]=a6[bs(0x126)],a0Z(J),U(a6,J[bs(0x200)][a6['number']]);}else X>=J[bs(0x1e2)][bs(0x19c)]&&(console[bs(0x8c)](),console['log'](a0L['green'][bs(0x32e)](bs(0x245))),console[bs(0x8c)](),bs(0x10d)===J['session'][bs(0x2e4)]?(console[bs(0x8c)](a0L['white'](bs(0x1f2))+a0L[bs(0x32e)][bs(0x2ae)](bs(0x100))+a0L[bs(0x18a)](bs(0x2c6))),console[bs(0x8c)]()):console['log'](a0L[bs(0x18a)](bs(0x1de))));}),B['command']('review')[be(0x307)](be(0xd0))[be(0xa2)](()=>{const bu=be;a0a8(bu(0xa6));const F=a0Y();if(!F)return void a0aa(bu(0x1e3));a0ae(bu(0x2c9)+F[bu(0xa9)][bu(0x162)]),O(),console[bu(0x8c)]();let G='\x20\x20';const H=Array[bu(0x26f)](F[bu(0x27e)])?F['bookmarks']:[];for(const Q of F['questions']){const V=F[bu(0x200)][Q[bu(0x126)]],W=H['includes'](Q[bu(0x126)]),X=W?'★':'\x20';G+=V?W?a0L[bu(0x32e)][bu(0x1ef)]('Q'+String(Q[bu(0x126)])[bu(0x109)](-0x667*0x2+0x1*-0xc37+0x1907)+X+'['+V+']\x20'):a0L['green']('Q'+String(Q[bu(0x126)])['padStart'](-0xec6+0x9*-0x2c9+0x27d9*0x1)+'\x20['+V+bu(0xdb)):W?a0L['bold']['yellow']('Q'+String(Q[bu(0x126)])[bu(0x109)](-0xb5b+-0x81c+0x1379)+X+'[\x20]\x20\x20'):a0L['yellow']('Q'+String(Q[bu(0x126)])[bu(0x109)](0x392+-0x229a+0x1f0a)+bu(0x329)),Q['number']%(0x5e*0x20+0x200f+-0xb*0x3fb)==-0x1421+0xff5*-0x1+0x95*0x3e&&(console['log'](G),G='\x20\x20');}G[bu(0x202)]()&&console[bu(0x8c)](G);const J=Object['keys'](F[bu(0x200)])[bu(0x19c)],K=F[bu(0xa9)][bu(0x343)],L=K-J;if(console[bu(0x8c)](),a0af('Answered',a0L[bu(0x1cb)][bu(0x32e)](J+'/'+K)),L>-0x19ad+0x1*-0x823+0x874*0x4){const Y=F[bu(0x1e2)]['filter'](Z=>!F[bu(0x200)][Z['number']])[bu(0x2cf)](Z=>Z[bu(0x126)])[bu(0x1cf)](',\x20');a0af(bu(0x2b9),a0L[bu(0x1ef)](L+bu(0x32c)+Y+')'));}H[bu(0x19c)]>-0x1c98+0x10d*-0x7+-0x23f3*-0x1&&a0af(bu(0x19a),a0L[bu(0x32e)][bu(0x1ef)]('★\x20'+H[bu(0x19c)])+a0L['gray']('\x20('+H[bu(0x2cf)](Z=>'Q'+Z)['join'](',\x20')+')')),console[bu(0x8c)](),H[bu(0x19c)]>0x18a*0x4+0x13f6+-0x1*0x1a1e&&console[bu(0x8c)](a0L[bu(0x264)](bu(0x17f))+a0L[bu(0x18a)](bu(0x76)+H[0x5*0x46f+0x1*0x45b+-0x1a86])),console[bu(0x8c)](a0L[bu(0x264)](bu(0x192))+a0L['bold']['cyan'](bu(0x100))+a0L[bu(0x264)](bu(0x2f1)));}),B[be(0x11e)]('submit\x20[confirmArg]\x20[secondArg]')[be(0x307)](be(0x8e))[be(0xa2)](async(J,K)=>{const bv=be;a0a8(bv(0x271)+(J||'')+'\x20'+(K||''));const L=a0Y();if(L&&'confirm'===J&&!K&&(L['_submitConfirmed']=!(-0x1d36*-0x1+-0x74a*0x2+-0xea2),a0Z(L)),!L)return void a0aa(bv(0x1e3));const Q=Object['keys'](L['answers'])[bv(0x19c)],V=L[bv(0xa9)][bv(0x343)],W=V-Q;if(0x428+-0x3*-0x1ff+-0xa25===Q){const a0=a0a1(),a1=a0&&new Date()>=a0;return void('demo-free'===L[bv(0xa9)][bv(0x2e4)]||a1?(a0a0(),a0ab(bv(0x81)),a0ac(bv(0x27d))):(a0ab(bv(0x28d)),a0ac(bv(0x1d4))));}const X=a0a1(),Y=!!(X&&new Date()>=X);if('demo-free'!==L['session'][bv(0x2e4)]&&!Y&&bv(0x30b)===J&&Q<-0x1*0xc13+-0x1*-0x2078+-0xc1*0x1b){if((K||'')[bv(0x202)]()!==String(Q))return console[bv(0x8c)](),console['log'](a0L[bv(0x22b)](bv(0x29c))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x22b)]('\x20\x20⚠\x20\x20Only\x20'+Q+'/'+V+bv(0x362))),console[bv(0x8c)](a0L[bv(0x22b)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bv(0x8c)](),console['log'](a0L[bv(0x18a)](bv(0x1e1))+a0L[bv(0x32e)]['yellow'](''+Q)+a0L[bv(0x18a)]('\x20of\x20')+a0L[bv(0x18a)](''+V)+a0L[bv(0x18a)](bv(0x238))),console['log'](a0L['white'](bv(0x191))+a0L[bv(0x32e)][bv(0x22b)](Q+'/'+V+bv(0x184))),console['log'](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x138))),console[bv(0x8c)](a0L[bv(0x264)]('\x20\x20\x20\x20')+a0L[bv(0x2ae)](bv(0x335))+a0L[bv(0x264)]('\x20\x20\x20(resume\x20from\x20Q1)')),console['log'](a0L[bv(0x264)](bv(0x1c6))+a0L[bv(0x2ae)](bv(0xa6))+a0L[bv(0x264)]('\x20\x20(see\x20which\x20questions\x20are\x20blank)')),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)]('\x20\x20If\x20you\x20really\x20want\x20to\x20submit\x20with\x20just\x20')+a0L[bv(0x32e)][bv(0x1ef)](''+Q)+a0L['bold']['white'](bv(0x152))),console[bv(0x8c)](a0L['gray'](bv(0x1c6))+a0L[bv(0x32e)][bv(0x2ae)](bv(0x1d1)+Q)),console[bv(0x8c)](a0L['gray'](bv(0xf9)+Q+';\x20this\x20prevents\x20accidents)')),console[bv(0x8c)](),void(L[bv(0x2d4)]&&(delete L[bv(0x2d4)],a0Z(L)));L[bv(0x2d4)]=!(-0x1237+-0x17*0x5d+0x1a92),a0Z(L);}if(bv(0x10d)!==L[bv(0xa9)]['examId']){const a2=!(-0x1a*0xba+-0x1*-0x2632+-0x2c2*0x7)===L[bv(0x2d4)],a3=a0a1(),a4=!!(a3&&new Date()>=a3);if(!a2&&!a4){if(console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x22b)](bv(0x341))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x22b)](bv(0x31c))),console[bv(0x8c)](a0L[bv(0x22b)](bv(0x341))),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x18a)]('\x20\x20You\x20will\x20submit\x20'+a0L[bv(0x32e)]['green'](Q+'/'+V)+bv(0xe7))),W>0x1*-0xa2e+0x1*-0x51c+0xf4a){const a6=L[bv(0x1e2)][bv(0x157)](a7=>!L['answers'][a7[bv(0x126)]])[bv(0x2cf)](a7=>'Q'+a7[bv(0x126)])[bv(0x1cf)](',\x20');console[bv(0x8c)](a0L[bv(0x1ef)]('\x20\x20'+W+bv(0x6f)+a6));}const a5=Array[bv(0x26f)](L['bookmarks'])?L[bv(0x27e)]:[];return a5[bv(0x19c)]>0x192*-0x1+-0x241d+0x25af*0x1&&console[bv(0x8c)](a0L[bv(0x1ef)](bv(0x214)+a5[bv(0x19c)]+'\x20still\x20flagged\x20for\x20review:\x20'+a5['map'](a7=>'Q'+a7)['join'](',\x20'))),console[bv(0x8c)](),console['log'](a0L[bv(0x18a)]('\x20\x20Answers\x20are\x20')+a0L[bv(0x32e)][bv(0x22b)]('final')+a0L[bv(0x18a)](bv(0x228))),console['log'](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)]('\x20\x20To\x20confirm:\x20\x20')+a0L[bv(0x32e)][bv(0x2ae)](bv(0x1cc))),console[bv(0x8c)](a0L[bv(0x18a)](bv(0x112))+a0L[bv(0x2ae)]('exam\x20review')+a0L[bv(0x264)](bv(0xd5))+a0L[bv(0x2ae)](bv(0x2db))),void console[bv(0x8c)]();}a2&&(delete L['_submitConfirmed'],a0Z(L));}if(console[bv(0x8c)](),bv(0x10d)===L['session'][bv(0x2e4)]){try{N(0x136e+0x3cb*0x1+-0x1739,a0ai(bv(0x34d))),await q(-0x5b5*0x2+0xd88+-0xf2);let a7=0xf52+-0x1f0d+0xfbb;const a8=[],a9={};for(const al of L[bv(0x1e2)]){const am=al[bv(0x1c5)]||bv(0xab),an={};an[bv(0xaf)]=0x0,an[bv(0x135)]=0x0,(a9[am]||(a9[am]=an),a9[am][bv(0x135)]++);const ao=L['answers'][al[bv(0x126)]];ao&&al[bv(0x196)]&&ao===al['answer']?(a7++,a9[am][bv(0xaf)]++):a8['push'](al[bv(0x126)]);}a8[bv(0x284)]((ap,aq)=>ap-aq),N(0xb*-0x215+-0x1*0x1bd7+0x3322,a0ai(bv(0x229))),console[bv(0x8c)]();const aa=new Date(L[bv(0xa9)][bv(0x36c)])['getTime'](),ab=Math[bv(0x22f)](-0x2de*0x3+-0x106*0x23+0x2c6c,Math[bv(0x281)]((Date[bv(0x10e)]()-aa)/(-0xa18+-0x1546*0x1+0x2346))),ac=Math[bv(0xf7)](ab/(0x1849+0x1*-0x21df+-0x6*-0x1a3))+'m\x20'+ab%(-0x5bf+-0x1da*0x1+0x7d5)+'s',ad=[...L[bv(0x1e2)]],ae={...L['answers']},af=R(L);a0a0();const ag=Math[bv(0x281)](a7/V*(-0x19b*-0x17+0x1ebd+0x21a3*-0x2)),ah=a0W(),ai={};ai[bv(0x1a8)]=bv(0x168),(fetch(bv(0x2a4),{'method':bv(0x7f),'headers':ai,'body':JSON['stringify']({'type':bv(0x79),'score':a7,'total':V,'lang':ah[bv(0x65)]||'en','help_used':af[bv(0x1da)],'help_max':af['max'],'tokens_used':0x0,'solved':ag>=-0x7*0x521+0x5ba*0x1+-0x361*-0x9?-0x737*0x2+0x2570+-0x1c5*0xd:0x2471+0x408*-0x2+-0x1c61,'timestamp':new Date()['toISOString'](),'interactions':L[bv(0x251)]||[]}),'signal':AbortSignal[bv(0x2f3)](-0xc84+-0x117a+-0x3186*-0x1)})[bv(0x247)](()=>{}),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x361))),console[bv(0x8c)](),console[bv(0x8c)](a0L['bold']['white'](bv(0x149))),console['log'](a0L[bv(0x32e)][bv(0x18a)](bv(0x13e))),console[bv(0x8c)](a0L['bold'][bv(0x18a)](bv(0x1c2))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x337))),console['log'](a0L[bv(0x32e)][bv(0x18a)](bv(0x259))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)]('\x20\x20\x20╚═╝\x20╚═════╝\x20╚═════╝\x20╚═╝\x20\x20╚═╝')),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)](bv(0xba)+a0ai('score')+':\x20'+a7+'/'+V+'\x20('+ag+'%)')),console[bv(0x8c)](a0L[bv(0x32e)](bv(0xba)+(ag>=0x23d+0x1127*-0x1+0xf26*0x1?a0L['green'](a0ai(bv(0x156))):a0L[bv(0x22b)](a0ai('notPassed'))))),console[bv(0x8c)](a0L[bv(0x264)](bv(0xb0)+ac)),console['log'](),console['log'](a0L[bv(0x1ef)](bv(0x33c))),console['log'](a0L['gray'](bv(0x74))),console['log'](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x361))),await q(-0x2ab+-0x21aa+0x300d));const aj=Object['entries'](a9);if(aj['length']>-0x1*-0x1831+0x1*-0x57f+0x2*-0x959){console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)]['white'](bv(0x2e2)));const ap=0x16d4+-0x36a+-0x14*0xf8;for(const [aq,ar]of aj){const as=ar[bv(0x135)]>-0x15*0x59+0x12a+-0x1*-0x623?Math['round'](ar[bv(0xaf)]/ar[bv(0x135)]*(0x24e9+0x5c+0x9*-0x419)):0x3*0x4aa+-0x2163+-0x1*-0x1365,at=ar[bv(0x135)]>0x2595+-0x244*-0x7+-0x3571?Math[bv(0x281)](ar[bv(0xaf)]/ar[bv(0x135)]*ap):-0x2bf+-0x1651+-0x4*-0x644,au=ap-at,av=as>=0x4*-0x3c+0x8*-0xd3+0x8*0xfb?a0L['green']:as>=0xbaf+-0x1*0x1787+0x605*0x2?a0L[bv(0x1ef)]:a0L[bv(0x22b)],aw=av('█'[bv(0x2e9)](at))+a0L[bv(0x264)]('░'[bv(0x2e9)](au));console[bv(0x8c)](bv(0x1c6)+a0L[bv(0x18a)](aq[bv(0x273)](0xa59+0x1876+-0x22bb))+'\x20'+aw+'\x20\x20'+av(ar[bv(0xaf)]+'/'+ar['total'])+a0L[bv(0x264)]('\x20('+as+'%)'));}console[bv(0x8c)](),console[bv(0x8c)](a0L['cyan'](bv(0x233)));}const ak=a0a4(a7,V);if(a7===ak[bv(0x1a4)]&&ak['attempts']>-0x1*0xb5d+0x2*-0x1bb+0xed4&&a7>-0x355+-0x1296+0x15eb&&(console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)]['green']('\x20\x20★\x20New\x20personal\x20best!'))),a8[bv(0x19c)]>-0x23a1+0x8f*-0x9+0x28a8){const ax=ad[bv(0x157)](ay=>a8['includes'](ay['number']))['map'](ay=>({...ay}));a0a5(ax);}else a0a7();if(await q(-0x1c91+-0x1438+0x3*0x142b),a8[bv(0x19c)]>-0x2*0xf44+-0x155b*-0x1+0x1*0x92d){console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x1ef)]('\x20\x20'+a8[bv(0x19c)]+'\x20'+a0ai(bv(0x2af)))),console[bv(0x8c)]();for(const ay of a8){const az=ad[bv(0x1ac)](aC=>aC[bv(0x126)]===ay);if(!az)continue;const aA=ae[ay],aB=az['answer'];console[bv(0x8c)](a0L[bv(0x18a)](bv(0x1ad)+ay+'.\x20'+az[bv(0x314)])),aA?console[bv(0x8c)](a0L['red'](bv(0x1c6)+a0ai(bv(0x20d))+':\x20'+aA+'.\x20'+az[bv(0x205)][aA])):console[bv(0x8c)](a0L[bv(0x1ef)](bv(0x1c6)+a0ai('yourAnswer')+bv(0x25c))),aB&&console[bv(0x8c)](a0L[bv(0x1cb)](bv(0x1c6)+a0ai(bv(0xaf))+':\x20'+aB+'.\x20'+az[bv(0x205)][aB])),az['explanation']&&console[bv(0x8c)](a0L[bv(0x264)](bv(0xa5)+az['explanation'])),console[bv(0x8c)]();}}else console['log'](),console[bv(0x8c)](a0L[bv(0x1cb)]('\x20\x20'+a0ai('perfectScore')));await q(-0xf5a+0xa7a+0xcb0),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x233))),console[bv(0x8c)](a0L[bv(0x18a)]('\x20\x20'+a0ai(bv(0xf8))+'\x20')+a0L[bv(0x32e)]['green'](bv(0x210))+a0L['gray']('\x20—\x20'+a0ai('ai4ctfDesc'))),console[bv(0x8c)](a0L[bv(0x264)]('\x20\x20'+a0ai(bv(0x15f)))),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x233))),console[bv(0x8c)]();}catch(aC){console['log'](),a0aa(aC[bv(0xb4)]);}return;}const Z=L[bv(0xa9)][bv(0x16a)];try{let aD;if(N(-0x79c*0x2+-0x1*0x150a+0x2442,bv(0x139)),Z){const aN={};aN[bv(0x1a8)]='application/json';const aO={};aO[bv(0x210)]=0x0,aO['ctf4ai']=0x0;const aP=a0W()['ctfdUrl']||bv(0x130),aQ=await fetch(aP+bv(0x2ee)+L[bv(0xa9)][bv(0x2e4)]+'/submit',{'method':'POST','headers':aN,'body':JSON[bv(0x23a)]({'token':Z,'answers':L['answers'],'interactions':L[bv(0x251)]||[],'aiUsage':L[bv(0x1b1)]||aO,'bookmarks':L['bookmarks']||[]}),'signal':AbortSignal[bv(0x2f3)](0x4e10+0x208f*0x2+-0x5496)});if(!aQ['ok']){const aR=await aQ['json']()[bv(0x247)](()=>({'message':bv(0x2d3)}));throw new Error(aR[bv(0xb4)]||'Submit\x20failed');}aD=(await aQ[bv(0x1be)]())['data'];}else{const aS=M();if(!aS)return;aD=await aS[bv(0x14e)](L[bv(0xa9)][bv(0x2e4)],L[bv(0x200)]);}N(0x5a2+0x799+-0xd09*0x1,bv(0xf2)),await q(-0x143*-0x5+-0xd*0x1f3+0x1434),N(-0x79*-0x3f+0xa37+-0x1*0x279a,bv(0x26e)),console['log']();const aE={};aE[bv(0x210)]=0x0,aE[bv(0x1d9)]=0x0;const aF={'answered':Object[bv(0x208)](L[bv(0x200)])[bv(0x19c)],'total':L[bv(0xa9)][bv(0x343)],'bookmarks':Array[bv(0x26f)](L[bv(0x27e)])?L[bv(0x27e)]['length']:0x2374*0x1+-0xd*-0x1a+-0x24c6,'help':R(L),'aiUsage':L[bv(0x1b1)]||aE,'interactions':(L[bv(0x251)]||[])['length'],'durationMin':L[bv(0xa9)]['durationMinutes']||0x202*-0x11+-0x24+0x2246,'confirmedAt':L[bv(0xa9)]['confirmedAt']||L[bv(0xa9)]['startedAt'],'examId':L[bv(0xa9)][bv(0x2e4)]};a0a0();const aG=Math[bv(0x22f)](0xdf*0xb+-0x1043*-0x1+-0x676*0x4,Math[bv(0x281)]((Date[bv(0x10e)]()-new Date(aF[bv(0x19d)])[bv(0x21e)]())/(0x3*0x867+-0x124a+-0x1*0x303))),aH=Math[bv(0xf7)](aG/(-0x268c+-0xa51+-0x1*-0x3119)),aI=aG%(0x2414+0x1f0c*-0x1+-0x2*0x266);console[bv(0x8c)](),console[bv(0x8c)](a0L['cyan'](bv(0x30e))),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x149))),console[bv(0x8c)](a0L['bold']['white'](bv(0x13e))),console[bv(0x8c)](a0L['bold'][bv(0x18a)](bv(0x1c2))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x337))),console[bv(0x8c)](a0L['bold']['white'](bv(0x259))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x105))),console['log']();const aJ=aD[bv(0x156)]?a0L[bv(0x1cb)]['bold'](bv(0xef)):a0L['yellow'][bv(0x32e)](bv(0x250));console['log'](aJ),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x18a)](bv(0x12b))),console[bv(0x8c)](a0L['white']('\x20\x20\x20exam\x20center.\x20Final\x20scoring\x20and\x20selection\x20are\x20decided\x20by')),console['log'](a0L[bv(0x18a)](bv(0x33d))),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x233))),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x6d)));const aK=aF[bv(0x135)]-aF[bv(0xda)];console[bv(0x8c)]('\x20\x20\x20\x20'+a0L['gray'](bv(0x373))+a0L[bv(0x18a)](aF[bv(0xda)]+'/'+aF['total'])+(aK>-0xcd*0x29+-0x14d9+0x35ae*0x1?a0L['gray'](bv(0x1ce)+aK+bv(0x29b)):'')),console[bv(0x8c)](bv(0x1c6)+a0L[bv(0x264)](bv(0x1bd))+a0L[bv(0x18a)](aH+'m\x20'+aI+'s')+a0L[bv(0x264)]('\x20\x20of\x20'+aF['durationMin']+bv(0x140))),aF['bookmarks']>0x8b6+-0x2341+-0x1*-0x1a8b&&console[bv(0x8c)](bv(0x1c6)+a0L['gray']('Flagged:\x20\x20\x20')+a0L[bv(0x1ef)]('★\x20'+aF[bv(0x27e)])),console[bv(0x8c)]();const aL=aD[bv(0x347)];if(aL&&Object[bv(0x208)](aL)[bv(0x19c)]>=0x7*-0x4e5+0x21*-0xe5+0x3fca){const aT=Object[bv(0x342)](aL)[bv(0x157)](([,aY])=>aY['total']>0x1*-0x787+0x1*-0x15eb+0x1d72)[bv(0x2cf)](([aY,aZ])=>({'cat':aY,'pct':aZ[bv(0xaf)]/aZ[bv(0x135)]}))[bv(0x284)]((aY,aZ)=>aZ[bv(0x2e1)]-aY['pct']),aU=Math[bv(0x78)](-0x1*0xef+0x13a*0x1+0x49*-0x1,Math['ceil'](aT[bv(0x19c)]/(-0x86+0x3*0xcbf+-0x25b4))),aV=Math[bv(0x78)](-0xe30*0x1+0x20d9+-0x1*0x12a7,Math[bv(0x1ec)](aT[bv(0x19c)]/(0x1*0x1ad1+-0x1*-0x1ea7+-0x3975))),aW=aT['slice'](-0x1233+0x1eda+-0x29*0x4f,aU)[bv(0x2cf)](aY=>aY[bv(0x32f)]),aX=aT[bv(0xd7)](-aV)[bv(0x2cf)](aY=>aY[bv(0x32f)]);aW[bv(0x262)](aY=>aX[bv(0x31a)](aY))||(console['log'](a0L[bv(0x32e)][bv(0x18a)](bv(0x1f8))),console['log'](bv(0x1c6)+a0L[bv(0x1cb)](bv(0xa3))+a0L['white'](aW[bv(0x1cf)](',\x20'))),console[bv(0x8c)](bv(0x1c6)+a0L['yellow'](bv(0x35e))+a0L['white'](aX[bv(0x1cf)](',\x20'))),console['log'](a0L[bv(0x264)](bv(0x299))),console[bv(0x8c)]());}console['log'](a0L['bold'][bv(0x18a)]('\x20\x20Assistance\x20used')),console[bv(0x8c)](bv(0x1c6)+a0L['gray'](bv(0x124))+a0L['white'](aF[bv(0xd4)]['used']+'/'+aF[bv(0xd4)]['max'])),console['log'](bv(0x1c6)+a0L['gray']('AI\x20tokens:\x20')+a0L[bv(0x18a)](aF[bv(0x1b1)][bv(0x210)]+bv(0x28a))+a0L['gray'](bv(0x1ce))+a0L[bv(0x18a)](aF[bv(0x1b1)][bv(0x1d9)]+'\x20CTF4AI')),console[bv(0x8c)](),console['log'](a0L[bv(0x2ae)]('\x20\x20─────────────────────────────────────────────')),console['log'](),console['log'](a0L[bv(0x32e)][bv(0x18a)](bv(0x34b))),console['log'](a0L['gray'](bv(0x25a))),console[bv(0x8c)](a0L[bv(0x264)](bv(0x1d8))+a0L[bv(0x18a)]('demo')+a0L[bv(0x264)]('\x20is\x20free,\x20unlimited\x20practice.')),console[bv(0x8c)](a0L[bv(0x264)](bv(0x160))+a0L['white'](bv(0x2a7))),console[bv(0x8c)]();const {showCToBUpgradePrompt:aM}=await import(bv(0x1fe));aM(aF['examId'],aD[bv(0x156)]),console['log'](a0L['yellow']('\x20\x20ICOA\x202026\x20·\x20Sydney,\x20Australia\x20·\x20Jun\x2027\x20–\x20Jul\x202')),console[bv(0x8c)](a0L['cyan'][bv(0x94)]('\x20\x20https://icoa2026.au')),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x30e))),console['log']();}catch(aY){console['log'](),a0aa(aY[bv(0xb4)]);}}),B[be(0x11e)](be(0x9f))[be(0x307)]('View\x20exam\x20result')[be(0xa2)](async F=>{const bw=be;a0a8(bw(0x9a)+(F||''));const G=M();if(!G)return;if(!F){const J=a0Y();if(!J)return void a0aa('Specify\x20exam\x20ID:\x20exam\x20result\x20<id>');F=J[bw(0xa9)][bw(0x2e4)];}const H=a0ag(bw(0x24b));H[bw(0x150)]();try{const K=await G[bw(0x116)](F);H[bw(0x1e7)](bw(0x292)),console[bw(0x8c)](),a0ae(K[bw(0x162)]),a0af(bw(0x16e),a0L[bw(0x32e)](K[bw(0x2e8)]+'/'+K[bw(0x135)])),a0af(bw(0x131),a0L[bw(0x32e)](K[bw(0x16c)]+'%')),a0af(bw(0x306),K[bw(0x156)]?a0L[bw(0x1cb)]['bold']('PASSED'):a0L[bw(0x22b)]['bold'](bw(0x34a))),a0af('Submitted',K[bw(0x2f4)]),console[bw(0x8c)]();}catch(L){H['fail'](bw(0x31e)),a0aa(L[bw(0xb4)]);}}),B[be(0x11e)](be(0x293))[be(0x307)](be(0x261))[be(0xa2)](async J=>{const bx=be;a0a8(bx(0x2ac)+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import(bx(0xe3)),V=K();if(V){const a2=V['session']['token'],a3=a0a1(),a4=!!a2&&a2[bx(0x202)]()[bx(0x186)]()!==J[bx(0x202)]()['toUpperCase'](),a5=!!a3&&a3[bx(0x21e)]()+(-0x12fc7b+0x1ab3ec+0x13bfcf)<Date[bx(0x10e)]();if(a4&&a5)return Q(),console['log'](),console[bx(0x8c)](a0L[bx(0x264)](bx(0x19b))),console['log'](),console[bx(0x8c)](a0L[bx(0x18a)](bx(0x302))+a0L['bold'][bx(0x2ae)]('exam\x20'+J)),void console[bx(0x8c)]();if(!a2&&J)return V[bx(0xa9)]['token']=J[bx(0x202)](),L(V),console['log'](),console['log'](a0L['green']('\x20\x20✓\x20Token\x20re-attached\x20to\x20your\x20in-progress\x20exam.')),console[bx(0x8c)](a0L['gray'](bx(0x68))+a0L[bx(0x18a)](bx(0x234))+a0L[bx(0x264)](bx(0x171))+a0L[bx(0x18a)](bx(0x100))),console['log'](),console[bx(0x8c)](a0L[bx(0x32e)][bx(0x18a)](bx(0xc3))),console[bx(0x8c)](a0L[bx(0x264)](bx(0xa5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0x335))+a0L[bx(0x264)](bx(0x128))),console[bx(0x8c)](a0L[bx(0x264)](bx(0xa5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0xa6))+a0L['gray'](bx(0x1e9))),void console['log']();const a6=Object['keys'](V[bx(0x200)])[bx(0x19c)],a7=V[bx(0xa9)][bx(0x343)],a8=a0a1(),a9=a8?Math[bx(0x22f)](0x25a0+-0x1bd3+0xd*-0xc1,Math['round']((a8[bx(0x21e)]()-Date[bx(0x10e)]())/(0x1cf*-0x69+0x1*-0xeea8+0x296ef))):null;return console[bx(0x8c)](),console[bx(0x8c)](a0L['yellow'](bx(0x15c))),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x264)]('\x20\x20Exam:\x20\x20\x20\x20')+a0L[bx(0x18a)](V[bx(0xa9)][bx(0x162)])),a2&&console[bx(0x8c)](a0L[bx(0x264)](bx(0x1dd))+a0L[bx(0x18a)](a2)+(a2===J?a0L['green']('\x20\x20(same\x20as\x20you\x20just\x20typed)'):a0L[bx(0x1ef)](bx(0x2fd)))),console['log'](a0L['gray'](bx(0x315))+a0L[bx(0x18a)](a6+'/'+a7)),null!==a9&&console[bx(0x8c)](a0L[bx(0x264)](bx(0x2cc))+a0L['white'](a9+bx(0xd6))),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x32e)][bx(0x18a)]('\x20\x20To\x20continue\x20this\x20exam:')),console['log'](a0L[bx(0x264)](bx(0xa5))+a0L['bold'][bx(0x2ae)](bx(0x335))+a0L['gray'](bx(0x128))),console[bx(0x8c)](a0L[bx(0x264)](bx(0xa5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0xa6))+a0L[bx(0x264)](bx(0x1e9))),console[bx(0x8c)](a0L[bx(0x264)](bx(0xa5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0x100))+a0L[bx(0x264)](bx(0x369))),a2&&a2!==J&&(console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x1ef)](bx(0x338))),console['log'](a0L[bx(0x1ef)]('\x20\x20one\x20device\x20+\x20one\x20session.\x20You\x20cannot\x20switch\x20tokens\x20mid-exam.')),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x264)](bx(0x1e5))),console[bx(0x8c)](a0L[bx(0x264)](bx(0x212))+a0L[bx(0x32e)]['cyan'](bx(0x159))+a0L[bx(0x264)]('\x20to\x20wipe\x20local\x20state,\x20then\x20re-enter\x20the\x20new\x20token.'))),void console[bx(0x8c)]();}const {isNativeWindowsCmd:W}=await import(bx(0x282));if(!W()&&!a0am()){let aa=!(0x1411+0x9*0x21f+-0x2727);try{const ab={};ab[bx(0x1a8)]=bx(0x168);const ac=a0W()['ctfdUrl']||'https://practice.icoa2026.au',ad=await fetch(ac+bx(0x2e6),{'method':bx(0x7f),'headers':ab,'body':JSON[bx(0x23a)]({'token':J[bx(0x202)](),'deviceHash':a0aj(),'peek':!(-0xe13+-0x205c+0x2e6f*0x1)}),'signal':AbortSignal[bx(0x2f3)](0x240b+0x2df*-0x5+-0x228)});if(ad['ok']){const ae=await ad[bx(0x1be)]();(ae?.[bx(0x2bd)]?.[bx(0x90)]||'')[bx(0x280)]('-c')&&(aa=!(0x2f*-0x4c+0xe8d*0x1+0x99*-0x1));}}catch{}if(!aa)return console[bx(0x8c)](),a0ab(bx(0x15a)),console[bx(0x8c)](a0L['gray']('\x20\x20→\x20')+a0L[bx(0x32e)]['cyan'](bx(0x1a1))),console[bx(0x8c)](a0L[bx(0x264)](bx(0x1f5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0x2db))+a0L[bx(0x264)](bx(0x286))),console['log'](a0L[bx(0x264)](bx(0x324))),void console[bx(0x8c)]();}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']()[bx(0x372)](-0x1cf8+-0x7*0x2a9+0x2f97*0x1,0x181d+0x157f+-0x2d9a)[bx(0x186)]()],Z=a0W(),a0=Z['ctfdUrl']||bx(0x130),a1=Y||Z[bx(0x65)]||'en';Y&&Y!==(Z[bx(0x65)]||'en')&&a0X({'language':Y}),console[bx(0x8c)](),N(-0x5aa+-0x5b6+-0x4*-0x2d8,bx(0x1db));try{const af={};af['Content-Type']='application/json';const ag=await fetch(a0+'/api/icoa/exam-token',{'method':bx(0x7f),'headers':af,'body':JSON[bx(0x23a)]({'token':J[bx(0x202)](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal[bx(0x2f3)](0x65a+0xc85*0x1+0x1431)});if(!ag['ok']){N(0x1d39*-0x1+0x24cc+-0x793,''),console['log']();const ao=await ag['json']()[bx(0x247)](()=>({'message':'Invalid\x20token'}));return a0aa(ao['message']||bx(0x2a6)),void a0ac(bx(0xc7));}N(-0x16f7+-0x1*-0x1195+0x2c0*0x2,bx(0x1d2));const ah=await ag[bx(0x1be)](),{session:ai,questions:aj,languages:ak}=ah[bx(0x2bd)];N(0xa22+-0x73a+-0x13*0x24,bx(0x278)),await q(-0x16dc+0x2c3*0x8+0x18c),N(0x565+0x241b+-0x291c,bx(0x252)),console[bx(0x8c)](),console['log'](),a0ae(ai['examName']),console[bx(0x8c)](),a0af(bx(0x2ca),ai['questionCount']+bx(0x36e)),a0af(bx(0x1c9),ai['durationMinutes']+bx(0x119)),a0af(bx(0x328),(ai[bx(0x2f2)]||0x43*-0x67+-0x9b1*-0x4+-0xb39)+bx(0x1eb)),a0af(bx(0x237),(ai[bx(0x189)]||0x160c+0x37*-0xd+-0x3*0x652)+'\x20points\x20(50%)'),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x18a)]('\x20\x20Assistance:')),console[bx(0x8c)](a0L[bx(0x18a)](bx(0x277))),console[bx(0x8c)](a0L[bx(0x18a)](bx(0x6c))),console[bx(0x8c)](a0L[bx(0x18a)](bx(0x345))),ak&&ak['length']>0x3*-0xc91+-0xaab*0x3+-0x1*-0x45b5&&console['log'](a0L[bx(0x18a)](bx(0xfd)+ak[bx(0x1cf)](',\x20')+bx(0x298))),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x1ef)](bx(0x1f1))),console['log'](a0L[bx(0x18a)](bx(0x26b))),console[bx(0x8c)](a0L[bx(0x18a)]('\x20\x20\x20\x20•\x20Server\x20auto-finalises\x20your\x20answers\x20if\x20you\x20do\x20not\x20submit\x20before\x20the\x20deadline')),console[bx(0x8c)](a0L[bx(0x18a)]('\x20\x20\x20\x20•\x20You\x20may\x20exit\x20and\x20resume\x20with\x20the\x20same\x20token')),console['log'](),await new Promise(ap=>{const by=bx;process[by(0x15e)]['write'](a0L['bold'][by(0x1ef)](by(0x203)));const aq=!!process[by(0x83)]['isTTY']&&process[by(0x83)][by(0x25e)];process['stdin'][by(0x356)]&&process[by(0x83)][by(0x17e)]&&process[by(0x83)][by(0x17e)](!(0x11f6*-0x1+-0x9*0x2a5+0x29c4));const ar=as=>{const bz=by,at=as[bz(0xad)]();(at['includes']('\x0a')||at[bz(0x31a)]('\x0d'))&&(process['stdin'][bz(0xe5)](bz(0x2bd),ar),process['stdin']['isTTY']&&process[bz(0x83)][bz(0x17e)]&&process[bz(0x83)][bz(0x17e)](aq),process[bz(0x15e)][bz(0x218)]('\x0a'),ap());};process['stdin']['on'](by(0x2bd),ar),process[by(0x83)][by(0x21d)]();});const al=new Date()[bx(0x1b6)]();ai[bx(0x19d)]=al,ai['token']=J[bx(0x202)]();try{const ap=Date['now'](),aq=await fetch(a0+bx(0x276),{'method':bx(0x17d),'signal':AbortSignal[bx(0x2f3)](-0x152b+-0x19a5+-0x3a88*-0x1)});if(aq['ok']){const ar=await aq[bx(0x1be)](),as=ar?.[bx(0x2bd)]?.[bx(0x1fc)];if('number'==typeof as&&as>-0x86*-0x21+0x1440+-0x2586){const at=(ap+Date[bx(0x10e)]())/(0x23f6+-0x1*-0x1418+0x2*-0x1c06);ai[bx(0x224)]=Math[bx(0x281)](as-at),ai[bx(0x106)]=as+(0x1*0x362+0xab9+0x43*-0x35)*ai[bx(0x255)]*(0x2007+0x1*0x19cc+-0x141*0x2b);}}}catch{}const am={};am[bx(0x210)]=0x0,am['ctf4ai']=0x0;const an={};an[bx(0xa9)]=ai,an[bx(0x1e2)]=aj,an[bx(0x200)]={},an[bx(0x251)]=[],an['aiUsage']=am,(a0Z(an),console[bx(0x8c)](),a0a9(bx(0x10a)),a0af('Time\x20Remaining',ai['durationMinutes']+bx(0xbd)),aj[bx(0x19c)]>-0x1b3+0x3*-0xd1+-0x6*-0xb1&&U(aj[-0xb*0x9+-0x1559+-0x1ac*-0xd]));}catch(au){console[bx(0x8c)](),bx(0x1ff)===au[bx(0x311)]?a0aa(bx(0x24a)):a0aa(au[bx(0xb4)]||'Failed\x20to\x20start\x20exam');}}),B['command'](be(0x270),{'hidden':!(0xbfe+0xa*0x29c+0x4e*-0x7d)})[be(0x307)](be(0x266))[be(0xa2)](async()=>{const bA=be;a0a8('exam\x20reset');const {getRealExamState:F,clearExamState:G}=await import(bA(0xe3)),H=F();if(!H)return console[bA(0x8c)](),console[bA(0x8c)](a0L[bA(0x264)](bA(0x173))),void console['log']();const J=H['session'][bA(0x16a)];console[bA(0x8c)](),console[bA(0x8c)](a0L[bA(0x1ef)](bA(0x163))),console[bA(0x8c)](a0L[bA(0x264)](bA(0x1e6))+a0L[bA(0x18a)](H[bA(0xa9)]['examName'])),J&&console['log'](a0L[bA(0x264)](bA(0x1b4))+a0L[bA(0x18a)](J)),console[bA(0x8c)](a0L['gray'](bA(0x7e))),console[bA(0x8c)](a0L[bA(0x264)]('\x20\x20\x20\x20\x20still\x20active\x20and\x20not\x20submitted,\x20re-entering\x20the\x20same\x20token\x20resumes\x20it.')),console[bA(0x8c)](),console[bA(0x8c)](a0L[bA(0x264)](bA(0x1f2))+a0L['bold']['cyan'](bA(0x270))+a0L['gray'](bA(0x354)));const {getMainRl:K}=await import('../lib/main-rl.js'),L=K();if(bA(0x270)!==(await new Promise(Q=>{const bB=bA;if(L){const V=L[bB(0x21c)]('line')[bB(0xd7)]();L[bB(0x2ba)](bB(0x2a2)),L[bB(0x170)](bB(0xdd)),L[bB(0xa4)](),L[bB(0x321)](bB(0x2a2),W=>{const bC=bB;for(const X of V)L['on'](bC(0x2a2),X);Q(W[bC(0x202)]());});}else((async()=>{const bD=bB,W={};W['input']=process[bD(0x83)],W['output']=process['stdout'];const {createInterface:X}=await import(bD(0x288)),Y=X(W);Y[bD(0x6b)](bD(0xdd),Z=>{const bE=bD;Y[bE(0x93)](),Q(Z[bE(0x202)]());});})());}))[bA(0x2fe)]())return console[bA(0x8c)](a0L[bA(0x264)](bA(0x16f))),void console[bA(0x8c)]();G(),console['log'](),console[bA(0x8c)](a0L[bA(0x1cb)]('\x20\x20✓\x20Exam\x20state\x20cleared.')),console[bA(0x8c)](a0L['gray'](bA(0x363))+a0L[bA(0x32e)][bA(0x2ae)](bA(0x2dd))),console['log']();}),B[be(0x11e)](be(0xe8))['description']('Try\x20a\x20free\x20practice\x20exam\x20(no\x20account\x20needed)')[be(0xa2)](async()=>{const bF=be;a0a8(bF(0x371)),E(bF(0x34c));const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import(bF(0xfa));a0W()['demoIntroSeen']||(await(async function(){const bG=bF;let a0=!(0x104e*0x2+-0x143e+-0xf*0xd3);const a1=process['stdin'],a2=()=>{a0=!(-0x3ab*-0x4+0xceb+-0x3f1*0x7);},a3=a1['isTTY']&&bG(0x239)==typeof a1['setRawMode'];a3&&(a1['setRawMode'](!(-0x8eb*-0x1+0x1a22+-0x230d)),a1['resume'](),a1[bG(0x321)](bG(0x2bd),a2));const a4=async a5=>{let a6=0xf25+-0x1e44+0xf1f;for(;a6<a5&&!a0;)await q(-0xb55+-0x2623+0x31c8),a6+=-0x9d0+-0x225a+0x2c7a;};try{if(console[bG(0x334)](),console[bG(0x8c)](),console[bG(0x8c)](a0L[bG(0x264)](bG(0xba))+a0L['dim'](bG(0x31f))),console[bG(0x8c)](),console['log'](a0L['bold'][bG(0x18a)](bG(0x149))),console[bG(0x8c)](a0L['bold'][bG(0x18a)](bG(0x13e))),console[bG(0x8c)](a0L[bG(0x32e)]['white'](bG(0x1c2))),console[bG(0x8c)](a0L[bG(0x32e)][bG(0x18a)](bG(0x337))),console[bG(0x8c)](a0L['bold'][bG(0x18a)](bG(0x259))),console[bG(0x8c)](a0L[bG(0x32e)][bG(0x18a)](bG(0x105))),console[bG(0x8c)](),console[bG(0x8c)](a0L[bG(0x32e)][bG(0x1ef)](bG(0x2d2))),console[bG(0x8c)](a0L[bG(0x264)]('\x20\x20\x20Sydney,\x20Australia\x20\x20·\x20\x20Jun\x2027\x20–\x20Jul\x202,\x202026')),await a4(-0x1af2+-0x23*0x63+0x2a5*0x13),a0)return;if(console[bG(0x8c)](),console['log'](a0L['white'](bG(0x178))),console[bG(0x8c)](),await a4(-0xd45+-0x1*-0x1444+0x4a7*-0x1),a0)return;if(console[bG(0x8c)](a0L[bG(0x2ae)]('\x20\x20\x20\x20\x20▣\x20')+a0L['white']('Answer\x2010\x20quick\x20questions')+a0L[bG(0x264)](bG(0x30f))),await a4(-0x1afc*0x1+-0x1*0x1981+-0x43*-0xd3),a0)return;if(console[bG(0x8c)](a0L['green'](bG(0x110))+a0L[bG(0x18a)](bG(0x13c))+a0L[bG(0x264)](bG(0x1d5))),await a4(0x20*0x33+0x23d5*-0x1+0x43*0x7b),a0)return;if(console[bG(0x8c)](a0L[bG(0x22b)](bG(0x110))+a0L[bG(0x18a)]('Hack\x20the\x20AI\x27s\x20guardrails')+a0L[bG(0x264)](bG(0x2c5))),await a4(0x1326+0xa*-0x2+-0x16a*0xb),a0)return;if(console[bG(0x8c)](),console['log'](a0L[bG(0x32e)][bG(0x18a)](bG(0x1af))+a0L[bG(0x32e)][bG(0x1ef)]('IS')+a0L[bG(0x32e)][bG(0x18a)]('\x20the\x20competition.')),console[bG(0x8c)](),await a4(0x539*-0x7+0xbc*0x11+0x1def),a0)return;if(console[bG(0x8c)](a0L[bG(0x264)]('\x20\x20\x20·\x20110\x20CTF\x20tools\x20pre-configured')),await a4(0x737*-0x2+-0x522+0x548*0x4),a0)return;if(console[bG(0x8c)](a0L['gray'](bG(0x1a0))),await a4(0x100d+0x14*-0x1bb+0x141f),a0)return;if(console['log'](a0L[bG(0x264)](bG(0xeb))),await a4(-0x214*-0x2+0x6a2+-0x7aa),a0)return;console[bG(0x8c)](),console[bG(0x8c)](a0L[bG(0x32e)]['cyan'](bG(0x27a))),await a4(-0x1*-0x1a0b+0x1745+-0x1c*0x134);}finally{((()=>{const bH=bG;if(a3){a1['removeListener'](bH(0x2bd),a2);try{a1[bH(0x17e)](!(-0x25f2+-0x1ca7+0x5*0xd52));}catch{}a1['pause']();}})()),console[bG(0x334)]();}}()),a0X({'demoIntroSeen':!(0x13f7+0x953*-0x1+-0x6*0x1c6)})),console[bF(0x8c)](),console[bF(0x8c)](a0L[bF(0x18a)]('\x20\x20Demo:\x20')+a0L['gray'](H+bF(0x1a3)+J+bF(0x360))),console['log'](a0L[bF(0x264)](bF(0x169))+a0L['cyan'](bF(0x222))+a0L[bF(0x264)](bF(0xf6))+a0L['cyan'](bF(0x2db))+a0L['gray']('\x20at\x20any\x20time.')),await new Promise(a0=>{const bI=bF;process['stdout'][bI(0x218)](a0L[bI(0x32e)][bI(0x1ef)](bI(0xaa)));const a1=!!process['stdin']['isTTY']&&process['stdin']['isRaw'];process[bI(0x83)][bI(0x356)]&&process[bI(0x83)][bI(0x17e)]&&process['stdin'][bI(0x17e)](!(-0x1c11+0x1*0xf95+0xc7d*0x1));const a2=a3=>{const bJ=bI,a4=a3[bJ(0xad)]();(a4[bJ(0x31a)]('\x0a')||a4[bJ(0x31a)]('\x0d'))&&(process[bJ(0x83)]['removeListener'](bJ(0x2bd),a2),process[bJ(0x83)][bJ(0x356)]&&process[bJ(0x83)][bJ(0x17e)]&&process[bJ(0x83)][bJ(0x17e)](a1),process[bJ(0x15e)][bJ(0x218)]('\x0a'),a0());};process[bI(0x83)]['on']('data',a2),process[bI(0x83)]['resume']();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import('../lib/exam-state.js');Q()&&V(bF(0x10d)),console[bF(0x8c)](),a0ae(bF(0x309)),console[bF(0x8c)](),console[bF(0x8c)](a0L['white'](bF(0x275))),console[bF(0x8c)](a0L[bF(0x18a)]('\x20\x20'+H+bF(0x28c)+J+'\x20·\x20Pick\x20one\x20answer\x20per\x20question'));const W=a0a3();if(W[bF(0x13b)]>0x24a7+-0x762*0x5+0x43){const a0=W[bF(0x1e0)],a1=a0>=-0x174d+0x21*-0x106+0xf9*0x3b?a0L[bF(0x1cb)]:a0>=0x42c*-0x2+0x1a2*0xb+-0x962*0x1?a0L['yellow']:a0L[bF(0x18a)];console[bF(0x8c)](),console[bF(0x8c)](a0L[bF(0x264)](bF(0xb6))+a1(W['best']+'/'+H+'\x20('+a0+'%)')+a0L[bF(0x264)](bF(0x1ce)+W[bF(0x13b)]+bF(0x297)));}console['log'](),console[bF(0x8c)](a0L[bF(0x264)](bF(0x377))),console[bF(0x8c)](a0L[bF(0x18a)]('\x20\x20'+a0ai('howToPlay'))),console['log'](a0L[bF(0x1ef)](bF(0x294))+a0L[bF(0x264)](bF(0x209)+a0ai('htpAnswer'))),console[bF(0x8c)](a0L['yellow']('\x20\x20\x20\x20help')+a0L[bF(0x264)](bF(0x2ad)+a0ai(bF(0x2c3)))),console[bF(0x8c)](a0L[bF(0x1ef)](bF(0x220))+a0L['gray'](bF(0x2c7))+a0L[bF(0x1ef)]('prev')+a0L[bF(0x264)](bF(0x1c6)+a0ai('htpNav'))),console['log'](a0L[bF(0x1ef)](bF(0x197))+a0L[bF(0x264)](bF(0x2c0)+a0ai(bF(0x198)))),console[bF(0x8c)](a0L[bF(0x1ef)]('\x20\x20\x20\x20back')+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bF(0x10c)))),console[bF(0x8c)](a0L[bF(0x1ef)](bF(0x144))+a0L[bF(0x264)](bF(0x2ad)+a0ai('htpLang'))),console['log'](a0L['gray'](bF(0x85))),console[bF(0x8c)](a0L[bF(0x264)](bF(0x274))),console[bF(0x8c)](a0L[bF(0x264)]('\x20\x20─────────────────────────────────────────')),console[bF(0x8c)]();const {getConfig:X}=await import(bF(0x2b0)),Y=X()['language']||'en';'en'===Y?(console[bF(0x8c)](a0L[bF(0x264)](bF(0x14b))),console[bF(0x8c)](a0L[bF(0x264)](bF(0x27b))),console[bF(0x8c)](a0L['gray']('\x20\x20lang\x20fr\x20·\x20lang\x20ar\x20·\x20lang\x20pt\x20·\x2015\x20languages\x20supported'))):console[bF(0x8c)](a0L['green']('\x20\x20Language:\x20'+Y)),console[bF(0x8c)](),console['log'](a0L[bF(0x18a)]('\x20\x20Starting\x20exam...'));const Z={...L,'startedAt':new Date()[bF(0x1b6)]()};console[bF(0x8c)](),N(0x2345+-0xcac*-0x2+-0x3c9d,'Preparing\x20questions...'),await q(0x823+-0x16a3+0xf48),N(-0xb*0x2b0+0x1440+0x3*0x328,bF(0x99)),await q(0x346+0x49a*-0x2+0x6b6),N(0x16b2+0x3d*-0x12+-0x18*0xc1,bF(0x2ce)),await q(0x1*0x1b4d+0x5*-0x69d+0x2*0x32d),N(0x157f*-0x1+-0x2*0x1336+0x3c4f,bF(0x252)),console[bF(0x8c)](),console['log'](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af(bF(0x2ca),String(H)),a0af(bF(0x1c9),bF(0x357)),U(K[0x1*0xdab+-0x1*-0xad+-0xe58]);}),B[be(0x11e)](be(0x2a1))['description'](be(0x1b9))[be(0xa2)](async()=>{const bK=be;a0a8(bK(0xec)),E(bK(0x235));const {getLocalizedDemoSession:F}=await import(bK(0xfa)),G=a0a6();if(!G||0x3d*0x32+-0x23ef*-0x1+0x3*-0xff3===G['length'])return console[bK(0x8c)](),console[bK(0x8c)](a0L['yellow']('\x20\x20No\x20wrong\x20questions\x20to\x20retry.\x20Run\x20')+a0L[bK(0x32e)]['cyan']('demo')+a0L[bK(0x1ef)](bK(0x24d))),void console['log']();const H=a0Y();if(H){if(bK(0x10d)!==H[bK(0xa9)]['examId'])return a0ab(bK(0x1b8)+H[bK(0xa9)]['examName']+bK(0xb2)),void a0ac(bK(0x14f));a0a0();}const J=V=>{const bL=bK;if(!V[bL(0x196)])return V;const W=V[bL(0x205)][V['answer']],X=['A','B','C','D'][bL(0x2cf)](a2=>V[bL(0x205)][a2]);for(let a2=X[bL(0x19c)]-(-0x15e7+0x1*0x20e+0x13da);a2>0x220c+0x10ea+-0x32f6;a2--){const a3=Math['floor'](Math[bL(0x7d)]()*(a2+(-0xeb0+0x3be*-0x1+0x126f)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[-0xb2f*0x3+0x1525+0xc68],Y['B']=X[-0x1a0d+-0xcbc+0x26ca],Y['C']=X[0x1*0x1262+-0x242f*-0x1+0x1*-0x368f],Y['D']=X[-0x1*-0x565+-0x7*-0x3f7+0x2123*-0x1];const Z=Y,a0=['A','B','C','D'][bL(0x1ac)](a4=>Z[a4]===W),a1={...V};return a1[bL(0x205)]=Z,a1[bL(0x196)]=a0,a1;},K=G['map']((V,W)=>({...J(V),'number':W+(0xcf9+0x1f6b+-0x1*0x2c63)})),L=F(),Q={...L,'examName':L[bK(0x162)]+bK(0x232),'questionCount':K[bK(0x19c)],'startedAt':new Date()[bK(0x1b6)]()};console[bK(0x8c)](),a0ae(bK(0x2f8)),console['log'](),console[bK(0x8c)](a0L[bK(0x18a)](bK(0x102)+K[bK(0x19c)]+bK(0xfe)+(0x2e9+-0x4*0x90a+0xe*0x260===K[bK(0x19c)]?'':'s')+'\x20you\x20got\x20wrong.')),console[bK(0x8c)](a0L['gray'](bK(0x1d3))),console[bK(0x8c)](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af(bK(0x2ca),String(K[bK(0x19c)])),a0af('Duration','No\x20time\x20limit'),U(K[0xa18+0x1f*0x71+-0x17c7]);}),B[be(0x11e)](be(0x269))['description']('Install\x20Python\x20environment\x20for\x20practical\x20exam\x20questions')[be(0xa2)](async()=>{const bM=be;if(a0a8(bM(0x1a1)),0xf14+-0x1d98+0x2*0x742===a0a3()[bM(0x13b)])return console[bM(0x8c)](),a0ab(bM(0x29e)),console[bM(0x8c)](a0L[bM(0x264)](bM(0x2a5))+a0L[bM(0x32e)]['cyan'](bM(0x371))),void console[bM(0x8c)]();const K=a0ak();if(K){const a4=K[bM(0x36b)][bM(0x19c)],a5=a4+K[bM(0x358)][bM(0x19c)];if(a4>=0x104+-0x7*0x50b+0x2251||(a5>0x343+0x1*-0x1f85+0x1c42?a4/a5:0x967*-0x1+0x143e+0x4b*-0x25)>=0x5*0x46f+0xedb*-0x1+-0x750+0.7)return console['log'](),console['log'](a0L[bM(0x1cb)](bM(0x15d))+a0L[bM(0x1cb)](bM(0x325))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20Completed:\x20'+K[bM(0x30c)][bM(0x35f)]('T')[0x95a+0x1f43+-0x119*0x25])),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20Python:\x20'+K[bM(0x29d)])),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20Packages:\x20'+a4+'\x20installed')),K[bM(0x358)]['length']>-0x1e2f+0xd*0x1f+-0x4*-0x727&&console[bM(0x8c)](a0L[bM(0x1ef)](bM(0x336)+K['failedPackages'][bM(0x1cf)](',\x20'))),console[bM(0x8c)](),console[bM(0x8c)](a0L['white']('\x20\x20Next\x20step:\x20')+a0L[bM(0x32e)][bM(0x2ae)]('exam\x20<token>')),console[bM(0x8c)](a0L['gray'](bM(0x1f5))+a0L['bold'][bM(0x2ae)]('back')+a0L[bM(0x264)]('\x20to\x20return\x20to\x20the\x20main\x20menu.')),void console[bM(0x8c)]();console['log'](),console[bM(0x8c)](a0L[bM(0x1ef)](bM(0x24e)+a4+'/'+a5+'\x20packages.\x20Retrying...')),console[bM(0x8c)]();}console['log'](),a0ae(bM(0x111)),console[bM(0x8c)](),console[bM(0x8c)](a0L['white'](bM(0x296))),console[bM(0x8c)](a0L[bM(0x264)](bM(0xe0))),console[bM(0x8c)]();const L=(a6,a7)=>{const bN=bM,a8=process[bN(0x175)];console[bN(0x8c)](),a0aa(bN(0x8f)===a6?bN(0x164):'Python\x20'+a7+bN(0x145)),console[bN(0x8c)](),console[bN(0x8c)](a0L['bold'][bN(0x18a)](bN(0x25b))),console[bN(0x8c)](),bN(0x134)===a8?(console[bN(0x8c)](a0L['yellow'](bN(0x153))),console['log'](a0L[bN(0x1cb)](bN(0x67))),console['log'](),console['log'](a0L['gray'](bN(0x23b))),console[bN(0x8c)](a0L[bN(0x264)]('\x20\x20\x20\x20https://www.python.org/downloads/macos/'))):bN(0x24f)===a8?(console[bN(0x8c)](a0L[bN(0x1ef)](bN(0x1b2))),console[bN(0x8c)](a0L[bN(0x1cb)]('\x20\x20\x20\x20sudo\x20add-apt-repository\x20ppa:deadsnakes/ppa\x20-y')),console['log'](a0L[bN(0x1cb)]('\x20\x20\x20\x20sudo\x20apt\x20update')),console[bN(0x8c)](a0L['green']('\x20\x20\x20\x20sudo\x20apt\x20install\x20-y\x20python3.12\x20python3.12-venv\x20python3.12-distutils')),console[bN(0x8c)](a0L['gray'](bN(0x15b))),console['log'](),console[bN(0x8c)](a0L[bN(0x1ef)](bN(0x1aa))),console['log'](a0L[bN(0x1cb)]('\x20\x20\x20\x20sudo\x20dnf\x20install\x20-y\x20python3.12')),console[bN(0x8c)](),console[bN(0x8c)](a0L['yellow'](bN(0x2dc))),console[bN(0x8c)](a0L[bN(0x1cb)](bN(0x226)))):bN(0x21b)===a8?(console[bN(0x8c)](a0L[bN(0x1ef)](bN(0x23d))),console[bN(0x8c)](a0L['green'](bN(0xd3))),console[bN(0x8c)](),console['log'](a0L[bN(0x264)](bN(0x23b))),console['log'](a0L[bN(0x264)](bN(0x23c)))):console[bN(0x8c)](a0L[bN(0x264)](bN(0xc2))),console['log'](),console[bN(0x8c)](a0L[bN(0x18a)](bN(0x195))+a0L['bold'][bN(0x2ae)]('exam\x20setup')),console[bN(0x8c)]();},Q=bM(0x27f);let V='';try{const a6={};a6[bM(0x2be)]=bM(0x368),a6['timeout']=0x1388,V=a0an(Q+'\x20--version',a6)['trim']()[bM(0xcb)](bM(0x25f),'');const a7=V['split']('.')['map'](Number);if(a7[0x1098+0x3b2+-0x62*0x35]<-0xad*-0x1c+0x1a4b*-0x1+0x762||0x58f*0x1+0x19cc+-0x22*0xec===a7[0x2599+-0xad2+-0x1ac7]&&a7[0x7a*0x45+0x1593+-0x3674]<0x1069*-0x1+0x1f25+-0xeb2)return void L(bM(0x24c),V);-0x1b9d+0x14b7+-0x1d*-0x3d===a7[-0x1376+-0x2d3*-0x4+0x82a]&&a7[0x17e*0x14+-0x1fd8+-0xab*-0x3]<-0x13f*0x1f+0xa29+0x1c84?console['log'](a0L[bM(0x1cb)](bM(0x29f)+V)+a0L[bM(0x264)]('\x20(works,\x20but\x203.12\x20recommended)')):console['log'](a0L[bM(0x1cb)](bM(0x29f)+V));}catch{return void L(bM(0x8f));}try{const a8={};a8[bM(0x21f)]='ignore',a8[bM(0x2f3)]=0x1388,(a0an(Q+'\x20-m\x20pip\x20--version',a8),console[bM(0x8c)](a0L['green'](bM(0xf4))));}catch{console[bM(0x8c)](a0L['yellow'](bM(0x2ef)));try{const a9={};a9[bM(0x21f)]=bM(0x246),a9[bM(0x2f3)]=0x7530,(a0an(Q+bM(0x2cb),a9),console['log'](a0L[bM(0x1cb)](bM(0x207))));}catch{a0aa(bM(0xbc)),console[bM(0x8c)]();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import('../lib/platform.js'),{execFileSync:ac}=await import(bM(0xcd)),ad=aa(),ae=ab(),af=bM(0x24f)===process[bM(0x175)]&&!ad,ag=bM(0x134)===process[bM(0x175)];let ah='your\x20Linux\x20distro';if(af||ad)try{const {readFileSync:ak}=await import(bM(0x17b)),al=ak(bM(0x69),bM(0x368)),am=(al['match'](/^ID="?([^"\n]+)/m)||[])[0x1*-0x1969+0x98d+0xfdd]||'',an=(al[bM(0x355)](/^VERSION_ID="?([^"\n]+)/m)||[])[-0x2347+-0x1*-0x1055+0x12f3]||'';bM(0x2cd)===am?ah=bM(0x2ea)+an+(ad?'\x20(WSL2)':''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?bM(0x147):''));}catch{}let ai=!(0x1*0xe93+-0x5*-0x1d6+0x40*-0x5f);if(ag)try{const ao={};ao[bM(0x21f)]=bM(0x246),ao[bM(0x2f3)]=0x7d0,(ac(bM(0x35d),[bM(0xea)],ao),ai=!(-0x1*-0x1ae7+-0x1cc0+0x1d9));}catch{ai=!(-0x2045+-0x1*0x1145+0x318b);}const aj=ae?'⚠\x20\x20EXIT\x20icoa\x20first\x20—\x20installer\x20cannot\x20run\x20inside\x20the\x20prompt':'⚠\x20\x20EXIT\x20icoa\x20first\x20—\x20sudo\x20cannot\x20run\x20inside\x20the\x20prompt';return console[bM(0x8c)](a0L['bold']['yellow'](bM(0x248))),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x1ef)]('\x20\x20'+aj)),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x1ef)](bM(0x248))),console['log'](),af||ad?(console['log'](a0L[bM(0x18a)](bM(0x313))+a0L['cyan'](ah)),console[bM(0x8c)](a0L[bM(0x264)](bM(0x240))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x18a)](bM(0x1ed))),console[bM(0x8c)](),console['log'](a0L[bM(0x18a)](bM(0x2b5))+a0L['bold'][bM(0x2ae)]('quit')+a0L[bM(0x18a)]('\x20and\x20press\x20Enter\x20to\x20leave\x20icoa')),console[bM(0x8c)](),console['log'](a0L[bM(0x18a)]('\x20\x20\x20\x202.\x20In\x20your\x20shell,\x20run:')),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)]['cyan'](bM(0x158))),console[bM(0x8c)]('\x20\x20\x20\x20\x20\x20\x20'+a0L['bold'][bM(0x2ae)](bM(0x104))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x1ba))),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L['bold'][bM(0x2ae)](bM(0xf0))),console[bM(0x8c)](bM(0x209)+a0L[bM(0x264)]('icoa>')+'\x20'+a0L[bM(0x32e)][bM(0x2ae)]('exam\x20setup'))):ag?(console[bM(0x8c)](a0L[bM(0x18a)](bM(0x313))+a0L[bM(0x2ae)](bM(0x89))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x18a)](bM(0x1ed))),console[bM(0x8c)](),console[bM(0x8c)](a0L['white'](bM(0x2b5))+a0L[bM(0x32e)][bM(0x2ae)]('quit')+a0L['white'](bM(0x310))),console[bM(0x8c)](),ai?(console['log'](a0L[bM(0x18a)](bM(0x1f0))),console[bM(0x8c)](),console['log'](bM(0x209)+a0L[bM(0x32e)]['cyan']('brew\x20install\x20python@3.12')),console[bM(0x8c)](bM(0x209)+a0L['bold']['cyan']('brew\x20link\x20--overwrite\x20python@3.12'))):(console['log'](a0L[bM(0x18a)](bM(0x2b1))+a0L['bold'][bM(0x1ef)](bM(0xea))+a0L['white']('):')),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L['bold'][bM(0x2ae)](bM(0x75))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x2c2))),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)]('brew\x20install\x20python@3.12'))),console['log'](),console['log'](a0L[bM(0x18a)]('\x20\x20\x20\x203.\x20Restart\x20icoa\x20and\x20retry:')),console['log'](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)]['cyan']('icoa')),console[bM(0x8c)](bM(0x209)+a0L[bM(0x264)](bM(0x114))+'\x20'+a0L[bM(0x32e)][bM(0x2ae)](bM(0x1a1)))):ae?(console['log'](a0L[bM(0x18a)](bM(0x313))+a0L[bM(0x2ae)](bM(0x33e))),console[bM(0x8c)](),console['log'](a0L[bM(0x32e)][bM(0x1ef)](bM(0x1b0))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20Native\x20Windows\x20can\x20run\x20Paper\x20C\x20(MCQ-only)\x20and\x20AI\x20chat,\x20but')),console['log'](a0L['gray'](bM(0xf3))),console[bM(0x8c)](a0L[bM(0x264)](bM(0x326))),console['log'](),console[bM(0x8c)](a0L[bM(0x32e)]['white'](bM(0x32b))),console[bM(0x8c)](),console['log'](a0L['white'](bM(0x2b5))+a0L['bold'][bM(0x2ae)]('quit')+a0L[bM(0x18a)](bM(0x310))),console[bM(0x8c)](a0L[bM(0x18a)]('\x20\x20\x20\x202.\x20In\x20an\x20Administrator\x20PowerShell,\x20run:')),console[bM(0x8c)](),console['log'](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)](bM(0xb8))),console[bM(0x8c)](),console[bM(0x8c)](a0L['gray'](bM(0x31d))),console[bM(0x8c)](a0L[bM(0x18a)]('\x20\x20\x20\x203.\x20Inside\x20Ubuntu,\x20install\x20Node.js\x2022\x20+\x20Python\x20tools\x20+\x20icoa:')),console[bM(0x8c)](),console['log'](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)](bM(0xb1))),console[bM(0x8c)](bM(0x209)+a0L['bold'][bM(0x2ae)](bM(0x37c))),console[bM(0x8c)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x32e)][bM(0x2ae)](bM(0x1e8))),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)](bM(0xf0))),console['log'](),console[bM(0x8c)](a0L['gray'](bM(0x9e))),console[bM(0x8c)](),console[bM(0x8c)](a0L['white'](bM(0x2b5))+a0L[bM(0x32e)][bM(0x2ae)]('quit')+a0L['white'](bM(0x310))),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x375))),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)]['cyan']('winget\x20install\x20--id\x20Python.Python.3.12\x20-e')),console[bM(0x8c)](),console['log'](a0L[bM(0x264)](bM(0x350))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20\x20\x20\x20\x20PATH\x22\x20+\x20\x22Install\x20pip\x22\x20during\x20the\x20installer.)')),console[bM(0x8c)](a0L['white'](bM(0xff))),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)]['cyan']('icoa')),console[bM(0x8c)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x264)](bM(0x114))+'\x20'+a0L[bM(0x32e)][bM(0x2ae)](bM(0x1a1)))):(console[bM(0x8c)](a0L[bM(0x18a)](bM(0xd8))+a0L['cyan'](process['platform'])+a0L[bM(0x18a)](')')),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x264)](bM(0x254))),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)](bM(0xf0))),console[bM(0x8c)](bM(0x209)+a0L['gray'](bM(0x114))+'\x20'+a0L[bM(0x32e)]['cyan']('exam\x20setup'))),console['log'](),console[bM(0x8c)](a0L['gray']('\x20\x20Stuck?\x20Email\x20your\x20selection\x20coordinator\x20with\x20the\x20screenshot\x20above.')),void console[bM(0x8c)]();}}const W={};W[bM(0x216)]=bM(0xfb),W['pycryptodome']=bM(0x2ab),W[bM(0x117)]='z3',W['pillow']=bM(0xcc),W[bM(0x129)]=bM(0x7b),W[bM(0x265)]=bM(0xe4);const X=['pwntools',bM(0x86),bM(0x1c8),bM(0x216),bM(0x2bb),'pillow',bM(0x320),'sympy','z3-solver',bM(0x2f7),bM(0x265),bM(0x206),bM(0x2de)],Y=W;console['log'](),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x120)+X[bM(0x19c)]+'\x20packages...')),console[bM(0x8c)]();let Z='';try{const ap={};ap[bM(0x2be)]=bM(0x368),ap[bM(0x2f3)]=0x2710,a0an(Q+bM(0x21a),ap);}catch(aq){const ar=String(aq?.[bM(0x15e)]||aq?.[bM(0x249)]||aq?.[bM(0xb4)]||'');/externally-managed-environment|break-system-packages/i['test'](ar)&&(Z=bM(0xe2),console['log'](a0L['yellow']('\x20\x20ℹ\x20PEP\x20668\x20detected\x20—\x20using\x20--user\x20install\x20(no\x20sudo\x20needed)')),console[bM(0x8c)]());}const a0=V[bM(0x35f)]('.')['map'](Number);-0x233*-0xa+0x460*-0x2+-0x1*0xd3b===a0[0x4*0x3cb+0xc2a*-0x3+0x1552]&&a0[0x22*-0xa5+-0x2*-0x4bf+0xc6d*0x1]>=-0x1*0x168e+0x22a7+-0x303*0x4&&(console['log'](a0L[bM(0x1ef)](bM(0x82)+V+bM(0x18b))),console[bM(0x8c)](a0L['gray'](bM(0x18e))),console[bM(0x8c)](a0L[bM(0x264)](bM(0x23e))),'linux'===process[bM(0x175)]&&(console[bM(0x8c)](a0L[bM(0x1cb)]('\x20\x20\x20\x20\x20\x20sudo\x20apt\x20install\x20python3.12\x20python3.12-venv')),console[bM(0x8c)](a0L[bM(0x1cb)](bM(0x11d)))),console[bM(0x8c)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+bM(0x2d6)+as+'\x22\x20'+Z+'\x20--quiet\x202>&1',{'encoding':bM(0x368),'timeout':0x2bf20,'stdio':bM(0x2fa)}),a0an(Q+bM(0x187)+(Y[as]||as)+'\x22',{'stdio':'ignore','timeout':0x2710});let at='';try{const au=a0an(Q+bM(0x96)+as+bM(0x1fa),{'encoding':bM(0x368),'timeout':0x1388})['match'](/^Version:\s*(.+)$/m);au&&(at=au[-0x133c*0x2+-0x7*-0x43d+-0x2e*-0x31][bM(0x202)]());}catch{}console[bM(0x8c)](a0L[bM(0x1cb)](bM(0x15d)+as)+(at?a0L[bM(0x264)]('\x20('+at+')'):'')),a1[bM(0x26a)](at?as+'=='+at:as);}catch(av){const aw=String(av?.[bM(0x15e)]||av?.[bM(0x249)]||av?.[bM(0xb4)]||'')['slice'](-(0x35*-0x19+0x1fe2+-0x1925)),ax=aw['split']('\x0a')[bM(0x157)](ay=>ay[bM(0x202)]())[bM(0xd7)](-(-0x1*-0x1b6b+-0xc7*0x5+-0x1786))['join'](bM(0xae))[bM(0xd7)](0x6b2+0x1*0x2329+-0x29db,-0x1*0x1481+0x193e+-0x445);console[bM(0x8c)](a0L[bM(0x22b)]('\x20\x20✗\x20'+as)+a0L['gray']('\x20\x20'+ax)),a2[bM(0x26a)]({'pkg':as,'error':ax}),a3||(a3=aw);}0x211d+-0x72d*-0x2+-0x1*0x2f77===a1[bM(0x19c)]&&a3&&(console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x1ef)]('\x20\x20First\x20error\x20detail\x20(for\x20debugging):')),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20'+a3[bM(0x35f)]('\x0a')['slice'](-(0xb88+0x73*0x2b+-0xd*0x25f))[bM(0x1cf)](bM(0x1f7))))),a0al({'completedAt':new Date()[bM(0x1b6)](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2[bM(0x2cf)](ay=>ay['pkg'])}),console['log'](),0xfbb+-0x13b8*0x1+0x3fd===a2[bM(0x19c)]?a0a9(bM(0x132)+X[bM(0x19c)]+'\x20packages\x20installed.'):-0x82d*0x4+-0x24d4*-0x1+0x8*-0x84===a1[bM(0x19c)]?(a0aa('Setup\x20failed\x20—\x200\x20of\x20'+X['length']+bM(0x308)),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x1ef)]('\x20\x20Troubleshooting:')),0x1*-0x977+0x1fca+0x66*-0x38===a0[0x2539+-0x704+-0x1e35]&&a0[-0xf15+-0x7*0x1f3+-0x1cbb*-0x1]>=0x3e*-0x5a+-0x150e+0x621*0x7?(console[bM(0x8c)](a0L[bM(0x264)](bM(0x1a5))),console[bM(0x8c)](a0L['gray'](bM(0x2bf)))):(console[bM(0x8c)](a0L['gray'](bM(0x327))),console['log'](a0L[bM(0x264)](bM(0x272))+a0L[bM(0x2ae)](Q+bM(0x101))+a0L[bM(0x264)](bM(0x91))),console[bM(0x8c)](a0L[bM(0x264)](bM(0x6e)))),console[bM(0x8c)](),console['log'](a0L[bM(0x18a)](bM(0x1ee))+a0L[bM(0x32e)]['cyan']('exam\x20setup'))):a0ab(a1['length']+'/'+X[bM(0x19c)]+'\x20packages\x20installed.\x20'+a2[bM(0x19c)]+bM(0x318)+a2['map'](ay=>ay[bM(0x11a)])[bM(0x1cf)](',\x20')),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x2ae)](bM(0x341))),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x18a)](bM(0x84))),console[bM(0x8c)](a0L[bM(0x2ae)](bM(0x341))),console['log'](),console['log'](a0L['bold'][bM(0x1ef)](bM(0x253))+a0L[bM(0x264)](bM(0x136))),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x1a2))),console[bM(0x8c)](a0L[bM(0x1cb)](bM(0x172))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20→\x20b\x27Hello\x27')),console['log'](),console['log'](a0L['bold'][bM(0x1ef)](bM(0x2f5))+a0L['gray'](bM(0x20a))),console['log'](a0L[bM(0x18a)](bM(0x305))),console['log'](a0L[bM(0x1cb)](bM(0xde))),console['log'](a0L[bM(0x264)]('\x20\x20\x20\x20>>>\x20from\x20Crypto.Cipher\x20import\x20AES')),console[bM(0x8c)](a0L['gray'](bM(0x122))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20>>>\x20cipher\x20=\x20AES.new(key,\x20AES.MODE_CBC,\x20iv)')),console[bM(0x8c)](a0L['gray'](bM(0x12e))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20>>>\x20exit()')),console[bM(0x8c)](),console['log'](a0L['bold'][bM(0x1ef)]('\x20\x20Method\x203:\x20Script\x20file')+a0L[bM(0x264)](bM(0x2fc))),console[bM(0x8c)](a0L['white'](bM(0x37a))),console[bM(0x8c)](a0L[bM(0x1cb)](bM(0x35c))),console[bM(0x8c)](a0L['gray']('\x20\x20\x20\x20from\x20pwn\x20import\x20xor')),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20ct\x20=\x20bytes.fromhex(\x220a2b0e1c...\x22)')),console[bM(0x8c)](a0L[bM(0x264)](bM(0x190))),console[bM(0x8c)](a0L[bM(0x264)](bM(0x1a9))),console[bM(0x8c)](a0L['green'](bM(0x107))),console['log'](a0L[bM(0x1cb)]('\x20\x20\x20\x20!python3\x20solve.py')),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x1ef)](bM(0x11f))),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x256))+a0L[bM(0x32e)]['cyan']('hint')+a0L['white'](bM(0x36f))),console[bM(0x8c)](a0L['gray']('\x20\x20\x20\x20\x22How\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console['log'](a0L[bM(0x264)](bM(0xbf))),console[bM(0x8c)](a0L['gray']('\x20\x20\x20\x20AI\x20budget:\x2025K\x20tokens\x20for\x20AI4CTF\x20+\x2025K\x20for\x20CTF4AI')),console[bM(0x8c)](a0L[bM(0x2ae)](bM(0x341))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x303))+a0L[bM(0x32e)][bM(0x2ae)](bM(0x2dd))),console[bM(0x8c)](a0L['gray'](bM(0x1f5))+a0L[bM(0x32e)]['cyan'](bM(0x2db))+a0L[bM(0x264)]('\x20to\x20return\x20to\x20the\x20main\x20menu.')),console[bM(0x8c)]();}),B[be(0xa2)](()=>{const bO=be;a0a8(bO(0x1c7));const F=a0Y();if(F){a0ae(bO(0xe9)+F['session'][bO(0x162)]),O();const J=Object[bO(0x208)](F[bO(0x200)])[bO(0x19c)];return a0af(bO(0x2c8),J+'/'+F[bO(0xa9)][bO(0x343)]+bO(0x8d)),console[bO(0x8c)](),void console[bO(0x8c)](a0L['gray']('\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[bO(0x8c)](),a0ae('ICOA\x20National\x20Selection\x20Exam'),console['log'](),0xd*-0x22c+0x755*-0x2+0x13*0x242===G[bO(0x13b)]?(console['log'](a0L['yellow'](bO(0x113))+a0L[bO(0x1ef)]('Recommended:\x20complete\x20demo\x20first')),console[bO(0x8c)](a0L['gray'](bO(0xa5))+a0L['bold'][bO(0x2ae)](bO(0x371)))):(console[bO(0x8c)](a0L[bO(0x1cb)]('\x20\x20●\x20')+a0L[bO(0x1cb)](bO(0x167)+G[bO(0x13b)]+'\x20attempt'+(0x1741+-0x1614+-0x12c!==G[bO(0x13b)]?'s':'')+')')),H?(console[bO(0x8c)](a0L[bO(0x1cb)](bO(0xfc))+a0L[bO(0x1cb)](bO(0x201))),console[bO(0x8c)](a0L[bO(0x1ef)](bO(0x113))+a0L[bO(0x1ef)](bO(0x166))),console[bO(0x8c)](a0L[bO(0x264)](bO(0xa5))+a0L[bO(0x32e)][bO(0x2ae)](bO(0x2dd)))):(console[bO(0x8c)](a0L['yellow'](bO(0x113))+a0L[bO(0x1ef)](bO(0x2a3))),console[bO(0x8c)](a0L[bO(0x264)](bO(0xa5))+a0L[bO(0x32e)][bO(0x2ae)](bO(0x1a1))))),console[bO(0x8c)]();});}
|
package/dist/commands/learn.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import chalk from"chalk";import{createInterface as o}from"node:readline";import{spawn as e}from"node:child_process";import{
|
|
1
|
+
import chalk from"chalk";import{createInterface as o}from"node:readline";import{spawn as e}from"node:child_process";import{getMainRl as r}from"../lib/main-rl.js";import{existsSync as n}from"node:fs";import{dirname as l,join as t}from"node:path";import{fileURLToPath as a}from"node:url";import{loadCurriculum as s,loadCurriculumById as i,validateEAToken as c,syncProgress as u}from"../lib/learn-curricula.js";import{getConfig as d}from"../lib/config.js";import{loadLearnState as m,saveLearnState as g,newLearnState as y,updateStreak as p,markCardComplete as f,recordMCQ as b,markPracticalComplete as h,addAchievement as k}from"../lib/learn-state.js";import{renderWelcome as w,renderKnowledgeCard as x,renderMCQCard as v,renderMCQFeedback as C,renderPracticalCard as A,renderPracticalSuccess as E,renderSimDemoCard as P,renderMilestone as j,renderStatus as _}from"../lib/learn-render.js";import{printError as T}from"../lib/ui.js";export function registerLearnCommand(L){L.command("learn [token]").description("Enter learn mode (free if no token; team-issued EAxxxxxxxx for full curriculum)").action(async L=>{L&&L.trim()||(console.log(),console.log(chalk.gray(" No token given — starting free 11-card demo (")+chalk.bold.green("LEARNDEMO01")+chalk.gray(").")),console.log(chalk.gray(" Full curriculum (100/480 cards): ")+chalk.bold.yellow("learn EAxxxxxxxx")+chalk.gray(" — token from your country team leader.")),console.log(),L="LEARNDEMO01");const M=L.trim().toUpperCase();let S=s(M);if(!S&&/^EA[A-Z0-9]{8}$/i.test(M)){const o=d().ctfdUrl||"https://practice.icoa2026.au";console.log(),console.log(chalk.gray(" Validating EA token..."));const e=await c(M,o);if(!e.ok)return T(`Token validation failed: ${e.message}`),console.log(),console.log(chalk.gray(" Possible causes:")),console.log(chalk.gray(" · Token expired or revoked")),console.log(chalk.gray(" · Network down (check connection)")),console.log(chalk.gray(" · Typo in token")),void console.log();if(console.log(chalk.green(` ✓ Token valid · curriculum: ${e.curriculumId} · status: ${e.status}`)),S=await i(e.curriculumId||"LEARNDEMO01"),!S)return T(`Curriculum '${e.curriculumId}' not bundled in this CLI version.`),void console.log(chalk.gray(" Upgrade with: ")+chalk.bold.cyan("npm install -g icoa-cli@latest"))}if(!S)return T(`Unknown learn token: ${M}`),console.log(),console.log(chalk.gray(" Available tokens:")),console.log(chalk.gray(" ")+chalk.bold.green("LEARNDEMO01")+chalk.gray(" free 10-card demo (anyone can use)")),console.log(chalk.gray(" ")+chalk.bold.yellow("EAxxxxxxxx")+chalk.gray(" full curriculum (issued by team leader)")),console.log(),console.log(chalk.gray(" To get the full curriculum (n=480 cards, PhD-entry), email ")),console.log(chalk.gray(" ")+chalk.cyan("asra@icoa2026.au")+chalk.gray(" or ask your country's team leader.")),void console.log();let $=m(),q=!1;$&&$.token===M?p($):($=y(M,S.id,S.totalCards),q=!0),g($),w(S,$,q);const D=r(),I=null!==D,N=I?D.listeners("line").slice():[];I&&D.removeAllListeners("line");const O=I?D:o({input:process.stdin,output:process.stdout,terminal:!0}),U=()=>{O.setPrompt(chalk.bold.cyan("learn> ")),O.prompt()};U();let R=null,J=null;const B=[],F=o=>S.cards.find(e=>e.number===o),G=()=>{const o=F($.currentCard);if(!o)return console.log(),console.log(chalk.gray(" No more cards in this curriculum.")),console.log(chalk.gray(" Type ")+chalk.bold.green("status")+chalk.gray(" for the dashboard or ")+chalk.bold.green("quit")+chalk.gray(" to exit.")),void console.log();switch(o.type){case"knowledge":x(o,S),f($,o.number),g($);break;case"mcq":v(o,S),R=o.number;break;case"practical":A(o,S),J=o.number;break;case"sim_demo":P(o,S),f($,o.number),g($);break;case"milestone":j(o,S),k($,o.badge),f($,o.number),g($)}};O.on("line",async o=>{const r=o.trim().toLowerCase();if(r){if("menu"===r||"menu confirm"===r){B.length>0&&await Promise.race([Promise.allSettled(B),new Promise(o=>setTimeout(o,3e3))]);const{returnToMainMenu:o}=await import("../lib/menu-nav.js");return void o(O)}if("quit"!==r&&"exit"!==r&&"q"!==r){if("status"===r)return _(S,$),void U();if("sim"===r){const o=F($.currentCard);return o&&"sim_demo"===o.type?(function(o){const r=function(){const o=l(a(import.meta.url)),e=[t(o,"..","..","panda","mujoco-launcher.py"),t(o,"..","..","..","panda","mujoco-launcher.py")];for(const o of e)if(n(o))return o;return null}();if(!r)return console.log(chalk.yellow(" MuJoCo launcher not found.")),console.log(chalk.gray(" Get it from: https://github.com/newaipanda/ICOA_CLI/blob/main/panda/mujoco-launcher.py")),void console.log(chalk.gray(" Or use the sandbox-vla docker image (Phase 3)."));const s={baseline:"baseline",prompt_injected:"prompt_inj",patch_attacked:"patch",modality_confused:"confused"}[o]||"baseline";console.log(chalk.gray(` Launching MuJoCo viewer (scenario: ${s})...`)),console.log(chalk.gray(" Close the window or press ESC to return to learn mode.")),e("python3",[r,s,"--seconds","5"],{stdio:"inherit"}).on("exit",o=>{0!==o?console.log(chalk.yellow(` MuJoCo exited with code ${o} (install: pip install mujoco)`)):console.log(chalk.gray(" Returned from sim."))})}(o.simAction),void U()):(console.log(chalk.gray(" (sim only available on simulation cards)")),void U())}if("bookmark"===r){const o=$.currentCard;return $.bookmarks.includes(o)||$.bookmarks.push(o),g($),console.log(chalk.gray(` ✓ Card ${o} bookmarked.`)),void U()}if("back"===r)return $.currentCard>1&&($.currentCard-=1),R=null,J=null,g($),G(),void U();if(null!==R&&["a","b","c","d"].includes(r)){const o=F(R);if(o&&"mcq"===o.type){const e=r.toUpperCase(),n=e===o.answer;b($,o.number,{answer:e,correct:n,submittedAt:(new Date).toISOString()}),f($,o.number),g($),C(o,e,n,$);const l=d();return B.push(u(M,l.ctfdUrl||"https://practice.icoa2026.au",{card_number:o.number,event_type:"mcq_answered",mcq_answer:e,mcq_correct:n}).catch(()=>{})),R=null,void U()}}if(null!==J){if("done"===r){const o=F(J);if(o&&"practical"===o.type)return h($,o.number),f($,o.number),g($),E(o),J=null,void U()}if("skip"===r)return f($,J),g($),console.log(chalk.gray(" Skipped (counts as not completed).")),console.log(),J=null,void U()}if("ok"===r||"next"===r||"continue"===r||"n"===r)return null!==R?(console.log(chalk.yellow(" Please answer the MCQ first (A / B / C / D).")),void U()):null!==J?(console.log(chalk.yellow(" Please type ")+chalk.bold.green("done")+chalk.yellow(" or ")+chalk.bold.yellow("skip")+chalk.yellow(" for the practical.")),void U()):($.currentCard+=1,g($),$.currentCard>S.totalCards?(console.log(),console.log(chalk.bold.green(" 🎉 You've reached the end of the demo curriculum!")),console.log(chalk.gray(" Type ")+chalk.bold.green("status")+chalk.gray(" to see your full stats.")),console.log()):G(),void U());console.log(chalk.gray(" Unknown command. Try: ")+chalk.white("ok")+chalk.gray(" / ")+chalk.white("status")+chalk.gray(" / ")+chalk.white("quit")),U()}else if(B.length>0&&await Promise.race([Promise.allSettled(B),new Promise(o=>setTimeout(o,5e3))]),console.log(),console.log(chalk.gray(" Saved. See you next session.")),console.log(chalk.gray(" Streak: ")+chalk.yellow(`🔥 ${$.streakDays} day(s)`)),console.log(),I){O.removeAllListeners("line");for(const o of N)O.on("line",o);O.prompt()}else O.close()}else U()}),I||O.on("close",async()=>{B.length>0&&await Promise.race([Promise.allSettled(B),new Promise(o=>setTimeout(o,5e3))]),process.exit(0)}),G(),U()})}
|
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{setMainRl as f}from"./lib/main-rl.js";import{isChatActive as b,handleChatMessage as x}from"./commands/ai4ctf.js";import{isCtf4aiActive as v,handleCtf4aiMessage as C}from"./commands/ctf4ai-demo.js";import{isVla4CtfActive as A,handleVla4CtfMessage as I}from"./commands/vla4ctf.js";import{isDemo2Active as k}from"./commands/demo2.js";import{getExamState as T,getRealExamState as $,getDemoState as S}from"./lib/exam-state.js";import{getDemoStats as O}from"./lib/demo-stats.js";import{isExamSetupComplete as P}from"./lib/exam-setup.js";import{DEMO_PICK_SIZE as E,DEMO_POOL_SIZE as L}from"./lib/demo-exam.js";import{isNativeWindowsCmd as q}from"./lib/platform.js";import{resetTerminalTheme as R}from"./lib/theme.js";import{ensureSandbox as j,runInSandbox as D,isDockerAvailable as N}from"./lib/sandbox.js";import{logCommand as F}from"./lib/logger.js";import{startLogSync as M,stopLogSync as U}from"./lib/log-sync.js";import{existsSync as W,mkdirSync as z,writeFileSync as B}from"node:fs";import{join as _}from"node:path";import{homedir as Q}from"node:os";function Y(){return $()?chalk.cyan("exam> "):S()?chalk.yellow("demo> "):chalk.green("icoa> ")}const V=_(Q(),"icoa-workspace");function J(){return W(V)||z(V,{recursive:!0}),V}const G=new Set(["sudo","su","doas","pkexec","brew","apt","apt-get","yum","choco","npm","npx","pip","pip3","shutdown","reboot","halt","mkfs","fdisk","dd","iptables","ufw"]),K="__REPL_NO_EXIT__",Z="2.5.1";function H(){const o=O(),e=P(),l=`Free practice — ${E} questions (from pool of ${L})`,n=q();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,S){process.env.ICOA_INSIDE_REPL="1";const O=n(),P=l(),E=process.exit.bind(process),L=a();if(O.demoCleanedForVersion!==Z){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:Z})}const{select:q,confirm:oo}=await import("@inquirer/prompts"),eo=O.mode||"",to=[{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 Pioneer Round: demo, learn, Paper D (parallel track)")}`,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 lo="";for(;!lo;){const o=await q({message:"Mode",choices:to,default:eo||"selection"});"about"!==o?lo=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"===lo&&"olympiad"!==eo&&(console.log(),console.log(chalk.yellow(" This mode will download ~500MB of CTF tools and AI models.")),await oo({message:"Continue?",default:!0})||(lo="selection",console.log(chalk.gray(" Switched to National Selection mode.")))),lo!==eo&&s({mode:lo}),console.log(),"olympiad"===lo&&m(Z)){d(Z),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(S){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"===lo?H():"embodied"===lo?(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(" an independent parallel track alongside the scored 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(" real models, real physics — all on the ICOA stack.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.yellow(" First time? Try in order: ")+chalk.bold.cyan("① sim")+chalk.gray(" → ")+chalk.bold.cyan("② demo2")+chalk.gray(" → ")+chalk.bold.cyan("③ learn LEARNDEMO01")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.green(" sim")+chalk.gray(" ")+chalk.bold.cyan("①")+chalk.gray(" ")+chalk.bold.yellow("★ WOW")+chalk.gray(" — robot arm replay in seconds")),console.log(chalk.bold.green(" demo2")+chalk.gray(" ")+chalk.bold.cyan("②")+chalk.gray(" ~8 min interactive intro + live MuJoCo sim")),console.log(chalk.bold.green(" learn LEARNDEMO01")+chalk.gray(" ")+chalk.bold.cyan("③")+chalk.gray(" free 11-card intro (paste this command as-is)")),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"===lo?(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(),P?(console.log(chalk.green(` Logged in as ${O.userName}`)),console.log(chalk.white(" exam list")+chalk.gray(" Manage exams")),console.log(chalk.white(" logout")+chalk.gray(" Disconnect"))):console.log(chalk.white(" join <url>")+chalk.gray(" Connect to manage exams")),console.log(),h(),console.log()):L&&!c()?(console.log(chalk.red(" Token was activated on a different device.")),console.log(chalk.gray(" Contact organizer for assistance.")),console.log()):P?(console.log(chalk.green.bold(` Welcome back, ${O.userName}!`)),console.log(chalk.gray(` Connected to ${O.ctfdUrl}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Ready to compete? Start here:")),console.log(),console.log(chalk.bold.cyan(" challenges")+chalk.gray(" Browse challenges by category")),console.log(chalk.white(" status")+chalk.gray(" Your score & hint budget")),console.log(chalk.white(" scoreboard")+chalk.gray(" Live rankings")),console.log(chalk.white(" help")+chalk.gray(" Full command list")),console.log(),console.log(chalk.gray(" Tool environment:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("help")+chalk.gray(" · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()):L?(J(),console.log(chalk.green.bold(" Welcome, competitor!")),console.log(chalk.gray(` Workspace: ${V}`)),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 no=o({input:process.stdin,output:process.stdout,prompt:Y(),terminal:!0});f(no);let so=!1;p(!0),M();const ao=no.prompt.bind(no);no.prompt=o=>{b()||v()||A()||k()||no.setPrompt(Y()),ao(o)},no.prompt(),no.on("line",async o=>{if(so)return;const l=o.trim();if(!l)return no.setPrompt(b()?chalk.magenta("ai4ctf> "):Y()),void no.prompt();if("menu"===l||"menu confirm"===l)return $()&&"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 no.prompt()):void u(no);if(b()){so=!0;const o=await x(l);return so=!1,"exit"===o&&no.setPrompt(Y()),void no.prompt()}if(v()){so=!0;const o=await C(l);return so=!1,"exit"!==o&&"solved"!==o||no.setPrompt(Y()),void no.prompt()}if(A()){so=!0;const o=await I(l);return so=!1,"exit"===o&&no.setPrompt(Y()),no.setPrompt(A()?chalk.bold.cyan("vla4ctf> "):Y()),void no.prompt()}if(F(l),"exit"===l)return T()?(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 no.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"===lo&&H(),void no.prompt());if("quit"===l||"q"===l||"quit confirm"===l){const o=T();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 no.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)."))),U(),g(),console.log(chalk.gray(" Session saved. Use ")+chalk.white("icoa --resume")+chalk.gray(" to continue.")),R(),void E(0))}if("back"===l){const o=T(),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"===lo?H():console.log(chalk.gray(" Already at main menu."))}return void no.prompt()}if("help"===l||"?"===l){if(T()){so=!0;try{await e.parseAsync(["node","icoa","exam","help"])}catch{}return so=!1,void no.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(),lo),void no.prompt()}if("more help"===l.toLowerCase()&&T()){so=!0;try{await e.parseAsync(["node","icoa","exam","more-help"])}catch{}return so=!1,void no.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 no.prompt();if(/^ICOA-[A-Z]{2,3}-\d{1,6}$/i.test(l.trim())){so=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim()])}catch{}return so=!1,void no.prompt()}if(/^[A-Z]{2}[0-9A-HJKMNP-TV-Z]{8}$/i.test(l.trim())){so=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim().toUpperCase()])}catch{}return so=!1,void no.prompt()}const s=l.match(/^exam\s+([A-Z]{2}[0-9A-HJKMNP-TV-Z]{8})$/i);if(s){so=!0;try{await e.parseAsync(["node","icoa","exam","token",s[1].toUpperCase()])}catch{}return so=!1,void no.prompt()}const y=l.match(/^exam\s+([A-Z]{2,3})$/i);if(y){so=!0;try{await e.parseAsync(["node","icoa","exam","list",y[1]])}catch{}return so=!1,void no.prompt()}if("clear"===l||"cls"===l)return console.clear(),void no.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 no.prompt()}if("activate"===l)return console.log(chalk.gray(" Usage: ")+chalk.white("activate <token>")),console.log(),void no.prompt();const m=T();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 no.prompt();so=!0;try{await e.parseAsync(["node","icoa","exam","answer",String(l),o])}catch{}return so=!1,void no.prompt()}const s=o.match(/^(\d+)\s+([ABCD])$/);if(s){const o=parseInt(s[1],10);if(t(o))return n(o),void no.prompt();so=!0;try{await e.parseAsync(["node","icoa","exam","answer",s[1],s[2]])}catch{}return so=!1,void no.prompt()}}const d=l.split(/\s+/)[0].toLowerCase(),p=/^python3?(\.\d+)?$/.test(d),h=l.startsWith("!")||d.startsWith("!")||p;if("embodied"===lo&&!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 no.prompt();if("selection"===lo&&!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 no.prompt()}if("organizer"===lo&&!["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 no.prompt();if(!("olympiad"!==lo||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 no.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(G.has(d))return console.log(chalk.red(` Blocked: ${d} is not allowed during competition.`)),console.log(),void no.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: ${V}`)),console.log(),void no.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=J();/^(\S*python3?(\.\d+)?)\s*$/.test(o)&&(o=`PYTHONSTARTUP="${function(){const o=_(Q(),".icoa");W(o)||z(o,{recursive:!0});const e=_(o,"python-startup.py");return W(e)||B(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()),so=!0;try{N()&&await j()?await D(o,no):await X(o,no,e)}catch{console.log(chalk.yellow(` Command failed: ${d}`))}return so=!1,console.log(),void no.prompt()}so=!0;const w=l.trim(),f=w.toLowerCase();let k,S=null,O="";if(m)if("submit"===f)S="final";else if(f.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",O=o)}else/^ICOA\{[^}]+\}$/i.test(w)&&(S="flag",O=w);k="final"===S?["exam","submit"]:"flag"===S?["exam","answer",String(m?._lastQ||1),O]:function(o){const e=o.split(/\s+/),t=e[0].toLowerCase(),l=e.slice(1),n={demo:["exam","demo"],retry:["exam","demo-retry"],nations:["exam","nations"],next:["exam","next"],prev:["exam","prev"],mark:["exam","mark",...l],unmark:["exam","unmark",...l],review:["exam","review"],logout:["ctf","logout"],join:["ctf","join",...l],activate:["ctf","activate",...l],challenges:["ctf","challenges"],ch:["ctf","challenges"],open:["ctf","open",...l],submit:["ctf","submit",...l],flag:["ctf","submit",...l],scoreboard:["ctf","scoreboard",...l],sb:["ctf","scoreboard",...l],status:["ctf","status"],time:["ctf","time"]};return n[t]?n[t]:["ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","ctf4ai"].includes(t)?[t,...l]:e}(l);const P="ctf"===k[0]&&"join"===k[1];P&&no.pause(),process.exit=()=>{throw new Error(K)};try{await e.parseAsync(["node","icoa",...k])}catch(o){const e=o instanceof Error?o.message:String(o);if(e===K);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=E,so=!1,P&&no.resume()}b()?no.setPrompt(chalk.magenta("ai4ctf> ")):v()?no.setPrompt(chalk.red("ctf4ai> ")):A()&&no.setPrompt(chalk.bold.cyan("vla4ctf> ")),console.log(),no.prompt()}),no.on("SIGINT",()=>{if(console.log(),b()||v())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(T()){const o="demo-free"!==T().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(),no.prompt()}),no.on("close",()=>{U(),g(),R(),E(0)})}function X(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{setMainRl as f}from"./lib/main-rl.js";import{isChatActive as b,handleChatMessage as x}from"./commands/ai4ctf.js";import{isCtf4aiActive as v,handleCtf4aiMessage as C}from"./commands/ctf4ai-demo.js";import{isVla4CtfActive as A,handleVla4CtfMessage as I}from"./commands/vla4ctf.js";import{isDemo2Active as k}from"./commands/demo2.js";import{getExamState as T,getRealExamState as $,getDemoState as S}from"./lib/exam-state.js";import{getDemoStats as O}from"./lib/demo-stats.js";import{isExamSetupComplete as P}from"./lib/exam-setup.js";import{DEMO_PICK_SIZE as E,DEMO_POOL_SIZE as L}from"./lib/demo-exam.js";import{isNativeWindowsCmd as R}from"./lib/platform.js";import{resetTerminalTheme as q}from"./lib/theme.js";import{ensureSandbox as j,runInSandbox as D,isDockerAvailable as N}from"./lib/sandbox.js";import{logCommand as F}from"./lib/logger.js";import{startLogSync as M,stopLogSync as U}from"./lib/log-sync.js";import{existsSync as W,mkdirSync as z,writeFileSync as B}from"node:fs";import{join as _}from"node:path";import{homedir as Q}from"node:os";function Y(){return $()?chalk.cyan("exam> "):S()?chalk.yellow("demo> "):chalk.green("icoa> ")}const V=_(Q(),"icoa-workspace");function J(){return W(V)||z(V,{recursive:!0}),V}const G=new Set(["sudo","su","doas","pkexec","brew","apt","apt-get","yum","choco","npm","npx","pip","pip3","shutdown","reboot","halt","mkfs","fdisk","dd","iptables","ufw"]),K="__REPL_NO_EXIT__",Z="2.5.1";function H(){const o=O(),e=P(),l=`Free practice — ${E} questions (from pool of ${L})`,n=R();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,S){process.env.ICOA_INSIDE_REPL="1";const O=n(),P=l(),E=process.exit.bind(process),L=a();if(O.demoCleanedForVersion!==Z){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:Z})}const{select:R,confirm:oo}=await import("@inquirer/prompts"),eo=O.mode||"",to=[{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 Pioneer Round: demo, learn, Paper D (parallel track)")}`,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 lo="";for(;!lo;){const o=await R({message:"Mode",choices:to,default:eo||"selection"});"about"!==o?lo=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"===lo&&"olympiad"!==eo&&(console.log(),console.log(chalk.yellow(" This mode will download ~500MB of CTF tools and AI models.")),await oo({message:"Continue?",default:!0})||(lo="selection",console.log(chalk.gray(" Switched to National Selection mode.")))),lo!==eo&&s({mode:lo}),console.log(),"olympiad"===lo&&m(Z)){d(Z),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(S){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"===lo?H():"embodied"===lo?(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(" an independent parallel track alongside the scored 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(" Real models, real physics, real attack surfaces.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.yellow(" First time? Try in order: ")+chalk.bold.cyan("① sim")+chalk.gray(" → ")+chalk.bold.cyan("② demo2")+chalk.gray(" → ")+chalk.bold.cyan("③ learn LEARNDEMO01")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.green(" sim")+chalk.gray(" ")+chalk.bold.cyan("①")+chalk.gray(" ")+chalk.bold.yellow("★ WOW")+chalk.gray(" — robot arm replay in seconds")),console.log(chalk.bold.green(" demo2")+chalk.gray(" ")+chalk.bold.cyan("②")+chalk.gray(" ~8 min interactive intro + live MuJoCo sim")),console.log(chalk.bold.green(" learn LEARNDEMO01")+chalk.gray(" ")+chalk.bold.cyan("③")+chalk.gray(" free 11-card intro (paste this command as-is)")),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"===lo?(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(),P?(console.log(chalk.green(` Logged in as ${O.userName}`)),console.log(chalk.white(" exam list")+chalk.gray(" Manage exams")),console.log(chalk.white(" logout")+chalk.gray(" Disconnect"))):console.log(chalk.white(" join <url>")+chalk.gray(" Connect to manage exams")),console.log(),h(),console.log()):L&&!c()?(console.log(chalk.red(" Token was activated on a different device.")),console.log(chalk.gray(" Contact organizer for assistance.")),console.log()):P?(console.log(chalk.green.bold(` Welcome back, ${O.userName}!`)),console.log(chalk.gray(` Connected to ${O.ctfdUrl}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Ready to compete? Start here:")),console.log(),console.log(chalk.bold.cyan(" challenges")+chalk.gray(" Browse challenges by category")),console.log(chalk.white(" status")+chalk.gray(" Your score & hint budget")),console.log(chalk.white(" scoreboard")+chalk.gray(" Live rankings")),console.log(chalk.white(" help")+chalk.gray(" Full command list")),console.log(),console.log(chalk.gray(" Tool environment:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("help")+chalk.gray(" · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()):L?(J(),console.log(chalk.green.bold(" Welcome, competitor!")),console.log(chalk.gray(` Workspace: ${V}`)),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 no=o({input:process.stdin,output:process.stdout,prompt:Y(),terminal:!0});f(no);let so=!1;p(!0),M();const ao=no.prompt.bind(no);no.prompt=o=>{b()||v()||A()||k()||no.setPrompt(Y()),ao(o)},no.prompt(),no.on("line",async o=>{if(so)return;const l=o.trim();if(!l)return no.setPrompt(b()?chalk.magenta("ai4ctf> "):Y()),void no.prompt();if("menu"===l||"menu confirm"===l)return $()&&"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 no.prompt()):void u(no);if(b()){so=!0;const o=await x(l);return so=!1,"exit"===o&&no.setPrompt(Y()),void no.prompt()}if(v()){so=!0;const o=await C(l);return so=!1,"exit"!==o&&"solved"!==o||no.setPrompt(Y()),void no.prompt()}if(A()){so=!0;const o=await I(l);return so=!1,"exit"===o&&no.setPrompt(Y()),no.setPrompt(A()?chalk.bold.cyan("vla4ctf> "):Y()),void no.prompt()}if(F(l),"exit"===l)return T()?(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 no.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"===lo&&H(),void no.prompt());if("quit"===l||"q"===l||"quit confirm"===l){const o=T();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 no.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)."))),U(),g(),console.log(chalk.gray(" Session saved. Use ")+chalk.white("icoa --resume")+chalk.gray(" to continue.")),q(),void E(0))}if("back"===l){const o=T(),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"===lo?H():console.log(chalk.gray(" Already at main menu."))}return void no.prompt()}if("help"===l||"?"===l){if(T()){so=!0;try{await e.parseAsync(["node","icoa","exam","help"])}catch{}return so=!1,void no.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(),lo),void no.prompt()}if("more help"===l.toLowerCase()&&T()){so=!0;try{await e.parseAsync(["node","icoa","exam","more-help"])}catch{}return so=!1,void no.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 no.prompt();if(/^ICOA-[A-Z]{2,3}-\d{1,6}$/i.test(l.trim())){so=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim()])}catch{}return so=!1,void no.prompt()}if(/^[A-Z]{2}[0-9A-HJKMNP-TV-Z]{8}$/i.test(l.trim())){so=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim().toUpperCase()])}catch{}return so=!1,void no.prompt()}const s=l.match(/^exam\s+([A-Z]{2}[0-9A-HJKMNP-TV-Z]{8})$/i);if(s){so=!0;try{await e.parseAsync(["node","icoa","exam","token",s[1].toUpperCase()])}catch{}return so=!1,void no.prompt()}const y=l.match(/^exam\s+([A-Z]{2,3})$/i);if(y){so=!0;try{await e.parseAsync(["node","icoa","exam","list",y[1]])}catch{}return so=!1,void no.prompt()}if("clear"===l||"cls"===l)return console.clear(),void no.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 no.prompt()}if("activate"===l)return console.log(chalk.gray(" Usage: ")+chalk.white("activate <token>")),console.log(),void no.prompt();const m=T();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 no.prompt();so=!0;try{await e.parseAsync(["node","icoa","exam","answer",String(l),o])}catch{}return so=!1,void no.prompt()}const s=o.match(/^(\d+)\s+([ABCD])$/);if(s){const o=parseInt(s[1],10);if(t(o))return n(o),void no.prompt();so=!0;try{await e.parseAsync(["node","icoa","exam","answer",s[1],s[2]])}catch{}return so=!1,void no.prompt()}}const d=l.split(/\s+/)[0].toLowerCase(),p=/^python3?(\.\d+)?$/.test(d),h=l.startsWith("!")||d.startsWith("!")||p;if("embodied"===lo&&!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 no.prompt();if("selection"===lo&&!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 no.prompt()}if("organizer"===lo&&!["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 no.prompt();if(!("olympiad"!==lo||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 no.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(G.has(d))return console.log(chalk.red(` Blocked: ${d} is not allowed during competition.`)),console.log(),void no.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: ${V}`)),console.log(),void no.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=J();/^(\S*python3?(\.\d+)?)\s*$/.test(o)&&(o=`PYTHONSTARTUP="${function(){const o=_(Q(),".icoa");W(o)||z(o,{recursive:!0});const e=_(o,"python-startup.py");return W(e)||B(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()),so=!0;try{N()&&await j()?await D(o,no):await X(o,no,e)}catch{console.log(chalk.yellow(` Command failed: ${d}`))}return so=!1,console.log(),void no.prompt()}so=!0;const w=l.trim(),f=w.toLowerCase();let k,S=null,O="";if(m)if("submit"===f)S="final";else if(f.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",O=o)}else/^ICOA\{[^}]+\}$/i.test(w)&&(S="flag",O=w);k="final"===S?["exam","submit"]:"flag"===S?["exam","answer",String(m?._lastQ||1),O]:function(o){const e=o.split(/\s+/),t=e[0].toLowerCase(),l=e.slice(1),n={demo:["exam","demo"],retry:["exam","demo-retry"],nations:["exam","nations"],next:["exam","next"],prev:["exam","prev"],mark:["exam","mark",...l],unmark:["exam","unmark",...l],review:["exam","review"],logout:["ctf","logout"],join:["ctf","join",...l],activate:["ctf","activate",...l],challenges:["ctf","challenges"],ch:["ctf","challenges"],open:["ctf","open",...l],submit:["ctf","submit",...l],flag:["ctf","submit",...l],scoreboard:["ctf","scoreboard",...l],sb:["ctf","scoreboard",...l],status:["ctf","status"],time:["ctf","time"]};return n[t]?n[t]:["ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","ctf4ai"].includes(t)?[t,...l]:e}(l);const P="ctf"===k[0]&&"join"===k[1];P&&no.pause(),process.exit=()=>{throw new Error(K)};try{await e.parseAsync(["node","icoa",...k])}catch(o){const e=o instanceof Error?o.message:String(o);if(e===K);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=E,so=!1,P&&no.resume()}b()?no.setPrompt(chalk.magenta("ai4ctf> ")):v()?no.setPrompt(chalk.red("ctf4ai> ")):A()&&no.setPrompt(chalk.bold.cyan("vla4ctf> ")),console.log(),no.prompt()}),no.on("SIGINT",()=>{if(console.log(),b()||v())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(T()){const o="demo-free"!==T().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(),no.prompt()}),no.on("close",()=>{U(),g(),q(),E(0)})}function X(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,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "icoa-cli",
|
|
3
|
-
"version": "2.19.
|
|
3
|
+
"version": "2.19.158",
|
|
4
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": {
|