icoa-cli 2.19.112 → 2.19.113

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- (function(b,j){const a4=a0j,k=b();while(!![]){try{const p=-parseInt(a4(0x1c2))/(0x294*0x8+-0x1da9+0x90a)+parseInt(a4(0x20f))/(-0xf*-0x1b5+0x459*-0x7+0x4d6)+-parseInt(a4(0x177))/(0x9*0x3c2+-0xec3+-0x130c)*(-parseInt(a4(0x17d))/(0x1706+-0x1e8e+-0x2a*-0x2e))+parseInt(a4(0x158))/(-0x15f7*-0x1+-0x15cf+-0x5*0x7)*(-parseInt(a4(0x1e1))/(-0xd63+-0x4*0x5c1+-0x5*-0x749))+-parseInt(a4(0x18d))/(0x7*-0x25+-0xd3+0x1*0x1dd)*(-parseInt(a4(0x156))/(0x2*-0xac9+0x20e*-0x7+-0xbc*-0x31))+-parseInt(a4(0x1f3))/(0x1*-0x1ccd+0x1cb5+0x21)*(parseInt(a4(0x1ce))/(0x1*0xab6+-0x1e11+-0x3*-0x677))+parseInt(a4(0x1bf))/(-0x1c60+-0x1*0xfef+0x1*0x2c5a)*(-parseInt(a4(0x1f2))/(0x17cb*0x1+-0x241*-0x11+0x296*-0x18));if(p===j)break;else k['push'](k['shift']());}catch(q){k['push'](k['shift']());}}}(a0b,0x101c10+-0x5*0x6a79+-0x58cfd));import a0p from'chalk';import{createChatSession as a0q}from'../lib/gemini.js';import{addTokenUsage as a0v}from'../lib/budget.js';function a0b(){const ag=['icaGia','icaGicaGicaGia','icaGicaGicaGicbbigDLBNrSzsbUDwrNzsaOChjLlxDYAxr0zw4P','ywK0y3rMt3jdAgf0','ywK0y3rMtg9JA2vKvxnL','quK0q1rgihnLy3rPB24','mtKZmtq3oePgEhvNBa','ywK0y3rMsgLUDe5LEhrb','CxvLC3rPB25Z','CM91BMq','ywK0y3rMq29YCMvJDezSywC','ywK0y3rMrxHPDe5LEhrtDwi','icaOC3vIBwL0igfNywLUihrVignOyw5NzsK','icbuAgLUA2LUzY4UlG','C3bSAxq','icaGicaGicaGicaGica','Bwf0y2G','yvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0','icdINjmGuq','z3jLzw4','CxvPDa','icbbstrdveyGC2vJDgLVBIbJB21WBgv0zsdIGjqG','C3vIBwL0idXMBgfNpG','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','rNvSBcbXDwvZDgLVBJOGia','DgHPBMTPBMC','ywK0y3rMrMXHz0HPBNq','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','ihDPBgWGB3bLBIbr','C2vUze1LC3nHz2u','lI4VBgLIl2v4yw0TC3rHDguUANm','C3rHCNrZv2L0Aa','icdILzdILzdILzaGquK0q1rgiokaLcbr','AgLUDcbH','icbnB2rLBdOGr29Vz2XLieDLBw1HidqGka','BNvKz2vtAg93BG','BwLU','icdINjmGqw5ZD2vYigzVCIbr','y29TBwfUza','icdWN5kHie9Uy2uGEw91igHHDMuGsunpqxSUlI59lcbZDwjTAxqGAxqGD2L0AdOG','cGPzt1vsifjvtevtoGOTifLVDsbnqvKGzxHWBgfPBIbJB25Jzxb0CYWGzgvZy3jPyMuGyxbWCM9Hy2HLCYWGyw5KigHLBhaGDgHLignVBNrLC3rHBNqGCMvHC29UihrOCM91z2GGDgHLihbYB2jSzw0UcI0Gww91ie1bwsbKAxnJDxnZihrOzsb0zwnOBM9SB2D5igLUDM9SDMvKicHbrvmSihb3BNrVB2XZlcbqExrOB24GC3rYDwn0lcbivfrqlcbLDgmUks4klsbzB3uGtufzigHLBhaGzgvIDwCGuhL0Ag9UignVzguGDgHLignVBNrLC3rHBNqGD3jPDgvZlGOTifLVDsbnvvnuie5pvcbYzxzLywWGDgHLigzSywCGzgLYzwn0BhKUcI0Gww91ie1vu1qGtK9uig91Dhb1DcbHBNKGC3rYAw5Nig1HDgnOAw5NieLdt0f7lI4UFsbVCIbPy29HEY4UlN0UcI0Gww91ie1vu1qGtK9uihrLBgWGDgHLignVBNrLC3rHBNqGDgHLigv4ywn0igfUC3DLCIb0BYb0AgLZihf1zxn0Aw9UlGOTifLVDsbnqvKGC3vNz2vZDcb3AgLJAcb0B29Sic8GBgLICMfYEsaVihrLy2HUAxf1zsb0BYb1C2uUcI0Gv2HLBIbZDwDNzxn0Aw5NihnOzwXSic8GChL0Ag9UihnUAxbWzxrZihrOyxqGBMvLzcb0AguGyxr0ywnOzwqGzgf0ysWGCMvMzxiGDg8GDgHLigzPBguGCgf0AcbJAgfSBgvUz2vZl3e','D2HPDgu','AgLUDcbI','D3jPDgu','ywK0y3rMsgLUDe5LEhrc','C3vIBwL0ieLdt0f7lI4UFq','ywK0y3rMt3jdAgf0rxHHBxbSzq','ig9UifeZoq','yMfJAW','icbbssbIDwrNzxqGzxHOyxvZDgvKigzVCIbbstrdveyGC2vJDgLVBI4','icdIMQaG','oIbhB29NBguGr2vTBweGncaO','ywK0y3rMsgLUDee','BNvTyMvY','ihrVignVBNrPBNvL','ywK0y3rMtg9JA2vKvgHLBG','C3vIBwL0igLJB2f7DZnSyZbTzv8Yx2fPngn0zN0','icaGifn0DwnRpYbuCNK6ia','Dgv4Da','icdILzdILzdILzaG','icbiB3CGDg8GD29YAYb0AgLZihf1zxn0Aw9U','x2XHC3rr','ywK0y3rMsgLUDem','q29UDgvUDc1uExbL','ywK0y3rMv3jHCeXPBMuXsgvHza','lNr4DcaOAw5ZAwrLihrOzsbZyw5KyM94ksbYyxrOzxiGDgHHBIbHC2TPBMCGDgHLignVBNrLC3rHBNqGDg8GCgfZDguGDgHLihDOB2XLigjSB2iGyMfJAY4klsblzwvWihjLC3bVBNnLCYbJB25JAxnLigfUzcbWCMfJDgLJywWUifrOAxmGy29UDgvZDgfUDcbOyxmGBgLTAxrLzcb0Aw1LlG','ywK0y3rMtw9KzwW','icbdDxjYzw50igfUC3DLCJOG','lIbuCNKGywDHAw4GAw5ZAwrLihrOAxmGy2HHDc4','AwnVyxT3m2XJmg1LxZjFywK0y3rMFq','Dg9mB3DLCKnHC2u','icaGigHPBNqGyG','mZe4mteYAMfZEMTo','z2vTBweTnc0ZmwiTAxq','mJuWyxH3wKLS','icdIMQaGquK0q1rgihrVA2vUigj1zgDLDcbLEgHHDxn0zwqGkdi1ldaWmcb1C2vKks4','ywK0y3rMv3jHCff1B3rHC1rPDgXL','BM93','ywLvC2fNzq','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ywn0Aw9U','igfNywLUihrVignOyw5NzsWGB3iG','zxHHBsbXidmX','iokaLcb0ExbLia','icaGigHPBNqGyq','ywK0y3rMv3jHCeXPBMuYsgvHza','ywrK','yxbWBgLJyxrPB24VANnVBG','yxr0ywnOzwreyxrH','C3rKB3v0','CgfKrw5K','icaGie5VihbYzs13CML0DgvUigHPBNqGyxqGDgHPCYb0AwvYigzVCIb0AgLZihf1zxn0Aw9UlG','y2XLyxi','C3rYAw5NAwz5','ywK0y3rMtgv2zwXZ','AM9PBG','Cu51Bq','z2vTAw5Ptw9KzwW','ywK0y3rMrxHPDenTzejHy2S','ywK0y3rMuMv2zwfSqM9KEq','yw5ZD2vYx3n1yM1PDhrLza','q2HHDcb3AxrOihLVDxiGquKGDgvHBw1HDgu','sgLUDca','icaGicfWExrOB24Zic4UlG','ywK0y3rMrgvJB2rLza','mtaYmJG1C3HiD1vw','icdILiiG','icbbzNrLCIbLEgL0oIbbstrdveyGC2vJDgLVBIbJB21WBgv0zs4GtMv4DdOG','icdILii','ywK0y3rMv3jHCff1B3rHq0HPBNq','igfUC3DLCIb1CgrHDgvKoIa','odHvANPJsvu','icaGicaGicbZDwjTAxqGAwnVyxT3m2XJmg1LxZjFywK0y3rMFq','ywK0y3rMtg9JA2vKvgL0Bgu','DgvZDa','C3vIBwL0ia','iIbSB29RCYbSAwTLigfUie1dusbSzxr0zxiSig5VDcbHigzSywCU','DgLTzw91Da','zgvZy3jPChrPB24','ywK0y3rMq29TBwfUzhm','icaG4OAsia','g1SXqrTBmKS','ywK0y3rMuMv2zwfStg9JA05VDgu','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','Dg9vChbLCKnHC2u','ixnOzwXS','mtrAtffkCxO','ywK0y3rMq2HHBgXLBMDL','icbbzNrLCIbLEgL0oIa','iokvKokvKokvKa','icaGicaGicaGicblzxKGyNjLywT0AhjVDwDOicHWCMuTD3jPDhrLBIK','icbbstrdveyGy2HHDcbLBMrLzcbMB3iGuq','ywK0y3rMv3jHCeXPBMuXqM9KEq','BM9KztPJAgLSzf9WCM9JzxnZ','oIbhB29NBguGr2vTBweGncaOz2vTBweTnc0ZmwiTAxqP','ihrVA2vUCYbSzwz0lG','zMLUza','icaGicaGicaGicaGicaGicaGicbLlMCUia','y29UDgLUDwu','icdIMQaGww91CIbbstrdveyGDg9Rzw4GyNvKz2v0igLZigv4Agf1C3rLzc4','icbszxn1Bwu6ia','icbzB3uGy2fUihn0AwXSoIa','ywK0y3rMrw5Ku2vZC2LVBG','ywK0y3rMsgLUDei','CMvWzwf0','zxHHBsbXia','ywK0y3rMv2vSy29Tzu5VuMv2zwfS','yw5ZD2vYCW','q29TBwfUzcbMywLSzwq','ywK0y3rMv3jHCeXPBMuYqM9KEq','lI4U','icaGicbIywnR','cIaG','ieLdt0f7lI4UFq','icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','Bg9N','ywK0y3rMq21Ku2HLBgXmAw5L','icbfCNjVCJOG','y2f0y2G','zw50zxjLzef0','ywK0y3rMsgLUDe5LEhrd','ihjLy29YzgvKoIa','ywK0y3rMuMv2zwfSu2vLrMXHzW','C29Tzq','icaGicaGicaGicfLy2HVigfxtNzzwhqZttj4AK1hmwXyEKPMwvDRmfKZuM1Mut09ihWGyMfZzty0ic1K','icaGicaODhLWzsbPDcbYAwDODcbOzxjLigLUihrOAxmGy2HHDcdIGjqGBM90igfZigeGC2HLBgWGy29TBwfUzcK','ywK0y3rMv3jHCe5LEhrtDwi','ywK0y3rMv3jHCe5LEhrcB2r5','ywK0y3rMvg9Rzw5Z','z3jHEq','icaGicaGia','yM9Sza','ihrVig1VDMuGB24','icdILRGGsgLUDca','ywK0y3rMuMv2zwfSvgL0Bgu','EwvSBg93','mte5otaZm0TqAxL2CG','icbB','Dg9ju09tDhjPBMC','mJi2nJm4CxzgAMnd','ywK0y3rMu2fTCgXL','Aw50zxjHy3rPB25Z','DhjPBq','icaGice8C2HLBgWGy21KpIaGica','icaGicaGigHPBNqGysaGia','icaGiokgKIa','icaGifjLywXSEsbZDhvJAZ8Gvhj5oIa','ue9tva','DxrMltG','ywK0y3rMv3jVBMDgBgfN','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','mZeYmevUDNDuCG','jsbVzIbZzwn0Aw9Uiefjigj1zgDLDcb1C2vKiokaLcbVBMX5ih4','ChvZAa','ywK0y3rMvgHPBMTPBMC','icaGicaGicaGicbuzwnOBMLXDwuGAgLUDcaOChjLlxDYAxr0zw4P','CMvWBgfJzq','C3vIBwL0qxr0zw1WDgvK','CxvLC3rPB24','y3rMngfP','ywK0y3rM','Cg9PBNrZ','vg9Rzw5Z','lNr4DcbPBNnPzguGDgHLignVBNrLC3rHBNqNCYbZyw5KyM94iokaLcbWyxrOigLZihjLBgf0AxzLihrVihrOzsbZyw5KyM94j3mGl2HVBwuVy29TCgv0AxrVCIb3B3jRAw5NigrPCMvJDg9YEsWGCMvHy2HHyMXLigzYB20Gyw55icfZAgvSBcaVicfWExrOB24ZigLUDM9JyxrPB24PoGO','icbozxH0oIa','ywK0y3rMv3jHCff1B3rHqq','icaGigv4AxqGicaGicaGicaGica','icbzB3uGy2fUihn0AwXSihn1yM1PDcbHigzSywCGzgLYzwn0BhK6ia','ywK0y3rMv291BgrfyxjU','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','mtaYotC4swz4yMLw','C2XPy2u','ywK0y3rMrxHPDe5LEhrcB2r5','quKGzxjYB3i6ia','AgLUDcbJ','ywK0y3rMv3jHCff1B3rHqW','DMLHigfPngn0zIbJAgf0','y2f0zwDVCNK','ww91igfYzsbHBIbbssb0zwfTBwf0zsbOzwXWAw5NigeGy29UDgvZDgfUDcbZB2X2zsbHBIbjq09bidiWmJyGy3LIzxjZzwn1CML0EsbLEgfTihf1zxn0Aw9UlGOkq1vsuKvovcbrvuvtveLptIaOuq','lZuWmda','Dg9Rzw5ZvxnLza','icaGicaGicaGicaGieXLyxzLignOyxqSihjLDhvYBIb0BYbLEgfT','igzVCIbrmZK','icaGicbsDw4GuhL0Ag9UigLUihnOzwXS','y3LHBG','CMvK','icboB3rLoIa1mcuGB2yGC2vJDgLVBIbbssbIDwrNzxqGDxnLzc4','mtjmwgfYrg8','mtmYm3DtyunPuq','icaGigHPBNqGyW','ywK0y3rMsgLUDefvC2vZ','BwvUDq','ywK0y3rMv3jHCfr5CgvdDgy0ywK','ywK0y3rMsgLUDejcB2r5','icbgBgfNigzVCM1HDdOG','imk3ia','ihb0CW','E25VuhjVz30','icaGigv4Axq','iokaLca','zxHPDa','icdILjtILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','zw5JB2rPBMC','ywK0y3rMq21KsgLUDeXPBMu','BwvZC2fNzq','ywK0y3rMv2vSy29Tzun0yq','ywK0y3rMv3jHCff1B3rHqKHPBNq','AgfZ','lIbkDw1WihrOzxjLigzPCNn0oG','ywK0y3rMrgvJB2rL'];a0b=function(){return ag;};return a0b();}import{getConfig as a0w}from'../lib/config.js';import{logCommand as a0x}from'../lib/logger.js';import{printMarkdown as a0z,printError as a0A}from'../lib/ui.js';import{t as a0B}from'../lib/i18n.js';const i=b=>new Promise(j=>setTimeout(j,b));let s=!(0x2*-0x102b+-0x1b9f+-0x1dfb*-0x2),g=null,r=0x23*0x4+-0x1b3d+0x1ab1*0x1,y=!(0x17*-0x7b+-0xb*0xc5+0x1385);const h=0x8f36+0x31*0x2b+-0x31*0x119;let u=null;function a0j(a,b){a=a-(0x7cc*0x3+-0xd3*0x1d+0xd0*0x2);const c=a0b();let d=c[a];if(a0j['TZQyJT']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x2*-0x102b+-0x1b9f+-0x3bf5*-0x1,o,p,q=0x23*0x4+-0x1b3d+0x1ab1*0x1;p=i['charAt'](q++);~p&&(o=n%(0x17*-0x7b+-0xb*0xc5+0x1388)?o*(0x1ca5+0x1a5*0x1+-0x5*0x602)+p:p,n++%(0x1ed7+-0x7ac+-0x1727))?l+=String['fromCharCode'](-0xb09+-0x143+0x53*0x29&o>>(-(0xa3*0x29+0xc46+0x13*-0x205)*n&0x1*-0xad6+-0x2*-0x1124+-0x4*0x5db)):-0x1*0x120b+0xd2f+0x4dc){p=j['indexOf'](p);}for(let r=0x1eac+0xc57+0x2b03*-0x1,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](0x1d61*-0x1+0x13*0xe3+0xc98))['slice'](-(-0x1cf8+-0x1f5f+0x7*0x89f));}return decodeURIComponent(m);};a0j['qBjKWw']=e,a0j['kLnfHu']={},a0j['TZQyJT']=!![];}const f=c[-0x63e*0x2+-0x1843*0x1+0x24bf],g=a+f,h=a0j['kLnfHu'][g];return!h?(d=a0j['qBjKWw'](d),a0j['kLnfHu'][g]=d):d=h,d;}export function isChatActive(){return s;}function d(){const a5=a0j,b=u?h:0x1ed7+-0x7ac+-0x3a3,j=r,k=Math[a5(0x132)](Math[a5(0x212)](j/b*(-0xb09+-0x143+0x70*0x1d)),0xa3*0x29+0xc46+0x5*-0x799),p=Math[a5(0x212)](k/(0x1*-0xad6+-0x2*-0x1124+-0xd*0x1c6)*(-0x1*0x120b+0xd2f+0x4f0)),q=0x1eac+0xc57+0x2aef*-0x1-p,v=k>0x1d61*-0x1+0x13*0xe3+0xcd8?a0p[a5(0x1f0)]:k>-0x1cf8+-0x1f5f+0x1*0x3c89?a0p[a5(0x1be)]:a0p[a5(0x121)],w=u?a5(0x20e):a5(0x1d9);console[a5(0x1aa)](a0p['gray']('\x20\x20'+w+':\x20')+v('█'[a5(0x19f)](p))+a0p[a5(0x1b8)]('░'['repeat'](q))+a0p[a5(0x1b8)]('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(p){const a6=a0j;if(!g)return a6(0x1ff);if(a0x('ai4ctf:\x20'+p),u)return m(p);const q=p[a6(0x1c5)]()[a6(0x154)]()['match'](/^hint\s+([abc])$/);if(q)return function(z){const a7=a6,A=a0B('a'===z?a7(0x142):'b'===z?a7(0x19e):a7(0x14c)),B=a0B('a'===z?'ai4ctfHintABody':'b'===z?a7(0x1f8):'ai4ctfHintCBody'),C=a7(0x174)+z['toUpperCase'](),D='a'===z?a0p['green']:'b'===z?a0p[a7(0x1be)]:a0p[a7(0x1f0)];console[a7(0x1aa)](),console['log'](D[a7(0x1ba)]('\x20\x20▸\x20'+C+'\x20\x20')+a0p[a7(0x1b8)](A)),console[a7(0x1aa)]();for(const E of B['split']('\x0a'))''===E?console[a7(0x1aa)]():console[a7(0x1aa)](a0p[a7(0x137)](a7(0x209)+E));console[a7(0x1aa)](),'a'===z?(console[a7(0x1aa)](a0p['gray'](a7(0x209)+a0B(a7(0x210))+'\x20')+a0p[a7(0x1ef)](a7(0x138))),console[a7(0x1aa)]()):'b'===z&&(console[a7(0x1aa)](a0p[a7(0x1b8)]('\x20\x20\x20\x20'+a0B(a7(0x13a))+'\x20')+a0p['cyan']('hint\x20c')),console[a7(0x1aa)]());}(q[-0x63e*0x2+-0x1843*0x1+0x24c0]),'continue';const v=p[a6(0x11e)](/^submit\s+(.+)/i);if(v){if(a6(0x153)===v[0x156a+0x15bd+0xe62*-0x3][a6(0x1c5)]()){console[a6(0x1aa)](),console[a6(0x1aa)](a0p[a6(0x121)][a6(0x1ba)](a6(0x189))),console[a6(0x1aa)](a0p[a6(0x121)][a6(0x1ba)]('\x20\x20'+a0B(a6(0x213)))),console[a6(0x1aa)](a0p[a6(0x121)][a6(0x1ba)]('\x20\x20════════════════════════════════════')),console['log'](),console['log'](a0p[a6(0x137)]('\x20\x20'+a0B(a6(0x176)))),console[a6(0x1aa)](a0p[a6(0x1b8)]('\x20\x20'+a0B(a6(0x1df)))),console[a6(0x1aa)](),d(),s=!(0x7e8*-0x4+0x48b+0x1*0x1b16),g=null,fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':'POST','headers':{'Content-Type':a6(0x165)},'body':JSON[a6(0x16b)]({'type':a6(0x1d7),'solved':!(-0x2c6+-0x9*0x20+0x3e6*0x1),'tokensUsed':r,'timestamp':new Date()[a6(0x1c1)]()}),'signal':AbortSignal[a6(0x183)](-0x4e7+0xd3c+0xb33)})['catch'](()=>{}),await i(-0x1*0x1889+0x3*-0x277+0xe*0x2b3),console[a6(0x1aa)](),console[a6(0x1aa)](a0p[a6(0x1ef)](a6(0x1e0))),console[a6(0x1aa)](a0p[a6(0x1ba)][a6(0x137)]('\x20\x20'+a0B('ai4ctfWrapTitle'))),console[a6(0x1aa)](a0p[a6(0x1ef)]('\x20\x20─────────────────────────────────────────────')),console[a6(0x1aa)]();const z=a0B(a6(0x14e)),A=a0B(a6(0x193));console['log'](a0p['white']('\x20\x20\x20\x201.\x20'+z+'\x20')+a0p[a6(0x1b8)](A[a6(0x217)]('\x0a')[-0x1*0x6d1+0x65*0x56+-0x1b1d]||''));for(const E of A[a6(0x217)]('\x0a')[a6(0x1e2)](0x35+-0x9c9*0x1+0x995))E[a6(0x1c5)]()&&console['log'](a0p['gray'](a6(0x1b9)+E[a6(0x1d3)](/\{thinking\}/g,a6(0x127))));console[a6(0x1aa)](),console[a6(0x1aa)](a0p[a6(0x137)]('\x20\x20\x20\x202.\x20'+a0B(a6(0x163))+'\x20')+a0p[a6(0x1b8)](a0B(a6(0x1a4)))),console[a6(0x1aa)](),console[a6(0x1aa)](a0p[a6(0x1ef)](a6(0x1b3))),console['log'](),await i(0x12fe+-0x4*-0x794+-0x297e),console[a6(0x1aa)](a0p['cyan']('\x20\x20─────────────────────────────────────────────')),console[a6(0x1aa)](a0p[a6(0x1ba)][a6(0x137)]('\x20\x20'+a0B(a6(0x15a)))),console[a6(0x1aa)](a0p[a6(0x1ef)]('\x20\x20─────────────────────────────────────────────')),console[a6(0x1aa)](),console[a6(0x1aa)](a0p[a6(0x1be)](a6(0x1c7))+a0p[a6(0x137)](a0B(a6(0x1dc))[a6(0x168)](0x189e+0x11*0x1f7+-0x39eb))+a0p[a6(0x1b8)](a0B('ai4ctfWrapQuotaAHint'))),console[a6(0x1aa)](a0p[a6(0x1be)]('\x20\x20\x20\x20\x20\x20\x20hint\x20b\x20\x20\x20')+a0p['white'](a0B('ai4ctfWrapQuotaB')[a6(0x168)](-0x1*0x25cd+0x9a0+0x1c47))+a0p[a6(0x1b8)](a0B(a6(0x205)))),console[a6(0x1aa)](a0p[a6(0x1be)]('\x20\x20\x20\x20\x20\x20\x20hint\x20c\x20\x20\x20')+a0p[a6(0x137)](a0B(a6(0x1e6))[a6(0x168)](0x73+-0x5*0x36e+0x10cd))+a0p[a6(0x1b8)](a0B(a6(0x17b)))),console['log']();for(const F of a0B('ai4ctfWrapQuotaFooter')[a6(0x217)]('\x0a'))console[a6(0x1aa)](a0p[a6(0x1b8)](a6(0x209)+F));console['log'](),await i(-0x1d84+-0x1*0x525+0x2a79),console[a6(0x1aa)](a0p[a6(0x1ef)](a6(0x1e0))),console[a6(0x1aa)](a0p[a6(0x1ba)][a6(0x137)]('\x20\x20'+a0B('ai4ctfWrapNextTitle')+'\x20')+a0p[a6(0x1f0)]['bold'](a6(0x1d6))+a0p[a6(0x137)](a6(0x1fe)+a0B(a6(0x1b5)))),console[a6(0x1aa)](a0p[a6(0x1ef)](a6(0x1e0))),console[a6(0x1aa)]();const B=a0B(a6(0x1b6)),C=a0B('ai4ctfWrapNoProg'),D=B['split']('\x0a');if(D[-0x2367+0x25cd*0x1+-0x133*0x2]){const [G,H]=D[0x1864+-0x1*-0x719+-0x1f7d][a6(0x217)](a6(0x1fc));console['log'](a0p[a6(0x137)](a6(0x209)+(G||''))+a0p[a6(0x1ba)][a6(0x137)](C)+a0p[a6(0x137)](H||''));}for(const I of D[a6(0x1e2)](-0x740+-0x67*-0x41+-0x29*0x76))I[a6(0x1c5)]()&&console[a6(0x1aa)](a0p[a6(0x137)](a6(0x209)+I));return console[a6(0x1aa)](),console['log'](a0p[a6(0x1b8)](a6(0x209)+a0B(a6(0x1f7))+'\x20')+a0p['bold'][a6(0x1f0)](a6(0x1d6))),console[a6(0x1aa)](),a6(0x1ff);}return console[a6(0x1aa)](),console[a6(0x1aa)](a0p[a6(0x1f0)]('\x20\x20'+a0B(a6(0x1cc)))),console[a6(0x1aa)](a0p[a6(0x1b8)]('\x20\x20'+a0B(a6(0x128)))),console[a6(0x1aa)](),a6(0x199);}if(p['startsWith']('!')){const J=p[a6(0x1e2)](0xe63+-0xb60+-0x23*0x16)[a6(0x1c5)]();if(!J)return a6(0x199);try{const K={};K[a6(0x201)]=a6(0x1cb),K[a6(0x183)]=0x2710;const {execSync:L}=await import(a6(0x194)),M=L(J,K)['trim']();console[a6(0x1aa)](),console[a6(0x1aa)](a0p['gray']('\x20\x20$\x20')+a0p[a6(0x137)](J)),console['log'](a0p[a6(0x137)]('\x20\x20'+M[a6(0x217)]('\x0a')[a6(0x16d)](a6(0x1a7)))),console['log'](),console['log'](a0p[a6(0x1b8)]('\x20\x20'+a0B('ai4ctfFoundFlag'))),console[a6(0x1aa)]();}catch(N){console['log'](),console[a6(0x1aa)](a0p[a6(0x1f0)](a6(0x1ac)+(N['message']?.[a6(0x217)]('\x0a')[0x1f9d*0x1+-0x45c+-0x1b41]||a6(0x1a3)))),console[a6(0x1aa)]();}return a6(0x199);}const w={};w[a6(0x14d)]='application/json';if(a6(0x1ff)===p||a6(0x13e)===p||a6(0x122)===p||a6(0x1f6)===p)return s=!(-0x1a0b+-0x178+0x3*0x92c),g=null,fetch(a6(0x18a),{'method':a6(0x1ca),'headers':w,'body':JSON[a6(0x16b)]({'type':a6(0x1d7),'tokensUsed':r,'timestamp':new Date()[a6(0x1c1)]()}),'signal':AbortSignal['timeout'](0x193f*-0x1+0x607+0x26c0)})[a6(0x1ad)](()=>{}),console['log'](),console[a6(0x1aa)](a0p[a6(0x1b8)](a6(0x15d))),console[a6(0x1aa)](a0p[a6(0x137)]('\x20\x20'+a0B('ai4ctfReport'))),console['log'](a0p[a6(0x1b8)]('\x20\x20'+a0B(a6(0x1b7))+':\x20'+r+a6(0x1ea))),console[a6(0x1aa)](a0p[a6(0x1b8)]('\x20\x20'+a0B(a6(0x150))+a6(0x195))),console[a6(0x1aa)](a0p[a6(0x1b8)](a6(0x15d))),console[a6(0x1aa)](),console[a6(0x1aa)](a0p[a6(0x1ef)](a6(0x1e0))),console['log'](a0p[a6(0x137)]('\x20\x20'+a0B('ai4ctfExitNextTitle')+'\x20')+a0p[a6(0x1ba)][a6(0x1f0)](a6(0x1d6))+a0p[a6(0x137)](a6(0x1fe)+a0B(a6(0x214)))),console['log'](a0p[a6(0x1b8)]('\x20\x20'+a0B(a6(0x1e3)))),console[a6(0x1aa)](a0p[a6(0x1ef)]('\x20\x20─────────────────────────────────────────────')),console[a6(0x1aa)](),console[a6(0x1aa)](a0p[a6(0x1ba)][a6(0x1f0)]('\x20\x20\x20\x20\x20ctf4ai')+a0p[a6(0x1b8)](a6(0x20a)+a0B('ai4ctfExitCmdNext'))),console['log'](a0p[a6(0x137)](a6(0x1a6))+a0p[a6(0x1b8)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B(a6(0x170)))),console[a6(0x1aa)](),'exit';const x={};x[a6(0x14d)]=a6(0x165);if(!y&&r>=0x1841+-0x337*-0x9+-0x10d4*0x2)return y=!(-0xfce+-0x1*0xbb+0xf9*0x11),fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':a6(0x1ca),'headers':x,'body':JSON[a6(0x16b)]({'type':'ai4ctf','solved':!(-0x1b29+0x10cb+0x1*0xa5f),'tokensUsed':r,'timestamp':new Date()[a6(0x1c1)]()}),'signal':AbortSignal[a6(0x183)](-0x16da+0xf3e+0x1b24)})[a6(0x1ad)](()=>{}),console['log'](),console[a6(0x1aa)](a0p['yellow']('\x20\x20'+a0B('tokenLimit'))),d(),(function(){const a8=a6;console[a8(0x1aa)](),console[a8(0x1aa)](a0p['yellow'](a8(0x1e0))),console[a8(0x1aa)](a0p['bold'][a8(0x1be)]('\x20\x20'+a0B(a8(0x1bd)))),console[a8(0x1aa)](a0p['yellow']('\x20\x20─────────────────────────────────────────────')),console[a8(0x1aa)]();for(const O of a0B(a8(0x171))['split']('\x0a'))''===O?console['log']():console[a8(0x1aa)](a0p['white'](a8(0x209)+O));console[a8(0x1aa)](),console[a8(0x1aa)](a0p[a8(0x1ef)](a8(0x1a9))),console[a8(0x1aa)](),console['log'](a0p[a8(0x137)]('\x20\x20\x20\x20'+a0B(a8(0x1b1)))),console[a8(0x1aa)](),console[a8(0x1aa)](a0p[a8(0x121)](a8(0x125))),console['log'](),console[a8(0x1aa)](a0p[a8(0x137)](a8(0x209)+a0B('ai4ctfRevealThenSubmit'))),console['log'](),console[a8(0x1aa)](a0p[a8(0x1ef)](a8(0x17e))),console[a8(0x1aa)](),console[a8(0x1aa)](a0p[a8(0x1b8)](a8(0x209)+a0B(a8(0x188)))),console['log']();}()),'continue';if(y)return console['log'](),console[a6(0x1aa)](a0p[a6(0x1be)]('\x20\x20'+a0B(a6(0x17f)))),console[a6(0x1aa)](a0p[a6(0x1b8)]('\x20\x20'+a0B(a6(0x20d))+'\x20')+a0p[a6(0x1ef)]('!echo\x20aWNvYXt3M2xjMG1lXzJfYWk0Y3RmfQ==\x20|\x20base64\x20-d')),console[a6(0x1aa)](a0p[a6(0x1b8)]('\x20\x20'+a0B(a6(0x145))+'\x20')+a0p[a6(0x1ef)](a6(0x146))),console['log'](),'continue';console[a6(0x1aa)](a0p['gray']('\x20\x20'+a0B(a6(0x1d1))));try{const O=await g[a6(0x12b)](p);process[a6(0x167)][a6(0x139)]('\x1b[1A\x1b[2K'),r+=O[a6(0x1eb)],a0v(O[a6(0x1eb)]),console[a6(0x1aa)](),a0z(O[a6(0x148)]),d(),console[a6(0x1aa)]();}catch(P){process['stdout']['write']('\x1b[1A\x1b[2K'),a0A(a6(0x1e4)+P[a6(0x203)]),console[a6(0x1aa)]();}return'continue';}const f=new Set();async function m(k){const a9=a0j;if(!u||!g)return a9(0x1ff);const p=k[a9(0x1c5)](),q=p[a9(0x154)](),v=(Date[a9(0x15b)]()-u[a9(0x1ae)])/(-0x5b8*-0xb+0x6*0x41ee+-0x2a*0x556);if(!u[a9(0x131)]&&!u[a9(0x1d4)]&&u['hintsUsed']['size']>=0x22ae+0x5*0x5da+-0x3fee&&v>=0x12*-0x8d+-0x674+-0x5*-0x347&&(u[a9(0x131)]=!(0x1b*-0x168+-0x128+-0x4e4*-0x8),console[a9(0x1aa)](),console['log'](a0p['yellow'](a9(0x135))+a0p[a9(0x1ba)][a9(0x1be)](a9(0x129))),console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x1b4))),console['log']()),/^ICOA\{[^}]+\}$/i[a9(0x180)](p))return console['log'](),console[a9(0x1aa)](a0p[a9(0x1b8)]('\x20\x20Detected\x20flag\x20—\x20treating\x20as:\x20')+a0p[a9(0x137)](a9(0x181)+p)),m('submit\x20'+p);const x=q[a9(0x11e)](/^hint\s+([abc])$/);if(x){const A=x[0x5e7*-0x2+0xe*-0x1c9+0x24cd][a9(0x18b)](),B=u[a9(0x1d5)]['hints'],C=B?.[A],D='A'===A?a0p['green']:'B'===A?a0p['yellow']:a0p[a9(0x1f0)];if(console[a9(0x1aa)](),console[a9(0x1aa)](D[a9(0x1ba)](a9(0x1bc)+A)),console['log'](),C){for(const E of String(C)[a9(0x217)]('\x0a'))console['log'](a0p[a9(0x137)](a9(0x209)+E));}else console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x169)));return console['log'](),'A'===A?console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x147))+a0p[a9(0x1ef)](a9(0x138))):'B'===A?console['log'](a0p['gray'](a9(0x1c9))+a0p['cyan'](a9(0x1e5))):'C'===A&&console[a9(0x1aa)](a0p['gray'](a9(0x209)+a0B(a9(0x1af))+'\x20')+a0p['bold'][a9(0x121)](a9(0x129))),console[a9(0x1aa)](),a9(0x199);}const z=p['match'](/^submit\s+(.+)/i);if(z){const F=z[-0x4a7*-0x4+0x17a6+-0x2a41][a9(0x1c5)]();if(/^[A-Da-d]$/[a9(0x180)](F))return console[a9(0x1aa)](),console['log'](a0p['yellow']('\x20\x20\x22'+F+a9(0x182))),console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x1f9))+a0p[a9(0x121)]('ICOA{your_flag}')+a0p[a9(0x1b8)](a9(0x152))),console['log'](),a9(0x199);const {getExamState:G,saveExamState:H}=await import(a9(0x12c)),I=G();if(!I)return'exit';if(!I['questions'][a9(0x197)](L=>L[a9(0x143)]===u[a9(0x16e)]))return console[a9(0x1aa)](a0p[a9(0x1f0)]('\x20\x20Q'+u['qNum']+'\x20not\x20found\x20in\x20state.')),a9(0x199);const J=I['answers'][u[a9(0x16e)]];I[a9(0x1c4)]||(I['interactions']=[]),I['interactions'][a9(0x1d0)]({'ts':new Date()[a9(0x1c1)](),'q':u[a9(0x16e)],'type':J?'answer_changed':a9(0x172),'input':F,'result':a9(0x1e7)}),I[a9(0x1a2)][u['qNum']]=F;const K=u['qNum']+(-0xc50+0x1451+-0x800);return I['_lastQ']=K<=0x26b*0x5+-0x236*-0xb+-0x2443?K:u[a9(0x16e)],H(I),console[a9(0x1aa)](),J?(console[a9(0x1aa)](a0p[a9(0x121)](a9(0x120)+u[a9(0x16e)]+a9(0x17c))+a0p[a9(0x1be)](F)),console[a9(0x1aa)](a0p[a9(0x1b8)]('\x20\x20\x20\x20Previous:\x20'+J))):console[a9(0x1aa)](a0p['green'][a9(0x1ba)](a9(0x133)+u[a9(0x16e)]+a9(0x1b0)+F)),console[a9(0x1aa)](a0p[a9(0x1b8)]('\x20\x20\x20\x20(Grading\x20happens\x20at\x20exam\x20submit\x20—\x20you\x20cannot\x20preview\x20correctness\x20during\x20the\x20exam.)')),console['log'](),console['log'](a0p[a9(0x1b8)]('\x20\x20')+a0p[a9(0x137)](a9(0x13b))+a0p['gray'](a9(0x15f))+a0p['white'](a9(0x1ff))+a0p[a9(0x1b8)](a9(0x1bb))),K<=0x2*0x97d+0x521+-0x17f5?console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x18f))+a0p[a9(0x1ef)](a9(0x1d7))+a0p['gray'](a9(0x12a)+K)):console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x179))+a0p[a9(0x1f0)](a9(0x1d6))+a0p[a9(0x1b8)](a9(0x13d))),console[a9(0x1aa)](),a9(0x199);}if(k[a9(0x12d)]('!')){const L=k[a9(0x1e2)](0xb+-0x98b+-0x981*-0x1)[a9(0x1c5)]();if(!L)return a9(0x199);try{const M={};M['encoding']=a9(0x1cb),M[a9(0x183)]=0x2710;const {execSync:N}=await import(a9(0x194)),O=N(L,M)[a9(0x1c5)]();console[a9(0x1aa)](),console[a9(0x1aa)](a0p[a9(0x1b8)]('\x20\x20$\x20')+a0p[a9(0x137)](L)),console[a9(0x1aa)](a0p[a9(0x137)]('\x20\x20'+O[a9(0x217)]('\x0a')[a9(0x16d)](a9(0x1a7)))),console[a9(0x1aa)]();}catch(P){console[a9(0x1aa)](),console[a9(0x1aa)](a0p[a9(0x1f0)](a9(0x1ac)+(P[a9(0x203)]?.[a9(0x217)]('\x0a')[0x1cc5*-0x1+0x5*0x387+0x1e*0x5f]||'Command\x20failed'))),console[a9(0x1aa)]();}return a9(0x199);}if(a9(0x1ff)===q||'back'===q||'quit'===q){const Q=u[a9(0x16e)],{getExamState:R}=await import(a9(0x12c)),S=R(),T=S&&null!=S[a9(0x1a2)][Q],U=S?.[a9(0x14b)]||Q;return s=!(-0xc1*0x22+0x1*-0x6fd+0x1d*0x120),g=null,u=null,f[a9(0x16a)](),console[a9(0x1aa)](),console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x192)+Q+'.')),T&&U>Q&&U<=-0x2*0x407+-0x9e*-0x13+-0x386?console['log'](a0p[a9(0x137)](a9(0x1db))+a0p[a9(0x1ba)][a9(0x121)]('Q'+U)+a0p[a9(0x1b8)](a9(0x161))+a0p[a9(0x1ef)](a9(0x1d7))+a0p['gray'](a9(0x144))):T&&Q>=0xc55+-0x2*-0x1384+-0x3337?console[a9(0x1aa)](a0p[a9(0x137)](a9(0x123))+a0p['bold'][a9(0x1f0)]('ctf4ai')+a0p[a9(0x1b8)](a9(0x1ed))):console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x19b))+a0p['white']('exam\x20q\x20'+Q)+a0p[a9(0x1b8)]('\x20\x20·\x20\x20Re-enter:\x20')+a0p[a9(0x137)](a9(0x1d7))),console[a9(0x1aa)](),a9(0x1ff);}if(y)return console[a9(0x1aa)](),console[a9(0x1aa)](a0p[a9(0x1be)](a9(0x13f))),console[a9(0x1aa)](a0p[a9(0x1b8)]('\x20\x20Still\x20available:\x20')+a0p[a9(0x137)](a9(0x124))+a0p[a9(0x1b8)](a9(0x1fa))+a0p[a9(0x137)](a9(0x18c))+a0p[a9(0x1b8)]('\x20·\x20')+a0p['white'](a9(0x1ff))),console[a9(0x1aa)](),'continue';if(r>=h)return y=!(0xa*-0x1ba+-0x607*0x5+0x2f67),console[a9(0x1aa)](),console[a9(0x1aa)](a0p[a9(0x1f0)][a9(0x1ba)](a9(0x159))),console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x19c))+a0p[a9(0x137)](a9(0x124))+a0p[a9(0x1b8)]('\x20·\x20')+a0p[a9(0x137)](a9(0x18c))+a0p[a9(0x1b8)](a9(0x1fa))+a0p[a9(0x137)](a9(0x1ff))),console['log'](),a9(0x199);console[a9(0x1aa)](a0p[a9(0x1b8)](a9(0x216)));try{const V=await g[a9(0x12b)](k);process[a9(0x167)][a9(0x139)]('\x1b[1A\x1b[2K'),r+=V[a9(0x1eb)];const {getRealExamState:W,saveExamState:X}=await import(a9(0x12c)),Y=W(),Z={};Z[a9(0x1d7)]=0x0,Z[a9(0x1d6)]=0x0,(Y&&(Y['aiUsage']||(Y[a9(0x15c)]=Z),Y[a9(0x15c)][a9(0x1d7)]=r,X(Y)),console[a9(0x1aa)](),a0z(V[a9(0x148)]),d(),function(a0,a1,a2){const aa=a9,a3=a0/a1*(-0x4f0+0x250+0x304);a3>=0x1*-0x2466+0x10a7+0x2*0xa0f&&!a2[aa(0x206)]('95')?(console[aa(0x1aa)](a0p[aa(0x1f0)][aa(0x1ba)](aa(0x140)+Math[aa(0x212)](a3)+aa(0x1cf)+(a1-a0)+aa(0x196))),a2[aa(0x164)]('95')):a3>=-0x4f*0x24+0xbbb+-0x4f&&!a2[aa(0x206)]('80')?(console[aa(0x1aa)](a0p[aa(0x1be)]('\x20\x20⚠\x2080%\x20of\x20section\x20AI\x20budget\x20used.')),a2[aa(0x164)]('80')):a3>=-0x3cb+-0x1d9f+0x219c&&!a2['has']('50')&&(console['log'](a0p[aa(0x1b8)](aa(0x1f1))),a2[aa(0x164)]('50'));}(r,h,f),console[a9(0x1aa)]());}catch(a0){process[a9(0x167)][a9(0x139)](a9(0x187)),a0A(a9(0x1e4)+a0[a9(0x203)]),console['log']();}return'continue';}export function registerAi4ctfCommand(b){const ab=a0j;b[ab(0x134)]('ai4ctf')[ab(0x184)](ab(0x173))[ab(0x15e)](async()=>{const ac=ab;a0x('ai4ctf');const {getRealExamState:j}=await import('../lib/exam-state.js'),k=j(),p=k?.[ac(0x211)][ac(0x1b2)](x=>x[ac(0x143)]>=-0x2*-0x7a7+-0x2061+-0x8e*-0x1f&&x[ac(0x143)]<=0x19a9+-0x197f+-0x4);if(k&&p){const x=k['_lastQ']||-0x1c0b+-0x1267+0x2e73;if(x<0x1821+0x1fe9+-0x199*0x23||x>0xb*-0x197+-0xc*0x153+0x2187)return console[ac(0x1aa)](),console['log'](a0p['yellow']('\x20\x20ai4ctf\x20is\x20available\x20on\x20Q31–38\x20(AI4CTF\x20section).')),console[ac(0x1aa)](a0p['gray']('\x20\x20You\x20are\x20on\x20Q'+x+ac(0x207))),console[ac(0x1aa)](a0p['gray'](ac(0x1c8))+a0p[ac(0x1ba)][ac(0x1ef)](ac(0x160))),void console[ac(0x1aa)]();const z=k[ac(0x211)][ac(0x197)](A=>A[ac(0x143)]===x);return z?void await async function(A,B){const ad=ac,{getRealExamState:C,refetchQuestionDataIfStale:D,materializeAttachedData:E}=await import(ad(0x12c));await D();const F=C();if(!F)return!(-0x1b*-0x10d+-0xb01*0x1+-0x115d);const G=F[ad(0x211)][ad(0x197)](J=>J['number']===A);G&&(B=G),E(A,B?.[ad(0x166)]);const H=F[ad(0x15c)]?.[ad(0x1d7)]??0x750+-0x1278+0x165*0x8;if(H>=h)return console['log'](),console[ad(0x1aa)](a0p[ad(0x1be)](ad(0x19a))),console[ad(0x1aa)](a0p[ad(0x1b8)](ad(0x1de))+a0p[ad(0x137)]('exam\x20answer\x20'+A+ad(0x1a8))),console[ad(0x1aa)](),!(0x978+0x1*-0xcf1+-0x5*-0xb2);try{g=await a0q(void(0x332+0x14f9+-0x182b),function(J,K){const ae=ad,L=J[ae(0x184)]||J[ae(0x148)]||'',M=J[ae(0x166)]?'\x0a\x0aATTACHED\x20DATA\x20(also\x20saved\x20to\x20challenges/q'+K+ae(0x1da)+J[ae(0x166)]:'';return ae(0x1e9)+K+',\x20'+J[ae(0x1e8)]+',\x20'+(J[ae(0x1d8)]||0x306+0x6a4+0x1*-0x9a4)+'\x20points):\x0a'+L+M+ae(0x136)+K+ae(0x14f);}(B,A));}catch(J){return a0A(J['message']),!(0x2*0x11b3+-0xa6*0x10+-0x1905);}s=!(0x24*-0xa7+0x733+0x1049),r=H,y=!(0x3d1+-0xa70+-0x4*-0x1a8),u={'qNum':A,'question':B,'usageField':ad(0x1d7),'enteredAt':Date[ad(0x15b)](),'hintsUsed':new Set(),'submitAttempted':!(0x23a1+0x355+0x1*-0x26f5),'nudgeShown':!(-0x9*-0xe2+-0x11*0x8b+-0x1e*-0xb)};const I=F[ad(0x1a2)]?.[A];return function(K,L,M){const af=ad,N=a0w()[af(0x16f)]||af(0x157),O=r>0x1d31+-0x1814+-0x51d;console[af(0x1aa)](),console[af(0x1aa)](a0p[af(0x121)][af(0x1ba)](af(0x12e)+L+':\x20'+K[af(0x1e8)]+af(0x190))),O&&console['log'](a0p[af(0x1b8)]('\x20\x20(resuming\x20—\x20prior\x20chat\x20is\x20not\x20remembered,\x20but\x20tokens\x20already\x20used\x20stay\x20deducted)')),M&&console[af(0x1aa)](a0p[af(0x1b8)](af(0x151))+a0p[af(0x1be)](M)+a0p[af(0x1b8)](af(0x215))),console[af(0x1aa)](),console[af(0x1aa)](a0p[af(0x1ef)]('\x20\x20┌─────────────────────────────────────────────')),console[af(0x1aa)](a0p[af(0x1ef)]('\x20\x20│\x20')+a0p[af(0x1ba)]['white']('Q'+L+af(0x1c0)+K['category']+']\x20\x20·\x20'+(K['points']||0xf35+0x1592+-0x24c1*0x1)+af(0x1fb))),console[af(0x1aa)](a0p[af(0x1ef)](af(0x17a)));for(const P of String(K['text'])[af(0x217)]('\x0a')){const Q=P['length']>0x2*0xf8b+0x21a*0x1+-0x20f4?P['slice'](0x257a+-0x1*0x2db+-0x1*0x229f,0xfd3*-0x1+-0x1*0x1bda+-0x751*-0x6)+af(0x1a5):P;console[af(0x1aa)](a0p[af(0x1ef)](af(0x178))+a0p[af(0x137)](Q));}console[af(0x1aa)](a0p[af(0x1ef)](af(0x17a))),console[af(0x1aa)](a0p[af(0x1ef)](af(0x178))+a0p[af(0x1b8)](af(0x126))+a0p[af(0x137)](af(0x1a0)+L)),console[af(0x1aa)](a0p[af(0x1ef)](af(0x178))+a0p[af(0x1b8)]('Flag\x20format:\x20\x20\x20\x20ICOA{...}')),console['log'](a0p[af(0x1ef)](af(0x200))),console['log'](),console[af(0x1aa)](a0p[af(0x1ba)]['white'](af(0x14a))),console['log'](),console[af(0x1aa)](a0p['yellow'](af(0x162))+a0p[af(0x1b8)](af(0x20b))),console[af(0x1aa)](a0p[af(0x1be)](af(0x155))+a0p[af(0x1b8)](af(0x1d2))),console[af(0x1aa)](a0p[af(0x1be)](af(0x1f4))+a0p[af(0x1b8)](af(0x191))),console[af(0x1aa)](a0p['bold'][af(0x121)]('\x20\x20\x20\x20submit\x20ICOA{...}')+a0p['gray']('\x20Submit\x20your\x20flag\x20for\x20this\x20question')),console[af(0x1aa)](a0p[af(0x137)](af(0x175))+a0p[af(0x1b8)](af(0x1ee))),console[af(0x1aa)](a0p[af(0x1b8)]('\x20\x20\x20\x20Just\x20type\x20freely\x20to\x20chat\x20with\x20the\x20AI\x20teammate.')),console[af(0x1aa)](a0p[af(0x1b8)](af(0x198))+a0p[af(0x137)]('\x22how\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console[af(0x1aa)](),console[af(0x1aa)](a0p[af(0x1b8)](af(0x1fd))+a0p['gray'](af(0x1ec))),console[af(0x1aa)](),d(),console['log'](a0p['gray'](af(0x130)+N+')')),console[af(0x1aa)]();}(B,A,I),!(0x1bc4*-0x1+0x72d*0x5+-0x81d);}(x,z):void a0A('Q'+x+ac(0x1cd)+x);}const q={};q['name']='Hidden\x20Message',q[ac(0x1e8)]='Cryptography';const v=a0w()[ac(0x16f)]||ac(0x157),w=q;try{g=await a0q(w);}catch(A){return void a0A(A[ac(0x203)]);}s=!(-0x1f8b+0xce*-0x11+0xe3*0x33),r=-0x734*-0x1+-0x39b+-0x1*0x399,y=!(-0x1*0x1da5+0x2406+-0x660),console[ac(0x1aa)](),console[ac(0x1aa)](a0p[ac(0x121)]['bold'](ac(0x149)+a0B('ai4ctfTitle')+'\x20═══')),console[ac(0x1aa)](),console[ac(0x1aa)](a0p[ac(0x137)]('\x20\x20'+a0B(ac(0x1c3)))),console[ac(0x1aa)](),console[ac(0x1aa)](a0p[ac(0x1ef)]('\x20\x20┌─────────────────────────────────────────────')),console['log'](a0p[ac(0x1ef)](ac(0x178))+a0p[ac(0x1ba)][ac(0x137)](a0B(ac(0x18e)))),console['log'](a0p[ac(0x1ef)](ac(0x17a))),console['log'](a0p['cyan'](ac(0x178))+a0p[ac(0x137)](a0B('ai4ctfIntercepted'))),console[ac(0x1aa)](a0p['cyan'](ac(0x178))+a0p[ac(0x121)](ac(0x11f))),console[ac(0x1aa)](a0p[ac(0x1ef)]('\x20\x20│')),console[ac(0x1aa)](a0p[ac(0x1ef)]('\x20\x20│\x20')+a0p[ac(0x137)](a0B(ac(0x208)))),console['log'](a0p[ac(0x1ef)](ac(0x178))+a0p[ac(0x1b8)]('Flag\x20format:\x20icoa{...}')),console[ac(0x1aa)](a0p[ac(0x1ef)](ac(0x200))),console[ac(0x1aa)](),console[ac(0x1aa)](a0p[ac(0x137)]('\x20\x20'+a0B(ac(0x16c)))),console[ac(0x1aa)](),console[ac(0x1aa)](a0p['yellow'](ac(0x162))+a0p[ac(0x1b8)](ac(0x209)+a0B(ac(0x142)))),console[ac(0x1aa)](a0p[ac(0x1b8)](ac(0x11d)+a0B(ac(0x1f5)))),console['log'](a0p[ac(0x1be)](ac(0x155))+a0p['gray'](ac(0x209)+a0B(ac(0x19e)))),console['log'](a0p[ac(0x1b8)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B('ai4ctfHintBUses'))),console[ac(0x1aa)](a0p['yellow']('\x20\x20\x20\x20hint\x20c')+a0p[ac(0x1b8)]('\x20\x20\x20\x20'+a0B(ac(0x14c)))),console[ac(0x1aa)](a0p['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B('ai4ctfHintCUses'))),console[ac(0x1aa)](),console['log'](a0p[ac(0x1b8)](ac(0x15d))),console[ac(0x1aa)](a0p['bold'][ac(0x137)]('\x20\x20'+a0B(ac(0x204)))),console[ac(0x1aa)](ac(0x209)+a0p[ac(0x1ef)](ac(0x12f))+a0p[ac(0x1b8)](ac(0x186)+a0B('ai4ctfHintNudge'))),console[ac(0x1aa)](ac(0x209)+a0p[ac(0x1ef)](ac(0x138))+a0p['gray'](ac(0x186)+a0B('ai4ctfHintTechnique'))),console[ac(0x1aa)](ac(0x209)+a0p['cyan'](ac(0x1e5))+a0p[ac(0x1b8)](ac(0x186)+a0B('ai4ctfHintPrinciple'))),console[ac(0x1aa)](a0p[ac(0x1b8)]('\x20\x20\x20\x20'+a0B(ac(0x1a1)))),console[ac(0x1aa)](),console[ac(0x1aa)](a0p[ac(0x137)]('\x20\x20'+a0B(ac(0x20c)))),console['log'](a0p[ac(0x1b8)]('\x20\x20'+a0B(ac(0x13c))+'\x20')+a0p[ac(0x137)]('\x22what\x20encoding\x20is\x20this?\x22')),console[ac(0x1aa)](),console[ac(0x1aa)](a0p[ac(0x1be)]('\x20\x20'+a0B(ac(0x185)))),console[ac(0x1aa)](a0p[ac(0x137)]('\x20\x20\x20\x20hint\x20a\x20/\x20b\x20/\x20c\x20\x20')+a0p[ac(0x1b8)](a0B(ac(0x202)))),console[ac(0x1aa)](a0p[ac(0x137)]('\x20\x20\x20\x20submit\x20<flag>\x20\x20\x20')+a0p[ac(0x1b8)](a0B('ai4ctfSubmitCmd'))),console[ac(0x1aa)](a0p[ac(0x137)](ac(0x1c6))+a0p[ac(0x1b8)](a0B(ac(0x1ab)))),console[ac(0x1aa)](a0p[ac(0x1b8)](ac(0x198))+a0p[ac(0x137)]('!echo\x20aWNv...\x20|\x20base64\x20-d')),console[ac(0x1aa)](a0p[ac(0x1b8)](ac(0x1dd)+a0B(ac(0x19d)))),console[ac(0x1aa)](),d(),console[ac(0x1aa)](a0p['gray']('\x20\x20'+a0B('ai4ctfModel')+ac(0x141)+v+')')),console[ac(0x1aa)](a0p[ac(0x1b8)]('\x20\x20'+a0B('ai4ctfExit'))),console[ac(0x1aa)]();});}
1
+ (function(b,j){const a4=a0j,k=b();while(!![]){try{const p=-parseInt(a4(0x18e))/(-0xb53+-0xcca+0x93*0x2a)*(parseInt(a4(0x24f))/(0x2d5+0x49c+-0x76f))+-parseInt(a4(0x24a))/(-0x801*-0x1+0x1*0x2388+-0x15c3*0x2)+parseInt(a4(0x229))/(0x16c3+-0x1752+0x93)*(parseInt(a4(0x199))/(0x1ed5+0x2541+-0x11*0x401))+parseInt(a4(0x258))/(-0x48*0x28+0x71d+0x47*0xf)+parseInt(a4(0x1a8))/(-0x1*0xa31+0xa3a+-0x2)*(parseInt(a4(0x279))/(0x3e*0x95+0x10cf+-0x34dd))+parseInt(a4(0x1a1))/(0x1d48+-0x24d*0x3+-0x1658)*(parseInt(a4(0x239))/(-0x25e+0x1*-0x40d+-0x57*-0x13))+-parseInt(a4(0x205))/(0x1a3*0x3+-0x779+0x29b)*(parseInt(a4(0x180))/(0x2607+-0x5*0x72d+-0x21a));if(p===j)break;else k['push'](k['shift']());}catch(q){k['push'](k['shift']());}}}(a0b,-0x68ac0+0x28a26+0x7*0x1445d));import a0p from'chalk';import{createChatSession as a0q}from'../lib/gemini.js';import{addTokenUsage as a0v}from'../lib/budget.js';function a0b(){const ag=['icdILiiG','ntu3ntG2DxLOr2vA','q2HHDcb3AxrOihLVDxiGquKGDgvHBw1HDgu','ywK0y3rMsgLUDe5LEhrd','icbbssbIDwrNzxqGzxHOyxvZDgvKigzVCIbbstrdveyGC2vJDgLVBI4','imk3ia','D3jPDgu','Dgv4Da','mtmYmtq2ExfLDLnm','DxrMltG','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','ywK0y3rMrxHPDenTze5LEhq','ywK0y3rMu2fTCgXL','Cu51Bq','icaGia','ywK0y3rMq29TBwfUzhm','C2XPy2u','CxvLC3rPB24','AgLUDcbH','ywK0y3rM','icaGicaGicaGicfLy2HVigfxtNzzwhqZttj4AK1hmwXyEKPMwvDRmfKZuM1Mut09ihWGyMfZzty0ic1K','icbHAtrJDgyGAxmGyxzHAwXHyMXLig9UifeZmEkaKZm4icHbstrdveyGC2vJDgLVBIKU','icbr','icdIMQaGquK0q1rgihrVA2vUigj1zgDLDcbLEgHHDxn0zwqGkdi1ldaWmcb1C2vKks4','icdILiZILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','DgvZDa','icboB3rLoIa1mcuGB2yGC2vJDgLVBIbbssbIDwrNzxqGDxnLzc4','zgvZy3jPChrPB24','ywK0y3rMrgvJB2rLza','rNvSBcbXDwvZDgLVBJOGia','ywK0y3rMv3jHCe5LEhruAxrSzq','AwnVyxT3m2XJmg1LxZjFywK0y3rMFq','ywK0y3rMrxHPDe5LEhrtDwi','C3vIBwL0igLJB2f7DZnSyZbTzv8Yx2fPngn0zN0','Dg9mB3DLCKnHC2u','rMXHzYbMB3jTyxq6igLJB2f7lI4UFq','C3vIBwL0idXMBgfNpG','icaGicaGicaGicaGica','ywK0y3rMsgLUDejcB2r5','ywK0y3rMq21Ku2HLBgXmAw5L','icdILzdILzdILzaG','icbfCNjVCJOG','icaGicaGicaGicbbigDLBNrSzsbUDwrNzsaOChjLlxDYAxr0zw4P','icbbstrdveyGC2vJDgLVBIbJB21WBgv0zsdIGjqG','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','CgfKrw5K','iokvKokvKokvKa','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','zxHHBsbXia','C3rHCNrZv2L0Aa','ywK0y3rMtgv2zwXZ','ywK0y3rMrxHPDa','CxvLC3rPB25Z','icdILRGG','oIbhB29NBguGr2vTBweGncaO','ihrVA2vUCYbSzwz0lG','C3vIBwL0qxr0zw1WDgvK','y3LHBG','ywK0y3rMq21KsgLUDeXPBMu','ywK0y3rMv3jHCff1B3rHC1rPDgXL','Bg9N','AgLUDcbJ','CMvK','C2vUze1LC3nHz2u','iIbSB29RCYbSAwTLigfUie1dusbSzxr0zxiSig5VDcbHigzSywCU','q29TBwfUzcbMywLSzwq','icaGicfWExrOB24Zic4UlG','icaGicaGicaGicbuzwnOBMLXDwuGAgLUDcaOChjLlxDYAxr0zw4P','zxHHBsbXidmX','CM91BMq','cGPbvfrbq0HfrcbeqvrbicHHBhnVihnHDMvKihrVignOywXSzw5NzxmVCq','icaGiokgKIa','ywK0y3rMtg9JA2vKvgHLBG','AgLUDcbI','y29UDgLUDwu','rMXHzYbMB3jTyxq6icaGieLdt0f7lI4UFq','icaI','icaGicbsDw4GuhL0Ag9UigLUihnOzwXS','igfNywLUihrVignOyw5NzsWGB3iG','icdIMQaGww91CIbbstrdveyGDg9Rzw4GyNvKz2v0igLZigv4Agf1C3rLzc4','icaKia','ywK0y3rMv3jHCeXPBMuXsgvHza','xsaGWRCG','BwvUDq','icaGihn1yM1PDca8zMXHzZ4Gica','CMvWBgfJzq','ig5VDcbMB3vUzcbPBIbZDgf0zs4','icaGideUia','ywK0y3rMt3jdAgf0','z2vTBweTnc0ZmwiTAxq','ihrVignVBNrPBNvL','C3rKB3v0','ywK0y3rMvgHPBMTPBMC','g1SXqrTBmKS','ywK0y3rMv2vSy29Tzu5VuMv2zwfS','ywK0y3rMuMv2zwfSqM9KEq','ywK0y3rMsgLUDfrLy2HUAxf1zq','yMfJAW','ywK0y3rMv3jHCeXPBMuYsgvHza','quK0q1rgihnLy3rPB24','icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','mty0odaWowjpz1rnCa','icbiB3CGDg8GD29YAYb0AgLZihf1zxn0Aw9U','icbdDxjYzw50igfUC3DLCJOG','ywK0y3rMrMXHz0HPBNq','ywK0y3rMv3jHCeXPBMuYqM9KEq','ywK0y3rMrxHPDe5LEhruAxrSzq','icdILjtILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','iokaLca','zw5JB2rPBMC','icbezxrLy3rLzcbMBgfNiokaLcb0CMvHDgLUzYbHCZOG','BNvKz2vtAg93BG','ywK0y3rMsgLUDei','ywK0y3rMsgLUDe5LEhrc','icbnB2rLBdOGr29Vz2XLieDLBw1HidqGka','iwvJAg8GyvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0GFcbIyxnLnJqGlwq','ywK0y3rMv3jHCff1B3rHquHPBNq','BMfTzq','ywK0y3rMv3jHCe5LEhrtDwi','ywK0y3rMtg9JA2vKvxnL','zxHPDa','icbszxn1Bwu6ia','icaGigHPBNqGyG','ywK0y3rMtg9JA2vKvgL0Bgu','ywK0y3rMrgvJB2rL','yM9Sza','vg9Rzw5Z','ig9UifeZoq','BwvZC2fNzq','Dg9ju09tDhjPBMC','z2vTAw5Ptw9KzwW','BNvTyMvY','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icdILzdILzdILzaGquK0q1rgiokaLcbr','ywK0y3rMv3jHCff1B3rHqq','ywK0y3rMrxHPDenTzejHy2S','Dg9Rzw5ZvxnLza','mtq4mde1nNDUre5rAa','ywK0y3rMv3jHCff1B3rHqG','z3jHEq','ue9tva','z3jLzw4','ywK0y3rMsgLUDee','icaGihn1yM1PDcbjq09bEY4UlN0','Cg9PBNrZ','AgLUDhm','ifn1yM1PDcb5B3vYigzSywCGzM9YihrOAxmGCxvLC3rPB24','ywLvC2fNzq','icaGicaGicaGicaGieXLyxzLignOyxqSihjLDhvYBIb0BYbLEgfT','icaGicHhCMfKAw5NigHHChbLBNmGyxqGzxHHBsbZDwjTAxqG4OcuihLVDsbJyw5UB3qGChjLDMLLDYbJB3jYzwn0BMvZCYbKDxjPBMCGDgHLigv4yw0Ukq','icbzB3uGy2fUihn0AwXSihn1yM1PDcbHigzSywCGzgLYzwn0BhK6ia','cIaG','icaOC3vIBwL0igfNywLUihrVignOyw5NzsK','mtbwCMz1tMK','iNDOyxqGzw5JB2rPBMCGAxmGDgHPCZ8I','AgfZ','icaGifjLywXSEsbZDhvJAZ8Gvhj5oIa','Dg9vChbLCKnHC2u','EwvSBg93','lIbkDw1WihrOzxjLigzPCNn0oG','DgLTzw91Da','icbbstrdveyGy2HHDcbLBMrLzcbMB3iGuq','ywK0y3rMrw5Ku2vZC2LVBG','iwvJAg8GyvDoDI4UlIb8igjHC2u2ncaTza','icdIMQaG','quKGzxjYB3i6ia','icdILRGGsgLUDca','C2L6zq','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','icdcTYaGuMuTzw50zxi6ia','mtu5mJiXn0XpCePnra','C3vIBwL0ia','icaGicaGicaGicblzxKGyNjLywT0AhjVDwDOicHWCMuTD3jPDhrLBIK','ihbVAw50CYK6cG','ywK0y3rMsgLUDejvC2vZ','mte5ogjnqKf3rW','ywK0y3rMu3vIBwL0q21K','icaGicaODhLWzsbPDcbYAwDODcbOzxjLigLUihrOAxmGy2HHDcdIGjqGBM90igfZigeGC2HLBgWGy29TBwfUzcK','y2f0zwDVCNK','ixnOzwXS','CxvPDa','zMLUza','ywrK','ww91igfYzsbHBIbbssb0zwfTBwf0zsbOzwXWAw5NigeGy29UDgvZDgfUDcbZB2X2zsbHBIbjq09bidiWmJyGy3LIzxjZzwn1CML0EsbLEgfTihf1zxn0Aw9UlGOkq1vsuKvovcbrvuvtveLptIaOuq','mJe4nZG0nKX5tvjRtG','icaGicaGigHPBNqGysaGia','q29UDgvUDc1uExbL','D2HPDgu','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','icaGigHPBNqGyW','icaGifn0DwnRpYbuCNK6ia','ywK0y3rMv3jHCff1B3rHqKHPBNq','icaGice8C2HLBgWGy21KpIaGica','icbtDgLSBcbHDMfPBgfIBgu6ia','icbuAgLUA2LUzY4UlG','icaGigHPBNqGyq','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','y2XLyxi','ywK0y3rMsgLUDfbYAw5JAxbSzq','icaGicaGicbZDwjTAxqGAwnVyxT3m2XJmg1LxZjFywK0y3rMFq','zxHHBsbHBNn3zxiG','yxr0ywnOzwreyxrH','ywK0y3rMsgLUDefvC2vZ','ywK0y3rMv3jHCff1B3rHrM9VDgvY','ywK0y3rMv3jHCff1B3rHq0HPBNq','BM93','icaGie5VihbYzs13CML0DgvUigHPBNqGyxqGDgHPCYb0AwvYigzVCIb0AgLZihf1zxn0Aw9UlG','x2XHC3rr','DMLHigfPngn0zIbJAgf0','ywK0y3rMuMv2zwfStg9JA05VDgu','ihb0CW','C3rYAw5NAwz5','icbzB3uGy2fUihn0AwXSoIa','E25VuhjVz30','ywK0y3rMv3jHCfr5CgvdDgy0ywK','CMvWzwf0','icaG4OAsia','mta0uLvIyxL4','icaGicbIywnR','lI4VBgLIl2v4yw0TC3rHDguUANm','BwLU','icaOCMvZDw1PBMCG4OcuihbYAw9YignOyxqGAxmGBM90ihjLBwvTyMvYzwqSigj1Dcb0B2TLBNmGywXYzwfKEsb1C2vKihn0yxKGzgvKDwn0zwqP','icaGicaGicaGicaGicaGicaGicbLlMCUia','ywK0y3rMv3jHCe5VuhjVzW','AM9PBG','DhjPBq','ieLdt0f7lI4UFq','ywK0y3rMv3jHCeXPBMuXqM9KEq','icdWN5kHie9Uy2uGEw91igHHDMuGsunpqxSUlI59lcbZDwjTAxqGAxqGD2L0AdOG','zw50zxjLzef0','mtj3vwzpBvy','y3rMngfP','C3vIBwL0ieLdt0f7lI4UFq','lNr4DcbPBNnPzguGDgHLignVBNrLC3rHBNqNCYbZyw5KyM94iokaLcbWyxrOigLZihjLBgf0AxzLihrVihrOzsbZyw5KyM94j3mGl2HVBwuVy29TCgv0AxrVCIb3B3jRAw5NigrPCMvJDg9YEsWGCMvHy2HHyMXLigzYB20Gyw55icfZAgvSBcaVicfWExrOB24ZigLUDM9JyxrPB24PoGO','ywK0y3rMsgLUDem','ywK0y3rMv3jHCfrPDgXL','ChvZAa','icdINjmGqw5ZD2vYigzVCIbr','icaGigv4AxqGicaGicaGicaGica','ywK0y3rMvgL0Bgu','AgLUDhnvC2vK','ywK0y3rMuMv2zwfSvgL0Bgu','icaGigv4Axq','igfUC3DLCIb1CgrHDgvKoIa','nZfSv2LUve4','lNr4DcaOAw5ZAwrLihrOzsbZyw5KyM94ksbYyxrOzxiGDgHHBIbHC2TPBMCGDgHLignVBNrLC3rHBNqGDg8GCgfZDguGDgHLihDOB2XLigjSB2iGyMfJAY4klsblzwvWihjLC3bVBNnLCYbJB25JAxnLigfUzcbWCMfJDgLJywWUifrOAxmGy29UDgvZDgfUDcbOyxmGBgLTAxrLzcb0Aw1LlG','icbzB3uGyxjLig9Uife','yxbWBgLJyxrPB24VANnVBG','Bwf0y2G','y29TBwfUza','ywK0y3rMsgLUDefcB2r5','sgLUDca','Dg9Rzw5mAw1PDa','C3bSAxq','ywK0y3rMsw50zxjJzxb0zwq','nvHPzeXTza','icdILii','Aw50zxjHy3rPB25Z','ywK0y3rMtw9KzwW','ywK0y3rMv2vSy29Tzun0yq','ywK0y3rMsgLUDenvC2vZ','ywK0y3rMv3jVBMDgBgfN'];a0b=function(){return ag;};return a0b();}import{getConfig as a0w}from'../lib/config.js';import{logCommand as a0x}from'../lib/logger.js';function a0j(a,b){a=a-(0x198*0x9+0x2*-0xac7+0x2*0x45b);const c=a0b();let d=c[a];if(a0j['AxxBgX']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x6d4+0xa2a*0x2+-0x1b28,o,p,q=0x17e3+0x2055+-0x707*0x8;p=i['charAt'](q++);~p&&(o=n%(-0x4*-0x16b+-0xa22+0x17e*0x3)?o*(0xa9*0x26+-0xc6a+-0x3*0x424)+p:p,n++%(-0x1986+0x3*-0x35f+0x1*0x23a7))?l+=String['fromCharCode'](-0x551+-0x1*0x22d+0x87d&o>>(-(-0xb6f*0x3+0x398*-0x8+0x3f0f)*n&0xb9*0x17+0x1619+-0x1359*0x2)):0x18d4+-0x3d9+0x14fb*-0x1){p=j['indexOf'](p);}for(let r=-0x1ec6+0x1017*0x1+0xeaf,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](0xe*-0x139+-0x2*0xfb6+0x309a))['slice'](-(-0x1*-0x190f+-0x23e6*-0x1+-0x3cf3));}return decodeURIComponent(m);};a0j['Offekp']=e,a0j['gYMMWN']={},a0j['AxxBgX']=!![];}const f=c[-0x1e0+-0x1745+-0x1925*-0x1],g=a+f,h=a0j['gYMMWN'][g];return!h?(d=a0j['Offekp'](d),a0j['gYMMWN'][g]=d):d=h,d;}import{printMarkdown as a0z,printError as a0A}from'../lib/ui.js';import{t as a0B}from'../lib/i18n.js';const i=b=>new Promise(j=>setTimeout(j,b));let s=!(0x6d4+0xa2a*0x2+-0x1b27),g=null,r=0x17e3+0x2055+-0x707*0x8,y=!(-0x4*-0x16b+-0xa22+0x17d*0x3);const h=0x15d*0x5c+-0x3e13+-0x1*-0x224f;let u=null;export function isChatActive(){return s;}function d(){const a5=a0j,b=u?h:-0x1986+0x3*-0x35f+0x1*0x372b,j=r,k=Math[a5(0x27c)](Math[a5(0x1e5)](j/b*(-0x551+-0x1*0x22d+0x7e2)),-0xb6f*0x3+0x398*-0x8+0x3f71),p=Math[a5(0x1e5)](k/(0xb9*0x17+0x1619+-0x132a*0x2)*(0x18d4+-0x3d9+0x14e7*-0x1)),q=-0x1ec6+0x1017*0x1+0xec3-p,v=k>0xe*-0x139+-0x2*0xfb6+0x30da?a0p['red']:k>-0x1*-0x190f+-0x23e6*-0x1+-0x3cc3?a0p[a5(0x23e)]:a0p[a5(0x22d)],w=u?a5(0x203):a5(0x21e);console[a5(0x1dc)](a0p[a5(0x22b)]('\x20\x20'+w+':\x20')+v('█'[a5(0x277)](p))+a0p[a5(0x22b)]('░'[a5(0x277)](q))+a0p[a5(0x22b)]('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(p){const a6=a0j;if(!g)return a6(0x218);if(a0x('ai4ctf:\x20'+p),u)return m(p);const q=p[a6(0x281)]()[a6(0x1c2)]()[a6(0x192)](/^hint\s+([abc])$/);if(q)return function(z){const a7=a6,A=a0B('a'===z?'ai4ctfHintA':'b'===z?'ai4ctfHintB':a7(0x184)),B=a0B('a'===z?a7(0x194):'b'===z?a7(0x1c6):'ai4ctfHintCBody'),C=a7(0x195)+z[a7(0x23d)](),D='a'===z?a0p['green']:'b'===z?a0p[a7(0x23e)]:a0p['red'];console[a7(0x1dc)](),console[a7(0x1dc)](D[a7(0x21d)](a7(0x1d5)+C+'\x20\x20')+a0p[a7(0x22b)](A)),console[a7(0x1dc)]();for(const E of B[a7(0x197)]('\x0a'))''===E?console[a7(0x1dc)]():console[a7(0x1dc)](a0p[a7(0x25b)](a7(0x1ae)+E));console['log'](),'a'===z?(console[a7(0x1dc)](a0p[a7(0x22b)](a7(0x1ae)+a0B('ai4ctfHintNextA')+'\x20')+a0p[a7(0x1d9)]('hint\x20b')),console[a7(0x1dc)]()):'b'===z&&(console[a7(0x1dc)](a0p[a7(0x22b)](a7(0x1ae)+a0B(a7(0x211))+'\x20')+a0p[a7(0x1d9)](a7(0x1dd))),console[a7(0x1dc)]());}(q[-0x1e0+-0x1745+-0x1926*-0x1]),a6(0x1ea);const v=p[a6(0x192)](/^submit\s+(.+)/i);if(v){if(a6(0x1bf)===v[-0x44*-0x46+-0x6ad+-0x5f5*0x2][a6(0x281)]()){console[a6(0x1dc)](),console[a6(0x1dc)](a0p['green']['bold'](a6(0x1cf))),console['log'](a0p['green'][a6(0x21d)]('\x20\x20'+a0B('ai4ctfCorrectFlag'))),console[a6(0x1dc)](a0p[a6(0x22d)]['bold']('\x20\x20════════════════════════════════════')),console[a6(0x1dc)](),console[a6(0x1dc)](a0p[a6(0x25b)]('\x20\x20'+a0B(a6(0x1bc)))),console[a6(0x1dc)](a0p[a6(0x22b)]('\x20\x20'+a0B('ai4ctfWouldEarn'))),console[a6(0x1dc)](),d(),s=!(0x9a2*-0x4+0x1b0d+0xf5*0xc),g=null,fetch(a6(0x25c),{'method':a6(0x22c),'headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'type':a6(0x1b3),'solved':!(-0x492*-0x7+0xbf+-0x20bd),'tokensUsed':r,'timestamp':new Date()[a6(0x221)]()}),'signal':AbortSignal[a6(0x240)](-0x1b7c+-0x155f*-0x1+0x19a5)})['catch'](()=>{}),await i(0x19*-0x15+-0x1d86+-0x256f*-0x1),console[a6(0x1dc)](),console['log'](a0p[a6(0x1d9)](a6(0x224))),console[a6(0x1dc)](a0p[a6(0x21d)]['white']('\x20\x20'+a0B(a6(0x185)))),console[a6(0x1dc)](a0p['cyan'](a6(0x224))),console[a6(0x1dc)]();const z=a0B(a6(0x1f1)),A=a0B(a6(0x283));console['log'](a0p[a6(0x25b)](a6(0x1f7)+z+'\x20')+a0p[a6(0x22b)](A[a6(0x197)]('\x0a')[0x1*0x1013+-0x1*0x246d+-0xa2d*-0x2]||''));for(const E of A[a6(0x197)]('\x0a')[a6(0x1b0)](0x1135+0x1dac+-0x2ee0*0x1))E[a6(0x281)]()&&console[a6(0x1dc)](a0p['gray']('\x20\x20\x20\x20\x20\x20\x20'+E[a6(0x1f5)](/\{thinking\}/g,'thinking')));console[a6(0x1dc)](),console[a6(0x1dc)](a0p['white']('\x20\x20\x20\x202.\x20'+a0B(a6(0x202))+'\x20')+a0p['gray'](a0B(a6(0x209)))),console[a6(0x1dc)](),console['log'](a0p[a6(0x1d9)](a6(0x1b4))),console['log'](),await i(0x13e9+0x1786+0x33d*-0xb),console['log'](a0p[a6(0x1d9)](a6(0x224))),console[a6(0x1dc)](a0p[a6(0x21d)]['white']('\x20\x20'+a0B(a6(0x1db)))),console[a6(0x1dc)](a0p[a6(0x1d9)](a6(0x224))),console['log'](),console[a6(0x1dc)](a0p[a6(0x23e)](a6(0x259))+a0p[a6(0x25b)](a0B(a6(0x226))[a6(0x1cd)](0x79a+0x6*-0x397+0xe0a))+a0p[a6(0x22b)](a0B(a6(0x214)))),console['log'](a0p[a6(0x23e)]('\x20\x20\x20\x20\x20\x20\x20hint\x20b\x20\x20\x20')+a0p['white'](a0B(a6(0x22a))[a6(0x1cd)](0xa12+0x2ba*-0x5+-0x1*-0x3aa))+a0p['gray'](a0B(a6(0x25f)))),console[a6(0x1dc)](a0p['yellow']('\x20\x20\x20\x20\x20\x20\x20hint\x20c\x20\x20\x20')+a0p[a6(0x25b)](a0B('ai4ctfWrapQuotaC')['padEnd'](0x10d0+0x1f1+-0x3bb*0x5))+a0p[a6(0x22b)](a0B(a6(0x26c)))),console[a6(0x1dc)]();for(const F of a0B(a6(0x26b))[a6(0x197)]('\x0a'))console[a6(0x1dc)](a0p[a6(0x22b)](a6(0x1ae)+F));console[a6(0x1dc)](),await i(0xea9+0x49e+-0x1*0xb77),console[a6(0x1dc)](a0p[a6(0x1d9)]('\x20\x20─────────────────────────────────────────────')),console[a6(0x1dc)](a0p['bold'][a6(0x25b)]('\x20\x20'+a0B(a6(0x1be))+'\x20')+a0p[a6(0x1de)][a6(0x21d)](a6(0x181))+a0p['white'](a6(0x20c)+a0B(a6(0x216)))),console['log'](a0p['cyan'](a6(0x224))),console[a6(0x1dc)]();const B=a0B('ai4ctfWrapNextBody'),C=a0B(a6(0x27f)),D=B[a6(0x197)]('\x0a');if(D[-0xa78+-0x10d3+0x1b4b]){const [G,H]=D[0x1a58*0x1+-0x6*0x112+-0x13ec][a6(0x197)](a6(0x275));console[a6(0x1dc)](a0p['white'](a6(0x1ae)+(G||''))+a0p[a6(0x21d)][a6(0x25b)](C)+a0p[a6(0x25b)](H||''));}for(const I of D[a6(0x1b0)](0x1407+-0x4fd+0x1*-0xf09))I[a6(0x281)]()&&console['log'](a0p[a6(0x25b)]('\x20\x20\x20\x20'+I));return console[a6(0x1dc)](),console[a6(0x1dc)](a0p[a6(0x22b)](a6(0x1ae)+a0B(a6(0x276))+'\x20')+a0p[a6(0x21d)][a6(0x1de)](a6(0x181))),console['log'](),'exit';}return console['log'](),console[a6(0x1dc)](a0p[a6(0x1de)]('\x20\x20'+a0B(a6(0x19f)))),console[a6(0x1dc)](a0p['gray']('\x20\x20'+a0B(a6(0x208)))),console[a6(0x1dc)](),a6(0x1ea);}if(p[a6(0x1d1)]('!')){const J=p['slice'](0xeac+-0x15b*0xd+-0x36*-0xe)[a6(0x281)]();if(!J)return'continue';try{const K={};K['encoding']=a6(0x1a9),K[a6(0x240)]=0x2710;const {execSync:L}=await import('node:child_process'),M=L(J,K)[a6(0x281)]();console['log'](),console[a6(0x1dc)](a0p[a6(0x22b)](a6(0x1f0))+a0p[a6(0x25b)](J)),console['log'](a0p[a6(0x25b)]('\x20\x20'+M[a6(0x197)]('\x0a')[a6(0x280)]('\x0a\x20\x20'))),console[a6(0x1dc)](),console['log'](a0p[a6(0x22b)]('\x20\x20'+a0B('ai4ctfFoundFlag'))),console[a6(0x1dc)]();}catch(N){console['log'](),console['log'](a0p[a6(0x1de)]('\x20\x20Error:\x20'+(N['message']?.[a6(0x197)]('\x0a')[-0x430*0x3+0x1d54+-0x10c4]||a6(0x1e1)))),console[a6(0x1dc)]();}return'continue';}const w={};w[a6(0x25a)]=a6(0x191);if(a6(0x218)===p||'back'===p||a6(0x254)===p||a6(0x1f3)===p)return s=!(-0x2080+-0x216c+0x41ed),g=null,fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':a6(0x22c),'headers':w,'body':JSON['stringify']({'type':a6(0x1b3),'tokensUsed':r,'timestamp':new Date()[a6(0x221)]()}),'signal':AbortSignal[a6(0x240)](0x108*-0x1c+-0x13*0x191+0x4e2b)})['catch'](()=>{}),console[a6(0x1dc)](),console[a6(0x1dc)](a0p[a6(0x22b)](a6(0x264))),console[a6(0x1dc)](a0p[a6(0x25b)]('\x20\x20'+a0B('ai4ctfReport'))),console[a6(0x1dc)](a0p['gray']('\x20\x20'+a0B('ai4ctfTokens')+':\x20'+r+'/5000')),console[a6(0x1dc)](a0p[a6(0x22b)]('\x20\x20'+a0B(a6(0x19c))+':\x20Google\x20Gemma\x204\x20(gemma-4-31b-it)')),console[a6(0x1dc)](a0p[a6(0x22b)](a6(0x264))),console[a6(0x1dc)](),console['log'](a0p[a6(0x1d9)](a6(0x224))),console[a6(0x1dc)](a0p[a6(0x25b)]('\x20\x20'+a0B(a6(0x20a))+'\x20')+a0p[a6(0x21d)]['red'](a6(0x181))+a0p[a6(0x25b)]('\x20—\x20'+a0B(a6(0x1c0)))),console[a6(0x1dc)](a0p['gray']('\x20\x20'+a0B('ai4ctfExitNextBody'))),console[a6(0x1dc)](a0p[a6(0x1d9)]('\x20\x20─────────────────────────────────────────────')),console[a6(0x1dc)](),console[a6(0x1dc)](a0p[a6(0x21d)][a6(0x1de)]('\x20\x20\x20\x20\x20ctf4ai')+a0p['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B(a6(0x1ab)))),console[a6(0x1dc)](a0p['white'](a6(0x27a))+a0p['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0B(a6(0x227)))),console[a6(0x1dc)](),a6(0x218);const x={};x[a6(0x25a)]=a6(0x191);if(!y&&r>=0x21a1*0x1+-0xf5b+0x142)return y=!(-0x2b8+0x2571+-0x1*0x22b9),fetch(a6(0x25c),{'method':a6(0x22c),'headers':x,'body':JSON[a6(0x273)]({'type':'ai4ctf','solved':!(-0x1731*-0x1+0x1f7d+-0x1*0x36ad),'tokensUsed':r,'timestamp':new Date()[a6(0x221)]()}),'signal':AbortSignal[a6(0x240)](0x4*-0x88c+0x1*0xcb9+0x28ff*0x1)})['catch'](()=>{}),console[a6(0x1dc)](),console['log'](a0p['yellow']('\x20\x20'+a0B(a6(0x196)))),d(),(function(){const a8=a6;console[a8(0x1dc)](),console[a8(0x1dc)](a0p[a8(0x23e)](a8(0x224))),console[a8(0x1dc)](a0p['bold'][a8(0x23e)]('\x20\x20'+a0B(a8(0x18b)))),console[a8(0x1dc)](a0p['yellow'](a8(0x224))),console[a8(0x1dc)]();for(const O of a0B(a8(0x1ff))[a8(0x197)]('\x0a'))''===O?console[a8(0x1dc)]():console[a8(0x1dc)](a0p['white'](a8(0x1ae)+O));console['log'](),console[a8(0x1dc)](a0p['cyan'](a8(0x204))),console[a8(0x1dc)](),console['log'](a0p[a8(0x25b)](a8(0x1ae)+a0B('ai4ctfRevealSeeFlag'))),console['log'](),console[a8(0x1dc)](a0p['green'](a8(0x1cc))),console[a8(0x1dc)](),console[a8(0x1dc)](a0p[a8(0x25b)]('\x20\x20\x20\x20'+a0B('ai4ctfRevealThenSubmit'))),console[a8(0x1dc)](),console['log'](a0p[a8(0x1d9)](a8(0x267))),console['log'](),console[a8(0x1dc)](a0p[a8(0x22b)]('\x20\x20\x20\x20'+a0B(a8(0x271)))),console[a8(0x1dc)]();}()),a6(0x1ea);if(y)return console['log'](),console[a6(0x1dc)](a0p['yellow']('\x20\x20'+a0B(a6(0x21b)))),console[a6(0x1dc)](a0p[a6(0x22b)]('\x20\x20'+a0B(a6(0x217))+'\x20')+a0p[a6(0x1d9)](a6(0x213))),console[a6(0x1dc)](a0p['gray']('\x20\x20'+a0B(a6(0x1e8))+'\x20')+a0p[a6(0x1d9)](a6(0x1c1))),console[a6(0x1dc)](),a6(0x1ea);console['log'](a0p[a6(0x22b)]('\x20\x20'+a0B(a6(0x1fc))));try{const O=await g['sendMessage'](p);process[a6(0x1fb)]['write'](a6(0x1fd)),r+=O['tokensUsed'],a0v(O[a6(0x228)]),console[a6(0x1dc)](),a0z(O['text']),d(),console['log']();}catch(P){process['stdout'][a6(0x1a6)](a6(0x1fd)),a0A(a6(0x245)+P['message']),console[a6(0x1dc)]();}return'continue';}const f=new Set();async function m(k){const a9=a0j;if(!u||!g)return a9(0x218);const p=k[a9(0x281)](),q=p[a9(0x1c2)](),v=(Date[a9(0x26d)]()-u[a9(0x285)])/(-0x59b9+0xee1a+0x25*0x253);if(!u[a9(0x20f)]&&!u[a9(0x1d8)]&&u[a9(0x18a)][a9(0x247)]>=0x571*-0x3+0x2323+-0x12ce&&v>=-0x476+-0x115*-0x17+-0x1468&&(u['nudgeShown']=!(0x205d+-0x2117+0xba),console[a9(0x1dc)](),console['log'](a0p[a9(0x23e)](a9(0x284))+a0p[a9(0x21d)][a9(0x23e)](a9(0x248))),console[a9(0x1dc)](a0p[a9(0x22b)](a9(0x251))),console['log']()),/^ICOA\{[^}]+\}$/i[a9(0x1b9)](p))return console[a9(0x1dc)](),console[a9(0x1dc)](a0p[a9(0x22b)](a9(0x20e))+a0p[a9(0x25b)]('submit\x20'+p)),m(a9(0x24b)+p);const x=q[a9(0x192)](/^hint\s+([abc])$/);if(x){const A=x[0x2697+0x1*0x60a+-0x198*0x1c][a9(0x23d)](),B=u[a9(0x1b1)][a9(0x231)],C=B?.[A],D='A'===A?a0p[a9(0x22d)]:'B'===A?a0p[a9(0x23e)]:a0p[a9(0x1de)];if(console[a9(0x1dc)](),console[a9(0x1dc)](D[a9(0x21d)](a9(0x246)+A)),console['log'](),C){for(const E of String(C)[a9(0x197)]('\x0a'))console[a9(0x1dc)](a0p[a9(0x25b)](a9(0x1ae)+E));}else console['log'](a0p['gray'](a9(0x26e)));return console[a9(0x1dc)](),'A'===A?console['log'](a0p['gray'](a9(0x25e))+a0p[a9(0x1d9)](a9(0x1e9))):'B'===A?console[a9(0x1dc)](a0p[a9(0x22b)](a9(0x23c))+a0p['cyan'](a9(0x1dd))):'C'===A&&console[a9(0x1dc)](a0p[a9(0x22b)](a9(0x1ae)+a0B(a9(0x1a3))+'\x20')+a0p['bold'][a9(0x22d)](a9(0x248))),console[a9(0x1dc)](),a9(0x1ea);}const z=p[a9(0x192)](/^submit\s+(.+)/i);if(z){const F=z[0x1de2+-0x24*0xec+0x7*0x79][a9(0x281)]();if(/^[A-Da-d]$/[a9(0x1b9)](F))return console['log'](),console[a9(0x1dc)](a0p[a9(0x23e)](a9(0x1ec)+F+a9(0x1e0))),console[a9(0x1dc)](a0p[a9(0x22b)]('\x20\x20Flag\x20format:\x20')+a0p[a9(0x22d)]('ICOA{your_flag}')+a0p[a9(0x22b)]('.\x20Try\x20again\x20inside\x20this\x20chat.')),console[a9(0x1dc)](),a9(0x1ea);const {getExamState:G,saveExamState:H}=await import(a9(0x27b)),I=G();if(!I)return a9(0x218);if(!I[a9(0x1d4)][a9(0x255)](L=>L[a9(0x223)]===u[a9(0x1ad)]))return console[a9(0x1dc)](a0p['red'](a9(0x1b6)+u[a9(0x1ad)]+a9(0x1f6))),'continue';const J=I['answers'][u[a9(0x1ad)]];I['interactions']||(I[a9(0x19b)]=[]),I[a9(0x19b)][a9(0x186)]({'ts':new Date()['toISOString'](),'q':u[a9(0x1ad)],'type':J?'answer_changed':'answer_submitted','input':F,'result':a9(0x270)}),I['answers'][u['qNum']]=F;const K=u[a9(0x1ad)]+(0x1988+-0x699*0x2+-0xc55);return I[a9(0x26f)]=K<=-0x4bd*-0x5+0x37+-0x17c2?K:u[a9(0x1ad)],H(I),console[a9(0x1dc)](),J?(console[a9(0x1dc)](a0p[a9(0x22d)]('\x20\x20✓\x20Q'+u[a9(0x1ad)]+a9(0x18d))+a0p[a9(0x23e)](F)),console['log'](a0p[a9(0x22b)]('\x20\x20\x20\x20Previous:\x20'+J))):console['log'](a0p[a9(0x22d)][a9(0x21d)](a9(0x187)+u[a9(0x1ad)]+'\x20recorded:\x20'+F)),console['log'](a0p[a9(0x22b)](a9(0x235))),console[a9(0x1dc)](),console[a9(0x1dc)](a0p['gray']('\x20\x20')+a0p[a9(0x25b)](a9(0x182))+a0p[a9(0x22b)](a9(0x1ee))+a0p[a9(0x25b)](a9(0x218))+a0p[a9(0x22b)]('\x20to\x20move\x20on')),K<=0x5b5+0x77c+-0xd0b?console[a9(0x1dc)](a0p[a9(0x22b)]('\x20\x20After\x20exit:\x20')+a0p[a9(0x1d9)]('ai4ctf')+a0p[a9(0x22b)]('\x20will\x20open\x20Q'+K)):console[a9(0x1dc)](a0p['gray']('\x20\x20After\x20exit:\x20AI4CTF\x20section\x20complete.\x20Next:\x20')+a0p['red'](a9(0x181))+a0p[a9(0x22b)](a9(0x21f))),console[a9(0x1dc)](),'continue';}if(k[a9(0x1d1)]('!')){const L=k[a9(0x1b0)](-0x26eb+-0x1d1*-0x9+0x1693*0x1)[a9(0x281)]();if(!L)return'continue';try{const M={};M[a9(0x20d)]=a9(0x1a9),M[a9(0x240)]=0x2710;const {execSync:N}=await import('node:child_process'),O=N(L,M)['trim']();console[a9(0x1dc)](),console[a9(0x1dc)](a0p[a9(0x22b)](a9(0x1f0))+a0p[a9(0x25b)](L)),console[a9(0x1dc)](a0p[a9(0x25b)]('\x20\x20'+O['split']('\x0a')[a9(0x280)](a9(0x237)))),console[a9(0x1dc)]();}catch(P){console[a9(0x1dc)](),console[a9(0x1dc)](a0p[a9(0x1de)](a9(0x1c9)+(P[a9(0x220)]?.[a9(0x197)]('\x0a')[-0x1d83+0x165d+0x726]||a9(0x1e1)))),console[a9(0x1dc)]();}return a9(0x1ea);}if('exit'===q||a9(0x201)===q||a9(0x254)===q){const Q=u[a9(0x1ad)],{getExamState:R}=await import(a9(0x27b)),S=R(),T=S&&null!=S['answers'][Q],U=S?.[a9(0x26f)]||Q;return s=!(-0x1407+-0x1*0xe95+-0x229d*-0x1),g=null,u=null,f[a9(0x265)](),console[a9(0x1dc)](),console[a9(0x1dc)](a0p['gray'](a9(0x241)+Q+'.')),T&&U>Q&&U<=0xd*-0x1c8+0x3e6+0x1368?console['log'](a0p['white']('\x20\x20Next:\x20')+a0p[a9(0x21d)][a9(0x22d)]('Q'+U)+a0p[a9(0x22b)]('\x20—\x20type\x20')+a0p['cyan']('ai4ctf')+a0p[a9(0x22b)](a9(0x1fa))):T&&Q>=0x270e+-0x437*0x1+-0x22b1?console[a9(0x1dc)](a0p[a9(0x25b)](a9(0x1cb))+a0p[a9(0x21d)][a9(0x1de)](a9(0x181))+a0p[a9(0x22b)]('\x20for\x20Q39')):console[a9(0x1dc)](a0p['gray'](a9(0x219))+a0p[a9(0x25b)](a9(0x1d0)+Q)+a0p['gray'](a9(0x249))+a0p[a9(0x25b)]('ai4ctf')),console[a9(0x1dc)](),a9(0x218);}if(y)return console[a9(0x1dc)](),console['log'](a0p[a9(0x23e)](a9(0x1a4))),console[a9(0x1dc)](a0p[a9(0x22b)](a9(0x261))+a0p[a9(0x25b)](a9(0x1c4))+a0p['gray'](a9(0x1a5))+a0p[a9(0x25b)](a9(0x253))+a0p[a9(0x22b)]('\x20·\x20')+a0p[a9(0x25b)]('exit')),console['log'](),a9(0x1ea);if(r>=h)return y=!(0x10cf*-0x1+0x1*-0x13cd+0x249c),console['log'](),console[a9(0x1dc)](a0p[a9(0x1de)]['bold'](a9(0x1b7))),console['log'](a0p[a9(0x22b)](a9(0x274))+a0p['white'](a9(0x1c4))+a0p[a9(0x22b)](a9(0x1a5))+a0p[a9(0x25b)](a9(0x253))+a0p['gray'](a9(0x1a5))+a0p[a9(0x25b)](a9(0x218))),console[a9(0x1dc)](),a9(0x1ea);console[a9(0x1dc)](a0p[a9(0x22b)](a9(0x262)));try{const V=await g[a9(0x1df)](k);process['stdout'][a9(0x1a6)](a9(0x1fd)),r+=V[a9(0x228)];const {getRealExamState:W,saveExamState:X}=await import(a9(0x27b)),Y=W(),Z={};Z['ai4ctf']=0x0,Z['ctf4ai']=0x0,(Y&&(Y[a9(0x233)]||(Y[a9(0x233)]=Z),Y[a9(0x233)][a9(0x1b3)]=r,X(Y)),console[a9(0x1dc)](),a0z(V[a9(0x1a7)]),d(),function(a0,a1,a2){const aa=a9,a3=a0/a1*(0x12c3+-0x6*-0x383+-0x2771);a3>=-0x15d0+-0x1d8a+0x1*0x33b9&&!a2['has']('95')?(console[aa(0x1dc)](a0p[aa(0x1de)][aa(0x21d)](aa(0x244)+Math[aa(0x1e5)](a3)+'%\x20of\x20section\x20AI\x20budget\x20used\x20—\x20only\x20~'+(a1-a0)+aa(0x1d7))),a2[aa(0x256)]('95')):a3>=-0xbaf+-0xa1b+0x161a&&!a2[aa(0x23b)]('80')?(console[aa(0x1dc)](a0p[aa(0x23e)]('\x20\x20⚠\x2080%\x20of\x20section\x20AI\x20budget\x20used.')),a2[aa(0x256)]('80')):a3>=-0x1a86+-0x2001+-0x1*-0x3ab9&&!a2[aa(0x23b)]('50')&&(console[aa(0x1dc)](a0p[aa(0x22b)](aa(0x1ba))),a2['add']('50'));}(r,h,f),console[a9(0x1dc)]());}catch(a0){process[a9(0x1fb)][a9(0x1a6)](a9(0x1fd)),a0A('AI\x20error:\x20'+a0[a9(0x220)]),console['log']();}return a9(0x1ea);}export function registerAi4ctfCommand(b){const ab=a0j;b[ab(0x193)]('ai4ctf')[ab(0x1bb)](ab(0x1a2))['action'](async()=>{const ac=ab;a0x(ac(0x1b3));const {getRealExamState:j}=await import(ac(0x27b)),k=j(),p=k?.[ac(0x1d4)]['some'](x=>x[ac(0x223)]>=-0x33*0xad+0x1d55+-0x1*-0x541&&x['number']<=0x1*-0x2511+0x5af*-0x3+0x3644);if(k&&p){const x=k[ac(0x26f)]||0x1*0x19ed+-0x1699+-0x353*0x1;if(x<0x2*0x1171+-0x409*0x1+0x8a*-0x39||x>-0x1f74*-0x1+0xc*-0x1a2+-0x1*0xbb6)return console['log'](),console[ac(0x1dc)](a0p[ac(0x23e)](ac(0x1b5))),console[ac(0x1dc)](a0p['gray'](ac(0x190)+x+ac(0x23f))),console[ac(0x1dc)](a0p[ac(0x22b)](ac(0x1e7))+a0p[ac(0x21d)][ac(0x1d9)](ac(0x1e4))),void console[ac(0x1dc)]();const z=k['questions'][ac(0x255)](A=>A[ac(0x223)]===x);return z?void await async function(A,B){const ad=ac,{getRealExamState:C,refetchQuestionDataIfStale:D,materializeAttachedData:E}=await import(ad(0x27b));await D();const F=C();if(!F)return!(-0x1e45+-0x2fb*0x1+-0x1*-0x2141);const G=F[ad(0x1d4)][ad(0x255)](J=>J[ad(0x223)]===A);G&&(B=G),E(A,B?.[ad(0x269)]);const H=F['aiUsage']?.[ad(0x1b3)]??-0x329*0x5+0x1*0x383+0x16*0x8f;if(H>=h)return console[ad(0x1dc)](),console[ad(0x1dc)](a0p[ad(0x23e)](ad(0x1ef))),console[ad(0x1dc)](a0p[ad(0x22b)](ad(0x236))+a0p[ad(0x25b)](ad(0x268)+A+ad(0x282))),console[ad(0x1dc)](),!(0xa*0x21f+-0x1dc2+-0x1*-0x88d);try{g=await a0q(void(-0x660+0x3*-0x54f+-0x21*-0xad),function(J,K){const ae=ad,L=J[ae(0x1bb)]||J['text']||'',M=J[ae(0x269)]?ae(0x1e6)+K+ae(0x183)+J['attachedData']:'';return ae(0x257)+K+',\x20'+J[ae(0x252)]+',\x20'+(J[ae(0x230)]||0x24b*0xd+-0xb*-0x263+-0x957*0x6)+ae(0x24d)+L+M+'\x0a\x0aYOUR\x20RULES:\x0a-\x20You\x20MAY\x20explain\x20concepts,\x20describe\x20approaches,\x20and\x20help\x20the\x20contestant\x20reason\x20through\x20the\x20problem.\x0a-\x20You\x20MAY\x20discuss\x20the\x20technology\x20involved\x20(AES,\x20pwntools,\x20Python\x20struct,\x20HTTP,\x20etc.).\x0a-\x20You\x20MAY\x20help\x20debug\x20Python\x20code\x20the\x20contestant\x20writes.\x0a-\x20You\x20MUST\x20NOT\x20reveal\x20the\x20flag\x20directly.\x0a-\x20You\x20MUST\x20NOT\x20output\x20any\x20string\x20matching\x20ICOA{...}\x20or\x20icoa{...}.\x0a-\x20You\x20MUST\x20NOT\x20tell\x20the\x20contestant\x20the\x20exact\x20answer\x20to\x20this\x20question.\x0a-\x20You\x20MAY\x20suggest\x20which\x20tool\x20/\x20library\x20/\x20technique\x20to\x20use.\x0a-\x20When\x20suggesting\x20shell\x20/\x20python\x20snippets\x20that\x20need\x20the\x20attached\x20data,\x20refer\x20to\x20the\x20file\x20path\x20challenges/q'+K+ae(0x18f);}(B,A));}catch(J){return a0A(J['message']),!(-0x2e1*0xc+-0x1b68*0x1+0x3df5);}s=!(0x1*0x45e+-0xd4*0xd+0x666),r=H,y=!(0xd99*0x2+-0x189*-0x15+-0x3b6e),u={'qNum':A,'question':B,'usageField':ad(0x1b3),'enteredAt':Date[ad(0x26d)](),'hintsUsed':new Set(),'submitAttempted':!(0x2541+-0x12f*0x4+0x2084*-0x1),'nudgeShown':!(-0x277*0x1+-0x137e+-0x6*-0x3a9)};const I=F['answers']?.[A];return function(K,L,M){const af=ad,N=a0w()['geminiModel']||af(0x1f9),O=r>-0x15e7+0xafd+0xaea;console[af(0x1dc)](),console[af(0x1dc)](a0p[af(0x22d)][af(0x21d)](af(0x225)+L+':\x20'+K[af(0x252)]+af(0x1ce))),O&&console[af(0x1dc)](a0p[af(0x22b)](af(0x27d))),M&&console[af(0x1dc)](a0p['gray'](af(0x207))+a0p[af(0x23e)](M)+a0p[af(0x22b)](af(0x238))),console['log'](),console[af(0x1dc)](a0p['cyan'](af(0x1b8))),console['log'](a0p[af(0x1d9)]('\x20\x20│\x20')+a0p[af(0x21d)][af(0x25b)]('Q'+L+'\x20\x20['+K['category']+af(0x1f2)+(K['points']||0x525*0x3+-0xd1e+-0x24b)+af(0x272))),console[af(0x1dc)](a0p[af(0x1d9)](af(0x19a)));for(const P of String(K[af(0x1a7)])[af(0x197)]('\x0a')){const Q=P['length']>0x16ae+0xe1a+-0x248c?P[af(0x1b0)](-0x2656+0x1db9+0x7*0x13b,0x1b*-0x77+0x2*0x12b3+-0x18a0)+'...':P;console['log'](a0p['cyan']('\x20\x20│\x20')+a0p[af(0x25b)](Q));}console[af(0x1dc)](a0p[af(0x1d9)](af(0x19a))),console[af(0x1dc)](a0p['cyan'](af(0x1a0))+a0p[af(0x22b)](af(0x1bd))+a0p[af(0x25b)]('exam\x20q\x20'+L)),console['log'](a0p[af(0x1d9)](af(0x1a0))+a0p[af(0x22b)](af(0x1eb))),console[af(0x1dc)](a0p['cyan'](af(0x20b))),console[af(0x1dc)](),console[af(0x1dc)](a0p[af(0x21d)][af(0x25b)](af(0x206))),console[af(0x1dc)](),console[af(0x1dc)](a0p['yellow'](af(0x263))+a0p['gray'](af(0x1ca))),console[af(0x1dc)](a0p[af(0x23e)](af(0x21a))+a0p['gray'](af(0x1e3))),console[af(0x1dc)](a0p['yellow'](af(0x25d))+a0p['gray'](af(0x24c))),console['log'](a0p[af(0x21d)][af(0x22d)](af(0x22f))+a0p[af(0x22b)](af(0x232))),console[af(0x1dc)](a0p[af(0x25b)](af(0x1e2))+a0p['gray'](af(0x1ed))),console['log'](a0p['gray']('\x20\x20\x20\x20Just\x20type\x20freely\x20to\x20chat\x20with\x20the\x20AI\x20teammate.')),console[af(0x1dc)](a0p[af(0x22b)](af(0x27e))+a0p[af(0x25b)]('\x22how\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console[af(0x1dc)](),console['log'](a0p[af(0x22b)](af(0x18c))+a0p[af(0x22b)](af(0x234))),console[af(0x1dc)](),d(),console[af(0x1dc)](a0p[af(0x22b)](af(0x212)+N+')')),console['log']();}(B,A,I),!(0x345+0x8ba*-0x3+0xff*0x17);}(x,z):void a0A('Q'+x+ac(0x1aa)+x);}const q={};q[ac(0x215)]='Hidden\x20Message',q['category']='Cryptography';const v=a0w()[ac(0x222)]||ac(0x1f9),w=q;try{g=await a0q(w);}catch(A){return void a0A(A[ac(0x220)]);}s=!(0x1571+-0x266*-0x1+-0x167*0x11),r=-0xbc7+-0x4*0x5ae+-0x1*-0x227f,y=!(-0x7c8+0x2*0x874+-0x91f),console[ac(0x1dc)](),console[ac(0x1dc)](a0p[ac(0x22d)]['bold'](ac(0x1c8)+a0B(ac(0x189))+ac(0x1ce))),console[ac(0x1dc)](),console['log'](a0p['white']('\x20\x20'+a0B(ac(0x1ac)))),console[ac(0x1dc)](),console[ac(0x1dc)](a0p[ac(0x1d9)](ac(0x1b8))),console[ac(0x1dc)](a0p[ac(0x1d9)](ac(0x1a0))+a0p['bold'][ac(0x25b)](a0B('ai4ctfChallenge'))),console[ac(0x1dc)](a0p[ac(0x1d9)](ac(0x19a))),console[ac(0x1dc)](a0p[ac(0x1d9)]('\x20\x20│\x20')+a0p[ac(0x25b)](a0B(ac(0x198)))),console[ac(0x1dc)](a0p[ac(0x1d9)](ac(0x1a0))+a0p[ac(0x22d)]('aWNvYXt3M2xjMG1lXzJfYWk0Y3RmfQ==')),console[ac(0x1dc)](a0p[ac(0x1d9)]('\x20\x20│')),console['log'](a0p[ac(0x1d9)]('\x20\x20│\x20')+a0p[ac(0x25b)](a0B(ac(0x21c)))),console[ac(0x1dc)](a0p[ac(0x1d9)](ac(0x1a0))+a0p['gray'](ac(0x1c3))),console['log'](a0p[ac(0x1d9)](ac(0x20b))),console[ac(0x1dc)](),console[ac(0x1dc)](a0p['white']('\x20\x20'+a0B(ac(0x1d2)))),console[ac(0x1dc)](),console[ac(0x1dc)](a0p[ac(0x23e)](ac(0x263))+a0p['gray'](ac(0x1ae)+a0B(ac(0x22e)))),console[ac(0x1dc)](a0p['gray'](ac(0x1c5)+a0B(ac(0x26a)))),console['log'](a0p[ac(0x23e)](ac(0x21a))+a0p[ac(0x22b)](ac(0x1ae)+a0B(ac(0x210)))),console['log'](a0p[ac(0x22b)](ac(0x1c5)+a0B(ac(0x24e)))),console[ac(0x1dc)](a0p[ac(0x23e)](ac(0x25d))+a0p[ac(0x22b)]('\x20\x20\x20\x20'+a0B(ac(0x184)))),console[ac(0x1dc)](a0p[ac(0x22b)](ac(0x1c5)+a0B(ac(0x19e)))),console['log'](),console[ac(0x1dc)](a0p['gray'](ac(0x264))),console[ac(0x1dc)](a0p['bold'][ac(0x25b)]('\x20\x20'+a0B(ac(0x19d)))),console[ac(0x1dc)]('\x20\x20\x20\x20'+a0p['cyan'](ac(0x1b2))+a0p[ac(0x22b)]('\x20\x20\x20→\x20'+a0B('ai4ctfHintNudge'))),console['log'](ac(0x1ae)+a0p[ac(0x1d9)]('hint\x20b')+a0p['gray']('\x20\x20\x20→\x20'+a0B(ac(0x200)))),console[ac(0x1dc)]('\x20\x20\x20\x20'+a0p[ac(0x1d9)](ac(0x1dd))+a0p['gray'](ac(0x278)+a0B(ac(0x266)))),console[ac(0x1dc)](a0p['gray'](ac(0x1ae)+a0B(ac(0x1fe)))),console[ac(0x1dc)](),console['log'](a0p['white']('\x20\x20'+a0B(ac(0x1f8)))),console[ac(0x1dc)](a0p['gray']('\x20\x20'+a0B('ai4ctfOrChatExample')+'\x20')+a0p[ac(0x25b)](ac(0x23a))),console['log'](),console[ac(0x1dc)](a0p[ac(0x23e)]('\x20\x20'+a0B(ac(0x1af)))),console[ac(0x1dc)](a0p[ac(0x25b)]('\x20\x20\x20\x20hint\x20a\x20/\x20b\x20/\x20c\x20\x20')+a0p['gray'](a0B(ac(0x1da)))),console['log'](a0p[ac(0x25b)](ac(0x1f4))+a0p['gray'](a0B(ac(0x250)))),console[ac(0x1dc)](a0p['white'](ac(0x260))+a0p[ac(0x22b)](a0B(ac(0x1c7)))),console['log'](a0p[ac(0x22b)](ac(0x27e))+a0p['white'](ac(0x243))),console[ac(0x1dc)](a0p[ac(0x22b)](ac(0x188)+a0B(ac(0x242)))),console[ac(0x1dc)](),d(),console[ac(0x1dc)](a0p[ac(0x22b)]('\x20\x20'+a0B(ac(0x19c))+ac(0x1d6)+v+')')),console[ac(0x1dc)](a0p[ac(0x22b)]('\x20\x20'+a0B(ac(0x1d3)))),console['log']();});}
@@ -1 +1 @@
1
- (function(z,B){const aX=a0B,F=z();while(!![]){try{const G=-parseInt(aX(0x21c))/(-0x3cc+0x44d+-0x4*0x20)+-parseInt(aX(0x288))/(-0x6b*-0x31+-0x55*-0x61+-0x34ae)+parseInt(aX(0x214))/(0x1eea+0xd76+-0x1*0x2c5d)*(parseInt(aX(0x2d3))/(0x10*0x1b+0x183c+-0x19e8))+-parseInt(aX(0x344))/(0x122d+0x17ef+-0x2a17)+-parseInt(aX(0x15e))/(0x71e*0x2+-0x347+-0x3*0x3a5)+-parseInt(aX(0xdf))/(0x5f2*0x1+0xe92+-0x419*0x5)*(parseInt(aX(0x347))/(-0xf68+-0x1fd4+0x2f44))+parseInt(aX(0x1b6))/(0x22a8+0x990+0x1*-0x2c2f)*(parseInt(aX(0x268))/(0xe5+-0x2*-0x9ac+-0x1433));if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,0x2ea7*-0xa+0x32055+0x15cd0));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';function a0B(a,b){a=a-(-0x1995+0x38b*-0x7+0x148*0x28);const c=a0z();let d=c[a];if(a0B['tlbApq']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=-0x4*0x7a5+0x56e*-0x3+-0x2ede*-0x1,o,p,q=0x1ae*-0x15+0x238*-0x2+-0x187*-0x1a;p=i['charAt'](q++);~p&&(o=n%(-0x1*0x303+-0x1*0xbc5+-0x1*-0xecc)?o*(0x1e08+0x18f3+-0x36bb)+p:p,n++%(-0x1*0xb29+-0x254e+0x1029*0x3))?l+=String['fromCharCode'](0x2*-0x327+0x5*0x31a+-0xbf*0xb&o>>(-(-0x13d8*-0x1+0x23b7+-0x378d*0x1)*n&-0x138c+0x1aa1+-0x70f)):-0x1*-0x13af+-0x16bf+0x31*0x10){p=j['indexOf'](p);}for(let r=0x12a6+-0x1*-0x1b44+-0x2dea,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](0x1*0x1839+0x3*-0x1e5+0x2b*-0x6e))['slice'](-(-0x102d+-0x1ce*-0xa+-0x1dd));}return decodeURIComponent(m);};a0B['KLUGHo']=e,a0B['gGORbq']={},a0B['tlbApq']=!![];}const f=c[-0x1a85+-0x2*-0x12af+0xad9*-0x1],g=a+f,h=a0B['gGORbq'][g];return!h?(d=a0B['KLUGHo'](d),a0B['gGORbq'][g]=d):d=h,d;}import{logCommand as a0a8}from'../lib/logger.js';import{printSuccess as a0a9,printError as a0aa,printWarning as a0ab,printInfo as a0ac,printTable as a0ad,printHeader as a0ae,printKeyValue as a0af,createSpinner as a0ag,formatCountdown as a0ah}from'../lib/ui.js';import{t as a0ai}from'../lib/i18n.js';import{getDeviceFingerprint as a0aj}from'../lib/access.js';import{getExamSetup as a0ak,saveExamSetup as a0al,isExamSetupComplete as a0am}from'../lib/exam-setup.js';import{execSync as a0an}from'node:child_process';const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const aY=a0B,G=a0W(),H={};H['Content-Type']='application/json',fetch(aY(0x392),{'method':'POST','headers':H,'body':JSON['stringify']({'type':B,'lang':G[aY(0x10e)]||'en','timestamp':new Date()[aY(0x240)](),...F}),'signal':AbortSignal['timeout'](-0x104a+0x512*0x3+-0x149c*-0x1)})[aY(0x2cb)](()=>{});}function N(z,B){const aZ=a0B,F=Math[aZ(0x101)](z/(0x1ae*-0x15+0x238*-0x2+-0xb1*-0x3a)*(-0x1*0x303+-0x1*0xbc5+-0x1*-0xee6)),G=0x1e08+0x18f3+-0x36dd-F,H=a0L[aZ(0x150)]('█'[aZ(0x248)](F))+a0L[aZ(0x1c5)]('░'[aZ(0x248)](G)),J=String(z)[aZ(0x31a)](-0x1*0xb29+-0x254e+0x9b2*0x5)+'%';process[aZ(0x1f4)][aZ(0x120)](aZ(0x3bd)+H+'\x20'+J+'\x20\x20'+a0L['gray'](B));}function M(){const b0=a0B,z=a0W();return z[b0(0x2e9)]&&z[b0(0x167)]?new a0V(z[b0(0x2e9)],z[b0(0x167)]):(a0aa(b0(0x264)),null);}function O(){const b1=a0B,z=a0a1();z&&(new Date()<z?a0af('Time\x20Remaining',a0L['yellow'][b1(0x257)](a0ah(z))):a0af(b1(0x26e),a0L[b1(0x287)][b1(0x257)](b1(0x3c4))));}function a0z(){const bJ=['tMLJzsbVBMuU','C3rKAw4','y29YCMvJDa','icdINjmGvg9Rzw4GCMuTyxr0ywnOzwqGDg8GEw91CIbPBI1WCM9NCMvZCYbLEgfTlG','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqU','q29TCgXLDguGDgHLigrLBw8GzMLYC3qGyMvMB3jLihnLDhrPBMCGDxaU','icaGiokCKYbZyxzLza','icaGicbuAguGDg9Rzw4GAxrZzwXMigLZie5pvcbYzxzVA2vKihnLCNzLCI1ZAwrLlIbjzIb5B3vYihnLC3nPB24GAxm','C19HAtrJDgy','rMXHz2DLzcbMB3iGCMv2Awv3','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','icbjBNn0ywXSAw5Nifb5DgHVBIbWywnRywDLCYbMB3iGChjHy3rPy2fSihf1zxn0Aw9UCY4','icbTywnpuYaOsg9TzwjYzxCSihjLy29TBwvUzgvKktO','Dg9ju09tDhjPBMC','x3n1yM1PDenVBMzPCM1Lza','ihrVigfZAYbbssbMB3iGAgvSCdO','tgfVCW','icbuBYbJB250Aw51zsb0AgLZigv4yw06','icbszwfKEt8GvxnLia','C2vZC2LVBG','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqUiev4yw0Gy2XLyxjLzc4','CMvWzwf0','C2HVD25xyxjUAw5NCW','sw5KB25LC2LH','zxHHBsbZDwjTAxqGy29UzMLYBq','ChjLlxDYAxr0zw4GCgvYihf1zxn0Aw9U','D2L0Aa','tMf0Aw9UywWGC2vSzwn0Aw9Uigv4yw0','ls11C2vYic0TyNjLywSTC3LZDgvTlxbHy2THz2vZ','B3b0Aw9UCW','icbxAgf0ig5LEhq','icaGigzYB20GChDUigLTCg9YDcb4B3i','icdWN46jiefSBcbXDwvZDgLVBNmGyw5ZD2vYzwqH','icaGigv4yw0GBgLZDcbbvq','vw5SB2nRigHPzgrLBIbIB251CYbOzwXWihvZzxm','uhjLCgfYAw5Nigv4yw0Gzw52AxjVBM1LBNqUlI4','yM9Sza','zhvYyxrPB25nAw4','Dgv4Da','Aw5JB3jYzwn0sw50CM8','ihjLz2LVBNmP','khnLCNzLCI1HDxrOB3jPDgf0AxzLkq','ChvZAa','icaGicaGicHpCIbKB3DUBg9HzcbMCM9Tihb5DgHVBI5VCMCGyw5KienirunligjVDgGGiKfKzcbqExrOB24GDg8','icaGicjiB3CGzg8GssbKzwnYExb0ieffuY1dqKmGAw4GuhL0Ag9UpYi','Dg90ywXty29Yzq','icdIL48G','C3rKzxjY','AgLUDcbHic8GyIaVigm','tM90ignVBM5Ly3rLzc4GuNvUoIbQB2LUidX1CMW+','cIaG','icHLEhbSB3jLicyGzxHWzxjPBwvUDcK','icaGv2HHDcb5B3uNBgWGzg8GDg9KyxK6','nZC4nJuXmg9JrxjNEG','icaGicbfEgL0ignOyxq6icaGicaG','zgvTBY1LEgfT','D2LUmZi','CMvZDw1L','r2vYBwfUEq','vgLTzq','zxHHBuLK','icaGigv4yw0GCsaXlI4','Dg90ywW','icdIMQaGiefUigv4yw0GAxmGywXYzwfKEsbPBIbWCM9NCMvZCYbVBIb0AgLZigrLDMLJzs4','wYbDica','twfJyxu','C3vIBwL0rxHHBq','ic1TihbPCcbPBNn0ywXSic0Tzhj5lxj1BIbWAxaGmJ4Mmq','zgvZy3jPChrPB24','ic1TihbPCcbZAg93ici','CMvNzxG','icbozxH0ihn0zxa6ia','icaGicbnzxnZywDLCYdIHPiGquKGDgfYz2v0iokaLcbJCMfMDcbWCM9TChrZihrVigjYzwfRigL0CYbYDwXLCY4','l2HLBha','icaGicfWExrOB24Z','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','uMvTB3zLihjLDMLLDYbMBgfNigzYB20GysbXDwvZDgLVBG','C3bSAxq','icbxCMfWihvWigfUzcbZDwjTAxq6ia','DhjPBq','icbjq09big9MzMLJAwfSBhKGC3vWCg9YDhmGv1nmmIbVBIbxAw5KB3DZlG','zgfYD2LU','icaGidmUie9Wzw4GysborvCGug93zxjtAgvSBcb3Aw5KB3CGkfbbveGGCMvMCMvZAcKSihrOzw46','zxHHBvDHExntAgvSBa','CMvK','mZiYmtu4DLzwrfjt','icaGiokaOIbtzxj2zxiGyxv0BY1MAw5HBgLZzxmGEw91CIbHBNn3zxjZigLMihLVDsbKBYbUB3qGC3vIBwL0igjLzM9Yzsb0AguGzgvHzgXPBMu','C2v0uMf3tw9Kzq','C3rHCNq','yw5ZD2vYvgHPCW','BwfJt1m','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMv0CNK6','yNjLDW','ugvYy2vUDgfNzq','BM90ugfZC2vK','yxr0zw1WDhm','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','zxHHBsbTyxjRia','iokaLcbZzwuGzNvSBcbLCNjVCG','icaGutm54OctndaGkdiGCxvLC3rPB25Zimk3ide2ihb0CYbLywnOiokaLcbOAwDOzxn0ihzHBhvLisK','icaGihDPBMDLDcbPBNn0ywXSifb5DgHVBI5qExrOB24UmY4XmG','ihLVDsbNB3qGD3jVBMCU','y3rMngfP','uMv0CNKGB25SEsb0AguGCxvLC3rPB25ZihLVDsbNB3qGD3jVBMCGBgfZDcbKzw1Vigf0DgvTChq','icbszxzPzxCGDw5HBNn3zxjLzcbXDwvZDgLVBNm6ia','icbzB3uGy2fUig5VDYbLBNrLCIbHig5LDYb0B2TLBIb3AxrOia','AhrWtwfYAW','y2XVy2TpzMzZzxrnCW','icbzB3vYigfUC3DLCJOG','ugfZCW','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','C29YDa','qw5ZD2vYzwq6ica','BM9KztPMCW','uhjLCgfYAw5Nihf1zxn0Aw9UCY4UlG','AwnVyq','icaGicHYzwXHDgL2zsb0BYbVDgHLCIbJyxrLz29YAwvZiokaLcbUDw1LCMLJihnJB3jLCYbNBYb0BYb5B3vYigv4yw0Gy2vUDgvYkq','C3vKBYbHChqGDxbKyxrL','A2v5CW','iokCKYaGka','icbszxj1BIb3AgvUigzPEgvKoIa','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','icaGicaGicbLBNrLCIbbstrdveyGy2HHDcbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','zNjVBq','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','C3vKBYbHChqGAw5ZDgfSBcaTEsbUB2rLANmGChL0Ag9UmY1WAxaGChL0Ag9UmY12zw52','C29Tzq','ihbVAw50C10','Cgn0','lI4U','vMLLDYbXDwvZDgLVBIaOB3iGywXSihf1zxn0Aw9UCYK','BgLZDcbBy291BNrYEv0','AhrWtgfUzW','iokaLcb5B3uGy2fUBM90ignOyw5Nzsb0AgvTigfMDgvYihn1yM1PDc4','BwLZC2LUzW','BNvTyMvY','iefjnenurG','icaGigjYzxCGAw5ZDgfSBcbWExrOB25amY4XmG','icaGicbLEgfTigXPC3qGq04','DxrMltG','ihbHy2THz2vZlI4U','zMfPBa','icaGicbtB2X2zsa','CxvLC3rPB25Z','CsbBBL0','sw4GuhjVz3jLC3m6ia','icbcB251CYbOzwXWigfSCMvHzhKGDw5SB2nRzwqU','AhrWtw9YzuHLBha','Cvr1Dg9YAwfS','icaGiokgKIa','C3vIBwL0ifTJB25MAxjTqxjNxq','DgvZDa','y2f0y2G','ifSGxsaG','zw5JB2rPBMC','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbsq','BwvZC2fNzq','icbdB250Aw51zsb0AgLZigv4yw06','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl21Hy29ZlW','icbbC3nPC3rHBMnLoG','otjvthDKCuK','BgvUz3rO','iokaLca','icaG8j+AGcaGu2vJDgLVBIaYoIbbstrdveyG4OcuiefjigLZihLVDxiGDgvHBw1HDgu','z2v0uMvZDwX0','sunpqsbezw1Viev4yw0G4OcuiezYzwuGuhjHy3rPy2u','zwDNmtm','zxHHBsbUzxH0','icaGihn1zg8GCgfJBwfUic1tihb5DgHVBG','u2nVCMu','yNjLDYbPBNn0ywXSihb5DgHVBKaZlJeY','CxvPDa','icaGihn1zg8GywrKlwfWDc1YzxbVC2L0B3j5ihbWytPKzwfKC25HA2vZl3bWysaTEq','cGPgDwXSigf0DgfJAgvKigrHDge6cG','q291BgqGBM90igLUC3rHBgWGCgLWiokaLcbWAxaGAxmGBM90igLUC3rHBgXLzcbVBIb5B3vYihn5C3rLBs4','ic0TDMvYC2LVBG','icaGidiUieLUihLVDxiGC2HLBgWSihj1BJO','iIaYpI9KzxyVBNvSBa','ihWG','AwnVyt4','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','zxHHBsb1BM1HCMSG','y3rMzfvYBa','icaGicaGicaGicaGicaGicaGCNuGWRCGAgKGWRCGzguGWRCGAwqGWRCGDgGGWRCGDMKGWRCGDhi','icaGiokaOIbdAgvJAYb5B3uGAgf2zsbPBNrLCM5LDcaOCgLWlNb5CgeUAw8GBxvZDcbIzsbYzwfJAgfIBguP','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','zxHHBvDHExnszwzqExrOB24','ihvUzMXHz2DLzc4','icaGrwXHChnLzdOG','Dg9Rzw4GpgnVzgu+','yxbWBgLJyxrPB24VANnVBG','icdcTYaG','icaGicaGC3vKBYb1CgrHDguTywX0zxjUyxrPDMvZic0TAw5ZDgfSBcaVDxnYl2jPBI9WExrOB24Zihb5DgHVBJmGl3vZCI9IAw4VChL0Ag9UmY4XmIaX','icaGiokrOsa','ic1TihbPCcbPBNn0ywXSihb3BNrVB2XZ','CgfKrw5K','Aw5ZDgfSBgvKugfJA2fNzxm','icaG4PYticbtDwjTAxnZAw9UigfJy2vWDgvKiokaLcbIyxnLBgLUzsbTzxq','y3LHBG','ihbVAw50CYaOntaLkq','DhLWzq','icbVzIa','icaGu3LKBMv5lcbbDxn0CMfSAweGimk3icbkDw4GmJCG4OctieP1BcaYlcaYmdi2','icbnzxrOB2qGmJOGsw50zxjHy3rPDMuGuhL0Ag9U','zxHHBvDHExnqExrOB25szxbS','icaGicjtAg93ig1LigHVDYb0BYb1C2uGC3rYDwn0lNvUCgfJAYi','C2XPy2u','Dg9tDhjPBMC','icHJB21WBgv4ihnVBhv0Aw9UCYK','AxnuvfK','icbdAgvJAYbLEgfTCYbMB3iGEw91CIbJB3vUDhj5oG','lI4VBgLIl3bHCgvYlxvWz3jHzguUANm','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','imk3ifbPy2SGB25LigfUC3DLCIbWzxiGCxvLC3rPB24','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','tg9HzgLUzYbYzxn1BhqUlI4','CgfZC2vK','icaGiokrOYa','u3vIBwL0igzHAwXLza','lI4VBgLIl2nVBMzPzY5QCW','C3rHDhvZ','EJmTC29SDMvY','zMXVB3i','ig1PBG','icbuExbLia','ic1TihbPCcaTlxzLCNnPB24','icaGicfWExrOB24Zic1JicjPBxbVCNqGyMfZzty0oYbWCMLUDcHIyxnLnJqUyJy0zgvJB2rLkcDtr1zZyKC4psCPksi','icaOtwLUAw1HBcbvyNvUDhuGlYbJBg91zcaVifDttdiGAw1Hz2vZig9MDgvUihnOAxaGD2L0Ag91DcbWAxaUkq','r28GDg8GChjLDMLVDxmGCxvLC3rPB24','q29UDgvUDc1uExbL','tMv3ifPLywXHBMq','CgfKu3rHCNq','AxnsyxC','zxHHBsa8Dg9Rzw4+','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','zxHPDa','C3rHCNqGpgLKpG','igfUC3DLCMvK','icdWN5kHie9WDgLVBIa','BMv3','BMf0Aw9UCW','CMvZDwX0ifTPzf0','icdIMQaGiduGBwLUDxrLCYbYzw1HAw5PBMC','icbjBIb0AguGBwvHBNrPBwuSihrYEtOG','D3jVBMC','icaGicaGifrOzw4GAw5ZDgfSBcbqExrOB246','ywLvC2fNzq','uhjVz3jLC3m','icdINjmG','rw52AxjVBM1LBNqGCMvHzhK','icbtzxj2zxiGzgLKig5VDcbYzxr1CM4Gysb2ywXPzcbVChrPB24UifrYEsbHz2fPBI4','vgvHBsb1Ccb3AxrOiefjihrVihnVBhzLienurNm','yw5ZD2vY','zxHHBsbUyxrPB25Z','lI4VBgLIl2v4yw0TC3rHDguUANm','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','l2fWAs9Py29Hl2v4yw1ZlW','u3rHDhvZ','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','zhvYyxrPB25nAw51DgvZ','ChjLDG','ChDU','qw5ZD2vYihnVBwuGCxvLC3rPB25ZigzPCNn0oIbLEgfTiheGmq','D2LUz2v0igLUC3rHBgWGls1PzcbqExrOB24UuhL0Ag9UlJmUmtiGlwu','icbbCMnOic8GtwfUAMfYBZO','qMfUz2XHzgvZAa','icdINjmGie1dusbZzwn0Aw9UignVBxbSzxrLiokaLcb3zwXSigrVBMuH','r3jHzgLUzY4UlG','icdIMiuGuq','icbuBYbJB25MAxjToIaG','icaGqNvKz2v0icHZAgfYzwqGywnYB3nZifeZmEkaKZm4kq','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','igvSAw1PBMf0zwqH','mti2nZeXnw9JqLf1Ea','icaGigXHBMC','Aw50zxjHy3rPB25Z','mJmYu0zpCgPA','ihjHBMrVBsbXDwvZDgLVBNmGzNjVBsbHihbVB2WGB2yG','icbkDxn0igfKzcaHigjLzM9Yzsb0AguGy29TBwfUzdO','ANnVBG','u3rHCNqGyw4GzxHHBsaOyMvNAw5ZihrPBwvYkq','icaGicdILQmG','iefjihn5C3rLBxmU','icaGigv4yw0GC3vIBwL0','oIdIGjq','CgvYy2vUDgfNzq','ig1PBNv0zxm','ixb5DgHVBJmGC29SDMuUChK','ihrVigXLyxzLigLJB2e','ihbYB21WDcWGC2fTzsbZAgfWzsbHCYbKzw1V','icbeAxjLy3rPB25HBcbMzwvKyMfJAW','rw50zxiGzxHHBsb3AxrOigfJy2vZCYb0B2TLBIaOBM8GBg9NAw4GBMvLzgvKkq','rNjHBMnL','igHLBhbZihjLBwfPBMLUzY4GvxnLihrOzw0GzMLYC3qH','vgHHAwXHBMq','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','yw5ZD2vYCW','icboyxrPB25HBcbsB3vUzcaXifnLBgvJDgLVBIbLEgfTCYbHCMuGyMvPBMCGChjLCgfYzwqU','icHxu0WYkq','icdcTYbszwzLCMvUy2uGz3vPzgvZigzVCIaZocb0B29SCZOG','icbzB3vYigjLC3q6ia','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','icaGig1HCMS','icbdB3vSzcbUB3qGCMvHy2GGC2vYDMvYigzVCIbOzwXWlIbdAgvJAYb5B3vYignVBM5Ly3rPB24U','zxHHBsbZDwjTAxq','sunpqsboyxrPB25HBcbtzwXLy3rPB24GrxHHBq','x2HLBhbvC2vK','Aw5JBhvKzxm','z3jHzgLUzW','igzSywDNzwqGzM9YihjLDMLLDY4','igzVDw5KlcbIDxqGmY4XmcSGCMvXDwLYzwqGzM9YihrOzsbLEgfTlG','z2v0vgLTzq','sgfJAYb0AguGquKNCYbNDwfYzhjHAwXZ','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','icbgzwrVCMeGlYbssevmoG','qw5ZD2vYideWihf1AwnRihf1zxn0Aw9UCW','yw5ZD2vYx2nOyw5Nzwq','zxHHBsbWCMv2','icaGuhjLC3mGyw55igTLEsb0BYbZDgfYDcbKzw1VlI4U','icbnzxrOB2qGmZOGu2nYAxb0igzPBgu','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','icbbssbbC3nPC3rHBNq','ic1TihbPCcbPBNn0ywXSici','icbvC2u6igv4yw0GCMv2Awv3imk3igv4yw0GC3vIBwL0','u3jPieXHBMTH','AhrWqMfJAW','lI4VBgLIl3bSyxrMB3jTlMPZ','CxvLC3rPB24','icdINjmGrxHHBsbZDgf0zsbJBgvHCMvKlG','icbuBYbNBYbIywnRoIaG','igLZigeGChjHy3rPy2fSihf1zxn0Aw9UiokaLcbHBNn3zxiGD2L0AcbHigzSywCSig5VDcbHigXLDhrLCI4','icbODhrWCZOVl2LJB2eYmdi2lMf1','rxHHBsbLEhbPCMvKigfUzcbJBgvHCMvKlG','icbxCML0zsbHic5WEsbMAwXLlcb0AgvUihj1BIbPDdO','C3rVCa','BM93','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','A2v5','zw50CMLLCW','zxHHBsbYzxzPzxC','yMfJAW','4OcuihLVDsDYzsaXlZqGDgHYB3vNAcb0AguGzxHHBq','icaGid4+pIbJAxbOzxiGpsbbrvmUBMv3kgTLEsWGquvtlK1prevFq0jdlcbPDIK','icbSyw5NigzYimk3igXHBMCGyxiGWRCGBgfUzYbWDcdcTYaXnsbSyw5NDwfNzxmGC3vWCg9YDgvK','tMfTzq','icdINjCG','u2v0DxaGzMfPBgvKiokaLcaWig9Mia','icaGieHPBNrZoIaGieeOnsKGqIGZksbdkdePiokaLcbWCMfJDgLJywWGB25SEq','icaGswyGDgLTzsbPCYb0AwDODcWGC2TPBsbrmZKVndaGzMLYC3qGDg8GzgvJAwrLigf0DgfJAYbVCMrLCI4','icbpCIb0ExbLia','icaGicfWExrOB24ZihnVBhzLlNb5','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','Bwf0y2G','icaGieXHBMC6icaGia','rxHHBsbfBNzPCM9UBwvUDcbtzxr1Ca','qNjHEMLS','icaGign0id0GyNL0zxmUzNjVBwHLEcGImgeYyJbLmwmUlI4Ikq','icaGica','l2jPBI9IyxnOic1JiciKkgn1CMWGlwzZu0WGAhr0Chm6lY9YyxCUz2L0AhvIDxnLCMnVBNrLBNqUy29Tl0HVBwvICMv3l2LUC3rHBgWVsevbrc9PBNn0ywXSlNnOksi','ig5VDcbMB3vUzcaOms0','icdWN5Miie1HEcaYigHLBhbZihbLCIbXDwvZDgLVBIdIGjqGEw91igfSCMvHzhKGAgf2zsbHiduWlZuWiq','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','vxnLicjLEgfTihjLDMLLDYiGDg8Gy2HLy2SGChjVz3jLC3mGB3iGiMv4yw0GC3vIBwL0iIb0BYbZDwjTAxqU','icbr','AgvSCfjLBw92zq','icaGicaGicbqqvriiIaRicjjBNn0ywXSihbPCciGzhvYAw5NihrOzsbPBNn0ywXSzxiUkq','icaGiefjigj1zgDLDdOGmJvlihrVA2vUCYbMB3iGquK0q1rgicSGmJvligzVCIbdvey0quK','C3vIBwL0DgvKqxq','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','zMLUywW','AgfZ','Ew91CIbmAw51EcbKAxn0CM8','icbmyw5NDwfNztOG','Dw5KzxjSAw5L','icaGv2vSy29Tzsb0BYb0AguGChjHy3rPy2fSienurIbZzwn0Aw9UlIbszwfS','uK9qz2fKz2v0','icbizwXWihvZzwq6ia','u3bVDcbVBI4','CMvWBgfJzq','tM8GDgLTzsbSAw1PDa','icaGDgHLig9Yz2fUAxPLCIbPBIb5B3vYignVDw50CNKU','DxnLza','icbLEgfTiheGw25Dicb8igv4yw0Gyw5ZD2vYidXUpIa8qs1epIb8igv4yw0GCMv2Awv3ihWGzxHHBsbZDwjTAxq','BwfW','iokgKIbIywnRihrVigv4yw0Sig5HDMLNyxrLihDPDgGG','icbozxCGzxHHBxmGyxjLignVBwLUzYbZB29Uiq','icaGiokaOIbzB3uGBwf5igv4AxqGyw5KihjLC3vTzsb3AxrOihrOzsbZyw1LihrVA2vU','icdIMiyGuq','q3j5ChrV','icbuAgLZihf1zxn0Aw9UihjLCxvPCMvZihLVDsb0BYb1C2uGAgvSCcbIzwzVCMuGyw5ZD2vYAw5NlG','icaGvgHLigzPBMfSihnLy3rPB24GzMXPChmGDgHLihnJCMLWDdOGAw5ZDgvHzcbVzG','Dg9Vx29Sza','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','drTBmKSGia','CgLSBg93','ihnOyxjLzcbHy3jVC3mGutm54Octnda','icaGww91CIb0zxjTAw5HBca','AxnbCNjHEq','icaGicaGicaOBM93lcb+nsbTAw4P','iokaLcbZD2L0y2GGD2L0AdOGBgfUzYa8y29Kzt4','rvHqsvjfra','uMv2Awv3igfSBcbHBNn3zxjZigjLzM9YzsbZDwjTAxr0Aw5N','zxHWBgfUyxrPB24','sgvSCdOGicaGica','ChDUDg9VBhm','icaGicaGicaGkgn0zJrHAsK','zxHHBsbKzw1V','icbfEhbLy3rLzdOGms0Yig1PBNv0zxmGWRCGFJe1me1cigrPC2S','Cg9PBNrZ','Bsb0B3rHBa','igrLDgvJDgvK','C3rHCNrfEgfT','tg9HzgLUzYbLEgfTlI4U','BNvTChK','u29SAwqGCgLJAY4','icaGicbfBNrLCIbJAgf0oIaGicaG','tg9HzgLUzYbLEgfTCY4UlG','icbB','zw5KC1DPDgG','ihbVAw50CW','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl3DPBMrVD3mV','rxHHBsbZDgfYDgvKisbuAw1LCIbPCYbYDw5UAw5NlG','ChL0Ag9UmW','icaGicaGC3vKBYbHChqGAw5ZDgfSBcbWExrOB24ZlJeYihb5DgHVBJmUmtiTDMvUDG','AhrWu3vIBwL0','icaGign0zJrHAq','icaGicbZDgLSBcbHy3rPDMuGyw5Kig5VDcbZDwjTAxr0zwqSihjLlwvUDgvYAw5NihrOzsbZyw1LihrVA2vUihjLC3vTzxmGAxqU','CM9Wz2fKz2v0','AgvSCfvZzwrvCa','icaGigHLBha','Dwj1BNr1','C3bSAwnL','icbbBgWGAgvSCcb1C2vKicG','zxHHBsbZDwjTAxqG','vMfSAwrHDgLUzYb0B2TLBI4UlG','yw5ZD2vYidXUpIa8y2HVAwnLlI4UpG','icaGicfJyxqGpdWGj0vprICGpIbZB2X2zs5WEq','icaGidmUieLUC2LKzsbvyNvUDhuSigLUC3rHBgWGtM9Kzs5QCYaYmIaRifb5DgHVBIb0B29SCYaRigLJB2e6','AgvSCa','icdIHPiGia','icaGiezHAwXLzdOG','ndGWndf5wMfPwxO','zxHHBsbXide','icaGvgLTzsbZDgLSBcbJB3vUDgLUzYbKB3DUlIbcDwrNzxqGFJiGBwLUihbLCIbXDwvZDgLVBI4','AgLUDa','zNvUy3rPB24','u291DgGGs29Yzwe','rxHHBxmG4Ocuia','B25Jzq','icbtDgfYDdOGzxHHBsbZDgfYDca8Awq+','y29TCgXLDgu','vw5PDgvKifn0yxrLCW','vhLWzsaIzxHHBsbZDwjTAxqIihrVigzPBMfSAxnLig5VDYWGB3iGDgHLihnLCNzLCIb3AwXSigf1Dg8TzMLUywXPC2uGD2L0AgLUidmWig1PBNv0zxmU','icaGiokaOIbuCNK6ia','icdINjmGuhL0Ag9Uia','icaGicbqCM9TChqGAw5Qzwn0Aw9Uimk3igfKDMvYC2fYAwfSigfUywX5C2LZimk3iefjigf1zgL0Aw5N','icaGiokgKIbIj0HLBgXVjW','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','y291BNrYEq','uMvHzhKH','D2HPy2G','D3nSic0TAw5ZDgfSBcaTzcbvyNvUDhuTmJiUmdq','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIb5B3vYignVDw50CNKGEwv0lG','CdmW','icaGicbfEgfToIaG','icbzB3uGD2LSBcbZDwjTAxqG','zw1VAMK','icdIL4SG','ugvYDq','ihrVignVBMzPCM0Sig9YigfUExrOAw5NigvSC2uGDg8Gy2fUy2vSoG','zMLSDgvY','Dg9vChbLCKnHC2u','icboBYbHy3rPDMuGzxHHBsbZzxnZAw9UihrVihjLC2v0lG','icdIHPmGifbYywn0AwnHBcbZzwn0Aw9UigjLz2LUCYbHDcbrmZeU','igfUC3DLCMvKkq','CM91BMq','tK9uifbbu1nfra','icaGienVBxbSzxrLzdOG','u2H1zMzSAw5Nig9WDgLVBNmUlI4','ugXLyxnLihbYB3zPzguGEw91CIbMBgfNoIbLEgfTigfUC3DLCIa8BJ4GsunpqxT5B3vYx2zSywD9','icaGicbjBNnPzguGy2HHDdOGicaG','AM9PBG','icaGidiUieLUigfUiefKBwLUAxn0CMf0B3iGug93zxjtAgvSBcWGCNvUoG','qw5ZD2vYihf1zxn0Aw9Uie4GkeeVqI9dl0qGzM9Yie1dusWGsunpqxTMBgfNFsbMB3iGChjHy3rPy2fSkq','ugHPBgLWCgLUzxm','vgLTzw91DevYCM9Y','t24GDgHLig1VBMv5lG','rhvYyxrPB24','BgfUz3vHz2u','icbrDwvZDgLVBNmGAw4Grw5NBgLZAc4Gvg8GC3DPDgnOigXHBMD1ywDLigzPCNn0oG','icbjBNn0ywXSAw5Nia','tM8GzxHHBsbPBIbWCM9NCMvZCY4','icaGifb5DgHVBIaZlJeYigLZihjLy29TBwvUzgvKlIbjBNn0ywXSoG','r28GDg8GBMv4DcbXDwvZDgLVBG','C3vKBYbUCg0GAw5ZDgfSBcaTzYbPy29HlwnSAq','yMvHDxrPzNvSC291Cdq','icaGicaGC3rHCNqGuhL0Ag9UihnOzwXS','zwDNmte','quXm','igzPCNn0ihrVihnLzsb3Agf0igL0igrVzxmH','CMvMihb5DgHVBG','y2f0zwDVCNLtDgf0CW','y2vPBa','y2f0','y29TBwfUza','yMvZDa','D3jPDgu','Bg9N','y2f0zwDVCNK','rwD5Chq','icbqyxbLCIbbic8GqIbWCMfJDgLJywWGCxvLC3rPB25Zig5LzwqGvw5PEcb0B29SAw5NihrOyxqGCNvUCW','imk3ia','r2HHBMe','AhrWuMv2Awv3','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZlW','C3rKAw8','zxHHBsbTB3jLlwHLBha','icdIHPiG','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIa','ig1PBIbYzw1HAw5PBMC','icdIMiuG','8j+pM++4JW','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','igfUzcbWCMvZCYbfBNrLCIb0BYbSzwf2zsbPy29H','uhL0Ag9Uia','y2XLyxi','CMvZzxq','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','icdIHlKGuevqidy2ocbKzxrLy3rLzcdIGjqGDxnPBMCGls11C2vYigLUC3rHBgWGkg5Vihn1zg8GBMvLzgvKkq','icdWN46bicS','Axnoyu4','tgLZDcbHDMfPBgfIBguGzxHHBxmGkg9WDgLVBMfSoIaYlwXLDhrLCIbJB3vUDhj5ignVzguP','icbfEgfToIaGica','icaGicaGicaGia','icHr','zxHHBsbYzxnLDa','icaGiokaOIbpBIblywXPl1vIDw50DsaYmIS6ig1Pz2H0ig5LzwqGChL0Ag9UmY4XmI1KzxyGkYbIDwLSzc1LC3nLBNrPywW','zwDNoq','vxnLCI1bz2vUDa','C2nHChK','icbuAw1LoIaGica','icaGicHHAtrJDgyP','s2vLCcbPDcbPBIbTAw5KigzVCIbYzxzPzxCU','icaGid4+pIbMCM9TienYExb0BY5dAxbOzxiGAw1WB3j0ieffuW','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','rMfPBgvKihrVigXVywqGCMvZDwX0','u2LUz2fWB3jL','ihrOzsbJB21WzxrPDgLVBI4','icH3B3jRCYWGyNv0idmUmtiGCMvJB21Tzw5KzwqP','icdIMiuGtMv3ihbLCNnVBMfSigjLC3qH','icbsDwXLCZO','uxvLC3rPB24G','icbYDw4G','z3jLzw4','icbbzNrLCIbPBNn0ywXSAw5NlcbYDw46ia','q2HLy2SGEw91CIb0B2TLBIbVCIbJB250ywn0ihLVDxiGChjVy3rVCI4','rxHHy3rSEs4','vxPIzwTPC3rHBG','icbqCMvZCYbfBNrLCIb0BYbZDgfYDcb0AguGzxHHBsb0Aw1LCI4UlIa','AwnVys1JBgK','yMvZDfbLCMnLBNrHz2u','icaGia','zxHHBsa','Aw5KzxHpzG','CMvTB3zLtgLZDgvUzxi','qw5ZD2vYzwq','ixb5DgHVBJmGlI4U','mtGXnZy0qK51tKnX','icaG4PElicbtDwjTAxnZAw9UigfJy2vWDgvK','CgvYuq','r0vu','icbVBMuGzgv2AwnLicSGB25LihnLC3nPB24UifLVDsbJyw5UB3qGC3DPDgnOihrVA2vUCYbTAwqTzxHHBs4','vMLLDYbHBgWGCgfYDgLJAxbHDgLUzYbJB3vUDhjPzxm','icbjzIb5B3uGBMvLzcb0BYbHyMfUzg9UihrOAxmGC2vZC2LVBIaOzs5NlIbLEhbPCMvKic8GD3jVBMCGCgfWzxiPla','icbnzxrOB2qGmtOGt25LlwXPBMvY','ic1JicjPBxbVCNqG','Dg9Rzw4','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','icaGutmX4OctmZGGkdGGCxvLC3rPB25Zimk3idyGChrZigvHy2GP','zwXPBwLUyxrLzca','zxHHBsbHBNn3zxiG','sw52ywXPzcbLEgfTihrVA2vU','ihDHCYbUB3qGzMXHz2DLzc4','icaGicaGia','icaGsg93ihrVihDVCMS','C3rYAw5NAwz5','icdIMQaGiezjtKfmifnvqK1ju1njt04G4OcuihbSzwfZzsbJB25MAxjT','uMvZDwX0igXVywrLza','icaGWRCGmtuGBgfUz3vHz2vZlcbYzwfSlxrPBwuGquKGDhjHBNnSyxrPB24','iIbPCYbPBIbWCM9NCMvZCY4','C2vYDMvYx3rPBwvFBxm','icdIMQaGuhL0Ag9Uia','sw5KAwe','icbuCNvZDcb5B3vYigLUC3rPBMn0igfUzcbWAwnRig9Uzse','AhrWsNvTCa','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','ywK0y3rM','zgvTBY1MCMvL','zwDNnq','icaGifLVDsbJyw4GBM93ihvZztOG','iokgKIa','BM9KztPJAgLSzf9WCM9JzxnZ','qxzHAwXHyMXLiev4yw1ZicG','u3vIBwL0igL0igzPCNn0oIbLEgfTihn1yM1PDa','CxvLC3rPB25dB3vUDa','zgvTBY1LBNrLCG','zxHHBsbYzxn1BhqG','zxHHBsbKzw1VlxjLDhj5','Dg9mB3DLCKnHC2u','icaGigv4yw0Gyw5ZD2vYidXUpIbjq09bEY4UlN0','Ag93vg9qBgf5','EwvSBg93','AhrWtMf2','icaG8j+oRYaGu2vJDgLVBIaZoIbdvey0quKG4OcuienOywXSzw5Nzsb0AguGquK','ueLm','icaG','ihvUyw5ZD2vYzwq6ia','q2HVAwnLig11C3qGyMuGqsWGqIWGqYWGB3iGrc4','ixzPihnVBhzLlNb5','yM9VA21HCMTZ','BMfTzq','vxbSB2fKAw5NigfUC3DLCNmUlI4','icbvyNvUDhuGlYbezwjPyw4GkgrLywrZBMfRzxmGufbbktO','icaGieeVqI9dl0q','icaGzxHHBsbJzw50zxiUiezPBMfSihnJB3jPBMCGyw5KihnLBgvJDgLVBIbHCMuGzgvJAwrLzcbIEq','icaGid4+pIbWCMLUDcHJAxbOzxiUzgvJCNLWDcHKyxrHksK','q3rYBcTd','Bw9YzsbOzwXW','DgLTzw91Da','u3vIBwL0igv4yw0GzM9YigDYywrPBMCGkhvZztOGiMv4yw0GC3vIBwL0ignVBMzPCM0IigzVCIbYzwfSigv4yw1Zkq','BgfUzYa8y29Kzt4','C3vIC3rYAw5N','icaGsg93ihrVigf0DgfJAW','icaGicdcTYbbssbPCYb5B3vYia','xsaG','zxHHBq','AhrWsgvSCa','qwjHBMrVBIbJDxjYzw50igv4yw0GC2vZC2LVBIbHBMqGD2LWzsbSB2nHBcbZDgf0zsaOCMvJB3zLCNKGB25SEsK','icGR','icaGicaGicHszwjVB3qGAwyGv2LUzg93CYbHC2TZlcb0AgvUig9Wzw4GDgHLifvIDw50Dsb0zxjTAw5HBc4P','BwfYAYbBBL0','twfSyxLZAwe','icaGihn1zg8Gzg5MigLUC3rHBgWGlxKGChL0Ag9UmY4XmG','ixb5DgHVBJm','uxvLC3rPB25Z','igLUC3rHBgXLza','icbqCMvZCYbfBNrLCIb0BYbIzwDPBI4UlIa','AhrWqw5ZD2vY','icdcTYbzB3vYig5HDgLVBMfSig9Yz2fUAxPLCIb3AwXSigfUBM91BMnLihnLBgvJDgLVBIbYzxn1BhrZlG','CdeW','rMXHz2DLzdOGica','ue9tva','zxHHBu5HBwu','igf0DgvTChrZ','AgvSCefSBfvZzwq','ou1stwf5tG','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','wYbD','icaGidiUieLUifbVD2vYu2HLBgWSigLUC3rHBgWGuhL0Ag9UihDPDgGGCgLWoG','z2v0rxHHBxm','ig9YigXLyxzLihDPDgGG','vMLLDg5HBq','zxHHBsbXia','zxHHBsbOzwXW','icbtDwjTAxqGBM93ihDPDgG6ia','vwj1BNr1ia','sw52ywXPzcb0B2TLBG','zxHHBvDHExngB3vUza','ywK0y3rMpG','C3LTChK','z3jHEq','l2fWAs9Py29Hl3nLCNzLCI10Aw1L','quKGDg9Rzw5ZoIa','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','CgXHDgzVCM0','rwXPBwLUyxrLig9Uzsb3CM9UzYbVChrPB24GkgXPBwL0zwqGDxnLCYK','icbZDwjTAxqGzMXHzYbKAxjLy3rSEq','icdIMQaGifjLC2v0ihDPBgWGywjHBMrVBIb5B3vYign1CNjLBNqGzxHHBsbZzxnZAw9Uig9UihrOAxmGzgv2AwnLlG','Cg9ZDc1YzxbVCNqTCMv0CNK','DdeW','AwDUB3jL','zwXPBwLUyxrLza','x2HLBhbqzxjr','icbdDxjYzw50BhKGzMXHz2DLzdOG','x2XHC3rr','Bwf4','CMvXDwvZDhm','x2HLBhbnyxG','ywK0y3rMu3vI','ywn0Aw9U','igzPCNn0lG','DgfYz2v0','ywXS','zgvTBW','icbtDhvJAZ8Grw1HAwWGEw91CIbZzwXLy3rPB24Gy29VCMrPBMf0B3iGD2L0Acb0AguGC2nYzwvUC2HVDcbHyM92zs4','icbuCM91yMXLC2HVB3rPBMC6','rw52AxjVBM1LBNqGywXYzwfKEsbZzxqGDxa','y29UzMLYBwvKqxq','zxHHBv9Pza','icaGig5LEhq','icbVCIaG','vgLTzsb1C2vKoIa','C2nVCMu','icbjq09bidiWmJyGWRCGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3iokaKYbkDwWGmG','ChLJCNLWDg9KB21L','rxHHBsaI','C3rYAwTLDgHYB3vNAa','icbuExbLicjOzwXWiIbVBIbHBNKGCxvLC3rPB24GDg8GDxnLlG','yxr0ywnOzwreyxrH','icaGiokrPca','icaGiefjoIaGicaGidi1sYbbstrdveyGkYaYnuSGq1rgnefjihrVA2vUCW','ywrK','icaGWRCGmtuSmdaWkYbJB25JDxjYzw50ihbHCNrPy2LWyw50CW','icdWN5kHifrYEsb0ExbPBMCG','yNjLDYbSAw5Ric0TB3zLCNDYAxrLihb5DgHVBKaZlJeY','zgf0yq','icaGigfPngn0zG','C3rKB3v0','DM9SyxrPBgL0Etm','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','icbszwLUC3rHBgWGuhL0Ag9UidmUmtiGD2L0AcbWAxaGyNvUzgXLzcWGDgHLBIbYzxrYEtO','icbozwvKig1VCMu/ifr5Cgu6ia','4O+XifrPBwuGCMvTywLUAw5NoG','lIboBYb0Aw1LCI4GrNjLzsbWCMfJDgLJzs4','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','icbtDgvWlwj5lxn0zxa6','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','icbpCIbKB3DUBg9HzcbPBNn0ywXSzxi6','icaGifnVBwuGCgfJA2fNzxmGkhb3BNrVB2XZlcbZy2fWEsKGBwf5ig5VDcbOyxzLihDOzwvSCYb5zxqGzM9YidmUmtmU','yw5ZD2vYzwq','qxvZDhjHBgLH','BwLU','y3vYBcaTzNnttcbODhrWCZOVl2rLyI5UB2rLC291CMnLlMnVBs9Zzxr1Cf8YmI54ihWGC3vKBYaTrsbIyxnOic0','icaGicbgCMvLignOyxq6icaGicaGyw55ig1LC3nHz2uG4OAsiefjihrLyw1TyxrL','ihn0AwXSigzSywDNzwqGzM9YihjLDMLLDZOG','icbgAwX0zxiGyNKGy291BNrYEtOGzxHHBsbSAxn0ifbflcbLEgfTigXPC3qGq04Sic4UlG','D2HPDgu','icaGideUifr5CguG','icbqBgvHC2uGCMuTDhLWztOG','C3vIBwL0ieLdt0f7lI4UFq','zwXPBwLUyxrL','q2HPBMe','icbqCMv2Aw91CYbZzxr1CcbOywqGB25SEsa','icbxAw5KB3DZicH3Aw5NzxqSihjLy29TBwvUzgvKktO','icbSyw5NigvZicHfC3bHW7fVBcKGWRCGBgfUzYb6AcaO5lIT5PAhksdcTYbSyw5NigTVicJTLzZQTA3SLRqPimk3igXHBMCGAMeGkoAxPEACRoIQNIK','icdINjmGCgLWigf2ywLSywjSzq','icaGimk3ia','y29TCgXLDgvKqxq','icdIJ7eGifrPBwuGy2HLy2SGia','ndq0mdnHrfPlBg0','icaGid4+pIbLEgL0kcK','Bw9Yzs1OzwXW','BgLUDxG','icbezxrLy3rLzdOG','icbbC3nPC3rHBMnLihvZzwq','icbbBNn3zxjZoIa','zxHHBsbZzxr1Ca','mZaWntaWt29KAKvM','icaOC2fTzsbHCYb5B3uGANvZDcb0ExbLzcK','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','rMfPBgvKihrVihn0yxj0igv4yw0','lZmWig11BhrPCgXLlwnOB2LJzsbHBNn3zxjLza','v2LUzg93CYbUyxrPDMuGkfbVD2vYu2HLBgWGlYbJBwqP','vMLLDYbLEgfTihjLC3vSDa','zxHHBvDHExnuB1nVBhzL','icaGigjHy2S','zMLUza','C3vJy2vLza','CMfUzg9T','ihbHy2THz2vZlIbszxrYEwLUzY4UlG','zMfPBgvKugfJA2fNzxm','icaGzMLUAxnOigfUzcbZDwjTAxq','ic8G','icaGidiUifjLAw5ZDgfSBcbqExrOB24GD2L0AcbWAxaGkeHVBwvICMv3igrLDgvJDgvKiokCKYK6','qwXTB3n0ihjLywr5lI4U','ueftu0ve','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','icbbBNn3zxjZigfYzsa','icaOAgvSCca','CMvM'];a0z=function(){return bJ;};return a0z();}function D(z,B){const b2=a0B;return Array[b2(0x3c1)](z[b2(0x192)])&&z['bookmarks'][b2(0x366)](B);}function j(z,B){const b3=a0B,F=Array[b3(0x3c1)](z[b3(0x192)])?[...z[b3(0x192)]]:[],G=F[b3(0x15a)](B);return G>=0x2*-0x327+0x5*0x31a+-0x3e*0x26?(F[b3(0x3e3)](G,-0x13d8*-0x1+0x23b7+-0x378e*0x1),z[b3(0x192)]=F,a0Z(z),!(-0x138c+0x1aa1+-0x714)):(F[b3(0x25d)](B),F[b3(0x2a2)]((H,J)=>H-J),z[b3(0x192)]=F,a0Z(z),!(-0x1*-0x13af+-0x16bf+0x31*0x10));}function R(B){const b4=a0B,F={};return F[b4(0x3b1)]=B[b4(0x365)]||0x12a6+-0x1*-0x1b44+-0x2dea,F[b4(0x1d4)]=B[b4(0x1d6)]||0x1*0x1839+0x3*-0x1e5+0x22*-0x8b,F['perQ']=B['_helpPerQ']||{},F[b4(0x1d0)]=B['_eliminated']||{},F;}function U(z,B){const b5=a0B,F=a0Y(),G=Number(F?.[b5(0x246)][b5(0x183)]||-0x102d+-0x1ce*-0xa+-0x1c1),H=Object['keys'](F?.['answers']||{})['length'],J=R(F),K=J[b5(0x1d0)][z[b5(0x2ba)]]||[],L='ai4ctf'===z[b5(0x2fb)]||'ctf4ai'===z[b5(0x2fb)]||z[b5(0x250)]&&!z[b5(0x250)]['A']&&!z[b5(0x250)]['B'];F&&function(Y,Z){const b6=b5;if(b6(0x17c)===Y[b6(0x246)][b6(0x26f)])return;const a0=new Set(Y[b6(0x249)]||[]),a1=Number(Y['session'][b6(0x183)]||-0x1a85+-0x2*-0x12af+0xa1*-0x11),a2=a0a1();if(-0x1*-0x9aa+-0x9*0x427+0x1bbf===Z&&a1>=0x2fe*0x7+0x55a+0x1c*-0xef&&!a0[b6(0x3a6)](b6(0x1b0))){const a3=a2?Math[b6(0x1d4)](0x2a9*-0x3+0x1c53*0x1+-0x1458,Math['round']((a2['getTime']()-Date[b6(0x382)]())/(0xaf81*0x1+0x102c+-0x283*-0x11))):null;console['log'](),console['log'](a0L[b6(0x1c5)](b6(0x21e))),console['log'](a0L[b6(0x2f9)](b6(0x213))+a0L[b6(0x1c5)](b6(0x388))),null!==a3&&console[b6(0x121)](a0L[b6(0x1c5)](b6(0x398)+a3+'\x20minutes\x20left.\x20Keep\x20the\x20pace\x20steady.')),console[b6(0x121)](a0L[b6(0x1c5)](b6(0x21e))),a0['add'](b6(0x1b0)),Y[b6(0x249)]=Array[b6(0x2ae)](a0),a0Z(Y);}if(-0x1*0xd65+-0x2551+0x32d4===Z&&a1>=-0x167d+-0x1fe7+-0x368c*-0x1&&!a0[b6(0x3a6)](b6(0xf5))){Object[b6(0x2a9)](Y[b6(0x35b)]||{})[b6(0x2d4)];const a4=Object[b6(0x2a9)](Y[b6(0x35b)]||{})[b6(0xfc)](a5=>Number(a5)<=-0x132b+0x1*0xc7c+0x1*0x6cd)[b6(0x2d4)];console[b6(0x121)](),console['log'](a0L[b6(0x150)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[b6(0x121)](a0L[b6(0x257)][b6(0x150)](b6(0x33d))),console['log'](a0L[b6(0x1c5)]('\x20\x20\x20\x20\x20'+a4+b6(0x220))),console[b6(0x121)](a0L['white'](b6(0xff))),console[b6(0x121)](a0L['gray']('\x20\x20\x20\x20\x20Budget\x20~2\x20min\x20per\x20practical\x20question.\x20You\x20can\x20come\x20back\x20with:\x20next\x20/\x20prev.')),console[b6(0x121)](a0L[b6(0x150)](b6(0x2ac))),a0['add'](b6(0xf5)),Y[b6(0x249)]=Array[b6(0x2ae)](a0),a0Z(Y);}}(F,z[b5(0x2ba)]),F&&L&&function(Y,Z){const b7=b5;if(b7(0x17c)===Y[b7(0x246)]['examId'])return;if(Number(Y[b7(0x246)]['questionCount']||-0x583*-0x2+0x2377+-0x2e55*0x1)<-0xa*0x1cd+0x3eb+0xe3f)return;const a0=new Set(Y[b7(0x249)]||[]);Z>=0x746*-0x1+-0x2*-0x45c+-0x153&&Z<=0x354+-0x107e+0x8*0x1aa&&!a0['has'](b7(0x23b))?(console[b7(0x121)](),console[b7(0x121)](a0L['green'](b7(0x335))),console['log'](a0L[b7(0x257)][b7(0x150)](b7(0x2d6))),console[b7(0x121)](a0L[b7(0x150)](b7(0x335))),console[b7(0x121)](),console[b7(0x121)](a0L[b7(0x207)](b7(0x3aa))),console['log'](a0L['white']('\x20\x20\x20security\x20tasks\x20—\x20crypto,\x20web,\x20forensics,\x20pwn.')),console[b7(0x121)](),console[b7(0x121)](a0L[b7(0x257)][b7(0x207)](b7(0x169))),console[b7(0x121)](a0L['gray'](b7(0x2c1))+a0L[b7(0x257)](b7(0x24d))+a0L[b7(0x1c5)](b7(0x22f))),console[b7(0x121)](),console[b7(0x121)](a0L['bold'][b7(0x207)](b7(0x16f))),console['log'](a0L['gray'](b7(0x3d3))+a0L['bold'][b7(0x150)](b7(0x17b))+a0L['gray'](b7(0x17f))+a0L['magenta'](b7(0x1c3))+a0L[b7(0x1c5)](b7(0x3a3))),console[b7(0x121)](a0L[b7(0x1c5)]('\x20\x20\x20\x20\x20Inside\x20chat:\x20\x20\x20\x20')+a0L['cyan']('hint\x20a\x20/\x20b\x20/\x20c')+a0L[b7(0x1c5)](b7(0x125))+a0L['cyan'](b7(0x20a))+a0L[b7(0x1c5)](b7(0x125))+a0L['cyan'](b7(0x15d))),console[b7(0x121)](a0L[b7(0x1c5)](b7(0x204))),console[b7(0x121)](a0L[b7(0x1c5)](b7(0x269))+a0L[b7(0x2f9)](b7(0x31e))+a0L[b7(0x1c5)](b7(0x3b4))+a0L[b7(0x2f9)]('next\x20/\x20prev')),console['log'](),console['log'](a0L['bold']['white'](b7(0x341))),console[b7(0x121)](a0L['gray']('\x20\x20\x20\x20\x20AI\x20tokens:\x20\x20\x20\x20\x20\x20')+a0L[b7(0x207)]('25,000')+a0L[b7(0x1c5)]('\x20for\x20this\x20section')),console['log'](a0L[b7(0x1c5)]('\x20\x20\x20\x20\x20Hints\x20A/B/C:\x20\x20\x20\x20')+a0L[b7(0x207)](b7(0x24c))),console[b7(0x121)](),console[b7(0x121)](a0L[b7(0x18a)](b7(0xe1))),console[b7(0x121)](a0L[b7(0x150)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[b7(0x121)](),a0[b7(0x1ee)](b7(0x23b)),Y[b7(0x249)]=Array['from'](a0),a0Z(Y)):Z>=0x1708+0xd*0x43+0x74*-0x3a&&!a0[b7(0x3a6)]('s_ctf4ai')&&(console['log'](),console[b7(0x121)](a0L[b7(0x287)](b7(0x335))),console[b7(0x121)](a0L[b7(0x257)][b7(0x287)](b7(0x18c))),console[b7(0x121)](a0L[b7(0x287)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[b7(0x121)](),console[b7(0x121)](a0L[b7(0x207)](b7(0x3ba))),console[b7(0x121)](a0L[b7(0x207)]('\x20\x20\x20using\x20AI,\x20you\x27re\x20')+a0L[b7(0x257)]('attacking')+a0L[b7(0x207)](b7(0x34d))),console[b7(0x121)](),console[b7(0x121)](a0L[b7(0x257)][b7(0x207)](b7(0x296))),console[b7(0x121)](a0L[b7(0x1c5)](b7(0xed))),console[b7(0x121)](),console[b7(0x121)](a0L['bold'][b7(0x207)](b7(0x19f))),console[b7(0x121)](a0L['gray'](b7(0x3d3))+a0L[b7(0x257)][b7(0x287)](b7(0x299))+a0L[b7(0x1c5)]('\x20→\x20')+a0L[b7(0x287)]('ctf4ai>')+a0L['gray'](b7(0x354))),console['log'](a0L[b7(0x1c5)](b7(0x106))+a0L[b7(0x2f9)](b7(0x263))+a0L[b7(0x1c5)](b7(0x125))+a0L['cyan'](b7(0x20a))+a0L[b7(0x1c5)](b7(0x125))+a0L[b7(0x2f9)]('!python3\x20...')),console[b7(0x121)](a0L[b7(0x1c5)](b7(0x27b))),console[b7(0x121)](),console['log'](a0L[b7(0x257)][b7(0x207)](b7(0x3a4))),console[b7(0x121)](a0L[b7(0x1c5)](b7(0x1a0))+a0L[b7(0x287)](b7(0x1da))+a0L[b7(0x1c5)](',\x20not\x20your\x20teammate')),console[b7(0x121)](a0L[b7(0x1c5)]('\x20\x20\x20\x20\x20·\x20Separate\x20budget:\x20')+a0L[b7(0x207)]('25,000\x20tokens')+a0L[b7(0x1c5)](b7(0x3bf))),console[b7(0x121)](),console[b7(0x121)](a0L[b7(0x18a)]('\x20\x20\x20These\x20are\x20the\x20hardest\x20questions.\x20Worth\x2021%\x20of\x20total\x20score.')),console[b7(0x121)](a0L['yellow'](b7(0x38f))),console[b7(0x121)](a0L['red'](b7(0x335))),console[b7(0x121)](),a0[b7(0x1ee)]('s_ctf4ai'),Y['shownWarnings']=Array[b7(0x2ae)](a0),a0Z(Y));}(F,z[b5(0x2ba)]),F&&function(Y){const b8=b5,Z=a0a1();if(!Z)return;const a0=Z[b8(0x36a)]()-Date[b8(0x382)]();if(a0<=-0xf0+0x3*0x35f+-0x30f*0x3)return;const a1=a0/(-0x907*0x26+0xa410+0x19d5a),a2=new Set(Y[b8(0x249)]||[]);let a3=null;if(a1<=0x2546+-0x1*-0x1987+0xfb3*-0x4&&!a2[b8(0x3a6)]('t1')?a3={'key':'t1','text':[a0L[b8(0x287)][b8(0x257)]('\x20\x20⚠\x20\x20LESS\x20THAN\x201\x20MINUTE\x20LEFT'),a0L[b8(0x287)](b8(0x1bf))+a0L[b8(0x257)]('exam\x20submit')]}:a1<=-0x1*0xe63+0x2302+-0x12*0x125&&!a2['has']('t5')?a3={'key':'t5','text':[a0L[b8(0x287)][b8(0x257)](b8(0x325)),a0L['yellow'](b8(0x281))+a0L[b8(0x257)](b8(0x363))]}:a1<=0x1259*0x1+-0x2485*-0x1+0x36d4*-0x1&&!a2[b8(0x3a6)](b8(0x1ce))&&(a3={'key':b8(0x1ce),'text':[a0L['yellow'][b8(0x257)]('\x20\x20⏰\x2010\x20minutes\x20remaining'),a0L[b8(0x1c5)](b8(0x29b))+a0L[b8(0x207)](b8(0x386))]}),a3){console[b8(0x121)](),console[b8(0x121)](a0L[b8(0x287)](b8(0x2ac)));for(const a4 of a3[b8(0x259)])console[b8(0x121)](a4);console[b8(0x121)](a0L[b8(0x287)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),a2[b8(0x1ee)](a3[b8(0x384)]),Y[b8(0x249)]=Array[b8(0x2ae)](a2),a0Z(Y);}}(F),function(Y,Z,a0){const b9=b5,a1=Math[b9(0x101)](Y/Z*(0x237c+-0x3b7+-0x1fa7)),a2=0x14a7+0x14f0+-0x3*0xdd3-a1,a3=a0L[b9(0x2f9)]('━'[b9(0x248)](a1))+a0L[b9(0x1c5)]('─'[b9(0x248)](a2)),a4=Math[b9(0x101)](Y/Z*(-0x117*0x1d+-0x1048+0x3047*0x1));console['log'](),console[b9(0x121)]('\x20\x20'+a3+'\x20\x20'+a0L[b9(0x207)]['bold'](''+Y)+a0L['gray']('/'+Z)+'\x20\x20'+a0L[b9(0x1c5)]('('+a0+b9(0x100))+'\x20\x20'+a0L[b9(0x1c5)](a4+'%'));const a5=a0a1();if(a5){const a6=Math[b9(0x1d4)](0x250d+-0x1c45*-0x1+-0x4152,Math[b9(0x101)]((a5[b9(0x36a)]()-Date['now']())/(-0x5*0x279+0x516+-0x199*-0x7))),a7=Math['floor'](a6/(0x901*0x1+0x19d3+-0x2298*0x1))+':'+String(a6%(-0x8*0x26c+0x94*0x32+-0x94c))[b9(0x31a)](-0x1f3*0x1+0x1777*-0x1+0x196c,'0'),a8=a6<=0x7e*-0x4e+-0x2663+-0x4d03*-0x1?a0L['red']['bold']:a6<=-0xa7b*0x2+0x18f9+-0x1*0x2d7?a0L[b9(0x287)]:a6<=-0x7*0x50b+-0xec*-0x1e+0x9fd?a0L[b9(0x18a)]:a0L[b9(0x1c5)];console[b9(0x121)]('\x20\x20'+a0L[b9(0x1c5)](b9(0x1f9))+'\x20'+a8(a7)+'\x20'+a0L[b9(0x1c5)](b9(0x25c)));}}(z['number'],G,H),F&&D(F,z['number'])&&console[b5(0x121)](a0L[b5(0x18a)]('\x20\x20★\x20Marked\x20for\x20review'));const Q=function(Y,Z){const ba=b5,a0={};a0[ba(0x2b3)]=0.2,a0[ba(0xf8)]=ba(0x12f),a0['key']='egg3';const a1={};a1[ba(0x2b3)]=0.33,a1[ba(0xf8)]='🐨',a1[ba(0x384)]=ba(0x17d);const a2={};a2['pct']=0.5,a2['emoji']='🌉',a2[ba(0x384)]='egg7';const a3={};a3[ba(0x2b3)]=0.6,a3[ba(0xf8)]='🦘',a3[ba(0x384)]=ba(0x13f);const a4={};a4[ba(0x2b3)]=0.8,a4['emoji']='🏖️',a4[ba(0x384)]=ba(0x117);const a5={};a5['pct']=0.87,a5[ba(0xf8)]='🦈',a5['key']=ba(0x2d9);const a6={};a6['pct']=0x1,a6[ba(0xf8)]='🎉',a6[ba(0x384)]='egg15';const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math['round'](a9[ba(0x2b3)]*Z);if(!(aa<0x1099*-0x1+0x1*-0x1d75+0x2e0f||a8[ba(0x3a6)](aa))&&(a8['add'](aa),Y===aa))return{'emoji':a9[ba(0xf8)],'text':a0ai(a9['key'])};}}(z['number'],G);if(Q&&console['log'](a0L['yellow']('\x20\x20'+Q[b5(0xf8)]+'\x20\x20'+Q[b5(0x259)])),console[b5(0x121)](),z[b5(0x122)]&&console['log'](a0L['cyan'](b5(0x3d5)+z[b5(0x122)]+']')),z[b5(0x3cc)]&&z[b5(0x3cc)]>-0x18bb+-0x698*0x1+-0x1*-0x1f55&&console[b5(0x121)](a0L[b5(0x2f9)]('\x20\x20['+z[b5(0x3cc)]+b5(0x2b2))),L){let Y=z[b5(0x277)]||z['text'];const Z=a0a2(z['number'],z['attachedData']);if(z[b5(0x1eb)]){const a1=/\([^()]*attachedData[^()]*\)/;a1[b5(0x2ca)](Y)?Y=Y[b5(0x3ae)](a1,z[b5(0x1eb)]):Y[b5(0x366)](z[b5(0x1eb)])||(Y=Y+b5(0x2e0)+z[b5(0x1eb)]);}console[b5(0x121)](a0L[b5(0x257)][b5(0x207)](b5(0x39e)+z[b5(0x2ba)]+'.\x20')+a0L['white'](Y['split']('\x0a')[0x2b9*-0x1+0x5bd+-0x1*0x304]));const a0=Y[b5(0x280)]('\x0a')[b5(0x301)](-0x1f56+0x181*-0xd+0x1972*0x2);for(const a2 of a0)console[b5(0x121)](a0L['white']('\x20\x20'+a2));if(console[b5(0x121)](),Z&&b5(0x17b)===z[b5(0x2fb)]){const a3=Z[b5(0x3ae)](process.env.HOME||'','~');console[b5(0x121)](a0L['cyan']('\x20\x20'+a0ai(b5(0x223))+'\x20')+a0L[b5(0x1c5)]('('+a0ai('examWaysSavedTo')+'\x20'+a3+'):')),console[b5(0x121)](a0L['white']('\x20\x20\x20\x20①\x20')+a0L[b5(0x18a)]('!<cmd>\x20'+a3)[b5(0x2f6)](-0xb*0xd6+0x22e4+0xcbf*-0x2)+a0L[b5(0x1c5)]('\x20'+a0ai(b5(0x286)))),console[b5(0x121)](a0L[b5(0x207)](b5(0x2f4))+a0L[b5(0x18a)](b5(0x1aa))[b5(0x2f6)](-0x25e7+0x1b1*-0x10+0x1*0x4117)+a0L[b5(0x1c5)]('\x20'+a0ai(b5(0x2ff)))),console[b5(0x121)](a0L[b5(0x207)]('\x20\x20\x20\x20③\x20')+a0L[b5(0x18a)](b5(0x191))+a0L[b5(0x1c5)](b5(0x3eb))+a0L[b5(0x18a)](b5(0x352))),console['log'](a0L[b5(0x207)](b5(0x30c))+a0L[b5(0x18a)](b5(0x11a))[b5(0x2f6)](-0x109e+0x1195*0x1+-0xd7)+a0L[b5(0x1c5)]('\x20'+a0ai(b5(0x2ed)))),console[b5(0x121)](a0L[b5(0x207)](b5(0x1ec))+a0L[b5(0x18a)](b5(0x17b))['padEnd'](0x5*0x5b1+-0x1c59+0x4)+a0L[b5(0x1c5)]('\x20'+a0ai('examWaysAi4ctf'))),console[b5(0x121)](),console[b5(0x121)](a0L[b5(0x1c5)]('\x20\x20'+a0ai(b5(0x1c2))+'\x20')+a0L[b5(0x257)]['green'](b5(0x1c8))),console['log']();}B&&(console[b5(0x121)](a0L[b5(0x150)](b5(0x29f)+B)),console['log']());}else{console['log'](a0L[b5(0x257)][b5(0x207)](b5(0x39e)+z['number']+'.\x20')+a0L[b5(0x207)](z[b5(0x259)])),console[b5(0x121)]();for(const a4 of['A','B','C','D']){const a5=B===a4;K['includes'](a4)?console[b5(0x121)](a0L[b5(0x1c5)][b5(0x1e9)](b5(0x158)+a4+'.\x20'+z['options'][a4])+a0L['red']('\x20('+a0ai(b5(0x327))+')')):a5?console[b5(0x121)](a0L[b5(0x150)][b5(0x257)]('\x20\x20▸\x20'+a4+'.\x20'+z[b5(0x250)][a4])):console[b5(0x121)](a0L[b5(0x1c5)](b5(0x158)+a4+'.')+'\x20'+a0L['white'](z[b5(0x250)][a4]));}console[b5(0x121)]();}const V=b5(0x17c)===F?.[b5(0x246)][b5(0x26f)],W=J[b5(0x160)][-0x7b9*0x3+-0xbbf+-0x3c*-0x95]||0x1*-0x752+-0x3fd+0xb4f;V&&-0x1d87*-0x1+0x606+-0x238b===z[b5(0x2ba)]&&-0x5*0x355+-0xf06*-0x1+-0x1a3*-0x1===W&&(console[b5(0x121)](a0L['yellow'][b5(0x257)]('\x20\x20'+a0ai(b5(0x2c7)))),console['log']());const X=J[b5(0x1d4)]-J[b5(0x3b1)];if(console['log'](a0L[b5(0x1c5)](b5(0x307))),L){const a6=F&&'demo-free'!==F[b5(0x246)][b5(0x26f)]&&z[b5(0x2ba)]>=0x12b*0xe+-0x3*0x673+0x326;F&&b5(0x17c)!==F[b5(0x246)]['examId']&&z[b5(0x2ba)]>=-0x997+0xdff*-0x2+-0xfe*-0x26&&z[b5(0x2ba)]<=-0x2133+-0x12d1*0x2+0x46fb*0x1?console['log'](a0L[b5(0x257)]['green'](b5(0x1f3))+a0L[b5(0x1c5)](b5(0x2ad))):a6&&console[b5(0x121)](a0L['bold'][b5(0x287)](b5(0x3dd))+a0L[b5(0x1c5)]('\x20\x20\x20\x20\x20\x20\x20\x20enter\x20CTF4AI\x20chat\x20—\x20attack\x20the\x20AI\x20target\x20(recommended)')),console[b5(0x121)](a0L['yellow'](b5(0x188))+a0L['gray'](b5(0x1cb))),console['log'](a0L[b5(0x18a)]('\x20\x20\x20\x20!python3')+a0L[b5(0x1c5)](b5(0x116)));}else{const a7=J['max']>=-0x94b+0x1f21+0x4*-0x56e,a8=X>0x3b3*0x1+0x3a9*0x1+-0x75c?a0L[b5(0x1c5)](a0ai(b5(0x39f))+'\x20')+a0L[b5(0x18a)]('('+X+'/'+J['max']+')'):a7?a0L['gray'](a0ai(b5(0x1b5))+'\x20('+J[b5(0x3b1)]+'/'+J[b5(0x1d4)]+')'):a0L['gray'](''+a0ai(b5(0x3e0)));console['log'](a0L[b5(0x18a)](b5(0x196))+a0L[b5(0x1c5)](b5(0x16e)+a0ai(b5(0x28c)))),console['log'](a0L[b5(0x18a)](b5(0x3e1))+b5(0x13b)+a8);}console[b5(0x121)](a0L[b5(0x18a)]('\x20\x20\x20\x20next')+a0L[b5(0x1c5)](b5(0x22b))+a0L['yellow'](b5(0x337))+a0L[b5(0x1c5)](b5(0x158)+a0ai(b5(0x18b)))),console['log'](a0L[b5(0x18a)](b5(0x270)+G)+a0L[b5(0x1c5)](b5(0x18e)+a0ai(b5(0x179)))),console[b5(0x121)](a0L[b5(0x18a)](b5(0x361))+a0L[b5(0x1c5)](b5(0x13b)+a0ai(b5(0x29d)))),console['log'](a0L[b5(0x18a)]('\x20\x20\x20\x20exam\x20review')+a0L[b5(0x1c5)]('\x20\x20\x20'+a0ai(b5(0x127)))),console['log'](a0L[b5(0x257)][b5(0x18a)](b5(0x34e))+a0L['gray'](b5(0x18e)+a0ai(b5(0x3dc)))),console['log'](a0L[b5(0x18a)]('\x20\x20\x20\x20back')+a0L[b5(0x1c5)](b5(0x13b)+a0ai('htpBack'))),console[b5(0x121)](a0L[b5(0x18a)](b5(0x345))+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b5(0x2b7)))),console[b5(0x121)](a0L[b5(0x1c5)](b5(0x307)));}export function registerExamCommand(z){const bb=a0B,B=z[bb(0x11e)](bb(0x1a2))[bb(0x277)](bb(0x24e));B[bb(0x11e)](bb(0x323))[bb(0x277)](bb(0x163))[bb(0x1d8)](()=>{const bc=bb;a0a8(bc(0x330)),console[bc(0x121)](),a0ae(bc(0x1fd)),console[bc(0x121)]();const F=[['AU',bc(0x201)],['BD',bc(0x33c)],['BI','Burundi'],['BR',bc(0x396)],['CN',bc(0x20c)],['DE',bc(0x26d)],['EG',bc(0x123)],['FR',bc(0x357)],['GH',bc(0x126)],['ID',bc(0x24a)],['IN',bc(0x177)],['JP','Japan'],['KR',bc(0xe4)],['LA',bc(0x243)],['LK',bc(0x377)],['MM','Myanmar'],['MO',bc(0x274)],['MY',bc(0x1a8)],['NZ',bc(0x319)],['PE',bc(0xfa)],['PH',bc(0x10a)],['RU','Russia'],['SA','Saudi\x20Arabia'],['SG',bc(0x149)],['TH',bc(0x359)],['TR','Turkey'],['US',bc(0xe9)],['UZ',bc(0x154)],['VN',bc(0x1bc)],['ZA','South\x20Africa']];for(let G=0x567*-0x3+0x1907+-0x8d2;G<F[bc(0x2d4)];G+=-0xdd8+0x7*-0x178+0x1823){const H=F[bc(0x301)](G,G+(0x5*0x103+-0x20*0x27+0x2c*-0x1))['map'](([J,K])=>'\x20\x20'+a0L[bc(0x2f9)](J)+'\x20\x20'+a0L[bc(0x1c5)](K[bc(0x2f6)](-0x3a1+0x1780+-0x13cf)))[bc(0x107)]('');console['log'](H);}console[bc(0x121)](),console['log'](a0L[bc(0x1c5)]('\x20\x2040+\x20countries\x20and\x20regions\x20represented')),console[bc(0x121)](a0L[bc(0x1c5)]('\x20\x20New\x20member?\x20Contact:\x20accreditation@icoa2026.au')),console[bc(0x121)](),console[bc(0x121)](a0L[bc(0x207)](bc(0x305))),console[bc(0x121)](a0L[bc(0x2f9)](bc(0x254))+a0L[bc(0x1c5)]('\x20\x20\x20\x20\x20exam\x20list\x20PE')+a0L[bc(0x1c5)](bc(0x2bd))),console['log']();}),B[bb(0x11e)](bb(0x2b6))[bb(0x277)](bb(0x139))['action'](async F=>{const bd=bb;a0a8('exam\x20list\x20'+(F||''));const G=M();if(!G)return;const H=a0ag(bd(0x3d4));H[bd(0x28b)]();try{let J=await G[bd(0x1ba)]();if(H[bd(0x381)](),F){const Q=F[bd(0xfd)]();J=J['filter'](V=>V[bd(0xf0)]['toUpperCase']()===Q||bd(0x118)===V[bd(0xf0)]);}if(!J||0x207f+-0x82*-0x4a+-0x4613===J[bd(0x2d4)]){console[bd(0x121)](),a0ac(F?bd(0x12c)+F['toUpperCase']()+'\x20yet.':bd(0xf4)),console[bd(0x121)](),console['log'](a0L[bd(0x207)](bd(0x3b5))),console[bd(0x121)](a0L['gray'](bd(0x35c))),console['log'](),console[bd(0x121)](a0L[bd(0x1c5)](bd(0x326))+a0L[bd(0x257)][bd(0x2f9)]('demo')),console[bd(0x121)]();const V={};V['PE']='es',V['CN']='zh',V['JP']='ja',V['KR']='ko',V['BR']='pt',V['SA']='ar',V['FR']='fr',V['DE']='de',V['IN']='hi',V['ID']='id',V['TH']='th',V['VN']='vi',V['TR']='tr',V['RU']='ru',V['UA']='uk',V['HT']='ht',V['KE']='sw',V['TZ']='sw';const W=V,X=(F||'')['toUpperCase']();return void(W[X]&&(console[bd(0x121)](a0L[bd(0x1c5)]('\x20\x20Tip:\x20switch\x20to\x20your\x20language\x20with:\x20lang\x20'+W[X])),console['log']()));}const K=J[bd(0x3b3)](Y=>{const be=bd,Z='submitted'===Y[be(0x30f)]?a0L['green']:'in_progress'===Y[be(0x30f)]?a0L[be(0x18a)]:a0L[be(0x207)];return[a0L[be(0x207)](Y['id']),Y[be(0x193)],a0L[be(0x2f9)](Y[be(0xf0)]),String(Y['questionCount']),Y[be(0x336)]+be(0x312),Z(Y['status'])];}),L=[...new Set(J[bd(0x3b3)](Y=>Y[bd(0xf0)]))];a0ae(F?bd(0xe5)+F[bd(0xfd)]():bd(0x181)+L['length']+bd(0x25b)),a0ad(['ID',bd(0x38b),'Country',bd(0x1ab),bd(0x10d),bd(0x334)],K),console[bd(0x121)](),console[bd(0x121)](a0L[bd(0x1c5)](bd(0xe7))),L['length']>0x1379*-0x1+0x94d+0xa2d&&console[bd(0x121)](a0L[bd(0x1c5)](bd(0x206)));}catch(Y){H[bd(0x2c0)]('Failed\x20to\x20load\x20exams'),a0aa(Y['message']);}}),B[bb(0x11e)](bb(0x31f))[bb(0x277)](bb(0x34b))['action'](async F=>{const bf=bb;a0a8('exam\x20start\x20'+F);const G=a0Y();if(G)return a0ab(bf(0x1e8)+G[bf(0x246)]['examName']+'\x22\x20is\x20already\x20in\x20progress.'),void a0ac(bf(0x39d));const H=M();if(!H)return;const J=await a0Q({'message':a0L['white']('Start\x20the\x20exam?\x20The\x20timer\x20will\x20begin\x20immediately.'),'default':!(0x764+-0x2592+0x1e2e),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L[bf(0x150)](K)}}});if(J){console[bf(0x121)]();try{N(0xf25*-0x1+-0x6d7*0x3+0x23aa,'Connecting\x20to\x20exam\x20server...');const {session:K,questions:L}=await H[bf(0x3cf)](F);N(-0xf30+-0x3d9*-0x2+0x79c,'Loading\x20questions...'),await q(0xaad*0x3+0xcd6+-0x2c15),N(0x187b+0x17*0x167+0x1c4*-0x20,bf(0x256)),await q(0xc57+0x49+-0xbd8),N(0x23*0xe9+-0xc22+0x13*-0x105,'Starting\x20timer...'),await q(0x12a+0x2c5+0x359*-0x1),a0Z({'session':K,'questions':L,'answers':{}}),N(-0x1b22+-0x192a+0x34b0,'Ready!'),console[bf(0x121)](),console[bf(0x121)](),a0ae(K[bf(0x1b3)]),a0af(bf(0x1ab),String(K['questionCount'])),a0af(bf(0x10d),K[bf(0x336)]+bf(0x351)),a0af('Country',K['country']),O(),L[bf(0x2d4)]>-0x1b23+-0x1*-0x1073+0xab0&&U(L[-0x1263+-0x1d8c+0x1*0x2fef]);}catch(Q){console['log'](),a0aa(Q['message']);}}}),B[bb(0x11e)](bb(0x2c3))[bb(0x277)](bb(0x2b5))[bb(0x1d8)](async F=>{const bg=bb;a0a8(bg(0x1bd)+(F||bg(0x1db)));const {refetchQuestionDataIfStale:G}=await import('../lib/exam-state.js');await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,0x1*0x1d41+-0x15*0xd+-0xe13*0x2),K=H['questions'][bg(0x225)](L=>L['number']===J);if(!K)return void a0aa('Question\x20'+F+bg(0x39a)+H[bg(0x2c2)][bg(0x2d4)]+').');H[bg(0x1d3)]=J,a0Z(H),U(K,H[bg(0x35b)][J]);}else{a0ae(''+H['session']['examName']);const L=Object[bg(0x2a9)](H['answers'])[bg(0x2d4)];a0af(bg(0x32a),L+'/'+H['session'][bg(0x183)]+bg(0x320)),console['log']();for(const Q of H[bg(0x2c2)]){const V=H[bg(0x35b)][Q[bg(0x2ba)]],W=V?a0L[bg(0x150)]('['+V+']'):a0L['gray'](bg(0x1b8)),X=Q[bg(0x122)]?a0L[bg(0x1c5)]('\x20['+Q[bg(0x122)]+']'):'';console[bg(0x121)]('\x20\x20'+W+'\x20'+a0L[bg(0x207)]('Q'+Q[bg(0x2ba)])+X+'\x20'+a0L[bg(0x1c5)](Q[bg(0x259)]['substring'](0x383*-0xb+-0x107*-0xd+0x1946,0x3b5+0x2467+-0xe8*0x2c))+(Q[bg(0x259)]['length']>-0x3af*0x3+-0xba*0x22+0xbff*0x3?bg(0x2b4):''));}console[bg(0x121)]();}}else a0aa(bg(0x1fb));}),B['command'](bb(0x1a7))[bb(0x277)]('Flag\x20a\x20question\x20to\x20review\x20later\x20(toggles)')['action'](F=>{const bh=bb;a0a8(bh(0x294)+(F||''));const G=a0Y();if(!G)return void a0aa(bh(0x111));const H=G[bh(0x2c2)][bh(0x2d4)],J=F?parseInt(F,0x774+0x3f0+-0xb5a):G[bh(0x1d3)]||0x877+0xc16+-0x148c;if(Number[bh(0x138)](J)||J<0xb6c+0x97*0x5+-0xe5e||J>H)return void a0aa(bh(0x23d)+H+'.');const K=j(G,J);console['log'](),K?console[bh(0x121)](a0L[bh(0x18a)](bh(0x33f)+J+bh(0x368))):console[bh(0x121)](a0L['gray'](bh(0x3b7)+J+bh(0x2ee)));const L=Array[bh(0x3c1)](G[bh(0x192)])?G[bh(0x192)]:[];L[bh(0x2d4)]>0xf1*0x13+-0x1*-0x2089+-0x1c*0x1cd&&console['log'](a0L[bh(0x1c5)](bh(0x1d2)+L['map'](Q=>'Q'+Q)[bh(0x107)](',\x20'))),console[bh(0x121)](a0L['gray']('\x20\x20See\x20all\x20flagged\x20questions\x20in:\x20')+a0L[bh(0x207)](bh(0x386))),console[bh(0x121)]();}),B[bb(0x11e)]('unmark\x20[n]')[bb(0x277)](bb(0x27f))['action'](F=>{const bi=bb;a0a8(bi(0x2e8)+(F||''));const G=a0Y();if(!G)return void a0aa(bi(0x111));const H=G['questions'][bi(0x2d4)],J=F?parseInt(F,0xc04+-0x6*0xf9+-0x624):G[bi(0x1d3)]||-0x109+0x5*0x3b3+-0x1175;Number[bi(0x138)](J)||J<-0x8f*-0x43+-0xc4d*0x2+-0xcd2||J>H?a0aa(bi(0x23d)+H+'.'):D(G,J)?(j(G,J),console[bi(0x121)](),console[bi(0x121)](a0L[bi(0x1c5)]('\x20\x20☆\x20Q'+J+bi(0x2ee))),console['log']()):console[bi(0x121)](a0L['gray'](bi(0x39e)+J+bi(0x16d)));}),B[bb(0x11e)]('next')[bb(0x277)](bb(0x113))[bb(0x1d8)](()=>{const bj=bb;a0a8(bj(0x2da));const F=a0Y();if(!F)return void a0aa(bj(0x111));F[bj(0x2c2)]['findIndex'](K=>!F[bj(0x35b)][K[bj(0x2ba)]]);const G=F[bj(0x1d3)]||0xbdb+-0x7*0x5+-0xbb7,H=Math[bj(0x202)](G+(0x202f+0x12ea+-0x3318),F[bj(0x2c2)]['length']);F[bj(0x1d3)]=H,a0Z(F);const J=F[bj(0x2c2)][H-(-0x913+-0x1c74+-0x4*-0x962)];U(J,F[bj(0x35b)][J[bj(0x2ba)]]);}),B[bb(0x11e)](bb(0x337))['description'](bb(0x317))['action'](()=>{const bk=bb;a0a8(bk(0x370));const F=a0Y();if(!F)return void a0aa(bk(0x111));const G=F[bk(0x1d3)]||0x2296+0xcbe*0x2+-0x3c11*0x1,H=Math[bk(0x1d4)](G-(-0x19d2+-0x1*0x94b+-0x231e*-0x1),0xfa9+-0x19ac+0xa04);F[bk(0x1d3)]=H,a0Z(F);const J=F[bk(0x2c2)][H-(0x234f+0x17f6+-0x1da2*0x2)];U(J,F[bk(0x35b)][J[bk(0x2ba)]]);}),B[bb(0x11e)](bb(0x3ea))[bb(0x277)](bb(0x1ca))[bb(0x1d8)](async()=>{const bl=bb;a0a8(bl(0x1be));const F=a0Y();if(!F)return void a0aa('No\x20exam\x20in\x20progress.');const G=R(F),H=F[bl(0x1d3)]||-0x1a39*0x1+0x1307+-0x1*-0x733,J=G['perQ'][H]||-0x33+0xd8d+-0xd5a*0x1,K=G['eliminated'][H]||[],L=F[bl(0x2c2)][bl(0x225)](W=>W[bl(0x2ba)]===H);if(!L)return;if(J>=0x1*-0xb53+-0xb*-0x1e9+-0x9ae)return console[bl(0x121)](),console[bl(0x121)](a0L[bl(0x18a)](bl(0x39b))),console[bl(0x121)](a0L[bl(0x1c5)](bl(0x178))),console[bl(0x121)](),void U(L,F[bl(0x35b)][L[bl(0x2ba)]]);const Q=['A','B','C','D'][bl(0xfc)](W=>!K[bl(0x366)](W));if(Q[bl(0x2d4)]<=-0x1*-0x1933+0x1*0x230b+-0x6*0xa0a)return console[bl(0x121)](),console['log'](a0L['yellow']('\x20\x20😄\x20Only\x202\x20options\x20left\x20—\x20you\x20got\x20this!')),console['log'](),void U(L,F[bl(0x35b)][L[bl(0x2ba)]]);if(G['used']>=G[bl(0x1d4)]){const W=G['max']>=-0x355*0x7+0xf25+0x84c,X=-0x22e3+0x1b2a+0x7d7-G[bl(0x1d4)];return void(W?(console[bl(0x121)](),console['log'](a0L['gray'](bl(0x3e4)+G[bl(0x3b1)]+'/'+G['max']+bl(0x1f6))),console['log']()):(console['log'](),console['log'](a0L[bl(0x18a)](bl(0x3ac)+G['used']+'/'+G[bl(0x1d4)])),console[bl(0x121)](a0L['white'](bl(0x1f8))+a0L[bl(0x257)][bl(0x18a)](bl(0x19a))+a0L[bl(0x1c5)](bl(0x1a5)+X+'\x20bonus\x20uses)')),console[bl(0x121)]()));}const V=Y=>{const bm=bl;K[bm(0x25d)](Y),G[bm(0x1d0)][H]||(G[bm(0x1d0)][H]=[]),G['eliminated'][H]=K,G[bm(0x160)][H]=J+(-0x1c3c+-0x1fff+0xf0f*0x4),G[bm(0x3b1)]++,F[bm(0x365)]=G[bm(0x3b1)],F['_helpMax']=G[bm(0x1d4)],F[bm(0x1d1)]=G['perQ'],F['_eliminated']=G[bm(0x1d0)],F[bm(0x346)]||(F[bm(0x346)]=[]),F[bm(0x346)][bm(0x25d)]({'ts':new Date()[bm(0x240)](),'q':H,'type':'help_used','result':bm(0x16a)+Y}),a0Z(F),console[bm(0x121)](),console['log'](a0L['yellow'](bm(0x321)+Y+bm(0x343))+a0L['gray'](bm(0x231)+G['used']+'/'+G['max']+')')),U(L,F[bm(0x35b)][L[bm(0x2ba)]]);};if(bl(0x17c)===F[bl(0x246)]['examId']&&L[bl(0x32f)])(Y=>{const bn=bl,Z=Q['filter'](a0=>a0!==Y&&!K[bn(0x366)](a0));-0x3ae+-0x8be+0xc6c!==Z[bn(0x2d4)]&&V(Z[Math[bn(0x311)](Math[bn(0x227)]()*Z['length'])]);})(L[bl(0x32f)]);else{const Y=a0W()['ctfdUrl']||bl(0x135),Z=F[bl(0x246)]?.['token']||'';try{const a0={};a0['Content-Type']=bl(0x2f1),a0[bl(0x140)]=bl(0x156);const a1={};a1[bl(0x167)]=Z,a1[bl(0x37a)]=H,a1[bl(0x1d0)]=K;const a2=await fetch(Y+bl(0x333)+F[bl(0x246)][bl(0x26f)]+bl(0x27c),{'method':bl(0x1b2),'headers':a0,'body':JSON[bl(0x170)](a1),'signal':AbortSignal[bl(0x19b)](-0x735+0x2*0x58a+0xfa9*0x1)}),a3=await a2[bl(0x34a)](),a4=a3?.[bl(0x1f2)]?.[bl(0x20b)];a4&&['A','B','C','D'][bl(0x366)](a4)?V(a4):(console[bl(0x121)](),console['log'](a0L[bl(0x1c5)](bl(0x32d))));}catch{console[bl(0x121)](),console[bl(0x121)](a0L[bl(0x1c5)](bl(0x362)));}}}),B['command'](bb(0x216))[bb(0x277)](bb(0x255))[bb(0x1d8)](()=>{const bo=bb;a0a8(bo(0x12a));const F=a0Y();if(!F)return void a0aa(bo(0x111));const G=R(F),H=bo(0x17c)===F[bo(0x246)][bo(0x26f)]?0x5e*-0x26+-0x21c5+-0x5*-0x98d:0x2352+-0x6a*-0x28+0xcf1*-0x4;if(G[bo(0x1d4)]>=H)return void console[bo(0x121)](a0L[bo(0x1c5)](bo(0x2c5)));if(G['used']<G[bo(0x1d4)])return void console[bo(0x121)](a0L[bo(0x1c5)]('\x20\x20You\x20still\x20have\x20'+(G[bo(0x1d4)]-G[bo(0x3b1)])+bo(0x358)));const J=H-G[bo(0x1d4)];F['_helpMax']=H,a0Z(F),console[bo(0x121)](),console[bo(0x121)](a0L['green'](bo(0x137)+J+'\x20bonus\x20help\x20unlocked!\x20('+J+'/'+H+'\x20remaining)')),console['log'](a0L[bo(0x1c5)](bo(0x1ea))),console[bo(0x121)]();}),B[bb(0x11e)](bb(0x3e7))[bb(0x277)](bb(0x109))['action'](async(F,G)=>{const bp=bb,H=G[bp(0x107)]('\x20');a0a8(bp(0x16b)+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 bq=bp,Z=a0a1();if(!Z)return!(0xaa*-0x17+0x16f0+0x2*-0x3d5);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object[bq(0x2a9)](a0[bq(0x35b)])['length'];bq(0x17c)===a0['session'][bq(0x26f)]||0x1d11+0x34f*0x8+-0x3789===a1?(a0a0(),a0ab(bq(0x37f)),a0ac(bq(0x3bc))):(a0aa('Time\x20expired.'),a0ac(bq(0xea)));}return!(-0x1029*0x1+0x1807+-0xb7*0xb);}return!(0x6c7+0x1da3*0x1+-0x246a);}()))return;const K=parseInt(F,-0xec5+-0x1819*-0x1+-0x1d*0x52),L=J[bp(0x2c2)][bp(0x225)](Z=>Z[bp(0x2ba)]===K);if(!L)return void a0aa(bp(0x14e)+F+'\x20not\x20found\x20(1-'+J[bp(0x2c2)][bp(0x2d4)]+').');let Q;if(bp(0x17b)===L[bp(0x2fb)]||bp(0x299)===L['type']||L[bp(0x250)]&&!L[bp(0x250)]['A']&&!L[bp(0x250)]['B']){if(Q=H[bp(0x282)](),!Q)return void a0aa(bp(0x105));if(/^[A-Da-d]$/[bp(0x2ca)](Q))return a0aa('Q'+K+bp(0x37d)),void console[bp(0x121)](a0L[bp(0x1c5)]('\x20\x20Example:\x20')+a0L[bp(0x150)](bp(0x16b)+K+'\x20ICOA{your_flag}'));}else{if(Q=H[bp(0xfd)](),!['A','B','C','D'][bp(0x366)](Q))return void a0aa(bp(0x190));}if('demo-free'===J[bp(0x246)][bp(0x26f)]&&0xf2f*-0x1+0xa3*-0x1d+0xc*0x2ce===K&&0x139*0xb+0x503*-0x1+-0x870===(R(J)[bp(0x160)][-0x14d3+0x134d+-0x1c*-0xe]||-0x1*-0x1547+-0xb*-0x95+0x93a*-0x3))return console[bp(0x121)](),console[bp(0x121)](a0L[bp(0x18a)](bp(0x1f0))+a0L['bold'][bp(0x18a)](bp(0x3ea))+a0L[bp(0x18a)](bp(0x119))),console['log'](a0L['gray'](bp(0x3b9))),void console[bp(0x121)]();const V=J[bp(0x35b)][K];J['interactions']||(J[bp(0x346)]=[]),J[bp(0x346)][bp(0x25d)]({'ts':new Date()[bp(0x240)](),'q':K,'type':V?bp(0x36f):'answer_submitted','input':Q,'result':V?'changed\x20from\x20'+V:bp(0x322)}),J[bp(0x35b)][K]=Q,J[bp(0x1d3)]=K,a0Z(J),console['log'](a0L['gray'](bp(0x239)));const W=J[bp(0x246)]['token'];if(W&&bp(0x17c)!==J[bp(0x246)][bp(0x26f)]){const Z=(a0W()[bp(0x2e9)]||bp(0x135))+bp(0x333)+J[bp(0x246)][bp(0x26f)]+'/answer',a0={};a0[bp(0x318)]=bp(0x2f1);const a1={};a1[bp(0x167)]=W,a1[bp(0x37a)]=K,a1[bp(0x32f)]=Q,fetch(Z,{'method':bp(0x1b2),'headers':a0,'body':JSON[bp(0x170)](a1),'signal':AbortSignal[bp(0x19b)](0x2591*-0x1+0xa0f+0x2f0a)})[bp(0x2cb)](()=>{});}const X=Object[bp(0x2a9)](J['answers'])[bp(0x2d4)],Y=J[bp(0x246)][bp(0x183)];if(a0a9('Q'+K+':\x20'+Q+bp(0x2aa)+X+'/'+Y+'\x20answered)'),bp(0x17c)===J[bp(0x246)][bp(0x26f)]&&L[bp(0x32f)]){const a2=[bp(0x233),bp(0x3d2),bp(0x10c),bp(0x153),bp(0x3ad)],a3=['Close\x20—\x20we\x27ll\x20revisit\x20this\x20one.',bp(0x309),bp(0x144)],a4=Q===L[bp(0x32f)]?a2:a3,a5=a4[Math['floor'](Math[bp(0x227)]()*a4[bp(0x2d4)])];console[bp(0x121)](a0L[bp(0x1c5)](bp(0x211)+a5));}if(K<J[bp(0x2c2)]['length']){const a6=J['questions'][K];J[bp(0x1d3)]=a6[bp(0x2ba)],a0Z(J),U(a6,J[bp(0x35b)][a6['number']]);}else X>=J[bp(0x2c2)][bp(0x2d4)]&&(console[bp(0x121)](),console[bp(0x121)](a0L[bp(0x150)][bp(0x257)](bp(0x253))),console[bp(0x121)](),bp(0x17c)===J['session'][bp(0x26f)]?(console[bp(0x121)](a0L[bp(0x207)](bp(0x313))+a0L[bp(0x257)]['cyan']('exam\x20submit')+a0L[bp(0x207)]('\x20to\x20see\x20your\x20results!')),console['log']()):console[bp(0x121)](a0L[bp(0x207)](bp(0x376))));}),B['command']('review')['description'](bb(0x3c5))['action'](()=>{const br=bb;a0a8(br(0x386));const F=a0Y();if(!F)return void a0aa(br(0x111));a0ae('Review:\x20'+F[br(0x246)]['examName']),O(),console[br(0x121)]();let G='\x20\x20';const H=Array[br(0x3c1)](F['bookmarks'])?F[br(0x192)]:[];for(const Q of F['questions']){const V=F[br(0x35b)][Q[br(0x2ba)]],W=H['includes'](Q[br(0x2ba)]),X=W?'★':'\x20';G+=V?W?a0L['bold'][br(0x18a)]('Q'+String(Q[br(0x2ba)])[br(0x31a)](0x1*0x30b+-0x1779+0x1470)+X+'['+V+']\x20'):a0L[br(0x150)]('Q'+String(Q[br(0x2ba)])[br(0x31a)](-0x1*0x13d+0xb*-0x1e2+-0x49*-0x4d)+'\x20['+V+br(0x1a1)):W?a0L[br(0x257)][br(0x18a)]('Q'+String(Q['number'])[br(0x31a)](-0xdd+0x1*0x229b+-0x21bc)+X+br(0x273)):a0L['yellow']('Q'+String(Q[br(0x2ba)])['padStart'](0x98d+0x186b+-0x21f6)+br(0x2cc)),Q[br(0x2ba)]%(0x1*-0x1003+0x1*0x1c6+0x3*0x4c1)==-0x37*-0x44+-0x8f*-0x35+-0x2c37&&(console[br(0x121)](G),G='\x20\x20');}G['trim']()&&console[br(0x121)](G);const J=Object[br(0x2a9)](F[br(0x35b)])[br(0x2d4)],K=F[br(0x246)][br(0x183)],L=K-J;if(console[br(0x121)](),a0af(br(0x15c),a0L[br(0x150)]['bold'](J+'/'+K)),L>-0x1738+-0x168b+0x2dc3){const Y=F[br(0x2c2)][br(0xfc)](Z=>!F[br(0x35b)][Z[br(0x2ba)]])[br(0x3b3)](Z=>Z['number'])['join'](',\x20');a0af('Unanswered',a0L[br(0x18a)](L+br(0x13c)+Y+')'));}H[br(0x2d4)]>0x2521+0x4*-0x279+-0x1b3d&&a0af(br(0x23c),a0L[br(0x257)][br(0x18a)]('★\x20'+H[br(0x2d4)])+a0L[br(0x1c5)]('\x20('+H[br(0x3b3)](Z=>'Q'+Z)[br(0x107)](',\x20')+')')),console['log'](),H[br(0x2d4)]>-0x3*-0x62c+0x18*0x18d+-0x37bc&&console[br(0x121)](a0L[br(0x1c5)]('\x20\x20Jump\x20to\x20a\x20flagged\x20question:\x20')+a0L[br(0x207)](br(0x1bd)+H[0x42c+0x1246+-0x1672])),console[br(0x121)](a0L[br(0x1c5)](br(0x245))+a0L[br(0x257)]['cyan'](br(0x363))+a0L[br(0x1c5)]('\x20to\x20submit\x20for\x20grading.'));}),B['command'](bb(0x2c9))[bb(0x277)](bb(0x19c))[bb(0x1d8)](async J=>{const bs=bb;a0a8(bs(0x3e5)+(J||''));const K=a0Y();if(K&&'confirm'===J&&(K[bs(0x241)]=!(0xe5+-0xf61+0xe7c),a0Z(K)),!K)return void a0aa(bs(0x111));const L=Object[bs(0x2a9)](K['answers'])['length'],Q=K[bs(0x246)]['questionCount'],V=Q-L;if(-0x4f7+-0x2*0xc86+0x1e03===L){const X=a0a1(),Y=X&&new Date()>=X;return void('demo-free'===K[bs(0x246)][bs(0x26f)]||Y?(a0a0(),a0ab(bs(0x247)),a0ac(bs(0x3bc))):(a0ab(bs(0x237)),a0ac(bs(0x339))));}if(bs(0x17c)!==K[bs(0x246)][bs(0x26f)]){const Z=!(-0x2*-0x4bd+-0x1231*0x2+-0x52*-0x54)===K[bs(0x241)],a0=a0a1(),a1=!!(a0&&new Date()>=a0);if(!Z&&!a1){if(console['log'](),console['log'](a0L[bs(0x287)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bs(0x121)](a0L[bs(0x257)][bs(0x287)](bs(0x171))),console[bs(0x121)](a0L[bs(0x287)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x207)](bs(0xf7)+a0L[bs(0x257)][bs(0x150)](L+'/'+Q)+'\x20answers.')),V>0x25a4+-0x10*0x10d+-0x7c*0x2b){const a3=K[bs(0x2c2)][bs(0xfc)](a4=>!K[bs(0x35b)][a4[bs(0x2ba)]])[bs(0x3b3)](a4=>'Q'+a4[bs(0x2ba)])['join'](',\x20');console[bs(0x121)](a0L[bs(0x18a)]('\x20\x20'+V+bs(0x18f)+a3));}const a2=Array[bs(0x3c1)](K[bs(0x192)])?K['bookmarks']:[];return a2[bs(0x2d4)]>0x1c5c+-0x255e+0x481*0x2&&console[bs(0x121)](a0L[bs(0x18a)](bs(0x12e)+a2[bs(0x2d4)]+bs(0x205)+a2[bs(0x3b3)](a4=>'Q'+a4)[bs(0x107)](',\x20'))),console[bs(0x121)](),console['log'](a0L[bs(0x207)](bs(0x230))+a0L[bs(0x257)][bs(0x287)](bs(0x3a5))+a0L['white'](bs(0x2b8))),console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x257)][bs(0x207)](bs(0x340))+a0L[bs(0x257)][bs(0x2f9)](bs(0x24b))),console['log'](a0L[bs(0x207)](bs(0x37c))+a0L[bs(0x2f9)](bs(0x386))+a0L[bs(0x1c5)](bs(0x1e3))+a0L[bs(0x2f9)]('back')),void console[bs(0x121)]();}Z&&(delete K[bs(0x241)],a0Z(K));}if(console['log'](),bs(0x17c)===K['session']['examId']){try{N(-0x32*-0x4c+0x1*0x10c1+0x1*-0x1f99,a0ai(bs(0x367))),await q(-0x55b+-0x1*-0x15a7+-0xf20);let a4=-0x1*-0x13c1+0x1d48+-0x3109;const a5=[],a6={};for(const ai of K[bs(0x2c2)]){const aj=ai[bs(0x122)]||'Other',ak={};ak['correct']=0x0,ak['total']=0x0,(a6[aj]||(a6[aj]=ak),a6[aj][bs(0x271)]++);const al=K[bs(0x35b)][ai['number']];al&&ai['answer']&&al===ai['answer']?(a4++,a6[aj][bs(0x235)]++):a5[bs(0x25d)](ai[bs(0x2ba)]);}a5[bs(0x2a2)]((am,an)=>am-an),N(0x1f00+0x154d*-0x1+-0x94f,a0ai(bs(0xe8))),console[bs(0x121)]();const a7=new Date(K[bs(0x246)]['startedAt'])[bs(0x36a)](),a8=Math[bs(0x1d4)](-0x63f+-0x239f+0x29de*0x1,Math[bs(0x101)]((Date['now']()-a7)/(0x817*0x2+0x8b3+-0x14f9))),a9=Math[bs(0x311)](a8/(-0x17*-0xd+0x1*0x12bb+-0x13aa))+'m\x20'+a8%(-0x14a1+-0x4*0x1d0+0x1*0x1c1d)+'s',aa=[...K[bs(0x2c2)]],ab={...K[bs(0x35b)]},ac=R(K);a0a0();const ad=Math[bs(0x101)](a4/Q*(-0x1f*-0x45+-0x1971+0x117a)),ae=a0W(),af={};af[bs(0x318)]='application/json',(fetch(bs(0x392),{'method':bs(0x1b2),'headers':af,'body':JSON[bs(0x170)]({'type':bs(0x26a),'score':a4,'total':Q,'lang':ae[bs(0x10e)]||'en','help_used':ac[bs(0x3b1)],'help_max':ac[bs(0x1d4)],'tokens_used':0x0,'solved':ad>=0x155a+0x1e26+-0x3344?0x1ac4+-0x1051+-0xa72:-0xf74*0x1+0x1*-0x1844+-0x7c*-0x52,'timestamp':new Date()[bs(0x240)](),'interactions':K['interactions']||[]}),'signal':AbortSignal[bs(0x19b)](0x23a4+0x12ee+0x1a*-0x159)})[bs(0x2cb)](()=>{}),console[bs(0x121)](),console['log'](a0L[bs(0x2f9)](bs(0x360))),console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x257)][bs(0x207)](bs(0x36c))),console[bs(0x121)](a0L[bs(0x257)][bs(0x207)](bs(0x146))),console[bs(0x121)](a0L['bold'][bs(0x207)](bs(0x2ec))),console[bs(0x121)](a0L[bs(0x257)][bs(0x207)](bs(0x383))),console[bs(0x121)](a0L[bs(0x257)][bs(0x207)](bs(0x2e7))),console[bs(0x121)](a0L['bold'][bs(0x207)](bs(0x27e))),console['log'](),console[bs(0x121)](a0L[bs(0x257)](bs(0x18e)+a0ai(bs(0x1e5))+':\x20'+a4+'/'+Q+'\x20('+ad+'%)')),console[bs(0x121)](a0L[bs(0x257)](bs(0x18e)+(ad>=-0x2209+0x5*0xa+0x2213?a0L[bs(0x150)](a0ai(bs(0x30b))):a0L[bs(0x287)](a0ai(bs(0x291)))))),console[bs(0x121)](a0L[bs(0x1c5)](bs(0x2ef)+a9)),console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x18a)]('\x20\x20\x20International\x20Cyber\x20Olympiad\x20in\x20AI\x202026')),console[bs(0x121)](a0L[bs(0x1c5)]('\x20\x20\x20Sydney,\x20Australia\x20·\x20Jun\x2027\x20-\x20Jul\x202,\x202026')),console['log'](),console['log'](a0L[bs(0x2f9)](bs(0x360))),await q(-0x11e1+0x1fd3+-0x2*0x11d));const ag=Object['entries'](a6);if(ag[bs(0x2d4)]>0x169c+-0x191*-0x5+0x1e71*-0x1){console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x257)]['white']('\x20\x20By\x20category'));const am=0x6c7*0x3+-0x1d52+0x907;for(const [an,ao]of ag){const ap=ao[bs(0x271)]>-0x369*0x4+-0x1751+0x24f5*0x1?Math[bs(0x101)](ao[bs(0x235)]/ao['total']*(0x1d*0x133+-0x21ad+-0xb6)):-0x1*0x1444+0x1b94+0x1d4*-0x4,aq=ao['total']>-0x175d+-0xe96+0x25f3?Math[bs(0x101)](ao[bs(0x235)]/ao['total']*am):-0x66a+-0xfc+0x2*0x3b3,ar=am-aq,as=ap>=-0x7c4*-0x3+0x99*-0xc+-0xfd0?a0L['green']:ap>=0x147a+-0x119b+-0x2ad*0x1?a0L[bs(0x18a)]:a0L[bs(0x287)],at=as('█'['repeat'](aq))+a0L[bs(0x1c5)]('░'['repeat'](ar));console[bs(0x121)](bs(0x158)+a0L[bs(0x207)](an[bs(0x2f6)](0x12ec*0x2+-0x697*0x3+-0x1*0x11ff))+'\x20'+at+'\x20\x20'+as(ao[bs(0x235)]+'/'+ao[bs(0x271)])+a0L[bs(0x1c5)]('\x20('+ap+'%)'));}console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x2f9)](bs(0x31d)));}const ah=a0a4(a4,Q);if(a4===ah[bs(0x11f)]&&ah[bs(0x292)]>-0xe4a+0x2644+0x1*-0x17f9&&a4>-0x26d2+0x2135+0x59d*0x1&&(console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x257)]['green'](bs(0x14c)))),a5[bs(0x2d4)]>0x24fb*-0x1+-0x647*0x3+0x37d*0x10){const au=aa[bs(0xfc)](av=>a5[bs(0x366)](av['number']))[bs(0x3b3)](av=>({...av}));a0a5(au);}else a0a7();if(await q(-0x124b+0x221a+-0x417),a5[bs(0x2d4)]>-0x1a2+-0x4*0x3bd+0x1096){console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x18a)]('\x20\x20'+a5['length']+'\x20'+a0ai(bs(0x25a)))),console[bs(0x121)]();for(const av of a5){const aw=aa[bs(0x225)](az=>az[bs(0x2ba)]===av);if(!aw)continue;const ax=ab[av],ay=aw['answer'];console[bs(0x121)](a0L[bs(0x207)](bs(0x39e)+av+'.\x20'+aw['text'])),ax?console['log'](a0L[bs(0x287)](bs(0x158)+a0ai('yourAnswer')+':\x20'+ax+'.\x20'+aw[bs(0x250)][ax])):console[bs(0x121)](a0L[bs(0x18a)](bs(0x158)+a0ai('yourAnswer')+bs(0x34f))),ay&&console[bs(0x121)](a0L[bs(0x150)](bs(0x158)+a0ai(bs(0x235))+':\x20'+ay+'.\x20'+aw[bs(0x250)][ay])),aw['explanation']&&console['log'](a0L[bs(0x1c5)](bs(0x2c8)+aw[bs(0x3c6)])),console['log']();}}else console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x150)]('\x20\x20'+a0ai('perfectScore')));await q(0x1a9e*0x1+-0x59b*-0x2+-0x1e04),console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x2f9)](bs(0x31d))),console['log'](a0L['white']('\x20\x20'+a0ai('nextLabel')+'\x20')+a0L[bs(0x257)][bs(0x150)](bs(0x17b))+a0L[bs(0x1c5)](bs(0x2d5)+a0ai('ai4ctfDesc'))),console['log'](a0L[bs(0x1c5)]('\x20\x20'+a0ai(bs(0x1d7)))),console[bs(0x121)](a0L[bs(0x2f9)](bs(0x31d))),console[bs(0x121)]();}catch(az){console['log'](),a0aa(az[bs(0x2cf)]);}return;}const W=K['session'][bs(0x167)];try{let aA;if(N(0xc09*-0x3+0x1466+0xfb5,bs(0x194)),W){const aK={};aK[bs(0x318)]=bs(0x2f1);const aL={};aL[bs(0x17b)]=0x0,aL[bs(0x299)]=0x0;const aM=a0W()[bs(0x2e9)]||bs(0x135),aN=await fetch(aM+bs(0x333)+K[bs(0x246)][bs(0x26f)]+'/submit',{'method':'POST','headers':aK,'body':JSON['stringify']({'token':W,'answers':K[bs(0x35b)],'interactions':K[bs(0x346)]||[],'aiUsage':K['aiUsage']||aL,'bookmarks':K[bs(0x192)]||[]}),'signal':AbortSignal[bs(0x19b)](-0xb*0xda+0x2*-0x2725+0x9240)});if(!aN['ok']){const aO=await aN['json']()[bs(0x2cb)](()=>({'message':'Submit\x20failed'}));throw new Error(aO[bs(0x2cf)]||bs(0x30d));}aA=(await aN[bs(0x34a)]())[bs(0x1f2)];}else{const aP=M();if(!aP)return;aA=await aP[bs(0x275)](K[bs(0x246)][bs(0x26f)],K[bs(0x35b)]);}N(0xa4*-0x3a+-0x23a3+0x48fd,bs(0x33e)),await q(-0x232e+-0x81b+0x2c75),N(0x1970+0x54d+0x1*-0x1e59,'Complete!'),console[bs(0x121)]();const aB={};aB['ai4ctf']=0x0,aB['ctf4ai']=0x0;const aC={'answered':Object[bs(0x2a9)](K[bs(0x35b)])[bs(0x2d4)],'total':K[bs(0x246)][bs(0x183)],'bookmarks':Array[bs(0x3c1)](K[bs(0x192)])?K['bookmarks'][bs(0x2d4)]:0x53*0x5b+0xc4d+-0x29ce,'help':R(K),'aiUsage':K['aiUsage']||aB,'interactions':(K[bs(0x346)]||[])[bs(0x2d4)],'durationMin':K[bs(0x246)]['durationMinutes']||0x1449+0x1e2c+-0x3275,'confirmedAt':K['session'][bs(0x1e0)]||K[bs(0x246)]['startedAt'],'examId':K[bs(0x246)][bs(0x26f)]};a0a0();const aD=Math[bs(0x1d4)](0x8cb*-0x2+-0x11*0xe+0x1284,Math[bs(0x101)]((Date[bs(0x382)]()-new Date(aC['confirmedAt'])[bs(0x36a)]())/(0x22a5+-0x11a3+-0xd1a))),aE=Math['floor'](aD/(-0x1fa7+0x1f28+0xbb)),aF=aD%(-0x1f20+0x243d*-0x1+0xd85*0x5);console['log'](),console[bs(0x121)](a0L[bs(0x2f9)](bs(0x2a1))),console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x257)][bs(0x207)](bs(0x36c))),console[bs(0x121)](a0L[bs(0x257)][bs(0x207)]('\x20\x20\x20██║██╔════╝██╔═══██╗██╔══██╗')),console[bs(0x121)](a0L[bs(0x257)]['white'](bs(0x2ec))),console[bs(0x121)](a0L[bs(0x257)]['white'](bs(0x383))),console[bs(0x121)](a0L[bs(0x257)]['white'](bs(0x2e7))),console['log'](a0L[bs(0x257)][bs(0x207)](bs(0x27e))),console[bs(0x121)]();const aG=aA[bs(0x30b)]?a0L[bs(0x150)][bs(0x257)](bs(0x2f8)):a0L['yellow'][bs(0x257)](bs(0x15f));console['log'](aG),console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x207)]('\x20\x20\x20Your\x20answers\x20have\x20been\x20recorded\x20and\x20sent\x20to\x20your\x20national')),console[bs(0x121)](a0L[bs(0x207)](bs(0x197))),console[bs(0x121)](a0L[bs(0x207)](bs(0x3b0))),console[bs(0x121)](),console['log'](a0L[bs(0x2f9)](bs(0x31d))),console['log'](),console[bs(0x121)](a0L[bs(0x257)][bs(0x207)]('\x20\x20Your\x20run'));const aH=aC[bs(0x271)]-aC[bs(0x200)];console['log'](bs(0x158)+a0L[bs(0x1c5)](bs(0x2a3))+a0L[bs(0x207)](aC[bs(0x200)]+'/'+aC[bs(0x271)])+(aH>0x606+0x5*-0x40b+0xad*0x15?a0L[bs(0x1c5)](bs(0x2f2)+aH+'\x20skipped'):'')),console[bs(0x121)](bs(0x158)+a0L[bs(0x1c5)](bs(0x1e4))+a0L['white'](aE+'m\x20'+aF+'s')+a0L['gray'](bs(0x2fc)+aC[bs(0x258)]+bs(0x3cd))),aC[bs(0x192)]>0x7d3+0x2438+-0x2c0b&&console['log'](bs(0x158)+a0L[bs(0x1c5)](bs(0x1b1))+a0L[bs(0x18a)]('★\x20'+aC[bs(0x192)])),console[bs(0x121)]();const aI=aA[bs(0x11b)];if(aI&&Object['keys'](aI)[bs(0x2d4)]>=-0x85f+-0x1823*0x1+0x2084){const aQ=Object[bs(0x385)](aI)[bs(0xfc)](([,aV])=>aV[bs(0x271)]>0xd*-0x16+-0x2254+-0x15d*-0x1a)[bs(0x3b3)](([aV,aW])=>({'cat':aV,'pct':aW['correct']/aW[bs(0x271)]}))[bs(0x2a2)]((aV,aW)=>aW['pct']-aV[bs(0x2b3)]),aR=Math[bs(0x202)](-0x16cd*0x1+-0xfea+0x26b9,Math['ceil'](aQ['length']/(0x6e*-0x29+0x444*0x4+0x1*0x91))),aS=Math[bs(0x202)](-0x75*0xd+0x256c+-0x1*0x1f79,Math[bs(0x11c)](aQ[bs(0x2d4)]/(-0x1700+-0x24a8+-0x1*-0x3bab))),aT=aQ[bs(0x301)](-0x1*-0x5cb+0x1fc9*-0x1+0x19fe,aR)['map'](aV=>aV[bs(0x11d)]),aU=aQ['slice'](-aS)['map'](aV=>aV[bs(0x11d)]);aT[bs(0x2b1)](aV=>aU[bs(0x366)](aV))||(console[bs(0x121)](a0L[bs(0x257)][bs(0x207)](bs(0x355))),console['log'](bs(0x158)+a0L['green']('Stronger\x20here:\x20\x20')+a0L['white'](aT['join'](',\x20'))),console[bs(0x121)](bs(0x158)+a0L[bs(0x18a)]('Room\x20to\x20grow:\x20\x20\x20')+a0L['white'](aU[bs(0x107)](',\x20'))),console['log'](a0L[bs(0x1c5)](bs(0x2a7))),console[bs(0x121)]());}console[bs(0x121)](a0L[bs(0x257)][bs(0x207)](bs(0x219))),console['log']('\x20\x20\x20\x20'+a0L[bs(0x1c5)](bs(0x3c7))+a0L[bs(0x207)](aC[bs(0x3ea)][bs(0x3b1)]+'/'+aC[bs(0x3ea)]['max'])),console[bs(0x121)](bs(0x158)+a0L['gray'](bs(0x1c7))+a0L[bs(0x207)](aC[bs(0x329)][bs(0x17b)]+bs(0x2bb))+a0L[bs(0x1c5)](bs(0x2f2))+a0L[bs(0x207)](aC[bs(0x329)][bs(0x299)]+'\x20CTF4AI')),console[bs(0x121)](),console[bs(0x121)](a0L[bs(0x2f9)](bs(0x31d))),console[bs(0x121)](),console['log'](a0L[bs(0x257)][bs(0x207)](bs(0x251))),console[bs(0x121)](a0L[bs(0x1c5)](bs(0x1af))),console['log'](a0L[bs(0x1c5)]('\x20\x20·\x20Keep\x20sharpening:\x20')+a0L[bs(0x207)](bs(0x1dc))+a0L['gray']('\x20is\x20free,\x20unlimited\x20practice.')),console[bs(0x121)](a0L[bs(0x1c5)](bs(0x35e))+a0L[bs(0x207)](bs(0x232))),console['log']();const {showCToBUpgradePrompt:aJ}=await import(bs(0x306));aJ(aC['examId'],aA[bs(0x30b)]),console[bs(0x121)](a0L[bs(0x18a)](bs(0x1e6))),console[bs(0x121)](a0L[bs(0x2f9)][bs(0x3a9)](bs(0x37e))),console['log'](),console[bs(0x121)](a0L[bs(0x2f9)](bs(0x2a1))),console[bs(0x121)]();}catch(aV){console['log'](),a0aa(aV[bs(0x2cf)]);}}),B[bb(0x11e)](bb(0x324))[bb(0x277)](bb(0x222))[bb(0x1d8)](async F=>{const bt=bb;a0a8(bt(0x185)+(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['session'][bt(0x26f)];}const H=a0ag(bt(0x30a));H['start']();try{const K=await G[bt(0x2d7)](F);H[bt(0x226)](bt(0x172)),console[bt(0x121)](),a0ae(K[bt(0x1b3)]),a0af(bt(0x2dc),a0L['bold'](K[bt(0x1e5)]+'/'+K[bt(0x271)])),a0af(bt(0x290),a0L[bt(0x257)](K[bt(0x350)]+'%')),a0af('Status',K[bt(0x30b)]?a0L[bt(0x150)]['bold'](bt(0x22e)):a0L[bt(0x287)][bt(0x257)](bt(0x102))),a0af('Submitted',K[bt(0x3a2)]),console[bt(0x121)]();}catch(L){H[bt(0x2c0)](bt(0x148)),a0aa(L['message']);}}),B[bb(0x11e)](bb(0x2f0))['description'](bb(0x356))[bb(0x1d8)](async J=>{const bu=bb;a0a8('exam\x20token\x20'+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import(bu(0x331)),V=K();if(V){const a2=V[bu(0x246)][bu(0x167)],a3=a0a1(),a4=!!a2&&a2[bu(0x282)]()[bu(0xfd)]()!==J['trim']()['toUpperCase'](),a5=!!a3&&a3[bu(0x36a)]()+(-0xdd976*-0x1+0x2b6f3a+-0x757*0x410)<Date[bu(0x382)]();if(a4&&a5)return Q(),console[bu(0x121)](),console[bu(0x121)](a0L[bu(0x1c5)]('\x20\x20(previous\x20exam\x20session\x20expired\x20—\x20cleared\x20state,\x20starting\x20fresh\x20with\x20your\x20new\x20token)')),console[bu(0x121)](),console[bu(0x121)](a0L[bu(0x207)](bu(0x209))+a0L[bu(0x257)][bu(0x2f9)](bu(0x159)+J)),void console[bu(0x121)]();if(!a2&&J)return V[bu(0x246)][bu(0x167)]=J[bu(0x282)](),L(V),console[bu(0x121)](),console[bu(0x121)](a0L[bu(0x150)](bu(0x236))),console[bu(0x121)](a0L[bu(0x1c5)](bu(0x17e))+a0L[bu(0x207)](bu(0x19d))+a0L['gray'](bu(0x125))+a0L['white']('exam\x20submit')),console[bu(0x121)](),console[bu(0x121)](a0L[bu(0x257)][bu(0x207)](bu(0x2d0))),console[bu(0x121)](a0L[bu(0x1c5)](bu(0x2c8))+a0L[bu(0x257)]['cyan'](bu(0xe0))+a0L[bu(0x1c5)](bu(0x332))),console[bu(0x121)](a0L[bu(0x1c5)](bu(0x2c8))+a0L['bold'][bu(0x2f9)](bu(0x386))+a0L[bu(0x1c5)](bu(0x1b7))),void console[bu(0x121)]();const a6=Object['keys'](V['answers'])[bu(0x2d4)],a7=V[bu(0x246)]['questionCount'],a8=a0a1(),a9=a8?Math['max'](0x8c9+-0x5*-0x9f+-0x2*0x5f2,Math['round']((a8[bu(0x36a)]()-Date[bu(0x382)]())/(0x547d+-0x1*-0x193b7+-0xfdd4))):null;return console[bu(0x121)](),console[bu(0x121)](a0L[bu(0x18a)](bu(0x272))),console[bu(0x121)](),console[bu(0x121)](a0L['gray'](bu(0x13a))+a0L[bu(0x207)](V[bu(0x246)][bu(0x1b3)])),a2&&console[bu(0x121)](a0L[bu(0x1c5)]('\x20\x20Token:\x20\x20\x20')+a0L[bu(0x207)](a2)+(a2===J?a0L[bu(0x150)](bu(0x21d)):a0L[bu(0x18a)]('\x20\x20(different\x20from\x20the\x20one\x20you\x20typed)'))),console[bu(0x121)](a0L[bu(0x1c5)](bu(0x21a))+a0L[bu(0x207)](a6+'/'+a7)),null!==a9&&console[bu(0x121)](a0L[bu(0x1c5)](bu(0x142))+a0L[bu(0x207)](a9+bu(0x12d))),console[bu(0x121)](),console[bu(0x121)](a0L[bu(0x257)][bu(0x207)](bu(0x244))),console[bu(0x121)](a0L[bu(0x1c5)](bu(0x2c8))+a0L[bu(0x257)]['cyan'](bu(0xe0))+a0L[bu(0x1c5)](bu(0x332))),console[bu(0x121)](a0L[bu(0x1c5)]('\x20\x20\x20\x20→\x20')+a0L[bu(0x257)][bu(0x2f9)](bu(0x386))+a0L[bu(0x1c5)](bu(0x1b7))),console[bu(0x121)](a0L[bu(0x1c5)](bu(0x2c8))+a0L[bu(0x257)]['cyan'](bu(0x363))+a0L[bu(0x1c5)](bu(0x22a))),a2&&a2!==J&&(console[bu(0x121)](),console[bu(0x121)](a0L['yellow']('\x20\x20Note:\x20you\x20typed\x20a\x20different\x20token.\x20Each\x20exam\x20token\x20is\x20bound\x20to')),console[bu(0x121)](a0L[bu(0x18a)](bu(0x162))),console['log'](),console[bu(0x121)](a0L[bu(0x1c5)](bu(0x164))),console[bu(0x121)](a0L['gray'](bu(0x14f))+a0L[bu(0x257)][bu(0x2f9)](bu(0x13d))+a0L[bu(0x1c5)]('\x20to\x20wipe\x20local\x20state,\x20then\x20re-enter\x20the\x20new\x20token.'))),void console['log']();}const {isNativeWindowsCmd:W}=await import(bu(0x379));if(!W()&&!a0am()){let aa=!(-0x24b*0x4+-0x1*-0x1388+-0xa5b);try{const ab={};ab[bu(0x318)]=bu(0x2f1);const ac=a0W()['ctfdUrl']||'https://practice.icoa2026.au',ad=await fetch(ac+bu(0x17a),{'method':'POST','headers':ab,'body':JSON[bu(0x170)]({'token':J['trim'](),'deviceHash':a0aj(),'peek':!(-0x204e+0x54+0xffd*0x2)}),'signal':AbortSignal[bu(0x19b)](-0x1*-0xb6d+-0x1ce4+-0x21*-0x11f)});if(ad['ok']){const ae=await ad[bu(0x34a)]();(ae?.[bu(0x1f2)]?.[bu(0x1e1)]||'')[bu(0x3d6)]('-c')&&(aa=!(0xfa4+-0x2207+0x1263));}}catch{}if(!aa)return console[bu(0x121)](),a0ab('Pre-exam\x20setup\x20required\x20before\x20entering\x20a\x20token.'),console['log'](a0L[bu(0x1c5)]('\x20\x20→\x20')+a0L[bu(0x257)][bu(0x2f9)]('exam\x20setup')),console[bu(0x121)](a0L[bu(0x1c5)](bu(0x390))+a0L['bold'][bu(0x2f9)](bu(0x387))+a0L[bu(0x1c5)](bu(0x39c))),console[bu(0x121)](a0L[bu(0x1c5)]('\x20\x20(Paper\x20C\x20tokens\x20skip\x20this\x20gate\x20—\x20Paper\x20C\x20is\x20MCQ-only)')),void console[bu(0x121)]();}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['NZ']='en',X['LK']='si';const Y=X[J[bu(0x282)]()[bu(0x19e)](0x1d69*0x1+0x144f+0x4*-0xc6e,0x1976+0x1*0x255f+0x14f1*-0x3)[bu(0xfd)]()],Z=a0W(),a0=Z[bu(0x2e9)]||bu(0x135),a1=Y||Z[bu(0x10e)]||'en';Y&&Y!==(Z[bu(0x10e)]||'en')&&a0X({'language':Y}),console[bu(0x121)](),N(0x12c7+0x1cb3+-0xce*0x3b,bu(0x3e6));try{const af={};af[bu(0x318)]=bu(0x2f1);const ag=await fetch(a0+bu(0x17a),{'method':bu(0x1b2),'headers':af,'body':JSON[bu(0x170)]({'token':J['trim'](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal[bu(0x19b)](0x1*0x4a59+-0x3c35+0x5*0x4fc)});if(!ag['ok']){N(-0x1*-0x25e7+0x16b2+-0x3c99,''),console[bu(0x121)]();const ao=await ag[bu(0x34a)]()[bu(0x2cb)](()=>({'message':bu(0x1c1)}));return a0aa(ao[bu(0x2cf)]||bu(0x16c)),void a0ac(bu(0x152));}N(-0x11b9+0x246f+-0x1298,bu(0x3d0));const ah=await ag['json'](),{session:ai,questions:aj,languages:ak}=ah[bu(0x1f2)];N(-0x74*-0x3d+-0x1717*-0x1+-0x8b*0x5d,'Preparing...'),await q(0x1df*-0x1+0x1fb2+-0x1d0b),N(0xad*-0x17+-0x56f*0x5+-0x9*-0x4ca,bu(0xf1)),console[bu(0x121)](),console[bu(0x121)](),a0ae(ai[bu(0x1b3)]),console[bu(0x121)](),a0af(bu(0x1ab),ai[bu(0x183)]+'\x20(30\x20MCQ\x20+\x2010\x20practical)'),a0af('Duration',ai[bu(0x336)]+bu(0x351)),a0af('Total',(ai[bu(0x260)]||-0x1111+-0x264b*-0x1+-0x529*0x4)+bu(0x3d7)),a0af(bu(0x2a0),(ai['passingScore']||0x1a*0x29+-0x15*0xc7+0xc74)+bu(0x2fa)),console['log'](),console['log'](a0L[bu(0x207)](bu(0x2d2))),console[bu(0x121)](a0L[bu(0x207)](bu(0x342))),console['log'](a0L[bu(0x207)](bu(0x38e))),console[bu(0x121)](a0L[bu(0x207)](bu(0x1ed))),ak&&ak[bu(0x2d4)]>0x3*-0x277+0x11c*0x12+-0xc92&&console[bu(0x121)](a0L[bu(0x207)](bu(0x394)+ak[bu(0x107)](',\x20')+bu(0x3c3))),console['log'](),console[bu(0x121)](a0L[bu(0x18a)](bu(0x14d))),console['log'](a0L[bu(0x207)]('\x20\x20\x20\x20•\x20All\x20interactions\x20are\x20recorded\x20for\x20audit')),console[bu(0x121)](a0L[bu(0x207)](bu(0x289))),console[bu(0x121)](a0L[bu(0x207)](bu(0x3b6))),console['log'](),await new Promise(ap=>{const bv=bu;process[bv(0x1f4)][bv(0x120)](a0L[bv(0x257)][bv(0x18a)](bv(0x155)));const aq=!!process[bv(0x234)]['isTTY']&&process['stdin'][bv(0x31b)];process[bv(0x234)][bv(0x304)]&&process[bv(0x234)][bv(0x28a)]&&process['stdin'][bv(0x28a)](!(-0x10de+0xa*-0x355+-0x1*-0x3231));const ar=as=>{const bw=bv,at=as[bw(0x302)]();(at[bw(0x366)]('\x0a')||at['includes']('\x0d'))&&(process['stdin'][bw(0x15b)](bw(0x1f2),ar),process['stdin'][bw(0x304)]&&process[bw(0x234)][bw(0x28a)]&&process['stdin'][bw(0x28a)](aq),process[bw(0x1f4)][bw(0x120)]('\x0a'),ap());};process[bv(0x234)]['on'](bv(0x1f2),ar),process[bv(0x234)][bv(0x26c)]();});const al=new Date()[bu(0x240)]();ai[bu(0x1e0)]=al,ai['token']=J[bu(0x282)]();try{const ap=Date[bu(0x382)](),aq=await fetch(a0+bu(0x1c6),{'method':bu(0x161),'signal':AbortSignal['timeout'](-0x10b+-0x1*-0x1fa8+-0x12e5)});if(aq['ok']){const ar=await aq[bu(0x34a)](),as=ar?.[bu(0x1f2)]?.[bu(0x175)];if(bu(0x2ba)==typeof as&&as>0x1*-0x22b4+-0x530+0x27e4){const at=(ap+Date[bu(0x382)]())/(0x7a1+-0x1*-0x1193+0x2*-0xc99);ai[bu(0x29e)]=Math[bu(0x101)](as-at),ai['deadlineServerMs']=as+(-0x2200+-0x31*0xb0+-0xc*-0x5a9)*ai[bu(0x336)]*(0x2e*0x89+0xe2e+-0x9a*0x3a);}}}catch{}const am={};am[bu(0x17b)]=0x0,am[bu(0x299)]=0x0;const an={};an[bu(0x246)]=ai,an[bu(0x2c2)]=aj,an[bu(0x35b)]={},an['interactions']=[],an['aiUsage']=am,(a0Z(an),console[bu(0x121)](),a0a9(bu(0x3d9)),a0af('Time\x20Remaining',ai['durationMinutes']+':00'),aj[bu(0x2d4)]>-0x1*0x1159+-0x5a*-0x1c+-0x781*-0x1&&U(aj[0x1*0xef9+-0xc8a+-0x59*0x7]));}catch(au){console[bu(0x121)](),bu(0x10b)===au[bu(0x193)]?a0aa(bu(0x293)):a0aa(au[bu(0x2cf)]||bu(0x21f));}}),B[bb(0x11e)](bb(0x134),{'hidden':!(0x44f*0x8+0x1d8*-0x5+-0x1*0x1940)})['description'](bb(0x1a4))[bb(0x1d8)](async()=>{const bx=bb;a0a8(bx(0x13d));const {getRealExamState:F,clearExamState:G}=await import(bx(0x331)),H=F();if(!H)return console[bx(0x121)](),console[bx(0x121)](a0L['gray'](bx(0xfe))),void console[bx(0x121)]();const J=H[bx(0x246)]['token'];if(console[bx(0x121)](),console[bx(0x121)](a0L['yellow'](bx(0x1cc))),console['log'](a0L[bx(0x1c5)](bx(0xf6))+a0L[bx(0x207)](H[bx(0x246)]['examName'])),J&&console[bx(0x121)](a0L[bx(0x1c5)]('\x20\x20\x20\x20\x20Token:\x20')+a0L[bx(0x207)](J)),console[bx(0x121)](a0L[bx(0x1c5)](bx(0x23a))),console['log'](a0L[bx(0x1c5)](bx(0x3de))),console[bx(0x121)](),console[bx(0x121)](a0L[bx(0x1c5)](bx(0x313))+a0L[bx(0x257)][bx(0x2f9)](bx(0x134))+a0L[bx(0x1c5)](bx(0xfb))),'reset'!==(await new Promise(K=>{const by=bx;process[by(0x1f4)][by(0x120)]('\x20\x20>\x20');const L=Q=>{const bz=by,V=Q[bz(0x302)]()[bz(0x282)]();(V[bz(0x366)]('\x0a')||V['includes']('\x0d')||V[bz(0x2d4)]>-0xc25+-0x627+0x493*0x4)&&(process[bz(0x234)][bz(0x15b)](bz(0x1f2),L),K(V[bz(0x3ae)](/[\r\n]/g,'')));};process[by(0x234)]['on']('data',L),process['stdin'][by(0x26c)]();}))[bx(0x187)]())return console[bx(0x121)](a0L[bx(0x1c5)]('\x20\x20Cancelled.')),void console[bx(0x121)]();G(),console[bx(0x121)](),console[bx(0x121)](a0L[bx(0x150)](bx(0x37b))),console[bx(0x121)](a0L['gray'](bx(0x29c))+a0L[bx(0x257)][bx(0x2f9)](bx(0x31c))),console['log']();}),B[bb(0x11e)](bb(0x1dc))[bb(0x277)]('Try\x20a\x20free\x20practice\x20exam\x20(no\x20account\x20needed)')['action'](async()=>{const bA=bb;a0a8(bA(0x3ca)),E(bA(0x184));const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import('../lib/demo-exam.js');a0W()['demoIntroSeen']||(await(async function(){const bB=bA;let a0=!(0x1ccf+0x44b+0x2119*-0x1);const a1=process[bB(0x234)],a2=()=>{a0=!(-0x28f*-0xd+0x71*-0xd+-0x2*0xdc3);},a3=a1[bB(0x304)]&&bB(0xe3)==typeof a1[bB(0x28a)];a3&&(a1[bB(0x28a)](!(0xdf6*0x1+-0x10e4+0x2ee)),a1[bB(0x26c)](),a1[bB(0xe6)](bB(0x1f2),a2));const a4=async a5=>{let a6=0x2*0x5c2+-0x1acb*0x1+0xf47*0x1;for(;a6<a5&&!a0;)await q(-0xbb8+-0x13bb+0xad*0x2f),a6+=0x1e6d*0x1+0xc84+0x1*-0x2aa1;};try{if(console[bB(0x133)](),console[bB(0x121)](),console[bB(0x121)](a0L[bB(0x1c5)](bB(0x18e))+a0L['dim']('(press\x20any\x20key\x20to\x20skip)')),console['log'](),console[bB(0x121)](a0L['bold'][bB(0x207)](bB(0x36c))),console[bB(0x121)](a0L[bB(0x257)][bB(0x207)](bB(0x146))),console[bB(0x121)](a0L['bold'][bB(0x207)](bB(0x2ec))),console['log'](a0L[bB(0x257)][bB(0x207)](bB(0x383))),console[bB(0x121)](a0L[bB(0x257)]['white']('\x20\x20\x20██║╚██████╗╚██████╔╝██║\x20\x20██║')),console['log'](a0L[bB(0x257)]['white'](bB(0x27e))),console[bB(0x121)](),console[bB(0x121)](a0L[bB(0x257)][bB(0x18a)](bB(0x2ce))),console[bB(0x121)](a0L[bB(0x1c5)](bB(0x2fd))),await a4(-0x1*-0xfb0+-0x448+-0x1a4),a0)return;if(console[bB(0x121)](),console[bB(0x121)](a0L[bB(0x207)](bB(0x267))),console['log'](),await a4(0x3a4+-0x25f9*0x1+-0x29*-0xe5),a0)return;if(console['log'](a0L['cyan'](bB(0x34c))+a0L[bB(0x207)](bB(0x36e))+a0L['gray'](bB(0x3c2))),await a4(0x5*-0x429+-0x13*-0x1f2+-0xd6d),a0)return;if(console[bB(0x121)](a0L[bB(0x150)](bB(0x34c))+a0L[bB(0x207)](bB(0x32e))+a0L[bB(0x1c5)](bB(0x143))),await a4(-0x1e88+0x1*-0x1aa1+0x3be5),a0)return;if(console['log'](a0L[bB(0x287)]('\x20\x20\x20\x20\x20▣\x20')+a0L[bB(0x207)](bB(0x36b))+a0L['gray'](bB(0x3c9))),await a4(-0xd*-0x1d1+-0x17*0x67+-0xad8*0x1),a0)return;if(console[bB(0x121)](),console[bB(0x121)](a0L[bB(0x257)][bB(0x207)](bB(0x3c0))+a0L['bold'][bB(0x18a)]('IS')+a0L[bB(0x257)]['white'](bB(0x14a))),console[bB(0x121)](),await a4(0x4a0+-0x256a*0x1+0x26a6),a0)return;if(console['log'](a0L[bB(0x1c5)]('\x20\x20\x20·\x20110\x20CTF\x20tools\x20pre-configured')),await a4(0x39+-0x2534+0x268b),a0)return;if(console[bB(0x121)](a0L[bB(0x1c5)](bB(0x173))),await a4(0x1651+0x23*0x29+-0x1a5c),a0)return;if(console[bB(0x121)](a0L[bB(0x1c5)](bB(0x1ef))),await a4(-0xc28+-0x173+0x10bb),a0)return;console[bB(0x121)](),console[bB(0x121)](a0L[bB(0x257)][bB(0x2f9)](bB(0x371))),await a4(-0x1d10+-0xb3d+-0x37ed*-0x1);}finally{((()=>{if(a3){a1['removeListener']('data',a2);try{a1['setRawMode'](!(0xb7*-0x1b+-0x1c9e+0x2fec));}catch{}a1['pause']();}})()),console[bB(0x133)]();}}()),a0X({'demoIntroSeen':!(-0x31d+-0x15ae+-0x18cb*-0x1)})),console[bA(0x121)](),console[bA(0x121)](a0L[bA(0x207)]('\x20\x20Demo:\x20')+a0L[bA(0x1c5)](H+'\x20questions\x20drawn\x20from\x20a\x20pool\x20of\x20'+J+bA(0x1fa))),console[bA(0x121)](a0L[bA(0x1c5)]('\x20\x20You\x20can\x20pause\x20with\x20')+a0L['cyan'](bA(0x199))+a0L['gray'](bA(0x1bb))+a0L[bA(0x2f9)]('back')+a0L[bA(0x1c5)]('\x20at\x20any\x20time.')),await new Promise(a0=>{const bC=bA;process[bC(0x1f4)][bC(0x120)](a0L[bC(0x257)][bC(0x18a)](bC(0x1ad)));const a1=!!process[bC(0x234)]['isTTY']&&process[bC(0x234)]['isRaw'];process[bC(0x234)][bC(0x304)]&&process[bC(0x234)][bC(0x28a)]&&process[bC(0x234)][bC(0x28a)](!(0x1*-0x135e+0x1*0x1b01+0x7a2*-0x1));const a2=a3=>{const bD=bC,a4=a3['toString']();(a4[bD(0x366)]('\x0a')||a4[bD(0x366)]('\x0d'))&&(process[bD(0x234)][bD(0x15b)](bD(0x1f2),a2),process[bD(0x234)][bD(0x304)]&&process[bD(0x234)]['setRawMode']&&process['stdin'][bD(0x28a)](a1),process['stdout'][bD(0x120)]('\x0a'),a0());};process['stdin']['on']('data',a2),process[bC(0x234)][bC(0x26c)]();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import(bA(0x331));Q()&&V(bA(0x17c)),console[bA(0x121)](),a0ae(bA(0x2d8)),console[bA(0x121)](),console[bA(0x121)](a0L[bA(0x207)]('\x20\x20Free\x20practice\x20·\x20No\x20account\x20needed\x20·\x20No\x20time\x20limit')),console[bA(0x121)](a0L[bA(0x207)]('\x20\x20'+H+bA(0x348)+J+bA(0x308)));const W=a0a3();if(W['attempts']>-0x149*0x17+-0xc*-0x25f+-0x1*-0x11b){const a0=W[bA(0x157)],a1=a0>=-0x1*-0xb11+0x1*0x47f+-0xf40?a0L[bA(0x150)]:a0>=-0x1*0xaa6+0x147f*-0x1+0x1f61?a0L[bA(0x18a)]:a0L['white'];console[bA(0x121)](),console[bA(0x121)](a0L[bA(0x1c5)](bA(0x35f))+a1(W[bA(0x11f)]+'/'+H+'\x20('+a0+'%)')+a0L[bA(0x1c5)]('\x20\x20·\x20\x20'+W[bA(0x292)]+bA(0x1b4)));}console[bA(0x121)](),console['log'](a0L[bA(0x1c5)](bA(0x307))),console['log'](a0L[bA(0x207)]('\x20\x20'+a0ai(bA(0x189)))),console[bA(0x121)](a0L[bA(0x18a)](bA(0x196))+a0L[bA(0x1c5)]('\x20\x20\x20\x20\x20\x20\x20'+a0ai(bA(0x1ae)))),console[bA(0x121)](a0L[bA(0x18a)](bA(0x3e1))+a0L[bA(0x1c5)](bA(0x13b)+a0ai(bA(0x1a3)))),console['log'](a0L[bA(0x18a)](bA(0x1e2))+a0L[bA(0x1c5)]('\x20/\x20')+a0L[bA(0x18a)](bA(0x337))+a0L[bA(0x1c5)]('\x20\x20\x20\x20'+a0ai('htpNav'))),console[bA(0x121)](a0L[bA(0x18a)]('\x20\x20\x20\x20more\x20help')+a0L[bA(0x1c5)](bA(0x398)+a0ai(bA(0x2c6)))),console[bA(0x121)](a0L[bA(0x18a)](bA(0x224))+a0L['gray'](bA(0x13b)+a0ai(bA(0x378)))),console[bA(0x121)](a0L[bA(0x18a)](bA(0x345))+a0L['gray'](bA(0x13b)+a0ai(bA(0x2b7)))),console['log'](a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20es\x20·\x20zh\x20·\x20ja\x20·\x20ko\x20·\x20ar\x20·\x20fr\x20·\x20pt')),console['log'](a0L['gray'](bA(0x2ea))),console[bA(0x121)](a0L[bA(0x1c5)](bA(0x307))),console['log']();const {getConfig:X}=await import(bA(0x30e)),Y=X()['language']||'en';'en'===Y?(console[bA(0x121)](a0L['gray'](bA(0x10f))),console[bA(0x121)](a0L['gray'](bA(0x20f))),console['log'](a0L[bA(0x1c5)](bA(0x38a)))):console[bA(0x121)](a0L[bA(0x150)](bA(0x3a8)+Y)),console[bA(0x121)](),console['log'](a0L['white']('\x20\x20Starting\x20exam...'));const Z={...L,'startedAt':new Date()[bA(0x240)]()};console['log'](),N(0x12f7*0x1+-0x6fc+0xbfb*-0x1,bA(0x2a5)),await q(0xc13+0x21*0x11b+-0x2fc6),N(0x3df+-0x2554*0x1+0x219d*0x1,bA(0x104)),await q(0x176*-0x11+0x1f3d+-0x59f),N(0x2f5*-0x3+-0x3*0xbb7+0x2*0x162a,bA(0x22d)),await q(-0x1596+-0x14e5+0x23*0x13b),N(-0x7a*-0xc+0x251+-0x7a5,bA(0xf1)),console[bA(0x121)](),console['log'](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af('Questions',String(H)),a0af(bA(0x10d),bA(0x3af)),U(K[0x1d8c+-0x6d9*-0x5+0x1*-0x3fc9]);}),B['command']('demo-retry')['description'](bb(0x29a))[bb(0x1d8)](async()=>{const bE=bb;a0a8(bE(0x186)),E(bE(0x1cd));const {getLocalizedDemoSession:F}=await import('../lib/demo-exam.js'),G=a0a6();if(!G||-0x1f4e+0x26cc+0x112*-0x7===G[bE(0x2d4)])return console['log'](),console[bE(0x121)](a0L[bE(0x18a)]('\x20\x20No\x20wrong\x20questions\x20to\x20retry.\x20Run\x20')+a0L[bE(0x257)][bE(0x2f9)](bE(0x1dc))+a0L[bE(0x18a)](bE(0x1d9))),void console[bE(0x121)]();const H=a0Y();if(H){if(bE(0x17c)!==H[bE(0x246)][bE(0x26f)])return a0ab('Exam\x20\x22'+H['session'][bE(0x1b3)]+bE(0x174)),void a0ac(bE(0x182));a0a0();}const J=V=>{const bF=bE;if(!V['answer'])return V;const W=V['options'][V[bF(0x32f)]],X=['A','B','C','D']['map'](a2=>V['options'][a2]);for(let a2=X[bF(0x2d4)]-(0x2f0+-0x1b3f+0x1850);a2>0x24be+0x1*-0x16f0+-0xdce;a2--){const a3=Math[bF(0x311)](Math['random']()*(a2+(-0x23f2+-0x1*0x24d2+0x48c5)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[-0x2*0x8dd+0x23d7+0x1*-0x121d],Y['B']=X[0x21e5+-0x200a+-0x1da],Y['C']=X[-0x22*-0xa3+-0x23d0*-0x1+-0x3974],Y['D']=X[0x1f23+0x1c58+0x58*-0xad];const Z=Y,a0=['A','B','C','D']['find'](a4=>Z[a4]===W),a1={...V};return a1[bF(0x250)]=Z,a1[bF(0x32f)]=a0,a1;},K=G[bE(0x3b3)]((V,W)=>({...J(V),'number':W+(0x1616+0x1*0x5a4+-0x1bb9)})),L=F(),Q={...L,'examName':L[bE(0x1b3)]+'\x20\x20(Retry\x20wrong\x20only)','questionCount':K[bE(0x2d4)],'startedAt':new Date()[bE(0x240)]()};console[bE(0x121)](),a0ae('Demo\x20Retry\x20—\x20Wrong\x20Questions\x20Only'),console['log'](),console[bE(0x121)](a0L[bE(0x207)]('\x20\x20Practicing\x20'+K['length']+'\x20question'+(-0x2275+-0x1*-0x17f+-0x1*-0x20f7===K[bE(0x2d4)]?'':'s')+bE(0x298))),console[bE(0x121)](a0L[bE(0x1c5)]('\x20\x20Options\x20have\x20been\x20reshuffled.')),console[bE(0x121)](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af(bE(0x1ab),String(K['length'])),a0af('Duration',bE(0x3af)),U(K[-0x146c+0x1284+0x1e8]);}),B[bb(0x11e)]('setup')['description']('Install\x20Python\x20environment\x20for\x20practical\x20exam\x20questions')[bb(0x1d8)](async()=>{const bG=bb;if(a0a8(bG(0x21b)),-0x20f9*-0x1+-0x50*0x71+0x257===a0a3()[bG(0x292)])return console['log'](),a0ab(bG(0x238)),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x12b))+a0L[bG(0x257)]['cyan'](bG(0x3ca))),void console[bG(0x121)]();const K=a0ak();if(K){const a4=K[bG(0x2f7)][bG(0x2d4)],a5=a4+K[bG(0x229)][bG(0x2d4)];if(a4>=0x1ca7+-0x1*-0x17b7+-0x3456||(a5>0x2*0x994+0x118b+-0x5*0x757?a4/a5:0x1dfd+-0xf49+-0xeb4*0x1)>=-0x5*-0x79c+0x101d+-0x2f*0x127+0.7)return console['log'](),console[bG(0x121)](a0L[bG(0x150)](bG(0x32b))+a0L[bG(0x150)](bG(0x1df))),console['log'](a0L[bG(0x1c5)](bG(0x103)+K[bG(0x212)][bG(0x280)]('T')[-0x7*-0x4bd+0x1326+-0x3451])),console['log'](a0L[bG(0x1c5)]('\x20\x20\x20\x20Python:\x20'+K['pythonVersion'])),console[bG(0x121)](a0L[bG(0x1c5)]('\x20\x20\x20\x20Packages:\x20'+a4+bG(0x1ac))),K[bG(0x229)][bG(0x2d4)]>0x4b1+0xc2d+-0x10de&&console[bG(0x121)](a0L[bG(0x18a)](bG(0xde)+K[bG(0x229)][bG(0x107)](',\x20'))),console[bG(0x121)](),console[bG(0x121)](a0L['white'](bG(0x27a))+a0L[bG(0x257)]['cyan']('exam\x20<token>')),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x390))+a0L[bG(0x257)][bG(0x2f9)](bG(0x387))+a0L[bG(0x1c5)]('\x20to\x20return\x20to\x20the\x20main\x20menu.')),void console[bG(0x121)]();console[bG(0x121)](),console['log'](a0L[bG(0x18a)](bG(0x20d)+a4+'/'+a5+bG(0x228))),console['log']();}console['log'](),a0ae(bG(0x395)),console[bG(0x121)](),console[bG(0x121)](a0L['white'](bG(0x23e))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x3cb))),console[bG(0x121)]();const L=(a6,a7)=>{const bH=bG,a8=process['platform'];console[bH(0x121)](),a0aa(bH(0x2b9)===a6?'Python\x203\x20not\x20found.':bH(0x132)+a7+bH(0x369)),console[bH(0x121)](),console[bH(0x121)](a0L['bold']['white'](bH(0x147))),console[bH(0x121)](),bH(0x284)===a8?(console[bH(0x121)](a0L[bH(0x18a)](bH(0x23f))),console[bH(0x121)](a0L[bH(0x150)](bH(0x2bc))),console[bH(0x121)](),console[bH(0x121)](a0L[bH(0x1c5)](bH(0x1fe))),console[bH(0x121)](a0L[bH(0x1c5)](bH(0x2d1)))):bH(0x217)===a8?(console[bH(0x121)](a0L[bH(0x18a)](bH(0x195))),console[bH(0x121)](a0L[bH(0x150)](bH(0x2df))),console[bH(0x121)](a0L['green']('\x20\x20\x20\x20sudo\x20apt\x20update')),console[bH(0x121)](a0L[bH(0x150)]('\x20\x20\x20\x20sudo\x20apt\x20install\x20-y\x20python3.12\x20python3.12-venv\x20python3.12-distutils')),console['log'](a0L[bH(0x1c5)]('\x20\x20\x20\x20sudo\x20update-alternatives\x20--install\x20/usr/bin/python3\x20python3\x20/usr/bin/python3.12\x201')),console['log'](),console['log'](a0L[bH(0x18a)](bH(0x36d))),console[bH(0x121)](a0L['green'](bH(0x1a9))),console[bH(0x121)](),console[bH(0x121)](a0L[bH(0x18a)](bH(0x33b))),console[bH(0x121)](a0L['green'](bH(0x2db)))):bH(0x26b)===a8?(console['log'](a0L[bH(0x18a)](bH(0x20e))),console[bH(0x121)](a0L[bH(0x150)](bH(0x297))),console[bH(0x121)](),console['log'](a0L[bH(0x1c5)](bH(0x1fe))),console[bH(0x121)](a0L[bH(0x1c5)](bH(0x3d8)))):console[bH(0x121)](a0L[bH(0x1c5)](bH(0x128))),console['log'](),console['log'](a0L[bH(0x207)](bH(0x151))+a0L['bold']['cyan'](bH(0x21b))),console[bH(0x121)]();},Q=bG(0x3da);let V='';try{const a6={};a6[bG(0x2cd)]='utf-8',a6['timeout']=0x1388,V=a0an(Q+bG(0x2e2),a6)[bG(0x282)]()[bG(0x3ae)](bG(0x132),'');const a7=V[bG(0x280)]('.')[bG(0x3b3)](Number);if(a7[-0x24*-0x9d+-0x164e+0x3a]<-0x8d*-0x2+0x21bb+-0x2*0x1169||-0x301+0x7*0x155+-0x5f*0x11===a7[-0x1*0x23e3+0x13*0xae+-0x1*-0x16f9]&&a7[-0x1dba*-0x1+0xe35*-0x2+-0x14f]<-0x1*0x1cb4+-0x5e6*0x4+0x4c2*0xb)return void L(bG(0x3bb),V);0x4d+-0x297+0x13*0x1f===a7[-0xec2+0x1b2*0x13+0x2*-0x8ba]&&a7[-0x87b+0xf11+-0x695]<0x362*0xb+-0x833*-0x2+-0x10*0x359?console[bG(0x121)](a0L['green'](bG(0xec)+V)+a0L['gray'](bG(0x14b))):console[bG(0x121)](a0L[bG(0x150)]('\x20\x20✓\x20Python\x20'+V));}catch{return void L(bG(0x2b9));}try{const a8={};a8['stdio']='ignore',a8[bG(0x19b)]=0x1388,(a0an(Q+bG(0x314),a8),console[bG(0x121)](a0L['green'](bG(0x210))));}catch{console[bG(0x121)](a0L[bG(0x18a)](bG(0x35a)));try{const a9={};a9['stdio']='ignore',a9['timeout']=0x7530,(a0an(Q+'\x20-m\x20ensurepip\x20--upgrade',a9),console[bG(0x121)](a0L['green']('\x20\x20✓\x20pip\x20installed')));}catch{a0aa(bG(0x2e1)),console[bG(0x121)]();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import(bG(0x379)),{execFileSync:ac}=await import(bG(0x180)),ad=aa(),ae=ab(),af=bG(0x217)===process[bG(0x1c9)]&&!ad,ag='darwin'===process[bG(0x1c9)];let ah=bG(0x3a7);if(af||ad)try{const {readFileSync:ak}=await import(bG(0x2a4)),al=ak('/etc/os-release',bG(0x2be)),am=(al[bG(0x393)](/^ID="?([^"\n]+)/m)||[])[0x3f4*0x3+-0xa1*0x7+-0x774]||'',an=(al[bG(0x393)](/^VERSION_ID="?([^"\n]+)/m)||[])[0x21c4+-0x269+-0x1f5a]||'';bG(0x3e2)===am?ah=bG(0x1c0)+an+(ad?'\x20(WSL2)':''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?bG(0x35d):''));}catch{}let ai=!(-0x2d8*-0xc+0x2475+0x11a5*-0x4);if(ag)try{const ao={};ao[bG(0x129)]='ignore',ao[bG(0x19b)]=0x7d0,(ac(bG(0xf2),[bG(0x28f)],ao),ai=!(0x270a+0xa7*0x23+-0x3ddf));}catch{ai=!(0x8*0x41b+0x1e7*0xe+0x1d*-0x20d);}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[bG(0x121)](a0L[bG(0x257)][bG(0x18a)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](a0L[bG(0x257)][bG(0x18a)]('\x20\x20'+aj)),console[bG(0x121)](a0L[bG(0x257)][bG(0x18a)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bG(0x121)](),af||ad?(console['log'](a0L[bG(0x207)]('\x20\x20Detected:\x20')+a0L['cyan'](ah)),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x316))),console['log'](),console[bG(0x121)](a0L[bG(0x257)][bG(0x207)]('\x20\x20Step-by-step:')),console['log'](),console[bG(0x121)](a0L[bG(0x207)](bG(0x208))+a0L[bG(0x257)][bG(0x2f9)](bG(0x2de))+a0L[bG(0x207)](bG(0x131))),console['log'](),console[bG(0x121)](a0L['white'](bG(0x2e3))),console[bG(0x121)](),console[bG(0x121)](bG(0x16e)+a0L[bG(0x257)][bG(0x2f9)](bG(0x2a8))),console[bG(0x121)](bG(0x16e)+a0L[bG(0x257)][bG(0x2f9)]('sudo\x20apt\x20install\x20-y\x20python3-pip\x20python3-venv')),console['log'](),console[bG(0x121)](a0L[bG(0x207)](bG(0x2af))),console[bG(0x121)](),console[bG(0x121)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bG(0x257)][bG(0x2f9)]('icoa')),console[bG(0x121)](bG(0x16e)+a0L[bG(0x1c5)](bG(0x2e6))+'\x20'+a0L['bold'][bG(0x2f9)](bG(0x21b)))):ag?(console[bG(0x121)](a0L['white'](bG(0x218))+a0L[bG(0x2f9)](bG(0x28d))),console[bG(0x121)](),console[bG(0x121)](a0L['bold'][bG(0x207)](bG(0x1fc))),console[bG(0x121)](),console['log'](a0L[bG(0x207)]('\x20\x20\x20\x201.\x20Type\x20')+a0L['bold']['cyan'](bG(0x2de))+a0L[bG(0x207)](bG(0x353))),console['log'](),ai?(console['log'](a0L[bG(0x207)](bG(0x22c))),console[bG(0x121)](),console[bG(0x121)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bG(0x257)][bG(0x2f9)](bG(0x2dd))),console[bG(0x121)](bG(0x16e)+a0L[bG(0x257)][bG(0x2f9)](bG(0x1f1)))):(console[bG(0x121)](a0L['white']('\x20\x20\x20\x202.\x20Install\x20Homebrew\x20first\x20(we\x20did\x20not\x20find\x20')+a0L[bG(0x257)][bG(0x18a)](bG(0x28f))+a0L['white']('):')),console[bG(0x121)](),console['log'](bG(0x16e)+a0L[bG(0x257)][bG(0x2f9)](bG(0x399))),console[bG(0x121)](),console['log'](a0L[bG(0x207)](bG(0x328))),console['log'](),console[bG(0x121)](bG(0x16e)+a0L['bold']['cyan'](bG(0x2dd)))),console[bG(0x121)](),console[bG(0x121)](a0L['white'](bG(0x28e))),console[bG(0x121)](),console[bG(0x121)](bG(0x16e)+a0L['bold'][bG(0x2f9)](bG(0x2a6))),console[bG(0x121)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bG(0x1c5)](bG(0x2e6))+'\x20'+a0L[bG(0x257)]['cyan'](bG(0x21b)))):ae?(console['log'](a0L[bG(0x207)](bG(0x218))+a0L[bG(0x2f9)](bG(0x221))),console[bG(0x121)](),console['log'](a0L[bG(0x257)][bG(0x18a)](bG(0x283))),console[bG(0x121)](a0L[bG(0x1c5)]('\x20\x20Native\x20Windows\x20can\x20run\x20Paper\x20C\x20(MCQ-only)\x20and\x20AI\x20chat,\x20but')),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x124))),console[bG(0x121)](a0L['gray']('\x20\x20far\x20more\x20smoothly\x20inside\x20WSL2\x20Ubuntu.')),console['log'](),console[bG(0x121)](a0L[bG(0x257)][bG(0x207)]('\x20\x20Recommended\x20path\x20—\x20switch\x20to\x20WSL2\x20(one-time,\x20~5\x20min):')),console[bG(0x121)](),console[bG(0x121)](a0L[bG(0x207)](bG(0x208))+a0L[bG(0x257)][bG(0x2f9)]('quit')+a0L[bG(0x207)](bG(0x353))),console[bG(0x121)](a0L[bG(0x207)](bG(0x108))),console[bG(0x121)](),console[bG(0x121)](bG(0x16e)+a0L['bold'][bG(0x2f9)](bG(0xf3))),console[bG(0x121)](),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x1a6))),console[bG(0x121)](a0L[bG(0x207)](bG(0x3e9))),console['log'](),console[bG(0x121)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bG(0x257)][bG(0x2f9)](bG(0x203))),console[bG(0x121)](bG(0x16e)+a0L[bG(0x257)][bG(0x2f9)](bG(0x2b0))),console[bG(0x121)](bG(0x16e)+a0L[bG(0x257)][bG(0x2f9)](bG(0x114))),console[bG(0x121)](bG(0x16e)+a0L[bG(0x257)]['cyan']('icoa')),console['log'](),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x130))),console[bG(0x121)](),console[bG(0x121)](a0L['white'](bG(0x208))+a0L[bG(0x257)]['cyan'](bG(0x2de))+a0L['white']('\x20to\x20leave\x20icoa')),console[bG(0x121)](a0L[bG(0x207)](bG(0x1b9))),console[bG(0x121)](),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L[bG(0x257)][bG(0x2f9)](bG(0x33a))),console[bG(0x121)](),console[bG(0x121)](a0L['gray'](bG(0x25e))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x3a0))),console[bG(0x121)](a0L[bG(0x207)](bG(0x285))),console[bG(0x121)](),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L[bG(0x257)][bG(0x2f9)](bG(0x2a6))),console[bG(0x121)](bG(0x16e)+a0L['gray'](bG(0x2e6))+'\x20'+a0L['bold'][bG(0x2f9)](bG(0x21b)))):(console[bG(0x121)](a0L['white'](bG(0x373))+a0L[bG(0x2f9)](process[bG(0x1c9)])+a0L['white'](')')),console[bG(0x121)](),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x1f7))),console[bG(0x121)](bG(0x16e)+a0L[bG(0x257)]['cyan'](bG(0x2a6))),console[bG(0x121)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bG(0x1c5)](bG(0x2e6))+'\x20'+a0L[bG(0x257)]['cyan'](bG(0x21b)))),console['log'](),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x1dd))),void console[bG(0x121)]();}}const W={};W[bG(0x115)]='bs4',W[bG(0x1e7)]=bG(0x3b8),W[bG(0x310)]='z3',W['pillow']=bG(0x18d),W[bG(0x3c8)]=bG(0x338),W[bG(0x3ab)]=bG(0x3df);const X=[bG(0x3c8),'cryptography',bG(0x1d5),bG(0x115),bG(0x3d1),bG(0x3be),bG(0x141),bG(0x1c4),bG(0x310),bG(0x1e7),'ROPgadget',bG(0x1f5),bG(0x279)],Y=W;console[bG(0x121)](),console[bG(0x121)](a0L[bG(0x207)](bG(0x110)+X['length']+bG(0x2bf))),console['log']();let Z='';try{const ap={};ap[bG(0x2cd)]=bG(0x2be),ap[bG(0x19b)]=0x2710,a0an(Q+bG(0x276),ap);}catch(aq){const ar=String(aq?.[bG(0x1f4)]||aq?.[bG(0x262)]||aq?.[bG(0x2cf)]||'');/externally-managed-environment|break-system-packages/i[bG(0x2ca)](ar)&&(Z=bG(0x24f),console['log'](a0L[bG(0x18a)](bG(0x136))),console['log']());}const a0=V[bG(0x280)]('.')['map'](Number);-0xc10+-0x21*0x1b+-0x7c7*-0x2===a0[0x23f1+-0x95*0x13+-0x18e2]&&a0[0x1*-0x4d1+0x1f66*-0x1+0x2438]>=0x12ef+0x8d1+0x1bb3*-0x1&&(console[bG(0x121)](a0L[bG(0x18a)](bG(0x176)+V+bG(0x3ce))),console['log'](a0L[bG(0x1c5)](bG(0x1ff))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x112))),bG(0x217)===process[bG(0x1c9)]&&(console[bG(0x121)](a0L[bG(0x150)](bG(0x3db))),console['log'](a0L['green'](bG(0x2f3)))),console[bG(0x121)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+bG(0x375)+as+'\x22\x20'+Z+'\x20--quiet\x202>&1',{'encoding':bG(0x2be),'timeout':0x2bf20,'stdio':'pipe'}),a0an(Q+bG(0x166)+(Y[as]||as)+'\x22',{'stdio':bG(0x1cf),'timeout':0x2710});let at='';try{const au=a0an(Q+bG(0x278)+as+bG(0x2e4),{'encoding':bG(0x2be),'timeout':0x1388})[bG(0x393)](/^Version:\s*(.+)$/m);au&&(at=au[-0x12f8+-0x4*-0x2ea+0x1*0x751][bG(0x282)]());}catch{}console[bG(0x121)](a0L[bG(0x150)]('\x20\x20✓\x20'+as)+(at?a0L[bG(0x1c5)]('\x20('+at+')'):'')),a1[bG(0x25d)](at?as+'=='+at:as);}catch(av){const aw=String(av?.[bG(0x1f4)]||av?.[bG(0x262)]||av?.[bG(0x2cf)]||'')[bG(0x301)](-(-0xb*-0x2a7+-0x1e8*0x5+-0x1*0x1215)),ax=aw['split']('\x0a')[bG(0xfc)](ay=>ay[bG(0x282)]())['slice'](-(-0x1e*0x10f+0x1*0xba7+0x141d))[bG(0x107)](bG(0x2e5))[bG(0x301)](-0x2*-0x1306+0x1*0xaa6+-0x30b2,-0x159c+-0x1*-0x372+0x1*0x12a2);console[bG(0x121)](a0L[bG(0x287)](bG(0x38c)+as)+a0L[bG(0x1c5)]('\x20\x20'+ax)),a2['push']({'pkg':as,'error':ax}),a3||(a3=aw);}0x1*0xba7+0x1088+-0x1c2f===a1[bG(0x2d4)]&&a3&&(console[bG(0x121)](),console[bG(0x121)](a0L[bG(0x18a)]('\x20\x20First\x20error\x20detail\x20(for\x20debugging):')),console[bG(0x121)](a0L[bG(0x1c5)]('\x20\x20'+a3[bG(0x280)]('\x0a')[bG(0x301)](-(0x1*-0xc0a+-0x1ec9*-0x1+-0x12b9))[bG(0x107)](bG(0x265))))),a0al({'completedAt':new Date()[bG(0x240)](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2['map'](ay=>ay['pkg'])}),console['log'](),0x1ed2+-0x1bab+-0x327===a2[bG(0x2d4)]?a0a9('Environment\x20ready!\x20All\x20'+X[bG(0x2d4)]+'\x20packages\x20installed.'):0x98d*0x1+-0x1f23+0x1596===a1[bG(0x2d4)]?(a0aa(bG(0x38d)+X[bG(0x2d4)]+'\x20packages\x20installed.'),console['log'](),console[bG(0x121)](a0L[bG(0x18a)](bG(0x1de))),-0x183f+0xab*0x1d+-0x4e3*-0x1===a0[0xcfc+-0x71c+-0x5e0]&&a0[-0x11f7+-0xcd9+0x17*0x157]>=-0x1*0x68c+0x9dc+-0x343?(console['log'](a0L['gray']('\x20\x20\x20\x20Python\x203.13\x20is\x20too\x20new\x20—\x20most\x20CTF\x20libraries\x20lack\x20wheels.')),console[bG(0x121)](a0L['gray']('\x20\x20\x20\x20Install\x20Python\x203.12\x20and\x20re-run\x20exam\x20setup.'))):(console[bG(0x121)](a0L[bG(0x1c5)](bG(0x2eb))),console['log'](a0L[bG(0x1c5)](bG(0xeb))+a0L[bG(0x2f9)](Q+bG(0x2f5))+a0L[bG(0x1c5)](bG(0x295))),console[bG(0x121)](a0L['gray'](bG(0x13e)))),console[bG(0x121)](),console[bG(0x121)](a0L['white'](bG(0x2ab))+a0L[bG(0x257)][bG(0x2f9)]('exam\x20setup'))):a0ab(a1['length']+'/'+X['length']+'\x20packages\x20installed.\x20'+a2[bG(0x2d4)]+'\x20failed:\x20'+a2['map'](ay=>ay['pkg'])[bG(0x107)](',\x20')),console[bG(0x121)](),console[bG(0x121)](a0L[bG(0x2f9)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bG(0x121)](a0L[bG(0x257)][bG(0x207)]('\x20\x20How\x20to\x20use\x20Python\x20in\x20ICOA\x20CLI')),console['log'](a0L[bG(0x2f9)](bG(0x2ac))),console[bG(0x121)](),console[bG(0x121)](a0L[bG(0x257)][bG(0x18a)](bG(0x165))+a0L[bG(0x1c5)]('\x20(quick\x20tasks)')),console['log'](a0L[bG(0x207)](bG(0x349))),console[bG(0x121)](a0L[bG(0x150)](bG(0x315))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0xee))),console['log'](),console[bG(0x121)](a0L['bold'][bG(0x18a)](bG(0x2fe))+a0L[bG(0x1c5)](bG(0x266))),console[bG(0x121)](a0L['white']('\x20\x20Start\x20a\x20Python\x20session,\x20type\x20commands\x20one\x20by\x20one:')),console[bG(0x121)](a0L['green'](bG(0x27d))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x145))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0xef))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x389))),console[bG(0x121)](a0L['gray'](bG(0x198))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x215))),console[bG(0x121)](),console['log'](a0L['bold']['yellow'](bG(0x372))+a0L[bG(0x1c5)](bG(0x303))),console[bG(0x121)](a0L[bG(0x207)](bG(0x380))),console[bG(0x121)](a0L[bG(0x150)](bG(0x3e8))),console['log'](a0L[bG(0x1c5)](bG(0x252))),console[bG(0x121)](a0L['gray'](bG(0x397))),console[bG(0x121)](a0L[bG(0x1c5)]('\x20\x20\x20\x20key\x20=\x20xor(ct[:5],\x20b\x22ICOA{\x22)')),console[bG(0x121)](a0L[bG(0x1c5)]('\x20\x20\x20\x20print(xor(ct,\x20key).decode())')),console['log'](a0L[bG(0x150)]('\x20\x20\x20\x20EOF')),console['log'](a0L[bG(0x150)](bG(0x391))),console[bG(0x121)](),console[bG(0x121)](a0L['bold']['yellow'](bG(0x374))),console[bG(0x121)](a0L[bG(0x207)]('\x20\x20During\x20the\x20exam,\x20type\x20')+a0L[bG(0x257)][bG(0x2f9)](bG(0xe2))+a0L[bG(0x207)](bG(0x242))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x25f))),console['log'](a0L[bG(0x1c5)](bG(0x300))),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x3a1))),console['log'](a0L[bG(0x2f9)](bG(0x2ac))),console[bG(0x121)](),console[bG(0x121)](a0L[bG(0x207)](bG(0x27a))+a0L['bold']['cyan']('exam\x20<token>')),console[bG(0x121)](a0L[bG(0x1c5)](bG(0x390))+a0L[bG(0x257)][bG(0x2f9)]('back')+a0L[bG(0x1c5)](bG(0x39c))),console[bG(0x121)]();}),B[bb(0x1d8)](()=>{const bI=bb;a0a8(bI(0x1a2));const F=a0Y();if(F){a0ae(bI(0x2c4)+F[bI(0x246)][bI(0x1b3)]),O();const J=Object['keys'](F[bI(0x35b)])[bI(0x2d4)];return a0af(bI(0x32a),J+'/'+F[bI(0x246)][bI(0x183)]+bI(0x320)),console[bI(0x121)](),void console[bI(0x121)](a0L[bI(0x1c5)](bI(0x3b2)));}const G=a0a3(),H=a0ak();console[bI(0x121)](),a0ae(bI(0x364)),console[bI(0x121)](),-0x24f4+-0x165c+0x3b50===G['attempts']?(console[bI(0x121)](a0L[bI(0x18a)](bI(0xf9))+a0L['yellow']('Recommended:\x20complete\x20demo\x20first')),console[bI(0x121)](a0L[bI(0x1c5)](bI(0x2c8))+a0L['bold'][bI(0x2f9)](bI(0x3ca)))):(console[bI(0x121)](a0L['green'](bI(0x261))+a0L[bI(0x150)]('Demo\x20completed\x20('+G['attempts']+'\x20attempt'+(-0x1d15+0x1169+0xbad!==G['attempts']?'s':'')+')')),H?(console['log'](a0L[bI(0x150)]('\x20\x20●\x20')+a0L[bI(0x150)](bI(0x32c))),console[bI(0x121)](a0L[bI(0x18a)](bI(0xf9))+a0L[bI(0x18a)]('Enter\x20exam\x20token\x20to\x20begin')),console['log'](a0L[bI(0x1c5)](bI(0x2c8))+a0L['bold']['cyan'](bI(0x31c)))):(console[bI(0x121)](a0L[bI(0x18a)](bI(0xf9))+a0L[bI(0x18a)](bI(0x168))),console[bI(0x121)](a0L['gray']('\x20\x20\x20\x20→\x20')+a0L[bI(0x257)][bI(0x2f9)](bI(0x21b))))),console[bI(0x121)]();});}
1
+ (function(z,B){const aX=a0B,F=z();while(!![]){try{const G=parseInt(aX(0x3ca))/(-0x25f4+-0x21a9*-0x1+0x14*0x37)*(-parseInt(aX(0x30e))/(0x138b*0x1+-0xbeb+0x4b*-0x1a))+-parseInt(aX(0x4a1))/(-0x10dd*0x2+0x4ae+0x1*0x1d0f)+-parseInt(aX(0x414))/(-0x1ef+0xee7+-0x1*0xcf4)*(parseInt(aX(0x410))/(-0x1*0x1549+0xd*0x4d+-0x49*-0x3d))+-parseInt(aX(0x359))/(0x1*-0x737+0x13e+0x5ff)+-parseInt(aX(0x34e))/(0x1b95*0x1+-0x1d3+-0x1*0x19bb)*(-parseInt(aX(0x46b))/(-0x1*-0x2339+0x1958+-0x3c89*0x1))+parseInt(aX(0x41f))/(-0x2ba+-0x77d*0x2+0x11bd)+-parseInt(aX(0x3a2))/(-0x121c+0x1bcc+-0x9a6)*(-parseInt(aX(0x37b))/(-0x2*0xaa5+0x1*-0xb7+0x160c));if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,0x653b+0xbda1e+-0xb*0x4c55));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-(0x2e*0x2b+-0xff5+0x1*0xa0b);const c=a0z();let d=c[a];if(a0B['jKwntt']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=-0x182d+-0x12c9+0x2af6,o,p,q=0x11b*-0x7+-0x365*0xb+0x482*0xa;p=i['charAt'](q++);~p&&(o=n%(0x1540+-0x5d9+0x1*-0xf63)?o*(-0x30e+-0x4*0x223+0x52*0x25)+p:p,n++%(-0x8*-0x48b+0x2*-0x210+-0xc*0x2af))?l+=String['fromCharCode'](0x119*0x6+-0x1*-0x4fd+0x54a*-0x2&o>>(-(0x2335*-0x1+0x1a05+0x932)*n&0x1eb*-0x3+-0x172+-0x739*-0x1)):0x17c2+-0x127*0x1+-0x9*0x283){p=j['indexOf'](p);}for(let r=0x26a5*0x1+0xa06*0x1+-0x30ab,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0x1*0x19b+-0x759+-0x904*-0x1))['slice'](-(0x469*0x1+0x3d1*-0x1+-0x96));}return decodeURIComponent(m);};a0B['KkaEqR']=e,a0B['RbqWVp']={},a0B['jKwntt']=!![];}const f=c[-0x282+-0x18d7+0x1b59],g=a+f,h=a0B['RbqWVp'][g];return!h?(d=a0B['KkaEqR'](d),a0B['RbqWVp'][g]=d):d=h,d;}import{printSuccess as a0a9,printError as a0aa,printWarning as a0ab,printInfo as a0ac,printTable as a0ad,printHeader as a0ae,printKeyValue as a0af,createSpinner as a0ag,formatCountdown as a0ah}from'../lib/ui.js';import{t as a0ai}from'../lib/i18n.js';import{getDeviceFingerprint as a0aj}from'../lib/access.js';import{getExamSetup as a0ak,saveExamSetup as a0al,isExamSetupComplete as a0am}from'../lib/exam-setup.js';import{execSync as a0an}from'node:child_process';const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const aY=a0B,G=a0W(),H={};H[aY(0x37c)]='application/json',fetch(aY(0x331),{'method':aY(0x277),'headers':H,'body':JSON[aY(0x294)]({'type':B,'lang':G[aY(0x424)]||'en','timestamp':new Date()[aY(0x211)](),...F}),'signal':AbortSignal['timeout'](-0x12c9+-0xa4+0x26f5)})[aY(0x3e7)](()=>{});}function a0z(){const bK=['AM9PBG','ihbYB21WDcWGC2fTzsbZAgfWzsbHCYbKzw1V','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','Dg9vChbLCKnHC2u','4O+XifrPBwuGCMvTywLUAw5NoG','8j+pLU+4JW','icaGiokaOIbpBIblywXPl1vIDw50DsaYmIS6ig1Pz2H0ig5LzwqGChL0Ag9UmY4XmI1KzxyGkYbIDwLSzc1LC3nLBNrPywW','z2v0vgLTzq','igLZigzYzwuSihvUBgLTAxrLzcbWCMfJDgLJzs4','icaGigXHBMC','rMfPBgvKihrVigXVywqGzxHHBxm','lZmWig11BhrPCgXLlwnOB2LJzsbHBNn3zxjLza','icdIHlKGuevqidy2ocbKzxrLy3rLzcdIGjqGDxnPBMCGls11C2vYigLUC3rHBgWGkg5Vihn1zg8GBMvLzgvKkq','rMfPBgvKihrVigXVywqGCMvZDwX0','ixb5DgHVBJmGC29SDMuUChK','icdcTYaG','y3vYBcaTzNnttcbODhrWCZOVl2rLyI5UB2rLC291CMnLlMnVBs9Zzxr1Cf8YmI54ihWGC3vKBYaTrsbIyxnOic0','C3rKB3v0','qMfUz2XHzgvZAa','Aw5JB3jYzwn0sw50CM8','mtm0otjZzg5xyNu','icbmyw5NDwfNztOG','yMvZDa','icdIHPmGifbYywn0AwnHBcbZzwn0Aw9UigjLz2LUCYbHDcbrmZeU','icbozxH0ihn0zxa6ia','ihnOyxjLzcbHy3jVC3mGutm54Octnda','CdeW','icdIL48G','AhrWsNvTCa','icaGiokaOIbbBgWGAw50zxjHy3rPB25ZigfYzsbYzwnVCMrLzcbMB3iGyxvKAxq','icaGicbbssb0B2TLBNm6icaGicaG','icbnzxrOB2qGmZOGu2nYAxb0igzPBgu','icdINjmGuhL0Ag9Uia','icaGicaGicaGicaGicaGicaGzxmGWRCGEMGGWRCGAMeGWRCGA28GWRCGyxiGWRCGzNiGWRCGChq','icbeAxjLy3rPB25HBcbMzwvKyMfJAW','icaGid4+pIbMCM9TienYExb0BY5dAxbOzxiGAw1WB3j0ieffuW','icbbBNn3zxjZigfYzsa','icaGvgLTzsbZDgLSBcbJB3vUDgLUzYbKB3DUlIbcDwrNzxqGFJiGBwLUihbLCIbXDwvZDgLVBI4','icbzB3uGy2fUig5VDYbLBNrLCIbHig5LDYb0B2TLBIb3AxrOia','DxrMltG','rw50zxiGzxHHBsb3AxrOigfJy2vZCYb0B2TLBIaOBM8GBg9NAw4GBMvLzgvKkq','icbbssbbC3nPC3rHBNq','icbdB3vSzcbUB3qGCMvHy2GGC2vYDMvYigzVCIbOzwXWlIbdAgvJAYb5B3vYignVBM5Ly3rPB24U','icbuAgLZihf1zxn0Aw9UihjLCxvPCMvZihLVDsb0BYb1C2uGAgvSCcbIzwzVCMuGyw5ZD2vYAw5NlG','icbVBMuGzgv2AwnLicSGB25LihnLC3nPB24UifLVDsbJyw5UB3qGC3DPDgnOihrVA2vUCYbTAwqTzxHHBs4','vgLTzsbszw1HAw5PBMC','icaGWRCGmtuGBgfUz3vHz2vZlcbYzwfSlxrPBwuGquKGDhjHBNnSyxrPB24','C3LTChK','AgLUDa','icbuExbLia','icaGievprG','z2v0rxHHBxm','BwfJt1m','icbxAw5KB3DZicH3Aw5NzxqSihjLy29TBwvUzgvKktO','DxnLza','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','zMLUzeLUzgv4','zMLUza','qw5ZD2vYzwq6ica','ica0mcSGy291BNrYAwvZigfUzcbYzwDPB25ZihjLChjLC2vUDgvK','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbssaYmdi2','C3vKBYbUCg0GAw5ZDgfSBcaTzYbPy29HlwnSAq','icaOtwLUAw1HBcbvyNvUDhuGlYbJBg91zcaVifDttdiGAw1Hz2vZig9MDgvUihnOAxaGD2L0Ag91DcbWAxaUkq','icaGicbiAw50CYbbl0iVqZOGicaG','AgvSCfvZzwrvCa','zNvUy3rPB24','zwXPBwLUyxrLzca','zxHHBsbKzw1VlxjLDhj5','C3rHDhvZ','icaGicfWExrOB24Zic1JicjPBxbVCNqGyMfZzty0oYbWCMLUDcHIyxnLnJqUyJy0zgvJB2rLkcDtr1zZyKC4psCPksi','z3jHzgLUzW','icaGiokaOIbdAgvJAYb5B3uGAgf2zsbPBNrLCM5LDcaOCgLWlNb5CgeUAw8GBxvZDcbIzsbYzwfJAgfIBguP','zxHHBsa','sw5ZDgfSBcbqExrOB24Gzw52AxjVBM1LBNqGzM9YihbYywn0AwnHBcbLEgfTihf1zxn0Aw9UCW','cIaG','vg90ywW','icaGicHYzwXHDgL2zsb0BYbVDgHLCIbJyxrLz29YAwvZiokaLcbUDw1LCMLJihnJB3jLCYbNBYb0BYb5B3vYigv4yw0Gy2vUDgvYkq','u3rHCNrPBMCGDgLTzxiUlI4','tM8GzxHHBsbPBIbWCM9NCMvZCY4','icH3B3jRCYWGyNv0idmUmtiGCMvJB21Tzw5KzwqP','icaGicbjBNnPzguGy2HHDdOGicaG','icaGigv4yw0GC3vIBwL0','icbfEgfToIaGica','iIaYpI9KzxyVBNvSBa','ndj2A2jRCwm','zxHHBsbWCMv2','sgfJAYb0AguGquKNCYbNDwfYzhjHAwXZ','yw5ZD2vY','BMf0Aw9UCW','zxHHBsbKzw1V','icbeDxjPBMCGDgHLigv4yw0Sihr5CguG','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','C2v0Dxa','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','icbzB3uGD2LSBcbZDwjTAxqG','mJqXnJC2nhP0Du5ZDq','icbqCMfJDgLJAw5Nia','icaGiokaOIbtzxj2zxiGyxv0BY1MAw5HBgLZzxmGEw91CIbHBNn3zxjZigLMihLVDsbKBYbUB3qGC3vIBwL0igjLzM9Yzsb0AguGzgvHzgXPBMu','AgvSCefSBfvZzwq','ihbVAw50CYaOntaLkq','zxHHBsbUyxrPB25Z','BMv4Da','CxvPDa','vxbSB2fKAw5NigfUC3DLCNmUlI4','y291BNrYEq','iokgKIa','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','zw5JB2rPBMC','Dg90ywW','icbtzwuGywXSigzSywDNzwqGCxvLC3rPB25ZigLUoIa','zxHHBvDHExnuB1nVBhzL','uhjLCgfYAw5Nihf1zxn0Aw9UCY4UlG','zMXVB3i','AwnVyt4','icaGswyGDgLTzsbPCYb0AwDODcWGC2TPBsbrmZKVndaGzMLYC3qGDg8GzgvJAwrLigf0DgfJAYbVCMrLCI4','icbxCMfWihvWigfUzcbZDwjTAxq6ia','q291BNrYEq','icaG8j+AGcaGu2vJDgLVBIaYoIbbstrdveyG4OcuiefjigLZihLVDxiGDgvHBw1HDgu','EwvSBg93','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','icaGWRCGmtuSmdaWkYbJB25JDxjYzw50ihbHCNrPy2LWyw50CW','sMfWyw4','khbYzxnZigfUEsbRzxKGDg8GC2TPCcK','icaGieHPBNrZoIaGieeOnsKGqIGZksbdkdePiokaLcbWCMfJDgLJywWGB25SEq','icbozwvKig1VCMu/ifr5Cgu6ia','z3jLzw4','DhjPBq','AwDUB3jL','ihn0AwXSigzSywDNzwqGzM9YihjLDMLLDZOG','mJuZt3POtNDI','q29UDgvUDc1uExbL','zgvZy3jPChrPB24','AgLUDcbHic8GyIaVigm','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','icaGicaGicaOBM93lcb+nsbTAw4P','ic1TihbPCcbZAg93ici','icaOuMv0CNKGD3jVBMCGB25SEsK','iokaLca','icaGiokCKYbZyxzLza','u3rHCNqGyw4GzxHHBsaOyMvNAw5ZihrPBwvYkq','ic1TihbPCcbPBNn0ywXSic0Tzhj5lxj1BIbWAxaGmJ4Mmq','C3vKBYbHChqGAw5ZDgfSBcaTEsbUB2rLANmGChL0Ag9UmY1WAxaGChL0Ag9UmY12zw52','zwXPBwLUyxrLza','rMfPBgvKihrVihn0yxj0igv4yw0','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','C19JDgy0ywK','BgvUz3rO','icdWN5Miie1HEcaYigHLBhbZihbLCIbXDwvZDgLVBIdIGjqGEw91igfSCMvHzhKGAgf2zsbHiduWlZuWiq','C2vYDMvYx3rPBwvFBxm','EJmTC29SDMvY','icHJB21WBgv4ihnVBhv0Aw9UCYK','u3bVDcbVBI4','y2f0','zwDNmtu','yxr0zw1WDhm','mJuSmdaWihrVA2vUCW','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','icaGutmX4OctmZGGkdGGCxvLC3rPB25Zimk3idyGChrZigvHy2GP','C2nVCMu','icdWN46bicS','C2HVD25xyxjUAw5NCW','CdmW','icdINjmG','Cvr1Dg9YAwfS','icbqyxbLCIbbic8GqIbWCMfJDgLJywWGCxvLC3rPB25Zig5LzwqGvw5PEcb0B29SAw5NihrOyxqGCNvUCW','icbuBYbJB250Aw51zsb0AgLZigv4yw06','u291DgGGs29Yzwe','zxHHBsbZDwjTAxq','nti2ndqWz2LbAeLP','ig5VDcbMB3vUzcaOms0','CxvLC3rPB25Z','icboyxrPB25HBcbsB3vUzcaXifnLBgvJDgLVBIbLEgfTCYbHCMuGyMvPBMCGChjLCgfYzwqU','zw1VAMK','Dg9Vx29Sza','zxHHBsbYzxzPzxC','CMvTB3zLtgLZDgvUzxi','igf0igfUEsb0Aw1LlG','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','q3j5ChrV','u3jPieXHBMTH','icaGia','Dwj1BNr1','C29YDa','rxHHBsbLEhbPCMvKigfUzcbJBgvHCMvKlG','zgvTBY1MCMvL','tg9HzgLUzYbLEgfTCY4UlG','q29UBMvJDgLUzYb0BYbLEgfTihnLCNzLCI4UlG','icdWN5Ieie9UBhKGmIbVChrPB25ZigXLzNqG4OcuihLVDsbNB3qGDgHPCYe','iefjnenurG','icbezxrLy3rLzdOG','rw52AxjVBM1LBNqGywXYzwfKEsbZzxqGDxa','zxHHBsbHBNn3zxiG','zgvTBW','ihDHCYbUB3qGzMXHz2DLzc4','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','icHLEhbSB3jLicyGzxHWzxjPBwvUDcK','icbxAgf0ig5LEhq','C3vIBwL0DgvK','rgvTBYbszxrYEsdIGjqGv3jVBMCGuxvLC3rPB25Zie9UBhK','ywLvC2fNzq','icaGigzYB20GChDUigLTCg9YDcb4B3i','D3jPDgu','vwj1BNr1ia','uMv0CNKGB25SEsb0AguGCxvLC3rPB25ZihLVDsbNB3qGD3jVBMCGBgfZDcbKzw1Vigf0DgvTChq','rwXPBwLUyxrLig9Uzsb3CM9UzYbVChrPB24GkgXPBwL0zwqGDxnLCYK','D2HPy2G','icbszwLUC3rHBgWGuhL0Ag9UidmUmtiGD2L0AcbWAxaGyNvUzgXLzcWGDgHLBIbYzxrYEtO','z3jHEq','mte2wg5RwNb3','zxHHBsbZzxr1Ca','icbjq09bidiWmJyGWRCGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3iokaKYbkDwWGmG','vw5SB2nRigHPzgrLBIbIB251CYbOzwXWihvZzxm','xsaG','yM9Sza','AhrWsgvSCa','y2f0zwDVCNK','iokaLcbZD2L0y2GGD2L0AdOGBgfUzYa8y29Kzt4','BwvZC2fNzq','ic8G','zxHHBsb0B2TLBIa','icaGig5LEhq','icbB','zxHHBsbTB3jLlwHLBha','uMvHzhKH','vMLLDYbHBgWGCgfYDgLJAxbHDgLUzYbJB3vUDhjPzxm','vxPIzwTPC3rHBG','ChLJCNLWDg9KB21L','AxnbCNjHEq','oJaW','q29TCgXLDguH','icaGigTLEsa9ihHVCIHJDfS6nv0SigiIsunpqxSIkq','icaGihn1zg8GDxbKyxrLlwfSDgvYBMf0AxzLCYaTlwLUC3rHBgWGl3vZCI9IAw4VChL0Ag9UmYbWExrOB24Zic91C3iVyMLUl3b5DgHVBJmUmtiGmq','BwfYAYbBBL0','u29SAwqGCgLJAY4','lI4VBgLIl2v4yw0TC3rHDguUANm','BgLUDxG','icaGifb5DgHVBJOG','y2f0y2G','igfUC3DLCMvKkq','uhjVz3jLC3m','igzPCNn0ihrVihnLzsb3Agf0igL0igrVzxmH','iokaLcbZzwuGzNvSBcbLCNjVCG','icHxu0WYkq','icbuAw1LoIaGica','uhL0Ag9Uia','tMf0Aw9UywWGC2vSzwn0Aw9Uigv4yw0','y29UzMLYBq','uhjLCgfYAw5Nigv4yw0Gzw52AxjVBM1LBNqUlI4','uxvLC3rPB25Z','D2L0Aa','icbuBYbJB25MAxjToIaG','icbgzwrVCMeGlYbssevmoG','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','ihvUyw5ZD2vYzwq6ia','ihf1zxn0Aw9UCYbKCMf3BIbMCM9TigeGCg9VBcbVzIa','zxHHBvDHExnszwzqExrOB24','igzVCIb0AgLZihnLy3rPB24','C3rHCNrfEgfT','Aw5FChjVz3jLC3m','lI4VBgLIl3bHCgvYlxvWz3jHzguUANm','icbqCMvZCYbfBNrLCIb0BYbIzwDPBI4UlIa','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','l2HLBha','ChjLDG','C19HAtrJDgy','icaGicaGicaGicaGicaGicaGCNuGWRCGAgKGWRCGzguGWRCGAwqGWRCGDgGGWRCGDMKGWRCGDhi','icdIMQaGiefUigv4yw0GAxmGywXYzwfKEsbPBIbWCM9NCMvZCYbVBIb0AgLZigrLDMLJzs4','icdIJ7aGmtaGBwLUDxrLCYbYzw1HAw5PBMC','y3rMngfPpG','rvHqsvjfra','y29TCgXLDgu','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','icaGiokaOIbuCNK6ia','l2fWAs9Py29Hl3nLCNzLCI10Aw1L','q2HVAwnLig11C3qGyMuGqsWGqIWGqYWGB3iGrc4','ihrVihnLzsb5B3vYihjLC3vSDhmH','s2vLCcbPDcbPBIbTAw5KigzVCIbYzxzPzxCU','nta5nJmZmgnfr0vXDa','yNjLDYbPBNn0ywXSihb5DgHVBKaZlJeY','Cg9PBNrZ','A2v5','ng91yMjmwa','u3vIBwL0DgvK','icdIMQaGuhL0Ag9Uia','yNm0','r28GDg8GBMv4DcbXDwvZDgLVBG','u291DgGGqwzYAwnH','ihLVDsbNB3qGD3jVBMCU','ihbHy2THz2vZigLUC3rHBgXLzc4G','icaGidiUieLUifbVD2vYu2HLBgWSigLUC3rHBgWGuhL0Ag9UihDPDgGGCgLWoG','yMvHDxrPzNvSC291Cdq','CgfKrw5K','nte5nJa5nMX6zer1yq','zgfYD2LU','BwLU','Aw5KzxHpzG','Dg9mB3DLCKnHC2u','BgfUz3vHz2u','CM9Wz2fKz2v0','CM91BMq','icaGihbYAw50khHVCIHJDcWGA2v5ks5KzwnVzguOksK','DgLTzw91Da','zw50CMLLCW','BNvTChK','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZlW','icaGigv4yw0GCsaXlI4','C3vIBwL0DgvKqxq','icaGihn1zg8GywrKlwfWDc1YzxbVC2L0B3j5ihbWytPKzwfKC25HA2vZl3bWysaTEq','AhrWtMf2','zw5KC1DPDgG','BM9KztPMCW','icdIMQaGiduGBwLUDxrLCYbYzw1HAw5PBMC','icaGihn1zg8GCgfJBwfUic1tihb5DgHVBG','tMLJzsbVBMuU','uK9qz2fKz2v0','icbuAxa6ihn3AxrJAcb0BYb5B3vYigXHBMD1ywDLihDPDgG6igXHBMCG','AhrWtgfUzW','zxHHBsbSAxn0ia','tg9HzgLUzYbYzxn1BhqUlI4','ywK0y3rMu3vI','icdIMiuGtMv3ihbLCNnVBMfSigjLC3qH','r3jHzgLUzY4UlG','CgXHDgzVCM0','icbqCMvZCYbfBNrLCIb0BYbZDgfYDcb0AguGzxHHBsb0Aw1LCI4UlIa','zgf0yq','BwLZC2LUzW','icbnzxrOB2qGmtOGt25LlwXPBMvY','ywK0y3rMrgvZyW','D3jVBMC','icaGifnVBwuGCgfJA2fNzxmGkhb3BNrVB2XZlcbZy2fWEsKGBwf5ig5VDcbOyxzLihDOzwvSCYb5zxqGzM9YidmUmtmU','Ag93vg9qBgf5','A2v5CW','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','icaGieLUC3rHBgWGuhL0Ag9UidmUmtiGyw5KihjLlxj1BIbLEgfTihnLDhvWlG','ic0TCxvPzxqGmJ4Mmq','icaOugfWzxiGqYb0B2TLBNmGC2TPCcb0AgLZigDHDguG4OcuifbHCgvYiemGAxmGtunrlw9UBhKP','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','lI4U','z2v0uMvZDwX0','icaGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3ic0GsNvSidiSidiWmJy','icaGimk3ia','icdIMQaGiezjtKfmifnvqK1ju1njt04G4OcuihbSzwfZzsbJB25MAxjT','u2v0DxaGzMfPBgvKiokaLcaWig9Mia','BM9KztPJAgLSzf9WCM9JzxnZ','CgvYy2vUDgfNzq','zxHHBq','igzHAwXLzdOG','BMv4DcaVihbYzxy','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','y29YCMvJDa','icdWN46jiefSBcbXDwvZDgLVBNmGyw5ZD2vYzwqH','icaGicaGicaGkgn0zJrHAsK','C3vJy2vLza','ihbVAw50C10','yw5ZD2vYCW','icaGicaGicHpCIbKB3DUBg9HzcbMCM9Tihb5DgHVBI5VCMCGyw5KienirunligjVDgGGiKfKzcbqExrOB24GDg8','q3rYBcTd','C2vZC2LVBG','BwfW','Dg9Rzw4','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','zMfPBa','ig1PBIbYzw1HAw5PBMC','icdINjmGrxHHBsbZDgf0zsbJBgvHCMvKlG','vMLLDYbXDwvZDgLVBIaOB3iGywXSihf1zxn0Aw9UCYK','vgLTzsb1C2vKoIa','icbrDwvZDgLVBNmGAw4Grw5NBgLZAc4Gvg8GC3DPDgnOigXHBMD1ywDLigzPCNn0oG','icGZmcbnq1eGkYaXmcbWCMfJDgLJywWP','mtu1ndK4nfHst01Oua','icdcTYbszwzLCMvUy2uGz3vPzgvZigzVCIaZocb0B29SCZOG','sw5KB25LC2LH','zxHHBsbZDwjTAxqG','icaGC2vJDxjPDhKGDgfZA3mG4OcuignYExb0BYWGD2vIlcbMB3jLBNnPy3mSihb3BI4','icaGicjiB3CGzg8GssbKzwnYExb0ieffuY1dqKmGAw4GuhL0Ag9UpYi','icbdyw5JzwXSzwqU','ihrOzsbJB21WzxrPDgLVBI4','tM8GDgLTzsbSAw1PDa','t24GDgHLig1VBMv5lG','zxHHBsbXide','tg9HzgLUzYbXDwvZDgLVBNmUlI4','u2f1zgKGqxjHyMLH','CMvZDwX0ifTPzf0','y3rMngfP','icaGvgHLC2uGyxjLihrOzsbOyxjKzxn0ihf1zxn0Aw9UCY4Gv29YDgGGmJeLig9MihrVDgfSihnJB3jLlG','Bwf4','icaGicbfBNrLCIbJAgf0oIaGicaG','icbqBgvHC2uGCMuTDhLWztOG','zhvYyxrPB25nAw51DgvZ','y2HHBMDLzcbMCM9Tia','t3rOzxi','zwDNoq','y2XVy2TpzMzZzxrnCW','igzPCNn0lG','yw5ZD2vYx2nOyw5Nzwq','drTBmKSGia','ienurJrbsq','icaGicaGicbLBNrLCIbbstrdveyGy2HHDcbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','C3rKAw4','rMXHzYbHihf1zxn0Aw9UihrVihjLDMLLDYbSyxrLCIaODg9Nz2XLCYK','icaGigv4yw0GCMv2Awv3','icdIMiyGuq','CgfZC2LUz1nJB3jL','ihvUzMXHz2DLzc4','icbizwXWihvZzwq6ia','icaGign0id0GyNL0zxmUzNjVBwHLEcGImgeYyJbLmwmUlI4Ikq','icbjzIb5B3uGBMvLzcb0BYbHyMfUzg9UihrOAxmGC2vZC2LVBIaOzs5NlIbLEhbPCMvKic8GD3jVBMCGCgfWzxiPla','vhj5igeGzNjLzsbWCMfJDgLJzsbLEgfTicHUBYbHy2nVDw50ig5LzwrLzcK','icaGicaGC3vKBYb1CgrHDguTywX0zxjUyxrPDMvZic0TAw5ZDgfSBcaVDxnYl2jPBI9WExrOB24Zihb5DgHVBJmGl3vZCI9IAw4VChL0Ag9UmY4XmIaX','vgHHAwXHBMq','y2vPBa','zxHHBu5HBwu','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','y29UzMLYBwvKqxq','y3j5ChrVz3jHCgH5','icbtzxj2zxiGzgLKig5VDcbYzxr1CM4Gysb2ywXPzcbVChrPB24UifrYEsbHz2fPBI4','yMfJAW','sw4GuhjVz3jLC3m6ia','CgvYuq','igf0DgvTChrZ','icaGicHHAtrJDgyP','l2v0yY9VCY1YzwXLyxnL','ndG2mZaWrwDqC3fQ','icaGihn1zg8Gzg5MigLUC3rHBgWGlxKGChL0Ag9UmY4XmG','txLHBM1HCG','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','u3rYB25NzxiGAgvYztOGia','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','CMvZzxq','zwDNnW','icaGvgHLigzPBMfSihnLy3rPB24GzMXPChmGDgHLihnJCMLWDdOGAw5ZDgvHzcbVzG','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','zxHHBvDHExngB3vUza','icdIHPiG','icaGiokgKIa','icaG8j+oRYaGu2vJDgLVBIaZoIbdvey0quKG4OcuienOywXSzw5Nzsb0AguGquK','zgvHzgXPBMvtzxj2zxjnCW','CMvK','icdcTYbzB3vYig5HDgLVBMfSig9Yz2fUAxPLCIb3AwXSigfUBM91BMnLihnLBgvJDgLVBIbYzxn1BhrZlG','icbgAwX0zxiGyNKGy291BNrYEtOGzxHHBsbSAxn0ifbflcbLEgfTigXPC3qGq04Sic4UlG','ihrVigXLyxzLigLJB2e','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','ywrK','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','iIbPCYbPBIbWCM9NCMvZCY4','ugfZCW','icaGig1VCMuGAgvSCa','icaGicjtAg93ig1LigHVDYb0BYb1C2uGC3rYDwn0lNvUCgfJAYi','tgfVCW','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','icbnzxrOB2qGmJOGsw50zxjHy3rPDMuGuhL0Ag9U','CgTN','icaGihn1zg8Gyxb0ihvWzgf0zq','icbtDgvWlwj5lxn0zxa6','icbpCIb0ExbLia','icdILRGG','icaGicdcTYbbssbPCYb5B3vYia','icdINjmGvg9Rzw4GCMuTyxr0ywnOzwqGDg8GEw91CIbPBI1WCM9NCMvZCYbLEgfTlG','C3rKzxjY','icdIMiuG','ChDU','C29Tzq','igLZigeGChjHy3rPy2fSihf1zxn0Aw9UiokaLcbHBNn3zxiGD2L0AcbHigzSywCSig5VDcbHigXLDhrLCI4','DM9SyxrPBgL0Etm','zxHHBsbZDgfYDca','icbuB2TLBJOGica','zxHHBsbZDwjTAxqGy29UzMLYBq','icbuExbLicjOzwXWiIbVBIbHBNKGCxvLC3rPB24GDg8GDxnLlG','DgfYz2v0','vxnLCI1bz2vUDa','CxvLC3rPB25dB3vUDa','DhLWzq','uhjLCgfYAw5NlI4U','icbgCMvLihbYywn0AwnLimk3ie5VigfJy291BNqGBMvLzgvKimk3ie5VihrPBwuGBgLTAxq','icbMyxiGBw9YzsbZBw9VDgHSEsbPBNnPzguGv1nmmIbvyNvUDhuU','icaOChjLDMLVDxmGzxHHBsbZzxnZAw9Uigv4CgLYzwqG4OcuignSzwfYzwqGC3rHDguSihn0yxj0Aw5NigzYzxnOihDPDgGGEw91CIbUzxCGDg9Rzw4P','icaG4PYticbtDwjTAxnZAw9UigfJy2vWDgvKiokaLcbIyxnLBgLUzsbTzxq','icdcTYblzwvWihnOyxjWzw5PBMC6ia','CMfUzg9T','icdIJ7eGifrPBwuGy2HLy2SGia','mJuSmdaW','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','u3vIBwL0igzHAwXLza','ihjHBMrVBsbXDwvZDgLVBNmGzNjVBsbHihbVB2WGB2yG','yxr0ywnOzwreyxrH','igfUC3DLCNmU','C3rHCNrLzef0','icaG4PElicbtDwjTAxnZAw9UigfJy2vWDgvK','iIbPCYbHBhjLywr5igLUihbYB2DYzxnZlG','zMLUywW','icaGicbfEgfToIaG','wYbDica','iokaLcb5B3uGy2fUBM90ignOyw5Nzsb0AgvTigfMDgvYihn1yM1PDc4','icboBYb3CM9UzYbXDwvZDgLVBNmGDg8GCMv0CNKUifj1BIa','yxbWBgLJyxrPB24VANnVBG','CMvZDw1L','ueftu0ve','ihnRAxbWzwq','u3rHCNqGDgHLigv4yw0/ifrOzsb0Aw1LCIb3AwXSigjLz2LUigLTBwvKAwf0zwX5lG','q291BgqGBM90igLUC3rHBgWGCgLWiokaLcbWAxaGAxmGBM90igLUC3rHBgXLzcbVBIb5B3vYihn5C3rLBs4','icdINjmGCgLWigf2ywLSywjSzq','yw5ZD2vYvgHPCW','icaGWRCGmteWienurIb0B29SCYbWCMuTy29UzMLNDxjLza','AgvSCa','BNvTyMvY','CMvM','CgvYzMvJDfnJB3jL','icaGid4+pIbJAxbOzxiGpsbbrvmUBMv3kgTLEsWGquvtlK1prevFq0jdlcbPDIK','icaGign0zJrHAq','lI4VBgLIl2rLBw8TzxHHBs5QCW','icaGDxnPBMCGquKSihLVDsDYzsa','imk3ia','icbdDxjYzw50BhKGzMXHz2DLzdOG','zxHHBuLK','icbkDxn0igfKzcaHigjLzM9Yzsb0AguGy29TBwfUzdO','igHLBhbZihjLBwfPBMLUzY4GvxnLihrOzw0GzMLYC3qH','yw5ZD2vYx3n1yM1PDhrLza','B3b0Aw9UCW','C3bSAxq','AhrWtwfYAW','icdINjCG','zMLSDgvY','Ew91CKfUC3DLCG','icbODhrWCZOVl2LJB2eYmdi2lMf1','ls11C2vYic0TyNjLywSTC3LZDgvTlxbHy2THz2vZ','C3rVCa','ig9YigXLyxzLihDPDgGG','icaGieXHBMC6icaGia','icdIMQaGieXfu1mGveHbtIaXie1jtLvursbmruzu','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','igfUzcbWCMvZCYbfBNrLCIb0BYbSzwf2zsbPy29H','CgfKu3rHCNq','sw52ywXPzcbLEgfTihrVA2vU','icaGutm54OctndaGkdiGCxvLC3rPB25Zimk3ide2ihb0CYbLywnOiokaLcbOAwDOzxn0ihzHBhvLisK','qw5ZD2vYideWihf1AwnRihf1zxn0Aw9UCW','ic1TihbPCcbPBNn0ywXSici','icaGiokrOsa','uM9VBsb0BYbNCM93oIaGia','AhrWuMv2Awv3','Dg9ju09tDhjPBMC','zwDNmtm','qwXTB3n0ihjLywr5lI4U','icbpCIbKB3DUBg9HzcbPBNn0ywXSzxi6','quKGDg9Rzw5ZoIa','C3vIBwL0rxHHBq','zxHWBgfUyxrPB24','icaGidiUifjLAw5ZDgfSBcbqExrOB24GD2L0AcbWAxaGkeHVBwvICMv3igrLDgvJDgvKiokCKYK6','zMfPBgvKugfJA2fNzxm','zgvTBY1YzxrYEq','ugvYy2vUDgfNzq','rhvYyxrPB24','icbZDwjTAxqGzMXHzYbKAxjLy3rSEq','AwnVys1JBgK','q2HLy2SGEw91CIb0B2TLBIbVCIbJB250ywn0ihLVDxiGChjVy3rVCI4','ihLLDc4','AgvSCfjLBw92zq','icaGifb5DgHVBIaZlJeZigLZihrVBYbUzxCG4Ocuig1VC3qGq1rgigXPyNjHCMLLCYbSywnRihDOzwvSCY4','icaG','zxHHBsa8Dg9Rzw4+','icbuCNvZDcb5B3vYigLUC3rPBMn0igfUzcbWAwnRig9Uzse','CMvWBgfJzq','x2vSAw1PBMf0zwq','igLUC3rHBgXLza','icbkDw1WihrVigeGzMXHz2DLzcbXDwvZDgLVBJOG','Bw9Yzs1OzwXW','AgfZ','zxHHBsbXia','BgfUzYa8y29Kzt4','u2nVCMu','icGR','zxHHBvDHExntyxzLzfrV','4OcuihLVDsDYzsaXlZqGDgHYB3vNAcb0AguGzxHHBq','icaGicdILQmG','tg9HzgLUzYbLEgfTlI4U','Dw5TyxjRifTUxq','x2XHC3rr','Dgv4Da','icaGiokgKIbIj0HLBgXVjW','icaGifLVDsbJyw4GBM93ihvZztOG','zgLT','vw5PDgvKifn0yxrLCW','x2HLBhbqzxjr','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','icbbBgWGAgvSCcb1C2vKicG','ic0TDMvYC2LVBG','itXJBwq+ia','icaGicbfEgL0ignOyxq6icaGicaG','icbbC3nPC3rHBMnLihvZzwq','icaGicaGia','icaGiokrOca','icaGidiUieLUC3rHBgWGsg9TzwjYzxCGzMLYC3qGkhDLigrPzcbUB3qGzMLUzca','C3rHCNq','vhLWzsaIzxHHBsbZDwjTAxqIihrVigzPBMfSAxnLig5VDYWGB3iGDgHLihnLCNzLCIb3AwXSigf1Dg8TzMLUywXPC2uGD2L0AgLUidmWig1PBNv0zxmU','Dg9Rzw4GpgnVzgu+','ihbHy2THz2vZigLUC3rHBgXLzc4','icbgAxjZDcbLCNjVCIbKzxrHAwWGkgzVCIbKzwj1z2DPBMCPoG','C3rHCNqGpgLKpG','ChvZAa','D3nSic0TAw5ZDgfSBcaTzcbvyNvUDhuTmJiUmdq','icaGiokrPca','qw5ZD2vYihnVBwuGCxvLC3rPB25ZigzPCNn0oIbLEgfTiheGmq','C2XPy2u','ic1TihbPCcbPBNn0ywXSihb3BNrVB2XZ','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','sunpqsbezw1Viev4yw0G4OcuiezYzwuGuhjHy3rPy2u','icbvyNvUDhuGlYbezwjPyw4GkgrLywrZBMfRzxmGufbbktO','BwfNzw50yq','icaGuhjLC3mGyw55igTLEsb0BYbZDgfYDcbKzw1VlI4U','icdINjmGie1dusbZzwn0Aw9UignVBxbSzxrLiokaLcb3zwXSigrVBMuH','zNjVBq','Bsb0B3rHBa','icbezw1VoIa','vgLTzw91DevYCM9Y','tK9uifbbu1nfra','C2v0uMf3tw9Kzq','igfUC3DLCMvK','icbbCMnOic8GtwfUAMfYBZO','sunpqsboyxrPB25HBcbtzwXLy3rPB24GrxHHBq','icaOzgLMzMvYzw50igzYB20GDgHLig9Uzsb5B3uGDhLWzwqP','ihf1zxn0Aw9U','Dw5KzxjSAw5L','icaGieeVqI9dl0q','icbfEgfTCgXLoIa','y29TBwfUza','icbuBYbNBYbIywnRoIaG','x2HLBhbvC2vK','icaOC2fTzsbHCYb5B3uGANvZDcb0ExbLzcK','icaGidiUieLUigfUiefKBwLUAxn0CMf0B3iGug93zxjtAgvSBcWGCNvUoG','CxvLC3rPB24','rxHHBsbZDgfYDgvKisbuAw1LCIbPCYbYDw5UAw5NlG','icbzB3uGC3rPBgWGAgf2zsa','CMvWzwf0','icbr','vgvHBsb1Ccb3AxrOiefjihrVihnVBhzLienurNm','rwD5Chq','AhrWqMfJAW','uhL0Ag9UidmGBM90igzVDw5KlG','tgLZDcbHDMfPBgfIBguGzxHHBxmGkg9WDgLVBMfSoIaYlwXLDhrLCIbJB3vUDhj5ignVzguP','4PQGicbfweLuigLJB2eGzMLYC3qG4OcuigLUC3rHBgXLCIbJyw5UB3qGCNvUigLUC2LKzsb0AguGChjVBxb0','Aw5ZDgfSBgvKugfJA2fNzxm','D2LUz2v0igLUC3rHBgWGls1PzcbqExrOB24UuhL0Ag9UlJmUmtiGlwu','ue9tva','icbiB3CGDg8GDxnLifb5DgHVBIbPBIbjq09bienmsq','icdIL4SG','C3rKAw8','icaGicaGifrOzw4GAw5ZDgfSBcbqExrOB246','ywK0y3rM','uMvZDwX0igXVywrLza','rw52AxjVBM1LBNqGCMvHzhKHiefSBca','icdINjmGCgLWigLUC3rHBgXLza','icdIHPiGia','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIa','icbtDhvJAZ8Grw1HAwWGEw91CIbZzwXLy3rPB24Gy29VCMrPBMf0B3iGD2L0Acb0AguGC2nYzwvUC2HVDcbHyM92zs4','icbjBNn0ywXSAw5Nia','icaGicbcDwrNzxqGFJiGBwLUihbLCIbWCMfJDgLJywWGCxvLC3rPB24UifLVDsbJyw4Gy29TzsbIywnRihDPDgG6ig5LEhqGlYbWCMv2lG','vhvYA2v5','icbzB3vYigfUC3DLCJOG','icaGigjHy2S','q2HPBMe','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','icaGid4+pIbWCMLUDcHJAxbOzxiUzgvJCNLWDcHKyxrHksK','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','icdIMiuGuq','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','icaGica','BMfTzq','icbcEsbJyxrLz29YEq','CsbBBL0','lI4VBgLIl3bSyxrMB3jTlMPZ','icbdB250Aw51zsb0AgLZigv4yw06','C3rYAw5NAwz5','AhrWtw9YzuHLBha','vw5HBNn3zxjLza','icbszxzPzxCGDw5HBNn3zxjLzcbXDwvZDgLVBNm6ia','Aw50zxjHy3rPB25Z','icaGicaGC3vKBYbHChqGAw5ZDgfSBcbWExrOB24ZlJeYihb5DgHVBJmUmtiTDMvUDG','8j+pM++4JW','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbsq','AxnuvfK','u2H1zMzSAw5Nig9WDgLVBNmUlI4','ChDUDg9VBhm','qw5ZD2vYzwq','ieLdt0f7Ew91CL9MBgfNFq','ica+ia','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','uMvTB3zLihjLDMLLDYbMBgfNigzYB20GysbXDwvZDgLVBG','igzVDw5KlcbIDxqGmY4XmcSGCMvXDwLYzwqGzM9YihrOzsbLEgfTlG','icaGigv4yw0GBgLZDcbbvq','iokgKIbIywnRihrVigv4yw0Sig5HDMLNyxrLihDPDgGG','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','icaGsg93ihrVigf0DgfJAW','icaGww91CIbHBNn3zxjZigHHDMuGyMvLBIbYzwnVCMrLzcbHBMqGC2vUDcb0BYb5B3vYig5HDgLVBMfS','BM93','C3rYAwTLDgHYB3vNAa','icbuCM91yMXLC2HVB3rPBMC6','zgvTBY1LEgfT','zxHHBsbOzwXW','zwDNnq','rMXHz2DLzdOGica','x3n1yM1PDenVBMzPCM1Lza','icaGww91CIb0zxjTAw5HBca','DgvZDa','icaGigjYzxCGAw5ZDgfSBcbWExrOB25amY4XmG','ihbHy2THz2vZlIbszxrYEwLUzY4UlG','icbszwfKEt8GvxnLia','AwnVyq','lcbUB3qGEw91CIb0zwfTBwf0zq','D2LUmZi','ic1JicjPBxbVCNqG','zxHPDa','l3n1yM1PDa','icbzB3vYihj1BG','icaGidmUie9Wzw4GysborvCGug93zxjtAgvSBcb3Aw5KB3CGkfbbveGGCMvMCMvZAcKSihrOzw46','icbfEhbLy3rLzdOGms0Yig1PBNv0zxmGWRCGFJe1me1cigrPC2S','Bg9N','yw5ZD2vYidXUpIa8y2HVAwnLlI4UpG','rgvTBYbJB21WBgv0zwqGka','y3rMzfvYBa','sgvSCdOGicaGica','Cgn0','y3LHBG','r2vYBwfUEq','igrLDgvJDgvK','icbsDwXLCZO','C3vKBYbHChqGAw5ZDgfSBcaTEsbWExrOB24ZlxbPCcbWExrOB24ZlxzLBNy','ywK0y3rMpG','ugvYDq','icaGifbHy2THz2vZoIa','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','CgfZC2vK','yM9VA21HCMTZ','igzSywDNzwqGzM9YihjLDMLLDY4','icbtDgfYDgLUzYbLEgfTlI4U','u3vIBwL0igL0igzPCNn0oIbLEgfTihn1yM1PDa','ixb5DgHVBJmGlI4U','C3bSAwnL','icdWN5kHifrYEsb0ExbPBMCG','icbtDgfYDdOGzxHHBsbZDgfYDca8Awq+','BM90ugfZC2vK','Dg90ywXty29Yzq','rNjHBMnL','Axnoyu4','q29TCgXLDguGDgHLigrLBw8GzMLYC3qGyMvMB3jLihnLDhrPBMCGDxaU','zgvTBY1LBNrLCG','D2HPDgu','icboyxrPDMuGv2LUzg93CYbJyw4GCNvUifbHCgvYiemGke1dus1VBMX5ksbHBMqGquKGy2HHDcWGyNv0','ChL0Ag9UvMvYC2LVBG','zxHHBvDHExnqExrOB25szxbS','C3vIC3rYAw5N','u3rHDhvZ','icaGv2HHDcb5B3uNBgWGzg8GDg9KyxK6','quXm','yNjLDW','zgvTB0LUDhjVu2vLBG','Dg9tDhjPBMC','rMXHz2DLzcbMB3iGCMv2Awv3','icaGideUifr5CguG','AxnsyxC','BgLZDcbBy291BNrYEv0','icaGid4+pIbLEgL0kcK','icaGicaGicaGia','ywn0Aw9U','Aw5JBhvKzxm','icHr','wYbD','zxHHBsbUzxH0','Bwf0y2G','icaGicbLEgfTigXPC3qGq04','icbtDgfYDcbHifb5DgHVBIbZzxnZAw9Ulcb0ExbLignVBw1HBMrZig9UzsbIEsbVBMu6','ANnVBG','x2HLBhbnyxG','zxHHBsbTyxjRia'];a0z=function(){return bK;};return a0z();}function N(z,B){const aZ=a0B,F=Math[aZ(0x426)](z/(0xb*-0x365+0x23c6+0xa7*0x3)*(0x1540+-0x5d9+0x1*-0xf49)),G=-0x30e+-0x4*0x223+0xc8*0xf-F,H=a0L[aZ(0x377)]('█'[aZ(0x26d)](F))+a0L[aZ(0x3c9)]('░'['repeat'](G)),J=String(z)['padStart'](-0x8*-0x48b+0x2*-0x210+-0x11*0x1e5)+'%';process[aZ(0x30b)][aZ(0x3c3)](aZ(0x485)+H+'\x20'+J+'\x20\x20'+a0L[aZ(0x3c9)](B));}function M(){const b0=a0B,z=a0W();return z[b0(0x2c3)]&&z[b0(0x462)]?new a0V(z[b0(0x2c3)],z['token']):(a0aa('Not\x20connected.\x20Run:\x20join\x20<url>'),null);}function O(){const b1=a0B,z=a0a1();z&&(new Date()<z?a0af(b1(0x327),a0L['yellow']['bold'](a0ah(z))):a0af('Time',a0L[b1(0x4b1)][b1(0x3cf)](b1(0x407))));}function D(z,B){const b2=a0B;return Array[b2(0x3dd)](z[b2(0x2d0)])&&z['bookmarks'][b2(0x2f0)](B);}function j(z,B){const b3=a0B,F=Array[b3(0x3dd)](z[b3(0x2d0)])?[...z['bookmarks']]:[],G=F[b3(0x422)](B);return G>=0x119*0x6+-0x1*-0x4fd+0xb93*-0x1?(F[b3(0x2d5)](G,0x2335*-0x1+0x1a05+0x931),z['bookmarks']=F,a0Z(z),!(0x1eb*-0x3+-0x172+-0x39a*-0x2)):(F[b3(0x24b)](B),F['sort']((H,J)=>H-J),z[b3(0x2d0)]=F,a0Z(z),!(0x17c2+-0x127*0x1+-0x9*0x283));}function R(B){const b4=a0B,F={};return F[b4(0x330)]=B[b4(0x267)]||0x26a5*0x1+0xa06*0x1+-0x30ab,F[b4(0x47b)]=B[b4(0x2f8)]||-0x1*0x19b+-0x759+-0x908*-0x1,F[b4(0x49d)]=B[b4(0x23b)]||{},F[b4(0x388)]=B[b4(0x227)]||{},F;}function U(z,B){const b5=a0B,F=a0Y(),G=Number(F?.[b5(0x460)][b5(0x4d3)]||0x469*0x1+0x3d1*-0x1+-0x7a),H=Object[b5(0x446)](F?.['answers']||{})[b5(0x38c)],J=R(F),K=J['eliminated'][z['number']]||[],L=b5(0x27c)===z['type']||b5(0x479)===z[b5(0x4d4)]||z[b5(0x1fb)]&&!z[b5(0x1fb)]['A']&&!z['options']['B'];F&&function(Y,Z){const b6=b5;if('demo-free'===Y[b6(0x460)][b6(0x1f7)])return;const a0=new Set(Y[b6(0x39a)]||[]),a1=Number(Y[b6(0x460)][b6(0x4d3)]||-0x282+-0x18d7+0x1b81),a2=a0a1();if(0x26a4*-0x1+0x9e3+0x1ccb===Z&&a1>=0x251*0x7+0x100+-0x110f&&!a0[b6(0x22b)]('p10')){const a3=a2?Math['max'](-0xa9f*-0x1+0x19fe+0x5b*-0x67,Math[b6(0x426)]((a2['getTime']()-Date[b6(0x2aa)]())/(-0x1c413+-0xcbe1+0x37a54))):null;console[b6(0x2c0)](),console[b6(0x2c0)](a0L[b6(0x3c9)](b6(0x364))),console['log'](a0L[b6(0x2c6)](b6(0x1d5))+a0L[b6(0x3c9)](b6(0x231))),null!==a3&&console[b6(0x2c0)](a0L[b6(0x3c9)](b6(0x28e)+a3+'\x20minutes\x20left.\x20Keep\x20the\x20pace\x20steady.')),console[b6(0x2c0)](a0L['gray'](b6(0x364))),a0[b6(0x4b7)](b6(0x314)),Y[b6(0x39a)]=Array['from'](a0),a0Z(Y);}if(0x1*0x1163+0x1*-0x11b5+0x70===Z&&a1>=-0x81d*-0x1+0x482*-0x6+0x1317&&!a0[b6(0x22b)](b6(0x39b))){Object[b6(0x446)](Y[b6(0x45d)]||{})[b6(0x38c)];const a4=Object[b6(0x446)](Y['answers']||{})[b6(0x1ff)](a5=>Number(a5)<=0x254c+0x1396*0x1+-0x38c4*0x1)[b6(0x38c)];console[b6(0x2c0)](),console[b6(0x2c0)](a0L['green']('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](a0L[b6(0x3cf)][b6(0x377)](b6(0x256))),console[b6(0x2c0)](a0L['gray']('\x20\x20\x20\x20\x20'+a4+b6(0x305))),console[b6(0x2c0)](a0L[b6(0x2de)](b6(0x311))),console[b6(0x2c0)](a0L[b6(0x3c9)](b6(0x284))),console[b6(0x2c0)](a0L[b6(0x377)](b6(0x371))),a0[b6(0x4b7)](b6(0x39b)),Y[b6(0x39a)]=Array[b6(0x257)](a0),a0Z(Y);}}(F,z[b5(0x1ee)]),F&&L&&function(Y,Z){const b7=b5;if(b7(0x3b2)===Y['session']['examId'])return;if(Number(Y[b7(0x460)][b7(0x4d3)]||0x30b+0xc27*-0x3+0x10c9*0x2)<0x14cf+0x9*-0x7b+0xb*-0x17c)return;const a0=new Set(Y[b7(0x39a)]||[]);Z>=-0xa16*-0x2+-0x15e1+-0xc*-0x27&&Z<=0x18d7*-0x1+0x2419+-0xb1c&&!a0[b7(0x22b)](b7(0x402))?(console[b7(0x2c0)](),console[b7(0x2c0)](a0L[b7(0x377)](b7(0x409))),console[b7(0x2c0)](a0L[b7(0x3cf)]['green'](b7(0x36f))),console[b7(0x2c0)](a0L['green']('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[b7(0x2c0)](),console[b7(0x2c0)](a0L['white']('\x20\x20\x20Welcome\x20to\x20the\x20practical\x20CTF\x20section.\x20Real')),console['log'](a0L[b7(0x2de)](b7(0x46f))),console[b7(0x2c0)](),console[b7(0x2c0)](a0L['bold'][b7(0x2de)](b7(0x397))),console['log'](a0L[b7(0x3c9)]('\x20\x20\x20\x20\x20Solve\x20')+a0L[b7(0x3cf)](b7(0x3f3))+a0L[b7(0x3c9)](b7(0x357))),console['log'](),console[b7(0x2c0)](a0L[b7(0x3cf)][b7(0x2de)]('\x20\x20\x20How\x20to\x20work')),console['log'](a0L['gray'](b7(0x47c))+a0L[b7(0x3cf)][b7(0x377)](b7(0x27c))+a0L['gray'](b7(0x363))+a0L[b7(0x254)](b7(0x2cb))+a0L[b7(0x3c9)](b7(0x28b))),console[b7(0x2c0)](a0L[b7(0x3c9)](b7(0x34a))+a0L[b7(0x2c6)](b7(0x37e))+a0L['gray']('\x20·\x20')+a0L[b7(0x2c6)]('submit\x20ICOA{...}')+a0L[b7(0x3c9)](b7(0x1f5))+a0L['cyan'](b7(0x2d4))),console[b7(0x2c0)](a0L[b7(0x3c9)]('\x20\x20\x20\x20\x20Free\x20chat:\x20\x20\x20\x20\x20\x20any\x20message\x20→\x20AI\x20teammate')),console[b7(0x2c0)](a0L[b7(0x3c9)](b7(0x240))+a0L['cyan'](b7(0x2bb))+a0L['gray'](b7(0x2a6))+a0L['cyan'](b7(0x456))),console[b7(0x2c0)](),console[b7(0x2c0)](a0L[b7(0x3cf)][b7(0x2de)]('\x20\x20\x20Budget\x20(shared\x20across\x20Q31–38)')),console[b7(0x2c0)](a0L[b7(0x3c9)](b7(0x318))+a0L[b7(0x2de)](b7(0x1d6))+a0L[b7(0x3c9)](b7(0x3fa))),console[b7(0x2c0)](a0L[b7(0x3c9)](b7(0x339))+a0L[b7(0x2de)]('pre-written\x20per\x20question')),console['log'](),console[b7(0x2c0)](a0L['yellow'](b7(0x31f))),console[b7(0x2c0)](a0L[b7(0x377)](b7(0x409))),console[b7(0x2c0)](),a0[b7(0x4b7)](b7(0x402)),Y[b7(0x39a)]=Array['from'](a0),a0Z(Y)):Z>=-0x4*0x3ba+0x1*-0x246d+0x337c&&!a0['has']('s_ctf4ai')&&(console[b7(0x2c0)](),console[b7(0x2c0)](a0L[b7(0x4b1)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](a0L[b7(0x3cf)][b7(0x4b1)](b7(0x4af))),console[b7(0x2c0)](a0L[b7(0x4b1)](b7(0x409))),console[b7(0x2c0)](),console[b7(0x2c0)](a0L[b7(0x2de)](b7(0x4aa))),console['log'](a0L['white'](b7(0x1f4))+a0L[b7(0x3cf)]('attacking')+a0L[b7(0x2de)]('\x20AI\x20systems.')),console['log'](),console[b7(0x2c0)](a0L[b7(0x3cf)][b7(0x2de)](b7(0x20b))),console['log'](a0L[b7(0x3c9)]('\x20\x20\x20\x20\x20Prompt\x20injection\x20·\x20adversarial\x20analysis\x20·\x20AI\x20auditing')),console['log'](),console['log'](a0L['bold'][b7(0x2de)](b7(0x2a8))),console[b7(0x2c0)](a0L[b7(0x3c9)](b7(0x47c))+a0L[b7(0x3cf)][b7(0x4b1)](b7(0x479))+a0L[b7(0x3c9)]('\x20→\x20')+a0L[b7(0x4b1)](b7(0x406))+a0L[b7(0x3c9)](b7(0x2fb))),console['log'](a0L[b7(0x3c9)](b7(0x34a))+a0L[b7(0x2c6)](b7(0x37e))+a0L[b7(0x3c9)](b7(0x1f5))+a0L[b7(0x2c6)]('submit\x20ICOA{...}')+a0L[b7(0x3c9)]('\x20·\x20')+a0L[b7(0x2c6)]('!python3\x20...')),console[b7(0x2c0)](a0L[b7(0x3c9)]('\x20\x20\x20\x20\x20Messages\x20→\x20AI\x20target\x20—\x20craft\x20prompts\x20to\x20break\x20its\x20rules.')),console[b7(0x2c0)](),console[b7(0x2c0)](a0L[b7(0x3cf)][b7(0x2de)](b7(0x207))),console[b7(0x2c0)](a0L[b7(0x3c9)](b7(0x4c5))+a0L[b7(0x4b1)](b7(0x4d1))+a0L[b7(0x3c9)](b7(0x2b8))),console[b7(0x2c0)](a0L['gray']('\x20\x20\x20\x20\x20·\x20Separate\x20budget:\x20')+a0L[b7(0x2de)](b7(0x395))+a0L[b7(0x3c9)](b7(0x313))),console['log'](),console['log'](a0L[b7(0x370)](b7(0x47a))),console['log'](a0L['yellow'](b7(0x36c))),console[b7(0x2c0)](a0L[b7(0x4b1)](b7(0x409))),console['log'](),a0[b7(0x4b7)](b7(0x38b)),Y['shownWarnings']=Array[b7(0x257)](a0),a0Z(Y));}(F,z['number']),F&&function(Y){const b8=b5,Z=a0a1();if(!Z)return;const a0=Z[b8(0x301)]()-Date[b8(0x2aa)]();if(a0<=-0x7a1+0x60*-0x2c+0x1821)return;const a1=a0/(-0xccdc+-0x7*0x254+-0x81*-0x388),a2=new Set(Y['shownWarnings']||[]);let a3=null;if(a1<=-0x12e2*0x1+-0x227f+-0x1ab1*-0x2&&!a2[b8(0x22b)]('t1')?a3={'key':'t1','text':[a0L['red'][b8(0x3cf)](b8(0x206)),a0L[b8(0x4b1)]('\x20\x20Submit\x20now\x20with:\x20')+a0L['bold'](b8(0x3a1))]}:a1<=0x134+-0xc53+0xb24&&!a2['has']('t5')?a3={'key':'t5','text':[a0L[b8(0x4b1)][b8(0x3cf)](b8(0x432)),a0L['yellow'](b8(0x36d))+a0L[b8(0x3cf)](b8(0x3a1))]}:a1<=0x1a65+-0x1*0x1fd+-0x185e&&!a2[b8(0x22b)]('t10')&&(a3={'key':'t10','text':[a0L['yellow'][b8(0x3cf)](b8(0x405)),a0L[b8(0x3c9)](b8(0x297))+a0L[b8(0x2de)]('exam\x20review')]}),a3){console[b8(0x2c0)](),console['log'](a0L[b8(0x4b1)](b8(0x371)));for(const a4 of a3['text'])console[b8(0x2c0)](a4);console['log'](a0L[b8(0x4b1)](b8(0x371))),a2[b8(0x4b7)](a3['key']),Y[b8(0x39a)]=Array[b8(0x257)](a2),a0Z(Y);}}(F),function(Y,Z,a0){const b9=b5,a1=Math[b9(0x426)](Y/Z*(-0x1f87+0x23d4+-0x42f)),a2=-0x2eb*-0x3+0x2506+-0x2da9-a1,a3=a0L[b9(0x2c6)]('━'['repeat'](a1))+a0L[b9(0x3c9)]('─'[b9(0x26d)](a2)),a4=Math[b9(0x426)](Y/Z*(0x1*0xdb5+0x153c+-0x3d*0x91));console[b9(0x2c0)](),console[b9(0x2c0)]('\x20\x20'+a3+'\x20\x20'+a0L['white'][b9(0x3cf)](''+Y)+a0L[b9(0x3c9)]('/'+Z)+'\x20\x20'+a0L[b9(0x3c9)]('('+a0+b9(0x3e8))+'\x20\x20'+a0L[b9(0x3c9)](a4+'%'));const a5=a0a1();if(a5){const a6=Math[b9(0x47b)](0xde6*-0x1+-0xa5a+0x1840,Math['round']((a5[b9(0x301)]()-Date[b9(0x2aa)]())/(0x239*-0x8+-0x26a5+0x3c55))),a7=Math[b9(0x36a)](a6/(0x3ab*0x3+-0x606+-0x1*0x4bf))+':'+String(a6%(-0x35f*0x7+-0x199b+-0x8*-0x62e))[b9(0x209)](0xb99*0x1+-0x27+-0xb70,'0'),a8=a6<=-0x138a+-0x351+0x1717?a0L[b9(0x4b1)]['bold']:a6<=-0xd*-0x2d+0x1*-0x23b0+0x2293?a0L[b9(0x4b1)]:a6<=0x15ec+0x8fc+-0x10*0x1c9?a0L[b9(0x370)]:a0L[b9(0x3c9)];console['log']('\x20\x20'+a0L[b9(0x3c9)](b9(0x2fe))+'\x20'+a8(a7)+'\x20'+a0L[b9(0x3c9)]('(server-authoritative)'));}}(z[b5(0x1ee)],G,H),F&&D(F,z['number'])&&console[b5(0x2c0)](a0L['yellow']('\x20\x20★\x20Marked\x20for\x20review'));const Q=function(Y,Z){const ba=b5,a0={};a0[ba(0x2c5)]=0.2,a0[ba(0x3a6)]=ba(0x29a),a0[ba(0x413)]='egg3';const a1={};a1['pct']=0.33,a1[ba(0x3a6)]='🐨',a1[ba(0x413)]=ba(0x2af);const a2={};a2[ba(0x2c5)]=0.5,a2['emoji']='🌉',a2[ba(0x413)]=ba(0x4a9);const a3={};a3[ba(0x2c5)]=0.6,a3['emoji']='🦘',a3[ba(0x413)]=ba(0x481);const a4={};a4['pct']=0.8,a4[ba(0x3a6)]=ba(0x2ff),a4[ba(0x413)]='egg11';const a5={};a5[ba(0x2c5)]=0.87,a5[ba(0x3a6)]='🦈',a5[ba(0x413)]=ba(0x212);const a6={};a6[ba(0x2c5)]=0x1,a6[ba(0x3a6)]='🎉',a6[ba(0x413)]=ba(0x393);const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math[ba(0x426)](a9['pct']*Z);if(!(aa<0x1c4b*0x1+-0x1414+0x41b*-0x2||a8[ba(0x22b)](aa))&&(a8[ba(0x4b7)](aa),Y===aa))return{'emoji':a9['emoji'],'text':a0ai(a9[ba(0x413)])};}}(z['number'],G);if(Q&&console[b5(0x2c0)](a0L[b5(0x370)]('\x20\x20'+Q[b5(0x3a6)]+'\x20\x20'+Q[b5(0x236)])),console['log'](),z[b5(0x3d1)]&&console[b5(0x2c0)](a0L[b5(0x2c6)](b5(0x3d7)+z['category']+']')),z['points']&&z[b5(0x412)]>0x1*0x231d+0x1817+-0x3b32&&console[b5(0x2c0)](a0L[b5(0x2c6)]('\x20\x20['+z[b5(0x412)]+b5(0x45c))),L){let Y=z[b5(0x37d)]||z[b5(0x236)];const Z=a0a2(z[b5(0x1ee)],z[b5(0x1da)]);if(z[b5(0x1da)]){const a1=/\([^()]*attachedData[^()]*\)/;a1[b5(0x2b3)](Y)?Y=Y[b5(0x226)](a1,z[b5(0x1da)]):Y[b5(0x2f0)](z[b5(0x1da)])||(Y=Y+'\x0a\x0aFull\x20attached\x20data:\x0a'+z['attachedData']);}console[b5(0x2c0)](a0L[b5(0x3cf)][b5(0x2de)]('\x20\x20Q'+z[b5(0x1ee)]+'.\x20')+a0L['white'](Y['split']('\x0a')[0x3eb*0x1+-0xc7*-0x1c+0x1*-0x19af]));const a0=Y[b5(0x1fc)]('\x0a')['slice'](0x163*-0x7+0x17af+-0xdf9);for(const a2 of a0)console[b5(0x2c0)](a0L['white']('\x20\x20'+a2));if(console[b5(0x2c0)](),Z&&b5(0x27c)===z[b5(0x4d4)]){const a3=Z[b5(0x226)](process.env.HOME||'','~');console[b5(0x2c0)](a0L[b5(0x2c6)]('\x20\x20'+a0ai(b5(0x368))+'\x20')+a0L['gray']('('+a0ai(b5(0x230))+'\x20'+a3+'):')),console[b5(0x2c0)](a0L['white'](b5(0x243))+a0L[b5(0x370)](b5(0x23f)+a3)[b5(0x41e)](-0x1b55+0x2169+-0x2*0x2f0)+a0L[b5(0x3c9)]('\x20'+a0ai('examWaysShell'))),console['log'](a0L[b5(0x2de)](b5(0x20e))+a0L[b5(0x370)]('!python3')['padEnd'](0xd5e+0x73d+-0x147b)+a0L[b5(0x3c9)]('\x20'+a0ai(b5(0x2e1)))),console[b5(0x2c0)](a0L['white']('\x20\x20\x20\x20③\x20')+a0L[b5(0x370)]('!vi\x20solve.py')+a0L['gray'](b5(0x280))+a0L['yellow'](b5(0x308))),console['log'](a0L[b5(0x2de)]('\x20\x20\x20\x20④\x20')+a0L[b5(0x370)]('ref\x20python')[b5(0x41e)](0x2490+-0x1*0x1f85+-0x4eb)+a0L[b5(0x3c9)]('\x20'+a0ai(b5(0x3f9)))),console[b5(0x2c0)](a0L[b5(0x2de)](b5(0x24d))+a0L[b5(0x370)](b5(0x27c))[b5(0x41e)](0x1b94+0xf4*0x5+-0x2038)+a0L[b5(0x3c9)]('\x20'+a0ai('examWaysAi4ctf'))),console[b5(0x2c0)](),console[b5(0x2c0)](a0L[b5(0x3c9)]('\x20\x20'+a0ai(b5(0x4ac))+'\x20')+a0L[b5(0x3cf)][b5(0x377)](b5(0x23c))),console[b5(0x2c0)]();}B&&(console[b5(0x2c0)](a0L['green'](b5(0x286)+B)),console[b5(0x2c0)]());}else{console[b5(0x2c0)](a0L['bold'][b5(0x2de)](b5(0x26e)+z[b5(0x1ee)]+'.\x20')+a0L[b5(0x2de)](z['text'])),console['log']();for(const a4 of['A','B','C','D']){const a5=B===a4;K['includes'](a4)?console['log'](a0L[b5(0x3c9)][b5(0x2ab)](b5(0x3ae)+a4+'.\x20'+z[b5(0x1fb)][a4])+a0L['red']('\x20('+a0ai(b5(0x443))+')')):a5?console[b5(0x2c0)](a0L[b5(0x377)][b5(0x3cf)](b5(0x4c4)+a4+'.\x20'+z['options'][a4])):console[b5(0x2c0)](a0L[b5(0x3c9)](b5(0x3ae)+a4+'.')+'\x20'+a0L['white'](z[b5(0x1fb)][a4]));}console[b5(0x2c0)]();}const V=b5(0x3b2)===F?.[b5(0x460)][b5(0x1f7)],W=J['perQ'][0x584+0x22eb+-0x4f*0x83]||0xaad+-0x1*-0x1fef+0x24*-0x12f;V&&0x473+-0x2f*0x32+-0x4bd*-0x1===z[b5(0x1ee)]&&0x2ca+0x22a3*0x1+-0x8f*0x43===W&&(console[b5(0x2c0)](a0L[b5(0x370)][b5(0x3cf)]('\x20\x20'+a0ai(b5(0x39d)))),console[b5(0x2c0)]());const X=J[b5(0x47b)]-J[b5(0x330)];if(console[b5(0x2c0)](a0L['gray']('\x20\x20─────────────────────────────────────────')),L){const a6=F&&b5(0x3b2)!==F[b5(0x460)][b5(0x1f7)]&&z[b5(0x1ee)]>=0x2353+0x3*0x2b7+0x1*-0x2b51;F&&b5(0x3b2)!==F[b5(0x460)][b5(0x1f7)]&&z['number']>=0x1*0x2627+-0xcc*0x1+-0x253c*0x1&&z['number']<=-0xa83+0x63d*-0x5+0x29da?console[b5(0x2c0)](a0L['bold'][b5(0x377)]('\x20\x20\x20\x20ai4ctf')+a0L[b5(0x3c9)](b5(0x487))):a6&&console['log'](a0L[b5(0x3cf)][b5(0x4b1)](b5(0x1f2))+a0L[b5(0x3c9)]('\x20\x20\x20\x20\x20\x20\x20\x20enter\x20CTF4AI\x20chat\x20—\x20attack\x20the\x20AI\x20target\x20(recommended)')),console['log'](a0L['yellow']('\x20\x20\x20\x20exam\x20answer\x20<n>\x20ICOA{...}')+a0L[b5(0x3c9)](b5(0x21d))),console['log'](a0L[b5(0x370)]('\x20\x20\x20\x20!python3')+a0L['gray']('\x20\x20\x20\x20\x20\x20start\x20Python\x20shell'));}else{const a7=J[b5(0x47b)]>=0x25e2+-0x1*-0x11f+0x26e3*-0x1,a8=X>-0x117a+-0x623+0x179d?a0L[b5(0x3c9)](a0ai(b5(0x221))+'\x20')+a0L['yellow']('('+X+'/'+J['max']+')'):a7?a0L[b5(0x3c9)](a0ai(b5(0x35c))+'\x20('+J['used']+'/'+J[b5(0x47b)]+')'):a0L['gray'](''+a0ai(b5(0x33a)));console[b5(0x2c0)](a0L[b5(0x370)](b5(0x263))+a0L[b5(0x3c9)](b5(0x242)+a0ai(b5(0x1eb)))),console[b5(0x2c0)](a0L['yellow']('\x20\x20\x20\x20help')+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a8);}console['log'](a0L[b5(0x370)](b5(0x3d6))+a0L[b5(0x3c9)](b5(0x3d4))+a0L['yellow'](b5(0x401))+a0L['gray'](b5(0x3ae)+a0ai(b5(0x42f)))),console[b5(0x2c0)](a0L[b5(0x370)](b5(0x42c)+G)+a0L[b5(0x3c9)](b5(0x223)+a0ai(b5(0x316)))),console[b5(0x2c0)](a0L[b5(0x370)]('\x20\x20\x20\x20mark')+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b5(0x1fd)))),console[b5(0x2c0)](a0L['yellow'](b5(0x48a))+a0L[b5(0x3c9)](b5(0x223)+a0ai(b5(0x210)))),console[b5(0x2c0)](a0L[b5(0x3cf)]['yellow'](b5(0x34b))+a0L[b5(0x3c9)](b5(0x223)+a0ai('htpSubmit'))),console[b5(0x2c0)](a0L[b5(0x370)](b5(0x287))+a0L[b5(0x3c9)](b5(0x2ee)+a0ai(b5(0x271)))),console[b5(0x2c0)](a0L[b5(0x370)]('\x20\x20\x20\x20lang')+a0L[b5(0x3c9)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b5(0x437)))),console['log'](a0L['gray']('\x20\x20─────────────────────────────────────────'));}export function registerExamCommand(z){const bb=a0B,B=z[bb(0x265)]('exam')[bb(0x37d)](bb(0x3ef));B['command'](bb(0x352))['description'](bb(0x3da))[bb(0x2ef)](()=>{const bc=bb;a0a8(bc(0x35e)),console[bc(0x2c0)](),a0ae(bc(0x496)),console[bc(0x2c0)]();const F=[['AU','Australia'],['BD',bc(0x30c)],['BI','Burundi'],['BR','Brazil'],['CN',bc(0x288)],['DE',bc(0x2c7)],['EG',bc(0x270)],['FR',bc(0x2da)],['GH','Ghana'],['ID',bc(0x46d)],['IN','India'],['JP',bc(0x373)],['KR',bc(0x3a0)],['LA',bc(0x4bd)],['LK',bc(0x3ad)],['MM',bc(0x4a3)],['MO','Macau'],['MY','Malaysia'],['NZ','New\x20Zealand'],['PE',bc(0x2cc)],['PH','Philippines'],['RU','Russia'],['SA',bc(0x477)],['SG','Singapore'],['TH',bc(0x493)],['TR',bc(0x285)],['US',bc(0x23a)],['UZ',bc(0x3db)],['VN','Vietnam'],['ZA',bc(0x419)]];for(let G=0x1ffa*0x1+-0x1e00+-0x16*0x17;G<F['length'];G+=0x1fca+-0xe*0x172+-0xb8b){const H=F[bc(0x24f)](G,G+(0x1390+-0x12cd*-0x1+-0x265a))['map'](([J,K])=>'\x20\x20'+a0L[bc(0x2c6)](J)+'\x20\x20'+a0L['gray'](K[bc(0x41e)](0x1676+0xcf+0x1c9*-0xd)))[bc(0x2fa)]('');console[bc(0x2c0)](H);}console['log'](),console[bc(0x2c0)](a0L[bc(0x3c9)](bc(0x335))),console['log'](a0L[bc(0x3c9)]('\x20\x20New\x20member?\x20Contact:\x20accreditation@icoa2026.au')),console[bc(0x2c0)](),console[bc(0x2c0)](a0L[bc(0x2de)]('\x20\x20Check\x20exams\x20for\x20your\x20country:')),console[bc(0x2c0)](a0L[bc(0x2c6)](bc(0x2a5))+a0L[bc(0x3c9)]('\x20\x20\x20\x20\x20exam\x20list\x20PE')+a0L[bc(0x3c9)](bc(0x2f5))),console[bc(0x2c0)]();}),B[bb(0x265)](bb(0x2ec))[bb(0x37d)](bb(0x273))[bb(0x2ef)](async F=>{const bd=bb;a0a8(bd(0x438)+(F||''));const G=M();if(!G)return;const H=a0ag(bd(0x3b3));H[bd(0x245)]();try{let J=await G[bd(0x32d)]();if(H[bd(0x203)](),F){const Q=F['toUpperCase']();J=J[bd(0x1ff)](V=>V[bd(0x362)][bd(0x2fd)]()===Q||bd(0x2e5)===V['country']);}if(!J||-0x227*0x1+-0x1549*-0x1+-0x1322*0x1===J[bd(0x38c)]){console['log'](),a0ac(F?bd(0x281)+F['toUpperCase']()+bd(0x220):'No\x20exams\x20available\x20for\x20your\x20country\x20yet.'),console[bd(0x2c0)](),console[bd(0x2c0)](a0L['white']('\x20\x20New\x20exams\x20are\x20coming\x20soon!')),console[bd(0x2c0)](a0L[bd(0x3c9)](bd(0x3a5))),console['log'](),console[bd(0x2c0)](a0L[bd(0x3c9)]('\x20\x20In\x20the\x20meantime,\x20try:\x20')+a0L[bd(0x3cf)][bd(0x2c6)]('demo')),console[bd(0x2c0)]();const V={};V['PE']='es',V['CN']='zh',V['JP']='ja',V['KR']='ko',V['BR']='pt',V['SA']='ar',V['FR']='fr',V['DE']='de',V['IN']='hi',V['ID']='id',V['TH']='th',V['VN']='vi',V['TR']='tr',V['RU']='ru',V['UA']='uk',V['HT']='ht',V['KE']='sw',V['TZ']='sw';const W=V,X=(F||'')[bd(0x2fd)]();return void(W[X]&&(console[bd(0x2c0)](a0L[bd(0x3c9)](bd(0x436)+W[X])),console['log']()));}const K=J[bd(0x461)](Y=>{const be=bd,Z=be(0x3bf)===Y[be(0x33e)]?a0L['green']:be(0x3fc)===Y[be(0x33e)]?a0L[be(0x370)]:a0L[be(0x2de)];return[a0L[be(0x2de)](Y['id']),Y[be(0x28f)],a0L[be(0x2c6)](Y['country']),String(Y[be(0x4d3)]),Y[be(0x47e)]+'\x20min',Z(Y['status'])];}),L=[...new Set(J[bd(0x461)](Y=>Y[bd(0x362)]))];a0ae(F?'Exams\x20—\x20'+F[bd(0x2fd)]():'Available\x20Exams\x20('+L[bd(0x38c)]+'\x20regions)'),a0ad(['ID','Name','Country','Questions',bd(0x21c),bd(0x2e3)],K),console[bd(0x2c0)](),console[bd(0x2c0)](a0L[bd(0x3c9)](bd(0x2d7))),L[bd(0x38c)]>-0x85f+-0x1bd7*-0x1+0x97*-0x21&&console[bd(0x2c0)](a0L[bd(0x3c9)](bd(0x4b3)));}catch(Y){H[bd(0x464)](bd(0x304)),a0aa(Y[bd(0x3d3)]);}}),B[bb(0x265)](bb(0x24a))[bb(0x37d)](bb(0x385))[bb(0x2ef)](async F=>{const bf=bb;a0a8(bf(0x4cd)+F);const G=a0Y();if(G)return a0ab('Exam\x20\x22'+G[bf(0x460)][bf(0x495)]+bf(0x1de)),void a0ac('Use\x20\x22exam\x20review\x22\x20to\x20check\x20progress\x20or\x20\x22exam\x20submit\x22\x20to\x20submit.');const H=M();if(!H)return;const J=await a0Q({'message':a0L[bf(0x2de)](bf(0x1e8)),'default':!(0x1*0x1492+0x6b2*-0x2+-0x397*0x2),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L[bf(0x377)](K)}}});if(J){console[bf(0x2c0)]();try{N(-0x1a9d*0x1+0x1c4e+0x1b1*-0x1,bf(0x3b4));const {session:K,questions:L}=await H[bf(0x3fb)](F);N(0x1a33+0x1*0x1692+-0x30a7,bf(0x476)),await q(-0x2*0xce0+-0x206*-0x4+-0x1270*-0x1),N(-0x18e7+0x6d*0x1+0x18b6,bf(0x3f1)),await q(-0x1*-0x153d+0x4*0x3d6+-0x27*0xeb),N(-0xa85*-0x3+-0x2*-0x11d2+-0x6d*0x9d,bf(0x347)),await q(-0x1*0x2375+-0x1*-0x1ec1+0x54a),a0Z({'session':K,'questions':L,'answers':{}}),N(0x170d+0x1959+-0x3002,'Ready!'),console[bf(0x2c0)](),console[bf(0x2c0)](),a0ae(K[bf(0x495)]),a0af('Questions',String(K[bf(0x4d3)])),a0af('Duration',K[bf(0x47e)]+'\x20minutes'),a0af(bf(0x36e),K[bf(0x362)]),O(),L['length']>0x116a+-0x5*-0x2b6+0x1*-0x1ef8&&U(L[-0x1d6b+0x3*0x655+0xa6c]);}catch(Q){console['log'](),a0aa(Q[bf(0x3d3)]);}}}),B[bb(0x265)](bb(0x291))[bb(0x37d)](bb(0x467))[bb(0x2ef)](async F=>{const bg=bb;a0a8(bg(0x22c)+(F||'all'));const {refetchQuestionDataIfStale:G}=await import('../lib/exam-state.js');await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,-0x1*-0x24d3+0xe21*0x2+-0x410b),K=H[bg(0x3a4)][bg(0x333)](L=>L[bg(0x1ee)]===J);if(!K)return void a0aa('Question\x20'+F+'\x20not\x20found\x20(1-'+H[bg(0x3a4)][bg(0x38c)]+').');H['_lastQ']=J,a0Z(H),U(K,H[bg(0x45d)][J]);}else{a0ae(''+H['session']['examName']);const L=Object[bg(0x446)](H[bg(0x45d)])['length'];a0af(bg(0x3e9),L+'/'+H[bg(0x460)][bg(0x4d3)]+'\x20answered'),console[bg(0x2c0)]();for(const Q of H['questions']){const V=H[bg(0x45d)][Q[bg(0x1ee)]],W=V?a0L[bg(0x377)]('['+V+']'):a0L[bg(0x3c9)](bg(0x2f2)),X=Q[bg(0x3d1)]?a0L[bg(0x3c9)]('\x20['+Q[bg(0x3d1)]+']'):'';console[bg(0x2c0)]('\x20\x20'+W+'\x20'+a0L['white']('Q'+Q['number'])+X+'\x20'+a0L[bg(0x3c9)](Q[bg(0x236)]['substring'](-0x2f*-0xb0+0x71*0x31+0x3*-0x11fb,-0x4*-0x576+0x83*-0x31+-0x377*-0x1))+(Q[bg(0x236)][bg(0x38c)]>-0x2af+0x5*0x335+-0x49*0x2e?bg(0x44c):''));}console['log']();}}else a0aa('No\x20exam\x20in\x20progress.\x20Use\x20\x22exam\x20start\x20<id>\x22\x20to\x20begin.');}),B[bb(0x265)](bb(0x3e2))[bb(0x37d)](bb(0x489))['action'](F=>{const bh=bb;a0a8(bh(0x2f9)+(F||''));const G=a0Y();if(!G)return void a0aa(bh(0x348));const H=G[bh(0x3a4)]['length'],J=F?parseInt(F,-0x14f1+0x9*0xf7+0x4*0x313):G[bh(0x235)]||0x5*-0x125+0x1f49*0x1+-0x198f;if(Number[bh(0x2db)](J)||J<-0x9d+0x880+-0x3f1*0x2||J>H)return void a0aa(bh(0x4a6)+H+'.');const K=j(G,J);console[bh(0x2c0)](),K?console[bh(0x2c0)](a0L[bh(0x370)](bh(0x28c)+J+bh(0x2d1))):console[bh(0x2c0)](a0L[bh(0x3c9)](bh(0x48b)+J+bh(0x48d)));const L=Array['isArray'](G[bh(0x2d0)])?G[bh(0x2d0)]:[];L['length']>-0x8e9*-0x1+-0x1147*-0x1+0x346*-0x8&&console[bh(0x2c0)](a0L[bh(0x3c9)](bh(0x1f6)+L[bh(0x461)](Q=>'Q'+Q)[bh(0x2fa)](',\x20'))),console['log'](a0L['gray'](bh(0x367))+a0L['white'](bh(0x3a8))),console[bh(0x2c0)]();}),B[bb(0x265)](bb(0x234))['description'](bb(0x2a3))['action'](F=>{const bi=bb;a0a8('exam\x20unmark\x20'+(F||''));const G=a0Y();if(!G)return void a0aa(bi(0x348));const H=G[bi(0x3a4)][bi(0x38c)],J=F?parseInt(F,0x1f01*-0x1+-0x956+-0x1*-0x2861):G[bi(0x235)]||-0x524*-0x1+-0x7c9*-0x4+0x2447*-0x1;Number[bi(0x2db)](J)||J<0x7e1*-0x1+-0xd3b+0x151d||J>H?a0aa(bi(0x4a6)+H+'.'):D(G,J)?(j(G,J),console[bi(0x2c0)](),console[bi(0x2c0)](a0L[bi(0x3c9)](bi(0x48b)+J+bi(0x48d))),console[bi(0x2c0)]()):console['log'](a0L[bi(0x3c9)](bi(0x26e)+J+bi(0x3bb)));}),B[bb(0x265)](bb(0x35f))[bb(0x37d)](bb(0x418))[bb(0x2ef)](()=>{const bj=bb;a0a8(bj(0x2f3));const F=a0Y();if(!F)return void a0aa(bj(0x348));F[bj(0x3a4)][bj(0x332)](K=>!F[bj(0x45d)][K[bj(0x1ee)]]);const G=F[bj(0x235)]||0x21b5*0x1+-0x68e+-0x1b26,H=Math[bj(0x421)](G+(0x1f93*-0x1+0x161*-0x5+0x15*0x1d5),F['questions'][bj(0x38c)]);F['_lastQ']=H,a0Z(F);const J=F[bj(0x3a4)][H-(0x21e0+0x11*-0x20c+0xed)];U(J,F[bj(0x45d)][J['number']]);}),B[bb(0x265)](bb(0x401))['description']('Go\x20to\x20previous\x20question')[bb(0x2ef)](()=>{const bk=bb;a0a8(bk(0x34f));const F=a0Y();if(!F)return void a0aa(bk(0x348));const G=F[bk(0x235)]||-0x1e41+-0x1343+-0x1*-0x3185,H=Math[bk(0x47b)](G-(0x26b0+-0x1*0x16f7+-0x4*0x3ee),0x2*0x11f2+-0x9b+-0x2348);F[bk(0x235)]=H,a0Z(F);const J=F['questions'][H-(-0x3a8*0x7+0x597*-0x3+-0x176*-0x1d)];U(J,F[bk(0x45d)][J[bk(0x1ee)]]);}),B['command'](bb(0x1ed))['description'](bb(0x3c6))[bb(0x2ef)](async()=>{const bl=bb;a0a8(bl(0x2ae));const F=a0Y();if(!F)return void a0aa(bl(0x348));const G=R(F),H=F[bl(0x235)]||0x1cc4+-0xc1e+-0x10a5,J=G[bl(0x49d)][H]||0x1004+0xc4*0x26+-0x2d1c,K=G['eliminated'][H]||[],L=F[bl(0x3a4)][bl(0x333)](W=>W[bl(0x1ee)]===H);if(!L)return;if(J>=-0x97*-0x1a+0x1e3f+-0x2d93)return console['log'](),console['log'](a0L[bl(0x370)](bl(0x38d))),console[bl(0x2c0)](a0L['gray'](bl(0x225))),console[bl(0x2c0)](),void U(L,F['answers'][L['number']]);const Q=['A','B','C','D']['filter'](W=>!K[bl(0x2f0)](W));if(Q[bl(0x38c)]<=0x22c3+0x58*-0x5a+-0x3d1*0x1)return console[bl(0x2c0)](),console[bl(0x2c0)](a0L['yellow'](bl(0x3b5))),console[bl(0x2c0)](),void U(L,F['answers'][L[bl(0x1ee)]]);if(G[bl(0x330)]>=G['max']){const W=G[bl(0x47b)]>=0x5e9*0x1+-0xfa0+0x9d5,X=0x23e3+-0x21e2+-0x1e3-G[bl(0x47b)];return void(W?(console['log'](),console[bl(0x2c0)](a0L['gray'](bl(0x23d)+G[bl(0x330)]+'/'+G[bl(0x47b)]+bl(0x2fc))),console[bl(0x2c0)]()):(console[bl(0x2c0)](),console[bl(0x2c0)](a0L[bl(0x370)](bl(0x48e)+G[bl(0x330)]+'/'+G[bl(0x47b)])),console[bl(0x2c0)](a0L['white'](bl(0x376))+a0L['bold']['yellow']('more\x20help')+a0L['gray'](bl(0x22f)+X+'\x20bonus\x20uses)')),console[bl(0x2c0)]()));}const V=Y=>{const bm=bl;K['push'](Y),G['eliminated'][H]||(G[bm(0x388)][H]=[]),G[bm(0x388)][H]=K,G[bm(0x49d)][H]=J+(-0x6ed+-0x15*-0x8b+-0x479),G[bm(0x330)]++,F[bm(0x267)]=G[bm(0x330)],F['_helpMax']=G[bm(0x47b)],F[bm(0x23b)]=G[bm(0x49d)],F[bm(0x227)]=G[bm(0x388)],F[bm(0x298)]||(F['interactions']=[]),F[bm(0x298)][bm(0x24b)]({'ts':new Date()[bm(0x211)](),'q':H,'type':'help_used','result':bm(0x33c)+Y}),a0Z(F),console[bm(0x2c0)](),console[bm(0x2c0)](a0L[bm(0x370)]('\x20\x20💡\x20Option\x20'+Y+'\x20eliminated!')+a0L[bm(0x3c9)]('\x20\x20(help\x20'+G[bm(0x330)]+'/'+G[bm(0x47b)]+')')),U(L,F[bm(0x45d)][L[bm(0x1ee)]]);};if(bl(0x3b2)===F[bl(0x460)][bl(0x1f7)]&&L[bl(0x351)])(Y=>{const bn=bl,Z=Q[bn(0x1ff)](a0=>a0!==Y&&!K[bn(0x2f0)](a0));0x216a+0x2*-0x1357+0x544!==Z[bn(0x38c)]&&V(Z[Math['floor'](Math[bn(0x1d4)]()*Z[bn(0x38c)])]);})(L[bl(0x351)]);else{const Y=a0W()[bl(0x2c3)]||'https://practice.icoa2026.au',Z=F[bl(0x460)]?.[bl(0x462)]||'';try{const a0={};a0['Content-Type']=bl(0x1e4),a0[bl(0x4d2)]=bl(0x21e);const a1={};a1[bl(0x462)]=Z,a1[bl(0x26a)]=H,a1[bl(0x388)]=K;const a2=await fetch(Y+'/api/icoa/exams/'+F[bl(0x460)][bl(0x1f7)]+bl(0x400),{'method':bl(0x277),'headers':a0,'body':JSON[bl(0x294)](a1),'signal':AbortSignal[bl(0x428)](0x2*0x98+-0x3bb*-0x7+-0x99*0xd)}),a3=await a2['json'](),a4=a3?.[bl(0x43f)]?.['eliminate'];a4&&['A','B','C','D']['includes'](a4)?V(a4):(console[bl(0x2c0)](),console['log'](a0L[bl(0x3c9)](bl(0x49a))));}catch{console[bl(0x2c0)](),console[bl(0x2c0)](a0L[bl(0x3c9)](bl(0x324)));}}}),B[bb(0x265)](bb(0x22a))[bb(0x37d)](bb(0x3cd))[bb(0x2ef)](()=>{const bo=bb;a0a8(bo(0x3d8));const F=a0Y();if(!F)return void a0aa('No\x20exam\x20in\x20progress.');const G=R(F),H=bo(0x3b2)===F[bo(0x460)]['examId']?0x237b+0x14ca+-0x383d*0x1:-0xe*-0x2ab+-0x3*0x355+0x1*-0x1b3d;if(G[bo(0x47b)]>=H)return void console['log'](a0L['gray']('\x20\x20Bonus\x20help\x20already\x20unlocked.'));if(G['used']<G['max'])return void console['log'](a0L[bo(0x3c9)](bo(0x26c)+(G[bo(0x47b)]-G[bo(0x330)])+bo(0x1f9)));const J=H-G[bo(0x47b)];F[bo(0x2f8)]=H,a0Z(F),console[bo(0x2c0)](),console[bo(0x2c0)](a0L[bo(0x377)](bo(0x399)+J+'\x20bonus\x20help\x20unlocked!\x20('+J+'/'+H+'\x20remaining)')),console[bo(0x2c0)](a0L[bo(0x3c9)](bo(0x4d0))),console[bo(0x2c0)]();}),B['command'](bb(0x2c1))['description']('Answer\x20question\x20N\x20(A/B/C/D\x20for\x20MCQ,\x20ICOA{flag}\x20for\x20practical)')[bb(0x2ef)](async(F,G)=>{const bp=bb,H=G[bp(0x2fa)]('\x20');a0a8(bp(0x3b9)+F+'\x20'+H);const J=a0Y();if(!J)return void a0aa(bp(0x3ab));if(!(function(){const bq=bp,Z=a0a1();if(!Z)return!(0x95d+-0xa29*-0x2+-0x1daf);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object[bq(0x446)](a0[bq(0x45d)])[bq(0x38c)];bq(0x3b2)===a0[bq(0x460)][bq(0x1f7)]||-0x1*0x76c+0x1*-0xcf1+0x145d===a1?(a0a0(),a0ab(bq(0x3b1)),a0ac(bq(0x4ab))):(a0aa('Time\x20expired.'),a0ac(bq(0x246)));}return!(0x4*0x538+-0x14a8*0x1+0x1*-0x37);}return!(0x5db*-0x2+0x29b*-0x7+0x1df3);}()))return;const K=parseInt(F,-0x3ba+0x26e*0x10+-0x231c),L=J[bp(0x3a4)]['find'](Z=>Z[bp(0x1ee)]===K);if(!L)return void a0aa('Question\x20'+F+bp(0x3a3)+J['questions'][bp(0x38c)]+').');let Q;if('ai4ctf'===L[bp(0x4d4)]||'ctf4ai'===L[bp(0x4d4)]||L[bp(0x1fb)]&&!L[bp(0x1fb)]['A']&&!L[bp(0x1fb)]['B']){if(Q=H['trim'](),!Q)return void a0aa('Please\x20provide\x20your\x20flag:\x20exam\x20answer\x20<n>\x20ICOA{your_flag}');if(/^[A-Da-d]$/['test'](Q))return a0aa('Q'+K+bp(0x4cb)),void console[bp(0x2c0)](a0L['gray'](bp(0x264))+a0L[bp(0x377)](bp(0x3b9)+K+bp(0x2a0)));}else{if(Q=H[bp(0x2fd)](),!['A','B','C','D']['includes'](Q))return void a0aa(bp(0x40d));}if(bp(0x3b2)===J['session'][bp(0x1f7)]&&-0x5*-0x2f6+-0x38d*-0x9+0x2ec1*-0x1===K&&-0x17*0x11e+-0x6ad+0x205f===(R(J)[bp(0x49d)][-0xb99*0x1+0x21d*0x1+-0x51*-0x1e]||-0xd13+-0x1d68+0x2a7b))return console['log'](),console[bp(0x2c0)](a0L['yellow'](bp(0x2d6))+a0L[bp(0x3cf)][bp(0x370)]('help')+a0L['yellow'](bp(0x3ea))),console[bp(0x2c0)](a0L[bp(0x3c9)](bp(0x325))),void console[bp(0x2c0)]();const V=J[bp(0x45d)][K];J[bp(0x298)]||(J['interactions']=[]),J['interactions'][bp(0x24b)]({'ts':new Date()[bp(0x211)](),'q':K,'type':V?bp(0x484):bp(0x1fa),'input':Q,'result':V?bp(0x47f)+V:'new'}),J['answers'][K]=Q,J[bp(0x235)]=K,a0Z(J),console[bp(0x2c0)](a0L['gray'](bp(0x384)));const W=J['session'][bp(0x462)];if(W&&bp(0x3b2)!==J[bp(0x460)]['examId']){const Z=(a0W()['ctfdUrl']||bp(0x38a))+'/api/icoa/exams/'+J[bp(0x460)]['examId']+'/answer',a0={};a0['Content-Type']='application/json';const a1={};a1[bp(0x462)]=W,a1['question']=K,a1[bp(0x351)]=Q,fetch(Z,{'method':'POST','headers':a0,'body':JSON[bp(0x294)](a1),'signal':AbortSignal['timeout'](0x49*-0x59+0x22fd+-0x1*-0x9ec)})[bp(0x3e7)](()=>{});}const X=Object[bp(0x446)](J[bp(0x45d)])[bp(0x38c)],Y=J[bp(0x460)][bp(0x4d3)];if(a0a9('Q'+K+':\x20'+Q+'\x20✓\x20\x20('+X+'/'+Y+bp(0x3e8)),bp(0x3b2)===J['session'][bp(0x1f7)]&&L[bp(0x351)]){const a2=[bp(0x434),bp(0x3e3),bp(0x474),'Exactly.',bp(0x391)],a3=['Close\x20—\x20we\x27ll\x20revisit\x20this\x20one.',bp(0x4b8),bp(0x40f)],a4=Q===L['answer']?a2:a3,a5=a4[Math[bp(0x36a)](Math[bp(0x1d4)]()*a4[bp(0x38c)])];console[bp(0x2c0)](a0L['gray'](bp(0x44f)+a5));}if(K<J[bp(0x3a4)]['length']){const a6=J[bp(0x3a4)][K];J['_lastQ']=a6[bp(0x1ee)],a0Z(J),U(a6,J[bp(0x45d)][a6[bp(0x1ee)]]);}else X>=J[bp(0x3a4)][bp(0x38c)]&&(console[bp(0x2c0)](),console[bp(0x2c0)](a0L[bp(0x377)]['bold'](bp(0x459))),console[bp(0x2c0)](),bp(0x3b2)===J['session'][bp(0x1f7)]?(console['log'](a0L[bp(0x2de)](bp(0x32b))+a0L[bp(0x3cf)][bp(0x2c6)](bp(0x3a1))+a0L[bp(0x2de)](bp(0x40e))),console[bp(0x2c0)]()):console[bp(0x2c0)](a0L[bp(0x2de)]('\x20\x20Use:\x20exam\x20review\x20·\x20exam\x20submit')));}),B[bb(0x265)]('review')[bb(0x37d)]('Review\x20all\x20answers\x20before\x20submitting')[bb(0x2ef)](()=>{const br=bb;a0a8(br(0x3a8));const F=a0Y();if(!F)return void a0aa(br(0x348));a0ae('Review:\x20'+F[br(0x460)][br(0x495)]),O(),console['log']();let G='\x20\x20';const H=Array[br(0x3dd)](F[br(0x2d0)])?F[br(0x2d0)]:[];for(const Q of F[br(0x3a4)]){const V=F[br(0x45d)][Q[br(0x1ee)]],W=H[br(0x2f0)](Q[br(0x1ee)]),X=W?'★':'\x20';G+=V?W?a0L['bold']['yellow']('Q'+String(Q[br(0x1ee)])[br(0x209)](0x1ac2*-0x1+0xd3d*0x1+0xd87*0x1)+X+'['+V+']\x20'):a0L[br(0x377)]('Q'+String(Q['number'])[br(0x209)](0x67*0x17+-0x1*0x131c+0x9dd)+'\x20['+V+br(0x3ce)):W?a0L[br(0x3cf)][br(0x370)]('Q'+String(Q['number'])[br(0x209)](0xc23*-0x1+0xcaa+0x7*-0x13)+X+br(0x1e1)):a0L[br(0x370)]('Q'+String(Q['number'])[br(0x209)](-0x1d0*0x7+0x2311+0x3*-0x775)+'\x20[\x20]\x20\x20'),Q[br(0x1ee)]%(-0x1b85+-0x1e82+0x1*0x3a0d)==-0x253b+0x2052+0x4e9&&(console[br(0x2c0)](G),G='\x20\x20');}G[br(0x378)]()&&console[br(0x2c0)](G);const J=Object['keys'](F[br(0x45d)])[br(0x38c)],K=F[br(0x460)][br(0x4d3)],L=K-J;if(console[br(0x2c0)](),a0af(br(0x29f),a0L['green'][br(0x3cf)](J+'/'+K)),L>-0x94a+-0xec*-0x10+0x6*-0xe9){const Y=F[br(0x3a4)][br(0x1ff)](Z=>!F[br(0x45d)][Z['number']])[br(0x461)](Z=>Z[br(0x1ee)])[br(0x2fa)](',\x20');a0af(br(0x296),a0L[br(0x370)](L+br(0x2f1)+Y+')'));}H[br(0x38c)]>-0xb*0x331+-0xdc6+0x30e1&&a0af(br(0x2e9),a0L[br(0x3cf)][br(0x370)]('★\x20'+H[br(0x38c)])+a0L['gray']('\x20('+H[br(0x461)](Z=>'Q'+Z)[br(0x2fa)](',\x20')+')')),console['log'](),H['length']>0x1442*0x1+-0x140a+-0x38&&console[br(0x2c0)](a0L[br(0x3c9)](br(0x229))+a0L[br(0x2de)](br(0x22c)+H[0x1b24+0x1*0x167d+0x79*-0x69])),console[br(0x2c0)](a0L[br(0x3c9)](br(0x2b6))+a0L[br(0x3cf)][br(0x2c6)](br(0x3a1))+a0L[br(0x3c9)]('\x20to\x20submit\x20for\x20grading.'));}),B[bb(0x265)]('submit\x20[confirmArg]')[bb(0x37d)]('Submit\x20exam\x20for\x20grading\x20(use:\x20\x22exam\x20submit\x20confirm\x22\x20for\x20real\x20exams)')[bb(0x2ef)](async J=>{const bs=bb;a0a8(bs(0x46e)+(J||''));const K=a0Y();if(K&&bs(0x3f0)===J&&(K[bs(0x2b1)]=!(0x19c*-0x14+0x1*-0xa0a+-0xeb*-0x2e),a0Z(K)),!K)return void a0aa(bs(0x348));const L=Object[bs(0x446)](K['answers'])[bs(0x38c)],Q=K[bs(0x460)][bs(0x4d3)],V=Q-L;if(0x25*0x2f+0x21a5+-0x2870===L){const X=a0a1(),Y=X&&new Date()>=X;return void(bs(0x3b2)===K[bs(0x460)][bs(0x1f7)]||Y?(a0a0(),a0ab('No\x20answers\x20to\x20submit.\x20Exam\x20cleared.'),a0ac(bs(0x4ab))):(a0ab('No\x20answers\x20to\x20submit.'),a0ac(bs(0x24e))));}if(bs(0x3b2)!==K[bs(0x460)][bs(0x1f7)]){const Z=!(0x23e+0x19*0x8e+0x1*-0x101c)===K[bs(0x2b1)],a0=a0a1(),a1=!!(a0&&new Date()>=a0);if(!Z&&!a1){if(console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x4b1)](bs(0x371))),console['log'](a0L[bs(0x3cf)][bs(0x4b1)](bs(0x450))),console['log'](a0L['red'](bs(0x371))),console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x2de)](bs(0x358)+a0L[bs(0x3cf)][bs(0x377)](L+'/'+Q)+bs(0x1db))),V>0x2267+0x16a*-0x8+-0x17*0x101){const a3=K[bs(0x3a4)]['filter'](a4=>!K[bs(0x45d)][a4[bs(0x1ee)]])[bs(0x461)](a4=>'Q'+a4['number'])['join'](',\x20');console[bs(0x2c0)](a0L[bs(0x370)]('\x20\x20'+V+bs(0x3f7)+a3));}const a2=Array[bs(0x3dd)](K[bs(0x2d0)])?K[bs(0x2d0)]:[];return a2[bs(0x38c)]>-0xb03+0x3*0x943+-0x10c6*0x1&&console['log'](a0L[bs(0x370)](bs(0x4c8)+a2[bs(0x38c)]+bs(0x37a)+a2['map'](a4=>'Q'+a4)[bs(0x2fa)](',\x20'))),console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x2de)](bs(0x31e))+a0L['bold'][bs(0x4b1)](bs(0x1df))+a0L[bs(0x2de)](bs(0x1e2))),console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x3cf)][bs(0x2de)](bs(0x3f4))+a0L[bs(0x3cf)][bs(0x2c6)](bs(0x4cf))),console[bs(0x2c0)](a0L[bs(0x2de)](bs(0x266))+a0L[bs(0x2c6)](bs(0x3a8))+a0L[bs(0x3c9)]('\x20\x20or\x20\x20')+a0L[bs(0x2c6)](bs(0x49b))),void console[bs(0x2c0)]();}Z&&(delete K[bs(0x2b1)],a0Z(K));}if(console[bs(0x2c0)](),bs(0x3b2)===K[bs(0x460)]['examId']){try{N(-0x113+0xe25+0x689*-0x2,a0ai(bs(0x340))),await q(0x1*0x1f4b+0x12a*-0x1d+-0x31*-0x13);let a4=-0x3*-0x879+-0x8b6+-0x10b5;const a5=[],a6={};for(const ai of K[bs(0x3a4)]){const aj=ai[bs(0x3d1)]||bs(0x480),ak={};ak[bs(0x458)]=0x0,ak['total']=0x0,(a6[aj]||(a6[aj]=ak),a6[aj]['total']++);const al=K[bs(0x45d)][ai[bs(0x1ee)]];al&&ai[bs(0x351)]&&al===ai[bs(0x351)]?(a4++,a6[aj]['correct']++):a5['push'](ai[bs(0x1ee)]);}a5[bs(0x3b0)]((am,an)=>am-an),N(-0x1ef8+-0x189*0x19+0x45bd*0x1,a0ai(bs(0x408))),console[bs(0x2c0)]();const a7=new Date(K[bs(0x460)][bs(0x1dc)])[bs(0x301)](),a8=Math[bs(0x47b)](-0x18a6+-0x1*0x1445+0x2ceb,Math[bs(0x426)]((Date[bs(0x2aa)]()-a7)/(0x4*0x232+0x2f3*-0x5+0x9df))),a9=Math[bs(0x36a)](a8/(-0x1*0x1f09+-0xa2a*-0x3+0x1*0xc7))+'m\x20'+a8%(-0x8f9+0x38b*0x8+-0x3*0x661)+'s',aa=[...K[bs(0x3a4)]],ab={...K[bs(0x45d)]},ac=R(K);a0a0();const ad=Math[bs(0x426)](a4/Q*(-0xc7+0x79*-0x37+0x1b2a)),ae=a0W(),af={};af['Content-Type']=bs(0x1e4),(fetch(bs(0x331),{'method':'POST','headers':af,'body':JSON[bs(0x294)]({'type':bs(0x2ad),'score':a4,'total':Q,'lang':ae[bs(0x424)]||'en','help_used':ac[bs(0x330)],'help_max':ac[bs(0x47b)],'tokens_used':0x0,'solved':ad>=-0x1b53+0x67*0x2a+0xaa9?0x1a1b+0x1663+0x1*-0x307d:0x1*-0x49b+0x1*0xce5+-0x84a,'timestamp':new Date()['toISOString'](),'interactions':K['interactions']||[]}),'signal':AbortSignal[bs(0x428)](-0x1*-0x14e1+0x208f+-0x21e8)})[bs(0x3e7)](()=>{}),console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x2c6)]('\x20\x20═══════════════════════════════════════')),console['log'](),console[bs(0x2c0)](a0L['bold'][bs(0x2de)](bs(0x457))),console[bs(0x2c0)](a0L[bs(0x3cf)][bs(0x2de)](bs(0x355))),console['log'](a0L[bs(0x3cf)][bs(0x2de)]('\x20\x20\x20██║██║\x20\x20\x20\x20\x20██║\x20\x20\x20██║███████║')),console['log'](a0L[bs(0x3cf)][bs(0x2de)](bs(0x37f))),console[bs(0x2c0)](a0L[bs(0x3cf)][bs(0x2de)](bs(0x447))),console[bs(0x2c0)](a0L[bs(0x3cf)][bs(0x2de)](bs(0x2ce))),console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x3cf)](bs(0x223)+a0ai(bs(0x398))+':\x20'+a4+'/'+Q+'\x20('+ad+'%)')),console['log'](a0L[bs(0x3cf)]('\x20\x20\x20'+(ad>=0x14a2+-0x1c17+0x7b1?a0L[bs(0x377)](a0ai(bs(0x2cf))):a0L[bs(0x4b1)](a0ai(bs(0x2d8)))))),console[bs(0x2c0)](a0L['gray']('\x20\x20\x20Elapsed:\x20'+a9)),console[bs(0x2c0)](),console['log'](a0L[bs(0x370)](bs(0x336))),console[bs(0x2c0)](a0L[bs(0x3c9)](bs(0x44e))),console['log'](),console['log'](a0L[bs(0x2c6)](bs(0x3ff))),await q(-0xff7*0x1+0x1f03+-0x354));const ag=Object[bs(0x429)](a6);if(ag[bs(0x38c)]>0x199*0x16+-0x213*0xd+0x82f*-0x1){console[bs(0x2c0)](),console[bs(0x2c0)](a0L['bold'][bs(0x2de)](bs(0x290)));const am=-0x8*-0x3b0+-0x1500+-0x876;for(const [an,ao]of ag){const ap=ao[bs(0x366)]>-0x1*0x2107+0x299*-0xd+0x156*0x32?Math[bs(0x426)](ao[bs(0x458)]/ao[bs(0x366)]*(-0x18*0x11+-0x238*0x9+-0x119*-0x14)):0x1a37+0x175c+0x157*-0x25,aq=ao[bs(0x366)]>0x215+-0xf7f*0x1+0xd6a*0x1?Math[bs(0x426)](ao[bs(0x458)]/ao[bs(0x366)]*am):-0x7*0x43f+-0xb71+0x1495*0x2,ar=am-aq,as=ap>=-0x1*-0xaf4+-0x87+-0xa1d*0x1?a0L[bs(0x377)]:ap>=-0x1d52+-0x71e*-0x4+0x86*0x2?a0L['yellow']:a0L['red'],at=as('█'[bs(0x26d)](aq))+a0L[bs(0x3c9)]('░'[bs(0x26d)](ar));console[bs(0x2c0)]('\x20\x20\x20\x20'+a0L['white'](an[bs(0x41e)](0x2521*0x1+-0x8*-0x19b+-0x31e5))+'\x20'+at+'\x20\x20'+as(ao[bs(0x458)]+'/'+ao[bs(0x366)])+a0L[bs(0x3c9)]('\x20('+ap+'%)'));}console[bs(0x2c0)](),console['log'](a0L[bs(0x2c6)](bs(0x1d7)));}const ah=a0a4(a4,Q);if(a4===ah[bs(0x310)]&&ah['attempts']>0xc2*0x29+0x1f2d+-0x202*0x1f&&a4>0x5*-0x7c9+0x1fa9+0x744&&(console[bs(0x2c0)](),console['log'](a0L[bs(0x3cf)][bs(0x377)](bs(0x43b)))),a5[bs(0x38c)]>0x14*-0x1e4+-0x92*0x40+0x4a50){const au=aa['filter'](av=>a5['includes'](av[bs(0x1ee)]))[bs(0x461)](av=>({...av}));a0a5(au);}else a0a7();if(await q(0x6*0x67a+0xe01+-0x2925*0x1),a5[bs(0x38c)]>0x669*-0x1+-0x27*-0x4f+-0x5a0){console['log'](),console[bs(0x2c0)](a0L[bs(0x370)]('\x20\x20'+a5[bs(0x38c)]+'\x20'+a0ai(bs(0x30d)))),console[bs(0x2c0)]();for(const av of a5){const aw=aa[bs(0x333)](az=>az[bs(0x1ee)]===av);if(!aw)continue;const ax=ab[av],ay=aw[bs(0x351)];console[bs(0x2c0)](a0L[bs(0x2de)](bs(0x26e)+av+'.\x20'+aw[bs(0x236)])),ax?console[bs(0x2c0)](a0L[bs(0x4b1)](bs(0x3ae)+a0ai(bs(0x200))+':\x20'+ax+'.\x20'+aw['options'][ax])):console[bs(0x2c0)](a0L[bs(0x370)]('\x20\x20\x20\x20'+a0ai('yourAnswer')+':\x20—')),ay&&console[bs(0x2c0)](a0L[bs(0x377)]('\x20\x20\x20\x20'+a0ai(bs(0x458))+':\x20'+ay+'.\x20'+aw[bs(0x1fb)][ay])),aw[bs(0x217)]&&console[bs(0x2c0)](a0L[bs(0x3c9)](bs(0x4ae)+aw['explanation'])),console[bs(0x2c0)]();}}else console[bs(0x2c0)](),console['log'](a0L[bs(0x377)]('\x20\x20'+a0ai(bs(0x1f0))));await q(-0x1*0x22a4+-0x1*0xaaf+0x3523),console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x2c6)](bs(0x1d7))),console['log'](a0L['white']('\x20\x20'+a0ai('nextLabel')+'\x20')+a0L[bs(0x3cf)][bs(0x377)](bs(0x27c))+a0L[bs(0x3c9)](bs(0x383)+a0ai(bs(0x442)))),console['log'](a0L[bs(0x3c9)]('\x20\x20'+a0ai(bs(0x43a)))),console[bs(0x2c0)](a0L[bs(0x2c6)](bs(0x1d7))),console['log']();}catch(az){console[bs(0x2c0)](),a0aa(az[bs(0x3d3)]);}return;}const W=K[bs(0x460)]['token'];try{let aA;if(N(0x31*-0x4+0xc25*0x1+-0xb61,bs(0x361)),W){const aK={};aK[bs(0x37c)]=bs(0x1e4);const aL={};aL[bs(0x27c)]=0x0,aL[bs(0x479)]=0x0;const aM=a0W()['ctfdUrl']||bs(0x38a),aN=await fetch(aM+'/api/icoa/exams/'+K['session'][bs(0x1f7)]+bs(0x2bc),{'method':bs(0x277),'headers':aK,'body':JSON[bs(0x294)]({'token':W,'answers':K[bs(0x45d)],'interactions':K[bs(0x298)]||[],'aiUsage':K['aiUsage']||aL,'bookmarks':K[bs(0x2d0)]||[]}),'signal':AbortSignal[bs(0x428)](0x53d2+0x20f2*0x1+-0x3a2c)});if(!aN['ok']){const aO=await aN['json']()[bs(0x3e7)](()=>({'message':bs(0x1d8)}));throw new Error(aO[bs(0x3d3)]||bs(0x1d8));}aA=(await aN[bs(0x2f7)]())[bs(0x43f)];}else{const aP=M();if(!aP)return;aA=await aP[bs(0x216)](K[bs(0x460)]['examId'],K[bs(0x45d)]);}N(-0x5*0x51a+0x3d8*0x1+0x4*0x577,bs(0x43c)),await q(0x1999+0x1*0x503+-0x1d70),N(-0x1a9e+-0xe54+0x2956,bs(0x3df)),console[bs(0x2c0)]();const aB={};aB[bs(0x27c)]=0x0,aB['ctf4ai']=0x0;const aC={'answered':Object[bs(0x446)](K[bs(0x45d)])[bs(0x38c)],'total':K[bs(0x460)]['questionCount'],'bookmarks':Array[bs(0x3dd)](K['bookmarks'])?K[bs(0x2d0)]['length']:0x1e09+-0x143b+-0x9ce,'help':R(K),'aiUsage':K['aiUsage']||aB,'interactions':(K[bs(0x298)]||[])[bs(0x38c)],'durationMin':K['session'][bs(0x47e)]||0x952*0x1+-0xf0a+0x5b8,'confirmedAt':K['session'][bs(0x498)]||K['session'][bs(0x1dc)],'examId':K[bs(0x460)][bs(0x1f7)]};a0a0();const aD=Math[bs(0x47b)](0x2507+0x68*0x7+-0xad*0x3b,Math[bs(0x426)]((Date[bs(0x2aa)]()-new Date(aC[bs(0x498)])['getTime']())/(0x9ad*0x1+0x197b+-0x1f40))),aE=Math['floor'](aD/(-0x7*0x18+-0x5f0+0x6d4)),aF=aD%(-0x3*0x182+0x1234+0xd72*-0x1);console[bs(0x2c0)](),console[bs(0x2c0)](a0L['cyan'](bs(0x4be))),console[bs(0x2c0)](),console['log'](a0L[bs(0x3cf)][bs(0x2de)](bs(0x457))),console[bs(0x2c0)](a0L[bs(0x3cf)][bs(0x2de)](bs(0x355))),console[bs(0x2c0)](a0L[bs(0x3cf)]['white'](bs(0x3bc))),console[bs(0x2c0)](a0L['bold'][bs(0x2de)]('\x20\x20\x20██║██║\x20\x20\x20\x20\x20██║\x20\x20\x20██║██╔══██║')),console[bs(0x2c0)](a0L[bs(0x3cf)][bs(0x2de)](bs(0x447))),console[bs(0x2c0)](a0L['bold'][bs(0x2de)](bs(0x2ce))),console['log']();const aG=aA[bs(0x2cf)]?a0L['green']['bold'](bs(0x1d2)):a0L['yellow'][bs(0x3cf)](bs(0x1dd));console[bs(0x2c0)](aG),console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x2de)](bs(0x2a9))),console['log'](a0L[bs(0x2de)]('\x20\x20\x20exam\x20center.\x20Final\x20scoring\x20and\x20selection\x20are\x20decided\x20by')),console[bs(0x2c0)](a0L[bs(0x2de)]('\x20\x20\x20the\x20organizer\x20in\x20your\x20country.')),console['log'](),console[bs(0x2c0)](a0L[bs(0x2c6)]('\x20\x20─────────────────────────────────────────────')),console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x3cf)]['white'](bs(0x2bd)));const aH=aC[bs(0x366)]-aC['answered'];console[bs(0x2c0)](bs(0x3ae)+a0L[bs(0x3c9)](bs(0x334))+a0L[bs(0x2de)](aC['answered']+'/'+aC[bs(0x366)])+(aH>0x12eb+-0x1077+0x13a*-0x2?a0L['gray'](bs(0x309)+aH+bs(0x1e7)):'')),console[bs(0x2c0)](bs(0x3ae)+a0L[bs(0x3c9)](bs(0x468))+a0L['white'](aE+'m\x20'+aF+'s')+a0L[bs(0x3c9)]('\x20\x20of\x20'+aC['durationMin']+bs(0x258))),aC['bookmarks']>-0x1ae9*0x1+0x166e+0x47b&&console[bs(0x2c0)]('\x20\x20\x20\x20'+a0L[bs(0x3c9)](bs(0x2b0))+a0L[bs(0x370)]('★\x20'+aC[bs(0x2d0)])),console[bs(0x2c0)]();const aI=aA['categoryStats'];if(aI&&Object[bs(0x446)](aI)[bs(0x38c)]>=-0x1232+0x1c06*0x1+-0x2*0x4e9){const aQ=Object[bs(0x429)](aI)['filter'](([,aV])=>aV['total']>0x1*0x1a5+-0x1*-0x1906+-0x1aab)['map'](([aV,aW])=>({'cat':aV,'pct':aW['correct']/aW[bs(0x366)]}))[bs(0x3b0)]((aV,aW)=>aW[bs(0x2c5)]-aV['pct']),aR=Math[bs(0x421)](-0xdac+-0xbe1+-0x2d7*-0x9,Math[bs(0x494)](aQ[bs(0x38c)]/(0x7bb+-0x167f+-0xd*-0x123))),aS=Math['min'](0x12*-0x8c+-0xf70+0x194a,Math[bs(0x494)](aQ[bs(0x38c)]/(-0x819+0x2eb+0x3*0x1bb))),aT=aQ[bs(0x24f)](0xaf1+-0x635*0x1+-0x4bc,aR)[bs(0x461)](aV=>aV[bs(0x392)]),aU=aQ['slice'](-aS)[bs(0x461)](aV=>aV[bs(0x392)]);aT[bs(0x4ca)](aV=>aU[bs(0x2f0)](aV))||(console[bs(0x2c0)](a0L[bs(0x3cf)][bs(0x2de)](bs(0x31c))),console[bs(0x2c0)](bs(0x3ae)+a0L[bs(0x377)](bs(0x4a5))+a0L['white'](aT['join'](',\x20'))),console[bs(0x2c0)](bs(0x3ae)+a0L[bs(0x370)](bs(0x20f))+a0L[bs(0x2de)](aU[bs(0x2fa)](',\x20'))),console[bs(0x2c0)](a0L['gray'](bs(0x346))),console[bs(0x2c0)]());}console[bs(0x2c0)](a0L[bs(0x3cf)][bs(0x2de)](bs(0x241))),console[bs(0x2c0)](bs(0x3ae)+a0L['gray'](bs(0x2c4))+a0L[bs(0x2de)](aC[bs(0x1ed)]['used']+'/'+aC['help'][bs(0x47b)])),console[bs(0x2c0)](bs(0x3ae)+a0L[bs(0x3c9)](bs(0x215))+a0L[bs(0x2de)](aC[bs(0x3c1)][bs(0x27c)]+bs(0x3b6))+a0L['gray'](bs(0x309))+a0L[bs(0x2de)](aC[bs(0x3c1)][bs(0x479)]+bs(0x486))),console[bs(0x2c0)](),console[bs(0x2c0)](a0L[bs(0x2c6)](bs(0x1d7))),console['log'](),console[bs(0x2c0)](a0L[bs(0x3cf)][bs(0x2de)](bs(0x3be))),console['log'](a0L[bs(0x3c9)](bs(0x4b2))),console['log'](a0L[bs(0x3c9)](bs(0x1d3))+a0L[bs(0x2de)](bs(0x3ba))+a0L[bs(0x3c9)](bs(0x302))),console[bs(0x2c0)](a0L[bs(0x3c9)](bs(0x46c))+a0L['white'](bs(0x1ef))),console[bs(0x2c0)]();const {showCToBUpgradePrompt:aJ}=await import(bs(0x3fd));aJ(aC[bs(0x1f7)],aA[bs(0x2cf)]),console[bs(0x2c0)](a0L[bs(0x370)](bs(0x3cc))),console[bs(0x2c0)](a0L[bs(0x2c6)][bs(0x262)](bs(0x201))),console['log'](),console['log'](a0L[bs(0x2c6)](bs(0x4be))),console[bs(0x2c0)]();}catch(aV){console[bs(0x2c0)](),a0aa(aV['message']);}}),B['command'](bb(0x478))['description']('View\x20exam\x20result')[bb(0x2ef)](async F=>{const bt=bb;a0a8('exam\x20result\x20'+(F||''));const G=M();if(!G)return;if(!F){const J=a0Y();if(!J)return void a0aa('Specify\x20exam\x20ID:\x20exam\x20result\x20<id>');F=J[bt(0x460)]['examId'];}const H=a0ag(bt(0x439));H['start']();try{const K=await G[bt(0x44d)](F);H[bt(0x45b)](bt(0x27d)),console[bt(0x2c0)](),a0ae(K[bt(0x495)]),a0af(bt(0x22e),a0L[bt(0x3cf)](K[bt(0x398)]+'/'+K[bt(0x366)])),a0af(bt(0x21b),a0L[bt(0x3cf)](K[bt(0x453)]+'%')),a0af(bt(0x2e3),K['passed']?a0L['green'][bt(0x3cf)](bt(0x1e6)):a0L[bt(0x4b1)][bt(0x3cf)](bt(0x25b))),a0af(bt(0x415),K[bt(0x42d)]),console['log']();}catch(L){H[bt(0x464)](bt(0x307)),a0aa(L[bt(0x3d3)]);}}),B[bb(0x265)](bb(0x247))[bb(0x37d)](bb(0x322))[bb(0x2ef)](async J=>{const bu=bb;a0a8(bu(0x3d5)+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import('../lib/exam-state.js'),V=K();if(V){const a2=V['session'][bu(0x462)],a3=a0a1(),a4=!!a2&&a2[bu(0x378)]()[bu(0x2fd)]()!==J[bu(0x378)]()[bu(0x2fd)](),a5=!!a3&&a3[bu(0x301)]()+(0x3e0*-0x9e4+-0x365b59+-0x1bdc5*-0x45)<Date[bu(0x2aa)]();if(a4&&a5)return Q(),console['log'](),console[bu(0x2c0)](a0L[bu(0x3c9)](bu(0x1d1))),console['log'](),console[bu(0x2c0)](a0L[bu(0x2de)](bu(0x47d))+a0L[bu(0x3cf)][bu(0x2c6)](bu(0x342)+J)),void console['log']();if(!a2&&J)return V[bu(0x460)][bu(0x462)]=J[bu(0x378)](),L(V),console[bu(0x2c0)](),console[bu(0x2c0)](a0L['green'](bu(0x4c6))),console[bu(0x2c0)](a0L['gray'](bu(0x238))+a0L[bu(0x2de)](bu(0x22d))+a0L[bu(0x3c9)](bu(0x1f5))+a0L[bu(0x2de)]('exam\x20submit')),console['log'](),console['log'](a0L[bu(0x3cf)][bu(0x2de)](bu(0x293))),console[bu(0x2c0)](a0L[bu(0x3c9)](bu(0x4ae))+a0L[bu(0x3cf)][bu(0x2c6)](bu(0x475))+a0L[bu(0x3c9)](bu(0x4a4))),console['log'](a0L[bu(0x3c9)](bu(0x4ae))+a0L[bu(0x3cf)]['cyan'](bu(0x3a8))+a0L['gray'](bu(0x396))),void console[bu(0x2c0)]();const a6=Object[bu(0x446)](V['answers'])['length'],a7=V['session'][bu(0x4d3)],a8=a0a1(),a9=a8?Math['max'](0x2478+-0x1*0x10f1+0x1387*-0x1,Math[bu(0x426)]((a8['getTime']()-Date[bu(0x2aa)]())/(0x4*0x28bb+0x8fef+-0x487b))):null;return console['log'](),console['log'](a0L[bu(0x370)](bu(0x404))),console[bu(0x2c0)](),console['log'](a0L[bu(0x3c9)](bu(0x34c))+a0L[bu(0x2de)](V[bu(0x460)]['examName'])),a2&&console[bu(0x2c0)](a0L[bu(0x3c9)](bu(0x4ce))+a0L['white'](a2)+(a2===J?a0L[bu(0x377)](bu(0x268)):a0L['yellow'](bu(0x260)))),console['log'](a0L[bu(0x3c9)]('\x20\x20Answers:\x20')+a0L['white'](a6+'/'+a7)),null!==a9&&console[bu(0x2c0)](a0L[bu(0x3c9)](bu(0x3ed))+a0L[bu(0x2de)](a9+bu(0x465))),console[bu(0x2c0)](),console['log'](a0L[bu(0x3cf)][bu(0x2de)](bu(0x39f))),console[bu(0x2c0)](a0L[bu(0x3c9)](bu(0x4ae))+a0L[bu(0x3cf)][bu(0x2c6)]('exam\x20q\x201')+a0L['gray'](bu(0x4a4))),console[bu(0x2c0)](a0L['gray'](bu(0x4ae))+a0L[bu(0x3cf)]['cyan']('exam\x20review')+a0L[bu(0x3c9)]('\x20\x20\x20see\x20progress\x20+\x20flagged\x20items')),console[bu(0x2c0)](a0L[bu(0x3c9)](bu(0x4ae))+a0L['bold'][bu(0x2c6)](bu(0x3a1))+a0L[bu(0x3c9)]('\x20\x20\x20finish\x20and\x20submit')),a2&&a2!==J&&(console[bu(0x2c0)](),console[bu(0x2c0)](a0L[bu(0x370)]('\x20\x20Note:\x20you\x20typed\x20a\x20different\x20token.\x20Each\x20exam\x20token\x20is\x20bound\x20to')),console[bu(0x2c0)](a0L[bu(0x370)](bu(0x326))),console['log'](),console[bu(0x2c0)](a0L['gray'](bu(0x490))),console[bu(0x2c0)](a0L[bu(0x3c9)]('\x20\x20run\x20')+a0L[bu(0x3cf)][bu(0x2c6)]('exam\x20reset')+a0L['gray']('\x20to\x20wipe\x20local\x20state,\x20then\x20re-enter\x20the\x20new\x20token.'))),void console[bu(0x2c0)]();}const {isNativeWindowsCmd:W}=await import(bu(0x292));if(!W()&&!a0am()){let aa=!(-0x57b*0x1+0x3*-0xa76+-0xf2*-0x27);try{const ab={};ab[bu(0x37c)]=bu(0x1e4);const ac=a0W()['ctfdUrl']||bu(0x38a),ad=await fetch(ac+bu(0x251),{'method':bu(0x277),'headers':ab,'body':JSON['stringify']({'token':J[bu(0x378)](),'deviceHash':a0aj(),'peek':!(-0x19*-0x92+0x6d*0x4c+-0x2e9e)}),'signal':AbortSignal[bu(0x428)](-0x1121+-0x19*-0xee+-0xe5*-0xf)});if(ad['ok']){const ae=await ad[bu(0x2f7)]();(ae?.['data']?.['exam_id']||'')[bu(0x430)]('-c')&&(aa=!(0x20b*-0x9+0x1*-0x1fcb+-0x1*-0x322e));}}catch{}if(!aa)return console[bu(0x2c0)](),a0ab('Pre-exam\x20setup\x20required\x20before\x20entering\x20a\x20token.'),console[bu(0x2c0)](a0L['gray'](bu(0x4ad))+a0L[bu(0x3cf)][bu(0x2c6)]('exam\x20setup')),console[bu(0x2c0)](a0L[bu(0x3c9)](bu(0x4c3))+a0L[bu(0x3cf)]['cyan'](bu(0x49b))+a0L[bu(0x3c9)](bu(0x497))),console[bu(0x2c0)](a0L[bu(0x3c9)](bu(0x44a))),void console[bu(0x2c0)]();}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['NZ']='en',X['LK']='si';const Y=X[J['trim']()[bu(0x2e2)](-0x1*0x233f+0x13d8+0xf67,-0xc9a*-0x1+0x1a47+0x1f*-0x141)[bu(0x2fd)]()],Z=a0W(),a0=Z[bu(0x2c3)]||'https://practice.icoa2026.au',a1=Y||Z['language']||'en';Y&&Y!==(Z[bu(0x424)]||'en')&&a0X({'language':Y}),console[bu(0x2c0)](),N(0x1c1a+0x85f*0x2+0x23e*-0x14,'Validating\x20token...');try{const af={};af[bu(0x37c)]='application/json';const ag=await fetch(a0+bu(0x251),{'method':bu(0x277),'headers':af,'body':JSON[bu(0x294)]({'token':J[bu(0x378)](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal[bu(0x428)](0x8*-0x3b+0x32a6+-0x9be)});if(!ag['ok']){N(-0x5f8+0x16a0*0x1+-0x10a8,''),console[bu(0x2c0)]();const ao=await ag[bu(0x2f7)]()[bu(0x3e7)](()=>({'message':'Invalid\x20token'}));return a0aa(ao[bu(0x3d3)]||bu(0x20a)),void a0ac(bu(0x21f));}N(-0x1a93*0x1+0x1165+0x94c,bu(0x233));const ah=await ag[bu(0x2f7)](),{session:ai,questions:aj,languages:ak}=ah[bu(0x43f)];N(0x13c*0x7+0x1cf8*0x1+-0x2560,bu(0x4d5)),await q(-0x2709+0x3f1*0x9+-0x1*-0x458),N(-0x2566+-0xead+0x16b*0x25,bu(0x3d9)),console['log'](),console[bu(0x2c0)](),a0ae(ai[bu(0x495)]),console['log'](),a0af('Questions',ai[bu(0x4d3)]+bu(0x46a)),a0af('Duration',ai[bu(0x47e)]+'\x20minutes'),a0af(bu(0x345),(ai[bu(0x2d9)]||0x1478+-0x1*0x148b+0xa9*0x1)+'\x20points'),a0af(bu(0x4ba),(ai[bu(0x48c)]||-0x13*-0x38+0x2b0*-0x4+0x6e3)+bu(0x35d)),console[bu(0x2c0)](),console[bu(0x2c0)](a0L['white']('\x20\x20Assistance:')),console['log'](a0L[bu(0x2de)](bu(0x289))),console[bu(0x2c0)](a0L['white'](bu(0x375))),console['log'](a0L['white']('\x20\x20\x20\x20AI:\x20\x20\x20\x20\x20\x2025K\x20AI4CTF\x20+\x2025K\x20CTF4AI\x20tokens')),ak&&ak[bu(0x38c)]>0xe57+0x2021*0x1+-0x41*0xb7&&console[bu(0x2c0)](a0L['white'](bu(0x205)+ak[bu(0x2fa)](',\x20')+bu(0x3d2))),console[bu(0x2c0)](),console[bu(0x2c0)](a0L['yellow'](bu(0x2c9))),console[bu(0x2c0)](a0L[bu(0x2de)](bu(0x317))),console['log'](a0L[bu(0x2de)](bu(0x35b))),console['log'](a0L[bu(0x2de)]('\x20\x20\x20\x20•\x20You\x20may\x20exit\x20and\x20resume\x20with\x20the\x20same\x20token')),console[bu(0x2c0)](),await new Promise(ap=>{const bv=bu;process[bv(0x30b)][bv(0x3c3)](a0L[bv(0x3cf)][bv(0x370)](bv(0x43e)));const aq=!!process['stdin'][bv(0x29c)]&&process[bv(0x488)][bv(0x2eb)];process['stdin'][bv(0x29c)]&&process[bv(0x488)][bv(0x25c)]&&process[bv(0x488)][bv(0x25c)](!(-0x2459+-0x2171+-0x41b*-0x11));const ar=as=>{const bw=bv,at=as['toString']();(at[bw(0x2f0)]('\x0a')||at[bw(0x2f0)]('\x0d'))&&(process['stdin'][bw(0x3a9)]('data',ar),process[bw(0x488)][bw(0x29c)]&&process[bw(0x488)]['setRawMode']&&process[bw(0x488)]['setRawMode'](aq),process['stdout']['write']('\x0a'),ap());};process[bv(0x488)]['on'](bv(0x43f),ar),process[bv(0x488)][bv(0x1e5)]();});const al=new Date()['toISOString']();ai[bu(0x498)]=al,ai[bu(0x462)]=J[bu(0x378)]();try{const ap=Date[bu(0x2aa)](),aq=await fetch(a0+bu(0x40c),{'method':'GET','signal':AbortSignal[bu(0x428)](-0x1724+0x3ea*-0x5+0x1*0x366e)});if(aq['ok']){const ar=await aq[bu(0x2f7)](),as=ar?.['data']?.[bu(0x38e)];if('number'==typeof as&&as>-0xa43*0x1+-0x179c+0x21df){const at=(ap+Date['now']())/(-0x12ce+0x6*-0x17+-0x135a*-0x1);ai[bu(0x482)]=Math[bu(0x426)](as-at),ai[bu(0x4b0)]=as+(0xd5d*0x1+0x21ca+-0x1*0x2eeb)*ai[bu(0x47e)]*(0x1f21+-0x3ee*-0x1+-0x37*0x91);}}}catch{}const am={};am[bu(0x27c)]=0x0,am[bu(0x479)]=0x0;const an={};an[bu(0x460)]=ai,an[bu(0x3a4)]=aj,an[bu(0x45d)]={},an['interactions']=[],an[bu(0x3c1)]=am,(a0Z(an),console[bu(0x2c0)](),a0a9(bu(0x26b)),a0af(bu(0x327),ai[bu(0x47e)]+bu(0x3de)),aj[bu(0x38c)]>0x215c+0x47*-0x12+-0x1c5e&&U(aj[-0x1711*-0x1+0x264+-0x1975]));}catch(au){console[bu(0x2c0)](),bu(0x25a)===au[bu(0x28f)]?a0aa(bu(0x40a)):a0aa(au[bu(0x3d3)]||bu(0x389));}}),B[bb(0x265)](bb(0x4a8),{'hidden':!(-0x988+0x64d+0x33b)})['description']('Abandon\x20current\x20exam\x20session\x20and\x20wipe\x20local\x20state\x20(recovery\x20only)')[bb(0x2ef)](async()=>{const bx=bb;a0a8('exam\x20reset');const {getRealExamState:F,clearExamState:G}=await import(bx(0x3e4)),H=F();if(!H)return console['log'](),console[bx(0x2c0)](a0L[bx(0x3c9)]('\x20\x20No\x20active\x20exam\x20session\x20to\x20reset.')),void console[bx(0x2c0)]();const J=H[bx(0x460)]['token'];if(console['log'](),console[bx(0x2c0)](a0L['yellow']('\x20\x20⚠\x20\x20Reset\x20will\x20abandon\x20your\x20current\x20exam\x20session\x20on\x20this\x20device.')),console[bx(0x2c0)](a0L[bx(0x3c9)](bx(0x1e0))+a0L[bx(0x2de)](H[bx(0x460)][bx(0x495)])),J&&console['log'](a0L[bx(0x3c9)]('\x20\x20\x20\x20\x20Token:\x20')+a0L['white'](J)),console[bx(0x2c0)](a0L['gray']('\x20\x20\x20\x20\x20The\x20token\x20itself\x20is\x20NOT\x20revoked\x20server-side.\x20If\x20your\x20session\x20is')),console['log'](a0L[bx(0x3c9)]('\x20\x20\x20\x20\x20still\x20active\x20and\x20not\x20submitted,\x20re-entering\x20the\x20same\x20token\x20resumes\x20it.')),console[bx(0x2c0)](),console[bx(0x2c0)](a0L['gray'](bx(0x32b))+a0L[bx(0x3cf)][bx(0x2c6)](bx(0x4a8))+a0L[bx(0x3c9)]('\x20to\x20confirm,\x20or\x20anything\x20else\x20to\x20cancel:')),bx(0x4a8)!==(await new Promise(K=>{const by=bx;process[by(0x30b)][by(0x3c3)](by(0x2a1));const L=Q=>{const bz=by,V=Q['toString']()[bz(0x378)]();(V[bz(0x2f0)]('\x0a')||V[bz(0x2f0)]('\x0d')||V[bz(0x38c)]>-0x1067+-0x10f1+-0x2c*-0xc2)&&(process[bz(0x488)][bz(0x3a9)]('data',L),K(V[bz(0x226)](/[\r\n]/g,'')));};process[by(0x488)]['on'](by(0x43f),L),process[by(0x488)][by(0x1e5)]();}))[bx(0x423)]())return console[bx(0x2c0)](a0L[bx(0x3c9)](bx(0x471))),void console[bx(0x2c0)]();G(),console[bx(0x2c0)](),console[bx(0x2c0)](a0L[bx(0x377)](bx(0x466))),console[bx(0x2c0)](a0L[bx(0x3c9)](bx(0x320))+a0L['bold'][bx(0x2c6)]('exam\x20<token>')),console[bx(0x2c0)]();}),B[bb(0x265)](bb(0x3ba))[bb(0x37d)](bb(0x491))[bb(0x2ef)](async()=>{const bA=bb;a0a8('exam\x20demo'),E(bA(0x2dd));const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import(bA(0x1f3));a0W()[bA(0x2e7)]||(await(async function(){const bB=bA;let a0=!(-0x3e1*-0x4+-0x1ce4+0x5*0x2ad);const a1=process[bB(0x488)],a2=()=>{a0=!(0x1a69*-0x1+-0x1ef9+0x3962);},a3=a1[bB(0x29c)]&&bB(0x33b)==typeof a1['setRawMode'];a3&&(a1[bB(0x25c)](!(0xa0a+0x6bd*0x1+0x1*-0x10c7)),a1[bB(0x1e5)](),a1['once']('data',a2));const a4=async a5=>{let a6=-0xd03+0xb40+0x1c3;for(;a6<a5&&!a0;)await q(-0x239+0x33*0x2d+0x1*-0x66e),a6+=-0x14a3+0x6c9+0x715*0x2;};try{if(console['clear'](),console[bB(0x2c0)](),console['log'](a0L['gray'](bB(0x223))+a0L[bB(0x239)](bB(0x374))),console[bB(0x2c0)](),console['log'](a0L[bB(0x3cf)][bB(0x2de)](bB(0x457))),console[bB(0x2c0)](a0L[bB(0x3cf)]['white'](bB(0x355))),console['log'](a0L[bB(0x3cf)]['white'](bB(0x3bc))),console[bB(0x2c0)](a0L['bold'][bB(0x2de)](bB(0x37f))),console[bB(0x2c0)](a0L['bold'][bB(0x2de)]('\x20\x20\x20██║╚██████╗╚██████╔╝██║\x20\x20██║')),console[bB(0x2c0)](a0L[bB(0x3cf)][bB(0x2de)](bB(0x2ce))),console[bB(0x2c0)](),console[bB(0x2c0)](a0L[bB(0x3cf)][bB(0x370)](bB(0x29b))),console['log'](a0L[bB(0x3c9)]('\x20\x20\x20Sydney,\x20Australia\x20\x20·\x20\x20Jun\x2027\x20–\x20Jul\x202,\x202026')),await a4(-0x1*-0xf4+-0x1652+0x1f22),a0)return;if(console[bB(0x2c0)](),console[bB(0x2c0)](a0L['white'](bB(0x2e4))),console[bB(0x2c0)](),await a4(0x25b+-0x1e8c+0x1e89*0x1),a0)return;if(console['log'](a0L[bB(0x2c6)](bB(0x232))+a0L[bB(0x2de)](bB(0x20c))+a0L[bB(0x3c9)](bB(0x380))),await a4(-0x20ea*-0x1+-0x22ff+-0x3*-0x19b),a0)return;if(console[bB(0x2c0)](a0L[bB(0x377)]('\x20\x20\x20\x20\x20▣\x20')+a0L[bB(0x2de)](bB(0x26f))+a0L[bB(0x3c9)](bB(0x49f))),await a4(0x6db+-0x2671+0x2252),a0)return;if(console[bB(0x2c0)](a0L[bB(0x4b1)](bB(0x232))+a0L[bB(0x2de)](bB(0x350))+a0L[bB(0x3c9)](bB(0x45a))),await a4(-0x1957+0x124e+0xa8d*0x1),a0)return;if(console[bB(0x2c0)](),console['log'](a0L[bB(0x3cf)][bB(0x2de)](bB(0x2b2))+a0L[bB(0x3cf)][bB(0x370)]('IS')+a0L['bold']['white'](bB(0x472))),console[bB(0x2c0)](),await a4(0x40d*0x1+0x2*0x412+-0x655),a0)return;if(console['log'](a0L['gray'](bB(0x1ec))),await a4(-0x9ee+-0x2c5*0xb+0x29f5*0x1),a0)return;if(console['log'](a0L['gray'](bB(0x328))),await a4(-0x11c7+-0xb11+-0x1*-0x1e68),a0)return;if(console['log'](a0L[bB(0x3c9)](bB(0x372))),await a4(-0x1c*0xf6+0xe9d*-0x1+0x1*0x2ca5),a0)return;console['log'](),console[bB(0x2c0)](a0L[bB(0x3cf)][bB(0x2c6)](bB(0x255))),await a4(-0x39f*-0x6+-0x686+0x6c);}finally{((()=>{const bC=bB;if(a3){a1['removeListener'](bC(0x43f),a2);try{a1[bC(0x25c)](!(0x1*0x251+-0x12*-0x185+-0xed5*0x2));}catch{}a1['pause']();}})()),console['clear']();}}()),a0X({'demoIntroSeen':!(0x8*0x25+0x1a*0x12+-0x2fc)})),console['log'](),console[bA(0x2c0)](a0L[bA(0x2de)](bA(0x259))+a0L[bA(0x3c9)](H+bA(0x3f8)+J+'.\x20No\x20timer.\x20Free\x20practice.')),console[bA(0x2c0)](a0L[bA(0x3c9)]('\x20\x20You\x20can\x20pause\x20with\x20')+a0L[bA(0x2c6)](bA(0x45f))+a0L[bA(0x3c9)](bA(0x204))+a0L[bA(0x2c6)]('back')+a0L['gray'](bA(0x3aa))),await new Promise(a0=>{const bD=bA;process[bD(0x30b)][bD(0x3c3)](a0L[bD(0x3cf)][bD(0x370)](bD(0x3fe)));const a1=!!process[bD(0x488)]['isTTY']&&process[bD(0x488)][bD(0x2eb)];process['stdin']['isTTY']&&process['stdin']['setRawMode']&&process[bD(0x488)]['setRawMode'](!(0x1923+0xcbd+-0x1*0x25df));const a2=a3=>{const bE=bD,a4=a3[bE(0x2e8)]();(a4['includes']('\x0a')||a4[bE(0x2f0)]('\x0d'))&&(process[bE(0x488)][bE(0x3a9)](bE(0x43f),a2),process[bE(0x488)][bE(0x29c)]&&process[bE(0x488)][bE(0x25c)]&&process[bE(0x488)]['setRawMode'](a1),process[bE(0x30b)]['write']('\x0a'),a0());};process[bD(0x488)]['on'](bD(0x43f),a2),process[bD(0x488)]['resume']();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import('../lib/exam-state.js');Q()&&V(bA(0x3b2)),console[bA(0x2c0)](),a0ae(bA(0x252)),console[bA(0x2c0)](),console[bA(0x2c0)](a0L['white'](bA(0x4d6))),console[bA(0x2c0)](a0L[bA(0x2de)]('\x20\x20'+H+bA(0x1d9)+J+'\x20·\x20Pick\x20one\x20answer\x20per\x20question'));const W=a0a3();if(W['attempts']>-0x6*-0x1d9+0xbd8+-0x16ee){const a0=W['bestPercentage'],a1=a0>=-0x11*-0x23f+-0x1aff+-0xae0?a0L[bA(0x377)]:a0>=0x248b+0xa73+-0x2ec2?a0L[bA(0x370)]:a0L[bA(0x2de)];console['log'](),console[bA(0x2c0)](a0L[bA(0x3c9)]('\x20\x20Your\x20best:\x20')+a1(W[bA(0x310)]+'/'+H+'\x20('+a0+'%)')+a0L[bA(0x3c9)](bA(0x309)+W[bA(0x394)]+bA(0x49e)));}console[bA(0x2c0)](),console[bA(0x2c0)](a0L[bA(0x3c9)](bA(0x4b5))),console[bA(0x2c0)](a0L[bA(0x2de)]('\x20\x20'+a0ai(bA(0x445)))),console[bA(0x2c0)](a0L[bA(0x370)](bA(0x263))+a0L[bA(0x3c9)]('\x20\x20\x20\x20\x20\x20\x20'+a0ai('htpAnswer'))),console[bA(0x2c0)](a0L[bA(0x370)]('\x20\x20\x20\x20help')+a0L[bA(0x3c9)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bA(0x3d0)))),console[bA(0x2c0)](a0L[bA(0x370)](bA(0x3d6))+a0L['gray'](bA(0x3d4))+a0L[bA(0x370)]('prev')+a0L[bA(0x3c9)]('\x20\x20\x20\x20'+a0ai(bA(0x42f)))),console['log'](a0L[bA(0x370)](bA(0x4bb))+a0L[bA(0x3c9)](bA(0x28e)+a0ai(bA(0x295)))),console[bA(0x2c0)](a0L[bA(0x370)](bA(0x287))+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai('htpBack'))),console[bA(0x2c0)](a0L[bA(0x370)](bA(0x303))+a0L[bA(0x3c9)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bA(0x437)))),console[bA(0x2c0)](a0L[bA(0x3c9)](bA(0x31b))),console[bA(0x2c0)](a0L[bA(0x3c9)](bA(0x403))),console['log'](a0L[bA(0x3c9)]('\x20\x20─────────────────────────────────────────')),console[bA(0x2c0)]();const {getConfig:X}=await import('../lib/config.js'),Y=X()['language']||'en';'en'===Y?(console[bA(0x2c0)](a0L[bA(0x3c9)](bA(0x469))),console[bA(0x2c0)](a0L[bA(0x3c9)]('\x20\x20lang\x20es\x20(Español)\x20·\x20lang\x20zh\x20(中文)\x20·\x20lang\x20ko\x20(한국어)\x20·\x20lang\x20ja\x20(日本語)')),console[bA(0x2c0)](a0L[bA(0x3c9)]('\x20\x20lang\x20fr\x20·\x20lang\x20ar\x20·\x20lang\x20pt\x20·\x2015\x20languages\x20supported'))):console['log'](a0L[bA(0x377)](bA(0x30f)+Y)),console[bA(0x2c0)](),console['log'](a0L[bA(0x2de)](bA(0x2d2)));const Z={...L,'startedAt':new Date()['toISOString']()};console[bA(0x2c0)](),N(0x13a*0x2+-0x2329+0x20b5,bA(0x369)),await q(0x6af*-0x1+-0x3*-0x19a+-0xe3*-0x3),N(-0xd*-0x16d+-0x24bd+-0x5e*-0x32,bA(0x29d)),await q(-0x3*0x4+-0x1c37+0x1d0b),N(0x261d+0x1c36+0x81*-0x83,bA(0x213)),await q(-0x1177*0x1+0x9*-0x241+-0xe*-0x2bd),N(-0x803+0x60+-0x5*-0x19b,bA(0x3d9)),console[bA(0x2c0)](),console['log'](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af(bA(0x3f2),String(H)),a0af(bA(0x21c),'No\x20time\x20limit'),U(K[0x929*0x1+-0xf3e*-0x1+0x1867*-0x1]);}),B['command'](bb(0x21a))[bb(0x37d)](bb(0x3c5))[bb(0x2ef)](async()=>{const bF=bb;a0a8(bF(0x33d)),E('post-report-retry');const {getLocalizedDemoSession:F}=await import(bF(0x1f3)),G=a0a6();if(!G||-0x1902+0x563*0x2+-0x4*-0x38f===G[bF(0x38c)])return console[bF(0x2c0)](),console[bF(0x2c0)](a0L[bF(0x370)](bF(0x1e3))+a0L['bold']['cyan'](bF(0x3ba))+a0L[bF(0x370)](bF(0x483))),void console['log']();const H=a0Y();if(H){if('demo-free'!==H[bF(0x460)][bF(0x1f7)])return a0ab('Exam\x20\x22'+H[bF(0x460)][bF(0x495)]+bF(0x4b9)),void a0ac(bF(0x2d3));a0a0();}const J=V=>{const bG=bF;if(!V[bG(0x351)])return V;const W=V[bG(0x1fb)][V[bG(0x351)]],X=['A','B','C','D'][bG(0x461)](a2=>V[bG(0x1fb)][a2]);for(let a2=X[bG(0x38c)]-(0x1d*0x132+0x35b*-0x7+-0x2*0x596);a2>-0x1525*0x1+0x1*-0x1c4e+0x3173;a2--){const a3=Math['floor'](Math['random']()*(a2+(0x2c3*0xb+-0x124d+0xc13*-0x1)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[0x9a9*-0x1+-0x20e9+0x2a92*0x1],Y['B']=X[-0xa4*0x2e+-0x3d*-0x43+0xd*0x10a],Y['C']=X[-0x1088+-0x364+0x13ee*0x1],Y['D']=X[0x170d+0x2*0x1106+-0x3916*0x1];const Z=Y,a0=['A','B','C','D'][bG(0x333)](a4=>Z[a4]===W),a1={...V};return a1[bG(0x1fb)]=Z,a1['answer']=a0,a1;},K=G[bF(0x461)]((V,W)=>({...J(V),'number':W+(-0x180+0x8*-0xa9+0x9*0xc1)})),L=F(),Q={...L,'examName':L['examName']+bF(0x382),'questionCount':K[bF(0x38c)],'startedAt':new Date()[bF(0x211)]()};console[bF(0x2c0)](),a0ae(bF(0x3c0)),console['log'](),console[bF(0x2c0)](a0L[bF(0x2de)](bF(0x35a)+K['length']+bF(0x261)+(-0x55*-0x6d+0xe64+-0x3294===K[bF(0x38c)]?'':'s')+bF(0x41a))),console['log'](a0L[bF(0x3c9)]('\x20\x20Options\x20have\x20been\x20reshuffled.')),console[bF(0x2c0)](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af('Questions',String(K[bF(0x38c)])),a0af('Duration',bF(0x473)),U(K[0x1583*-0x1+0x5f7*0x2+0xdf*0xb]);}),B['command'](bb(0x356))[bb(0x37d)](bb(0x343))[bb(0x2ef)](async()=>{const bH=bb;if(a0a8(bH(0x3cb)),-0x1018+0x662+0x9b6===a0a3()[bH(0x394)])return console[bH(0x2c0)](),a0ab(bH(0x2dc)),console['log'](a0L['gray'](bH(0x4ad))+a0L['bold']['cyan']('exam\x20demo')),void console[bH(0x2c0)]();const K=a0ak();if(K){const a4=K[bH(0x275)][bH(0x38c)],a5=a4+K['failedPackages'][bH(0x38c)];if(a4>=0x6b9*0x2+0x17a3+-0x769*0x5||(a5>-0xe20+-0x491*-0x7+-0x11d7?a4/a5:-0x8*0x30b+-0x1d7f+0x35d7)>=0x2295+-0x37e+-0x1f17*0x1+0.7)return console[bH(0x2c0)](),console[bH(0x2c0)](a0L['green'](bH(0x39c))+a0L[bH(0x377)](bH(0x3b8))),console[bH(0x2c0)](a0L[bH(0x3c9)]('\x20\x20\x20\x20Completed:\x20'+K['completedAt'][bH(0x1fc)]('T')[0x2da+-0xdf*-0x1c+-0x1b3e])),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x3e6)+K[bH(0x2e0)])),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x2cd)+a4+bH(0x228))),K[bH(0x219)][bH(0x38c)]>0x60d+-0x1b02*0x1+0x14f5&&console[bH(0x2c0)](a0L[bH(0x370)]('\x20\x20\x20\x20Failed:\x20'+K[bH(0x219)][bH(0x2fa)](',\x20'))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x312))+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x224))),console['log'](a0L[bH(0x3c9)](bH(0x4c3))+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x49b))+a0L[bH(0x3c9)]('\x20to\x20return\x20to\x20the\x20main\x20menu.')),void console[bH(0x2c0)]();console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x370)]('\x20\x20Previous\x20setup\x20had\x20only\x20'+a4+'/'+a5+bH(0x2b5))),console['log']();}console[bH(0x2c0)](),a0ae('Exam\x20Environment\x20Setup'),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)]('\x20\x20Installing\x20Python\x20packages\x20for\x20practical\x20questions.')),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x2bf))),console[bH(0x2c0)]();const L=(a6,a7)=>{const bI=bH,a8=process[bI(0x43d)];console[bI(0x2c0)](),a0aa(bI(0x440)===a6?bI(0x272):bI(0x3ee)+a7+bI(0x2a4)),console['log'](),console['log'](a0L[bI(0x3cf)]['white'](bI(0x3f6))),console['log'](),'darwin'===a8?(console[bI(0x2c0)](a0L[bI(0x370)]('\x20\x20macOS\x20(Homebrew,\x20recommended):')),console['log'](a0L[bI(0x377)](bI(0x2b4))),console[bI(0x2c0)](),console[bI(0x2c0)](a0L[bI(0x3c9)]('\x20\x20Or\x20download\x20installer:')),console['log'](a0L[bI(0x3c9)]('\x20\x20\x20\x20https://www.python.org/downloads/macos/'))):bI(0x3e5)===a8?(console['log'](a0L[bI(0x370)](bI(0x253))),console[bI(0x2c0)](a0L[bI(0x377)](bI(0x42e))),console[bI(0x2c0)](a0L[bI(0x377)](bI(0x4c1))),console[bI(0x2c0)](a0L[bI(0x377)]('\x20\x20\x20\x20sudo\x20apt\x20install\x20-y\x20python3.12\x20python3.12-venv\x20python3.12-distutils')),console['log'](a0L[bI(0x3c9)](bI(0x3e1))),console[bI(0x2c0)](),console['log'](a0L[bI(0x370)](bI(0x3f5))),console[bI(0x2c0)](a0L[bI(0x377)](bI(0x4a2))),console[bI(0x2c0)](),console[bI(0x2c0)](a0L[bI(0x370)](bI(0x25e))),console['log'](a0L[bI(0x377)](bI(0x433)))):bI(0x2b9)===a8?(console[bI(0x2c0)](a0L[bI(0x370)](bI(0x32f))),console['log'](a0L[bI(0x377)]('\x20\x20\x20\x20winget\x20install\x20Python.Python.3.12')),console[bI(0x2c0)](),console[bI(0x2c0)](a0L[bI(0x3c9)](bI(0x214))),console[bI(0x2c0)](a0L[bI(0x3c9)]('\x20\x20\x20\x20https://www.python.org/downloads/windows/'))):console[bI(0x2c0)](a0L[bI(0x3c9)](bI(0x42b))),console[bI(0x2c0)](),console[bI(0x2c0)](a0L['white']('\x20\x20After\x20installing,\x20run:\x20')+a0L[bI(0x3cf)][bI(0x2c6)](bI(0x3cb))),console['log']();},Q='python3';let V='';try{const a6={};a6[bH(0x365)]='utf-8',a6[bH(0x428)]=0x1388,V=a0an(Q+bH(0x23e),a6)[bH(0x378)]()[bH(0x226)](bH(0x3ee),'');const a7=V[bH(0x1fc)]('.')['map'](Number);if(a7[0x2*-0x1373+-0x1*-0x4a5+0x6f*0x4f]<-0x1*0x2e1+-0x426+0x70a||-0x148e+-0x6*0x3a5+0x2a6f===a7[-0x1996+0x15b6+-0x1*-0x3e0]&&a7[0x1*-0x18b3+0x18dc*0x1+-0x28]<0x34b+-0xd01*-0x2+-0x1d43)return void L(bH(0x3a7),V);-0x1df+-0xfe6+-0x11c8*-0x1===a7[0x7d0+0x1*0x206d+-0x283d*0x1]&&a7[0x11af+-0x10fe+-0xb0*0x1]<0x23a6+0x62b+-0x29c5?console[bH(0x2c0)](a0L[bH(0x377)](bH(0x31a)+V)+a0L[bH(0x3c9)](bH(0x349))):console[bH(0x2c0)](a0L[bH(0x377)](bH(0x31a)+V));}catch{return void L('missing');}try{const a8={};a8['stdio']='ignore',a8[bH(0x428)]=0x1388,(a0an(Q+'\x20-m\x20pip\x20--version',a8),console[bH(0x2c0)](a0L[bH(0x377)](bH(0x1ea))));}catch{console[bH(0x2c0)](a0L[bH(0x370)](bH(0x28d)));try{const a9={};a9[bH(0x27a)]='ignore',a9['timeout']=0x7530,(a0an(Q+'\x20-m\x20ensurepip\x20--upgrade',a9),console[bH(0x2c0)](a0L[bH(0x377)](bH(0x27f))));}catch{a0aa(bH(0x1e9)),console[bH(0x2c0)]();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import(bH(0x292)),{execFileSync:ac}=await import(bH(0x452)),ad=aa(),ae=ab(),af=bH(0x3e5)===process[bH(0x43d)]&&!ad,ag=bH(0x420)===process['platform'];let ah='your\x20Linux\x20distro';if(af||ad)try{const {readFileSync:ak}=await import(bH(0x431)),al=ak(bH(0x4a0),bH(0x321)),am=(al['match'](/^ID="?([^"\n]+)/m)||[])[-0x1d62+0x382+-0x19*-0x109]||'',an=(al[bH(0x2f4)](/^VERSION_ID="?([^"\n]+)/m)||[])[0x35c*-0x2+-0x1*0xb09+-0x2*-0x8e1]||'';bH(0x3af)===am?ah=bH(0x3c4)+an+(ad?bH(0x3ec):''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?bH(0x3ec):''));}catch{}let ai=!(-0x1be6*-0x1+0xa03*-0x1+-0x2fb*0x6);if(ag)try{const ao={};ao['stdio']='ignore',ao[bH(0x428)]=0x7d0,(ac(bH(0x3c7),[bH(0x2e6)],ao),ai=!(0x490+-0x8a0+0x410));}catch{ai=!(-0x4*0x3d2+0x1497+-0x2a7*0x2);}const aj=ae?bH(0x274):'⚠\x20\x20EXIT\x20icoa\x20first\x20—\x20sudo\x20cannot\x20run\x20inside\x20the\x20prompt';return console[bH(0x2c0)](a0L[bH(0x3cf)]['yellow'](bH(0x463))),console['log'](a0L[bH(0x3cf)][bH(0x370)]('\x20\x20'+aj)),console[bH(0x2c0)](a0L['bold'][bH(0x370)](bH(0x463))),console[bH(0x2c0)](),af||ad?(console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x3b7))+a0L['cyan'](ah)),console[bH(0x2c0)](a0L['gray'](bH(0x338))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L['bold'][bH(0x2de)]('\x20\x20Step-by-step:')),console[bH(0x2c0)](),console['log'](a0L[bH(0x2de)]('\x20\x20\x20\x201.\x20Type\x20')+a0L['bold'][bH(0x2c6)]('quit')+a0L[bH(0x2de)](bH(0x208))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)]('\x20\x20\x20\x202.\x20In\x20your\x20shell,\x20run:')),console['log'](),console[bH(0x2c0)](bH(0x242)+a0L['bold']['cyan']('sudo\x20apt\x20update')),console[bH(0x2c0)](bH(0x242)+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x2ca))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x4a7))),console[bH(0x2c0)](),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L['bold'][bH(0x2c6)](bH(0x2b7))),console[bH(0x2c0)](bH(0x242)+a0L[bH(0x3c9)](bH(0x36b))+'\x20'+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x3cb)))):ag?(console[bH(0x2c0)](a0L['white'](bH(0x3b7))+a0L[bH(0x2c6)](bH(0x32e))),console[bH(0x2c0)](),console['log'](a0L[bH(0x3cf)][bH(0x2de)](bH(0x4c2))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x2ea))+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x360))+a0L[bH(0x2de)](bH(0x4b4))),console[bH(0x2c0)](),ai?(console['log'](a0L[bH(0x2de)](bH(0x218))),console[bH(0x2c0)](),console[bH(0x2c0)](bH(0x242)+a0L['bold']['cyan'](bH(0x411))),console['log'](bH(0x242)+a0L[bH(0x3cf)][bH(0x2c6)]('brew\x20link\x20--overwrite\x20python@3.12'))):(console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x244))+a0L[bH(0x3cf)]['yellow'](bH(0x2e6))+a0L[bH(0x2de)]('):')),console[bH(0x2c0)](),console[bH(0x2c0)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x3cf)]['cyan']('/bin/bash\x20-c\x20\x22$(curl\x20-fsSL\x20https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\x22')),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x27b))),console[bH(0x2c0)](),console[bH(0x2c0)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x3cf)]['cyan']('brew\x20install\x20python@3.12'))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)]('\x20\x20\x20\x203.\x20Restart\x20icoa\x20and\x20retry:')),console[bH(0x2c0)](),console[bH(0x2c0)](bH(0x242)+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x2b7))),console['log'](bH(0x242)+a0L[bH(0x3c9)]('icoa>')+'\x20'+a0L['bold'][bH(0x2c6)](bH(0x3cb)))):ae?(console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x3b7))+a0L[bH(0x2c6)]('Windows\x20native\x20(PowerShell\x20/\x20cmd)')),console['log'](),console['log'](a0L[bH(0x3cf)]['yellow']('\x20\x20ICOA\x20officially\x20supports\x20WSL2\x20on\x20Windows.')),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x2df))),console[bH(0x2c0)](a0L['gray'](bH(0x39e))),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x1d0))),console[bH(0x2c0)](),console['log'](a0L['bold'][bH(0x2de)]('\x20\x20Recommended\x20path\x20—\x20switch\x20to\x20WSL2\x20(one-time,\x20~5\x20min):')),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x2ea))+a0L[bH(0x3cf)]['cyan']('quit')+a0L['white'](bH(0x4b4))),console['log'](a0L[bH(0x2de)](bH(0x269))),console['log'](),console[bH(0x2c0)]('\x20\x20\x20\x20\x20\x20\x20'+a0L['bold'][bH(0x2c6)](bH(0x24c))),console['log'](),console[bH(0x2c0)](a0L[bH(0x3c9)]('\x20\x20\x20\x20\x20\x20\x20(Reboot\x20if\x20Windows\x20asks,\x20then\x20open\x20the\x20Ubuntu\x20terminal.)')),console[bH(0x2c0)](a0L[bH(0x2de)]('\x20\x20\x20\x203.\x20Inside\x20Ubuntu,\x20install\x20Node.js\x2022\x20+\x20Python\x20tools\x20+\x20icoa:')),console['log'](),console['log'](bH(0x242)+a0L['bold'][bH(0x2c6)](bH(0x30a))),console[bH(0x2c0)](bH(0x242)+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x387))),console[bH(0x2c0)](bH(0x242)+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x337))),console[bH(0x2c0)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x3cf)][bH(0x2c6)]('icoa')),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x4b6))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x2ea))+a0L[bH(0x3cf)][bH(0x2c6)]('quit')+a0L[bH(0x2de)](bH(0x4b4))),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x41c))),console[bH(0x2c0)](),console[bH(0x2c0)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x3cf)]['cyan'](bH(0x276))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x45e))),console['log'](a0L[bH(0x3c9)]('\x20\x20\x20\x20\x20\x20\x20\x20PATH\x22\x20+\x20\x22Install\x20pip\x22\x20during\x20the\x20installer.)')),console['log'](a0L[bH(0x2de)](bH(0x2be))),console[bH(0x2c0)](),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x2b7))),console['log'](bH(0x242)+a0L[bH(0x3c9)](bH(0x36b))+'\x20'+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x3cb)))):(console['log'](a0L[bH(0x2de)](bH(0x2a7))+a0L[bH(0x2c6)](process['platform'])+a0L[bH(0x2de)](')')),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x3c8))),console['log'](bH(0x242)+a0L['bold'][bH(0x2c6)](bH(0x2b7))),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L['gray'](bH(0x36b))+'\x20'+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x3cb)))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x282))),void console[bH(0x2c0)]();}}const W={};W[bH(0x41d)]=bH(0x417),W[bH(0x3dc)]=bH(0x3ac),W[bH(0x38f)]='z3',W['pillow']='PIL',W[bH(0x29e)]=bH(0x4c9),W[bH(0x435)]=bH(0x425);const X=['pwntools',bH(0x499),'requests',bH(0x41d),bH(0x42a),'pillow','scapy',bH(0x329),bH(0x38f),bH(0x3dc),bH(0x435),bH(0x4cc),'regex'],Y=W;console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x283)+X[bH(0x38c)]+'\x20packages...')),console[bH(0x2c0)]();let Z='';try{const ap={};ap[bH(0x365)]=bH(0x321),ap['timeout']=0x2710,a0an(Q+bH(0x386),ap);}catch(aq){const ar=String(aq?.[bH(0x30b)]||aq?.[bH(0x4c7)]||aq?.[bH(0x3d3)]||'');/externally-managed-environment|break-system-packages/i[bH(0x2b3)](ar)&&(Z=bH(0x202),console[bH(0x2c0)](a0L[bH(0x370)](bH(0x306))),console[bH(0x2c0)]());}const a0=V[bH(0x1fc)]('.')[bH(0x461)](Number);0x28*0xf7+-0x45f*-0x1+0x2*-0x157a===a0[0x5*-0x727+0x1a51+-0x972*-0x1]&&a0[0x10d0+0xd*0x1+-0x10dc]>=-0x1036+0x1746+-0x5*0x167&&(console[bH(0x2c0)](a0L[bH(0x370)](bH(0x416)+V+bH(0x2c8))),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x444))),console['log'](a0L[bH(0x3c9)]('\x20\x20\x20\x20Python\x203.12\x20is\x20recommended.\x20Install:')),'linux'===process[bH(0x43d)]&&(console['log'](a0L['green'](bH(0x299))),console['log'](a0L[bH(0x377)](bH(0x492)))),console[bH(0x2c0)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+bH(0x20d)+as+'\x22\x20'+Z+bH(0x449),{'encoding':bH(0x321),'timeout':0x2bf20,'stdio':'pipe'}),a0an(Q+bH(0x2ba)+(Y[as]||as)+'\x22',{'stdio':bH(0x379),'timeout':0x2710});let at='';try{const au=a0an(Q+bH(0x381)+as+bH(0x34d),{'encoding':bH(0x321),'timeout':0x1388})['match'](/^Version:\s*(.+)$/m);au&&(at=au[-0x16eb*-0x1+0x2da+-0x19c4][bH(0x378)]());}catch{}console[bH(0x2c0)](a0L['green'](bH(0x39c)+as)+(at?a0L[bH(0x3c9)]('\x20('+at+')'):'')),a1['push'](at?as+'=='+at:as);}catch(av){const aw=String(av?.[bH(0x30b)]||av?.[bH(0x4c7)]||av?.[bH(0x3d3)]||'')['slice'](-(0xf*0x16+0x1d*0x6b+-0xbd9)),ax=aw[bH(0x1fc)]('\x0a')[bH(0x1ff)](ay=>ay[bH(0x378)]())[bH(0x24f)](-(-0x1f7f+0x771+-0x28*-0x9a))['join']('\x20|\x20')[bH(0x24f)](-0x1ab0+0x1*0x3ef+-0x19*-0xe9,-0x1*0xb93+-0x1*0x442+-0x56f*-0x3);console[bH(0x2c0)](a0L[bH(0x4b1)](bH(0x1fe)+as)+a0L['gray']('\x20\x20'+ax)),a2[bH(0x24b)]({'pkg':as,'error':ax}),a3||(a3=aw);}-0xa15*-0x1+-0x9*0x2ed+0xa*0x1a0===a1[bH(0x38c)]&&a3&&(console[bH(0x2c0)](),console['log'](a0L[bH(0x370)](bH(0x249))),console[bH(0x2c0)](a0L[bH(0x3c9)]('\x20\x20'+a3[bH(0x1fc)]('\x0a')[bH(0x24f)](-(0x225*0x11+-0xc7a*0x2+0x1*-0xb7b))['join'](bH(0x344))))),a0al({'completedAt':new Date()['toISOString'](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2[bH(0x461)](ay=>ay[bH(0x4c0)])}),console[bH(0x2c0)](),0x427*-0x5+-0x2*0xaa+0x1617===a2[bH(0x38c)]?a0a9(bH(0x27e)+X[bH(0x38c)]+bH(0x248)):-0x1df8+-0x316*0x7+0x3392===a1['length']?(a0aa(bH(0x451)+X['length']+bH(0x248)),console['log'](),console['log'](a0L[bH(0x370)](bH(0x2ac))),0x271*0xe+-0x169*-0xb+-0x31ae*0x1===a0[-0xca9+-0x1*-0x23b3+-0x170a]&&a0[-0x8*-0xb2+-0x115*-0x1f+0x138d*-0x2]>=-0xf10+-0xa9c+0x19b9*0x1?(console[bH(0x2c0)](a0L['gray'](bH(0x222))),console[bH(0x2c0)](a0L['gray'](bH(0x448)))):(console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x341))),console['log'](a0L[bH(0x3c9)](bH(0x40b))+a0L[bH(0x2c6)](Q+bH(0x250))+a0L[bH(0x3c9)](bH(0x3eb))),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x300)))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2de)]('\x20\x20Rerun\x20when\x20fixed:\x20')+a0L[bH(0x3cf)]['cyan'](bH(0x3cb)))):a0ab(a1[bH(0x38c)]+'/'+X[bH(0x38c)]+bH(0x41b)+a2[bH(0x38c)]+bH(0x455)+a2['map'](ay=>ay['pkg'])[bH(0x2fa)](',\x20')),console[bH(0x2c0)](),console[bH(0x2c0)](a0L[bH(0x2c6)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bH(0x2c0)](a0L[bH(0x3cf)][bH(0x2de)](bH(0x278))),console['log'](a0L['cyan'](bH(0x371))),console[bH(0x2c0)](),console['log'](a0L[bH(0x3cf)][bH(0x370)](bH(0x441))+a0L[bH(0x3c9)]('\x20(quick\x20tasks)')),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x1f8))),console[bH(0x2c0)](a0L[bH(0x377)](bH(0x33f))),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x237))),console['log'](),console['log'](a0L[bH(0x3cf)]['yellow'](bH(0x4bf))+a0L[bH(0x3c9)](bH(0x3bd))),console[bH(0x2c0)](a0L['white'](bH(0x2f6))),console[bH(0x2c0)](a0L[bH(0x377)]('\x20\x20\x20\x20!python3')),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x31d))),console['log'](a0L[bH(0x3c9)](bH(0x2a2))),console['log'](a0L[bH(0x3c9)](bH(0x1f1))),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x28a))),console[bH(0x2c0)](a0L['gray'](bH(0x2ed))),console[bH(0x2c0)](),console['log'](a0L[bH(0x3cf)][bH(0x370)](bH(0x319))+a0L['gray'](bH(0x390))),console['log'](a0L['white']('\x20\x20Write\x20a\x20.py\x20file,\x20then\x20run\x20it:')),console[bH(0x2c0)](a0L[bH(0x377)]('\x20\x20\x20\x20!cat\x20<<\x20\x27EOF\x27\x20>\x20solve.py')),console['log'](a0L['gray'](bH(0x3c2))),console[bH(0x2c0)](a0L[bH(0x3c9)](bH(0x48f))),console[bH(0x2c0)](a0L['gray'](bH(0x3e0))),console['log'](a0L['gray'](bH(0x427))),console[bH(0x2c0)](a0L['green'](bH(0x32c))),console['log'](a0L[bH(0x377)]('\x20\x20\x20\x20!python3\x20solve.py')),console['log'](),console[bH(0x2c0)](a0L[bH(0x3cf)][bH(0x370)](bH(0x323))),console[bH(0x2c0)](a0L[bH(0x2de)](bH(0x354))+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x32a))+a0L[bH(0x2de)]('\x20to\x20ask\x20AI\x20for\x20help:')),console['log'](a0L[bH(0x3c9)](bH(0x470))),console[bH(0x2c0)](a0L['gray'](bH(0x4bc))),console['log'](a0L['gray']('\x20\x20\x20\x20AI\x20budget:\x2025K\x20tokens\x20for\x20AI4CTF\x20+\x2025K\x20for\x20CTF4AI')),console[bH(0x2c0)](a0L[bH(0x2c6)](bH(0x371))),console[bH(0x2c0)](),console[bH(0x2c0)](a0L['white'](bH(0x312))+a0L['bold']['cyan']('exam\x20<token>')),console['log'](a0L[bH(0x3c9)](bH(0x4c3))+a0L[bH(0x3cf)][bH(0x2c6)](bH(0x49b))+a0L[bH(0x3c9)]('\x20to\x20return\x20to\x20the\x20main\x20menu.')),console[bH(0x2c0)]();}),B[bb(0x2ef)](()=>{const bJ=bb;a0a8(bJ(0x454));const F=a0Y();if(F){a0ae(bJ(0x49c)+F[bJ(0x460)]['examName']),O();const J=Object[bJ(0x446)](F[bJ(0x45d)])[bJ(0x38c)];return a0af(bJ(0x3e9),J+'/'+F[bJ(0x460)][bJ(0x4d3)]+bJ(0x25d)),console['log'](),void console[bJ(0x2c0)](a0L[bJ(0x3c9)]('\x20\x20exam\x20q\x20[n]\x20\x20|\x20exam\x20answer\x20<n>\x20<A-D>\x20|\x20exam\x20review\x20|\x20exam\x20submit'));}const G=a0a3(),H=a0ak();console[bJ(0x2c0)](),a0ae(bJ(0x25f)),console[bJ(0x2c0)](),-0x8f9*-0x4+0x156d+-0x3951*0x1===G[bJ(0x394)]?(console[bJ(0x2c0)](a0L[bJ(0x370)](bJ(0x279))+a0L[bJ(0x370)]('Recommended:\x20complete\x20demo\x20first')),console['log'](a0L['gray'](bJ(0x4ae))+a0L['bold'][bJ(0x2c6)](bJ(0x353)))):(console[bJ(0x2c0)](a0L[bJ(0x377)](bJ(0x315))+a0L[bJ(0x377)](bJ(0x2c2)+G[bJ(0x394)]+'\x20attempt'+(0x1c8a+-0x119*0x19+-0x118!==G['attempts']?'s':'')+')')),H?(console[bJ(0x2c0)](a0L[bJ(0x377)](bJ(0x315))+a0L[bJ(0x377)]('Environment\x20ready')),console['log'](a0L['yellow'](bJ(0x279))+a0L['yellow']('Enter\x20exam\x20token\x20to\x20begin')),console['log'](a0L[bJ(0x3c9)](bJ(0x4ae))+a0L[bJ(0x3cf)]['cyan']('exam\x20<token>'))):(console[bJ(0x2c0)](a0L[bJ(0x370)](bJ(0x279))+a0L[bJ(0x370)](bJ(0x44b))),console[bJ(0x2c0)](a0L['gray'](bJ(0x4ae))+a0L[bJ(0x3cf)][bJ(0x2c6)](bJ(0x3cb))))),console[bJ(0x2c0)]();});}
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 p}from"./lib/access.js";import{setReplMode as d}from"./lib/ui.js";import{isChatActive as u,handleChatMessage as h}from"./commands/ai4ctf.js";import{isCtf4aiActive as w,handleCtf4aiMessage as f}from"./commands/ctf4ai-demo.js";import{getExamState as b,getRealExamState as x,getDemoState as v}from"./lib/exam-state.js";import{getDemoStats as C}from"./lib/demo-stats.js";import{isExamSetupComplete as k}from"./lib/exam-setup.js";import{DEMO_PICK_SIZE as I,DEMO_POOL_SIZE as A}from"./lib/demo-exam.js";import{isNativeWindowsCmd as T}from"./lib/platform.js";import{resetTerminalTheme as $}from"./lib/theme.js";import{ensureSandbox as S,runInSandbox as O,isDockerAvailable as q}from"./lib/sandbox.js";import{logCommand as L}from"./lib/logger.js";import{startLogSync as j,stopLogSync as E}from"./lib/log-sync.js";import{existsSync as P,mkdirSync as R,writeFileSync as N}from"node:fs";import{join as D}from"node:path";import{homedir as F}from"node:os";function M(){return x()?chalk.cyan("exam> "):v()?chalk.yellow("demo> "):chalk.green("icoa> ")}const U=D(F(),"icoa-workspace");function z(){return P(U)||R(U,{recursive:!0}),U}const B=new Set(["sudo","su","doas","pkexec","brew","apt","apt-get","yum","choco","npm","npx","pip","pip3","shutdown","reboot","halt","mkfs","fdisk","dd","iptables","ufw"]),W="__REPL_NO_EXIT__",Q="2.5.1";function Y(){const o=C(),e=k(),l=`Free practice — ${I} questions (from pool of ${A})`,n=T();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 · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()}export async function startRepl(e,x){const v=n(),C=l(),k=process.exit.bind(process),I=a();if(v.demoCleanedForVersion!==Q){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:Q})}const{select:A,confirm:T}=await import("@inquirer/prompts"),V=v.mode||"",G=[{name:` ${chalk.bold("National Selection")} ${chalk.gray("—")} ${chalk.gray("demo, exam (lightweight)")}`,value:"selection"},{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 J="";for(;!J;){const o=await A({message:"Mode",choices:G,default:V||"selection"});"about"!==o?J=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(),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"===J&&"olympiad"!==V&&(console.log(),console.log(chalk.yellow(" This mode will download ~500MB of CTF tools and AI models.")),await T({message:"Continue?",default:!0})||(J="selection",console.log(chalk.gray(" Switched to National Selection mode.")))),J!==V&&s({mode:J}),console.log(),"olympiad"===J&&m(Q)){p(Q),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(x){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"===J?Y():"organizer"===J?(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(),C?(console.log(chalk.green(` Logged in as ${v.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()):I&&!c()?(console.log(chalk.red(" Token was activated on a different device.")),console.log(chalk.gray(" Contact organizer for assistance.")),console.log()):C?(console.log(chalk.green.bold(` Welcome back, ${v.userName}!`)),console.log(chalk.gray(` Connected to ${v.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(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()):I?(z(),console.log(chalk.green.bold(" Welcome, competitor!")),console.log(chalk.gray(` Workspace: ${U}`)),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 · ")+chalk.cyan("exit")+chalk.gray(" → menu · ")+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 · ")+chalk.cyan("exit")+chalk.gray(" → menu · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()),e.exitOverride(),e.configureOutput({writeErr:()=>{},writeOut:o=>{console.log(o)}});const K=o({input:process.stdin,output:process.stdout,prompt:M(),terminal:!0});let Z=!1;d(!0),j();const H=K.prompt.bind(K);K.prompt=o=>{u()||w()||K.setPrompt(M()),H(o)},K.prompt(),K.on("line",async o=>{if(Z)return;const l=o.trim();if(!l)return K.setPrompt(u()?chalk.magenta("ai4ctf> "):M()),void K.prompt();if(u()){Z=!0;const o=await h(l);return Z=!1,"exit"===o&&K.setPrompt(M()),void K.prompt()}if(w()){Z=!0;const o=await f(l);return Z=!1,"exit"!==o&&"solved"!==o||K.setPrompt(M()),void K.prompt()}if(L(l),"exit"===l)return b()?(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 K.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"===J&&Y(),void K.prompt());if("quit"===l||"q"===l||"quit confirm"===l){const o=b();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 K.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)."))),E(),g(),console.log(chalk.gray(" Session saved. Use ")+chalk.white("icoa --resume")+chalk.gray(" to continue.")),$(),void k(0))}if("back"===l||"menu"===l){const o=b(),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"===J?Y():console.log(chalk.gray(" Already at main menu."))}return void K.prompt()}if("help"===l||"?"===l){if(b()){Z=!0;try{await e.parseAsync(["node","icoa","exam","help"])}catch{}return Z=!1,void K.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(),J),void K.prompt()}if("more help"===l.toLowerCase()&&b()){Z=!0;try{await e.parseAsync(["node","icoa","exam","more-help"])}catch{}return Z=!1,void K.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 K.prompt();if(/^ICOA-[A-Z]{2,3}-\d{1,6}$/i.test(l.trim())){Z=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim()])}catch{}return Z=!1,void K.prompt()}if(/^[A-Z]{2}[0-9A-HJKMNP-TV-Z]{8}$/i.test(l.trim())){Z=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim().toUpperCase()])}catch{}return Z=!1,void K.prompt()}const s=l.match(/^exam\s+([A-Z]{2}[0-9A-HJKMNP-TV-Z]{8})$/i);if(s){Z=!0;try{await e.parseAsync(["node","icoa","exam","token",s[1].toUpperCase()])}catch{}return Z=!1,void K.prompt()}const y=l.match(/^exam\s+([A-Z]{2,3})$/i);if(y){Z=!0;try{await e.parseAsync(["node","icoa","exam","list",y[1]])}catch{}return Z=!1,void K.prompt()}if("clear"===l||"cls"===l)return console.clear(),void K.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 K.prompt()}if("activate"===l)return console.log(chalk.gray(" Usage: ")+chalk.white("activate <token>")),console.log(),void K.prompt();const m=b();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 K.prompt();Z=!0;try{await e.parseAsync(["node","icoa","exam","answer",String(l),o])}catch{}return Z=!1,void K.prompt()}const s=o.match(/^(\d+)\s+([ABCD])$/);if(s){const o=parseInt(s[1],10);if(t(o))return n(o),void K.prompt();Z=!0;try{await e.parseAsync(["node","icoa","exam","answer",s[1],s[2]])}catch{}return Z=!1,void K.prompt()}}const p=l.split(/\s+/)[0].toLowerCase(),d=/^python3?(\.\d+)?$/.test(p),x=l.startsWith("!")||p.startsWith("!")||d;if("selection"===J&&!x&&!["exam","demo","retry","nations","next","prev","continue","setup","lang","ref","ai4ctf","ctf4ai","mark","unmark","review","submit","env"].includes(p)){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 K.prompt()}if("organizer"===J&&!["join","exam","demo","retry","next","prev","logout","setup","lang","ref","ctf","mark","unmark","review","submit"].includes(p))return console.log(chalk.gray(" Not available in Organizer mode. Switch via: setup")),console.log(),void K.prompt();if(!("olympiad"!==J||a()&&c()||i(p)))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 K.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"].includes(p)){if(B.has(p))return console.log(chalk.red(` Blocked: ${p} is not allowed during competition.`)),console.log(),void K.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: ${U}`)),console.log(),void K.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=z();/^(\S*python3?(\.\d+)?)\s*$/.test(o)&&(o=`PYTHONSTARTUP="${function(){const o=D(F(),".icoa");P(o)||R(o,{recursive:!0});const e=D(o,"python-startup.py");return P(e)||N(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()),Z=!0;try{q()&&await S()?await O(o,K):await _(o,K,e)}catch{console.log(chalk.yellow(` Command failed: ${p}`))}return Z=!1,console.log(),void K.prompt()}Z=!0;const v=m&&"submit"===l.toLowerCase()?["exam","submit"]: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),C="ctf"===v[0]&&"join"===v[1];C&&K.pause(),process.exit=()=>{throw new Error(W)};try{await e.parseAsync(["node","icoa",...v])}catch(o){const e=o instanceof Error?o.message:String(o);if(e===W);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=p.split(/\s+/)[0]||p;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: ${p}.`)),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=k,Z=!1,C&&K.resume()}u()?K.setPrompt(chalk.magenta("ai4ctf> ")):w()&&K.setPrompt(chalk.red("ctf4ai> ")),console.log(),K.prompt()}),K.on("SIGINT",()=>{if(console.log(),u()||w())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(b()){const o="demo-free"!==b().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(),K.prompt()}),K.on("close",()=>{E(),g(),$(),k(0)})}function _(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 p}from"./lib/access.js";import{setReplMode as d}from"./lib/ui.js";import{isChatActive as u,handleChatMessage as h}from"./commands/ai4ctf.js";import{isCtf4aiActive as w,handleCtf4aiMessage as f}from"./commands/ctf4ai-demo.js";import{getExamState as b,getRealExamState as x,getDemoState as v}from"./lib/exam-state.js";import{getDemoStats as C}from"./lib/demo-stats.js";import{isExamSetupComplete as I}from"./lib/exam-setup.js";import{DEMO_PICK_SIZE as k,DEMO_POOL_SIZE as A}from"./lib/demo-exam.js";import{isNativeWindowsCmd as T}from"./lib/platform.js";import{resetTerminalTheme as $}from"./lib/theme.js";import{ensureSandbox as S,runInSandbox as O,isDockerAvailable as q}from"./lib/sandbox.js";import{logCommand as L}from"./lib/logger.js";import{startLogSync as j,stopLogSync as E}from"./lib/log-sync.js";import{existsSync as P,mkdirSync as R,writeFileSync as N}from"node:fs";import{join as D}from"node:path";import{homedir as F}from"node:os";function M(){return x()?chalk.cyan("exam> "):v()?chalk.yellow("demo> "):chalk.green("icoa> ")}const U=D(F(),"icoa-workspace");function z(){return P(U)||R(U,{recursive:!0}),U}const B=new Set(["sudo","su","doas","pkexec","brew","apt","apt-get","yum","choco","npm","npx","pip","pip3","shutdown","reboot","halt","mkfs","fdisk","dd","iptables","ufw"]),W="__REPL_NO_EXIT__",Q="2.5.1";function _(){const o=C(),e=I(),l=`Free practice — ${k} questions (from pool of ${A})`,n=T();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 · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()}export async function startRepl(e,x){const v=n(),C=l(),I=process.exit.bind(process),k=a();if(v.demoCleanedForVersion!==Q){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:Q})}const{select:A,confirm:T}=await import("@inquirer/prompts"),V=v.mode||"",G=[{name:` ${chalk.bold("National Selection")} ${chalk.gray("—")} ${chalk.gray("demo, exam (lightweight)")}`,value:"selection"},{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 J="";for(;!J;){const o=await A({message:"Mode",choices:G,default:V||"selection"});"about"!==o?J=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(),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"===J&&"olympiad"!==V&&(console.log(),console.log(chalk.yellow(" This mode will download ~500MB of CTF tools and AI models.")),await T({message:"Continue?",default:!0})||(J="selection",console.log(chalk.gray(" Switched to National Selection mode.")))),J!==V&&s({mode:J}),console.log(),"olympiad"===J&&m(Q)){p(Q),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(x){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"===J?_():"organizer"===J?(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(),C?(console.log(chalk.green(` Logged in as ${v.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()):k&&!c()?(console.log(chalk.red(" Token was activated on a different device.")),console.log(chalk.gray(" Contact organizer for assistance.")),console.log()):C?(console.log(chalk.green.bold(` Welcome back, ${v.userName}!`)),console.log(chalk.gray(` Connected to ${v.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(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()):k?(z(),console.log(chalk.green.bold(" Welcome, competitor!")),console.log(chalk.gray(` Workspace: ${U}`)),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 · ")+chalk.cyan("exit")+chalk.gray(" → menu · ")+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 · ")+chalk.cyan("exit")+chalk.gray(" → menu · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()),e.exitOverride(),e.configureOutput({writeErr:()=>{},writeOut:o=>{console.log(o)}});const K=o({input:process.stdin,output:process.stdout,prompt:M(),terminal:!0});let Z=!1;d(!0),j();const H=K.prompt.bind(K);K.prompt=o=>{u()||w()||K.setPrompt(M()),H(o)},K.prompt(),K.on("line",async o=>{if(Z)return;const l=o.trim();if(!l)return K.setPrompt(u()?chalk.magenta("ai4ctf> "):M()),void K.prompt();if(u()){Z=!0;const o=await h(l);return Z=!1,"exit"===o&&K.setPrompt(M()),void K.prompt()}if(w()){Z=!0;const o=await f(l);return Z=!1,"exit"!==o&&"solved"!==o||K.setPrompt(M()),void K.prompt()}if(L(l),"exit"===l)return b()?(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 K.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"===J&&_(),void K.prompt());if("quit"===l||"q"===l||"quit confirm"===l){const o=b();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 K.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)."))),E(),g(),console.log(chalk.gray(" Session saved. Use ")+chalk.white("icoa --resume")+chalk.gray(" to continue.")),$(),void I(0))}if("back"===l||"menu"===l){const o=b(),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"===J?_():console.log(chalk.gray(" Already at main menu."))}return void K.prompt()}if("help"===l||"?"===l){if(b()){Z=!0;try{await e.parseAsync(["node","icoa","exam","help"])}catch{}return Z=!1,void K.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(),J),void K.prompt()}if("more help"===l.toLowerCase()&&b()){Z=!0;try{await e.parseAsync(["node","icoa","exam","more-help"])}catch{}return Z=!1,void K.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 K.prompt();if(/^ICOA-[A-Z]{2,3}-\d{1,6}$/i.test(l.trim())){Z=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim()])}catch{}return Z=!1,void K.prompt()}if(/^[A-Z]{2}[0-9A-HJKMNP-TV-Z]{8}$/i.test(l.trim())){Z=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim().toUpperCase()])}catch{}return Z=!1,void K.prompt()}const s=l.match(/^exam\s+([A-Z]{2}[0-9A-HJKMNP-TV-Z]{8})$/i);if(s){Z=!0;try{await e.parseAsync(["node","icoa","exam","token",s[1].toUpperCase()])}catch{}return Z=!1,void K.prompt()}const y=l.match(/^exam\s+([A-Z]{2,3})$/i);if(y){Z=!0;try{await e.parseAsync(["node","icoa","exam","list",y[1]])}catch{}return Z=!1,void K.prompt()}if("clear"===l||"cls"===l)return console.clear(),void K.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 K.prompt()}if("activate"===l)return console.log(chalk.gray(" Usage: ")+chalk.white("activate <token>")),console.log(),void K.prompt();const m=b();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 K.prompt();Z=!0;try{await e.parseAsync(["node","icoa","exam","answer",String(l),o])}catch{}return Z=!1,void K.prompt()}const s=o.match(/^(\d+)\s+([ABCD])$/);if(s){const o=parseInt(s[1],10);if(t(o))return n(o),void K.prompt();Z=!0;try{await e.parseAsync(["node","icoa","exam","answer",s[1],s[2]])}catch{}return Z=!1,void K.prompt()}}const p=l.split(/\s+/)[0].toLowerCase(),d=/^python3?(\.\d+)?$/.test(p),x=l.startsWith("!")||p.startsWith("!")||d;if("selection"===J&&!x&&!["exam","demo","retry","nations","next","prev","continue","setup","lang","ref","ai4ctf","ctf4ai","mark","unmark","review","submit","env"].includes(p)){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 K.prompt()}if("organizer"===J&&!["join","exam","demo","retry","next","prev","logout","setup","lang","ref","ctf","mark","unmark","review","submit"].includes(p))return console.log(chalk.gray(" Not available in Organizer mode. Switch via: setup")),console.log(),void K.prompt();if(!("olympiad"!==J||a()&&c()||i(p)))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 K.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"].includes(p)){if(B.has(p))return console.log(chalk.red(` Blocked: ${p} is not allowed during competition.`)),console.log(),void K.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: ${U}`)),console.log(),void K.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=z();/^(\S*python3?(\.\d+)?)\s*$/.test(o)&&(o=`PYTHONSTARTUP="${function(){const o=D(F(),".icoa");P(o)||R(o,{recursive:!0});const e=D(o,"python-startup.py");return P(e)||N(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()),Z=!0;try{q()&&await S()?await O(o,K):await Y(o,K,e)}catch{console.log(chalk.yellow(` Command failed: ${p}`))}return Z=!1,console.log(),void K.prompt()}Z=!0;const v=l.trim(),C=v.toLowerCase();let k,A=null,T="";if(m)if("submit"===C)A="final";else if(C.startsWith("submit ")){const o=v.slice(7).trim();o&&/^ICOA\{[^}]*\}?$/i.test(o)&&(A="flag",T=o)}k="final"===A?["exam","submit"]:"flag"===A?["exam","answer",String(m?._lastQ||1),T]: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 j="ctf"===k[0]&&"join"===k[1];j&&K.pause(),process.exit=()=>{throw new Error(W)};try{await e.parseAsync(["node","icoa",...k])}catch(o){const e=o instanceof Error?o.message:String(o);if(e===W);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=p.split(/\s+/)[0]||p;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: ${p}.`)),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=I,Z=!1,j&&K.resume()}u()?K.setPrompt(chalk.magenta("ai4ctf> ")):w()&&K.setPrompt(chalk.red("ctf4ai> ")),console.log(),K.prompt()}),K.on("SIGINT",()=>{if(console.log(),u()||w())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(b()){const o="demo-free"!==b().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(),K.prompt()}),K.on("close",()=>{E(),g(),$(),I(0)})}function Y(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.112",
3
+ "version": "2.19.113",
4
4
  "description": "ICOA CLI — The world's first CLI-native CTF competition terminal",
5
5
  "type": "module",
6
6
  "bin": {