icoa-cli 2.19.158 → 2.19.159
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/ai4ctf.js +1 -1
- package/dist/commands/exam.js +1 -1
- package/dist/repl.js +1 -1
- package/package.json +1 -1
package/dist/commands/ai4ctf.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(b,j){const a7=a0j,k=b();while(!![]){try{const q=parseInt(a7(0x159))/(-0x1*0x4dd+-0xf0d*0x1+0x13eb)+-parseInt(a7(0x11c))/(-0xcb3*-0x1+-0xa66+-0x24b*0x1)*(-parseInt(a7(0x10a))/(0x1d*0xa3+0x1*-0x1442+0x1ce))+-parseInt(a7(0x125))/(0xf74*0x1+-0x127c+-0x6*-0x82)*(parseInt(a7(0x15b))/(0x215a+0x5a7+-0x26fc))+-parseInt(a7(0x8e))/(0x1*-0x263d+-0xcd*0x19+0x3a48)+-parseInt(a7(0x147))/(0x1542+-0x2e7*0xb+0xab2)*(parseInt(a7(0x124))/(-0x227a+0x1915+0x96d))+-parseInt(a7(0x153))/(-0x1e24+-0x98+0x1ec5)+-parseInt(a7(0x149))/(-0x2*-0x593+0x1547+-0x2063)*(-parseInt(a7(0x121))/(0x1b13+0x112*-0x1+-0x2*0xcfb));if(q===j)break;else k['push'](k['shift']());}catch(v){k['push'](k['shift']());}}}(a0b,0x101*0x365+-0x31f3*-0xb+-0x506d));import a0q from'chalk';import{createChatSession as a0v}from'../lib/gemini.js';import{addTokenUsage as a0x}from'../lib/budget.js';import{getConfig as a0z}from'../lib/config.js';import{logCommand as a0A}from'../lib/logger.js';import{printMarkdown as a0B,printError as a0C}from'../lib/ui.js';import{t as a0D}from'../lib/i18n.js';import{getExamState as a0E,saveExamState as a0F}from'../lib/exam-state.js';const g=b=>new Promise(j=>setTimeout(j,b));let r=!(0x1b73*0x1+-0x9b8+-0x11ba),y=null,h=-0x7f*-0x5+-0xd56+0xadb,u=!(-0x191*0x9+-0x36*0x3f+-0x2*-0xdb2);const d=0x2*0x27cf+-0x985a+-0x1*-0xaa64;let f=null;function a0j(a,b){a=a-(0x1*0x24ff+0x136e+-0x1*0x37e2);const c=a0b();let d=c[a];if(a0j['wPPhZz']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x1da1+0x1b73*0x1+-0x3914,o,p,q=-0x211a+-0x7f*-0x5+0x1e9f;p=i['charAt'](q++);~p&&(o=n%(-0x6f6+-0x191*0x9+-0x41*-0x53)?o*(-0x1732*-0x1+0x1*-0xb2d+-0xbc5)+p:p,n++%(0x8c*0x19+0x1*-0x92+-0xd16))?l+=String['fromCharCode'](-0x4*0x3c5+0x1c5b+0x83*-0x18&o>>(-(-0x266c+-0x13*0x8+0x2706)*n&0x4f*0x3b+-0x1b*0x13+0x1*-0x102e)):0xbb9+0x226c+-0x2e25){p=j['indexOf'](p);}for(let r=0x1896+0x2017+-0x38ad,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0x2*0x12cd+-0x120b+0x37b5))['slice'](-(-0x1970+-0x205c+-0x842*-0x7));}return decodeURIComponent(m);};a0j['NXlfNv']=e,a0j['HCGHbG']={},a0j['wPPhZz']=!![];}const f=c[0x1f31+0x24e+0x5*-0x6b3],g=a+f,h=a0j['HCGHbG'][g];return!h?(d=a0j['NXlfNv'](d),a0j['HCGHbG'][g]=d):d=h,d;}export function isChatActive(){return r;}function a0b(){const aj=['ywK0y3rMu2fTCgXL','z3jLzw4','ywK0y3rMv3jHCeXPBMuXsgvHza','ue9tva','ywK0y3rMuMvWB3j0','ywK0y3rM','yxr0ywnOzwreyxrH','icaGieP1C3qGDhLWzsbMCMvLBhKGDg8Gy2HHDcb3AxrOihrOzsbbssb0zwfTBwf0zs4','BNvKz2vtAg93BG','icaGicaGicaGicaGifjLDhvYBIb0BYbTywLUig1LBNuGkhDVCMTZigfUExDOzxjLkq','ywK0y3rMrgvJB2rLza','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','CxvLC3rPB24','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','zw5JB2rPBMC','AwnVyxT3m2XJmg1LxZjFywK0y3rMFq','z2vTAw5Ptw9KzwW','CMvK','DgvZDa','icbgBgfNigzVCM1HDdOG','icdIMQaGquK0q1rgihrVA2vUigj1zgDLDcbLEgHHDxn0zwqGkdi1ldaWmcb1C2vKks4','icaGigHPBNqGyq','icbozxH0oIa','Dg9Rzw5mAw1PDa','Cg9PBNrZ','ywK0y3rMuMv2zwfSvgL0Bgu','mZyZmJuYtK55verd','zxHHBsbHBNn3zxiG','jsbVzIbZzwn0Aw9Uiefjigj1zgDLDcb1C2vKiokaLcbVBMX5ih4','icbszxn1Bwu6ia','icdILii','Bg9N','AgfZ','ywK0y3rMsgLUDe51zgDL','ywK0y3rMv3jHCff1B3rHqKHPBNq','icaGie5VihbYzs13CML0DgvUigHPBNqGyxqGDgHPCYb0AwvYigzVCIb0AgLZihf1zxn0Aw9UlG','ywK0y3rMrgvJB2rL','icaI','y2f0y2G','icdcTYaGuMuTzw50zxi6ia','icaGifbYzxzPB3vZoIa','icaGice8C2HLBgWGy21KpIaGica','q29TBwfUzcbMywLSzwq','ywK0y3rMtg9JA2vKvgL0Bgu','C3vIBwL0qxr0zw1WDgvK','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','C3bSAxq','C3rYAw5NAwz5','C2L6zq','ywK0y3rMsgLUDee','icaGigHPBNqGysaVigiGlYbJica','icbbstrdveyGy2HHDcbLBMrLzcbMB3iGuq','z2vTBweTnc0ZmwiTAxq','AgLUDhnvC2vK','igfUC3DLCIb1CgrHDgvKoIa','x2XHC3rr','y3LHBG','icaGicaGicaGicaGica','D2HPDgu','icbbssbIDwrNzxqGzxHOyxvZDgvKigzVCIbbstrdveyGC2vJDgLVBI4','ywK0y3rMuMv2zwfSu2vLrMXHzW','C3vIBwL0ieLdt0f7lI4UFq','AgLUDcbH','icbHAtrJDgyGAxmGyxzHAwXHyMXLig9UifeZmEkaKZm4icHbstrdveyGC2vJDgLVBIKU','sunpqxT5B3vYx2zSywD9','CMvWzwf0','icbr','ywK0y3rMq29YCMvJDezSywC','Dg9mB3DLCKnHC2u','ywK0y3rMvgL0Bgu','ywn0Aw9U','iokaLca','icaGigv4AxqGicaGicaGicaGica','icdINjmGuq','ihDPBgWGB3bLBIbr','ywK0y3rMsgLUDem','q3j5ChrVz3jHCgH5','ywK0y3rMvgHPBMTPBMC','lIbkDw1WihrOzxjLigzPCNn0oG','BM93','ywK0y3rMq2HHBgXLBMDL','ChvZAa','Dg9vChbLCKnHC2u','quKGzxjYB3i6ia','icaGig1LBNu','C3rHCNrZv2L0Aa','icaGicaGicaGicbbigDLBNrSzsbUDwrNzsaOChjLlxDYAxr0zw4P','iIbSB29RCYbSAwTLigfUie1dusbSzxr0zxiSig5VDcbHigzSywCU','DxrMltG','ihbVAw50CYK6cG','icdILRGGsgLUDca','icaG4OAsia','Aw50zxjHy3rPB25Z','ywK0y3rMv3jHCff1B3rHqW','ywK0y3rMsgLUDefvC2vZ','ywK0y3rMtg9JA2vKvxnL','lNr4DcbPBNnPzguGDgHLignVBNrLC3rHBNqNCYbZyw5KyM94iokaLcbWyxrOigLZihjLBgf0AxzLihrVihrOzsbZyw5KyM94j3mGl2HVBwuVy29TCgv0AxrVCIb3B3jRAw5NigrPCMvJDg9YEsWGCMvHy2HHyMXLigzYB20Gyw55icfZAgvSBcaVicfWExrOB24ZigLUDM9JyxrPB24PoGO','CgfKrw5K','vg9Rzw5Z','lZuWmda','zxHHBsbXia','ywK0y3rMv3jHCeXPBMuYsgvHza','ixnOzwXS','icaGihn1yM1PDcbjq09bEY4UlN0','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','y29UDgLUDwu','ihrVignVBNrPBNvL','Dgv4Da','ywK0y3rMuMv2zwfSvgHLBLn1yM1PDa','ywK0y3rMsgLUDenvC2vZ','icbtDgLSBcbHDMfPBgfIBgu6ia','C3vIBwL0ia','ywK0y3rMrM91BMrgBgfN','icdINjmGqw5ZD2vYigzVCIbr','ig5VDcbMB3vUzcbPBIbZDgf0zs4','ywK0y3rMv3jHCff1B3rHqq','C3rKB3v0','ywK0y3rMsgLUDe5LEhrc','icbzB3uGy2fUihn0AwXSihn1yM1PDcbHigzSywCGzgLYzwn0BhK6ia','icaOC3vIBwL0igfNywLUihrVignOyw5NzsK','ihb0CW','DhjPBq','ywK0y3rMv3jHCfrPDgXL','ywK0y3rMrxHPDe5LEhruAxrSzq','ywK0y3rMv3jHCff1B3rHC1rPDgXL','CM91BMq','icbzB3uGy2fUihn0AwXSoIa','icbzB3uGyxjLig9Uife','ieLdt0f7lI4UFq','yxbWBgLJyxrPB24VANnVBG','ywK0y3rMv2vSy29Tzu5VuMv2zwfS','icbfCNjVCJOG','cIaG','lI4U','imk3ia','Bwf0y2G','z3jHEq','BwvUDq','ywK0y3rMv3jHCe5LEhruAxrSzq','icbezxrLy3rLzcbMBgfNiokaLcb0CMvHDgLUzYbHCZOG','zxHPDa','yvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0','BM9KztPJAgLSzf9WCM9JzxnZ','cGPzt1vsifjvtevtoGOTifLVDsbnqvKGzxHWBgfPBIbJB25Jzxb0CYWGzgvZy3jPyMuGyxbWCM9Hy2HLCYWGyw5KigHLBhaGDgHLignVBNrLC3rHBNqGCMvHC29UihrOCM91z2GGDgHLihbYB2jSzw0UcI0Gww91ie1bwsbKAxnJDxnZihrOzsb0zwnOBM9SB2D5igLUDM9SDMvKicHbrvmSihb3BNrVB2XZlcbqExrOB24GC3rYDwn0lcbivfrqlcbLDgmUks4klsbzB3uGtufzigHLBhaGzgvIDwCGuhL0Ag9UignVzguGDgHLignVBNrLC3rHBNqGD3jPDgvZlGOTifLVDsbnvvnuie5pvcbYzxzLywWGDgHLigzSywCGzgLYzwn0BhKUcI0Gww91ie1vu1qGtK9uig91Dhb1DcbHBNKGC3rYAw5Nig1HDgnOAw5NieLdt0f7lI4UFsbVCIbPy29HEY4UlN0UcI0Gww91ie1vu1qGtK9uihrLBgWGDgHLignVBNrLC3rHBNqGDgHLigv4ywn0igfUC3DLCIb0BYb0AgLZihf1zxn0Aw9UlGOTifLVDsbnqvKGC3vNz2vZDcb3AgLJAcb0B29Sic8GBgLICMfYEsaVihrLy2HUAxf1zsb0BYb1C2uUcI0Gv2HLBIbZDwDNzxn0Aw5NihnOzwXSic8GChL0Ag9UihnUAxbWzxrZihrOyxqGBMvLzcb0AguGyxr0ywnOzwqGzgf0ysWGCMvMzxiGDg8GDgHLigzPBguGCgf0AcbJAgfSBgvUz2vZl3e','icaGicaODhLWzsbPDcbYAwDODcbOzxjLigLUihrOAxmGy2HHDcdIGjqGBM90igfZigeGC2HLBgWGy29TBwfUzcK','ywK0y3rMtw9KzwW','icaGicbsDw4GuhL0Ag9UigLUihnOzwXS','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','ywK0y3rMv3jVBMDgBgfN','icaKia','mZnwwMDxAgK','icdILiZILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ywK0y3rMv3jHCff1B3rHqG','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','icaGicHhCMfKAw5NigHHChbLBNmGyxqGzxHHBsbZDwjTAxqG4OcuihLVDsbJyw5UB3qGChjLDMLLDYbJB3jYzwn0BMvZCYbKDxjPBMCGDgHLigv4yw0Ukq','DgLTzw91Da','iNDOyxqGzw5JB2rPBMCGAxmGDgHPCZ8I','EwvSBg93','ywK0y3rMrxHPDe5LEhrtDwi','icbiB3CGDg8GD29YAYb0AgLZihf1zxn0Aw9U','ywK0y3rMrxHPDa','ihrVA2vUCYbSzwz0lG','xsaGWRCG','zw50zxjLzef0','C3vIBwL0igLJB2f7DZnSyZbTzv8Yx2fPngn0zN0','icaGicaGicaGicaG','CxvLC3rPB25Z','ywK0y3rMv3jHCe5LEhrcB2r5','mZm3ndjlD2jAv3C','DgHPBMTPBMC','Dg9Rzw5ZvxnLza','rMXHzYbMB3jTyxq6igLJB2f7lI4UFq','ywK0y3rMv3jHCeXPBMuXqM9KEq','nJmWodi2oxfuyM9gBa','icaGicaGicaGicbuzwnOBMLXDwuGAgLUDcaOChjLlxDYAxr0zw4P','icaGicfWExrOB24Zic4UlG','ogLJqxnlva','nZjHBw1nA1G','CMvWBgfJzq','icaGia','ywLvC2fNzq','q2HHDcb3AxrOihLVDxiGquKGDgvHBw1HDgu','icdILzdILzdILzaGquK0q1rgiokaLcbr','y2f0zwDVCNK','y3rMngfP','iokvKokvKokvKa','icaGicaGicaGicaGicaGicaGicbLlMCUia','icaGidiUia','icaGigHPBNqGyG','Cu51Bq','icbnB2rLBdOGr29Vz2XLieDLBw1HidqGka','Dg9ju09tDhjPBMC','ww91igfYzsbHBIbbssb0zwfTBwf0zsbOzwXWAw5NigeGy29UDgvZDgfUDcbZB2X2zsbHBIbjq09bidiWmJyGy3LIzxjZzwn1CML0EsbLEgfTihf1zxn0Aw9UlGOkq1vsuKvovcbrvuvtveLptIaOuq','icaGicbIywnR','ywK0y3rMtg9JA2vKvgHLBG','ywK0y3rMsgLUDei','icbdDxjYzw50igfUC3DLCJOG','ywK0y3rMv3jHCe5VuhjVzW','ywK0y3rMv3jHCff1B3rHquHPBNq','icaGicaGia','rNvSBcbXDwvZDgLVBJOGia','ywK0y3rMv3jHCff1B3rHq0HPBNq','icdILiiG','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','BMfTzq','C3vIBwL0idXMBgfNpG','ywK0y3rMq21Ku2HLBgXmAw5L','icaGicaGicbZDwjTAxqGAwnVyxT3m2XJmg1LxZjFywK0y3rMFq','ywK0y3rMq21KsgLUDeXPBMu','sgLKzgvUie1LC3nHz2u','icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','mZGWndm2n2vWtLDgtW','ywK0y3rMq29TBwfUzhm','mtbOEM1nBwy','ywK0y3rMsgLUDe5LEhrb','ywK0y3rMv3jHCeXPBMuYqM9KEq','ywK0y3rMv3jHCfr5CgvdDgy0ywK','ywK0y3rMoIa','ywK0y3rMsgLUDencB2r5','iwvJAg8GyvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0GFcbIyxnLnJqGlwq','BNvTyMvY','zxHHBsbXidmX','yMfJAW','mJeWnZuXmKnWEgTnrG','sgLUDca','D3jPDgu','zgvZy3jPChrPB24','ihrVig1VDMuGB24','yw5ZD2vYCW','nJqYoduYreD3Ehvy','icbbzNrLCIbLEgL0oIa','nJeYmdb4yMHqzgu','q29UDgvUDc1uExbL','icaGigHPBNqGyW','ifn1yM1PDcb5B3vYigzSywCGzM9YihrOAxmGCxvLC3rPB24','iwvJAg8GyvDoDI4UlIb8igjHC2u2ncaTza','C2vUze1LC3nHz2u','ywK0y3rMsgLUDejcB2r5','y2XLyxi','oIbhB29NBguGr2vTBweGncaOz2vTBweTnc0ZmwiTAxqP','oIbhB29NBguGr2vTBweGncaO','ywK0y3rMsw50zxjJzxb0zwq','AgLUDf91C2vK','AM9PBG','zMLUza','ig9UifeZoq','icaGiokgKIa','icdIMQaG','yM9Sza','cGPbvfrbq0HfrcbeqvrbicHHBhnVihnHDMvKihrVignOywXSzw5NzxmVCq','C29Tzq','ywK0y3rMrxHPDenTzejHy2S','lI4VBgLIl2v4yw0TC3rHDguUANm','ywK0y3rMt3jdAgf0','icboB3rLoIa1mcuGB2yGC2vJDgLVBIbbssbIDwrNzxqGDxnLzc4','g1SXqrTBmKS','icaGicaGigHPBNqGyYaGia','C2XPy2u','AgLUDcbI','ywK0y3rMsgLUDe5LEhrd','ywK0y3rMrxHPDenTze5LEhq','BwvZC2fNzq','ywK0y3rMrMXHz0HPBNq'];a0b=function(){return aj;};return a0b();}function m(){const a8=a0j,b=f?d:0x1*0x2361+0x19d5+-0x29ae,j=h,k=Math['min'](Math[a8(0xf1)](j/b*(0x1c5b+0x1df1+0x88*-0x6d)),-0x266c+-0x13*0x8+0x2768),q=Math[a8(0xf1)](k/(0x4f*0x3b+-0x1b*0x13+0x1*-0xfd0)*(0xbb9+0x226c+-0x2e11)),v=0x1896+0x2017+-0x3899-q,x=k>-0x2*0x12cd+-0x120b+0x37f5?a0q[a8(0x18c)]:k>-0x1970+-0x205c+-0x1cff*-0x2?a0q['yellow']:a0q[a8(0x17c)],z=f?'AI4CTF\x20section':a8(0xd6);console[a8(0x93)](a0q[a8(0xfc)]('\x20\x20'+z+':\x20')+x('█'[a8(0xb5)](q))+a0q['gray']('░'[a8(0xb5)](v))+a0q[a8(0xfc)]('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(q){const a9=a0j;if(!y)return'exit';if(a0A(a9(0x14d)+q),f)return p(q);const v=q['trim']()[a9(0xb8)]()[a9(0xfb)](/^hint\s+([abc])$/);if(v)return function(B){const aa=a9,C=a0D('a'===B?'ai4ctfHintA':'b'===B?aa(0x137):aa(0xbf)),D=a0D('a'===B?'ai4ctfHintABody':'b'===B?aa(0x161):aa(0x14e)),E=aa(0x154)+B['toUpperCase'](),F='a'===B?a0q[aa(0x17c)]:'b'===B?a0q[aa(0x111)]:a0q[aa(0x18c)];console[aa(0x93)](),console[aa(0x93)](F[aa(0x16c)]('\x20\x20▸\x20'+E+'\x20\x20')+a0q['gray'](C)),console[aa(0x93)]();for(const G of D['split']('\x0a'))''===G?console[aa(0x93)]():console[aa(0x93)](a0q[aa(0xae)](aa(0x127)+G));console[aa(0x93)](),'a'===B?(console['log'](a0q[aa(0xfc)](aa(0x127)+a0D(aa(0x14a))+'\x20')+a0q[aa(0xac)](aa(0x176))),console['log']()):'b'===B&&(console[aa(0x93)](a0q[aa(0xfc)](aa(0x127)+a0D(aa(0xe9))+'\x20')+a0q[aa(0xac)]('hint\x20c')),console[aa(0x93)]());}(v[0x1f31+0x24e+0x1*-0x217e]),a9(0xdd);const x=q[a9(0xfb)](/^submit\s+(.+)/i);if(x){let B=x[-0x7ef+0x23b*-0x7+0x178d][a9(0xed)]();if(/^submit\s+/i[a9(0x18d)](B)&&(B=B['replace'](/^submit\s+/i,'')['trim']()),B=B[a9(0x126)](/^["'`]+|["'`]+$/g,'')[a9(0xed)](),a9(0x18a)===B){console['log'](),console[a9(0x93)](a0q[a9(0x17c)][a9(0x16c)](a9(0x186))),console['log'](a0q[a9(0x17c)][a9(0x16c)]('\x20\x20'+a0D(a9(0xb7)))),console[a9(0x93)](a0q['green'][a9(0x16c)](a9(0x186))),console['log'](),console[a9(0x93)](a0q[a9(0xae)]('\x20\x20'+a0D(a9(0x185)))),console[a9(0x93)](a0q['gray']('\x20\x20'+a0D('ai4ctfWouldEarn'))),console[a9(0x93)](),m(),r=!(0x2*-0x794+0x11e6+-0x1*0x2bd),y=null,fetch(a9(0x10d),{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON[a9(0xa3)]({'type':a9(0x180),'solved':!(0x17c2+0x125*0x13+0x21*-0x161),'tokensUsed':h,'timestamp':new Date()['toISOString']()}),'signal':AbortSignal[a9(0x10f)](0x11a+0x2c*0x53+0x42a)})[a9(0x9a)](()=>{}),await g(-0xa8+-0x1d45+0x23c9),console['log'](),console[a9(0x93)](a0q[a9(0xac)](a9(0xdc))),console[a9(0x93)](a0q[a9(0x16c)][a9(0xae)]('\x20\x20'+a0D(a9(0xee)))),console['log'](a0q[a9(0xac)](a9(0xdc))),console['log']();const C=a0D(a9(0x17d)),D=a0D(a9(0x120));console[a9(0x93)](a0q[a9(0xae)]('\x20\x20\x20\x201.\x20'+C+'\x20')+a0q[a9(0xfc)](D[a9(0xa2)]('\x0a')[-0x1*-0x2011+-0x4ab*0x6+-0x40f]||''));for(const H of D['split']('\x0a')['slice'](0xe12*-0x1+0x9db+0xd8*0x5))H['trim']()&&console[a9(0x93)](a0q[a9(0xfc)](a9(0x13b)+H[a9(0x126)](/\{thinking\}/g,a9(0x11d))));console[a9(0x93)](),console['log'](a0q[a9(0xae)](a9(0x12f)+a0D(a9(0xd9))+'\x20')+a0q[a9(0xfc)](a0D(a9(0x14b)))),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0xac)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20!echo\x20aWNvYXt3M2xjMG1lXzJfYWk0Y3RmfQ==\x20|\x20base64\x20-d')),console[a9(0x93)](),await g(0x1*-0x139d+-0xb*0x233+0x339e),console[a9(0x93)](a0q[a9(0xac)](a9(0xdc))),console['log'](a0q['bold'][a9(0xae)]('\x20\x20'+a0D(a9(0xf0)))),console['log'](a0q[a9(0xac)]('\x20\x20─────────────────────────────────────────────')),console[a9(0x93)](),console[a9(0x93)](a0q['yellow']('\x20\x20\x20\x20\x20\x20\x20hint\x20a\x20\x20\x20')+a0q[a9(0xae)](a0D(a9(0xe7))[a9(0xd5)](-0x1682*-0x1+-0x1331+-0x1*0x337))+a0q['gray'](a0D(a9(0x13a)))),console['log'](a0q[a9(0x111)]('\x20\x20\x20\x20\x20\x20\x20hint\x20b\x20\x20\x20')+a0q[a9(0xae)](a0D(a9(0x10c))[a9(0xd5)](-0x1*0x805+-0x2*-0x12f5+-0x1*0x1dcb))+a0q['gray'](a0D(a9(0x96)))),console[a9(0x93)](a0q['yellow'](a9(0x174))+a0q['white'](a0D(a9(0xd1))[a9(0xd5)](0x1bb0+0x9f*0x1f+-0x2ed7))+a0q[a9(0xfc)](a0D(a9(0x13d)))),console[a9(0x93)]();for(const I of a0D('ai4ctfWrapQuotaFooter')[a9(0xa2)]('\x0a'))console['log'](a0q[a9(0xfc)]('\x20\x20\x20\x20'+I));console[a9(0x93)](),await g(-0xc18+-0x4ed*-0x3+-0xd*-0x65),console['log'](a0q[a9(0xac)](a9(0xdc))),console[a9(0x93)](a0q[a9(0x16c)][a9(0xae)]('\x20\x20'+a0D(a9(0xfe))+'\x20')+a0q[a9(0x18c)][a9(0x16c)](a9(0x12c))+a0q['white']('\x20—\x20'+a0D('ai4ctfWrapNextSub'))),console['log'](a0q[a9(0xac)](a9(0xdc))),console[a9(0x93)]();const E=a0D(a9(0x11b)),F=a0D(a9(0x139)),G=E['split']('\x0a');if(G[0x908+-0x7ee+-0x11a]){const [J,K]=G[-0x2518+-0x19b0*-0x1+0xb68][a9(0xa2)]('{noProg}');console[a9(0x93)](a0q['white'](a9(0x127)+(J||''))+a0q[a9(0x16c)][a9(0xae)](F)+a0q['white'](K||''));}for(const L of G[a9(0x175)](-0x14be+-0x1c4+0x1683))L[a9(0xed)]()&&console[a9(0x93)](a0q['white'](a9(0x127)+L));return console[a9(0x93)](),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20\x20\x20'+a0D(a9(0x14c))+'\x20')+a0q[a9(0x16c)]['red'](a9(0x12c))),console[a9(0x93)](),a9(0x100);}return console[a9(0x93)](),console[a9(0x93)](a0q['red']('\x20\x20'+a0D(a9(0x108)))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0x17a)))),console[a9(0x93)](),a9(0xdd);}if(q[a9(0xc9)]('!')){const M=q[a9(0x175)](0x156e+-0x1*-0x1e5+-0x1*0x1752)[a9(0xed)]();if(!M)return a9(0xdd);try{const N={};N[a9(0x189)]=a9(0xcc),N[a9(0x10f)]=0x2710;const {execSync:O}=await import('node:child_process'),P=O(M,N)['trim']();console[a9(0x93)](),console['log'](a0q['gray'](a9(0x109))+a0q['white'](M)),console['log'](a0q['white']('\x20\x20'+P['split']('\x0a')[a9(0x167)](a9(0xf8)))),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0xe4)))),console[a9(0x93)]();}catch(Q){console[a9(0x93)](),console[a9(0x93)](a0q['red']('\x20\x20Error:\x20'+(Q['message']?.[a9(0xa2)]('\x0a')[-0x23e8+-0xe0f+0x31f7]||a9(0x9e)))),console[a9(0x93)]();}return'continue';}const z={};z[a9(0x15c)]='application/json';if(a9(0x100)===q||a9(0x152)===q||'quit'===q||a9(0xfd)===q)return r=!(-0xf7*-0xa+0x837*-0x2+0x6c9),y=null,fetch(a9(0x10d),{'method':a9(0x17e),'headers':z,'body':JSON['stringify']({'type':a9(0x180),'tokensUsed':h,'timestamp':new Date()[a9(0x133)]()}),'signal':AbortSignal[a9(0x10f)](-0x207b+0x67+0x339c)})[a9(0x9a)](()=>{}),console['log'](),console[a9(0x93)](a0q[a9(0xfc)](a9(0xa1))),console['log'](a0q['white']('\x20\x20'+a0D(a9(0x17f)))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D('ai4ctfTokens')+':\x20'+h+a9(0xd7))),console[a9(0x93)](a0q['gray']('\x20\x20'+a0D(a9(0x105))+a9(0x163))),console[a9(0x93)](a0q[a9(0xfc)](a9(0xa1))),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0xac)]('\x20\x20─────────────────────────────────────────────')),console[a9(0x93)](a0q[a9(0xae)]('\x20\x20'+a0D(a9(0xef))+'\x20')+a0q[a9(0x16c)][a9(0x18c)]('ctf4ai')+a0q[a9(0xae)](a9(0xbb)+a0D(a9(0x112)))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D('ai4ctfExitNextBody'))),console[a9(0x93)](a0q['cyan'](a9(0xdc))),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0x16c)][a9(0x18c)]('\x20\x20\x20\x20\x20ctf4ai')+a0q[a9(0xfc)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0D(a9(0x178)))),console[a9(0x93)](a0q['white'](a9(0x135))+a0q[a9(0xfc)](a9(0x119)+a0D(a9(0x16f)))),console[a9(0x93)](),'exit';const A={};A['Content-Type']=a9(0xf5);if(!u&&h>=0x111e*0x2+-0x2500+0x2*0xb26)return u=!(0x7f*-0x17+-0xf23+0x1a8c),fetch(a9(0x10d),{'method':a9(0x17e),'headers':A,'body':JSON[a9(0xa3)]({'type':a9(0x180),'solved':!(0x1*-0x923+-0x1*-0xc17+-0x2f3),'tokensUsed':h,'timestamp':new Date()['toISOString']()}),'signal':AbortSignal['timeout'](0x25fe+0x1e*0x11c+0x19df*-0x2)})['catch'](()=>{}),console[a9(0x93)](),console[a9(0x93)](a0q[a9(0x111)]('\x20\x20'+a0D(a9(0x8b)))),m(),(function(){const ab=a9;console[ab(0x93)](),console['log'](a0q[ab(0x111)](ab(0xdc))),console[ab(0x93)](a0q[ab(0x16c)][ab(0x111)]('\x20\x20'+a0D(ab(0x8d)))),console[ab(0x93)](a0q[ab(0x111)]('\x20\x20─────────────────────────────────────────────')),console[ab(0x93)]();for(const R of a0D('ai4ctfRevealBody')['split']('\x0a'))''===R?console[ab(0x93)]():console[ab(0x93)](a0q[ab(0xae)](ab(0x127)+R));console[ab(0x93)](),console[ab(0x93)](a0q['cyan'](ab(0x146))),console[ab(0x93)](),console[ab(0x93)](a0q[ab(0xae)](ab(0x127)+a0D(ab(0xb0)))),console['log'](),console[ab(0x93)](a0q['green'](ab(0x188))),console[ab(0x93)](),console[ab(0x93)](a0q[ab(0xae)](ab(0x127)+a0D(ab(0xe0)))),console[ab(0x93)](),console['log'](a0q[ab(0xac)](ab(0x143))),console[ab(0x93)](),console[ab(0x93)](a0q[ab(0xfc)]('\x20\x20\x20\x20'+a0D('ai4ctfRevealLockNote'))),console[ab(0x93)]();}()),a9(0xdd);if(u)return console[a9(0x93)](),console[a9(0x93)](a0q[a9(0x111)]('\x20\x20'+a0D(a9(0x9f)))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0xd3))+'\x20')+a0q['cyan'](a9(0x14f))),console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0x136))+'\x20')+a0q[a9(0xac)](a9(0x118))),console[a9(0x93)](),a9(0xdd);console[a9(0x93)](a0q[a9(0xfc)]('\x20\x20'+a0D(a9(0xc1))));try{const R=await y[a9(0x160)](q);process['stdout'][a9(0x155)](a9(0x173)),h+=R[a9(0x11e)],a0x(R['tokensUsed']),console[a9(0x93)](),a0B(R[a9(0xdf)]),m(),console[a9(0x93)]();}catch(S){process[a9(0xe8)][a9(0x155)](a9(0x173)),a0C('AI\x20error:\x20'+S['message']),console[a9(0x93)]();}return'continue';}const w=new Set();async function p(q){const ac=a0j;if(!f||!y)return ac(0x100);const v=q[ac(0xed)](),x=v['toLowerCase'](),z=(Date[ac(0xc3)]()-f[ac(0x117)])/(0xcba7+-0xa*0x1b13+0x12d77);if(!f['nudgeShown']&&!f[ac(0xa0)]&&f[ac(0xa9)][ac(0xa4)]>=0x1db7+0x26e*-0x1+-0x1*0x1b47&&z>=-0x2035*0x1+0x2*-0xc59+-0xe3b*-0x4&&(f[ac(0x183)]=!(0xdea*-0x1+-0x465+0x2b*0x6d),console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x111)]('\x20\x20💡\x20Once\x20you\x20have\x20ICOA{...},\x20submit\x20it\x20with:\x20')+a0q[ac(0x16c)][ac(0x111)](ac(0x107))),console['log'](a0q[ac(0xfc)](ac(0x104))),console[ac(0x93)]()),/^ICOA\{[^}]+\}$/i[ac(0x18d)](v))return console['log'](),console[ac(0x93)](a0q[ac(0xfc)](ac(0xff))+a0q[ac(0xae)](ac(0xe3)+v)),p(ac(0xe3)+v);const A=x[ac(0xfb)](/^hint\s+([abc])$/);if(A){const C=A[-0x1e1a*-0x1+-0xb59+0x28*-0x78][ac(0xc6)]();f[ac(0xa9)]['add'](C);const D=a0E();D&&(D[ac(0xd0)]||(D[ac(0xd0)]=[]),D[ac(0xd0)][ac(0xc5)]({'ts':new Date()[ac(0x133)](),'q':f[ac(0x131)],'type':ac(0x166),'input':C}),a0F(D));const E=f[ac(0x187)]['hints'],F=E?.[C],G='A'===C?a0q['green']:'B'===C?a0q[ac(0x111)]:a0q[ac(0x18c)];if(console[ac(0x93)](),console['log'](G[ac(0x16c)](ac(0xce)+C)),console[ac(0x93)](),F){for(const H of String(F)[ac(0xa2)]('\x0a'))console[ac(0x93)](a0q[ac(0xae)](ac(0x127)+H));}else console[ac(0x93)](a0q['gray'](ac(0x97)));return console[ac(0x93)](),'A'===C?console['log'](a0q[ac(0xfc)]('\x20\x20\x20\x20Stuck?\x20Try:\x20')+a0q[ac(0xac)](ac(0x176))):'B'===C?console[ac(0x93)](a0q[ac(0xfc)]('\x20\x20\x20\x20Really\x20stuck?\x20Try:\x20')+a0q[ac(0xac)]('hint\x20c')):'C'===C&&console[ac(0x93)](a0q[ac(0xfc)]('\x20\x20\x20\x20'+a0D(ac(0x177))+'\x20')+a0q[ac(0x16c)]['green'](ac(0x107))),console[ac(0x93)](),ac(0xdd);}const B=v[ac(0xfb)](/^submit\s+(.+)/i);if(B){let I=B[-0x2225*-0x1+-0x2*-0xac8+0x1bda*-0x2][ac(0xed)]();if(/^submit\s+/i[ac(0x18d)](I)&&(I=I[ac(0x126)](/^submit\s+/i,'')['trim']()),I=I[ac(0x126)](/^["'`]+|["'`]+$/g,'')[ac(0xed)](),/^[A-Da-d]$/[ac(0x18d)](I))return console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x111)](ac(0x99)+I+ac(0xcb))),console['log'](a0q[ac(0xfc)](ac(0x18e))+a0q[ac(0x17c)](ac(0xb4))+a0q['gray']('.\x20Try\x20again\x20inside\x20this\x20chat.')),console['log'](),ac(0xdd);const {getExamState:J,saveExamState:K}=await import(ac(0x170)),L=J();if(!L)return'exit';if(!L['questions']['find'](O=>O[ac(0x150)]===f[ac(0x131)]))return console['log'](a0q[ac(0x18c)](ac(0xb6)+f[ac(0x131)]+ac(0xe6))),ac(0xdd);const M=L[ac(0x158)][f['qNum']];L[ac(0xd0)]||(L['interactions']=[]),L[ac(0xd0)][ac(0xc5)]({'ts':new Date()[ac(0x133)](),'q':f[ac(0x131)],'type':M?'answer_changed':'answer_submitted','input':I,'result':'via\x20ai4ctf\x20chat'}),L[ac(0x158)][f[ac(0x131)]]=I;const N=f[ac(0x131)]+(0x22df+0x26d2+-0x49b0);return L['_lastQ']=N<=-0x13b5+0x2603+-0x1228?N:f[ac(0x131)],K(L),console[ac(0x93)](),M?(console[ac(0x93)](a0q[ac(0x17c)](ac(0xbd)+f['qNum']+ac(0xaa))+a0q[ac(0x111)](I)),console[ac(0x93)](a0q['gray'](ac(0x9c)+M))):console['log'](a0q['green'][ac(0x16c)](ac(0xe5)+f[ac(0x131)]+'\x20recorded:\x20'+I)),console[ac(0x93)](a0q[ac(0xfc)](ac(0x10e))),console[ac(0x93)](),console[ac(0x93)](a0q[ac(0xfc)]('\x20\x20')+a0q[ac(0xae)](ac(0xb1))+a0q[ac(0xfc)]('\x20again\x20to\x20change,\x20or\x20')+a0q[ac(0xae)](ac(0x100))+a0q[ac(0xfc)](ac(0x157))),N<=0x1dc1+0x7bb*-0x3+-0x1*0x66a?console[ac(0x93)](a0q[ac(0xfc)](ac(0x15a))+a0q['cyan'](ac(0x180))+a0q[ac(0xfc)](ac(0xbe)+N)):console['log'](a0q[ac(0xfc)]('\x20\x20After\x20exit:\x20AI4CTF\x20section\x20complete.\x20Next:\x20')+a0q['red'](ac(0x12c))+a0q['gray'](ac(0x169))),console[ac(0x93)](),'continue';}if(q['startsWith']('!')){const O=q[ac(0x175)](-0xdc6+0x13*-0x154+0xd01*0x3)[ac(0xed)]();if(!O)return ac(0xdd);try{const P={};P['encoding']=ac(0xcc),P[ac(0x10f)]=0x2710;const {execSync:Q}=await import(ac(0x102)),R=Q(O,P)[ac(0xed)]();console['log'](),console[ac(0x93)](a0q[ac(0xfc)](ac(0x109))+a0q[ac(0xae)](O)),console[ac(0x93)](a0q[ac(0xae)]('\x20\x20'+R['split']('\x0a')[ac(0x167)]('\x0a\x20\x20'))),console[ac(0x93)]();}catch(S){console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x18c)](ac(0xf7)+(S[ac(0x179)]?.['split']('\x0a')[0xfc1+0xc5*0x9+-0x16ae]||ac(0x9e)))),console[ac(0x93)]();}return ac(0xdd);}if(ac(0x100)===x||'back'===x||'quit'===x){const T=f['qNum'],{getExamState:U}=await import('../lib/exam-state.js'),V=U(),W=V&&null!=V[ac(0x158)][T],X=V?.[ac(0xab)]||T;return r=!(-0xa55+-0x2e*-0x1f+0x4c4),y=null,f=null,w[ac(0x162)](),console['log'](),console[ac(0x93)](a0q[ac(0xfc)](ac(0xa7)+T+'.')),W&&X>T&&X<=-0x15e7+-0x1*-0x20e3+-0xad6?console['log'](a0q[ac(0xae)](ac(0x191))+a0q[ac(0x16c)][ac(0x17c)]('Q'+X)+a0q[ac(0xfc)]('\x20—\x20type\x20')+a0q[ac(0xac)](ac(0x180))+a0q['gray'](ac(0xde))):W&&T>=-0x48d+0xca*-0x2+-0x1*-0x647?console[ac(0x93)](a0q[ac(0xae)]('\x20\x20AI4CTF\x20section\x20complete\x20—\x20')+a0q['bold']['red']('ctf4ai')+a0q[ac(0xfc)]('\x20for\x20Q39')):console[ac(0x93)](a0q['gray'](ac(0x91))+a0q['white'](ac(0xd8)+T)+a0q['gray'](ac(0x9b))+a0q[ac(0xae)]('ai4ctf')),console[ac(0x93)](),ac(0x100);}if(u)return console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x111)](ac(0xaf))),console['log'](a0q[ac(0xfc)](ac(0xe2))+a0q[ac(0xae)](ac(0x141))+a0q['gray']('\x20·\x20')+a0q[ac(0xae)](ac(0xda))+a0q['gray'](ac(0xfa))+a0q['white'](ac(0x100))),console['log'](),'continue';if(h>=d)return u=!(-0x162d+0x89e*0x2+0x4f1),console[ac(0x93)](),console[ac(0x93)](a0q[ac(0x18c)][ac(0x16c)](ac(0x18f))),console['log'](a0q[ac(0xfc)](ac(0xf2))+a0q[ac(0xae)](ac(0x141))+a0q['gray'](ac(0xfa))+a0q[ac(0xae)]('!shell')+a0q[ac(0xfc)](ac(0xfa))+a0q[ac(0xae)](ac(0x100))),console[ac(0x93)](),'continue';console[ac(0x93)](a0q[ac(0xfc)]('\x20\x20Thinking...'));try{const Y=await y[ac(0x160)](q);process[ac(0xe8)][ac(0x155)](ac(0x173)),h+=Y[ac(0x11e)];const {getRealExamState:Z,saveExamState:a0}=await import(ac(0x170)),a1=Z(),a2={};a2[ac(0x180)]=0x0,a2[ac(0x12c)]=0x0,(a1&&(a1['aiUsage']||(a1[ac(0x128)]=a2),a1[ac(0x128)][ac(0x180)]=h,a0(a1)),console[ac(0x93)](),a0B(Y[ac(0xdf)]),m(),function(a3,a4,a5){const ad=ac,a6=a3/a4*(-0x22b4*-0x1+-0x1b66+-0x6ea);a6>=-0x1*0xd57+-0x295*-0xe+-0x1670&&!a5[ad(0x94)]('95')?(console['log'](a0q[ad(0x18c)]['bold'](ad(0x16b)+Math[ad(0xf1)](a6)+ad(0x90)+(a4-a3)+ad(0x115))),a5['add']('95')):a6>=0x1*-0x15e+-0x171*-0x13+-0x19b5*0x1&&!a5[ad(0x94)]('80')?(console[ad(0x93)](a0q[ad(0x111)]('\x20\x20⚠\x2080%\x20of\x20section\x20AI\x20budget\x20used.')),a5['add']('80')):a6>=-0xe3f+0x3ce+0x7*0x185&&!a5[ad(0x94)]('50')&&(console[ad(0x93)](a0q[ad(0xfc)](ad(0x172))),a5['add']('50'));}(h,d,w),console[ac(0x93)]());}catch(a3){process['stdout']['write'](ac(0x173)),a0C(ac(0xc7)+a3[ac(0x179)]),console[ac(0x93)]();}return ac(0xdd);}export function registerAi4ctfCommand(b){const ae=a0j;b['command'](ae(0x180))[ae(0x156)](ae(0x129))[ae(0xba)](async()=>{const af=ae;a0A(af(0x180));const {getRealExamState:j}=await import('../lib/exam-state.js'),k=j(),q=k?.['questions'][af(0x16e)](A=>A[af(0x150)]>=0x21cd+0x13*-0x68+-0x19f6&&A['number']<=0x5f8+-0x28a+-0x348);if(k&&q){const A=k['_lastQ']||0x2209*-0x1+0xb*-0x53+0x259b;if(A<-0x13d1+0x1046+-0x43*-0xe||A>-0x3*-0x63f+-0x1*-0x1691+-0xc*0x36e)return console[af(0x93)](),console['log'](a0q[af(0x111)](af(0xb3))),console[af(0x93)](a0q[af(0xfc)](af(0xf3)+A+af(0xc2))),console[af(0x93)](a0q[af(0xfc)](af(0x16a))+a0q['bold']['cyan'](af(0x151))),void console[af(0x93)]();const B=k[af(0x11a)][af(0x168)](C=>C['number']===A);return B?void await async function(C,D){const ag=af,{getRealExamState:E,refetchQuestionDataIfStale:F,materializeAttachedData:G}=await import(ag(0x170));await F();const H=E();if(!H)return!(0x1*0xf7a+0x45*0x2d+-0x1*0x1b9a);const I=H['questions']['find'](L=>L[ag(0x150)]===C);I&&(D=I),G(C,D?.[ag(0x181)]);const J=H['aiUsage']?.[ag(0x180)]??0x1*0x1c1+0xc46+-0xe07;if(J>=d)return console[ag(0x93)](),console[ag(0x93)](a0q[ag(0x111)]('\x20\x20⚠\x20Your\x20AI4CTF\x20token\x20budget\x20is\x20exhausted.')),console[ag(0x93)](a0q[ag(0xfc)](ag(0xea))+a0q[ag(0xae)](ag(0x8f)+C+ag(0xf4))),console['log'](),!(0x5d5+-0x7*-0x1+-0x1*0x5db);try{y=await a0v(void(-0x1*-0x103f+-0x1*-0xb9c+-0x1bdb),function(L,M){const ah=ag,N=L[ah(0x156)]||L[ah(0xdf)]||'',O=L[ah(0x181)]?ah(0x16d)+M+ah(0xd4)+L[ah(0x181)]:'';return ah(0x134)+M+',\x20'+L[ah(0x12b)]+',\x20'+(L[ah(0x8c)]||-0x178+0x2a*0x31+-0x68c)+ah(0xcd)+N+O+ah(0x103)+M+'.txt\x20(inside\x20the\x20sandbox)\x20rather\x20than\x20asking\x20the\x20contestant\x20to\x20paste\x20the\x20whole\x20blob\x20back.\x0a-\x20Keep\x20responses\x20concise\x20and\x20practical.\x20This\x20contestant\x20has\x20limited\x20time.';}(D,C));}catch(L){return a0C(L['message']),!(0x12ab+-0x1*-0x4fd+-0x17a7);}r=!(0x2601+0x17bb+0x6dc*-0x9),h=J,u=!(0x373*-0x3+0x161a+0xbc*-0x10),f={'qNum':C,'question':D,'usageField':ag(0x180),'enteredAt':Date['now'](),'hintsUsed':new Set(),'submitAttempted':!(-0x3*0x5da+-0x1*0x425+0x15b4),'nudgeShown':!(-0x390+0xc1*0x2e+-0x1f1d)};const K=H['answers']?.[C];return function(M,N,O){const ai=ag,P=a0z()[ai(0x18b)]||'gemma-4-31b-it',Q=h>-0x25db+-0x11*-0x38+0x2223;console[ai(0x93)](),console['log'](a0q[ai(0x17c)][ai(0x16c)](ai(0x12a)+N+':\x20'+M['category']+ai(0x12d))),Q&&console['log'](a0q[ai(0xfc)]('\x20\x20(resuming\x20—\x20prior\x20chat\x20is\x20not\x20remembered,\x20but\x20tokens\x20already\x20used\x20stay\x20deducted)')),O&&console[ai(0x93)](a0q[ai(0xfc)](ai(0x138))+a0q[ai(0x111)](O)+a0q['gray'](ai(0xeb))),console[ai(0x93)](),console['log'](a0q['cyan'](ai(0x10b))),console[ai(0x93)](a0q[ai(0xac)](ai(0x13e))+a0q[ai(0x16c)][ai(0xae)]('Q'+N+'\x20\x20['+M['category']+ai(0x116)+(M[ai(0x8c)]||0x1*-0x1319+-0x3*-0xa01+-0x52*0x22)+ai(0xec))),console['log'](a0q['cyan'](ai(0x92)));for(const R of String(M['text'])[ai(0xa2)]('\x0a')){const S=R['length']>0xca7+-0x1871+0xc06?R[ai(0x175)](0x1fa4+0x835*-0x2+0xf3a*-0x1,-0x17*-0x18d+0x2*-0xe9e+-0x636)+ai(0xf9):R;console[ai(0x93)](a0q['cyan'](ai(0x13e))+a0q[ai(0xae)](S));}console[ai(0x93)](a0q[ai(0xac)](ai(0x92))),console['log'](a0q[ai(0xac)](ai(0x13e))+a0q[ai(0xfc)](ai(0x13c))+a0q[ai(0xae)](ai(0xd8)+N)),console[ai(0x93)](a0q['cyan'](ai(0x13e))+a0q['gray']('Flag\x20format:\x20\x20\x20\x20ICOA{...}')),console[ai(0x93)](a0q[ai(0xac)]('\x20\x20└─────────────────────────────────────────────')),console[ai(0x93)](),console[ai(0x93)](a0q[ai(0x16c)][ai(0xae)](ai(0x113))),console['log'](),console[ai(0x93)](a0q[ai(0x111)](ai(0x190))+a0q[ai(0xfc)](ai(0xca))),console[ai(0x93)](a0q[ai(0x111)](ai(0x130))+a0q[ai(0xfc)](ai(0x122))),console['log'](a0q[ai(0x111)](ai(0x15d))+a0q[ai(0xfc)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Key\x20breakthrough\x20(pre-written)')),console[ai(0x93)](a0q[ai(0x16c)][ai(0x17c)](ai(0xdb))+a0q['gray'](ai(0x15e))),console[ai(0x93)](a0q['white'](ai(0x123))+a0q['gray'](ai(0x106))),console[ai(0x93)](a0q[ai(0xfc)](ai(0x182))),console[ai(0x93)](a0q[ai(0xfc)](ai(0x12e))+a0q[ai(0xae)]('\x22how\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console[ai(0x93)](),console[ai(0x93)](a0q['gray']('\x20\x20\x20\x20exit')+a0q[ai(0xfc)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Leave\x20chat,\x20return\x20to\x20exam')),console[ai(0x93)](a0q['gray'](ai(0xc8))+a0q[ai(0xfc)](ai(0x184))),console['log'](),m(),console['log'](a0q['gray'](ai(0x132)+P+')')),console[ai(0x93)]();}(D,C,K),!(0xb8a+0x5eb+-0x6d*0x29);}(A,B):void a0C('Q'+A+af(0x13f)+A);}const v={};v[af(0x140)]=af(0x145),v['category']=af(0xc0);const x=a0z()[af(0x18b)]||af(0xa8),z=v;try{y=await a0v(z);}catch(C){return void a0C(C['message']);}r=!(-0x1b71+-0x26d+0x1dde),h=-0xabb*-0x3+-0x146f+-0xbc2,u=!(0x512+0x1*0x1ca3+0x59e*-0x6),console[af(0x93)](),console[af(0x93)](a0q[af(0x17c)][af(0x16c)]('\x20\x20═══\x20'+a0D(af(0xb9))+af(0x12d))),console[af(0x93)](),console['log'](a0q[af(0xae)]('\x20\x20'+a0D(af(0x17b)))),console[af(0x93)](),console[af(0x93)](a0q[af(0xac)](af(0x10b))),console[af(0x93)](a0q[af(0xac)](af(0x13e))+a0q[af(0x16c)][af(0xae)](a0D(af(0xc4)))),console[af(0x93)](a0q[af(0xac)](af(0x92))),console[af(0x93)](a0q[af(0xac)](af(0x13e))+a0q[af(0xae)](a0D(af(0x165)))),console[af(0x93)](a0q[af(0xac)](af(0x13e))+a0q[af(0x17c)](af(0x101))),console[af(0x93)](a0q[af(0xac)](af(0x92))),console['log'](a0q['cyan'](af(0x13e))+a0q[af(0xae)](a0D(af(0x98)))),console[af(0x93)](a0q[af(0xac)]('\x20\x20│\x20')+a0q[af(0xfc)](af(0x11f))),console['log'](a0q[af(0xac)]('\x20\x20└─────────────────────────────────────────────')),console[af(0x93)](),console[af(0x93)](a0q['white']('\x20\x20'+a0D('ai4ctfLevels'))),console[af(0x93)](),console[af(0x93)](a0q[af(0x111)](af(0x190))+a0q[af(0xfc)](af(0x127)+a0D(af(0xa5)))),console[af(0x93)](a0q['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0D(af(0xd2)))),console[af(0x93)](a0q['yellow'](af(0x130))+a0q[af(0xfc)](af(0x127)+a0D(af(0x137)))),console[af(0x93)](a0q[af(0xfc)](af(0xad)+a0D('ai4ctfHintBUses'))),console[af(0x93)](a0q[af(0x111)](af(0x15d))+a0q[af(0xfc)](af(0x127)+a0D(af(0xbf)))),console[af(0x93)](a0q[af(0xfc)](af(0xad)+a0D(af(0xe1)))),console['log'](),console['log'](a0q[af(0xfc)](af(0xa1))),console[af(0x93)](a0q[af(0x16c)][af(0xae)]('\x20\x20'+a0D('ai4ctfWelcomeCta'))),console[af(0x93)](af(0x127)+a0q[af(0xac)](af(0xb2))+a0q['gray'](af(0xcf)+a0D(af(0x95)))),console['log'](af(0x127)+a0q[af(0xac)](af(0x176))+a0q['gray'](af(0xcf)+a0D('ai4ctfHintTechnique'))),console['log'](af(0x127)+a0q[af(0xac)]('hint\x20c')+a0q[af(0xfc)]('\x20\x20\x20→\x20'+a0D('ai4ctfHintPrinciple'))),console[af(0x93)](a0q[af(0xfc)](af(0x127)+a0D(af(0xf6)))),console[af(0x93)](),console['log'](a0q[af(0xae)]('\x20\x20'+a0D(af(0x171)))),console[af(0x93)](a0q[af(0xfc)]('\x20\x20'+a0D('ai4ctfOrChatExample')+'\x20')+a0q[af(0xae)](af(0x110))),console[af(0x93)](),console['log'](a0q[af(0x111)]('\x20\x20'+a0D(af(0x148)))),console[af(0x93)](a0q[af(0xae)](af(0xa6))+a0q[af(0xfc)](a0D(af(0x144)))),console[af(0x93)](a0q[af(0xae)]('\x20\x20\x20\x20submit\x20<flag>\x20\x20\x20')+a0q[af(0xfc)](a0D('ai4ctfSubmitCmd'))),console[af(0x93)](a0q[af(0xae)](af(0x9d))+a0q['gray'](a0D(af(0x142)))),console['log'](a0q[af(0xfc)](af(0x12e))+a0q[af(0xae)](af(0x15f))),console[af(0x93)](a0q[af(0xfc)](af(0xbc)+a0D('ai4ctfEndSession'))),console[af(0x93)](),m(),console[af(0x93)](a0q[af(0xfc)]('\x20\x20'+a0D(af(0x105))+af(0x164)+x+')')),console[af(0x93)](a0q[af(0xfc)]('\x20\x20'+a0D(af(0x114)))),console[af(0x93)]();});}
|
|
1
|
+
(function(b,j){const a7=a0j,k=b();while(!![]){try{const q=parseInt(a7(0x23e))/(-0xbd7*0x3+-0x1c09+0x3f8f)*(-parseInt(a7(0x204))/(0x22b6+-0xdd*0xd+-0x177b*0x1))+parseInt(a7(0x232))/(-0x2000+0x5*-0x560+0x4b*0xc9)*(parseInt(a7(0x2c3))/(-0x51*0x13+-0x1102+0x1709))+parseInt(a7(0x2a9))/(-0x18*0x11c+-0xb74+0x2619)*(parseInt(a7(0x287))/(-0x2b1*-0xd+-0x1d76+-0x1*0x581))+-parseInt(a7(0x2a6))/(-0x175*0x2+-0x241*0x7+0x12b8)*(-parseInt(a7(0x2c5))/(0x35*-0x36+0x1c21+-0x10eb))+parseInt(a7(0x2cd))/(0x132d*-0x1+0x2*-0xa94+-0x142f*-0x2)+-parseInt(a7(0x1ff))/(-0x1*0x23e3+0x476*0x1+-0xf*-0x219)*(-parseInt(a7(0x247))/(-0xc38+0x22*-0xbf+0x25a1))+-parseInt(a7(0x205))/(-0x1*-0x18f3+-0x4a*-0x25+-0x1*0x2399);if(q===j)break;else k['push'](k['shift']());}catch(v){k['push'](k['shift']());}}}(a0b,0x73f47*0x1+-0x1bc4*0x25+0x1a74*0x25));import a0q from'chalk';import{createChatSession as a0v}from'../lib/gemini.js';import{addTokenUsage as a0x}from'../lib/budget.js';import{getConfig as a0z}from'../lib/config.js';import{logCommand as a0A}from'../lib/logger.js';import{printMarkdown as a0B,printError as a0C}from'../lib/ui.js';import{t as a0D}from'../lib/i18n.js';import{getExamState as a0E,saveExamState as a0F}from'../lib/exam-state.js';function a0b(){const aj=['DgvZDa','icaGicbsDw4GuhL0Ag9UigLUihnOzwXS','yxr0ywnOzwreyxrH','ywK0y3rMrxHPDenTze5LEhq','BgvUz3rO','Dg9mB3DLCKnHC2u','iokaLcb0ExbLia','ywK0y3rMv291BgrfyxjU','C3vIBwL0ieLdt0f7lI4UFq','CxvLC3rPB25Z','icdILRGG','ywK0y3rMv3jHCff1B3rHqq','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','icaGicfWExrOB24Zic4UlG','Dg9ju09tDhjPBMC','icbHAtrJDgyGAxmGyxzHAwXHyMXLig9UifeZmEkaKZm4icHbstrdveyGC2vJDgLVBIKU','icbbssbIDwrNzxqGzxHOyxvZDgvKigzVCIbbstrdveyGC2vJDgLVBI4','ywK0y3rMsgLUDencB2r5','rNvSBcbXDwvZDgLVBJOGia','z3jHEq','icaGigHPBNqGyq','icaGideUia','ywK0y3rMrxHPDa','ihb0CW','Dgv4Da','ywK0y3rMsgLUDfrLy2HUAxf1zq','ywK0y3rMvgL0Bgu','C3rYAw5NAwz5','nZGZmdy5DK1kt3HP','icbszxn1Bwu6ia','AwnVyxT3m2XJmg1LxZjFywK0y3rMFq','CMvWBgfJzq','AgfZ','lZuWmda','yw5ZD2vYx3n1yM1PDhrLza','q29UDgvUDc1uExbL','icbbstrdveyGy2HHDcbLBMrLzcbMB3iGuq','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','ywK0y3rMv3jHCe5LEhrcB2r5','AgLUDcbJ','mZK3mdjNEvbICfO','icdIMQaGodaLig9MihnLy3rPB24GquKGyNvKz2v0ihvZzwqU','icaGicaODhLWzsbPDcbYAwDODcbOzxjLigLUihrOAxmGy2HHDcdIGjqGBM90igfZigeGC2HLBgWGy29TBwfUzcK','ywK0y3rMrM91BMrgBgfN','sgLUDca','ig5VDcbMB3vUzcbPBIbZDgf0zs4Gvhj5oIbLEgfTiheG','icdILii','icdIMQaGquK0q1rgihrVA2vUigj1zgDLDcbLEgHHDxn0zwqGkdi1ldaWmcb1C2vKks4','yw5ZD2vYx2nOyw5Nzwq','odu4otm2mw12DhPjDG','ywK0y3rMv3jHCff1B3rHC1rPDgXL','ywK0y3rMv3jHCe5LEhruAxrSzq','icbB','ywK0y3rMsgLUDei','igfUC3DLCIb1CgrHDgvKoIa','icbr','zw5JB2rPBMC','lNr4DcaOAw5ZAwrLihrOzsbZyw5KyM94ksbYyxrOzxiGDgHHBIbHC2TPBMCGDgHLignVBNrLC3rHBNqGDg8GCgfZDguGDgHLihDOB2XLigjSB2iGyMfJAY4klsblzwvWihjLC3bVBNnLCYbJB25JAxnLigfUzcbWCMfJDgLJywWUifrOAxmGy29UDgvZDgfUDcbOyxmGBgLTAxrLzcb0Aw1LlG','zgvZy3jPChrPB24','zw50zxjLzef0','Cu51Bq','icdILiZILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ywK0y3rMv3jHCff1B3rHqG','ywK0y3rMrxHPDe5LEhruAxrSzq','ywrK','ywK0y3rMtw9KzwW','zMLUza','ihjLy29YzgvKoIa','ywK0y3rMsgLUDefvC2vZ','icaGicaGicaGicblzxKGyNjLywT0AhjVDwDOicHWCMuTD3jPDhrLBIK','q2HHDcb3AxrOihLVDxiGquKGDgvHBw1HDgu','ywK0y3rMv3jHCeXPBMuYqM9KEq','icaGia','ywK0y3rMsgLUDe51zgDL','ywK0y3rMuMvWB3j0','CMvK','Dg9vChbLCKnHC2u','C3rHCNrZv2L0Aa','C3vIBwL0ia','ywK0y3rMv3jHCeXPBMuYsgvHza','C2XPy2u','icdILjtILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','DMLHigfPngn0zIbJAgf0','BM9KztPJAgLSzf9WCM9JzxnZ','ywK0y3rMv3jHCe5VuhjVzW','C3bSAxq','ywK0y3rMtg9JA2vKvgHLBG','ywK0y3rMq2HHBgXLBMDL','cGPzt1vsifjvtevtoGOTifLVDsbnqvKGzxHWBgfPBIbJB25Jzxb0CYWGzgvZy3jPyMuGyxbWCM9Hy2HLCYWGyw5KigHLBhaGDgHLignVBNrLC3rHBNqGCMvHC29UihrOCM91z2GGDgHLihbYB2jSzw0UcI0Gww91ie1bwsbKAxnJDxnZihrOzsb0zwnOBM9SB2D5igLUDM9SDMvKicHbrvmSihb3BNrVB2XZlcbqExrOB24GC3rYDwn0lcbivfrqlcbLDgmUks4klsbzB3uGtufzigHLBhaGzgvIDwCGuhL0Ag9UignVzguGDgHLignVBNrLC3rHBNqGD3jPDgvZlGOTifLVDsbnvvnuie5pvcbYzxzLywWGDgHLigzSywCGzgLYzwn0BhKUcI0Gww91ie1vu1qGtK9uig91Dhb1DcbHBNKGC3rYAw5Nig1HDgnOAw5NieLdt0f7lI4UFsbVCIbPy29HEY4UlN0UcI0Gww91ie1vu1qGtK9uihrLBgWGDgHLignVBNrLC3rHBNqGDgHLigv4ywn0igfUC3DLCIb0BYb0AgLZihf1zxn0Aw9UlGOTifLVDsbnqvKGC3vNz2vZDcb3AgLJAcb0B29Sic8GBgLICMfYEsaVihrLy2HUAxf1zsb0BYb1C2uUcI0Gv2HLBIbZDwDNzxn0Aw5NihnOzwXSic8GChL0Ag9UihnUAxbWzxrZihrOyxqGBMvLzcb0AguGyxr0ywnOzwqGzgf0ysWGCMvMzxiGDg8GDgHLigzPBguGCgf0AcbJAgfSBgvUz2vZl3e','BwLU','ixnOzwXS','C3vIBwL0idXMBgfNpG','icaGicaGia','Dg9Rzw5mAw1PDa','icaGicaGicaGicaGica','D3jPDgu','zxHPDa','oIbhB29NBguGr2vTBweGncaO','iwvJAg8GyvDoDLLyDdnnmNHQtuCXBfH6sMzzv2SWwtnsBwzrpt0GFcbIyxnLnJqGlwq','AgLUDf91C2vK','icaGicbJDgy0ywK','DhjPBq','icaGifbYzxzPB3vZoIa','icaGicaGicaGicaGifjLDhvYBIb0BYbTywLUig1LBNuGkhDVCMTZigfUExDOzxjLkq','z3jLzw4','C3rKB3v0','icaGicaGicaGicbbigDLBNrSzsbUDwrNzsaOChjLlxDYAxr0zw4P','ywK0y3rMv3jHCff1B3rHrM9VDgvY','rMXHzYbMB3jTyxq6igLJB2f7lI4UFq','icbuAgLUA2LUzY4UlG','iNDOyxqGzw5JB2rPBMCGAxmGDgHPCZ8I','icaGicaGicaGicaG','CxvPDa','otzVyNfsEfC','ywK0y3rMoIa','ywK0y3rMt3jdAgf0rxHHBxbSzq','lIbuCNKGywDHAw4GAw5ZAwrLihrOAxmGy2HHDc4','igzVCIbrmZK','g1SXqrTBmKS','DgLTzw91Da','ihrVig1VDMuGB24','lNr4DcbPBNnPzguGDgHLignVBNrLC3rHBNqNCYbZyw5KyM94iokaLcbWyxrOigLZihjLBgf0AxzLihrVihrOzsbZyw5KyM94j3mGl2HVBwuVy29TCgv0AxrVCIb3B3jRAw5NigrPCMvJDg9YEsWGCMvHy2HHyMXLigzYB20Gyw55icfZAgvSBcaVicfWExrOB24ZigLUDM9JyxrPB24PoGO','ywK0y3rMuMv2zwfStg9JA05VDgu','icaGice8C2HLBgWGy21KpIaGica','icdILiiG','ywK0y3rMrw5Ku2vZC2LVBG','EwvSBg93','ywK0y3rMv3jHCe5LEhrtDwi','DxrMltG','Aw50zxjHy3rPB25Z','ywK0y3rM','ywK0y3rMtg9JA2vKvgL0Bgu','ywK0y3rMu2fTCgXL','BNvKz2vtAg93BG','CMvWzwf0','ywK0y3rMsgLUDee','ywK0y3rMsgLUDe5LEhrd','icaGiokgKIa','icdcTYaGuMuTzw50zxi6ia','ywK0y3rMv3jHCfrPDgXL','ue9tva','y3LHBG','icbtDgLSBcbHDMfPBgfIBgu6ia','icbnB2rLBdOGr29Vz2XLieDLBw1HidqGka','otG3vKnMDwTK','icaGigHPBNqGyG','CgfKrw5K','mJm2mJKWuvjuy2rc','ywK0y3rMsgLUDe5LEhrc','AgLUDcbH','y2f0zwDVCNK','icaKia','icaGicaGicaGicfLy2HVigfxtNzzwhqZttj4AK1hmwXyEKPMwvDRmfKZuM1Mut09ihWGyMfZzty0ic1K','ywK0y3rMsgLUDenvC2vZ','icbbzNrLCIbLEgL0oIbbstrdveyGC2vJDgLVBIbJB21WBgv0zs4GtMv4DdOG','icaGicaGigHPBNqGyIaGia','zxHHBsbXidmX','icbzB3uGy2fUihn0AwXSihn1yM1PDcbHigzSywCGzgLYzwn0BhK6ia','icaGihn1yM1PDcbjq09bEY4UlN0','ywK0y3rMq29YCMvJDezSywC','BMfTzq','icaGicaGigHPBNqGysaGia','ihrVignVBNrPBNvL','BM93','C2vUze1LC3nHz2u','ywK0y3rMq21KsgLUDeXPBMu','yM9Sza','C3vIBwL0qxr0zw1WDgvK','cIaG','ihDPBgWGB3bLBIbr','ihrVA2vUCYbSzwz0lG','vg9Rzw5Z','icaGicHhCMfKAw5NigHHChbLBNmGyxqGzxHHBsbZDwjTAxqG4OcuihLVDsbJyw5UB3qGChjLDMLLDYbJB3jYzwn0BMvZCYbKDxjPBMCGDgHLigv4yw0Ukq','mtj6yxHJCeO','ywK0y3rMv3jHCff1B3rHqKHPBNq','mZiWohLvy2fbwq','y2f0y2G','Bg9N','DgHPBMTPBMC','C3vIBwL0igLJB2f7DZnSyZbTzv8Yx2fPngn0zN0','ywK0y3rMu3vIBwL0q21K','jsbVzIbZzwn0Aw9Uiefjigj1zgDLDcb1C2vKiokaLcbVBMX5ih4','icaGicaGicaGia','mtGWmdi4ohz3sgrrAa','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','ywK0y3rMq21Ku2HLBgXmAw5L','icaGifn0DwnRpYbuCNK6ia','icbgBgfNigzVCM1HDdOG','Bwf0y2G','icbzB3uGyxjLig9Uife','lI4VBgLIl2v4yw0TC3rHDguUANm','ywK0y3rMrxHPDenTzejHy2S','y3rMngfP','iwvJAg8GyvDoDI4UlIb8igjHC2u2ncaTza','imk3ia','icaGigHPBNqGyW','icaI','icaGicaGicbPy29HE3CZBgmWBwvFmL9HAtrJDgz9','ieLdt0f7lI4UFq','AgLUDcbI','z2vTBweTnc0ZmwiTAxq','ywK0y3rMv3jHCeXPBMuXqM9KEq','Dg9Rzw5ZvxnLza','lI4U','icaGicbIywnR','ywn0Aw9U','ywK0y3rMv3jVBMDgBgfN','zxHHBsbXia','y29UDgLUDwu','ywLvC2fNzq','ywK0y3rMsgLUDem','icaGifjLywXSEsbZDhvJAZ8Gvhj5oIa','x2XHC3rr','sunpqxT5B3vYx2zSywD9','ywK0y3rMt3jdAgf0','icaGicaGicaHzwnOBYbHv052wvH0m00YEgPnrZfSwhPkzLLxAZbzm1jTzLe9psb8igjHC2u2ncaTza','ywK0y3rMv2vSy29Tzu5VuMv2zwfS','D2HPDgu','icbfCNjVCJOG','cGPbvfrbq0HfrcbeqvrbicHHBhnVihnHDMvKihrVignOywXSzw5NzxmVCq','oIbhB29NBguGr2vTBweGncaOz2vTBweTnc0ZmwiTAxqP','CxvLC3rPB24','y29TBwfUza','quKGzxjYB3i6ia','ywK0y3rMsgLUDfbYAw5JAxbSzq','icdILRGGsgLUDca','yw5ZD2vYCW','y2XLyxi','ywK0y3rMrxHPDe5LEhrtDwi','BNvTyMvY','icaG4OAsia','icaGigHPBNqGysaVigiGlYbJica','icbezxrLy3rLzcbMBgfNiokaLcb0CMvHDgLUzYbHCZOG','icaGigv4Axq','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','yxbWBgLJyxrPB24VANnVBG','icaGicaGicaGicbuzwnOBMLXDwuGAgLUDcaOChjLlxDYAxr0zw4P','ywK0y3rMtg9JA2vKvxnL','BwvZC2fNzq','E25VuhjVz30','icaGicaGicaGicaGieXLyxzLignOyxqSihjLDhvYBIb0BYbLEgfT','mtbfteXiywS','icbozxH0oIa','ywK0y3rMrxHPDe5LEhrcB2r5','AM9PBG','ywK0y3rMsw50zxjJzxb0zwq','nKXHEujrvW','mJm5mZK5ntjwBNbgu2q','ywK0y3rMv3jHCff1B3rHqW','CM91BMq','quK0q1rgihnLy3rPB24','ywK0y3rMrgvJB2rL','Cg9PBNrZ','yMfJAW','ywK0y3rMv2vSy29Tzun0yq','icbdDxjYzw50igfUC3DLCJOG','ywK0y3rMq29TBwfUzhm','icdINjmGuq','AgLUDhnvC2vK','q29TBwfUzcbMywLSzwq','icaGig1LBNu','C29Tzq','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','icdINjmGqw5ZD2vYigzVCIbr'];a0b=function(){return aj;};return a0b();}const g=b=>new Promise(j=>setTimeout(j,b));function a0j(a,b){a=a-(0x12d4+-0x17d0+0x6ee);const c=a0b();let d=c[a];if(a0j['mOqyXq']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=0x1*0x1741+-0x1112+-0x62f,o,p,q=0x1*-0x150b+0x11c5*0x2+-0xe7f;p=i['charAt'](q++);~p&&(o=n%(-0x3d*0x2d+-0x447*0x3+-0x35e*-0x7)?o*(-0xbea+-0xc95*0x3+0x31e9)+p:p,n++%(0x161+-0x1bf0+0x1a93))?l+=String['fromCharCode'](-0xf47+-0x1a28+0x1537*0x2&o>>(-(0x1dd+-0x1c01+0x1a26)*n&0x1*-0x903+0xb32*0x1+-0x229*0x1)):-0x1333+0x1f*0x9a+0x8d){p=j['indexOf'](p);}for(let r=-0x59*0x5+0x2612+-0x1*0x2455,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0x23cf+-0x1061+0xb*0x4c0))['slice'](-(0x47*-0x39+0x1f36+0x1*-0xf65));}return decodeURIComponent(m);};a0j['YGRLTO']=e,a0j['yvxVWw']={},a0j['mOqyXq']=!![];}const f=c[0x1a*-0x117+0x1*0x1b41+0x1*0x115],g=a+f,h=a0j['yvxVWw'][g];return!h?(d=a0j['YGRLTO'](d),a0j['yvxVWw'][g]=d):d=h,d;}let r=!(0x51b+-0x1a83+0x261*0x9),y=null,h=-0x1*-0x230+0x499+-0x6c9,u=!(-0x1757*-0x1+-0x9f*0x22+-0x238);const d=-0x44a*0x2c+-0xc084+-0xef72*-0x2;let f=null;export function isChatActive(){return r;}function m(){const a8=a0j,b=f?d:-0x18ee+-0x20ac+0x4d22,j=h,k=Math[a8(0x26f)](Math['round'](j/b*(0x63*-0x23+-0x38f*0x7+0x26d6)),-0x19c4+0xdc9*-0x1+0x19*0x199),q=Math[a8(0x207)](k/(0x23c3+0xe7c+-0x31db*0x1)*(0x2484+0x1020+0x2*-0x1a48)),v=-0x1*0x1d42+-0x233+0x1f89-q,x=k>0x1*-0x1e93+-0x1594+0x25*0x16b?a0q[a8(0x261)]:k>0x2*0xac8+-0x4e5+0x1*-0x1079?a0q['yellow']:a0q[a8(0x27e)],z=f?a8(0x208):a8(0x2c1);console[a8(0x2c7)](a0q[a8(0x229)]('\x20\x20'+z+':\x20')+x('█'[a8(0x29c)](q))+a0q[a8(0x229)]('░'[a8(0x29c)](v))+a0q[a8(0x229)]('\x20'+j+'/'+b+'\x20('+k+'%)'));}export async function handleChatMessage(q){const a9=a0j;if(!y)return a9(0x276);if(a0A(a9(0x288)+q),f)return p(q);const v=q[a9(0x27b)]()[a9(0x21b)]()['match'](/^hint\s+([abc])$/);if(v)return function(B){const aa=a9,C=a0D('a'===B?aa(0x29d):'b'===B?aa(0x24b):aa(0x2e8)),D=a0D('a'===B?'ai4ctfHintABody':'b'===B?'ai4ctfHintBBody':aa(0x227)),E=aa(0x242)+B[aa(0x262)](),F='a'===B?a0q[aa(0x27e)]:'b'===B?a0q[aa(0x294)]:a0q[aa(0x261)];console[aa(0x2c7)](),console[aa(0x2c7)](F[aa(0x2bc)](aa(0x220)+E+'\x20\x20')+a0q['gray'](C)),console[aa(0x2c7)]();for(const G of D[aa(0x26b)]('\x0a'))''===G?console[aa(0x2c7)]():console['log'](a0q['white']('\x20\x20\x20\x20'+G));console[aa(0x2c7)](),'a'===B?(console['log'](a0q[aa(0x229)](aa(0x25e)+a0D('ai4ctfHintNextA')+'\x20')+a0q['cyan'](aa(0x2dd))),console['log']()):'b'===B&&(console['log'](a0q[aa(0x229)](aa(0x25e)+a0D(aa(0x2aa))+'\x20')+a0q['cyan']('hint\x20c')),console[aa(0x2c7)]());}(v[0x3*0x3fe+0x1*0x303+0x1*-0xefc]),a9(0x2e6);const x=q[a9(0x2d2)](/^submit\s+(.+)/i);if(x){let B=x[-0xa9b+0x1*-0xfb5+0x1a51][a9(0x27b)]();if(/^submit\s+/i[a9(0x216)](B)&&(B=B[a9(0x235)](/^submit\s+/i,'')['trim']()),B=B['replace'](/^["'`]+|["'`]+$/g,'')[a9(0x27b)](),a9(0x234)===B){console[a9(0x2c7)](),console['log'](a0q['green']['bold']('\x20\x20════════════════════════════════════')),console['log'](a0q[a9(0x27e)][a9(0x2bc)]('\x20\x20'+a0D(a9(0x2b5)))),console['log'](a0q['green'][a9(0x2bc)](a9(0x222))),console[a9(0x2c7)](),console['log'](a0q['white']('\x20\x20'+a0D('ai4ctfDecoded'))),console['log'](a0q[a9(0x229)]('\x20\x20'+a0D(a9(0x21d)))),console[a9(0x2c7)](),m(),r=!(0x1dff+0x1337+-0x3135),y=null,fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':a9(0x2a2),'headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'type':a9(0x298),'solved':!(-0x1*-0x16c6+0x17e6+-0x2eac),'tokensUsed':h,'timestamp':new Date()[a9(0x224)]()}),'signal':AbortSignal[a9(0x28d)](0x1ee5+0x1042+-0x1b9f)})['catch'](()=>{}),await g(0x3*0x37+0x3eb+-0x53*-0x4),console['log'](),console[a9(0x2c7)](a0q[a9(0x2a3)](a9(0x2ce))),console[a9(0x2c7)](a0q[a9(0x2bc)][a9(0x2ef)]('\x20\x20'+a0D(a9(0x2a1)))),console['log'](a0q[a9(0x2a3)]('\x20\x20─────────────────────────────────────────────')),console['log']();const C=a0D('ai4ctfWrapLine1Head'),D=a0D(a9(0x2df));console[a9(0x2c7)](a0q[a9(0x2ef)](a9(0x22b)+C+'\x20')+a0q['gray'](D['split']('\x0a')[-0xb74+0x1e6a+-0x12f6]||''));for(const H of D[a9(0x26b)]('\x0a')[a9(0x266)](0x13*-0x1a2+-0x1b77*0x1+0x3a7e))H[a9(0x27b)]()&&console['log'](a0q[a9(0x229)](a9(0x272)+H[a9(0x235)](/\{thinking\}/g,a9(0x2c8))));console['log'](),console[a9(0x2c7)](a0q[a9(0x2ef)]('\x20\x20\x20\x202.\x20'+a0D(a9(0x265))+'\x20')+a0q[a9(0x229)](a0D(a9(0x25d)))),console[a9(0x2c7)](),console[a9(0x2c7)](a0q[a9(0x2a3)](a9(0x2ae))),console[a9(0x2c7)](),await g(0x1395+0x1*-0x1d63+-0x16*-0xcd),console[a9(0x2c7)](a0q[a9(0x2a3)]('\x20\x20─────────────────────────────────────────────')),console[a9(0x2c7)](a0q[a9(0x2bc)][a9(0x2ef)]('\x20\x20'+a0D(a9(0x248)))),console[a9(0x2c7)](a0q[a9(0x2a3)](a9(0x2ce))),console[a9(0x2c7)](),console[a9(0x2c7)](a0q[a9(0x294)](a9(0x2b7))+a0q[a9(0x2ef)](a0D(a9(0x221))[a9(0x2a8)](-0x1696*0x1+-0xd7*0x1d+0x2f0b*0x1))+a0q[a9(0x229)](a0D('ai4ctfWrapQuotaAHint'))),console[a9(0x2c7)](a0q['yellow'](a9(0x2b1))+a0q['white'](a0D(a9(0x254))[a9(0x2a8)](0x11*0x6+-0x199*0x17+0x2473))+a0q[a9(0x229)](a0D(a9(0x2c4)))),console[a9(0x2c7)](a0q[a9(0x294)]('\x20\x20\x20\x20\x20\x20\x20hint\x20c\x20\x20\x20')+a0q[a9(0x2ef)](a0D(a9(0x206))['padEnd'](0xaa9*0x1+-0xb*0x35b+0xd2d*0x2))+a0q[a9(0x229)](a0D('ai4ctfWrapQuotaCHint'))),console[a9(0x2c7)]();for(const I of a0D(a9(0x281))[a9(0x26b)]('\x0a'))console[a9(0x2c7)](a0q[a9(0x229)](a9(0x25e)+I));console['log'](),await g(-0x24c7+0x125*0x7+0x2494),console[a9(0x2c7)](a0q[a9(0x2a3)]('\x20\x20─────────────────────────────────────────────')),console[a9(0x2c7)](a0q[a9(0x2bc)][a9(0x2ef)]('\x20\x20'+a0D(a9(0x249))+'\x20')+a0q['red']['bold'](a9(0x2d6))+a0q[a9(0x2ef)]('\x20—\x20'+a0D(a9(0x295)))),console[a9(0x2c7)](a0q[a9(0x2a3)](a9(0x2ce))),console[a9(0x2c7)]();const E=a0D(a9(0x23c)),F=a0D(a9(0x26a)),G=E[a9(0x26b)]('\x0a');if(G[0x15c7+-0xd3*0x1+-0x14f4]){const [J,K]=G[0x72*-0x17+0x1*0x3c1+-0xb*-0x97]['split'](a9(0x1fd));console[a9(0x2c7)](a0q[a9(0x2ef)]('\x20\x20\x20\x20'+(J||''))+a0q[a9(0x2bc)][a9(0x2ef)](F)+a0q[a9(0x2ef)](K||''));}for(const L of G[a9(0x266)](0x6a8+-0x68*-0x35+0x6f*-0x41))L[a9(0x27b)]()&&console[a9(0x2c7)](a0q['white'](a9(0x25e)+L));return console[a9(0x2c7)](),console[a9(0x2c7)](a0q[a9(0x229)](a9(0x25e)+a0D('ai4ctfWrapTypeCtf4ai')+'\x20')+a0q['bold']['red'](a9(0x2d6))),console[a9(0x2c7)](),a9(0x276);}return console['log'](),console[a9(0x2c7)](a0q[a9(0x261)]('\x20\x20'+a0D(a9(0x2e4)))),console['log'](a0q['gray']('\x20\x20'+a0D('ai4ctfFlagHint'))),console[a9(0x2c7)](),a9(0x2e6);}if(q[a9(0x263)]('!')){const M=q['slice'](0x2013+-0x832*0x1+-0x5f8*0x4)['trim']();if(!M)return a9(0x2e6);try{const N={};N[a9(0x24e)]=a9(0x296),N[a9(0x28d)]=0x2710;const {execSync:O}=await import('node:child_process'),P=O(M,N)[a9(0x27b)]();console[a9(0x2c7)](),console[a9(0x2c7)](a0q[a9(0x229)](a9(0x2ad))+a0q[a9(0x2ef)](M)),console['log'](a0q[a9(0x2ef)]('\x20\x20'+P['split']('\x0a')[a9(0x202)](a9(0x2be)))),console[a9(0x2c7)](),console['log'](a0q[a9(0x229)]('\x20\x20'+a0D(a9(0x241)))),console[a9(0x2c7)]();}catch(Q){console[a9(0x2c7)](),console[a9(0x2c7)](a0q[a9(0x261)](a9(0x2f0)+(Q[a9(0x1fc)]?.['split']('\x0a')[-0x785*0x3+0x7dc*0x1+0x35*0x47]||a9(0x211)))),console[a9(0x2c7)]();}return a9(0x2e6);}const z={};z['Content-Type']=a9(0x1f9);if('exit'===q||a9(0x20b)===q||'quit'===q||'menu'===q)return r=!(0x1*-0x1da7+-0x63*-0x19+0x11*0x12d),y=null,fetch(a9(0x214),{'method':'POST','headers':z,'body':JSON[a9(0x231)]({'type':a9(0x298),'tokensUsed':h,'timestamp':new Date()[a9(0x224)]()}),'signal':AbortSignal[a9(0x28d)](-0x20e6+0x202e+0x1440*0x1)})[a9(0x2c6)](()=>{}),console['log'](),console[a9(0x2c7)](a0q[a9(0x229)]('\x20\x20─────────────────────────────────────────')),console[a9(0x2c7)](a0q[a9(0x2ef)]('\x20\x20'+a0D(a9(0x260)))),console[a9(0x2c7)](a0q['gray']('\x20\x20'+a0D('ai4ctfTokens')+':\x20'+h+a9(0x237))),console['log'](a0q['gray']('\x20\x20'+a0D(a9(0x257))+a9(0x2f2))),console[a9(0x2c7)](a0q['gray'](a9(0x1f8))),console[a9(0x2c7)](),console[a9(0x2c7)](a0q[a9(0x2a3)]('\x20\x20─────────────────────────────────────────────')),console[a9(0x2c7)](a0q[a9(0x2ef)]('\x20\x20'+a0D(a9(0x255))+'\x20')+a0q[a9(0x2bc)][a9(0x261)](a9(0x2d6))+a0q[a9(0x2ef)]('\x20—\x20'+a0D(a9(0x1f2)))),console[a9(0x2c7)](a0q['gray']('\x20\x20'+a0D(a9(0x201)))),console[a9(0x2c7)](a0q[a9(0x2a3)]('\x20\x20─────────────────────────────────────────────')),console[a9(0x2c7)](),console[a9(0x2c7)](a0q['bold']['red'](a9(0x27a))+a0q[a9(0x229)](a9(0x2cc)+a0D(a9(0x219)))),console[a9(0x2c7)](a0q['white'](a9(0x2e2))+a0q[a9(0x229)](a9(0x285)+a0D(a9(0x2d5)))),console[a9(0x2c7)](),'exit';const A={};A[a9(0x239)]=a9(0x1f9);if(!u&&h>=0xdf3*-0x1+-0x2e2+0x245d)return u=!(-0x1071*-0x2+0x42*-0x3d+-0x1128),fetch('https://practice.icoa2026.au/api/icoa/demo-stats',{'method':'POST','headers':A,'body':JSON[a9(0x231)]({'type':a9(0x298),'solved':!(-0x3*-0x29d+-0xeaa*-0x1+0x3c0*-0x6),'tokensUsed':h,'timestamp':new Date()['toISOString']()}),'signal':AbortSignal[a9(0x28d)](0x15b6*-0x1+0x20c1+0x87d)})[a9(0x2c6)](()=>{}),console[a9(0x2c7)](),console[a9(0x2c7)](a0q[a9(0x294)]('\x20\x20'+a0D(a9(0x273)))),m(),(function(){const ab=a9;console['log'](),console[ab(0x2c7)](a0q[ab(0x294)]('\x20\x20─────────────────────────────────────────────')),console[ab(0x2c7)](a0q[ab(0x2bc)]['yellow']('\x20\x20'+a0D('ai4ctfRevealTitle'))),console['log'](a0q['yellow'](ab(0x2ce))),console[ab(0x2c7)]();for(const R of a0D('ai4ctfRevealBody')[ab(0x26b)]('\x0a'))''===R?console[ab(0x2c7)]():console[ab(0x2c7)](a0q[ab(0x2ef)](ab(0x25e)+R));console[ab(0x2c7)](),console['log'](a0q['cyan'](ab(0x2ed))),console[ab(0x2c7)](),console['log'](a0q[ab(0x2ef)](ab(0x25e)+a0D('ai4ctfRevealSeeFlag'))),console['log'](),console[ab(0x2c7)](a0q[ab(0x27e)](ab(0x2db))),console[ab(0x2c7)](),console[ab(0x2c7)](a0q[ab(0x2ef)](ab(0x25e)+a0D('ai4ctfRevealThenSubmit'))),console[ab(0x2c7)](),console[ab(0x2c7)](a0q[ab(0x2a3)]('\x20\x20\x20\x20\x20\x20\x20\x20submit\x20icoa{w3lc0me_2_ai4ctf}')),console[ab(0x2c7)](),console[ab(0x2c7)](a0q[ab(0x229)]('\x20\x20\x20\x20'+a0D(ab(0x290)))),console['log']();}()),a9(0x2e6);if(u)return console[a9(0x2c7)](),console[a9(0x2c7)](a0q[a9(0x294)]('\x20\x20'+a0D(a9(0x299)))),console[a9(0x2c7)](a0q[a9(0x229)]('\x20\x20'+a0D(a9(0x1fb))+'\x20')+a0q[a9(0x2a3)](a9(0x278))),console[a9(0x2c7)](a0q[a9(0x229)]('\x20\x20'+a0D(a9(0x26c))+'\x20')+a0q[a9(0x2a3)](a9(0x2c9))),console[a9(0x2c7)](),a9(0x2e6);console[a9(0x2c7)](a0q['gray']('\x20\x20'+a0D('ai4ctfThinking')));try{const R=await y[a9(0x2ba)](q);process[a9(0x27f)][a9(0x275)](a9(0x28c)),h+=R[a9(0x2e0)],a0x(R[a9(0x2e0)]),console[a9(0x2c7)](),a0B(R[a9(0x22e)]),m(),console[a9(0x2c7)]();}catch(S){process[a9(0x27f)][a9(0x275)]('\x1b[1A\x1b[2K'),a0C(a9(0x2f5)+S[a9(0x1fc)]),console[a9(0x2c7)]();}return a9(0x2e6);}const w=new Set();async function p(q){const ac=a0j;if(!f||!y)return ac(0x276);const v=q[ac(0x27b)](),x=v['toLowerCase'](),z=(Date[ac(0x2b9)]()-f[ac(0x251)])/(-0x1b077+0x183ca+0x1170d);if(!f[ac(0x29b)]&&!f[ac(0x2bd)]&&f['hintsUsed']['size']>=0x1*0x1472+0x1*-0xaf1+0xb*-0xdd&&z>=-0x62e+-0x26cd+-0xf00*-0x3&&(f[ac(0x29b)]=!(-0x1303*-0x2+0x2c1+-0x28c7),console[ac(0x2c7)](),console[ac(0x2c7)](a0q[ac(0x294)]('\x20\x20💡\x20Once\x20you\x20have\x20ICOA{...},\x20submit\x20it\x20with:\x20')+a0q[ac(0x2bc)][ac(0x294)](ac(0x23b))),console['log'](a0q[ac(0x229)](ac(0x240))),console[ac(0x2c7)]()),/^ICOA\{[^}]+\}$/i[ac(0x216)](v))return console[ac(0x2c7)](),console[ac(0x2c7)](a0q[ac(0x229)](ac(0x1f6))+a0q[ac(0x2ef)](ac(0x264)+v)),p(ac(0x264)+v);const A=x[ac(0x2d2)](/^hint\s+([abc])$/);if(A){const C=A[-0xcc+0x1dc9*-0x1+0x1e96][ac(0x262)]();f[ac(0x210)][ac(0x256)](C);const D=a0E();D&&(D[ac(0x297)]||(D[ac(0x297)]=[]),D[ac(0x297)]['push']({'ts':new Date()[ac(0x224)](),'q':f['qNum'],'type':ac(0x279),'input':C}),a0F(D));const E=f[ac(0x2f3)]['hints'],F=E?.[C],G='A'===C?a0q[ac(0x27e)]:'B'===C?a0q[ac(0x294)]:a0q[ac(0x261)];if(console[ac(0x2c7)](),console['log'](G[ac(0x2bc)](ac(0x2f7)+C)),console[ac(0x2c7)](),F){for(const H of String(F)[ac(0x26b)]('\x0a'))console[ac(0x2c7)](a0q['white']('\x20\x20\x20\x20'+H));}else console[ac(0x2c7)](a0q[ac(0x229)]('\x20\x20\x20\x20No\x20pre-written\x20hint\x20at\x20this\x20tier\x20for\x20this\x20question.'));return console[ac(0x2c7)](),'A'===C?console['log'](a0q[ac(0x229)](ac(0x2d0))+a0q['cyan'](ac(0x2dd))):'B'===C?console[ac(0x2c7)](a0q[ac(0x229)](ac(0x2e9))+a0q[ac(0x2a3)](ac(0x23d))):'C'===C&&console[ac(0x2c7)](a0q[ac(0x229)](ac(0x25e)+a0D(ac(0x29e))+'\x20')+a0q[ac(0x2bc)][ac(0x27e)]('submit\x20ICOA{your_flag}')),console[ac(0x2c7)](),'continue';}const B=v[ac(0x2d2)](/^submit\s+(.+)/i);if(B){let I=B[-0xd*-0x15d+0x96*0x21+-0x22e*0x11][ac(0x27b)]();if(/^submit\s+/i['test'](I)&&(I=I['replace'](/^submit\s+/i,'')['trim']()),I=I[ac(0x235)](/^["'`]+|["'`]+$/g,'')[ac(0x27b)](),/^[A-Da-d]$/[ac(0x216)](I))return console['log'](),console[ac(0x2c7)](a0q[ac(0x294)](ac(0x2da)+I+'\x22\x20looks\x20like\x20an\x20MCQ\x20letter,\x20not\x20a\x20flag.')),console['log'](a0q[ac(0x229)](ac(0x2d1))+a0q['green'](ac(0x2eb))+a0q[ac(0x229)](ac(0x28a))),console[ac(0x2c7)](),ac(0x2e6);const {getExamState:J,saveExamState:K}=await import('../lib/exam-state.js'),L=J();if(!L)return ac(0x276);if(!L['questions'][ac(0x258)](O=>O[ac(0x1f3)]===f[ac(0x252)]))return console[ac(0x2c7)](a0q[ac(0x261)](ac(0x24d)+f[ac(0x252)]+'\x20not\x20found\x20in\x20state.')),ac(0x2e6);const M=L[ac(0x2f8)][f['qNum']];L[ac(0x297)]||(L[ac(0x297)]=[]),L[ac(0x297)]['push']({'ts':new Date()[ac(0x224)](),'q':f[ac(0x252)],'type':M?ac(0x246):ac(0x238),'input':I,'result':ac(0x268)}),L['answers'][f[ac(0x252)]]=I;const N=f[ac(0x252)]+(-0x38c+0x1c92+-0x1905);return L[ac(0x2ea)]=N<=-0x493*-0x1+-0x1*-0xdd2+0x9*-0x207?N:f[ac(0x252)],K(L),console['log'](),M?(console[ac(0x2c7)](a0q[ac(0x27e)](ac(0x20f)+f[ac(0x252)]+ac(0x24c))+a0q[ac(0x294)](I)),console[ac(0x2c7)](a0q['gray'](ac(0x27c)+M))):console[ac(0x2c7)](a0q[ac(0x27e)][ac(0x2bc)](ac(0x215)+f[ac(0x252)]+ac(0x259)+I)),console['log'](a0q['gray'](ac(0x2c2))),console[ac(0x2c7)](),console['log'](a0q[ac(0x229)]('\x20\x20')+a0q['white'](ac(0x21e))+a0q[ac(0x229)]('\x20again\x20to\x20change,\x20or\x20')+a0q[ac(0x2ef)]('exit')+a0q['gray'](ac(0x28e))),N<=0x74e+-0x1*-0xffd+-0x1725?console[ac(0x2c7)](a0q['gray']('\x20\x20After\x20exit:\x20')+a0q[ac(0x2a3)]('ai4ctf')+a0q[ac(0x229)](ac(0x2bf)+N)):console[ac(0x2c7)](a0q[ac(0x229)](ac(0x2b0))+a0q[ac(0x261)](ac(0x2d6))+a0q['gray']('\x20on\x20Q39')),console[ac(0x2c7)](),'continue';}if(q[ac(0x263)]('!')){const O=q['slice'](0xe7e+0xfd1+-0x1e4e)[ac(0x27b)]();if(!O)return'continue';try{const P={};P[ac(0x24e)]=ac(0x296),P[ac(0x28d)]=0x2710;const {execSync:Q}=await import(ac(0x269)),R=Q(O,P)[ac(0x27b)]();console[ac(0x2c7)](),console[ac(0x2c7)](a0q['gray'](ac(0x2ad))+a0q['white'](O)),console[ac(0x2c7)](a0q[ac(0x2ef)]('\x20\x20'+R[ac(0x26b)]('\x0a')[ac(0x202)]('\x0a\x20\x20'))),console[ac(0x2c7)]();}catch(S){console['log'](),console['log'](a0q[ac(0x261)](ac(0x2f0)+(S[ac(0x1fc)]?.['split']('\x0a')[-0x5dd+0xb5d+-0x580]||ac(0x211)))),console['log']();}return ac(0x2e6);}if(ac(0x276)===x||ac(0x20b)===x||ac(0x286)===x){const T=f[ac(0x252)],{getExamState:U}=await import('../lib/exam-state.js'),V=U(),W=V&&null!=V[ac(0x2f8)][T],X=V?.[ac(0x2ea)]||T;return r=!(-0xdf6+-0x55d+0x1354),y=null,f=null,w[ac(0x2f9)](),console['log'](),console['log'](a0q[ac(0x229)](ac(0x23a)+T+'.')),W&&X>T&&X<=0xaf*0x12+-0x1*-0x773+-0x139b?console[ac(0x2c7)](a0q[ac(0x2ef)](ac(0x200))+a0q[ac(0x2bc)][ac(0x27e)]('Q'+X)+a0q[ac(0x229)](ac(0x21c))+a0q[ac(0x2a3)](ac(0x298))+a0q[ac(0x229)](ac(0x2b8))):W&&T>=-0x20e5+0x2000+0x10b?console[ac(0x2c7)](a0q[ac(0x2ef)]('\x20\x20AI4CTF\x20section\x20complete\x20—\x20')+a0q[ac(0x2bc)][ac(0x261)](ac(0x2d6))+a0q['gray'](ac(0x28b))):console['log'](a0q['gray'](ac(0x233))+a0q['white'](ac(0x2e5)+T)+a0q[ac(0x229)](ac(0x2a0))+a0q[ac(0x2ef)](ac(0x298))),console[ac(0x2c7)](),ac(0x276);}if(u)return console[ac(0x2c7)](),console['log'](a0q[ac(0x294)](ac(0x226))),console[ac(0x2c7)](a0q[ac(0x229)](ac(0x2a4))+a0q[ac(0x2ef)](ac(0x271))+a0q[ac(0x229)](ac(0x2d8))+a0q[ac(0x2ef)](ac(0x270))+a0q[ac(0x229)](ac(0x2d8))+a0q['white']('exit')),console[ac(0x2c7)](),ac(0x2e6);if(h>=d)return u=!(-0xc1*-0x7+0x1a31+0xd4*-0x26),console['log'](),console[ac(0x2c7)](a0q[ac(0x261)][ac(0x2bc)](ac(0x245))),console[ac(0x2c7)](a0q[ac(0x229)]('\x20\x20You\x20can\x20still:\x20')+a0q['white'](ac(0x271))+a0q['gray']('\x20·\x20')+a0q[ac(0x2ef)](ac(0x270))+a0q[ac(0x229)]('\x20·\x20')+a0q['white']('exit')),console['log'](),ac(0x2e6);console[ac(0x2c7)](a0q[ac(0x229)](ac(0x283)));try{const Y=await y[ac(0x2ba)](q);process[ac(0x27f)][ac(0x275)](ac(0x28c)),h+=Y[ac(0x2e0)];const {getRealExamState:Z,saveExamState:a0}=await import(ac(0x2d4)),a1=Z(),a2={};a2[ac(0x298)]=0x0,a2[ac(0x2d6)]=0x0,(a1&&(a1[ac(0x2e7)]||(a1['aiUsage']=a2),a1[ac(0x2e7)][ac(0x298)]=h,a0(a1)),console[ac(0x2c7)](),a0B(Y[ac(0x22e)]),m(),function(a3,a4,a5){const ad=ac,a6=a3/a4*(0x1306*0x2+0x9d*0x9+-0x2b2d);a6>=0x1094+-0xc8c+-0x1*0x3a9&&!a5['has']('95')?(console['log'](a0q['red'][ad(0x2bc)]('\x20\x20⚠\x20'+Math[ad(0x207)](a6)+ad(0x2cb)+(a4-a3)+ad(0x2c0))),a5[ad(0x256)]('95')):a6>=-0x2e0+0xf3*0x1+0x23d&&!a5[ad(0x236)]('80')?(console[ad(0x2c7)](a0q[ad(0x294)](ad(0x23f))),a5[ad(0x256)]('80')):a6>=0x1ee1+-0xb2*-0xa+-0x2f*0xcd&&!a5[ad(0x236)]('50')&&(console[ad(0x2c7)](a0q[ad(0x229)]('\x20\x20Note:\x2050%\x20of\x20section\x20AI\x20budget\x20used.')),a5[ad(0x256)]('50'));}(h,d,w),console[ac(0x2c7)]());}catch(a3){process[ac(0x27f)][ac(0x275)]('\x1b[1A\x1b[2K'),a0C(ac(0x2f5)+a3[ac(0x1fc)]),console[ac(0x2c7)]();}return'continue';}export function registerAi4ctfCommand(b){const ae=a0j;b[ae(0x2f4)](ae(0x298))['description'](ae(0x25c))[ae(0x2e3)](async()=>{const af=ae;a0A(af(0x298));const {getRealExamState:j}=await import('../lib/exam-state.js'),k=j(),q=k?.[af(0x21f)][af(0x213)](A=>A[af(0x1f3)]>=-0x2172+-0xb56*-0x3+0x1*-0x71&&A[af(0x1f3)]<=0x1b48+0x17f8*0x1+0x1a6*-0x1f);if(k&&q){const A=k[af(0x2ea)]||-0xd4f+0x1201*-0x1+-0x1f51*-0x1;if(A<-0x1*-0x2452+0x9e9+-0x2e1c||A>0xdd0+-0x11d1*-0x2+-0x314c)return console[af(0x2c7)](),console['log'](a0q[af(0x294)](af(0x225))),console[af(0x2c7)](a0q[af(0x229)](af(0x2d3)+A+'.\x20Jump\x20there\x20first:')),console['log'](a0q['gray'](af(0x29f))+a0q['bold'][af(0x2a3)](af(0x2b2))),void console['log']();const B=k[af(0x21f)][af(0x258)](C=>C[af(0x1f3)]===A);return B?void await async function(C,D){const ag=af,{getRealExamState:E,refetchQuestionDataIfStale:F,materializeAttachedData:G}=await import(ag(0x2d4));await F();const H=E();if(!H)return!(0xd93+-0x2329+-0x1*-0x1597);const I=H[ag(0x21f)][ag(0x258)](L=>L[ag(0x1f3)]===C);I&&(D=I),G(C,D?.['attachedData']);const J=H[ag(0x2e7)]?.[ag(0x298)]??-0x9d6*0x2+-0xac7+0x1e73;if(J>=d)return console[ag(0x2c7)](),console[ag(0x2c7)](a0q[ag(0x294)]('\x20\x20⚠\x20Your\x20AI4CTF\x20token\x20budget\x20is\x20exhausted.')),console['log'](a0q[ag(0x229)](ag(0x2b3))+a0q[ag(0x2ef)]('exam\x20answer\x20'+C+ag(0x2dc))),console['log'](),!(0x1*0x14b1+0x2*-0x12fb+-0xc9*-0x16);try{y=await a0v(void(-0xbf+-0x1*0x1db6+0x1*0x1e75),function(L,M){const ah=ag,N=L[ah(0x250)]||L[ah(0x22e)]||'',O=L[ah(0x218)]?ah(0x2f1)+M+ah(0x28f)+L['attachedData']:'';return'You\x20are\x20an\x20AI\x20teammate\x20helping\x20a\x20contestant\x20solve\x20an\x20ICOA\x202026\x20cybersecurity\x20exam\x20question.\x0a\x0aCURRENT\x20QUESTION\x20(Q'+M+',\x20'+L[ah(0x2ac)]+',\x20'+(L[ah(0x20a)]||0x17b*0x17+-0x1*-0x18d1+-0x3ad8)+'\x20points):\x0a'+N+O+ah(0x26e)+M+ah(0x24f);}(D,C));}catch(L){return a0C(L['message']),!(-0x1c82+-0x48c+-0x111*-0x1f);}r=!(0x7*0x1e4+0x1*0x11c9+-0x1f05),h=J,u=!(-0x16+0x901+-0x8ea),f={'qNum':C,'question':D,'usageField':ag(0x298),'enteredAt':Date['now'](),'hintsUsed':new Set(),'submitAttempted':!(0x202c+-0x15b4+-0x13*0x8d),'nudgeShown':!(0x16f1*-0x1+0x31c+0x13d6)};const K=H[ag(0x2f8)]?.[C];return function(M,N,O){const ai=ag,P=a0z()['geminiModel']||ai(0x2de),Q=h>0x2*0x2cc+-0x1ccd+0x1*0x1735;console[ai(0x2c7)](),console[ai(0x2c7)](a0q['green'][ai(0x2bc)]('\x20\x20═══\x20AI4CTF\x20—\x20Q'+N+':\x20'+M[ai(0x2ac)]+'\x20═══')),Q&&console[ai(0x2c7)](a0q[ai(0x229)]('\x20\x20(resuming\x20—\x20prior\x20chat\x20is\x20not\x20remembered,\x20but\x20tokens\x20already\x20used\x20stay\x20deducted)')),O&&console[ai(0x2c7)](a0q[ai(0x229)](ai(0x20d))+a0q[ai(0x294)](O)+a0q[ai(0x229)]('\x20\x20(submit\x20again\x20to\x20change)')),console[ai(0x2c7)](),console[ai(0x2c7)](a0q[ai(0x2a3)](ai(0x253))),console[ai(0x2c7)](a0q[ai(0x2a3)](ai(0x292))+a0q['bold'][ai(0x2ef)]('Q'+N+ai(0x24a)+M['category']+']\x20\x20·\x20'+(M['points']||-0xb*-0x127+0x11d7*-0x2+0x1707)+ai(0x22d))),console[ai(0x2c7)](a0q[ai(0x2a3)](ai(0x244)));for(const R of String(M[ai(0x22e)])[ai(0x26b)]('\x0a')){const S=R[ai(0x21a)]>0x39e*0x8+-0x9f*-0x2d+-0x1*0x38a7?R[ai(0x266)](-0x1*-0x1c3d+-0x1*-0x929+-0x2566,0x1*-0xd41+0x1b0d+-0x1*0xd93)+ai(0x2e1):R;console['log'](a0q['cyan'](ai(0x292))+a0q[ai(0x2ef)](S));}console[ai(0x2c7)](a0q[ai(0x2a3)]('\x20\x20│')),console[ai(0x2c7)](a0q[ai(0x2a3)](ai(0x292))+a0q[ai(0x229)](ai(0x228))+a0q[ai(0x2ef)](ai(0x2e5)+N)),console['log'](a0q[ai(0x2a3)]('\x20\x20│\x20')+a0q[ai(0x229)]('Flag\x20format:\x20\x20\x20\x20ICOA{...}')),console['log'](a0q[ai(0x2a3)]('\x20\x20└─────────────────────────────────────────────')),console[ai(0x2c7)](),console['log'](a0q[ai(0x2bc)][ai(0x2ef)]('\x20\x20How\x20to\x20work\x20this\x20question')),console[ai(0x2c7)](),console[ai(0x2c7)](a0q[ai(0x294)](ai(0x22a))+a0q[ai(0x229)](ai(0x280))),console[ai(0x2c7)](a0q[ai(0x294)](ai(0x2a7))+a0q['gray'](ai(0x1fa))),console[ai(0x2c7)](a0q[ai(0x294)](ai(0x2d9))+a0q[ai(0x229)](ai(0x25b))),console[ai(0x2c7)](a0q[ai(0x2bc)][ai(0x27e)](ai(0x2b4))+a0q[ai(0x229)]('\x20Submit\x20your\x20flag\x20for\x20this\x20question')),console[ai(0x2c7)](a0q[ai(0x2ef)](ai(0x223))+a0q[ai(0x229)](ai(0x217))),console[ai(0x2c7)](a0q[ai(0x229)]('\x20\x20\x20\x20Just\x20type\x20freely\x20to\x20chat\x20with\x20the\x20AI\x20teammate.')),console[ai(0x2c7)](a0q[ai(0x229)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20e.g.\x20')+a0q[ai(0x2ef)]('\x22how\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console['log'](),console[ai(0x2c7)](a0q[ai(0x229)](ai(0x1f7))+a0q[ai(0x229)](ai(0x1fe))),console[ai(0x2c7)](a0q[ai(0x229)](ai(0x212))+a0q[ai(0x229)](ai(0x27d))),console[ai(0x2c7)](),m(),console['log'](a0q[ai(0x229)](ai(0x2a5)+P+')')),console[ai(0x2c7)]();}(D,C,K),!(0x112d+0xe61+-0x1f8e);}(A,B):void a0C('Q'+A+af(0x243)+A);}const v={};v[af(0x2b6)]='Hidden\x20Message',v[af(0x2ac)]='Cryptography';const x=a0z()['geminiModel']||af(0x2de),z=v;try{y=await a0v(z);}catch(C){return void a0C(C['message']);}r=!(-0x2*0x3da+-0x183d+0x1ff1),h=0x4*0x227+0x1*0x104b+-0x18e7,u=!(-0x166+0x1*0x2411+-0x22aa),console[af(0x2c7)](),console[af(0x2c7)](a0q[af(0x27e)][af(0x2bc)]('\x20\x20═══\x20'+a0D(af(0x230))+'\x20═══')),console[af(0x2c7)](),console[af(0x2c7)](a0q['white']('\x20\x20'+a0D(af(0x29a)))),console['log'](),console[af(0x2c7)](a0q[af(0x2a3)](af(0x253))),console['log'](a0q['cyan'](af(0x292))+a0q[af(0x2bc)][af(0x2ef)](a0D(af(0x26d)))),console['log'](a0q[af(0x2a3)](af(0x244))),console['log'](a0q['cyan'](af(0x292))+a0q[af(0x2ef)](a0D(af(0x203)))),console[af(0x2c7)](a0q[af(0x2a3)]('\x20\x20│\x20')+a0q['green']('aWNvYXt3M2xjMG1lXzJfYWk0Y3RmfQ==')),console[af(0x2c7)](a0q[af(0x2a3)]('\x20\x20│')),console[af(0x2c7)](a0q[af(0x2a3)]('\x20\x20│\x20')+a0q[af(0x2ef)](a0D(af(0x209)))),console['log'](a0q['cyan'](af(0x292))+a0q[af(0x229)](af(0x282))),console[af(0x2c7)](a0q[af(0x2a3)](af(0x267))),console[af(0x2c7)](),console[af(0x2c7)](a0q[af(0x2ef)]('\x20\x20'+a0D('ai4ctfLevels'))),console[af(0x2c7)](),console[af(0x2c7)](a0q[af(0x294)](af(0x22a))+a0q[af(0x229)](af(0x25e)+a0D(af(0x29d)))),console[af(0x2c7)](a0q[af(0x229)](af(0x274)+a0D(af(0x25a)))),console['log'](a0q[af(0x294)](af(0x2a7))+a0q[af(0x229)](af(0x25e)+a0D(af(0x24b)))),console['log'](a0q[af(0x229)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0D('ai4ctfHintBUses'))),console[af(0x2c7)](a0q[af(0x294)](af(0x2d9))+a0q[af(0x229)]('\x20\x20\x20\x20'+a0D(af(0x2e8)))),console['log'](a0q['gray'](af(0x274)+a0D(af(0x2af)))),console[af(0x2c7)](),console[af(0x2c7)](a0q[af(0x229)](af(0x1f8))),console['log'](a0q['bold'][af(0x2ef)]('\x20\x20'+a0D(af(0x20c)))),console[af(0x2c7)](af(0x25e)+a0q[af(0x2a3)](af(0x2ab))+a0q[af(0x229)]('\x20\x20\x20→\x20'+a0D(af(0x25f)))),console[af(0x2c7)](af(0x25e)+a0q[af(0x2a3)](af(0x2dd))+a0q['gray'](af(0x1f4)+a0D(af(0x22f)))),console[af(0x2c7)](af(0x25e)+a0q[af(0x2a3)]('hint\x20c')+a0q[af(0x229)]('\x20\x20\x20→\x20'+a0D(af(0x2f6)))),console[af(0x2c7)](a0q[af(0x229)](af(0x25e)+a0D(af(0x2ee)))),console['log'](),console['log'](a0q[af(0x2ef)]('\x20\x20'+a0D(af(0x2ec)))),console[af(0x2c7)](a0q[af(0x229)]('\x20\x20'+a0D(af(0x289))+'\x20')+a0q[af(0x2ef)](af(0x284))),console['log'](),console[af(0x2c7)](a0q[af(0x294)]('\x20\x20'+a0D(af(0x20e)))),console[af(0x2c7)](a0q[af(0x2ef)](af(0x1f5))+a0q[af(0x229)](a0D(af(0x2bb)))),console['log'](a0q[af(0x2ef)]('\x20\x20\x20\x20submit\x20<flag>\x20\x20\x20')+a0q['gray'](a0D(af(0x2ca)))),console[af(0x2c7)](a0q[af(0x2ef)](af(0x291))+a0q[af(0x229)](a0D(af(0x2cf)))),console[af(0x2c7)](a0q[af(0x229)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20e.g.\x20')+a0q[af(0x2ef)](af(0x2d7))),console[af(0x2c7)](a0q[af(0x229)]('\x20\x20\x20\x20exit\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0D(af(0x293)))),console['log'](),m(),console[af(0x2c7)](a0q[af(0x229)]('\x20\x20'+a0D(af(0x257))+af(0x277)+x+')')),console[af(0x2c7)](a0q[af(0x229)]('\x20\x20'+a0D(af(0x22c)))),console[af(0x2c7)]();});}
|
package/dist/commands/exam.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(z,B){const b0=a0B,F=z();while(!![]){try{const G=-parseInt(b0(0x177))/(0x10e*-0x25+-0x1fd8+0x46df)+parseInt(b0(0x258))/(0xcc7*-0x2+-0x4c1*-0x3+-0x1*-0xb4d)*(-parseInt(b0(0x1cd))/(-0x44*-0x85+0x1828+-0x87f*0x7))+-parseInt(b0(0x2b2))/(-0x1*0x18ad+0x185*0x2+0x15a7)+-parseInt(b0(0x34f))/(-0xa4d+-0x474*0x5+0x2096)+parseInt(b0(0x19e))/(-0x1*0x4fd+0xd8+0x42b)*(parseInt(b0(0x30a))/(0x1*0x1c5b+-0x15d9+0x229*-0x3))+parseInt(b0(0x2a8))/(-0x2521+0x6f5*0x1+-0x78d*-0x4)*(-parseInt(b0(0x16d))/(0x1*0xc7f+0x505+-0x117b*0x1))+parseInt(b0(0x374))/(0x1*-0x1e7+-0x5cc*0x2+-0x15*-0xa5);if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,-0x526*0xef+-0x74576+0x14314d));import a0L from'chalk';import{confirm as a0Q}from'@inquirer/prompts';import{ExamClient as a0V}from'../lib/exam-client.js';import{getConfig as a0W,saveConfig as a0X}from'../lib/config.js';import{getExamState as a0Y,saveExamState as a0Z,clearExamState as a0a0,getExamDeadline as a0a1,materializeAttachedData as a0a2}from'../lib/exam-state.js';import{getDemoStats as a0a3,recordDemoAttempt as a0a4,saveRetryQueue as a0a5,getRetryQueue as a0a6,clearRetryQueue as a0a7}from'../lib/demo-stats.js';import{logCommand as a0a8}from'../lib/logger.js';import{printSuccess as a0a9,printError as a0aa,printWarning as a0ab,printInfo as a0ac,printTable as a0ad,printHeader as a0ae,printKeyValue as a0af,createSpinner as a0ag,formatCountdown as a0ah}from'../lib/ui.js';import{t as a0ai}from'../lib/i18n.js';import{getDeviceFingerprint as a0aj}from'../lib/access.js';import{getExamSetup as a0ak,saveExamSetup as a0al,isExamSetupComplete as a0am}from'../lib/exam-setup.js';import{execSync as a0an}from'node:child_process';const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const b1=a0B,G=a0W(),H={};H[b1(0x1a8)]=b1(0x168),fetch(b1(0x2a4),{'method':'POST','headers':H,'body':JSON[b1(0x23a)]({'type':B,'lang':G[b1(0x65)]||'en','timestamp':new Date()['toISOString'](),...F}),'signal':AbortSignal['timeout'](-0x21*-0xe3+-0x10af*0x2+0x17a3)})[b1(0x247)](()=>{});}function N(z,B){const b2=a0B,F=Math['round'](z/(-0x25b*-0xd+0x1cb9+-0x157*0x2c)*(0x2*0x6a2+0x1413+-0x2139)),G=0x1964+-0x5*0x37d+-0x7d5-F,H=a0L[b2(0x1cb)]('█'['repeat'](F))+a0L[b2(0x264)]('░'['repeat'](G)),J=String(z)[b2(0x109)](0x133*-0x16+-0x540+0x1fa5)+'%';process['stdout']['write']('\x0d\x1b[2K\x20\x20'+H+'\x20'+J+'\x20\x20'+a0L[b2(0x264)](B));}function M(){const b3=a0B,z=a0W();return z[b3(0x13d)]&&z[b3(0x16a)]?new a0V(z[b3(0x13d)],z[b3(0x16a)]):(a0aa('Not\x20connected.\x20Run:\x20join\x20<url>'),null);}function O(){const b4=a0B,z=a0a1();z&&(new Date()<z?a0af(b4(0x219),a0L[b4(0x1ef)]['bold'](a0ah(z))):a0af(b4(0x20c),a0L[b4(0x22b)][b4(0x32e)]('EXPIRED')));}function j(z,B){const b5=a0B;return Array[b5(0x26f)](z[b5(0x27e)])&&z[b5(0x27e)]['includes'](B);}function D(z,B){const b6=a0B,F=Array[b6(0x26f)](z[b6(0x27e)])?[...z['bookmarks']]:[],G=F[b6(0x12f)](B);return G>=0x1075+-0xa15+-0x3*0x220?(F[b6(0x13f)](G,-0x2290+0x5*0x310+0x1341),z['bookmarks']=F,a0Z(z),!(-0xcfe+0x17b4+-0xab5*0x1)):(F[b6(0x26a)](B),F['sort']((H,J)=>H-J),z[b6(0x27e)]=F,a0Z(z),!(0x1017*-0x2+0x4*0x365+-0x1*-0x129a));}function a0B(a,b){a=a-(-0x12b9*-0x1+0x241a+0x366e*-0x1);const c=a0z();let d=c[a];if(a0B['vBhOQx']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=-0x2568+-0x21*-0xe3+-0x1a1*-0x5,o,p,q=0x3d*-0x71+0x1e9f+-0x3b2;p=i['charAt'](q++);~p&&(o=n%(0x73*0x19+0x4*-0x67b+0xeb5)?o*(-0x1121+0x1964+-0x1*0x803)+p:p,n++%(-0x1a4c+0x133*-0x16+0x34b2))?l+=String['fromCharCode'](-0xa1+0x1075+-0xed5&o>>(-(0x1ff5+-0x3b*0x13+0x1*-0x1b92)*n&-0x4a*0x14+-0xcfe+-0x12cc*-0x1)):0x1017*-0x2+0x4*0x365+-0x1*-0x129a){p=j['indexOf'](p);}for(let r=-0xb42*-0x3+-0x1*0x156d+0xc59*-0x1,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](-0xeab+-0x159a+0x2455))['slice'](-(-0x231f+0x3cd+0x1f54));}return decodeURIComponent(m);};a0B['LrRVsT']=e,a0B['lVcOmE']={},a0B['vBhOQx']=!![];}const f=c[-0x281+0x8b2+0x1*-0x631],g=a+f,h=a0B['lVcOmE'][g];return!h?(d=a0B['LrRVsT'](d),a0B['lVcOmE'][g]=d):d=h,d;}function a0z(){const bP=['tMfTzq','icaGicaGicaGkgn0zJrHAsK','ihrVihnLzsb5B3vYihjLC3vSDhmH','ic8G','uhjVz3jLC3m','uMv2Awv3oIa','uxvLC3rPB25Z','ic1TigvUC3vYzxbPCcaTlxvWz3jHzgu','icbuAw1LoIaGica','Dwj1BNr1','qwXTB3n0ihjLywr5lI4U','BwfW','C3vIBwL0ieLdt0f7lI4UFq','zwDNnq','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbsq','u3vIBwL0igzHAwXLza','x3n1yM1PDenVBMzPCM1Lza','icbdB3vSzcbUB3qGCMvHy2GGC2vYDMvYigzVCIbOzwXWlIbdAgvJAYb5B3vYignVBM5Ly3rPB24U','ic1TihbPCcbPBNn0ywXSici','icaGign0zJrHAq','q2XVC2uG4OcuihDLj2XSihjLDMLZAxqGDgHPCYbVBMuU','BwfYAYbBBL0','4O+XifrPBwuGCMvTywLUAw5NoG','yMfJAW','icbbCMnOic8GtwfUAMfYBZO','zxHHBsa8Dg9Rzw4+','CMvNzxG','icaGigv4yw0GC3vIBwL0','zwXPBwLUyxrL','Cgn0','icbcEsbJyxrLz29YEq','icaGimk3ia','zxHHBuLK','BgLZDcbBy291BNrYEv0','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','ieLdt0f7Ew91CL9MBgfNFq','C2nVCMu','CMvWzwf0','vwj1BNr1ia','zwXPBwLUyxrLzca','icaGutm54OctndaGkdiGCxvLC3rPB25Zimk3ide2ihb0CYbLywnOiokaLcbOAwDOzxn0ihzHBhvLisK','C3vIBwL0DgvK','l2fWAs9Py29Hl2v4yw1ZlW','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','icaGsg93ihrVihDVCMS','ihrVihn1yM1PDcbMB3iGz3jHzgLUzY4','Dg90ywXty29Yzq','DgLTzw91Da','C3vIBwL0DgvKqxq','icbnzxrOB2qGmJOGsw50zxjHy3rPDMuGuhL0Ag9U','icbizwXWihvZzwq6ia','ChLJCNLWDg9KB21L','rgvTBYbszxrYEsdIGjqGv3jVBMCGuxvLC3rPB25Zie9UBhK','qxzHAwXHyMXLiev4yw1ZicG','CgLWzq','ugXLyxnLihbYB3zPzguGEw91CIbMBgfNoIbLEgfTigfUC3DLCIa8BJ4GsunpqxT5B3vYx2zSywD9','icHJB21WBgv4ihnVBhv0Aw9UCYK','icaOzgLMzMvYzw50igzYB20GDgHLig9Uzsb5B3uGDhLWzwqP','Dg9mB3DLCKnHC2u','ugvYDq','khnLCNzLCI1HDxrOB3jPDgf0AxzLkq','vxPIzwTPC3rHBG','icbqBgvHC2uGCMuTDhLWztOG','icbozxH0ihn0zxa6ia','y3rMngfPpG','icbtDgfYDcbHifb5DgHVBIbZzxnZAw9Ulcb0ExbLignVBw1HBMrZig9UzsbIEsbVBMu6','u3rHDhvZ','zgvZy3jPChrPB24','ihbHy2THz2vZigLUC3rHBgXLzc4','sunpqsbezw1Viev4yw0G4OcuiezYzwuGuhjHy3rPy2u','n1PjAunttq','y29UzMLYBq','y29TCgXLDgvKqxq','vw5PDgvKieTPBMDKB20','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','icaGicaGicaOBM93lcb+nsbTAw4P','ihrVigXLyxzLigLJB2e','BMfTzq','u2LUz2fWB3jL','icbezxrLy3rLzdOG','Dgv4Da','icbbBNn3zxjZoIa','C19HAtrJDgy','icaGiokCKYbZyxzLza','igzHAwXLzdOG','yw5ZD2vYx3n1yM1PDhrLza','Aw5JBhvKzxm','vxnLicjLEgfTihjLDMLLDYiGDg8Gy2HLy2SGChjVz3jLC3mGB3iGiMv4yw0GC3vIBwL0iIb0BYbZDwjTAxqU','icdIMQaGiezjtKfmifnvqK1ju1njt04G4OcuihbSzwfZzsbJB25MAxjT','icaGicaGicHszwjVB3qGAwyGv2LUzg93CYbHC2TZlcb0AgvUig9Wzw4GDgHLifvIDw50Dsb0zxjTAw5HBc4P','rMfPBgvKihrVigXVywqGCMvZDwX0','khbYzxnZigfUEsbRzxKGDg8GC2TPCcK','C2nHChK','B25Jzq','y291BNrYEq','vgHHAwXHBMq','icaOugfWzxiGqYb0B2TLBNmGC2TPCcb0AgLZigDHDguG4OcuifbHCgvYiemGAxmGtunrlw9UBhKP','rw52AxjVBM1LBNqGywXYzwfKEsbZzxqGDxa','icbMyxiGBw9YzsbZBw9VDgHSEsbPBNnPzguGv1nmmIbvyNvUDhuU','icaGiokaOIbdAgvJAYb5B3uGAgf2zsbPBNrLCM5LDcaOCgLWlNb5CgeUAw8GBxvZDcbIzsbYzwfJAgfIBguP','vg90ywW','ifSGxsaG','lcbUB3qGEw91CIb0zwfTBwf0zq','icbszwnVBw1LBMrLzcbWyxrOiokaLcbZD2L0y2GGDg8Gv1nmmIaOB25LlxrPBwuSih41ig1PBIK6','icHr','u29SAwqGCgLJAY4','yM9Sza','y2f0','quXm','icaGicbiAw50CYbbl0iVqZOGicaG','icbuAxa6ihn3AxrJAcb0BYb5B3vYigXHBMD1ywDLihDPDgG6igXHBMCG','AhrWu3vIBwL0','y2XLyxi','zxHHBsbXide','icaGiezHAwXLzdOG','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','icboB3rLoIb5B3uGDhLWzwqGysbKAwzMzxjLBNqGDg9Rzw4UievHy2GGzxHHBsb0B2TLBIbPCYbIB3vUzcb0BW','icaGicbLEgfTigXPC3qGueu','icaGicaGicbLBNrLCIbbstrdveyGy2HHDcbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','tMLJzsbVBMuU','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbssaYmdi2','icaGDgHLig9Yz2fUAxPLCIbPBIb5B3vYignVDw50CNKU','v2LUzg93CYbUyxrPDMuGkfbVD2vYu2HLBgWGlYbJBwqP','twfSyxLZAwe','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','zw50CMLLCW','CxvLC3rPB25dB3vUDa','ig5VDcbMB3vUzcaOms0','icaGiefjoIaGicaGidi1sYbbstrdveyGkYaYnuSGq1rgnefjihrVA2vUCW','icaGvgHLigzPBMfSihnLy3rPB24GzMXPChmGDgHLihnJCMLWDdOGAw5ZDgvHzcbVzG','y2f0zwDVCNLtDgf0CW','icbdDxjYzw50BhKGzMXHz2DLzdOG','icdWN5kHie9WDgLVBIa','tK9uifbbu1nfra','icbxAgf0ig5LEhq','zgvTBY1LBNrLCG','z3jHzgLUzW','zwDNoq','otGYotqWA01YwNbZ','icaGicaGicHpCIbKB3DUBg9HzcbMCM9Tihb5DgHVBI5VCMCGyw5KienirunligjVDgGGiKfKzcbqExrOB24GDg8','AgLUDcbHic8GyIaVigm','r28GDg8GBMv4DcbXDwvZDgLVBG','l2fUC3DLCG','ihrVignVBMzPCM0Sig9YigfUExrOAw5NigvSC2uGDg8Gy2fUy2vSoG','Bwf0y2G','AxnuvfK','tM8GDgLTzsbSAw1PDa','zMfPBgvKugfJA2fNzxm','ihjLBwfPBMLUzYK','zxHHBvDHExngB3vUza','y2HHBMDLzcbMCM9Tia','icaGicfJyxqGpdWGj0vprICGpIbZB2X2zs5WEq','D2HPy2G','uM9VBsb0BYbNCM93oIaGia','C3bSAxq','lIboBYb0Aw1LCI4GrNjLzsbWCMfJDgLJzs4','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','igfUC3DLCMvKiokaLcbHy2nPzgvUDgfSihn1yM1PDcbNDwfYza','icbzB3uGy2fUig5VDYbLBNrLCIbHig5LDYb0B2TLBIb3AxrOia','AwnVys1JBgK','icaGigv4yw0Gyw5ZD2vYidXUpIbjq09bEY4UlN0','zwDNmte','icaGDxnPBMCGquKSihLVDsDYzsa','DxrMltG','icaGzMLUAxnOigfUzcbZDwjTAxq','zw1VAMK','Aw5ZDgfSBgvKugfJA2fNzxm','C3rHCNrLzef0','q29UBMvJDgLUzYb0BYbLEgfTihnLCNzLCI4UlG','icGZmcbnq1eGkYaXmcbWCMfJDgLJywWP','ihrVigfZAYbbssbMB3iGAgvSCdO','icaGicaGicbLBNrLCIbdvey0quKGy2HHDcdIGjqGyxr0ywnRihrOzsbbssb0yxjNzxqGkhjLy29TBwvUzgvKkq','zxHHBsbKzw1V','C3vIC3rYAw5N','qw5ZD2vYzwq6ica','mJaXndy4mtbervfvBMG','icaGidiUieLUifbVD2vYu2HLBgWSigLUC3rHBgWGuhL0Ag9UihDPDgGGCgLWoG','zMfPBa','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','icdIMQaGiduGBwLUDxrLCYbYzw1HAw5PBMC','icbxCML0zsbHic5WEsbMAwXLlcb0AgvUihj1BIbPDdO','icbzB3uGC3rPBgWGAgf2zsa','C3vKBYbHChqGAw5ZDgfSBcaTEsbUB2rLANmGChL0Ag9UmY1WAxaGChL0Ag9UmY12zw52','BgfUz3vHz2u','icaGigjHy2S','icaGigjYzxCGAw5ZDgfSBcbWExrOB25amY4XmG','icaGifLVDsbJyw4GBM93ihvZztOG','l2v0yY9VCY1YzwXLyxnL','zxHHBsbTyxjRia','CxvLC3rPB24','icaGieHPBNrZoIaGieeOnsKGqIGZksbdkdePiokaLcbWCMfJDgLJywWGB25SEq','icbzB3vYihj1BG','icaGiokaOIbpBIblywXPl1vIDw50DsaYmIS6ig1Pz2H0ig5LzwqGChL0Ag9UmY4XmI1KzxyGkYbIDwLSzc1LC3nLBNrPywW','ihvUyw5ZD2vYzwq6ia','zNjVBq','zxHPDa','lI4U','DMXH','icaGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3ic0GsNvSidiSidiWmJy','l2jPBI9IyxnOic1JiciKkgn1CMWGlwzZu0WGAhr0Chm6lY9YyxCUz2L0AhvIDxnLCMnVBNrLBNqUy29Tl0HVBwvICMv3l2LUC3rHBgWVsevbrc9PBNn0ywXSlNnOksi','zxHHBsbXia','zxHHBsbUzxH0','BwLU','zgvTBY1LEgfT','icaGicbLEgfTigXPC3qGq04','ChDU','icaGigv4yw0GCsaXlI4','CMfUzg9T','icaGicbuAguGDg9Rzw4GAxrZzwXMigLZie5pvcbYzxzVA2vKihnLCNzLCI1ZAwrLlIbjzIb5B3vYihnLC3nPB24GAxm','ue9tva','zxHHBsbWCMv2','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqUiev4yw0Gy2XLyxjLzc4','icdIMQaGuhL0Ag9Uia','C3rKAw4','icbiB3CGDg8GDxnLifb5DgHVBIbPBIbjq09bienmsq','icaGicaGicaGicaGicaGicaGzxmGWRCGEMGGWRCGAMeGWRCGA28GWRCGyxiGWRCGzNiGWRCGChq','y3j5ChrVz3jHCgH5','icaGigfPngn0zG','rMfPBgvKihrVigXVywqGzxHHBxm','BwfJt1m','ixb5DgHVBJmGlI4U','C2HVD25xyxjUAw5NCW','Bg9N','igfUC3DLCMvK','u3vIBwL0igv4yw0GzM9YigDYywrPBMCGkhvZztOGiMv4yw0GC3vIBwL0ignVBMzPCM0IigzVCIbYzwfSigv4yw1Zkq','BwLZC2LUzW','zxHHBv9Pza','iokaLcbZzwuGzNvSBcbLCNjVCG','igzVCIb0AgLZihnLy3rPB24','y2XVC2u','Dw5KzxjSAw5L','AhrWtMf2','ic1TihbPCcbZAg93ici','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIb5B3vYignVDw50CNKGEwv0lG','icaGicbqCM9TChqGAw5Qzwn0Aw9Uimk3igfKDMvYC2fYAwfSigfUywX5C2LZimk3iefjigf1zgL0Aw5N','u2H1zMzSAw5Nig9WDgLVBNmUlI4','zxHHBsbYzxn1BhqG','icaGicbfBNrLCIbJAgf0oIaGicaG','icdIJ7eGifrPBwuGy2HLy2SGia','rNjHBMnL','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','CMvZDwX0ifTPzf0','rwD5Chq','icbfEgfTCgXLoIa','ywn0Aw9U','u3rYB25NzxiGAgvYztOGia','ChjVBxb0','icaGiokgKIa','zxHHBsbYzxzPzxC','wYbD','igzSywDNzwqGzM9YihjLDMLLDY4','C2vZC2LVBG','icbqCMvZCYbfBNrLCIb0BYbIzwDPBI4UlIa','t3rOzxi','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','Dg9tDhjPBMC','ihWG','y29YCMvJDa','icaGrwXHChnLzdOG','y3vYBcaTzNnttcbODhrWCZOVl2rLyI5UB2rLC291CMnLlMnVBs9Zzxr1Cf8YmI54ihWGC3vKBYaTrsbIyxnOic0','iIbPCYbPBIbWCM9NCMvZCY4','icbozwvKig1VCMu/ifr5Cgu6ia','BwvZC2fNzq','C3rVCa','icbzB3vYigjLC3q6ia','Cg9PBNrZ','D3nSic0TAw5ZDgfSBcaTzcbvyNvUDhuTmJiUmdq','icaGvgHLC2uGyxjLihrOzsbOyxjKzxn0ihf1zxn0Aw9UCY4Gv29YDgGGmJeLig9MihrVDgfSihnJB3jLlG','icaG','zwDNmtm','q291BgqGBM90igLUC3rHBgWGCgLWiokaLcbWAxaGAxmGBM90igLUC3rHBgXLzcbVBIb5B3vYihn5C3rLBs4','oJaW','iefjihn5C3rLBxmU','icaGicjtAg93ig1LigHVDYb0BYb1C2uGC3rYDwn0lNvUCgfJAYi','ihDHCYbUB3qGzMXHz2DLzc4','zxHHBsbUyxrPB25Z','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZlW','icbdB250Aw51zsb0AgLZigv4yw06','mJuSmdaW','q2HPBMe','icbcB251CYbOzwXWigfSCMvHzhKGDw5SB2nRzwqU','q2HLy2SGEw91CIb0B2TLBIbVCIbJB250ywn0ihLVDxiGChjVy3rVCI4','zwDNmW','icbxCMfWihvWigfUzcbZDwjTAxq6ia','AhrWtwfYAW','CMvWBgfJzq','ueLm','BM9KztPJAgLSzf9WCM9JzxnZ','icbtDgfYDdOGzxHHBsbZDgfYDca8Awq+','x2HLBhbvC2vK','uMv2Awv3igfSBcbHBNn3zxjZigjLzM9YzsbZDwjTAxr0Aw5N','CdeW','icdILRGG','icaGihDPBMDLDcbPBNn0ywXSifb5DgHVBI5qExrOB24UmY4XmG','AgvSCa','icbVCIaG','ig1PBIbYzw1HAw5PBMC','C2XPy2u','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','zwDNmtu','yw5ZD2vYzwq','xsaG','zxHHBvDHExntAgvSBa','ica+ia','icaGicfWExrOB24Z','vhvYA2v5','icbfEhbLy3rLzdOGms0Yig1PBNv0zxmGWRCGFJe1me1cigrPC2S','r2vYBwfUEq','ls11C2vYic0TyNjLywSTC3LZDgvTlxbHy2THz2vZ','lI4VBgLIl2v4yw0TC3rHDguUANm','CM9Wz2fKz2v0','CMvTB3zLtgLZDgvUzxi','cGPgDwXSigf0DgfJAgvKigrHDge6cG','igfUC3DLCNmU','zgvTBW','sw4GuhjVz3jLC3m6ia','yNjLDW','icaGWRCGmtuSmdaWkYbJB25JDxjYzw50ihbHCNrPy2LWyw50CW','zxHHBsbKzw1VlxjLDhj5','icbdAgvJAYbLEgfTCYbMB3iGEw91CIbJB3vUDhj5oG','Axnoyu4','icaG4PYticbtDwjTAxnZAw9UigfJy2vWDgvKiokaLcbIyxnLBgLUzsbTzxq','AwnVyq','vMLLDYbHBgWGCgfYDgLJAxbHDgLUzYbJB3vUDhjPzxm','r3jHzgLUzY4UlG','icbqyxbLCIbbic8GqIbWCMfJDgLJywWGCxvLC3rPB25Zig5LzwqGvw5PEcb0B29SAw5NihrOyxqGCNvUCW','icdINjmGCgLWigf2ywLSywjSzq','icboyxrPB25HBcbsB3vUzcaXifnLBgvJDgLVBIbLEgfTCYbHCMuGyMvPBMCGChjLCgfYzwqU','ig9YigXLyxzLihDPDgGG','zMXVB3i','BMv4DeXHyMvS','icaOEwvZiokaLcbSAxrLCMfSBhKGDhLWzsb0AguGBNvTyMvYia','lI4VBgLIl2rLBw8TzxHHBs5QCW','yNm0','icdIL48G','icaGieXHBMC6icaGia','ihf1zxn0Aw9U','icaGidmUie9Wzw4GysborvCGug93zxjtAgvSBcb3Aw5KB3CGkfbbveGGCMvMCMvZAcKSihrOzw46','zxHHBsbZDwjTAxq','ic1TihbPCcbPBNn0ywXSihb3BNrVB2XZ','icbqCMfJDgLJAw5Nia','zMLUzeLUzgv4','C3vKBYbHChqGAw5ZDgfSBcaTEsbWExrOB24ZlxbPCcbWExrOB24ZlxzLBNy','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','zgvHzgXPBMvtzxj2zxjnCW','icaGievprG','CdmW','CgfKu3rHCNq','rxHHBsbZDgfYDgvKisbuAw1LCIbPCYbYDw5UAw5NlG','igfUC3DLCMvKkq','AhrWqMfJAW','zgvTBY1MCMvL','BM93','u3rHCNrPBMCGDgLTzxiUlI4','icaGicdILQmG','rxHHBsbfBNzPCM9UBwvUDcbtzxr1Ca','icbuBYbNBYbIywnRoIaG','icdIL4SG','AwnVyt4','icaGvgLTzsbZDgLSBcbJB3vUDgLUzYbKB3DUlIbcDwrNzxqGFJiGBwLUihbLCIbXDwvZDgLVBI4','z2v0uMvZDwX0','EJmTC29SDMvY','rMXHzYbHihf1zxn0Aw9UihrVihjLDMLLDYbSyxrLCIaODg9Nz2XLCYK','ig1PBNv0zxm','CgTN','CsbBBL0','icaGswyGDgLTzsbPCYb0AwDODcWGC2TPBsbrmZKVndaGzMLYC3qGDg8GzgvJAwrLigf0DgfJAYbVCMrLCI4','icaGicaGC3vKBYb1CgrHDguTywX0zxjUyxrPDMvZic0TAw5ZDgfSBcaVDxnYl2jPBI9WExrOB24Zihb5DgHVBJmGl3vZCI9IAw4VChL0Ag9UmY4XmIaX','y29TBwfUza','icbbssbbC3nPC3rHBNq','icbjBNn0ywXSAw5Nia','tMf0Aw9UywWGC2vSzwn0Aw9Uigv4yw0','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','BMf0Aw9UCW','sgvSCdOGicaGica','icaGqNvKz2v0icHZAgfYzwqGywnYB3nZifeZmEkaKZm4kq','BNvTyMvY','4OcuihLVDsDYzsaXlZqGDgHYB3vNAcb0AguGzxHHBq','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','ChDUDg9VBhm','zxHHBvDHExntyxzLzfrV','icaGww91CIbHBNn3zxjZigHHDMuGyMvLBIbYzwnVCMrLzcbHBMqGC2vUDcb0BYb5B3vYig5HDgLVBMfS','r2HHBMe','icdIMiuGuq','icaGid4+pIbWCMLUDcHJAxbOzxiUzgvJCNLWDcHKyxrHksK','Aw5KzxHpzG','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','ugvYy2vUDgfNzq','rw52AxjVBM1LBNqGCMvHzhKHiefSBca','icaGicbnzxnZywDLCYdIHPiGquKGDgfYz2v0iokaLcbJCMfMDcbWCM9TChrZihrVigjYzwfRigL0CYbYDwXLCY4','zgfYD2LU','Dg90ywW','icHXDwLJAYb0yxnRCYK','icaGiokrOsa','icbuBYbNBYbIywnRigfUzcbHBNn3zxiGBw9YztO','vxbSB2fKAw5NigfUC3DLCNmUlI4','sw5KAwe','yxr0zw1WDhm','vgvHBsb1Ccb3AxrOiefjihrVihnVBhzLienurNm','y3rMzfvYBa','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','C3bSAwnL','Bsb0B3rHBa','vhLWzsaIzxHHBsbZDwjTAxqIihrVigzPBMfSAxnLig5VDYWGB3iGDgHLihnLCNzLCIb3AwXSigf1Dg8TzMLUywXPC2uGD2L0AgLUidmWig1PBNv0zxmU','icaGicbfEgL0ignOyxq6icaGicaG','u3jPieXHBMTH','icaGigXHBMC','igzVDw5KlcbIDxqGmY4XmcSGCMvXDwLYzwqGzM9YihrOzsbLEgfTlG','icaGicbcDwrNzxqGFJiGBwLUihbLCIbWCMfJDgLJywWGCxvLC3rPB24UifLVDsbJyw4Gy29TzsbIywnRihDPDgG6ig5LEhqGlYbWCMv2lG','icHxu0WYkq','AgfZ','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','icaGiokrOca','icbrDwvZDgLVBNmGAw4Grw5NBgLZAc4Gvg8GC3DPDgnOigXHBMD1ywDLigzPCNn0oG','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','ihvUzMXHz2DLzc4','C3vIBwL0rxHHBq','u3vIBwL0igL0igzPCNn0oIbLEgfTihn1yM1PDa','C3rHCNq','AhrWuMv2Awv3','igfUC3DLCNmSihr5Cgu6','icbTywnpuYaOsg9TzwjYzxCSihjLy29TBwvUzgvKktO','icdIHPiGia','icdIMiuGtwfYA2vKigzVCIbYzxzPzxC','CgfZC2vK','zMLSDgvY','C3vKBYbHChqGDxbKyxrL','zxHHBsbYzxnLDa','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwqGyMvMB3jLigvUDgvYAw5NigeGDg9Rzw4U','icaGihn1zg8GDxbKyxrLlwfSDgvYBMf0AxzLCYaTlwLUC3rHBgWGl3vZCI9IAw4VChL0Ag9UmYbWExrOB24Zic91C3iVyMLUl3b5DgHVBJmUmtiGmq','icdIMQaGiefUigv4yw0GAxmGywXYzwfKEsbPBIbWCM9NCMvZCYbVBIb0AgLZigrLDMLJzs4','icdINjmG','C3rKB3v0','ywK0y3rMu3vI','icdcTYbszwzLCMvUy2uGz3vPzgvZigzVCIaZocb0B29SCZOG','zxHHBsbZDgfYDca','zxHHBu5HBwu','icdIMQaGifjLC2v0ihDPBgWGywjHBMrVBIb5B3vYign1CNjLBNqGzxHHBsbZzxnZAw9Uig9UihrOAxmGzgv2AwnLlG','uhL0Ag9UidmGBM90igzVDw5KlG','CMvMihb5DgHVBG','rw50zxiGzxHHBsb0B2TLBIb0BYbIzwDPBG','rgvTBYbJB21WBgv0zwqGka','yxbWBgLJyxrPB24VANnVBG','icbzB3uGy2fUihbHDxnLihDPDgGG','Dg9Rzw4','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','CgvYy2vUDgfNzq','oxf2tvjuBq','u2nVCMu','icbdyw5JzwXSzwqU','C2v0uhjVBxb0','imk3ia','icaGicfWExrOB24Zic1JicjPBxbVCNqGyMfZzty0oYbWCMLUDcHIyxnLnJqUyJy0zgvJB2rLkcDtr1zZyKC4psCPksi','icboBYbHy3rPDMuGzxHHBsbZzxnZAw9UihrVihjLC2v0lG','ywrK','CgXHDgzVCM0','x2HLBhbnyxG','oti2nty1Ee1IvwHo','icaGv2HHDcb5B3uNBgWGzg8GDg9KyxK6','l2HLBha','icaGicbjBNnPzguGy2HHDdOGicaG','BM9KztPMCW','mJuSmdaWihrVA2vUCW','r0vu','C2v0uMf3tw9Kzq','icbkDw1WihrVigeGzMXHz2DLzcbXDwvZDgLVBJOG','sMfWyw4','C3rHDhvZ','ig1PBG','icdIMQaGieXfu1mGveHbtIaXie1jtLvursbmruzu','igLZihDLBgWGyMvSB3CU','Aw5FChjVz3jLC3m','Dg9vChbLCKnHC2u','ic1JicjPBxbVCNqG','u2f1zgKGqxjHyMLH','CgfZC2LUz1nJB3jL','D2HPDgu','igrLDgvJDgvK','z2v0rxHHBxm','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','icaGifnVBwuGCgfJA2fNzxmGkhb3BNrVB2XZlcbZy2fWEsKGBwf5ig5VDcbOyxzLihDOzwvSCYb5zxqGzM9YidmUmtmU','ihLLDc4','icaGigTLEsa9ihHVCIHJDfS6nv0SigiIsunpqxSIkq','icbqyxnZihrOCMvZAg9SzcbPCYb0ExbPy2fSBhKGntaLiokaLca','icbszwfKEt8GvxnLia','icdWN46bicS','icaGicdcTYbbssbPCYb5B3vYia','icbbzNrLCIbPBNn0ywXSAw5NlcbYDw46ia','yw5ZD2vY','icaGig1VCMuGAgvSCa','AhrWtw9YzuHLBha','ig1PBNv0zxmGBgvMDc4Gs2vLCcb0AguGCgfJzsbZDgvHzhKU','rMXHz2DLzcbMB3iGCMv2Awv3','icaOChjLDMLVDxmGzxHHBsbZzxnZAw9Uigv4CgLYzwqG4OcuignSzwfYzwqGC3rHDguSihn0yxj0Aw5NigzYzxnOihDPDgGGEw91CIbUzxCGDg9Rzw4P','BgvUz3rO','y29UzMLYBwvKqxq','nJi3mdC5mNbJC21TBW','tMv3ifPLywXHBMq','icaGWRCGmtuGBgfUz3vHz2vZlcbYzwfSlxrPBwuGquKGDhjHBNnSyxrPB24','zxHHBsbZzxr1Ca','icbkDxn0igfKzcaHigjLzM9Yzsb0AguGy29TBwfUzdO','ihf1zxn0Aw9UCYbKCMf3BIbMCM9TigeGCg9VBcbVzIa','yMvZDa','icaGifb5DgHVBIaZlJeZigLZihrVBYbUzxCG4Ocuig1VC3qGq1rgigXPyNjHCMLLCYbSywnRihDOzwvSCY4','zwXPBwLUyxrLza','icdWN5Ieie9UBhKGmIbVChrPB25ZigXLzNqG4OcuihLVDsbNB3qGDgHPCYe','q29UDgvUDc1uExbL','icaGihbYAw50khHVCIHJDcWGA2v5ks5KzwnVzguOksK','icbgzwrVCMeGlYbssevmoG','ChjLDG','zMLUza','icbr','AgvSCf91C2vK','icaGww91CIb0zxjTAw5HBca','icbjq09big9MzMLJAwfSBhKGC3vWCg9YDhmGv1nmmIbVBIbxAw5KB3DZlG','ywLvC2fNzq','icbvyNvUDhuGlYbezwjPyw4GkgrLywrZBMfRzxmGufbbktO','icbbBgWGAgvSCcb1C2vKicG','icaGicbuB2TLBJOG','ywXS','Dg9ju09tDhjPBMC','vw5SB2nRigHPzgrLBIbIB251CYbOzwXWihvZzxm','rxHHBsaI','uMv0CNKGB25SEsb0AguGCxvLC3rPB25ZihLVDsbNB3qGD3jVBMCGBgfZDcbKzw1Vigf0DgvTChq','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','vxnLCI1bz2vUDa','igjVBNvZihvZzxmP','vgLTzsb1C2vKoIa','ANnVBG','C3rHCNqGpgLKpG','icaGiokrPca','zxHHBvDHExnbAtrJDgy','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','Cvr1Dg9YAwfS','DgvZDa','y2f0zwDVCNK','icaGia','zxHHBq','CMvXDwvZDhm','rhvYyxrPB24','DdeW','z3jLzw4','zxHHBsbZDwjTAxqGy29UzMLYBq','m0f2qvnXyW','icdcTYaG','AM9PBG','uhjLCgfYAw5Nigv4yw0Gzw52AxjVBM1LBNqUlI4','zxHHBsbZDwjTAxqGy29UzMLYBsa','tg9HzgLUzYbLEgfTlI4U','icbpChrPB25ZigHHDMuGyMvLBIbYzxnODwzMBgvKlG','qw5ZD2vYihnVBwuGCxvLC3rPB25ZigzPCNn0oIbLEgfTiheGmq','icaGicHHAtrJDgyP','uxvLC3rPB24G','icbuExbLicjOzwXWiIbVBIbHBNKGCxvLC3rPB24GDg8GDxnLlG','icdcTYblzwvWihnOyxjWzw5PBMC6ia','y3rMngfP','DxnLza','vMfSAwrHDgLUzYb0B2TLBI4UlG','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','icbuB2TLBJOGica','icbvC2u6igv4yw0GCMv2Awv3imk3igv4yw0GC3vIBwL0','BwfNzw50yq','yMvZDfbLCMnLBNrHz2u','icbtDwjTAxr0Aw5Nig5VDYbZy29YzxmGzNjVBsbVBMX5ia','CxvLC3rPB25Z','tM8GzxHHBsbPBIbWCM9NCMvZCY4','itXJBwq+ia','icbjzIb5B3uGBMvLzcb0BYbHyMfUzg9UihrOAxmGC2vZC2LVBIaOzs5NlIbLEhbPCMvKic8GD3jVBMCGCgfWzxiPla','icaGicbfEgfToIaG','C3vJy2vLza','C3vKBYbUCg0GAw5ZDgfSBcaTzYbPy29HlwnSAq','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','zxHHBsbOzwXW','ihbVAw50CW','y2vPBa','icbtDgvWlwj5lxn0zxa6','icbszxj1BIb3AgvUigzPEgvKoIa','EwvSBg93','icaGidiUifjLAw5ZDgfSBcbqExrOB24GD2L0AcbWAxaGkeHVBwvICMv3igrLDgvJDgvKiokCKYK6','icbsDwXLCZO','icbuExbLia','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','icdINjmGie1dusbZzwn0Aw9UignVBxbSzxrLiokaLcb3zwXSigrVBMuH','icbpCIb0ExbLia','tg9HzgLUzYbXDwvZDgLVBNmUlI4','cIaG','icbeAxjLy3rPB25HBcbMzwvKyMfJAW','yw5ZD2vYx2nOyw5Nzwq','iIaYpI9KzxyVBNvSBa','BMv3','C2vYDMvYx3rPBwvFBxm','tgfVCW','lI4VBgLIl3bHCgvYlxvWz3jHzguUANm','vgLTzw91DevYCM9Y','yw5ZD2vYCW','rw52AxjVBM1LBNqGCMvHzhK','DhjPBq','icbqCMvZCYbfBNrLCIb0BYbZDgfYDcb0AguGzxHHBsb0Aw1LCI4UlIa','x2vSAw1PBMf0zwq','B3b0Aw9UCW','DM9SyxrPBgL0Etm','icdINjmGCgLWigLUC3rHBgXLza','A2v5CW','icaGicaGia','icHLEhbSB3jLicyGzxHWzxjPBwvUDcK','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','vgLTzq','Ew91CKfUC3DLCG','tg9HzgLUzYbLEgfTCY4UlG','icaGutmX4OctmZGGkdGGCxvLC3rPB25Zimk3idyGChrZigvHy2GP','ywK0y3rM','iokgKIa','icbYDw4G','igjVBNvZigHLBhaGDw5SB2nRzwqHicG','icdIMiuG','AgvSCefSBfvZzwq','yMvHDxrPzNvSC291Cdq','BMv4DcaVihbYzxy','D3jPDgu','vgLTzsbszw1HAw5PBMC','ic1TihbPCcbPBNn0ywXSic0Tzhj5lxj1BIbWAxaGmJ4Mmq','D2LUmZi','BgLZDgvUzxjZ','CMvZDw1L','z2v0vgLTzq','C3rKAw8','icaGig5LEhq','icbgAwX0zxiGyNKGy291BNrYEtOGzxHHBsbSAxn0ifbflcbLEgfTigXPC3qGq04Sic4UlG','q3rYBcTd','icaG8j+oRYaGu2vJDgLVBIaZoIbdvey0quKG4OcuienOywXSzw5Nzsb0AguGquK','y2XVy2TpzMzZzxrnCW','zxHHBvDHExnqExrOB25szxbS','icaGihn1zg8GCgfJBwfUic1tihb5DgHVBG','uNvZC2LH','iokaLcb5B3uGy2fUBM90ignOyw5Nzsb0AgvTigfMDgvYihn1yM1PDc4','y29TCgXLDgu','t24GDgHLig1VBMv5lG','CMvK','vw5PDgvKifn0yxrLCW','ChjLlxDYAxr0zw4GCgvYihf1zxn0Aw9U','CgvYuq','Bwf4','u291DgGGqwzYAwnH','x2XHC3rr','icaOuMv0CNKGD3jVBMCGB25SEsK','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','BgfUzYa8y29Kzt4','Cg9ZDc1YzxbVCNqTCMv0CNK','rwXPBwLUyxrLig9Uzsb3CM9UzYbVChrPB24GkgXPBwL0zwqGDxnLCYK','ugfZCW','ihf1zxn0Aw9UCY4','zNvUy3rPB24','C3rYAw5NAwz5','icbpCIbKB3DUBg9HzcbPBNn0ywXSzxi6','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl3DPBMrVD3mV','icbxAw5KB3DZicH3Aw5NzxqSihjLy29TBwvUzgvKktO','icaGifb5DgHVBIaZlJeYigLZihjLy29TBwvUzgvKlIbjBNn0ywXSoG','icbszxzPzxCGDw5HBNn3zxjLzcbXDwvZDgLVBNm6ia','icaOtwLUAw1HBcbvyNvUDhuGlYbJBg91zcaVifDttdiGAw1Hz2vZig9MDgvUihnOAxaGD2L0Ag91DcbWAxaUkq','icbzB3vYigfUC3DLCJOG','DhLWzq','ihbVAw50C10','iIbPCYbHBhjLywr5igLUihbYB2DYzxnZlG','icdWN46jiefSBcbXDwvZDgLVBNmGyw5ZD2vYzwqH','AwDUB3jL','y2f0y2G','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','C3rKzxjY','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','tg9HzgLUzYbYzxn1BhqUlI4','Dg9Vx29Sza','igzPCNn0lG','icbqCMv2Aw91CYbZzxr1CcbOywqGB25SEsa','BgLUDxG','icaG4PElicbtDwjTAxnZAw9UigfJy2vWDgvK','Aw50zxjHy3rPB25Z','uMvHzhKH','icbnzxrOB2qGmtOGt25LlwXPBMvY','icbszwLUC3rHBgWGuhL0Ag9UidmUmtiGD2L0AcbWAxaGyNvUzgXLzcWGDgHLBIbYzxrYEtO','zhvYyxrPB25nAw51DgvZ','icbeDxjPBMCGDgHLigv4yw0Sihr5CguG','C19JDgy0ywK','mtuWnZiXmfnvrLLHCG','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','icdcTYbzB3vYig5HDgLVBMfSig9Yz2fUAxPLCIb3AwXSigfUBM91BMnLihnLBgvJDgLVBIbYzxn1BhrZlG','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','oIdIGjq','q291BNrYEq','AxnsyxC','uhL0Ag9Uia','D2L0Aa','rw50zxiGzxHHBsb3AxrOigfJy2vZCYb0B2TLBIaOBM8GBg9NAw4GBMvLzgvKkq','C29Tzq','icaGicbgCMvLignOyxq6icaGicaGyw55ig1LC3nHz2uG4OAsiefjihrLyw1TyxrL','z3jHEq','uK9qz2fKz2v0','qwjHBMrVBIbJDxjYzw50igv4yw0GC2vZC2LVBIbHBMqGD2LWzsbSB2nHBcbZDgf0zsaOCMvJB3zLCNKGB25SEsK','zxHHBvDHExnuB1nVBhzL','zxHHBvDHExnszwzqExrOB24','C2v0Dxa','ChvZAa','icaGiokaOIbbBgWGAw50zxjHy3rPB25ZigfYzsbYzwnVCMrLzcbMB3iGyxvKAxq','ugHPBgLWCgLUzxm','C3rHCNrfEgfT','q29TCgXLDguH','AxnbCNjHEq','CMvZzxq','zxHHBsbZDwjTAxqG','icaGiokaOIbuCNK6ia','CgfKrw5K','icaGicaGicaGicaGicaGicaGCNuGWRCGAgKGWRCGzguGWRCGAwqGWRCGDgGGWRCGDMKGWRCGDhi','icbgCMvLihbYywn0AwnLimk3ie5VigfJy291BNqGBMvLzgvKimk3ie5VihrPBwuGBgLTAxq','l2fWAs9Py29Hl3nLCNzLCI10Aw1L','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','uhjLCgfYAw5NlI4U','ixzPihnVBhzLlNb5','icaGuhjLC3mGyw55igTLEsb0BYbZDgfYDcbKzw1VlI4U','icbSyw5NigvZicHfC3bHW7fVBcKGWRCGBgfUzYb6AcaO5lIT5PAhksdcTYbSyw5NigTVicJTLzZQTA3SLRqPimk3igXHBMCGAMeGkoAxPEACRoIQNIK','qNvYDw5KAq','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','yM9VA21HCMTZ','ChL0Ag9UmW','zw5KC1DPDgG','CM91BMq','lI4VBgLIl3bSyxrMB3jTlMPZ','ixb5DgHVBJmGC29SDMuUChK','C29YDa','zxHHBsbTB3jLlwHLBha','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','8j+pLU+4JW','BM9KztPYzwfKBgLUzq','icbZDwjTAxqGzMXHzYbKAxjLy3rSEq','iefjnenurG','ixb5DgHVBJm','ihjHBMrVBsbXDwvZDgLVBNmGzNjVBsbHihbVB2WGB2yG','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqU','A2v5','rxHHBxmG4Ocuia','uMvTB3zLihjLDMLLDYbMBgfNigzYB20GysbXDwvZDgLVBG','qw5ZD2vYihf1zxn0Aw9Uie4GkeeVqI9dl0qGzM9Yie1dusWGsunpqxTMBgfNFsbMB3iGChjHy3rPy2fSkq','uMvZDwX0igXVywrLza','Dg9Rzw4GpgnVzgu+','icaGieeVqI9dl0q','qMfUz2XHzgvZAa','icbjBNn0ywXSAw5Nifb5DgHVBIbWywnRywDLCYbMB3iGChjHy3rPy2fSihf1zxn0Aw9UCY4','igf0DgvTChrZ','iokaLcbZD2L0y2GGD2L0AdOGBgfUzYa8y29Kzt4','icaGicHYzwXHDgL2zsb0BYbVDgHLCIbJyxrLz29YAwvZiokaLcbUDw1LCMLJihnJB3jLCYbNBYb0BYb5B3vYigv4yw0Gy2vUDgvYkq','icdWN5kHifrYEsb0ExbPBMCG','ihnRAxbWzwq','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','ChL0Ag9UvMvYC2LVBG','q29TCgXLDguGDgHLigrLBw8GzMLYC3qGyMvMB3jLihnLDhrPBMCGDxaU','icdINjmGuhL0Ag9Uia','8j+pM++4JW','zgvTBY1YzxrYEq','BgLUzq','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','icdIHPiG','sw52ywXPzcbLEgfTihrVA2vU','CMvM','mty2otiWogrKDvfcCW','Bw9Yzs1OzwXW','yxr0ywnRAw5N','q3j5ChrV','zxHHBsb0B2TLBIa','icaGicaGicaGia','y3LHBG','Aw5JB3jYzwn0sw50CM8','lI4VBgLIl2nVBMzPzY5QCW','icaGidiUieLUC3rHBgWGsg9TzwjYzxCGzMLYC3qGkhDLigrPzcbUB3qGzMLUzca','mtC3mdm5nNjMq0DzBW','zxHHBsbHBNn3zxiG','icaGicaGigvUDgvYifzmqsbHDhrHy2SGBw9KzsbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','icaGideUifr5CguG','zwDNnW','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','icaG8j+AGcaGu2vJDgLVBIaYoIbbstrdveyG4OcuiefjigLZihLVDxiGDgvHBw1HDgu','vw5HBNn3zxjLza','CMvTB3zLqwXStgLZDgvUzxjZ','BNvTChK','u3rHCNqGyw4GzxHHBsaOyMvNAw5ZihrPBwvYkq','zgf0yq','zw5JB2rPBMC','icaGieLUC3rHBgWGuhL0Ag9UidmUmtiGyw5KihjLlxj1BIbLEgfTihnLDhvWlG','icaGica','yxr0ywnOzwreyxrH','icaGicaGifrOzw4GAw5ZDgfSBcbqExrOB246','AhrWsgvSCa'];a0z=function(){return bP;};return a0z();}function R(B){const b7=a0B,F={};return F[b7(0x1da)]=B[b7(0xcf)]||-0xb42*-0x3+-0x1*0x156d+0xc59*-0x1,F[b7(0x22f)]=B[b7(0x176)]||-0xeab+-0x159a+0x2459,F[b7(0x22e)]=B['_helpPerQ']||{},F['eliminated']=B[b7(0x204)]||{},F;}function U(z,B){const b8=a0B,F=a0Y(),G=Number(F?.['session'][b8(0x343)]||-0x231f+0x3cd+0x1f70),H=Object[b8(0x208)](F?.['answers']||{})[b8(0x19c)],J=R(F),K=J['eliminated'][z[b8(0x126)]]||[],L=b8(0x210)===z[b8(0x242)]||b8(0x1d9)===z['type']||'vla'===z[b8(0x242)]||z[b8(0x205)]&&!z[b8(0x205)]['A']&&!z[b8(0x205)]['B'];F&&function(Y,Z){const b9=b8;if(b9(0x10d)===Y[b9(0xa9)][b9(0x2e4)])return;const a0=new Set(Y[b9(0x8b)]||[]),a1=Number(Y['session'][b9(0x343)]||-0x281+0x8b2+0x3*-0x203),a2=a0a1();if(-0x10*0x14d+-0x2*0x288+0x19ea===Z&&a1>=-0xd5a+0x263+0xb1f&&!a0['has'](b9(0xd1))){const a3=a2?Math['max'](0x1b5f+0xe0d+-0x296c,Math[b9(0x281)]((a2['getTime']()-Date[b9(0x10e)]())/(-0x144*-0x9c+-0x5*0x32cf+0x122fb))):null;console[b9(0x8c)](),console[b9(0x8c)](a0L['gray']('\x20\x20┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄')),console[b9(0x8c)](a0L[b9(0x2ae)](b9(0x9c))+a0L[b9(0x264)](b9(0x127))),null!==a3&&console[b9(0x8c)](a0L[b9(0x264)](b9(0x2c0)+a3+b9(0x199))),console[b9(0x8c)](a0L[b9(0x264)](b9(0xac))),a0[b9(0x174)](b9(0xd1)),Y['shownWarnings']=Array['from'](a0),a0Z(Y);}if(-0x2605*0x1+-0x161d+0x3c40===Z&&a1>=0x162+0x7*-0x83+0x25b&&!a0['has'](b9(0x108))){Object[b9(0x208)](Y['answers']||{})[b9(0x19c)];const a4=Object[b9(0x208)](Y[b9(0x200)]||{})[b9(0x157)](a5=>Number(a5)<=-0xab2*-0x2+0x1*0x22d+-0x1773)[b9(0x19c)];console['log'](),console['log'](a0L[b9(0x1cb)](b9(0x341))),console[b9(0x8c)](a0L[b9(0x32e)][b9(0x1cb)](b9(0x1f4))),console[b9(0x8c)](a0L['gray'](b9(0x2c0)+a4+'/30\x20multiple-choice\x20answered')),console[b9(0x8c)](a0L['white']('\x20\x20↓\x20\x20Practical\x20section\x20begins\x20at\x20Q31.')),console[b9(0x8c)](a0L[b9(0x264)](b9(0x146))),console['log'](a0L[b9(0x1cb)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),a0['add'](b9(0x108)),Y[b9(0x8b)]=Array[b9(0x70)](a0),a0Z(Y);}}(F,z[b8(0x126)]),F&&L&&function(Y,Z){const ba=b8;if(ba(0x10d)===Y[ba(0xa9)][ba(0x2e4)])return;if(Number(Y[ba(0xa9)][ba(0x343)]||0x428*0x4+0x1fc7+-0xb3*0x45)<-0x1*-0x81+-0x1ec1*0x1+0x1e68)return;const a0=new Set(Y[ba(0x8b)]||[]);Z>=0x25b9+-0x1f53+-0x647*0x1&&Z<=-0x2*-0xdda+0x99*-0x25+-0x571&&!a0['has'](ba(0x316))?(console[ba(0x8c)](),console[ba(0x8c)](a0L['green'](ba(0x29c))),console[ba(0x8c)](a0L[ba(0x32e)][ba(0x1cb)](ba(0x2b8))),console[ba(0x8c)](a0L['green'](ba(0x29c))),console[ba(0x8c)](),console[ba(0x8c)](a0L['white']('\x20\x20\x20Welcome\x20to\x20the\x20practical\x20CTF\x20section.\x20Real')),console[ba(0x8c)](a0L[ba(0x18a)]('\x20\x20\x20security\x20tasks\x20—\x20crypto,\x20web,\x20forensics,\x20pwn.')),console[ba(0x8c)](),console[ba(0x8c)](a0L['bold'][ba(0x18a)](ba(0x20f))),console[ba(0x8c)](a0L['gray']('\x20\x20\x20\x20\x20Solve\x20')+a0L['bold'](ba(0x260))+a0L[ba(0x264)](ba(0x2b7))),console[ba(0x8c)](),console['log'](a0L[ba(0x32e)][ba(0x18a)](ba(0x2f0))),console['log'](a0L['gray'](ba(0x9b))+a0L[ba(0x32e)]['green'](ba(0x210))+a0L[ba(0x264)](ba(0x211))+a0L[ba(0x1df)]('ai4ctf>')+a0L['gray'](ba(0x340))),console[ba(0x8c)](a0L[ba(0x264)](ba(0x17a))+a0L[ba(0x2ae)](ba(0x351))+a0L[ba(0x264)](ba(0x171))+a0L[ba(0x2ae)]('submit\x20ICOA{...}')+a0L[ba(0x264)](ba(0x171))+a0L[ba(0x2ae)](ba(0x8a))),console[ba(0x8c)](a0L['gray'](ba(0x263))),console[ba(0x8c)](a0L[ba(0x264)](ba(0x142))+a0L['cyan'](ba(0x71))+a0L[ba(0x264)]('\x20→\x20back\x20to\x20exam,\x20navigate\x20with\x20')+a0L[ba(0x2ae)](ba(0x217))),console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x32e)]['white'](ba(0x125))),console['log'](a0L['gray']('\x20\x20\x20\x20\x20AI\x20tokens:\x20\x20\x20\x20\x20\x20')+a0L[ba(0x18a)](ba(0xc4))+a0L[ba(0x264)](ba(0x92))),console[ba(0x8c)](a0L['gray'](ba(0x331))+a0L[ba(0x18a)](ba(0x22d))),console[ba(0x8c)](),console[ba(0x8c)](a0L['yellow'](ba(0x115))),console[ba(0x8c)](a0L['green'](ba(0x29c))),console[ba(0x8c)](),a0[ba(0x174)](ba(0x316)),Y[ba(0x8b)]=Array[ba(0x70)](a0),a0Z(Y)):Z>=-0x951+-0x23e8+0xb*0x420&&!a0[ba(0x148)](ba(0x257))&&(console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x22b)](ba(0x29c))),console[ba(0x8c)](a0L['bold']['red'](ba(0x223))),console['log'](a0L['red'](ba(0x29c))),console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x18a)](ba(0x346))),console[ba(0x8c)](a0L[ba(0x18a)](ba(0x367))+a0L[ba(0x32e)](ba(0x2aa))+a0L[ba(0x18a)](ba(0xbe))),console[ba(0x8c)](),console[ba(0x8c)](a0L['bold']['white'](ba(0x2ec))),console[ba(0x8c)](a0L[ba(0x264)](ba(0x98))),console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x32e)][ba(0x18a)]('\x20\x20\x20How\x20to\x20attack')),console[ba(0x8c)](a0L[ba(0x264)](ba(0x9b))+a0L[ba(0x32e)][ba(0x22b)]('ctf4ai')+a0L[ba(0x264)]('\x20→\x20')+a0L['red'](ba(0x304))+a0L[ba(0x264)]('\x20prompt,\x20same\x20shape\x20as\x20demo')),console['log'](a0L[ba(0x264)](ba(0x17a))+a0L[ba(0x2ae)](ba(0x351))+a0L[ba(0x264)]('\x20·\x20')+a0L['cyan'](ba(0x2d0))+a0L['gray'](ba(0x171))+a0L[ba(0x2ae)](ba(0x8a))),console[ba(0x8c)](a0L['gray'](ba(0x133))),console[ba(0x8c)](),console[ba(0x8c)](a0L[ba(0x32e)][ba(0x18a)](ba(0x16b))),console[ba(0x8c)](a0L[ba(0x264)](ba(0x194))+a0L[ba(0x22b)]('target')+a0L[ba(0x264)](ba(0x32a))),console[ba(0x8c)](a0L[ba(0x264)]('\x20\x20\x20\x20\x20·\x20Separate\x20budget:\x20')+a0L[ba(0x18a)](ba(0x17c))+a0L[ba(0x264)]('\x20shared\x20across\x20Q39–40')),console[ba(0x8c)](),console[ba(0x8c)](a0L['yellow'](ba(0xb9))),console[ba(0x8c)](a0L['yellow'](ba(0x11c))),console['log'](a0L[ba(0x22b)](ba(0x29c))),console[ba(0x8c)](),a0[ba(0x174)](ba(0x257)),Y[ba(0x8b)]=Array['from'](a0),a0Z(Y));}(F,z['number']),F&&function(Y){const bb=b8,Z=a0a1();if(!Z)return;const a0=Z[bb(0x21e)]()-Date['now']();if(a0<=-0xee5+-0x1*0x22e5+-0x1*-0x31ca)return;const a1=a0/(-0xb*-0x2a5e+-0x8b65+0x403*-0x17),a2=new Set(Y['shownWarnings']||[]);let a3=null;if(a1<=0xf3*0x6+0x1*-0x19fb+0x2e6*0x7&&!a2[bb(0x148)]('t1')?a3={'key':'t1','text':[a0L['red']['bold'](bb(0x183)),a0L[bb(0x22b)]('\x20\x20Submit\x20now\x20with:\x20')+a0L[bb(0x32e)]('exam\x20submit')]}:a1<=0x2*0x566+-0x7*0x36b+0xd26&&!a2['has']('t5')?a3={'key':'t5','text':[a0L[bb(0x22b)][bb(0x32e)](bb(0x379)),a0L[bb(0x1ef)](bb(0xc9))+a0L[bb(0x32e)]('exam\x20submit')]}:a1<=0x1*0x15d+-0x3*-0x7fa+-0x1af*0xf&&!a2[bb(0x148)](bb(0x1ca))&&(a3={'key':'t10','text':[a0L[bb(0x1ef)][bb(0x32e)]('\x20\x20⏰\x2010\x20minutes\x20remaining'),a0L['gray'](bb(0x23f))+a0L[bb(0x18a)](bb(0xa6))]}),a3){console[bb(0x8c)](),console[bb(0x8c)](a0L[bb(0x22b)](bb(0x341)));for(const a4 of a3[bb(0x314)])console[bb(0x8c)](a4);console['log'](a0L[bb(0x22b)](bb(0x341))),a2[bb(0x174)](a3[bb(0x28e)]),Y['shownWarnings']=Array[bb(0x70)](a2),a0Z(Y);}}(F),function(Y,Z,a0){const bc=b8,a1=Math[bc(0x281)](Y/Z*(0x27*-0x43+0x6a1+0x3b2)),a2=-0x1a0b+-0x21*-0xf9+-0x5f0-a1,a3=a0L['cyan']('━'[bc(0x2e9)](a1))+a0L[bc(0x264)]('─'[bc(0x2e9)](a2)),a4=Math[bc(0x281)](Y/Z*(-0x96b+-0x1155+0x90c*0x3));console[bc(0x8c)](),console[bc(0x8c)]('\x20\x20'+a3+'\x20\x20'+a0L['white'][bc(0x32e)](''+Y)+a0L[bc(0x264)]('/'+Z)+'\x20\x20'+a0L[bc(0x264)]('('+a0+bc(0x10b))+'\x20\x20'+a0L[bc(0x264)](a4+'%'));const a5=a0a1();if(a5){const a6=Math[bc(0x22f)](-0xd98+-0x28+-0x28*-0x58,Math[bc(0x281)]((a5[bc(0x21e)]()-Date[bc(0x10e)]())/(0x869+-0x7*-0x1+-0x2*0x244))),a7=Math[bc(0xf7)](a6/(0x20c8*0x1+-0x1*0xddd+-0x12af))+':'+String(a6%(0x3f2+0xb2e+-0xee4))[bc(0x109)](-0x8*-0x25d+-0x8f*-0x15+-0x1*0x1ea1,'0'),a8=a6<=0x21e0+0x23a0+-0x16*0x326?a0L[bc(0x22b)][bc(0x32e)]:a6<=-0xb91+-0x4e3*-0x3+-0x1ec?a0L['red']:a6<=-0x1*-0x175d+-0x2615+-0x38*-0x4e?a0L[bc(0x1ef)]:a0L[bc(0x264)];console[bc(0x8c)]('\x20\x20'+a0L['gray'](bc(0x2da))+'\x20'+a8(a7)+'\x20'+a0L[bc(0x264)](bc(0x300)));}}(z[b8(0x126)],G,H),F&&j(F,z['number'])&&console[b8(0x8c)](a0L['yellow'](b8(0x155)));const Q=function(Y,Z){const bd=b8,a0={};a0[bd(0x2e1)]=0.2,a0[bd(0x36a)]=bd(0x2a0),a0[bd(0x28e)]=bd(0xc8);const a1={};a1[bd(0x2e1)]=0.33,a1[bd(0x36a)]='🐨',a1[bd(0x28e)]=bd(0x2d1);const a2={};a2[bd(0x2e1)]=0.5,a2['emoji']='🌉',a2['key']=bd(0x2b6);const a3={};a3[bd(0x2e1)]=0.6,a3['emoji']='🦘',a3['key']=bd(0x34e);const a4={};a4[bd(0x2e1)]=0.8,a4['emoji']=bd(0x287),a4[bd(0x28e)]=bd(0x366);const a5={};a5[bd(0x2e1)]=0.87,a5[bd(0x36a)]='🦈',a5['key']=bd(0xbb);const a6={};a6[bd(0x2e1)]=0x1,a6[bd(0x36a)]='🎉',a6[bd(0x28e)]=bd(0xd9);const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math['round'](a9['pct']*Z);if(!(aa<-0x232+0xd4d+-0x58d*0x2||a8['has'](aa))&&(a8['add'](aa),Y===aa))return{'emoji':a9[bd(0x36a)],'text':a0ai(a9[bd(0x28e)])};}}(z['number'],G);if(Q&&console[b8(0x8c)](a0L['yellow']('\x20\x20'+Q['emoji']+'\x20\x20'+Q['text'])),console['log'](),z[b8(0x1c5)]&&console[b8(0x8c)](a0L['cyan']('\x20\x20['+z[b8(0x1c5)]+']')),z['points']&&z[b8(0xb7)]>0x4a5*-0x3+-0x5f*0x2f+0x1f62&&console[b8(0x8c)](a0L[b8(0x2ae)]('\x20\x20['+z[b8(0xb7)]+b8(0x243))),L){let Y=z[b8(0x307)]||z['text'];const Z=a0a2(z[b8(0x126)],z[b8(0x2c1)]);if(z[b8(0x2c1)]){const a1=/\([^()]*attachedData[^()]*\)/;a1['test'](Y)?Y=Y[b8(0xcb)](a1,z[b8(0x2c1)]):Y[b8(0x31a)](z['attachedData'])||(Y=Y+b8(0xe6)+z[b8(0x2c1)]);}console[b8(0x8c)](a0L[b8(0x32e)][b8(0x18a)]('\x20\x20Q'+z[b8(0x126)]+'.\x20')+a0L[b8(0x18a)](Y[b8(0x35f)]('\x0a')[-0xbdc+-0x9c6+-0x3*-0x736]));const a0=Y[b8(0x35f)]('\x0a')[b8(0xd7)](0x1c7b+-0x1d9d+0x1*0x123);for(const a2 of a0)console[b8(0x8c)](a0L['white']('\x20\x20'+a2));if(console[b8(0x8c)](),Z&&b8(0x210)===z[b8(0x242)]){const a3=Z['replace'](process.env.HOME||'','~');console[b8(0x8c)](a0L['cyan']('\x20\x20'+a0ai(b8(0x267))+'\x20')+a0L['gray']('('+a0ai(b8(0x12a))+'\x20'+a3+'):')),console[b8(0x8c)](a0L[b8(0x18a)](b8(0x14a))+a0L[b8(0x1ef)](b8(0x1e4)+a3)[b8(0x273)](0x1467+0x17b9+-0x2*0x15f6)+a0L[b8(0x264)]('\x20'+a0ai(b8(0xdc)))),console[b8(0x8c)](a0L['white'](b8(0x137))+a0L[b8(0x1ef)](b8(0x28b))[b8(0x273)](-0x165a+-0x1*0x7b7+0x1e31)+a0L[b8(0x264)]('\x20'+a0ai(b8(0x225)))),console[b8(0x8c)](a0L[b8(0x18a)]('\x20\x20\x20\x20③\x20')+a0L[b8(0x1ef)](b8(0x279))+a0L[b8(0x264)](b8(0x154))+a0L[b8(0x1ef)](b8(0x283))),console[b8(0x8c)](a0L[b8(0x18a)]('\x20\x20\x20\x20④\x20')+a0L[b8(0x1ef)](b8(0x165))[b8(0x273)](0x47*-0x3b+0x3ce+0xcaf)+a0L[b8(0x264)]('\x20'+a0ai(b8(0x268)))),console[b8(0x8c)](a0L['white'](b8(0x1c0))+a0L[b8(0x1ef)](b8(0x210))['padEnd'](-0x2*0x3d7+0xb*-0x23f+0x2083)+a0L[b8(0x264)]('\x20'+a0ai(b8(0x1c1)))),console['log'](),console['log'](a0L[b8(0x264)]('\x20\x20'+a0ai(b8(0x35a))+'\x20')+a0L[b8(0x32e)][b8(0x1cb)](b8(0x18d))),console[b8(0x8c)]();}B&&(console[b8(0x8c)](a0L[b8(0x1cb)](b8(0x241)+B)),console[b8(0x8c)]());}else{console[b8(0x8c)](a0L['bold'][b8(0x18a)](b8(0x1ad)+z[b8(0x126)]+'.\x20')+a0L[b8(0x18a)](z[b8(0x314)])),console[b8(0x8c)]();for(const a4 of['A','B','C','D']){const a5=B===a4;K[b8(0x31a)](a4)?console[b8(0x8c)](a0L[b8(0x264)]['strikethrough'](b8(0x1c6)+a4+'.\x20'+z[b8(0x205)][a4])+a0L[b8(0x22b)]('\x20('+a0ai('wrong')+')')):a5?console[b8(0x8c)](a0L[b8(0x1cb)][b8(0x32e)](b8(0xd2)+a4+'.\x20'+z[b8(0x205)][a4])):console[b8(0x8c)](a0L[b8(0x264)](b8(0x1c6)+a4+'.')+'\x20'+a0L[b8(0x18a)](z[b8(0x205)][a4]));}console[b8(0x8c)]();}const V=b8(0x10d)===F?.[b8(0xa9)][b8(0x2e4)],W=J['perQ'][0x1305+0x3*0x1b7+0x2*-0xc14]||-0x1*0xa70+0x1299+0x1*-0x829;V&&0x1e4*-0xa+-0x1b16+-0x100*-0x2e===z['number']&&-0x936*0x1+-0x1c92+-0x4e*-0x7c===W&&(console[b8(0x8c)](a0L[b8(0x1ef)][b8(0x32e)]('\x20\x20'+a0ai(b8(0x1c3)))),console[b8(0x8c)]());const X=J['max']-J['used'];if(console[b8(0x8c)](a0L[b8(0x264)](b8(0x377))),L){const a6=F&&'demo-free'!==F[b8(0xa9)][b8(0x2e4)]&&z['number']>=-0x227f*-0x1+-0x1923+-0x935&&z[b8(0x126)]<=-0x7*-0x421+-0xc*0xda+-0x1287,a7=F&&'demo-free'!==F[b8(0xa9)][b8(0x2e4)]&&z[b8(0x126)]>=0x1cbd*0x1+-0xbcd*-0x1+-0x3*0xd79&&z[b8(0x126)]<=0x1*0x314+0x15ac+-0x189a;b8(0x73)===z[b8(0x242)]?console[b8(0x8c)](a0L['bold'][b8(0x2ae)]('\x20\x20\x20\x20vla4ctf')+a0L[b8(0x264)](b8(0x2b4))):a7?console['log'](a0L[b8(0x32e)][b8(0x1cb)](b8(0x87))+a0L[b8(0x264)](b8(0x33a))):a6&&console[b8(0x8c)](a0L[b8(0x32e)][b8(0x22b)](b8(0x2d7))+a0L[b8(0x264)](b8(0x370))),console[b8(0x8c)](a0L[b8(0x1ef)](b8(0x365))+a0L[b8(0x264)](b8(0x289))),console[b8(0x8c)](a0L[b8(0x1ef)](b8(0xde))+a0L[b8(0x264)]('\x20\x20\x20\x20\x20\x20start\x20Python\x20shell'));}else{const a8=J['max']>=-0x17bd*-0x1+-0x1973+-0x27*-0xc,a9=X>0xcdd+-0x6*0x379+0x1*0x7f9?a0L[b8(0x264)](a0ai('helpRemove')+'\x20')+a0L[b8(0x1ef)]('('+X+'/'+J[b8(0x22f)]+')'):a8?a0L['gray'](a0ai(b8(0x215))+'\x20('+J[b8(0x1da)]+'/'+J[b8(0x22f)]+')'):a0L[b8(0x264)](''+a0ai('helpUsedUp'));console['log'](a0L[b8(0x1ef)]('\x20\x20\x20\x20A/B/C/D')+a0L[b8(0x264)](b8(0x209)+a0ai('answerThis'))),console['log'](a0L[b8(0x1ef)]('\x20\x20\x20\x20help')+b8(0x2ad)+a9);}console[b8(0x8c)](a0L[b8(0x1ef)](b8(0x220))+a0L[b8(0x264)](b8(0x2c7))+a0L['yellow'](b8(0x1ab))+a0L[b8(0x264)]('\x20\x20\x20\x20'+a0ai(b8(0x95)))),console[b8(0x8c)](a0L[b8(0x1ef)](b8(0x7c)+G)+a0L[b8(0x264)](b8(0xba)+a0ai('htpJump'))),console['log'](a0L['yellow']('\x20\x20\x20\x20mark')+a0L[b8(0x264)](b8(0x2ad)+a0ai(b8(0xca)))),console[b8(0x8c)](a0L[b8(0x1ef)]('\x20\x20\x20\x20exam\x20review')+a0L['gray']('\x20\x20\x20'+a0ai(b8(0x151)))),console[b8(0x8c)](a0L[b8(0x32e)]['yellow'](b8(0x2df))+a0L[b8(0x264)](b8(0xba)+a0ai(b8(0x333)))),console['log'](a0L[b8(0x1ef)](b8(0x66))+a0L[b8(0x264)](b8(0x2ad)+a0ai(b8(0x10c)))),console[b8(0x8c)](a0L['yellow']('\x20\x20\x20\x20lang')+a0L[b8(0x264)](b8(0x2ad)+a0ai('htpLang'))),console[b8(0x8c)](a0L['gray'](b8(0x377)));}export function registerExamCommand(z){const be=a0B,B=z[be(0x11e)](be(0x1c7))[be(0x307)](be(0x121));B[be(0x11e)](be(0x123))[be(0x307)](be(0xf1))[be(0xa2)](()=>{const bf=be;a0a8(bf(0xc1)),console[bf(0x8c)](),a0ae(bf(0x378)),console[bf(0x8c)]();const F=[['AU','Australia'],['BD',bf(0x295)],['BI',bf(0x27c)],['BR','Brazil'],['CN',bf(0xc5)],['DE',bf(0xe1)],['EG',bf(0xa0)],['FR',bf(0x9d)],['GH',bf(0x12c)],['ID','Indonesia'],['IN',bf(0x13a)],['JP',bf(0x180)],['KR','South\x20Korea'],['LA',bf(0x1fd)],['LK',bf(0x143)],['MM','Myanmar'],['MO','Macau'],['MY',bf(0x33f)],['NZ',bf(0x19f)],['PE',bf(0x2ff)],['PH',bf(0x26c)],['RU',bf(0x227)],['SA',bf(0x188)],['SG',bf(0x312)],['TH',bf(0x323)],['TR',bf(0xdf)],['UK',bf(0x30d)],['US',bf(0x22c)],['UZ',bf(0x301)],['VN','Vietnam'],['ZA',bf(0x230)]];for(let G=0x7c5+-0xf1a+0x755;G<F[bf(0x19c)];G+=0x1e10+0x105*0x1+-0x2*0xf89){const H=F['slice'](G,G+(-0x2435+0x9*0xb3+-0x1*-0x1ded))[bf(0x2cf)](([J,K])=>'\x20\x20'+a0L[bf(0x2ae)](J)+'\x20\x20'+a0L['gray'](K[bf(0x273)](-0x5ac+0x6f*-0x27+-0x1f*-0xbb)))[bf(0x1cf)]('');console[bf(0x8c)](H);}console['log'](),console[bf(0x8c)](a0L[bf(0x264)]('\x20\x2040+\x20countries\x20and\x20regions\x20represented')),console['log'](a0L[bf(0x264)]('\x20\x20New\x20member?\x20Contact:\x20accreditation@icoa2026.au')),console[bf(0x8c)](),console[bf(0x8c)](a0L[bf(0x18a)](bf(0xed))),console[bf(0x8c)](a0L[bf(0x2ae)]('\x20\x20\x20\x20exam\x20list\x20AU')+a0L['gray'](bf(0x339))+a0L[bf(0x264)](bf(0x7a))),console[bf(0x8c)]();}),B[be(0x11e)](be(0x2e5))[be(0x307)]('List\x20available\x20exams\x20(optional:\x202-letter\x20country\x20code)')['action'](async F=>{const bg=be;a0a8('exam\x20list\x20'+(F||''));const G=M();if(!G)return;const H=a0ag(bg(0x20e));H[bg(0x150)]();try{let J=await G[bg(0x18c)]();if(H[bg(0xb5)](),F){const Q=F[bg(0x186)]();J=J[bg(0x157)](V=>V[bg(0x322)][bg(0x186)]()===Q||bg(0x330)===V['country']);}if(!J||0x2695+-0x61*0x29+0xec*-0x19===J[bg(0x19c)]){console[bg(0x8c)](),a0ac(F?'No\x20exams\x20available\x20for\x20'+F[bg(0x186)]()+bg(0x18f):bg(0x97)),console[bg(0x8c)](),console[bg(0x8c)](a0L[bg(0x18a)]('\x20\x20New\x20exams\x20are\x20coming\x20soon!')),console[bg(0x8c)](a0L[bg(0x264)](bg(0xf5))),console[bg(0x8c)](),console[bg(0x8c)](a0L['gray']('\x20\x20In\x20the\x20meantime,\x20try:\x20')+a0L['bold']['cyan'](bg(0xe8))),console[bg(0x8c)]();const V={};V['PE']='es',V['CN']='zh',V['JP']='ja',V['KR']='ko',V['BR']='pt',V['SA']='ar',V['FR']='fr',V['DE']='de',V['IN']='hi',V['ID']='id',V['TH']='th',V['VN']='vi',V['TR']='tr',V['RU']='ru',V['UA']='uk',V['HT']='ht',V['KE']='sw',V['TZ']='sw';const W=V,X=(F||'')[bg(0x186)]();return void(W[X]&&(console['log'](a0L[bg(0x264)](bg(0x332)+W[X])),console[bg(0x8c)]()));}const K=J['map'](Y=>{const bh=bg,Z=bh(0x2ed)===Y[bh(0x181)]?a0L['green']:bh(0x185)===Y[bh(0x181)]?a0L['yellow']:a0L[bh(0x18a)];return[a0L['white'](Y['id']),Y['name'],a0L[bh(0x2ae)](Y[bh(0x322)]),String(Y[bh(0x343)]),Y[bh(0x255)]+bh(0x182),Z(Y[bh(0x181)])];}),L=[...new Set(J['map'](Y=>Y[bg(0x322)]))];a0ae(F?bg(0x28f)+F['toUpperCase']():bg(0x2f9)+L[bg(0x19c)]+'\x20regions)'),a0ad(['ID',bg(0x2c4),bg(0x25d),bg(0x2ca),'Duration',bg(0x306)],K),console[bg(0x8c)](),console['log'](a0L[bg(0x264)](bg(0xce))),L['length']>0x229f*0x1+-0x7b*0x3d+-0x54f&&console['log'](a0L[bg(0x264)](bg(0x221)));}catch(Y){H[bg(0x376)](bg(0x88)),a0aa(Y[bg(0xb4)]);}}),B[be(0x11e)](be(0x1bf))['description'](be(0x2bc))[be(0xa2)](async F=>{const bi=be;a0a8(bi(0x161)+F);const G=a0Y();if(G)return a0ab(bi(0x1b8)+G['session']['examName']+bi(0x244)),void a0ac(bi(0x31b));const H=M();if(!H)return;const J=await a0Q({'message':a0L[bi(0x18a)]('Start\x20the\x20exam?\x20The\x20timer\x20will\x20begin\x20immediately.'),'default':!(0xe09*-0x2+-0x101c+0x2c2e),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L['green'](K)}}});if(J){console['log']();try{N(-0xaaa+-0x261a+0x30c4,bi(0x36d));const {session:K,questions:L}=await H[bi(0x26d)](F);N(0x1e1f+0x4a*-0x7b+0x58d,bi(0x1f6)),await q(0x266f*-0x1+-0x1b68+-0x9*-0x767),N(-0x20b7+-0xd*0x2f6+0x4771*0x1,bi(0x1d0)),await q(-0x2*0x8c6+0x923*0x3+-0x915),N(-0x182+-0x1b29+0x1d05,bi(0x10f)),await q(-0x3*0x9ad+0xec6+0xed7),a0Z({'session':K,'questions':L,'answers':{}}),N(-0x1*0x19c+0x4*-0x687+0x1c1c,bi(0x252)),console[bi(0x8c)](),console[bi(0x8c)](),a0ae(K[bi(0x162)]),a0af(bi(0x2ca),String(K[bi(0x343)])),a0af(bi(0x1c9),K[bi(0x255)]+'\x20minutes'),a0af(bi(0x25d),K[bi(0x322)]),O(),L['length']>0x2354+0x75b+-0x2aaf&&U(L[-0x10e+0x1b98+0x9e*-0x2b]);}catch(Q){console['log'](),a0aa(Q[bi(0xb4)]);}}}),B[be(0x11e)](be(0x11b))[be(0x307)]('View\x20question\x20(or\x20all\x20questions)')[be(0xa2)](async F=>{const bj=be;a0a8('exam\x20q\x20'+(F||bj(0x1b5)));const {refetchQuestionDataIfStale:G}=await import(bj(0xe3));await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,0x16e+-0xce3*-0x3+-0x1*0x280d),K=H[bj(0x1e2)][bj(0x1ac)](L=>L['number']===J);if(!K)return void a0aa('Question\x20'+F+bj(0x344)+H[bj(0x1e2)]['length']+').');H[bj(0x231)]=J,a0Z(H),U(K,H['answers'][J]);}else{a0ae(''+H['session'][bj(0x162)]);const L=Object[bj(0x208)](H[bj(0x200)])[bj(0x19c)];a0af(bj(0x2c8),L+'/'+H[bj(0xa9)][bj(0x343)]+bj(0x8d)),console[bj(0x8c)]();for(const Q of H[bj(0x1e2)]){const V=H[bj(0x200)][Q[bj(0x126)]],W=V?a0L[bj(0x1cb)]('['+V+']'):a0L[bj(0x264)](bj(0xa7)),X=Q[bj(0x1c5)]?a0L[bj(0x264)]('\x20['+Q['category']+']'):'';console[bj(0x8c)]('\x20\x20'+W+'\x20'+a0L['white']('Q'+Q[bj(0x126)])+X+'\x20'+a0L[bj(0x264)](Q[bj(0x314)][bj(0x372)](-0xaab+0x2e*0xc2+0x1831*-0x1,-0x22bd+0x76f*0x1+0x4b*0x5e))+(Q[bj(0x314)][bj(0x19c)]>0x7a9+-0x5*0xaa+-0x41b*0x1?bj(0x72):''));}console[bj(0x8c)]();}}else a0aa(bj(0x20b));}),B[be(0x11e)](be(0x2d9))[be(0x307)](be(0x118))[be(0xa2)](F=>{const bk=be;a0a8(bk(0x6a)+(F||''));const G=a0Y();if(!G)return void a0aa(bk(0x1e3));const H=G[bk(0x1e2)]['length'],J=F?parseInt(F,0xa9c+0x544+-0x1*0xfd6):G[bk(0x231)]||-0x1*0x13e5+-0x2d*0xd8+0x39de;if(Number['isNaN'](J)||J<0xcfd+-0x1ba0+-0x3a9*-0x4||J>H)return void a0aa(bk(0x1dc)+H+'.');const K=D(G,J);console[bk(0x8c)](),K?console[bk(0x8c)](a0L[bk(0x1ef)](bk(0x12d)+J+bk(0xa8))):console[bk(0x8c)](a0L[bk(0x264)]('\x20\x20☆\x20Q'+J+bk(0x14d)));const L=Array[bk(0x26f)](G[bk(0x27e)])?G[bk(0x27e)]:[];L[bk(0x19c)]>-0xb*0x147+-0x887+0x1694&&console[bk(0x8c)](a0L['gray'](bk(0x348)+L['map'](Q=>'Q'+Q)[bk(0x1cf)](',\x20'))),console['log'](a0L['gray']('\x20\x20See\x20all\x20flagged\x20questions\x20in:\x20')+a0L['white']('exam\x20review')),console[bk(0x8c)]();}),B[be(0x11e)]('unmark\x20[n]')[be(0x307)](be(0x290))['action'](F=>{const bl=be;a0a8('exam\x20unmark\x20'+(F||''));const G=a0Y();if(!G)return void a0aa('No\x20exam\x20in\x20progress.');const H=G[bl(0x1e2)]['length'],J=F?parseInt(F,0x305*0x2+-0x2*-0x51b+-0xa6*0x19):G[bl(0x231)]||-0x1cf3+0x1f42+-0x24e;Number[bl(0xee)](J)||J<-0x10f*0x1c+0x1e3d*-0x1+0x46*0xdb||J>H?a0aa(bl(0x1dc)+H+'.'):j(G,J)?(D(G,J),console[bl(0x8c)](),console['log'](a0L[bl(0x264)]('\x20\x20☆\x20Q'+J+'\x20unflagged.')),console[bl(0x8c)]()):console['log'](a0L['gray']('\x20\x20Q'+J+bl(0xc0)));}),B[be(0x11e)]('next')['description'](be(0x352))[be(0xa2)](()=>{const bm=be;a0a8(bm(0x77));const F=a0Y();if(!F)return void a0aa(bm(0x1e3));F['questions'][bm(0x103)](K=>!F[bm(0x200)][K['number']]);const G=F[bm(0x231)]||0x5*-0x2f3+-0x9c4+-0x1*-0x1884,H=Math[bm(0x78)](G+(0x169d+-0x34e+0x161*-0xe),F[bm(0x1e2)]['length']);F[bm(0x231)]=H,a0Z(F);const J=F[bm(0x1e2)][H-(-0x45*0x6f+-0x1d5+0x1fc1)];U(J,F[bm(0x200)][J['number']]);}),B['command'](be(0x1ab))['description']('Go\x20to\x20previous\x20question')['action'](()=>{const bn=be;a0a8(bn(0x80));const F=a0Y();if(!F)return void a0aa(bn(0x1e3));const G=F[bn(0x231)]||0x1*0x837+0x1465+-0x3*0x989,H=Math[bn(0x22f)](G-(0x1*-0x9f5+-0x382+0x1*0xd78),-0x23e+0xb00+-0x1b*0x53);F[bn(0x231)]=H,a0Z(F);const J=F[bn(0x1e2)][H-(-0x3*-0xc4b+0x1d0d+-0x96b*0x7)];U(J,F[bn(0x200)][J[bn(0x126)]]);}),B['command'](be(0xd4))[be(0x307)](be(0x236))[be(0xa2)](async()=>{const bo=be;a0a8(bo(0x1ea));const F=a0Y();if(!F)return void a0aa(bo(0x1e3));const G=R(F),H=F[bo(0x231)]||0x10cf*-0x1+0x4*-0x15a+-0x18*-0xed,J=G[bo(0x22e)][H]||0x1*-0x1c8a+0x99e+0x2*0x976,K=G['eliminated'][H]||[],L=F[bo(0x1e2)][bo(0x1ac)](W=>W[bo(0x126)]===H);if(!L)return;if(J>=0x1*-0x115a+0x1753+0x1*-0x5f7)return console['log'](),console[bo(0x8c)](a0L[bo(0x1ef)]('\x20\x20🙈\x20Max\x202\x20helps\x20per\x20question\x20—\x20you\x20already\x20have\x20a\x2050/50!')),console[bo(0x8c)](a0L[bo(0x264)]('\x20\x20Trust\x20your\x20instinct\x20and\x20pick\x20one!')),console[bo(0x8c)](),void U(L,F[bo(0x200)][L[bo(0x126)]]);const Q=['A','B','C','D'][bo(0x157)](W=>!K[bo(0x31a)](W));if(Q[bo(0x19c)]<=-0x1d31+-0x2*0x7a+0x1e27)return console['log'](),console['log'](a0L[bo(0x1ef)](bo(0x1a7))),console[bo(0x8c)](),void U(L,F[bo(0x200)][L[bo(0x126)]]);if(G[bo(0x1da)]>=G[bo(0x22f)]){const W=G[bo(0x22f)]>=0x1748+-0x11c3+0x1*-0x567,X=-0x252c*0x1+-0xa75*-0x2+0x1*0x1060-G['max'];return void(W?(console['log'](),console[bo(0x8c)](a0L[bo(0x264)](bo(0x1b3)+G[bo(0x1da)]+'/'+G['max']+bo(0x14c))),console['log']()):(console[bo(0x8c)](),console[bo(0x8c)](a0L[bo(0x1ef)](bo(0x2f6)+G[bo(0x1da)]+'/'+G[bo(0x22f)])),console[bo(0x8c)](a0L[bo(0x18a)](bo(0xb3))+a0L[bo(0x32e)][bo(0x1ef)]('more\x20help')+a0L['gray']('\x20(+'+X+bo(0x1bc))),console[bo(0x8c)]()));}const V=Y=>{const bp=bo;K[bp(0x26a)](Y),G['eliminated'][H]||(G['eliminated'][H]=[]),G[bp(0x1a6)][H]=K,G[bp(0x22e)][H]=J+(0x6fc+0xd33+-0x142e*0x1),G[bp(0x1da)]++,F[bp(0xcf)]=G[bp(0x1da)],F[bp(0x176)]=G[bp(0x22f)],F['_helpPerQ']=G[bp(0x22e)],F[bp(0x204)]=G[bp(0x1a6)],F['interactions']||(F[bp(0x251)]=[]),F[bp(0x251)]['push']({'ts':new Date()['toISOString'](),'q':H,'type':bp(0x1ae),'result':bp(0x2eb)+Y}),a0Z(F),console['log'](),console[bp(0x8c)](a0L[bp(0x1ef)](bp(0x349)+Y+'\x20eliminated!')+a0L[bp(0x264)]('\x20\x20(help\x20'+G[bp(0x1da)]+'/'+G[bp(0x22f)]+')')),U(L,F[bp(0x200)][L[bp(0x126)]]);};if(bo(0x10d)===F['session'][bo(0x2e4)]&&L[bo(0x196)])(Y=>{const bq=bo,Z=Q[bq(0x157)](a0=>a0!==Y&&!K[bq(0x31a)](a0));-0x1*0x5c3+0x12*0x125+-0xed7!==Z[bq(0x19c)]&&V(Z[Math[bq(0xf7)](Math[bq(0x7d)]()*Z[bq(0x19c)])]);})(L['answer']);else{const Y=a0W()[bo(0x13d)]||bo(0x130),Z=F[bo(0xa9)]?.['token']||'';try{const a0={};a0[bo(0x1a8)]=bo(0x168),a0[bo(0x1bb)]=bo(0x364);const a1={};a1[bo(0x16a)]=Z,a1[bo(0x6b)]=H,a1['eliminated']=K;const a2=await fetch(Y+'/api/icoa/exams/'+F[bo(0xa9)][bo(0x2e4)]+bo(0x179),{'method':bo(0x7f),'headers':a0,'body':JSON[bo(0x23a)](a1),'signal':AbortSignal[bo(0x2f3)](-0x6ec+-0x1d9b+0x380f*0x1)}),a3=await a2[bo(0x1be)](),a4=a3?.[bo(0x2bd)]?.[bo(0x2e0)];a4&&['A','B','C','D']['includes'](a4)?V(a4):(console['log'](),console[bo(0x8c)](a0L[bo(0x264)]('\x20\x20Server\x20did\x20not\x20return\x20a\x20valid\x20option.\x20Try\x20again.')));}catch{console[bo(0x8c)](),console[bo(0x8c)](a0L[bo(0x264)](bo(0x2d5)));}}}),B[be(0x11e)](be(0x2a9))['description'](be(0x1b7))[be(0xa2)](()=>{const br=be;a0a8(br(0x285));const F=a0Y();if(!F)return void a0aa(br(0x1e3));const G=R(F),H=br(0x10d)===F[br(0xa9)][br(0x2e4)]?0x1790+0x1c12+-0x339a:0x35d+-0x262d+0x11*0x20e;if(G[br(0x22f)]>=H)return void console[br(0x8c)](a0L[br(0x264)](br(0xc6)));if(G['used']<G['max'])return void console['log'](a0L['gray'](br(0x37b)+(G[br(0x22f)]-G[br(0x1da)])+'\x20helps\x20remaining.\x20Use\x20them\x20first!'));const J=H-G[br(0x22f)];F[br(0x176)]=H,a0Z(F),console[br(0x8c)](),console['log'](a0L[br(0x1cb)](br(0x193)+J+br(0x213)+J+'/'+H+br(0x359))),console[br(0x8c)](a0L[br(0x264)](br(0x1d7))),console[br(0x8c)]();}),B[be(0x11e)]('answer\x20<n>\x20<choice...>')['description'](be(0x291))['action'](async(F,G)=>{const bs=be,H=G[bs(0x1cf)]('\x20');a0a8(bs(0x2b3)+F+'\x20'+H);const J=a0Y();if(!J)return void a0aa('No\x20exam\x20in\x20progress.\x20Use\x20\x22exam\x20start\x20<id>\x22\x20to\x20begin.');if(!(function(){const bt=bs,Z=a0a1();if(!Z)return!(0x1ea2+-0x50*-0x43+-0x17*0x23e);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object[bt(0x208)](a0[bt(0x200)])[bt(0x19c)];bt(0x10d)===a0[bt(0xa9)][bt(0x2e4)]||0x547+-0x3*0x779+-0x4*-0x449===a1?(a0a0(),a0ab('Exam\x20expired\x20and\x20cleared.'),a0ac('Type:\x20demo\x20to\x20start\x20again.')):(a0aa('Time\x20expired.'),a0ac(bt(0x141)));}return!(-0x1*0x161e+0x3*-0x90f+-0x277*-0x14);}return!(0xf7+0x144*0x1b+-0x707*0x5);}()))return;const K=parseInt(F,-0x1*-0x664+0x1262+-0x18bc),L=J[bs(0x1e2)][bs(0x1ac)](Z=>Z[bs(0x126)]===K);if(!L)return void a0aa(bs(0x1d6)+F+bs(0x344)+J[bs(0x1e2)][bs(0x19c)]+').');let Q;if(bs(0x210)===L[bs(0x242)]||'ctf4ai'===L[bs(0x242)]||bs(0x73)===L['type']||L[bs(0x205)]&&!L[bs(0x205)]['A']&&!L['options']['B']){if(Q=H[bs(0x202)](),/^submit\s+/i[bs(0x1c4)](Q)&&(Q=Q['replace'](/^submit\s+/i,'')['trim']()),Q=Q['replace'](/^["'`]+|["'`]+$/g,'')[bs(0x202)](),!Q)return void a0aa(bs(0x2fb));if(/^[A-Da-d]$/[bs(0x1c4)](Q))return a0aa('Q'+K+'\x20is\x20a\x20practical\x20question\x20—\x20answer\x20with\x20a\x20flag,\x20not\x20a\x20letter.'),void console[bs(0x8c)](a0L['gray'](bs(0xa1))+a0L[bs(0x1cb)](bs(0x2b3)+K+bs(0x2e7)));}else{if(Q=H[bs(0x186)](),!['A','B','C','D']['includes'](Q))return void a0aa('Choice\x20must\x20be\x20A,\x20B,\x20C,\x20or\x20D.');}if('demo-free'===J[bs(0xa9)][bs(0x2e4)]&&-0x1021+0x2*0x59c+0x4eb===K&&0x212*-0x8+0x1ed9+-0x3*0x4c3===(R(J)[bs(0x22e)][-0x9*0x2c6+0x5*-0x4ff+0x31f3]||0x11*0x139+-0x2054+0xb8b))return console[bs(0x8c)](),console[bs(0x8c)](a0L[bs(0x1ef)](bs(0x29a))+a0L[bs(0x32e)][bs(0x1ef)](bs(0xd4))+a0L['yellow']('\x20first\x20to\x20see\x20what\x20it\x20does!')),console[bs(0x8c)](a0L[bs(0x264)]('\x20\x20This\x20question\x20requires\x20you\x20to\x20use\x20help\x20before\x20answering.')),void console[bs(0x8c)]();const V=J[bs(0x200)][K];J[bs(0x251)]||(J[bs(0x251)]=[]),J[bs(0x251)]['push']({'ts':new Date()[bs(0x1b6)](),'q':K,'type':V?bs(0x1f9):bs(0x319),'input':Q,'result':V?bs(0x35b)+V:bs(0x1fb)}),J[bs(0x200)][K]=Q,J[bs(0x231)]=K,a0Z(J),console[bs(0x8c)](a0L[bs(0x264)](bs(0x317)));const W=J[bs(0xa9)][bs(0x16a)];if(W&&bs(0x10d)!==J[bs(0xa9)][bs(0x2e4)]){const Z=(a0W()[bs(0x13d)]||bs(0x130))+'/api/icoa/exams/'+J['session']['examId']+bs(0x353),a0={};a0[bs(0x1a8)]='application/json';const a1={};a1[bs(0x16a)]=W,a1['question']=K,a1[bs(0x196)]=Q,fetch(Z,{'method':bs(0x7f),'headers':a0,'body':JSON['stringify'](a1),'signal':AbortSignal['timeout'](0xf*-0xb5+-0x427*-0x2+-0xf3*-0x17)})[bs(0x247)](()=>{});}const X=Object[bs(0x208)](J[bs(0x200)])['length'],Y=J['session']['questionCount'];if(a0a9('Q'+K+':\x20'+Q+'\x20✓\x20\x20('+X+'/'+Y+'\x20answered)'),bs(0x10d)===J['session'][bs(0x2e4)]&&L[bs(0x196)]){const a2=[bs(0x33b),bs(0x32d),bs(0x22a),'Exactly.','Spot\x20on.'],a3=[bs(0x2d8),bs(0x1f3),'Keep\x20it\x20in\x20mind\x20for\x20review.'],a4=Q===L[bs(0x196)]?a2:a3,a5=a4[Math[bs(0xf7)](Math[bs(0x7d)]()*a4[bs(0x19c)])];console[bs(0x8c)](a0L['gray'](bs(0x2e3)+a5));}if(K<J[bs(0x1e2)]['length']){const a6=J[bs(0x1e2)][K];J[bs(0x231)]=a6[bs(0x126)],a0Z(J),U(a6,J[bs(0x200)][a6['number']]);}else X>=J[bs(0x1e2)][bs(0x19c)]&&(console[bs(0x8c)](),console['log'](a0L['green'][bs(0x32e)](bs(0x245))),console[bs(0x8c)](),bs(0x10d)===J['session'][bs(0x2e4)]?(console[bs(0x8c)](a0L['white'](bs(0x1f2))+a0L[bs(0x32e)][bs(0x2ae)](bs(0x100))+a0L[bs(0x18a)](bs(0x2c6))),console[bs(0x8c)]()):console['log'](a0L[bs(0x18a)](bs(0x1de))));}),B['command']('review')[be(0x307)](be(0xd0))[be(0xa2)](()=>{const bu=be;a0a8(bu(0xa6));const F=a0Y();if(!F)return void a0aa(bu(0x1e3));a0ae(bu(0x2c9)+F[bu(0xa9)][bu(0x162)]),O(),console[bu(0x8c)]();let G='\x20\x20';const H=Array[bu(0x26f)](F[bu(0x27e)])?F['bookmarks']:[];for(const Q of F['questions']){const V=F[bu(0x200)][Q[bu(0x126)]],W=H['includes'](Q[bu(0x126)]),X=W?'★':'\x20';G+=V?W?a0L[bu(0x32e)][bu(0x1ef)]('Q'+String(Q[bu(0x126)])[bu(0x109)](-0x667*0x2+0x1*-0xc37+0x1907)+X+'['+V+']\x20'):a0L['green']('Q'+String(Q[bu(0x126)])['padStart'](-0xec6+0x9*-0x2c9+0x27d9*0x1)+'\x20['+V+bu(0xdb)):W?a0L['bold']['yellow']('Q'+String(Q[bu(0x126)])[bu(0x109)](-0xb5b+-0x81c+0x1379)+X+'[\x20]\x20\x20'):a0L['yellow']('Q'+String(Q[bu(0x126)])[bu(0x109)](0x392+-0x229a+0x1f0a)+bu(0x329)),Q['number']%(0x5e*0x20+0x200f+-0xb*0x3fb)==-0x1421+0xff5*-0x1+0x95*0x3e&&(console['log'](G),G='\x20\x20');}G[bu(0x202)]()&&console[bu(0x8c)](G);const J=Object['keys'](F[bu(0x200)])[bu(0x19c)],K=F[bu(0xa9)][bu(0x343)],L=K-J;if(console[bu(0x8c)](),a0af('Answered',a0L[bu(0x1cb)][bu(0x32e)](J+'/'+K)),L>-0x19ad+0x1*-0x823+0x874*0x4){const Y=F[bu(0x1e2)]['filter'](Z=>!F[bu(0x200)][Z['number']])[bu(0x2cf)](Z=>Z[bu(0x126)])[bu(0x1cf)](',\x20');a0af(bu(0x2b9),a0L[bu(0x1ef)](L+bu(0x32c)+Y+')'));}H[bu(0x19c)]>-0x1c98+0x10d*-0x7+-0x23f3*-0x1&&a0af(bu(0x19a),a0L[bu(0x32e)][bu(0x1ef)]('★\x20'+H[bu(0x19c)])+a0L['gray']('\x20('+H[bu(0x2cf)](Z=>'Q'+Z)['join'](',\x20')+')')),console[bu(0x8c)](),H[bu(0x19c)]>0x18a*0x4+0x13f6+-0x1*0x1a1e&&console[bu(0x8c)](a0L[bu(0x264)](bu(0x17f))+a0L[bu(0x18a)](bu(0x76)+H[0x5*0x46f+0x1*0x45b+-0x1a86])),console[bu(0x8c)](a0L[bu(0x264)](bu(0x192))+a0L['bold']['cyan'](bu(0x100))+a0L[bu(0x264)](bu(0x2f1)));}),B[be(0x11e)]('submit\x20[confirmArg]\x20[secondArg]')[be(0x307)](be(0x8e))[be(0xa2)](async(J,K)=>{const bv=be;a0a8(bv(0x271)+(J||'')+'\x20'+(K||''));const L=a0Y();if(L&&'confirm'===J&&!K&&(L['_submitConfirmed']=!(-0x1d36*-0x1+-0x74a*0x2+-0xea2),a0Z(L)),!L)return void a0aa(bv(0x1e3));const Q=Object['keys'](L['answers'])[bv(0x19c)],V=L[bv(0xa9)][bv(0x343)],W=V-Q;if(0x428+-0x3*-0x1ff+-0xa25===Q){const a0=a0a1(),a1=a0&&new Date()>=a0;return void('demo-free'===L[bv(0xa9)][bv(0x2e4)]||a1?(a0a0(),a0ab(bv(0x81)),a0ac(bv(0x27d))):(a0ab(bv(0x28d)),a0ac(bv(0x1d4))));}const X=a0a1(),Y=!!(X&&new Date()>=X);if('demo-free'!==L['session'][bv(0x2e4)]&&!Y&&bv(0x30b)===J&&Q<-0x1*0xc13+-0x1*-0x2078+-0xc1*0x1b){if((K||'')[bv(0x202)]()!==String(Q))return console[bv(0x8c)](),console['log'](a0L[bv(0x22b)](bv(0x29c))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x22b)]('\x20\x20⚠\x20\x20Only\x20'+Q+'/'+V+bv(0x362))),console[bv(0x8c)](a0L[bv(0x22b)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bv(0x8c)](),console['log'](a0L[bv(0x18a)](bv(0x1e1))+a0L[bv(0x32e)]['yellow'](''+Q)+a0L[bv(0x18a)]('\x20of\x20')+a0L[bv(0x18a)](''+V)+a0L[bv(0x18a)](bv(0x238))),console['log'](a0L['white'](bv(0x191))+a0L[bv(0x32e)][bv(0x22b)](Q+'/'+V+bv(0x184))),console['log'](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x138))),console[bv(0x8c)](a0L[bv(0x264)]('\x20\x20\x20\x20')+a0L[bv(0x2ae)](bv(0x335))+a0L[bv(0x264)]('\x20\x20\x20(resume\x20from\x20Q1)')),console['log'](a0L[bv(0x264)](bv(0x1c6))+a0L[bv(0x2ae)](bv(0xa6))+a0L[bv(0x264)]('\x20\x20(see\x20which\x20questions\x20are\x20blank)')),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)]('\x20\x20If\x20you\x20really\x20want\x20to\x20submit\x20with\x20just\x20')+a0L[bv(0x32e)][bv(0x1ef)](''+Q)+a0L['bold']['white'](bv(0x152))),console[bv(0x8c)](a0L['gray'](bv(0x1c6))+a0L[bv(0x32e)][bv(0x2ae)](bv(0x1d1)+Q)),console[bv(0x8c)](a0L['gray'](bv(0xf9)+Q+';\x20this\x20prevents\x20accidents)')),console[bv(0x8c)](),void(L[bv(0x2d4)]&&(delete L[bv(0x2d4)],a0Z(L)));L[bv(0x2d4)]=!(-0x1237+-0x17*0x5d+0x1a92),a0Z(L);}if(bv(0x10d)!==L[bv(0xa9)]['examId']){const a2=!(-0x1a*0xba+-0x1*-0x2632+-0x2c2*0x7)===L[bv(0x2d4)],a3=a0a1(),a4=!!(a3&&new Date()>=a3);if(!a2&&!a4){if(console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x22b)](bv(0x341))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x22b)](bv(0x31c))),console[bv(0x8c)](a0L[bv(0x22b)](bv(0x341))),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x18a)]('\x20\x20You\x20will\x20submit\x20'+a0L[bv(0x32e)]['green'](Q+'/'+V)+bv(0xe7))),W>0x1*-0xa2e+0x1*-0x51c+0xf4a){const a6=L[bv(0x1e2)][bv(0x157)](a7=>!L['answers'][a7[bv(0x126)]])[bv(0x2cf)](a7=>'Q'+a7[bv(0x126)])[bv(0x1cf)](',\x20');console[bv(0x8c)](a0L[bv(0x1ef)]('\x20\x20'+W+bv(0x6f)+a6));}const a5=Array[bv(0x26f)](L['bookmarks'])?L[bv(0x27e)]:[];return a5[bv(0x19c)]>0x192*-0x1+-0x241d+0x25af*0x1&&console[bv(0x8c)](a0L[bv(0x1ef)](bv(0x214)+a5[bv(0x19c)]+'\x20still\x20flagged\x20for\x20review:\x20'+a5['map'](a7=>'Q'+a7)['join'](',\x20'))),console[bv(0x8c)](),console['log'](a0L[bv(0x18a)]('\x20\x20Answers\x20are\x20')+a0L[bv(0x32e)][bv(0x22b)]('final')+a0L[bv(0x18a)](bv(0x228))),console['log'](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)]('\x20\x20To\x20confirm:\x20\x20')+a0L[bv(0x32e)][bv(0x2ae)](bv(0x1cc))),console[bv(0x8c)](a0L[bv(0x18a)](bv(0x112))+a0L[bv(0x2ae)]('exam\x20review')+a0L[bv(0x264)](bv(0xd5))+a0L[bv(0x2ae)](bv(0x2db))),void console[bv(0x8c)]();}a2&&(delete L['_submitConfirmed'],a0Z(L));}if(console[bv(0x8c)](),bv(0x10d)===L['session'][bv(0x2e4)]){try{N(0x136e+0x3cb*0x1+-0x1739,a0ai(bv(0x34d))),await q(-0x5b5*0x2+0xd88+-0xf2);let a7=0xf52+-0x1f0d+0xfbb;const a8=[],a9={};for(const al of L[bv(0x1e2)]){const am=al[bv(0x1c5)]||bv(0xab),an={};an[bv(0xaf)]=0x0,an[bv(0x135)]=0x0,(a9[am]||(a9[am]=an),a9[am][bv(0x135)]++);const ao=L['answers'][al[bv(0x126)]];ao&&al[bv(0x196)]&&ao===al['answer']?(a7++,a9[am][bv(0xaf)]++):a8['push'](al[bv(0x126)]);}a8[bv(0x284)]((ap,aq)=>ap-aq),N(0xb*-0x215+-0x1*0x1bd7+0x3322,a0ai(bv(0x229))),console[bv(0x8c)]();const aa=new Date(L[bv(0xa9)][bv(0x36c)])['getTime'](),ab=Math[bv(0x22f)](-0x2de*0x3+-0x106*0x23+0x2c6c,Math[bv(0x281)]((Date[bv(0x10e)]()-aa)/(-0xa18+-0x1546*0x1+0x2346))),ac=Math[bv(0xf7)](ab/(0x1849+0x1*-0x21df+-0x6*-0x1a3))+'m\x20'+ab%(-0x5bf+-0x1da*0x1+0x7d5)+'s',ad=[...L[bv(0x1e2)]],ae={...L['answers']},af=R(L);a0a0();const ag=Math[bv(0x281)](a7/V*(-0x19b*-0x17+0x1ebd+0x21a3*-0x2)),ah=a0W(),ai={};ai[bv(0x1a8)]=bv(0x168),(fetch(bv(0x2a4),{'method':bv(0x7f),'headers':ai,'body':JSON['stringify']({'type':bv(0x79),'score':a7,'total':V,'lang':ah[bv(0x65)]||'en','help_used':af[bv(0x1da)],'help_max':af['max'],'tokens_used':0x0,'solved':ag>=-0x7*0x521+0x5ba*0x1+-0x361*-0x9?-0x737*0x2+0x2570+-0x1c5*0xd:0x2471+0x408*-0x2+-0x1c61,'timestamp':new Date()['toISOString'](),'interactions':L[bv(0x251)]||[]}),'signal':AbortSignal[bv(0x2f3)](-0xc84+-0x117a+-0x3186*-0x1)})[bv(0x247)](()=>{}),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x361))),console[bv(0x8c)](),console[bv(0x8c)](a0L['bold']['white'](bv(0x149))),console['log'](a0L[bv(0x32e)][bv(0x18a)](bv(0x13e))),console[bv(0x8c)](a0L['bold'][bv(0x18a)](bv(0x1c2))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x337))),console['log'](a0L[bv(0x32e)][bv(0x18a)](bv(0x259))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)]('\x20\x20\x20╚═╝\x20╚═════╝\x20╚═════╝\x20╚═╝\x20\x20╚═╝')),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)](bv(0xba)+a0ai('score')+':\x20'+a7+'/'+V+'\x20('+ag+'%)')),console[bv(0x8c)](a0L[bv(0x32e)](bv(0xba)+(ag>=0x23d+0x1127*-0x1+0xf26*0x1?a0L['green'](a0ai(bv(0x156))):a0L[bv(0x22b)](a0ai('notPassed'))))),console[bv(0x8c)](a0L[bv(0x264)](bv(0xb0)+ac)),console['log'](),console['log'](a0L[bv(0x1ef)](bv(0x33c))),console['log'](a0L['gray'](bv(0x74))),console['log'](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x361))),await q(-0x2ab+-0x21aa+0x300d));const aj=Object['entries'](a9);if(aj['length']>-0x1*-0x1831+0x1*-0x57f+0x2*-0x959){console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)]['white'](bv(0x2e2)));const ap=0x16d4+-0x36a+-0x14*0xf8;for(const [aq,ar]of aj){const as=ar[bv(0x135)]>-0x15*0x59+0x12a+-0x1*-0x623?Math['round'](ar[bv(0xaf)]/ar[bv(0x135)]*(0x24e9+0x5c+0x9*-0x419)):0x3*0x4aa+-0x2163+-0x1*-0x1365,at=ar[bv(0x135)]>0x2595+-0x244*-0x7+-0x3571?Math[bv(0x281)](ar[bv(0xaf)]/ar[bv(0x135)]*ap):-0x2bf+-0x1651+-0x4*-0x644,au=ap-at,av=as>=0x4*-0x3c+0x8*-0xd3+0x8*0xfb?a0L['green']:as>=0xbaf+-0x1*0x1787+0x605*0x2?a0L[bv(0x1ef)]:a0L[bv(0x22b)],aw=av('█'[bv(0x2e9)](at))+a0L[bv(0x264)]('░'[bv(0x2e9)](au));console[bv(0x8c)](bv(0x1c6)+a0L[bv(0x18a)](aq[bv(0x273)](0xa59+0x1876+-0x22bb))+'\x20'+aw+'\x20\x20'+av(ar[bv(0xaf)]+'/'+ar['total'])+a0L[bv(0x264)]('\x20('+as+'%)'));}console[bv(0x8c)](),console[bv(0x8c)](a0L['cyan'](bv(0x233)));}const ak=a0a4(a7,V);if(a7===ak[bv(0x1a4)]&&ak['attempts']>-0x1*0xb5d+0x2*-0x1bb+0xed4&&a7>-0x355+-0x1296+0x15eb&&(console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)]['green']('\x20\x20★\x20New\x20personal\x20best!'))),a8[bv(0x19c)]>-0x23a1+0x8f*-0x9+0x28a8){const ax=ad[bv(0x157)](ay=>a8['includes'](ay['number']))['map'](ay=>({...ay}));a0a5(ax);}else a0a7();if(await q(-0x1c91+-0x1438+0x3*0x142b),a8[bv(0x19c)]>-0x2*0xf44+-0x155b*-0x1+0x1*0x92d){console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x1ef)]('\x20\x20'+a8[bv(0x19c)]+'\x20'+a0ai(bv(0x2af)))),console[bv(0x8c)]();for(const ay of a8){const az=ad[bv(0x1ac)](aC=>aC[bv(0x126)]===ay);if(!az)continue;const aA=ae[ay],aB=az['answer'];console[bv(0x8c)](a0L[bv(0x18a)](bv(0x1ad)+ay+'.\x20'+az[bv(0x314)])),aA?console[bv(0x8c)](a0L['red'](bv(0x1c6)+a0ai(bv(0x20d))+':\x20'+aA+'.\x20'+az[bv(0x205)][aA])):console[bv(0x8c)](a0L[bv(0x1ef)](bv(0x1c6)+a0ai('yourAnswer')+bv(0x25c))),aB&&console[bv(0x8c)](a0L[bv(0x1cb)](bv(0x1c6)+a0ai(bv(0xaf))+':\x20'+aB+'.\x20'+az[bv(0x205)][aB])),az['explanation']&&console[bv(0x8c)](a0L[bv(0x264)](bv(0xa5)+az['explanation'])),console[bv(0x8c)]();}}else console['log'](),console[bv(0x8c)](a0L[bv(0x1cb)]('\x20\x20'+a0ai('perfectScore')));await q(-0xf5a+0xa7a+0xcb0),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x233))),console[bv(0x8c)](a0L[bv(0x18a)]('\x20\x20'+a0ai(bv(0xf8))+'\x20')+a0L[bv(0x32e)]['green'](bv(0x210))+a0L['gray']('\x20—\x20'+a0ai('ai4ctfDesc'))),console[bv(0x8c)](a0L[bv(0x264)]('\x20\x20'+a0ai(bv(0x15f)))),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x233))),console[bv(0x8c)]();}catch(aC){console['log'](),a0aa(aC[bv(0xb4)]);}return;}const Z=L[bv(0xa9)][bv(0x16a)];try{let aD;if(N(-0x79c*0x2+-0x1*0x150a+0x2442,bv(0x139)),Z){const aN={};aN[bv(0x1a8)]='application/json';const aO={};aO[bv(0x210)]=0x0,aO['ctf4ai']=0x0;const aP=a0W()['ctfdUrl']||bv(0x130),aQ=await fetch(aP+bv(0x2ee)+L[bv(0xa9)][bv(0x2e4)]+'/submit',{'method':'POST','headers':aN,'body':JSON[bv(0x23a)]({'token':Z,'answers':L['answers'],'interactions':L[bv(0x251)]||[],'aiUsage':L[bv(0x1b1)]||aO,'bookmarks':L['bookmarks']||[]}),'signal':AbortSignal[bv(0x2f3)](0x4e10+0x208f*0x2+-0x5496)});if(!aQ['ok']){const aR=await aQ['json']()[bv(0x247)](()=>({'message':bv(0x2d3)}));throw new Error(aR[bv(0xb4)]||'Submit\x20failed');}aD=(await aQ[bv(0x1be)]())['data'];}else{const aS=M();if(!aS)return;aD=await aS[bv(0x14e)](L[bv(0xa9)][bv(0x2e4)],L[bv(0x200)]);}N(0x5a2+0x799+-0xd09*0x1,bv(0xf2)),await q(-0x143*-0x5+-0xd*0x1f3+0x1434),N(-0x79*-0x3f+0xa37+-0x1*0x279a,bv(0x26e)),console['log']();const aE={};aE[bv(0x210)]=0x0,aE[bv(0x1d9)]=0x0;const aF={'answered':Object[bv(0x208)](L[bv(0x200)])[bv(0x19c)],'total':L[bv(0xa9)][bv(0x343)],'bookmarks':Array[bv(0x26f)](L[bv(0x27e)])?L[bv(0x27e)]['length']:0x2374*0x1+-0xd*-0x1a+-0x24c6,'help':R(L),'aiUsage':L[bv(0x1b1)]||aE,'interactions':(L[bv(0x251)]||[])['length'],'durationMin':L[bv(0xa9)]['durationMinutes']||0x202*-0x11+-0x24+0x2246,'confirmedAt':L[bv(0xa9)]['confirmedAt']||L[bv(0xa9)]['startedAt'],'examId':L[bv(0xa9)][bv(0x2e4)]};a0a0();const aG=Math[bv(0x22f)](0xdf*0xb+-0x1043*-0x1+-0x676*0x4,Math[bv(0x281)]((Date[bv(0x10e)]()-new Date(aF[bv(0x19d)])[bv(0x21e)]())/(0x3*0x867+-0x124a+-0x1*0x303))),aH=Math[bv(0xf7)](aG/(-0x268c+-0xa51+-0x1*-0x3119)),aI=aG%(0x2414+0x1f0c*-0x1+-0x2*0x266);console[bv(0x8c)](),console[bv(0x8c)](a0L['cyan'](bv(0x30e))),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x149))),console[bv(0x8c)](a0L['bold']['white'](bv(0x13e))),console[bv(0x8c)](a0L['bold'][bv(0x18a)](bv(0x1c2))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x337))),console[bv(0x8c)](a0L['bold']['white'](bv(0x259))),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x105))),console['log']();const aJ=aD[bv(0x156)]?a0L[bv(0x1cb)]['bold'](bv(0xef)):a0L['yellow'][bv(0x32e)](bv(0x250));console['log'](aJ),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x18a)](bv(0x12b))),console[bv(0x8c)](a0L['white']('\x20\x20\x20exam\x20center.\x20Final\x20scoring\x20and\x20selection\x20are\x20decided\x20by')),console['log'](a0L[bv(0x18a)](bv(0x33d))),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x233))),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x32e)][bv(0x18a)](bv(0x6d)));const aK=aF[bv(0x135)]-aF[bv(0xda)];console[bv(0x8c)]('\x20\x20\x20\x20'+a0L['gray'](bv(0x373))+a0L[bv(0x18a)](aF[bv(0xda)]+'/'+aF['total'])+(aK>-0xcd*0x29+-0x14d9+0x35ae*0x1?a0L['gray'](bv(0x1ce)+aK+bv(0x29b)):'')),console[bv(0x8c)](bv(0x1c6)+a0L[bv(0x264)](bv(0x1bd))+a0L[bv(0x18a)](aH+'m\x20'+aI+'s')+a0L[bv(0x264)]('\x20\x20of\x20'+aF['durationMin']+bv(0x140))),aF['bookmarks']>0x8b6+-0x2341+-0x1*-0x1a8b&&console[bv(0x8c)](bv(0x1c6)+a0L['gray']('Flagged:\x20\x20\x20')+a0L[bv(0x1ef)]('★\x20'+aF[bv(0x27e)])),console[bv(0x8c)]();const aL=aD[bv(0x347)];if(aL&&Object[bv(0x208)](aL)[bv(0x19c)]>=0x7*-0x4e5+0x21*-0xe5+0x3fca){const aT=Object[bv(0x342)](aL)[bv(0x157)](([,aY])=>aY['total']>0x1*-0x787+0x1*-0x15eb+0x1d72)[bv(0x2cf)](([aY,aZ])=>({'cat':aY,'pct':aZ[bv(0xaf)]/aZ[bv(0x135)]}))[bv(0x284)]((aY,aZ)=>aZ[bv(0x2e1)]-aY['pct']),aU=Math[bv(0x78)](-0x1*0xef+0x13a*0x1+0x49*-0x1,Math['ceil'](aT[bv(0x19c)]/(-0x86+0x3*0xcbf+-0x25b4))),aV=Math[bv(0x78)](-0xe30*0x1+0x20d9+-0x1*0x12a7,Math[bv(0x1ec)](aT[bv(0x19c)]/(0x1*0x1ad1+-0x1*-0x1ea7+-0x3975))),aW=aT['slice'](-0x1233+0x1eda+-0x29*0x4f,aU)[bv(0x2cf)](aY=>aY[bv(0x32f)]),aX=aT[bv(0xd7)](-aV)[bv(0x2cf)](aY=>aY[bv(0x32f)]);aW[bv(0x262)](aY=>aX[bv(0x31a)](aY))||(console['log'](a0L[bv(0x32e)][bv(0x18a)](bv(0x1f8))),console['log'](bv(0x1c6)+a0L[bv(0x1cb)](bv(0xa3))+a0L['white'](aW[bv(0x1cf)](',\x20'))),console[bv(0x8c)](bv(0x1c6)+a0L['yellow'](bv(0x35e))+a0L['white'](aX[bv(0x1cf)](',\x20'))),console['log'](a0L[bv(0x264)](bv(0x299))),console[bv(0x8c)]());}console['log'](a0L['bold'][bv(0x18a)]('\x20\x20Assistance\x20used')),console[bv(0x8c)](bv(0x1c6)+a0L['gray'](bv(0x124))+a0L['white'](aF[bv(0xd4)]['used']+'/'+aF[bv(0xd4)]['max'])),console['log'](bv(0x1c6)+a0L['gray']('AI\x20tokens:\x20')+a0L[bv(0x18a)](aF[bv(0x1b1)][bv(0x210)]+bv(0x28a))+a0L['gray'](bv(0x1ce))+a0L[bv(0x18a)](aF[bv(0x1b1)][bv(0x1d9)]+'\x20CTF4AI')),console[bv(0x8c)](),console['log'](a0L[bv(0x2ae)]('\x20\x20─────────────────────────────────────────────')),console['log'](),console['log'](a0L[bv(0x32e)][bv(0x18a)](bv(0x34b))),console['log'](a0L['gray'](bv(0x25a))),console[bv(0x8c)](a0L[bv(0x264)](bv(0x1d8))+a0L[bv(0x18a)]('demo')+a0L[bv(0x264)]('\x20is\x20free,\x20unlimited\x20practice.')),console[bv(0x8c)](a0L[bv(0x264)](bv(0x160))+a0L['white'](bv(0x2a7))),console[bv(0x8c)]();const {showCToBUpgradePrompt:aM}=await import(bv(0x1fe));aM(aF['examId'],aD[bv(0x156)]),console['log'](a0L['yellow']('\x20\x20ICOA\x202026\x20·\x20Sydney,\x20Australia\x20·\x20Jun\x2027\x20–\x20Jul\x202')),console[bv(0x8c)](a0L['cyan'][bv(0x94)]('\x20\x20https://icoa2026.au')),console[bv(0x8c)](),console[bv(0x8c)](a0L[bv(0x2ae)](bv(0x30e))),console['log']();}catch(aY){console['log'](),a0aa(aY[bv(0xb4)]);}}),B[be(0x11e)](be(0x9f))[be(0x307)]('View\x20exam\x20result')[be(0xa2)](async F=>{const bw=be;a0a8(bw(0x9a)+(F||''));const G=M();if(!G)return;if(!F){const J=a0Y();if(!J)return void a0aa('Specify\x20exam\x20ID:\x20exam\x20result\x20<id>');F=J[bw(0xa9)][bw(0x2e4)];}const H=a0ag(bw(0x24b));H[bw(0x150)]();try{const K=await G[bw(0x116)](F);H[bw(0x1e7)](bw(0x292)),console[bw(0x8c)](),a0ae(K[bw(0x162)]),a0af(bw(0x16e),a0L[bw(0x32e)](K[bw(0x2e8)]+'/'+K[bw(0x135)])),a0af(bw(0x131),a0L[bw(0x32e)](K[bw(0x16c)]+'%')),a0af(bw(0x306),K[bw(0x156)]?a0L[bw(0x1cb)]['bold']('PASSED'):a0L[bw(0x22b)]['bold'](bw(0x34a))),a0af('Submitted',K[bw(0x2f4)]),console[bw(0x8c)]();}catch(L){H['fail'](bw(0x31e)),a0aa(L[bw(0xb4)]);}}),B[be(0x11e)](be(0x293))[be(0x307)](be(0x261))[be(0xa2)](async J=>{const bx=be;a0a8(bx(0x2ac)+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import(bx(0xe3)),V=K();if(V){const a2=V['session']['token'],a3=a0a1(),a4=!!a2&&a2[bx(0x202)]()[bx(0x186)]()!==J[bx(0x202)]()['toUpperCase'](),a5=!!a3&&a3[bx(0x21e)]()+(-0x12fc7b+0x1ab3ec+0x13bfcf)<Date[bx(0x10e)]();if(a4&&a5)return Q(),console['log'](),console[bx(0x8c)](a0L[bx(0x264)](bx(0x19b))),console['log'](),console[bx(0x8c)](a0L[bx(0x18a)](bx(0x302))+a0L['bold'][bx(0x2ae)]('exam\x20'+J)),void console[bx(0x8c)]();if(!a2&&J)return V[bx(0xa9)]['token']=J[bx(0x202)](),L(V),console['log'](),console['log'](a0L['green']('\x20\x20✓\x20Token\x20re-attached\x20to\x20your\x20in-progress\x20exam.')),console[bx(0x8c)](a0L['gray'](bx(0x68))+a0L[bx(0x18a)](bx(0x234))+a0L[bx(0x264)](bx(0x171))+a0L[bx(0x18a)](bx(0x100))),console['log'](),console[bx(0x8c)](a0L[bx(0x32e)][bx(0x18a)](bx(0xc3))),console[bx(0x8c)](a0L[bx(0x264)](bx(0xa5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0x335))+a0L[bx(0x264)](bx(0x128))),console[bx(0x8c)](a0L[bx(0x264)](bx(0xa5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0xa6))+a0L['gray'](bx(0x1e9))),void console['log']();const a6=Object['keys'](V[bx(0x200)])[bx(0x19c)],a7=V[bx(0xa9)][bx(0x343)],a8=a0a1(),a9=a8?Math[bx(0x22f)](0x25a0+-0x1bd3+0xd*-0xc1,Math['round']((a8[bx(0x21e)]()-Date[bx(0x10e)]())/(0x1cf*-0x69+0x1*-0xeea8+0x296ef))):null;return console[bx(0x8c)](),console[bx(0x8c)](a0L['yellow'](bx(0x15c))),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x264)]('\x20\x20Exam:\x20\x20\x20\x20')+a0L[bx(0x18a)](V[bx(0xa9)][bx(0x162)])),a2&&console[bx(0x8c)](a0L[bx(0x264)](bx(0x1dd))+a0L[bx(0x18a)](a2)+(a2===J?a0L['green']('\x20\x20(same\x20as\x20you\x20just\x20typed)'):a0L[bx(0x1ef)](bx(0x2fd)))),console['log'](a0L['gray'](bx(0x315))+a0L[bx(0x18a)](a6+'/'+a7)),null!==a9&&console[bx(0x8c)](a0L[bx(0x264)](bx(0x2cc))+a0L['white'](a9+bx(0xd6))),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x32e)][bx(0x18a)]('\x20\x20To\x20continue\x20this\x20exam:')),console['log'](a0L[bx(0x264)](bx(0xa5))+a0L['bold'][bx(0x2ae)](bx(0x335))+a0L['gray'](bx(0x128))),console[bx(0x8c)](a0L[bx(0x264)](bx(0xa5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0xa6))+a0L[bx(0x264)](bx(0x1e9))),console[bx(0x8c)](a0L[bx(0x264)](bx(0xa5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0x100))+a0L[bx(0x264)](bx(0x369))),a2&&a2!==J&&(console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x1ef)](bx(0x338))),console['log'](a0L[bx(0x1ef)]('\x20\x20one\x20device\x20+\x20one\x20session.\x20You\x20cannot\x20switch\x20tokens\x20mid-exam.')),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x264)](bx(0x1e5))),console[bx(0x8c)](a0L[bx(0x264)](bx(0x212))+a0L[bx(0x32e)]['cyan'](bx(0x159))+a0L[bx(0x264)]('\x20to\x20wipe\x20local\x20state,\x20then\x20re-enter\x20the\x20new\x20token.'))),void console[bx(0x8c)]();}const {isNativeWindowsCmd:W}=await import(bx(0x282));if(!W()&&!a0am()){let aa=!(0x1411+0x9*0x21f+-0x2727);try{const ab={};ab[bx(0x1a8)]=bx(0x168);const ac=a0W()['ctfdUrl']||'https://practice.icoa2026.au',ad=await fetch(ac+bx(0x2e6),{'method':bx(0x7f),'headers':ab,'body':JSON[bx(0x23a)]({'token':J[bx(0x202)](),'deviceHash':a0aj(),'peek':!(-0xe13+-0x205c+0x2e6f*0x1)}),'signal':AbortSignal[bx(0x2f3)](0x240b+0x2df*-0x5+-0x228)});if(ad['ok']){const ae=await ad[bx(0x1be)]();(ae?.[bx(0x2bd)]?.[bx(0x90)]||'')[bx(0x280)]('-c')&&(aa=!(0x2f*-0x4c+0xe8d*0x1+0x99*-0x1));}}catch{}if(!aa)return console[bx(0x8c)](),a0ab(bx(0x15a)),console[bx(0x8c)](a0L['gray']('\x20\x20→\x20')+a0L[bx(0x32e)]['cyan'](bx(0x1a1))),console[bx(0x8c)](a0L[bx(0x264)](bx(0x1f5))+a0L[bx(0x32e)][bx(0x2ae)](bx(0x2db))+a0L[bx(0x264)](bx(0x286))),console['log'](a0L[bx(0x264)](bx(0x324))),void console[bx(0x8c)]();}const X={};X['UA']='uk',X['PE']='es',X['CN']='zh',X['AU']='en',X['JP']='ja',X['KR']='ko',X['BR']='pt',X['SA']='ar',X['FR']='fr',X['DE']='de',X['IN']='hi',X['ID']='id',X['TH']='th',X['VN']='vi',X['TR']='tr',X['RU']='ru',X['EG']='ar',X['HT']='ht',X['PH']='en',X['MY']='en',X['MM']='en',X['SG']='en',X['ZA']='en',X['KE']='sw',X['TZ']='sw',X['MO']='zh',X['UZ']='uz',X['GH']='en',X['LA']='lo',X['BD']='bn',X['BI']='fr',X['US']='en',X['UK']='en',X['NZ']='en',X['LK']='si';const Y=X[J['trim']()[bx(0x372)](-0x1cf8+-0x7*0x2a9+0x2f97*0x1,0x181d+0x157f+-0x2d9a)[bx(0x186)]()],Z=a0W(),a0=Z['ctfdUrl']||bx(0x130),a1=Y||Z[bx(0x65)]||'en';Y&&Y!==(Z[bx(0x65)]||'en')&&a0X({'language':Y}),console[bx(0x8c)](),N(-0x5aa+-0x5b6+-0x4*-0x2d8,bx(0x1db));try{const af={};af['Content-Type']='application/json';const ag=await fetch(a0+'/api/icoa/exam-token',{'method':bx(0x7f),'headers':af,'body':JSON[bx(0x23a)]({'token':J[bx(0x202)](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal[bx(0x2f3)](0x65a+0xc85*0x1+0x1431)});if(!ag['ok']){N(0x1d39*-0x1+0x24cc+-0x793,''),console['log']();const ao=await ag['json']()[bx(0x247)](()=>({'message':'Invalid\x20token'}));return a0aa(ao['message']||bx(0x2a6)),void a0ac(bx(0xc7));}N(-0x16f7+-0x1*-0x1195+0x2c0*0x2,bx(0x1d2));const ah=await ag[bx(0x1be)](),{session:ai,questions:aj,languages:ak}=ah[bx(0x2bd)];N(0xa22+-0x73a+-0x13*0x24,bx(0x278)),await q(-0x16dc+0x2c3*0x8+0x18c),N(0x565+0x241b+-0x291c,bx(0x252)),console[bx(0x8c)](),console['log'](),a0ae(ai['examName']),console[bx(0x8c)](),a0af(bx(0x2ca),ai['questionCount']+bx(0x36e)),a0af(bx(0x1c9),ai['durationMinutes']+bx(0x119)),a0af(bx(0x328),(ai[bx(0x2f2)]||0x43*-0x67+-0x9b1*-0x4+-0xb39)+bx(0x1eb)),a0af(bx(0x237),(ai[bx(0x189)]||0x160c+0x37*-0xd+-0x3*0x652)+'\x20points\x20(50%)'),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x18a)]('\x20\x20Assistance:')),console[bx(0x8c)](a0L[bx(0x18a)](bx(0x277))),console[bx(0x8c)](a0L[bx(0x18a)](bx(0x6c))),console[bx(0x8c)](a0L[bx(0x18a)](bx(0x345))),ak&&ak['length']>0x3*-0xc91+-0xaab*0x3+-0x1*-0x45b5&&console['log'](a0L[bx(0x18a)](bx(0xfd)+ak[bx(0x1cf)](',\x20')+bx(0x298))),console[bx(0x8c)](),console[bx(0x8c)](a0L[bx(0x1ef)](bx(0x1f1))),console['log'](a0L[bx(0x18a)](bx(0x26b))),console[bx(0x8c)](a0L[bx(0x18a)]('\x20\x20\x20\x20•\x20Server\x20auto-finalises\x20your\x20answers\x20if\x20you\x20do\x20not\x20submit\x20before\x20the\x20deadline')),console[bx(0x8c)](a0L[bx(0x18a)]('\x20\x20\x20\x20•\x20You\x20may\x20exit\x20and\x20resume\x20with\x20the\x20same\x20token')),console['log'](),await new Promise(ap=>{const by=bx;process[by(0x15e)]['write'](a0L['bold'][by(0x1ef)](by(0x203)));const aq=!!process[by(0x83)]['isTTY']&&process[by(0x83)][by(0x25e)];process['stdin'][by(0x356)]&&process[by(0x83)][by(0x17e)]&&process[by(0x83)][by(0x17e)](!(0x11f6*-0x1+-0x9*0x2a5+0x29c4));const ar=as=>{const bz=by,at=as[bz(0xad)]();(at['includes']('\x0a')||at[bz(0x31a)]('\x0d'))&&(process['stdin'][bz(0xe5)](bz(0x2bd),ar),process['stdin']['isTTY']&&process[bz(0x83)][bz(0x17e)]&&process[bz(0x83)][bz(0x17e)](aq),process[bz(0x15e)][bz(0x218)]('\x0a'),ap());};process['stdin']['on'](by(0x2bd),ar),process[by(0x83)][by(0x21d)]();});const al=new Date()[bx(0x1b6)]();ai[bx(0x19d)]=al,ai['token']=J[bx(0x202)]();try{const ap=Date['now'](),aq=await fetch(a0+bx(0x276),{'method':bx(0x17d),'signal':AbortSignal[bx(0x2f3)](-0x152b+-0x19a5+-0x3a88*-0x1)});if(aq['ok']){const ar=await aq[bx(0x1be)](),as=ar?.[bx(0x2bd)]?.[bx(0x1fc)];if('number'==typeof as&&as>-0x86*-0x21+0x1440+-0x2586){const at=(ap+Date[bx(0x10e)]())/(0x23f6+-0x1*-0x1418+0x2*-0x1c06);ai[bx(0x224)]=Math[bx(0x281)](as-at),ai[bx(0x106)]=as+(0x1*0x362+0xab9+0x43*-0x35)*ai[bx(0x255)]*(0x2007+0x1*0x19cc+-0x141*0x2b);}}}catch{}const am={};am[bx(0x210)]=0x0,am['ctf4ai']=0x0;const an={};an[bx(0xa9)]=ai,an[bx(0x1e2)]=aj,an[bx(0x200)]={},an[bx(0x251)]=[],an['aiUsage']=am,(a0Z(an),console[bx(0x8c)](),a0a9(bx(0x10a)),a0af('Time\x20Remaining',ai['durationMinutes']+bx(0xbd)),aj[bx(0x19c)]>-0x1b3+0x3*-0xd1+-0x6*-0xb1&&U(aj[-0xb*0x9+-0x1559+-0x1ac*-0xd]));}catch(au){console[bx(0x8c)](),bx(0x1ff)===au[bx(0x311)]?a0aa(bx(0x24a)):a0aa(au[bx(0xb4)]||'Failed\x20to\x20start\x20exam');}}),B['command'](be(0x270),{'hidden':!(0xbfe+0xa*0x29c+0x4e*-0x7d)})[be(0x307)](be(0x266))[be(0xa2)](async()=>{const bA=be;a0a8('exam\x20reset');const {getRealExamState:F,clearExamState:G}=await import(bA(0xe3)),H=F();if(!H)return console[bA(0x8c)](),console[bA(0x8c)](a0L[bA(0x264)](bA(0x173))),void console['log']();const J=H['session'][bA(0x16a)];console[bA(0x8c)](),console[bA(0x8c)](a0L[bA(0x1ef)](bA(0x163))),console[bA(0x8c)](a0L[bA(0x264)](bA(0x1e6))+a0L[bA(0x18a)](H[bA(0xa9)]['examName'])),J&&console['log'](a0L[bA(0x264)](bA(0x1b4))+a0L[bA(0x18a)](J)),console[bA(0x8c)](a0L['gray'](bA(0x7e))),console[bA(0x8c)](a0L[bA(0x264)]('\x20\x20\x20\x20\x20still\x20active\x20and\x20not\x20submitted,\x20re-entering\x20the\x20same\x20token\x20resumes\x20it.')),console[bA(0x8c)](),console[bA(0x8c)](a0L[bA(0x264)](bA(0x1f2))+a0L['bold']['cyan'](bA(0x270))+a0L['gray'](bA(0x354)));const {getMainRl:K}=await import('../lib/main-rl.js'),L=K();if(bA(0x270)!==(await new Promise(Q=>{const bB=bA;if(L){const V=L[bB(0x21c)]('line')[bB(0xd7)]();L[bB(0x2ba)](bB(0x2a2)),L[bB(0x170)](bB(0xdd)),L[bB(0xa4)](),L[bB(0x321)](bB(0x2a2),W=>{const bC=bB;for(const X of V)L['on'](bC(0x2a2),X);Q(W[bC(0x202)]());});}else((async()=>{const bD=bB,W={};W['input']=process[bD(0x83)],W['output']=process['stdout'];const {createInterface:X}=await import(bD(0x288)),Y=X(W);Y[bD(0x6b)](bD(0xdd),Z=>{const bE=bD;Y[bE(0x93)](),Q(Z[bE(0x202)]());});})());}))[bA(0x2fe)]())return console[bA(0x8c)](a0L[bA(0x264)](bA(0x16f))),void console[bA(0x8c)]();G(),console['log'](),console[bA(0x8c)](a0L[bA(0x1cb)]('\x20\x20✓\x20Exam\x20state\x20cleared.')),console[bA(0x8c)](a0L['gray'](bA(0x363))+a0L[bA(0x32e)][bA(0x2ae)](bA(0x2dd))),console['log']();}),B[be(0x11e)](be(0xe8))['description']('Try\x20a\x20free\x20practice\x20exam\x20(no\x20account\x20needed)')[be(0xa2)](async()=>{const bF=be;a0a8(bF(0x371)),E(bF(0x34c));const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import(bF(0xfa));a0W()['demoIntroSeen']||(await(async function(){const bG=bF;let a0=!(0x104e*0x2+-0x143e+-0xf*0xd3);const a1=process['stdin'],a2=()=>{a0=!(-0x3ab*-0x4+0xceb+-0x3f1*0x7);},a3=a1['isTTY']&&bG(0x239)==typeof a1['setRawMode'];a3&&(a1['setRawMode'](!(-0x8eb*-0x1+0x1a22+-0x230d)),a1['resume'](),a1[bG(0x321)](bG(0x2bd),a2));const a4=async a5=>{let a6=0xf25+-0x1e44+0xf1f;for(;a6<a5&&!a0;)await q(-0xb55+-0x2623+0x31c8),a6+=-0x9d0+-0x225a+0x2c7a;};try{if(console[bG(0x334)](),console[bG(0x8c)](),console[bG(0x8c)](a0L[bG(0x264)](bG(0xba))+a0L['dim'](bG(0x31f))),console[bG(0x8c)](),console['log'](a0L['bold'][bG(0x18a)](bG(0x149))),console[bG(0x8c)](a0L['bold'][bG(0x18a)](bG(0x13e))),console[bG(0x8c)](a0L[bG(0x32e)]['white'](bG(0x1c2))),console[bG(0x8c)](a0L[bG(0x32e)][bG(0x18a)](bG(0x337))),console[bG(0x8c)](a0L['bold'][bG(0x18a)](bG(0x259))),console[bG(0x8c)](a0L[bG(0x32e)][bG(0x18a)](bG(0x105))),console[bG(0x8c)](),console[bG(0x8c)](a0L[bG(0x32e)][bG(0x1ef)](bG(0x2d2))),console[bG(0x8c)](a0L[bG(0x264)]('\x20\x20\x20Sydney,\x20Australia\x20\x20·\x20\x20Jun\x2027\x20–\x20Jul\x202,\x202026')),await a4(-0x1af2+-0x23*0x63+0x2a5*0x13),a0)return;if(console[bG(0x8c)](),console['log'](a0L['white'](bG(0x178))),console[bG(0x8c)](),await a4(-0xd45+-0x1*-0x1444+0x4a7*-0x1),a0)return;if(console[bG(0x8c)](a0L[bG(0x2ae)]('\x20\x20\x20\x20\x20▣\x20')+a0L['white']('Answer\x2010\x20quick\x20questions')+a0L[bG(0x264)](bG(0x30f))),await a4(-0x1afc*0x1+-0x1*0x1981+-0x43*-0xd3),a0)return;if(console[bG(0x8c)](a0L['green'](bG(0x110))+a0L[bG(0x18a)](bG(0x13c))+a0L[bG(0x264)](bG(0x1d5))),await a4(0x20*0x33+0x23d5*-0x1+0x43*0x7b),a0)return;if(console[bG(0x8c)](a0L[bG(0x22b)](bG(0x110))+a0L[bG(0x18a)]('Hack\x20the\x20AI\x27s\x20guardrails')+a0L[bG(0x264)](bG(0x2c5))),await a4(0x1326+0xa*-0x2+-0x16a*0xb),a0)return;if(console[bG(0x8c)](),console['log'](a0L[bG(0x32e)][bG(0x18a)](bG(0x1af))+a0L[bG(0x32e)][bG(0x1ef)]('IS')+a0L[bG(0x32e)][bG(0x18a)]('\x20the\x20competition.')),console[bG(0x8c)](),await a4(0x539*-0x7+0xbc*0x11+0x1def),a0)return;if(console[bG(0x8c)](a0L[bG(0x264)]('\x20\x20\x20·\x20110\x20CTF\x20tools\x20pre-configured')),await a4(0x737*-0x2+-0x522+0x548*0x4),a0)return;if(console[bG(0x8c)](a0L['gray'](bG(0x1a0))),await a4(0x100d+0x14*-0x1bb+0x141f),a0)return;if(console['log'](a0L[bG(0x264)](bG(0xeb))),await a4(-0x214*-0x2+0x6a2+-0x7aa),a0)return;console[bG(0x8c)](),console[bG(0x8c)](a0L[bG(0x32e)]['cyan'](bG(0x27a))),await a4(-0x1*-0x1a0b+0x1745+-0x1c*0x134);}finally{((()=>{const bH=bG;if(a3){a1['removeListener'](bH(0x2bd),a2);try{a1[bH(0x17e)](!(-0x25f2+-0x1ca7+0x5*0xd52));}catch{}a1['pause']();}})()),console[bG(0x334)]();}}()),a0X({'demoIntroSeen':!(0x13f7+0x953*-0x1+-0x6*0x1c6)})),console[bF(0x8c)](),console[bF(0x8c)](a0L[bF(0x18a)]('\x20\x20Demo:\x20')+a0L['gray'](H+bF(0x1a3)+J+bF(0x360))),console['log'](a0L[bF(0x264)](bF(0x169))+a0L['cyan'](bF(0x222))+a0L[bF(0x264)](bF(0xf6))+a0L['cyan'](bF(0x2db))+a0L['gray']('\x20at\x20any\x20time.')),await new Promise(a0=>{const bI=bF;process['stdout'][bI(0x218)](a0L[bI(0x32e)][bI(0x1ef)](bI(0xaa)));const a1=!!process['stdin']['isTTY']&&process['stdin']['isRaw'];process[bI(0x83)][bI(0x356)]&&process[bI(0x83)][bI(0x17e)]&&process['stdin'][bI(0x17e)](!(-0x1c11+0x1*0xf95+0xc7d*0x1));const a2=a3=>{const bJ=bI,a4=a3[bJ(0xad)]();(a4[bJ(0x31a)]('\x0a')||a4[bJ(0x31a)]('\x0d'))&&(process[bJ(0x83)]['removeListener'](bJ(0x2bd),a2),process[bJ(0x83)][bJ(0x356)]&&process[bJ(0x83)][bJ(0x17e)]&&process[bJ(0x83)][bJ(0x17e)](a1),process[bJ(0x15e)][bJ(0x218)]('\x0a'),a0());};process[bI(0x83)]['on']('data',a2),process[bI(0x83)]['resume']();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import('../lib/exam-state.js');Q()&&V(bF(0x10d)),console[bF(0x8c)](),a0ae(bF(0x309)),console[bF(0x8c)](),console[bF(0x8c)](a0L['white'](bF(0x275))),console[bF(0x8c)](a0L[bF(0x18a)]('\x20\x20'+H+bF(0x28c)+J+'\x20·\x20Pick\x20one\x20answer\x20per\x20question'));const W=a0a3();if(W[bF(0x13b)]>0x24a7+-0x762*0x5+0x43){const a0=W[bF(0x1e0)],a1=a0>=-0x174d+0x21*-0x106+0xf9*0x3b?a0L[bF(0x1cb)]:a0>=0x42c*-0x2+0x1a2*0xb+-0x962*0x1?a0L['yellow']:a0L[bF(0x18a)];console[bF(0x8c)](),console[bF(0x8c)](a0L[bF(0x264)](bF(0xb6))+a1(W['best']+'/'+H+'\x20('+a0+'%)')+a0L[bF(0x264)](bF(0x1ce)+W[bF(0x13b)]+bF(0x297)));}console['log'](),console[bF(0x8c)](a0L[bF(0x264)](bF(0x377))),console[bF(0x8c)](a0L[bF(0x18a)]('\x20\x20'+a0ai('howToPlay'))),console['log'](a0L[bF(0x1ef)](bF(0x294))+a0L[bF(0x264)](bF(0x209)+a0ai('htpAnswer'))),console[bF(0x8c)](a0L['yellow']('\x20\x20\x20\x20help')+a0L[bF(0x264)](bF(0x2ad)+a0ai(bF(0x2c3)))),console[bF(0x8c)](a0L[bF(0x1ef)](bF(0x220))+a0L['gray'](bF(0x2c7))+a0L[bF(0x1ef)]('prev')+a0L[bF(0x264)](bF(0x1c6)+a0ai('htpNav'))),console['log'](a0L[bF(0x1ef)](bF(0x197))+a0L[bF(0x264)](bF(0x2c0)+a0ai(bF(0x198)))),console[bF(0x8c)](a0L[bF(0x1ef)]('\x20\x20\x20\x20back')+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bF(0x10c)))),console[bF(0x8c)](a0L[bF(0x1ef)](bF(0x144))+a0L[bF(0x264)](bF(0x2ad)+a0ai('htpLang'))),console['log'](a0L['gray'](bF(0x85))),console[bF(0x8c)](a0L[bF(0x264)](bF(0x274))),console[bF(0x8c)](a0L[bF(0x264)]('\x20\x20─────────────────────────────────────────')),console[bF(0x8c)]();const {getConfig:X}=await import(bF(0x2b0)),Y=X()['language']||'en';'en'===Y?(console[bF(0x8c)](a0L[bF(0x264)](bF(0x14b))),console[bF(0x8c)](a0L[bF(0x264)](bF(0x27b))),console[bF(0x8c)](a0L['gray']('\x20\x20lang\x20fr\x20·\x20lang\x20ar\x20·\x20lang\x20pt\x20·\x2015\x20languages\x20supported'))):console[bF(0x8c)](a0L['green']('\x20\x20Language:\x20'+Y)),console[bF(0x8c)](),console['log'](a0L[bF(0x18a)]('\x20\x20Starting\x20exam...'));const Z={...L,'startedAt':new Date()[bF(0x1b6)]()};console[bF(0x8c)](),N(0x2345+-0xcac*-0x2+-0x3c9d,'Preparing\x20questions...'),await q(0x823+-0x16a3+0xf48),N(-0xb*0x2b0+0x1440+0x3*0x328,bF(0x99)),await q(0x346+0x49a*-0x2+0x6b6),N(0x16b2+0x3d*-0x12+-0x18*0xc1,bF(0x2ce)),await q(0x1*0x1b4d+0x5*-0x69d+0x2*0x32d),N(0x157f*-0x1+-0x2*0x1336+0x3c4f,bF(0x252)),console[bF(0x8c)](),console['log'](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af(bF(0x2ca),String(H)),a0af(bF(0x1c9),bF(0x357)),U(K[0x1*0xdab+-0x1*-0xad+-0xe58]);}),B[be(0x11e)](be(0x2a1))['description'](be(0x1b9))[be(0xa2)](async()=>{const bK=be;a0a8(bK(0xec)),E(bK(0x235));const {getLocalizedDemoSession:F}=await import(bK(0xfa)),G=a0a6();if(!G||0x3d*0x32+-0x23ef*-0x1+0x3*-0xff3===G['length'])return console[bK(0x8c)](),console[bK(0x8c)](a0L['yellow']('\x20\x20No\x20wrong\x20questions\x20to\x20retry.\x20Run\x20')+a0L[bK(0x32e)]['cyan']('demo')+a0L[bK(0x1ef)](bK(0x24d))),void console['log']();const H=a0Y();if(H){if(bK(0x10d)!==H[bK(0xa9)]['examId'])return a0ab(bK(0x1b8)+H[bK(0xa9)]['examName']+bK(0xb2)),void a0ac(bK(0x14f));a0a0();}const J=V=>{const bL=bK;if(!V[bL(0x196)])return V;const W=V[bL(0x205)][V['answer']],X=['A','B','C','D'][bL(0x2cf)](a2=>V[bL(0x205)][a2]);for(let a2=X[bL(0x19c)]-(-0x15e7+0x1*0x20e+0x13da);a2>0x220c+0x10ea+-0x32f6;a2--){const a3=Math['floor'](Math[bL(0x7d)]()*(a2+(-0xeb0+0x3be*-0x1+0x126f)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[-0xb2f*0x3+0x1525+0xc68],Y['B']=X[-0x1a0d+-0xcbc+0x26ca],Y['C']=X[0x1*0x1262+-0x242f*-0x1+0x1*-0x368f],Y['D']=X[-0x1*-0x565+-0x7*-0x3f7+0x2123*-0x1];const Z=Y,a0=['A','B','C','D'][bL(0x1ac)](a4=>Z[a4]===W),a1={...V};return a1[bL(0x205)]=Z,a1[bL(0x196)]=a0,a1;},K=G['map']((V,W)=>({...J(V),'number':W+(0xcf9+0x1f6b+-0x1*0x2c63)})),L=F(),Q={...L,'examName':L[bK(0x162)]+bK(0x232),'questionCount':K[bK(0x19c)],'startedAt':new Date()[bK(0x1b6)]()};console[bK(0x8c)](),a0ae(bK(0x2f8)),console['log'](),console[bK(0x8c)](a0L[bK(0x18a)](bK(0x102)+K[bK(0x19c)]+bK(0xfe)+(0x2e9+-0x4*0x90a+0xe*0x260===K[bK(0x19c)]?'':'s')+'\x20you\x20got\x20wrong.')),console[bK(0x8c)](a0L['gray'](bK(0x1d3))),console[bK(0x8c)](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af(bK(0x2ca),String(K[bK(0x19c)])),a0af('Duration','No\x20time\x20limit'),U(K[0xa18+0x1f*0x71+-0x17c7]);}),B[be(0x11e)](be(0x269))['description']('Install\x20Python\x20environment\x20for\x20practical\x20exam\x20questions')[be(0xa2)](async()=>{const bM=be;if(a0a8(bM(0x1a1)),0xf14+-0x1d98+0x2*0x742===a0a3()[bM(0x13b)])return console[bM(0x8c)](),a0ab(bM(0x29e)),console[bM(0x8c)](a0L[bM(0x264)](bM(0x2a5))+a0L[bM(0x32e)]['cyan'](bM(0x371))),void console[bM(0x8c)]();const K=a0ak();if(K){const a4=K[bM(0x36b)][bM(0x19c)],a5=a4+K[bM(0x358)][bM(0x19c)];if(a4>=0x104+-0x7*0x50b+0x2251||(a5>0x343+0x1*-0x1f85+0x1c42?a4/a5:0x967*-0x1+0x143e+0x4b*-0x25)>=0x5*0x46f+0xedb*-0x1+-0x750+0.7)return console['log'](),console['log'](a0L[bM(0x1cb)](bM(0x15d))+a0L[bM(0x1cb)](bM(0x325))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20Completed:\x20'+K[bM(0x30c)][bM(0x35f)]('T')[0x95a+0x1f43+-0x119*0x25])),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20Python:\x20'+K[bM(0x29d)])),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20Packages:\x20'+a4+'\x20installed')),K[bM(0x358)]['length']>-0x1e2f+0xd*0x1f+-0x4*-0x727&&console[bM(0x8c)](a0L[bM(0x1ef)](bM(0x336)+K['failedPackages'][bM(0x1cf)](',\x20'))),console[bM(0x8c)](),console[bM(0x8c)](a0L['white']('\x20\x20Next\x20step:\x20')+a0L[bM(0x32e)][bM(0x2ae)]('exam\x20<token>')),console[bM(0x8c)](a0L['gray'](bM(0x1f5))+a0L['bold'][bM(0x2ae)]('back')+a0L[bM(0x264)]('\x20to\x20return\x20to\x20the\x20main\x20menu.')),void console[bM(0x8c)]();console['log'](),console[bM(0x8c)](a0L[bM(0x1ef)](bM(0x24e)+a4+'/'+a5+'\x20packages.\x20Retrying...')),console[bM(0x8c)]();}console['log'](),a0ae(bM(0x111)),console[bM(0x8c)](),console[bM(0x8c)](a0L['white'](bM(0x296))),console[bM(0x8c)](a0L[bM(0x264)](bM(0xe0))),console[bM(0x8c)]();const L=(a6,a7)=>{const bN=bM,a8=process[bN(0x175)];console[bN(0x8c)](),a0aa(bN(0x8f)===a6?bN(0x164):'Python\x20'+a7+bN(0x145)),console[bN(0x8c)](),console[bN(0x8c)](a0L['bold'][bN(0x18a)](bN(0x25b))),console[bN(0x8c)](),bN(0x134)===a8?(console[bN(0x8c)](a0L['yellow'](bN(0x153))),console['log'](a0L[bN(0x1cb)](bN(0x67))),console['log'](),console['log'](a0L['gray'](bN(0x23b))),console[bN(0x8c)](a0L[bN(0x264)]('\x20\x20\x20\x20https://www.python.org/downloads/macos/'))):bN(0x24f)===a8?(console[bN(0x8c)](a0L[bN(0x1ef)](bN(0x1b2))),console[bN(0x8c)](a0L[bN(0x1cb)]('\x20\x20\x20\x20sudo\x20add-apt-repository\x20ppa:deadsnakes/ppa\x20-y')),console['log'](a0L[bN(0x1cb)]('\x20\x20\x20\x20sudo\x20apt\x20update')),console[bN(0x8c)](a0L['green']('\x20\x20\x20\x20sudo\x20apt\x20install\x20-y\x20python3.12\x20python3.12-venv\x20python3.12-distutils')),console[bN(0x8c)](a0L['gray'](bN(0x15b))),console['log'](),console[bN(0x8c)](a0L[bN(0x1ef)](bN(0x1aa))),console['log'](a0L[bN(0x1cb)]('\x20\x20\x20\x20sudo\x20dnf\x20install\x20-y\x20python3.12')),console[bN(0x8c)](),console[bN(0x8c)](a0L['yellow'](bN(0x2dc))),console[bN(0x8c)](a0L[bN(0x1cb)](bN(0x226)))):bN(0x21b)===a8?(console[bN(0x8c)](a0L[bN(0x1ef)](bN(0x23d))),console[bN(0x8c)](a0L['green'](bN(0xd3))),console[bN(0x8c)](),console['log'](a0L[bN(0x264)](bN(0x23b))),console['log'](a0L[bN(0x264)](bN(0x23c)))):console[bN(0x8c)](a0L[bN(0x264)](bN(0xc2))),console['log'](),console[bN(0x8c)](a0L[bN(0x18a)](bN(0x195))+a0L['bold'][bN(0x2ae)]('exam\x20setup')),console[bN(0x8c)]();},Q=bM(0x27f);let V='';try{const a6={};a6[bM(0x2be)]=bM(0x368),a6['timeout']=0x1388,V=a0an(Q+'\x20--version',a6)['trim']()[bM(0xcb)](bM(0x25f),'');const a7=V['split']('.')['map'](Number);if(a7[0x1098+0x3b2+-0x62*0x35]<-0xad*-0x1c+0x1a4b*-0x1+0x762||0x58f*0x1+0x19cc+-0x22*0xec===a7[0x2599+-0xad2+-0x1ac7]&&a7[0x7a*0x45+0x1593+-0x3674]<0x1069*-0x1+0x1f25+-0xeb2)return void L(bM(0x24c),V);-0x1b9d+0x14b7+-0x1d*-0x3d===a7[-0x1376+-0x2d3*-0x4+0x82a]&&a7[0x17e*0x14+-0x1fd8+-0xab*-0x3]<-0x13f*0x1f+0xa29+0x1c84?console['log'](a0L[bM(0x1cb)](bM(0x29f)+V)+a0L[bM(0x264)]('\x20(works,\x20but\x203.12\x20recommended)')):console['log'](a0L[bM(0x1cb)](bM(0x29f)+V));}catch{return void L(bM(0x8f));}try{const a8={};a8[bM(0x21f)]='ignore',a8[bM(0x2f3)]=0x1388,(a0an(Q+'\x20-m\x20pip\x20--version',a8),console[bM(0x8c)](a0L['green'](bM(0xf4))));}catch{console[bM(0x8c)](a0L['yellow'](bM(0x2ef)));try{const a9={};a9[bM(0x21f)]=bM(0x246),a9[bM(0x2f3)]=0x7530,(a0an(Q+bM(0x2cb),a9),console['log'](a0L[bM(0x1cb)](bM(0x207))));}catch{a0aa(bM(0xbc)),console[bM(0x8c)]();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import('../lib/platform.js'),{execFileSync:ac}=await import(bM(0xcd)),ad=aa(),ae=ab(),af=bM(0x24f)===process[bM(0x175)]&&!ad,ag=bM(0x134)===process[bM(0x175)];let ah='your\x20Linux\x20distro';if(af||ad)try{const {readFileSync:ak}=await import(bM(0x17b)),al=ak(bM(0x69),bM(0x368)),am=(al['match'](/^ID="?([^"\n]+)/m)||[])[0x1*-0x1969+0x98d+0xfdd]||'',an=(al[bM(0x355)](/^VERSION_ID="?([^"\n]+)/m)||[])[-0x2347+-0x1*-0x1055+0x12f3]||'';bM(0x2cd)===am?ah=bM(0x2ea)+an+(ad?'\x20(WSL2)':''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?bM(0x147):''));}catch{}let ai=!(0x1*0xe93+-0x5*-0x1d6+0x40*-0x5f);if(ag)try{const ao={};ao[bM(0x21f)]=bM(0x246),ao[bM(0x2f3)]=0x7d0,(ac(bM(0x35d),[bM(0xea)],ao),ai=!(-0x1*-0x1ae7+-0x1cc0+0x1d9));}catch{ai=!(-0x2045+-0x1*0x1145+0x318b);}const aj=ae?'⚠\x20\x20EXIT\x20icoa\x20first\x20—\x20installer\x20cannot\x20run\x20inside\x20the\x20prompt':'⚠\x20\x20EXIT\x20icoa\x20first\x20—\x20sudo\x20cannot\x20run\x20inside\x20the\x20prompt';return console[bM(0x8c)](a0L['bold']['yellow'](bM(0x248))),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x1ef)]('\x20\x20'+aj)),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x1ef)](bM(0x248))),console['log'](),af||ad?(console['log'](a0L[bM(0x18a)](bM(0x313))+a0L['cyan'](ah)),console[bM(0x8c)](a0L[bM(0x264)](bM(0x240))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x18a)](bM(0x1ed))),console[bM(0x8c)](),console['log'](a0L[bM(0x18a)](bM(0x2b5))+a0L['bold'][bM(0x2ae)]('quit')+a0L[bM(0x18a)]('\x20and\x20press\x20Enter\x20to\x20leave\x20icoa')),console[bM(0x8c)](),console['log'](a0L[bM(0x18a)]('\x20\x20\x20\x202.\x20In\x20your\x20shell,\x20run:')),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)]['cyan'](bM(0x158))),console[bM(0x8c)]('\x20\x20\x20\x20\x20\x20\x20'+a0L['bold'][bM(0x2ae)](bM(0x104))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x1ba))),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L['bold'][bM(0x2ae)](bM(0xf0))),console[bM(0x8c)](bM(0x209)+a0L[bM(0x264)]('icoa>')+'\x20'+a0L[bM(0x32e)][bM(0x2ae)]('exam\x20setup'))):ag?(console[bM(0x8c)](a0L[bM(0x18a)](bM(0x313))+a0L[bM(0x2ae)](bM(0x89))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x18a)](bM(0x1ed))),console[bM(0x8c)](),console[bM(0x8c)](a0L['white'](bM(0x2b5))+a0L[bM(0x32e)][bM(0x2ae)]('quit')+a0L['white'](bM(0x310))),console[bM(0x8c)](),ai?(console['log'](a0L[bM(0x18a)](bM(0x1f0))),console[bM(0x8c)](),console['log'](bM(0x209)+a0L[bM(0x32e)]['cyan']('brew\x20install\x20python@3.12')),console[bM(0x8c)](bM(0x209)+a0L['bold']['cyan']('brew\x20link\x20--overwrite\x20python@3.12'))):(console['log'](a0L[bM(0x18a)](bM(0x2b1))+a0L['bold'][bM(0x1ef)](bM(0xea))+a0L['white']('):')),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L['bold'][bM(0x2ae)](bM(0x75))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x2c2))),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)]('brew\x20install\x20python@3.12'))),console['log'](),console['log'](a0L[bM(0x18a)]('\x20\x20\x20\x203.\x20Restart\x20icoa\x20and\x20retry:')),console['log'](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)]['cyan']('icoa')),console[bM(0x8c)](bM(0x209)+a0L[bM(0x264)](bM(0x114))+'\x20'+a0L[bM(0x32e)][bM(0x2ae)](bM(0x1a1)))):ae?(console['log'](a0L[bM(0x18a)](bM(0x313))+a0L[bM(0x2ae)](bM(0x33e))),console[bM(0x8c)](),console['log'](a0L[bM(0x32e)][bM(0x1ef)](bM(0x1b0))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20Native\x20Windows\x20can\x20run\x20Paper\x20C\x20(MCQ-only)\x20and\x20AI\x20chat,\x20but')),console['log'](a0L['gray'](bM(0xf3))),console[bM(0x8c)](a0L[bM(0x264)](bM(0x326))),console['log'](),console[bM(0x8c)](a0L[bM(0x32e)]['white'](bM(0x32b))),console[bM(0x8c)](),console['log'](a0L['white'](bM(0x2b5))+a0L['bold'][bM(0x2ae)]('quit')+a0L[bM(0x18a)](bM(0x310))),console[bM(0x8c)](a0L[bM(0x18a)]('\x20\x20\x20\x202.\x20In\x20an\x20Administrator\x20PowerShell,\x20run:')),console[bM(0x8c)](),console['log'](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)](bM(0xb8))),console[bM(0x8c)](),console[bM(0x8c)](a0L['gray'](bM(0x31d))),console[bM(0x8c)](a0L[bM(0x18a)]('\x20\x20\x20\x203.\x20Inside\x20Ubuntu,\x20install\x20Node.js\x2022\x20+\x20Python\x20tools\x20+\x20icoa:')),console[bM(0x8c)](),console['log'](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)](bM(0xb1))),console[bM(0x8c)](bM(0x209)+a0L['bold'][bM(0x2ae)](bM(0x37c))),console[bM(0x8c)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x32e)][bM(0x2ae)](bM(0x1e8))),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)](bM(0xf0))),console['log'](),console[bM(0x8c)](a0L['gray'](bM(0x9e))),console[bM(0x8c)](),console[bM(0x8c)](a0L['white'](bM(0x2b5))+a0L[bM(0x32e)][bM(0x2ae)]('quit')+a0L['white'](bM(0x310))),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x375))),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)]['cyan']('winget\x20install\x20--id\x20Python.Python.3.12\x20-e')),console[bM(0x8c)](),console['log'](a0L[bM(0x264)](bM(0x350))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20\x20\x20\x20\x20PATH\x22\x20+\x20\x22Install\x20pip\x22\x20during\x20the\x20installer.)')),console[bM(0x8c)](a0L['white'](bM(0xff))),console[bM(0x8c)](),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)]['cyan']('icoa')),console[bM(0x8c)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x264)](bM(0x114))+'\x20'+a0L[bM(0x32e)][bM(0x2ae)](bM(0x1a1)))):(console[bM(0x8c)](a0L[bM(0x18a)](bM(0xd8))+a0L['cyan'](process['platform'])+a0L[bM(0x18a)](')')),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x264)](bM(0x254))),console[bM(0x8c)](bM(0x209)+a0L[bM(0x32e)][bM(0x2ae)](bM(0xf0))),console[bM(0x8c)](bM(0x209)+a0L['gray'](bM(0x114))+'\x20'+a0L[bM(0x32e)]['cyan']('exam\x20setup'))),console['log'](),console[bM(0x8c)](a0L['gray']('\x20\x20Stuck?\x20Email\x20your\x20selection\x20coordinator\x20with\x20the\x20screenshot\x20above.')),void console[bM(0x8c)]();}}const W={};W[bM(0x216)]=bM(0xfb),W['pycryptodome']=bM(0x2ab),W[bM(0x117)]='z3',W['pillow']=bM(0xcc),W[bM(0x129)]=bM(0x7b),W[bM(0x265)]=bM(0xe4);const X=['pwntools',bM(0x86),bM(0x1c8),bM(0x216),bM(0x2bb),'pillow',bM(0x320),'sympy','z3-solver',bM(0x2f7),bM(0x265),bM(0x206),bM(0x2de)],Y=W;console['log'](),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x120)+X[bM(0x19c)]+'\x20packages...')),console[bM(0x8c)]();let Z='';try{const ap={};ap[bM(0x2be)]=bM(0x368),ap[bM(0x2f3)]=0x2710,a0an(Q+bM(0x21a),ap);}catch(aq){const ar=String(aq?.[bM(0x15e)]||aq?.[bM(0x249)]||aq?.[bM(0xb4)]||'');/externally-managed-environment|break-system-packages/i['test'](ar)&&(Z=bM(0xe2),console['log'](a0L['yellow']('\x20\x20ℹ\x20PEP\x20668\x20detected\x20—\x20using\x20--user\x20install\x20(no\x20sudo\x20needed)')),console[bM(0x8c)]());}const a0=V[bM(0x35f)]('.')['map'](Number);-0x233*-0xa+0x460*-0x2+-0x1*0xd3b===a0[0x4*0x3cb+0xc2a*-0x3+0x1552]&&a0[0x22*-0xa5+-0x2*-0x4bf+0xc6d*0x1]>=-0x1*0x168e+0x22a7+-0x303*0x4&&(console['log'](a0L[bM(0x1ef)](bM(0x82)+V+bM(0x18b))),console[bM(0x8c)](a0L['gray'](bM(0x18e))),console[bM(0x8c)](a0L[bM(0x264)](bM(0x23e))),'linux'===process[bM(0x175)]&&(console[bM(0x8c)](a0L[bM(0x1cb)]('\x20\x20\x20\x20\x20\x20sudo\x20apt\x20install\x20python3.12\x20python3.12-venv')),console[bM(0x8c)](a0L[bM(0x1cb)](bM(0x11d)))),console[bM(0x8c)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+bM(0x2d6)+as+'\x22\x20'+Z+'\x20--quiet\x202>&1',{'encoding':bM(0x368),'timeout':0x2bf20,'stdio':bM(0x2fa)}),a0an(Q+bM(0x187)+(Y[as]||as)+'\x22',{'stdio':'ignore','timeout':0x2710});let at='';try{const au=a0an(Q+bM(0x96)+as+bM(0x1fa),{'encoding':bM(0x368),'timeout':0x1388})['match'](/^Version:\s*(.+)$/m);au&&(at=au[-0x133c*0x2+-0x7*-0x43d+-0x2e*-0x31][bM(0x202)]());}catch{}console[bM(0x8c)](a0L[bM(0x1cb)](bM(0x15d)+as)+(at?a0L[bM(0x264)]('\x20('+at+')'):'')),a1[bM(0x26a)](at?as+'=='+at:as);}catch(av){const aw=String(av?.[bM(0x15e)]||av?.[bM(0x249)]||av?.[bM(0xb4)]||'')['slice'](-(0x35*-0x19+0x1fe2+-0x1925)),ax=aw['split']('\x0a')[bM(0x157)](ay=>ay[bM(0x202)]())[bM(0xd7)](-(-0x1*-0x1b6b+-0xc7*0x5+-0x1786))['join'](bM(0xae))[bM(0xd7)](0x6b2+0x1*0x2329+-0x29db,-0x1*0x1481+0x193e+-0x445);console[bM(0x8c)](a0L[bM(0x22b)]('\x20\x20✗\x20'+as)+a0L['gray']('\x20\x20'+ax)),a2[bM(0x26a)]({'pkg':as,'error':ax}),a3||(a3=aw);}0x211d+-0x72d*-0x2+-0x1*0x2f77===a1[bM(0x19c)]&&a3&&(console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x1ef)]('\x20\x20First\x20error\x20detail\x20(for\x20debugging):')),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20'+a3[bM(0x35f)]('\x0a')['slice'](-(0xb88+0x73*0x2b+-0xd*0x25f))[bM(0x1cf)](bM(0x1f7))))),a0al({'completedAt':new Date()[bM(0x1b6)](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2[bM(0x2cf)](ay=>ay['pkg'])}),console['log'](),0xfbb+-0x13b8*0x1+0x3fd===a2[bM(0x19c)]?a0a9(bM(0x132)+X[bM(0x19c)]+'\x20packages\x20installed.'):-0x82d*0x4+-0x24d4*-0x1+0x8*-0x84===a1[bM(0x19c)]?(a0aa('Setup\x20failed\x20—\x200\x20of\x20'+X['length']+bM(0x308)),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x1ef)]('\x20\x20Troubleshooting:')),0x1*-0x977+0x1fca+0x66*-0x38===a0[0x2539+-0x704+-0x1e35]&&a0[-0xf15+-0x7*0x1f3+-0x1cbb*-0x1]>=0x3e*-0x5a+-0x150e+0x621*0x7?(console[bM(0x8c)](a0L[bM(0x264)](bM(0x1a5))),console[bM(0x8c)](a0L['gray'](bM(0x2bf)))):(console[bM(0x8c)](a0L['gray'](bM(0x327))),console['log'](a0L[bM(0x264)](bM(0x272))+a0L[bM(0x2ae)](Q+bM(0x101))+a0L[bM(0x264)](bM(0x91))),console[bM(0x8c)](a0L[bM(0x264)](bM(0x6e)))),console[bM(0x8c)](),console['log'](a0L[bM(0x18a)](bM(0x1ee))+a0L[bM(0x32e)]['cyan']('exam\x20setup'))):a0ab(a1['length']+'/'+X[bM(0x19c)]+'\x20packages\x20installed.\x20'+a2[bM(0x19c)]+bM(0x318)+a2['map'](ay=>ay[bM(0x11a)])[bM(0x1cf)](',\x20')),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x2ae)](bM(0x341))),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x18a)](bM(0x84))),console[bM(0x8c)](a0L[bM(0x2ae)](bM(0x341))),console['log'](),console['log'](a0L['bold'][bM(0x1ef)](bM(0x253))+a0L[bM(0x264)](bM(0x136))),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x1a2))),console[bM(0x8c)](a0L[bM(0x1cb)](bM(0x172))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20→\x20b\x27Hello\x27')),console['log'](),console['log'](a0L['bold'][bM(0x1ef)](bM(0x2f5))+a0L['gray'](bM(0x20a))),console['log'](a0L[bM(0x18a)](bM(0x305))),console['log'](a0L[bM(0x1cb)](bM(0xde))),console['log'](a0L[bM(0x264)]('\x20\x20\x20\x20>>>\x20from\x20Crypto.Cipher\x20import\x20AES')),console[bM(0x8c)](a0L['gray'](bM(0x122))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20>>>\x20cipher\x20=\x20AES.new(key,\x20AES.MODE_CBC,\x20iv)')),console[bM(0x8c)](a0L['gray'](bM(0x12e))),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20>>>\x20exit()')),console[bM(0x8c)](),console['log'](a0L['bold'][bM(0x1ef)]('\x20\x20Method\x203:\x20Script\x20file')+a0L[bM(0x264)](bM(0x2fc))),console[bM(0x8c)](a0L['white'](bM(0x37a))),console[bM(0x8c)](a0L[bM(0x1cb)](bM(0x35c))),console[bM(0x8c)](a0L['gray']('\x20\x20\x20\x20from\x20pwn\x20import\x20xor')),console[bM(0x8c)](a0L[bM(0x264)]('\x20\x20\x20\x20ct\x20=\x20bytes.fromhex(\x220a2b0e1c...\x22)')),console[bM(0x8c)](a0L[bM(0x264)](bM(0x190))),console[bM(0x8c)](a0L[bM(0x264)](bM(0x1a9))),console[bM(0x8c)](a0L['green'](bM(0x107))),console['log'](a0L[bM(0x1cb)]('\x20\x20\x20\x20!python3\x20solve.py')),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x32e)][bM(0x1ef)](bM(0x11f))),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x256))+a0L[bM(0x32e)]['cyan']('hint')+a0L['white'](bM(0x36f))),console[bM(0x8c)](a0L['gray']('\x20\x20\x20\x20\x22How\x20do\x20I\x20decrypt\x20AES-CBC\x20in\x20Python?\x22')),console['log'](a0L[bM(0x264)](bM(0xbf))),console[bM(0x8c)](a0L['gray']('\x20\x20\x20\x20AI\x20budget:\x2025K\x20tokens\x20for\x20AI4CTF\x20+\x2025K\x20for\x20CTF4AI')),console[bM(0x8c)](a0L[bM(0x2ae)](bM(0x341))),console[bM(0x8c)](),console[bM(0x8c)](a0L[bM(0x18a)](bM(0x303))+a0L[bM(0x32e)][bM(0x2ae)](bM(0x2dd))),console[bM(0x8c)](a0L['gray'](bM(0x1f5))+a0L[bM(0x32e)]['cyan'](bM(0x2db))+a0L[bM(0x264)]('\x20to\x20return\x20to\x20the\x20main\x20menu.')),console[bM(0x8c)]();}),B[be(0xa2)](()=>{const bO=be;a0a8(bO(0x1c7));const F=a0Y();if(F){a0ae(bO(0xe9)+F['session'][bO(0x162)]),O();const J=Object[bO(0x208)](F[bO(0x200)])[bO(0x19c)];return a0af(bO(0x2c8),J+'/'+F[bO(0xa9)][bO(0x343)]+bO(0x8d)),console[bO(0x8c)](),void console[bO(0x8c)](a0L['gray']('\x20\x20exam\x20q\x20[n]\x20\x20|\x20exam\x20answer\x20<n>\x20<A-D>\x20|\x20exam\x20review\x20|\x20exam\x20submit'));}const G=a0a3(),H=a0ak();console[bO(0x8c)](),a0ae('ICOA\x20National\x20Selection\x20Exam'),console['log'](),0xd*-0x22c+0x755*-0x2+0x13*0x242===G[bO(0x13b)]?(console['log'](a0L['yellow'](bO(0x113))+a0L[bO(0x1ef)]('Recommended:\x20complete\x20demo\x20first')),console[bO(0x8c)](a0L['gray'](bO(0xa5))+a0L['bold'][bO(0x2ae)](bO(0x371)))):(console[bO(0x8c)](a0L[bO(0x1cb)]('\x20\x20●\x20')+a0L[bO(0x1cb)](bO(0x167)+G[bO(0x13b)]+'\x20attempt'+(0x1741+-0x1614+-0x12c!==G[bO(0x13b)]?'s':'')+')')),H?(console[bO(0x8c)](a0L[bO(0x1cb)](bO(0xfc))+a0L[bO(0x1cb)](bO(0x201))),console[bO(0x8c)](a0L[bO(0x1ef)](bO(0x113))+a0L[bO(0x1ef)](bO(0x166))),console[bO(0x8c)](a0L[bO(0x264)](bO(0xa5))+a0L[bO(0x32e)][bO(0x2ae)](bO(0x2dd)))):(console[bO(0x8c)](a0L['yellow'](bO(0x113))+a0L[bO(0x1ef)](bO(0x2a3))),console[bO(0x8c)](a0L[bO(0x264)](bO(0xa5))+a0L[bO(0x32e)][bO(0x2ae)](bO(0x1a1))))),console[bO(0x8c)]();});}
|
|
1
|
+
(function(z,B){const b0=a0B,F=z();while(!![]){try{const G=-parseInt(b0(0x468))/(-0x5*0x7c9+-0x1*-0x14dd+0x1211)*(-parseInt(b0(0x418))/(-0x1a+-0x1b0f+0x1b2b))+-parseInt(b0(0x3ce))/(0xc4+-0x2*0x35e+0x5fb)+-parseInt(b0(0x45d))/(0xece+0xd39*-0x2+-0x2*-0x5d4)+-parseInt(b0(0x4a4))/(0x18ba+0xf0e+-0x46b*0x9)+parseInt(b0(0x26a))/(0x71b+-0x10f*-0x1d+-0x25c8)*(-parseInt(b0(0x485))/(0xc4b*-0x2+0x1a00+0x47*-0x5))+parseInt(b0(0x2fb))/(-0x4f2+0x1ee1+-0x19e7)+-parseInt(b0(0x1d8))/(-0x10f*-0x9+-0x1*-0x24e5+-0x2e63)*(-parseInt(b0(0x33e))/(-0x100f+0x126d+-0x254));if(G===B)break;else F['push'](F['shift']());}catch(H){F['push'](F['shift']());}}}(a0z,0x934cc+0x10213b+0x4f1c*-0x30));import a0L from'chalk';import{confirm as a0Q}from'@inquirer/prompts';import{ExamClient as a0V}from'../lib/exam-client.js';function a0z(){const bP=['uMv2Awv3igfSBcbHBNn3zxjZigjLzM9YzsbZDwjTAxr0Aw5N','q291BNrYEq','ks4Gww91j3jLig9UihLVDxiGB3DUisdWN5kQ','vhj5igeGzNjLzsbWCMfJDgLJzsbLEgfTicHUBYbHy2nVDw50ig5LzwrLzcK','ugvYy2vUDgfNzq','rhvYyxrPB24','cIaG','Dg9Vx29Sza','icbqCMvZCYbfBNrLCIb0BYbIzwDPBI4UlIa','ugHPBgLWCgLUzxm','ChvZAa','icdINjmGCgLWigf2ywLSywjSzq','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDs9HCgKVAwnVys9Kzw1Vlxn0yxrZ','icdIJ7aGmtaGBwLUDxrLCYbYzw1HAw5PBMC','zwDNmte','4O+XifrPBwuGCMvTywLUAw5NoG','u29SAwqGCgLJAY4','igvSAw1PBMf0zwqH','zxHHBvDHExnbAtrJDgy','zxHHBsbHBNn3zxiG','icbuBYbJB250Aw51zsb0AgLZigv4yw06','zMfPBa','AgLUDa','CMvZDwX0ifTPzf0','icaGigv4yw0GCMv2Awv3','zgLT','ihbHy2THz2vZlI4U','BM9KztPMCW','zgvTB0LUDhjVu2vLBG','icaGidiUieLUigfUiefKBwLUAxn0CMf0B3iGug93zxjtAgvSBcWGCNvUoG','mJuSmdaWihrVA2vUCW','icbuCM91yMXLC2HVB3rPBMC6','igzVDw5KlcbIDxqGmY4XmcSGCMvXDwLYzwqGzM9YihrOzsbLEgfTlG','icaGicbfBNrLCIbJAgf0oIaGicaG','zxHWBgfUyxrPB24','y291BNrYEq','icaG4PAi4PAi4Pwr4PAi4PAi4Pwu4Pwq4Pwq4Pwq4Pwq4PwD4PAi4PAi4Pwu4Pwq4Pwq4Pwq4PAi4PAi4Pwx4PAi4PAi4Pwu4Pwq4Pwq4PAi4PAi4Pwx','zgvTBW','ugXLyxnLihbYB3zPzguGEw91CIbMBgfNoIbLEgfTigfUC3DLCIa8BJ4GsunpqxT5B3vYx2zSywD9','icbrDwvZDgLVBNmGAw4Grw5NBgLZAc4Gvg8GC3DPDgnOigXHBMD1ywDLigzPCNn0oG','khbYzxnZigfUEsbRzxKGDg8GC2TPCcK','yNjLDW','mtqZmtK2tgLSC0fh','zMLUywW','u3vIBwL0DgvK','ihbVAw50CYaOntaLkq','CxvPDa','icbsDwXLCZO','tM8Gyw5ZD2vYCYb0BYbZDwjTAxqUiev4yw0Gy2XLyxjLzc4','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','icbpCIb0ExbLia','zwDNnW','icdWN5Ieie9UBhKGmIbVChrPB25ZigXLzNqG4OcuihLVDsbNB3qGDgHPCYe','icHxu0WYkq','y29TCgXLDgu','ic1TihbPCcaTlxzLCNnPB24','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbssaYmdi2','vgvHBsb1Ccb3AxrOiefjihrVihnVBhzLienurNm','icdIMiuGtMv3ihbLCNnVBMfSigjLC3qH','icaGieXHBMC6icaGia','icaGidmUie9Wzw4GysborvCGug93zxjtAgvSBcb3Aw5KB3CGkfbbveGGCMvMCMvZAcKSihrOzw46','ic1TihbPCcbPBNn0ywXSic0Tzhj5lxj1BIbWAxaGmJ4Mmq','zMXVB3i','BMv3','ywK0y3rMu3vI','icaGicaGicHpCIbKB3DUBg9HzcbMCM9Tihb5DgHVBI5VCMCGyw5KienirunligjVDgGGiKfKzcbqExrOB24GDg8','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILztILzdILzdILOJILOJILze','icbuExbLicjOzwXWiIbVBIbHBNKGCxvLC3rPB24GDg8GDxnLlG','ywrK','icaGicfWExrOB24Zic1JicjPBxbVCNqGyMfZzty0oYbWCMLUDcHIyxnLnJqUyJy0zgvJB2rLkcDtr1zZyKC4psCPksi','tMv3ifPLywXHBMq','ChLJCNLWDg9KB21L','vwj1BNr1ia','yxr0ywnRAw5N','icbpCIbKB3DUBg9HzcbPBNn0ywXSzxi6','icbeAxjLy3rPB25HBcbMzwvKyMfJAW','quKGDg9Rzw5ZoIa','rgvTBYbszxrYEsdIGjqGv3jVBMCGuxvLC3rPB25Zie9UBhK','C3rYAw5NAwz5','vgLTzsb1C2vKoIa','zxHHBsa','zMLUzeLUzgv4','icaGifb5DgHVBIaZlJeYigLZihjLy29TBwvUzgvKlIbjBNn0ywXSoG','igzSywDNzwqGzM9YihjLDMLLDY4','icbezxrLy3rLzdOG','uMv2Awv3oIa','z3jHzgLUzW','l3n1yM1PDa','icaGiokaOIbtzxj2zxiGyxv0BY1MAw5HBgLZzxmGEw91CIbHBNn3zxjZigLMihLVDsbKBYbUB3qGC3vIBwL0igjLzM9Yzsb0AguGzgvHzgXPBMu','icaOAgvSCca','icbVCIaG','Aw5FChjVz3jLC3m','icbgzwrVCMeGlYbssevmoG','icbB','icbjzIb5B3uGCMvHBgX5ihDHBNqGDg8GC3vIBwL0ihDPDgGGANvZDca','icaGihn1zg8Gzg5MigLUC3rHBgWGlxKGChL0Ag9UmY4XmG','zxHHBsbXia','ywK0y3rMpG','icbtDgfYDcbHifb5DgHVBIbZzxnZAw9Ulcb0ExbLignVBw1HBMrZig9UzsbIEsbVBMu6','iokaLcbZzwuGzNvSBcbLCNjVCG','yxr0zw1WDhm','rNjHBMnL','CMfUzg9T','lI4VBgLIl3bSyxrMB3jTlMPZ','icbmyw5NDwfNztOG','y3rMngfPpG','vgLTzsbszw1HAw5PBMC','icaGicaGicaOBM93lcb+nsbTAw4P','icbezxrLy3rLzdOGDw5YzwnVz25PEMvKihbSyxrMB3jTicG','icbgCMvLihbYywn0AwnLimk3ie5VigfJy291BNqGBMvLzgvKimk3ie5VihrPBwuGBgLTAxq','icaGC2vLihbYB2DYzxnZicSGzMXHz2DLzcbPDgvTCW','ig1PBIbYzw1HAw5PBMC','icaGig5LEhq','zxHHBsbTB3jLlwHLBha','icbjq09big9MzMLJAwfSBhKGC3vWCg9YDhmGv1nmmIbVBIbxAw5KB3DZlG','y2f0zwDVCNK','mteYmteYmKvWEeLiCa','zxHHBsbSAxn0ia','icaGienVBxbSzxrLzdOG','icaG8j+AGcaGu2vJDgLVBIaYoIbbstrdveyG4OcuiefjigLZihLVDxiGDgvHBw1HDgu','zhvYyxrPB25nAw4','icboBYb3CM9UzYbXDwvZDgLVBNmGDg8GCMv0CNKUifj1BIa','icaGswyGDgLTzsbPCYb0AwDODcWGC2TPBsbrmZKVndaGzMLYC3qGDg8GzgvJAwrLigf0DgfJAYbVCMrLCI4','BMv4Da','rwXPBwLUyxrLig9Uzsb3CM9UzYbVChrPB24GkgXPBwL0zwqGDxnLCYK','C3vIBwL0ifTJB25MAxjTqxjNxsbBC2vJB25KqxjNxq','D3jPDgu','icaGiokrOsa','icdIMQaGiefUigv4yw0GAxmGywXYzwfKEsbPBIbWCM9NCMvZCYbVBIb0AgLZigrLDMLJzs4','icaGicbfEgL0ignOyxq6icaGicaG','C3rYAwTLDgHYB3vNAa','igf0DgvTChq','zw50CMLLCW','icbVBMuGzgv2AwnLicSGB25LihnLC3nPB24UifLVDsbJyw5UB3qGC3DPDgnOihrVA2vUCYbTAwqTzxHHBs4','icaGigv4yw0GCsaXlI4','CMvTB3zLtgLZDgvUzxi','Aw5KzxHpzG','icdWN5Miie1HEcaYigHLBhbZihbLCIbXDwvZDgLVBIdIGjqGEw91igfSCMvHzhKGAgf2zsbHiduWlZuWiq','icaGidiUieLUihLVDxiGC2HLBgWSihj1BJO','CdmW','Dw5KzxjSAw5L','icbzB3vYihj1BG','sw5ZDgfSBcbqExrOB24Gzw52AxjVBM1LBNqGzM9YihbYywn0AwnHBcbLEgfTihf1zxn0Aw9UCW','wYbDica','uxvLC3rPB24G','icaGieLUC3rHBgWGuhL0Ag9UidmUmtiGyw5KihjLlxj1BIbLEgfTihnLDhvWlG','C29YDa','icaGicbcDwrNzxqGFJiGBwLUihbLCIbWCMfJDgLJywWGCxvLC3rPB24UifLVDsbJyw4Gy29TzsbIywnRihDPDgG6ig5LEhqGlYbWCMv2lG','8j+pLU+4JW','AgvSCf91C2vK','DxnLza','icaGicaGicaGia','AgvSCefSBfvZzwq','ihrVihnLzsb5B3vYihjLC3vSDhmH','vMLLDYbXDwvZDgLVBIaOB3iGywXSihf1zxn0Aw9UCYK','CMvWzwf0','Dg90ywXty29Yzq','ChL0Ag9UvMvYC2LVBG','zxHHBq','Cg9PBNrZ','oJaW','AwnVyt4','y29TCgXLDgvKqxq','icbdDxjYzw50BhKGzMXHz2DLzdOG','C3bSAwnL','vgLTzq','C3rHDhvZ','ic8G','AwnVyq','u2f1zgKGqxjHyMLH','icbiB3CGDg8GDxnLifb5DgHVBIbPBIbjq09bienmsq','ywLvC2fNzq','tMLJzsbVBMuU','Bg9N','Cgn0','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','icaGidmUieLUC2LKzsbvyNvUDhuSigLUC3rHBgWGtM9Kzs5QCYaYmIaRifb5DgHVBIb0B29SCYaRigLJB2e6','zxHHBsbZDwjTAxqGy29UzMLYBsa','zgvHzgXPBMvtzxj2zxjnCW','Bsb0B3rHBa','u291DgGGs29Yzwe','zgvZy3jPChrPB24','ixb5DgHVBJmGlI4U','DhjPBq','CgLWzq','ndGZnJm1mLvdq0nSDW','tM90ignVBM5Ly3rLzc4GuNvUoIbQB2LUidX1CMW+','vhvYA2v5','l2HLBha','AxnuvfK','zxHHBsb1BM1HCMSG','icaGievprG','A2v5CW','icbfEgfToIaGica','icaGihbYAw50khHVCIHJDcWGA2v5ks5KzwnVzguOksK','oIdIGjq','mvjtAwnvsW','ChjVBxb0','icaGihDPBMDLDcbPBNn0ywXSifb5DgHVBI5qExrOB24UmY4XmG','icdILidILidILiaGu3rHEsbVBIbUyxrPDMuGv2LUzg93CYaOyMvZDc1LzMzVCNqSig1HEsbOAxqGuefuscbPC3n1zxmPiokuGokuGokuGa','CMvTB3zLqwXStgLZDgvUzxjZ','icbvC2u6igv4yw0GCMv2Awv3imk3igv4yw0GC3vIBwL0','u3rHDhvZ','icdWN46bicS','icbuBYbNBYbIywnRoIaG','AhrWtgfUzW','icbdAgvJAYbLEgfTCYbMB3iGEw91CIbJB3vUDhj5oG','icbTywnpuYaOsg9TzwjYzxCSihjLy29TBwvUzgvKktO','icdcTYbzB3vYig5HDgLVBMfSig9Yz2fUAxPLCIb3AwXSigfUBM91BMnLihnLBgvJDgLVBIbYzxn1BhrZlG','lI4VBgLIl3bHCgvYlxvWz3jHzguUANm','zNvUy3rPB24','vw5HBNn3zxjLza','x2HLBhbnyxG','Dwj1BNr1','icaGicdcTYbtzxbHCMf0zsbIDwrNzxq6ia','icaGicaGia','BNvTyMvY','icdcTYbszwzLCMvUy2uGz3vPzgvZigzVCIaZocb0B29SCZOG','uhjVz3jLC3m','icbqCMv2Aw91CYbZzxr1CcbOywqGB25SEsa','ls11C2vYic0TyNjLywSTC3LZDgvTlxbHy2THz2vZ','uMvHzhKH','icaG4PAi4PAi4Pwr4PAi4PAi4PwricaGicdILOJILOJILzeGicdILOJILOJILzhILOJILOJILOJILOJILOJILOJILOJILze','CgXHDgzVCM0','x2XHC3rr','mtrhvMDIrLG','icaGicjiB3CGzg8GssbKzwnYExb0ieffuY1dqKmGAw4GuhL0Ag9UpYi','BgLUzq','r28GDg8GChjLDMLVDxmGCxvLC3rPB24','zxHHBsbXide','AgvSCfvZzwrvCa','icaGicdILQmG','icbjq09bidiWmJyGWRCGu3LKBMv5lcbbDxn0CMfSAweGWRCGsNvUidi3iokaKYbkDwWGmG','icaGicaGCMvZDw1Ligf0igfUEsbXDwvZDgLVBG','yxbWBgLJyxrPB24VANnVBG','zxHHBsbZzxr1Ca','C2nHChK','zw1VAMK','icaGicfWExrOB24ZihnVBhzLlNb5','BMv4DcaVihbYzxy','igLZigeGChjHy3rPy2fSihf1zxn0Aw9UiokaLcbHBNn3zxiGD2L0AcbHigzSywCSig5VDcbHigXLDhrLCI4','BM9KztPJAgLSzf9WCM9JzxnZ','B3v0Chv0','icdINjmGrxHHBsbZDgf0zsbJBgvHCMvKlG','ieLdt0f7Ew91CL9MBgfNFq','C3rKzxjY','DxrMltG','8j+pM++4JW','y3rMzfvYBa','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZlW','Dw5TyxjRifTUxq','icbeDxjPBMCGDgHLigv4yw0Sihr5CguG','BM93','icaGicfWExrOB24Z','icaGu3LKBMv5lcbbDxn0CMfSAweGimk3icbkDw4GmJCG4OctieP1BcaYlcaYmdi2','icdcTYblzwvWihnOyxjWzw5PBMC6ia','nty3nZiYnvD1zwfADG','CxvLC3rPB25Z','tK9uifbbu1nfra','u2v0DxaGzMfPBgvKiokaLcaWig9Mia','sgfJAYb0AguGquKNCYbNDwfYzhjHAwXZ','iokaLcb5B3uGy2fUBM90ignOyw5Nzsb0AgvTigfMDgvYihn1yM1PDc4','AhrWqMfJAW','icdIMiuGuq','icaGigv4yw0GBgLZDcbbvq','icaGid4+pIbMCM9TienYExb0BY5dAxbOzxiGAw1WB3j0ieffuW','icbfEgfTCgXLoIa','icaG4PwA4Pwq4PwDiokvMUkvKokvKokvKokvKokvKokvNsdILzRILzdILzdILzdILzdILzdILz0G4PwA4Pwq4PwDicdILzRILzdILz0','z3jHEq','igjVBNvZigHLBhaGDw5SB2nRzwqHicG','BgfUz3vHz2u','D2HPDgu','C2v0uhjVBxb0','zwDNmW','A2v5','icbcB251CYbOzwXWigfSCMvHzhKGDw5SB2nRzwqU','uhL0Ag9Uia','ig1PBNv0zxm','icbbCMnOic8GtwfUAMfYBZO','icaGig1VCMuGAgvSCa','icaGicaGicbqqvriiIaRicjjBNn0ywXSihbPCciGzhvYAw5NihrOzsbPBNn0ywXSzxiUkq','igfUC3DLCNmSihr5Cgu6','icaGv2HHDcb5B3uNBgWGzg8GDg9KyxK6','C3vKBYbHChqGDxbKyxrL','ig5VDcbMB3vUzcaOms0','u2vYDMvYig5VDcbYzwfJAgfIBguUienOzwnRihLVDxiGAw50zxjUzxqGy29UBMvJDgLVBI4','B25Jzq','tgLZDcbHDMfPBgfIBguGzxHHBxmGkg9WDgLVBMfSoIaYlwXLDhrLCIbJB3vUDhj5ignVzguP','z3jLzw4','CMvZDw1L','icaGifnVBwuGCgfJA2fNzxmGkhb3BNrVB2XZlcbZy2fWEsKGBwf5ig5VDcbOyxzLihDOzwvSCYb5zxqGzM9YidmUmtmU','icdIMQaGiduGBwLUDxrLCYbYzw1HAw5PBMC','DgLTzw91Da','icaGWRCGmteWienurIb0B29SCYbWCMuTy29UzMLNDxjLza','icbtDhvJAZ8Grw1HAwWGEw91CIbZzwXLy3rPB24Gy29VCMrPBMf0B3iGD2L0Acb0AguGC2nYzwvUC2HVDcbHyM92zs4','yMvHDxrPzNvSC291Cdq','q2HVAwnLig11C3qGyMuGqsWGqIWGqYWGB3iGrc4','l2fWAs9Py29Hl2v4yw1ZlW','vMfSAwrHDgLUzYb0B2TLBI4UlG','icbr','CMvZzxq','icbbBNn3zxjZoIa','icGR','Ahr0Chm6lY9WCMfJDgLJzs5Py29HmJaYnI5HDq','y3j5ChrVz3jHCgH5','q3j5ChrV','ig9YigXLyxzLihDPDgGG','y29TBwfUza','CMvXDwvZDhm','igrLDgvJDgvK','icaGihn1zg8GCgfJBwfUic1tihb5DgHVBG','DhLWzq','C3vIC3rYAw5N','ihbHy2THz2vZigLUC3rHBgXLzc4G','icbtDgfYDdOGzxHHBsbZDgfYDca8Awq+','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl3DPBMrVD3mV','yMfJAW','txLHBM1HCG','Aw50zxjHy3rPB25Z','zMLUza','tM8GzxHHBxmGyxzHAwXHyMXLigzVCIa','C2vYDMvYx3rPBwvFBxm','u3rHCNqGyw4GzxHHBsaOyMvNAw5ZihrPBwvYkq','ywn0Aw9U','ihbVAw50C10','C3rHCNqGpgLKpG','C3rKAw4','t24GDgHLig1VBMv5lG','uhjLCgfYAw5Nigv4yw0Gzw52AxjVBM1LBNqUlI4','BgLZDgvUzxjZ','icaG4PAi4PAi4PwxiokwIokwIokwIokwIokwIokwIokvLYdILOJILOJILOJILOJILOJILOJILzCGiokwIokwIokwIokwIokwIokvLW','icaGigH0DhbZoI8VD3D3lNb5DgHVBI5VCMCVzg93BMXVywrZl21Hy29ZlW','Axnoyu4','DMXH','yNjLDYbPBNn0ywXSihb5DgHVBKaZlJeY','lIboBYb0Aw1LCI4GrNjLzsbWCMfJDgLJzs4','rw52AxjVBM1LBNqGCMvHzhKHiefSBca','ihrVignVBMzPCM0Sig9YigfUExrOAw5NigvSC2uGDg8Gy2fUy2vSoG','BM90ugfZC2vK','zxHHBvDHExngB3vUza','icaGicbiAw50CYbbl0iVqZOGicaG','icaGihn1zg8GDxbKyxrLlwfSDgvYBMf0AxzLCYaTlwLUC3rHBgWGl3vZCI9IAw4VChL0Ag9UmYbWExrOB24Zic91C3iVyMLUl3b5DgHVBJmUmtiGmq','u291DgGGqwzYAwnH','icdcTYaG','icaGC2vJDxjPDhKGDgfZA3mG4OcuignYExb0BYWGD2vIlcbMB3jLBNnPy3mSihb3BI4','icaGifbHy2THz2vZoIa','uM9VBsb0BYbNCM93oIaGia','Bwf4','vMLLDYbLEgfTihjLC3vSDa','icbbzNrLCIbPBNn0ywXSAw5NlcbYDw46ia','zMfPBgvKugfJA2fNzxm','icdIHlKGuevqidy2ocbKzxrLy3rLzcdIGjqGDxnPBMCGls11C2vYigLUC3rHBgWGkg5Vihn1zg8GBMvLzgvKkq','zxHHBsbYzxn1BhqG','BwfJt1m','y2f0','icaGicbuAguGDg9Rzw4GAxrZzwXMigLZie5pvcbYzxzVA2vKihnLCNzLCI1ZAwrLlIbjzIb5B3vYihnLC3nPB24GAxm','zgvTBY1MCMvL','icaGicbjBNnPzguGy2HHDdOGicaG','ue9tva','icbzB3vYigjLC3q6ia','icaG','C2vZC2LVBG','ChL0Ag9UmW','DM9SyxrPBgL0Etm','icbxCMfWihvWigfUzcbZDwjTAxq6ia','Dg90ywW','zxHHBvDHExnuB1nVBhzL','igfUC3DLCMvKiokaLcbHy2nPzgvUDgfSihn1yM1PDcbNDwfYza','BMv4DeXHyMvS','icbzB3uGy2fUig5VDYbLBNrLCIbHig5LDYb0B2TLBIb3AxrOia','BgvUz3rO','AgfZ','yw5ZD2vYCW','icdINjmG','mZi1otuZsxPryNPX','icaGigTLEsa9ihHVCIHJDfS6nv0SigiIsunpqxSIkq','iIbPCYbPBIbWCM9NCMvZCY4','q2HLy2SGEw91CIb0B2TLBIbVCIbJB250ywn0ihLVDxiGChjVy3rVCI4','ChDUDg9VBhm','z2v0vgLTzq','icaGicbbssb0B2TLBNm6icaGicaG','icaGieHPBNrZoIaGieeOnsKGqIGZksbdkdePiokaLcbWCMfJDgLJywWGB25SEq','rvHqsvjfra','zMLSDgvY','sunpqsbqyxj0AwnPCgf0Aw5NienVDw50CMLLCYbHBMqGuMvNAw9UCW','icbnzxrOB2qGmZOGu2nYAxb0igzPBgu','icaGicaGicHszwjVB3qGAwyGv2LUzg93CYbHC2TZlcb0AgvUig9Wzw4GDgHLifvIDw50Dsb0zxjTAw5HBc4P','Aw5ZDgfSBgvKugfJA2fNzxm','AM9PBG','iokaLca','qw5ZD2vYzwq','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','CgfZC2vK','C19HAtrJDgy','icaGig1HCMS','vgLTzw91DevYCM9Y','icH3B3jRCYWGyNv0idmUmtiGCMvJB21Tzw5KzwqP','ic1TihbPCcbZAg93ici','ig9Mia','CgTN','AgvSCfjLBw92zq','BgLUDxG','l2fUC3DLCG','qw5ZD2vYideWihf1AwnRihf1zxn0Aw9UCW','Bw9Yzs1OzwXW','zxHHBsbZDwjTAxqG','ihjHBMrVBsbXDwvZDgLVBNmGzNjVBsbHihbVB2WGB2yG','ihnOyxjLzcbHy3jVC3mGutm54Octnda','C2v0uMf3tw9Kzq','y29YCMvJDa','icaGkhjLC3vTzsbMCM9TifeXkq','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMuTCNvUigv4yw0GC2v0Dxa6','icaGiokaOIbzB3uGBwf5igv4AxqGyw5KihjLC3vTzsb3AxrOihrOzsbZyw1LihrVA2vU','uhL0Ag9UidmGBM90igzVDw5KlG','u3vIBwL0igzHAwXLza','vgHHAwXHBMq','vxnLCI1bz2vUDa','y29UzMLYBq','C29Tzq','AwDUB3jL','zNjVBq','quXm','C2v0Dxa','ic0TDMvYC2LVBG','icaGidiUieLUifbVD2vYu2HLBgWSigLUC3rHBgWGuhL0Ag9UihDPDgGGCgLWoG','EwvSBg93','imk3ia','icbdB3vSzcbUB3qGCMvHy2GGC2vYDMvYigzVCIbOzwXWlIbdAgvJAYb5B3vYignVBM5Ly3rPB24U','yMvZDa','zxHHBsbZDwjTAxq','Dg9mB3DLCKnHC2u','ihrOzsbJB21WzxrPDgLVBI4','C3vKBYbHChqGAw5ZDgfSBcaTEsbWExrOB24ZlxbPCcbWExrOB24ZlxzLBNy','icaGDgHLig9Yz2fUAxPLCIbPBIb5B3vYignVDw50CNKU','icbVzIa','rMfPBgvKihrVigXVywqGzxHHBxm','sw52ywXPzcb0B2TLBG','tg9HzgLUzYbYzxn1BhqUlI4','icaGiokrPca','AgLUDcbHic8GyIaVigm','CgvYy2vUDgfNzq','zwDNmtm','zw5JB2rPBMC','AhrWqw5ZD2vY','Dg9ju09tDhjPBMC','zgfYD2LU','ywK0y3rMrgvZyW','u3rHCNqGDgHLigv4yw0/ifrOzsb0Aw1LCIb3AwXSigjLz2LUigLTBwvKAwf0zwX5lG','CMvWBgfJzq','icaGiefjigj1zgDLDdOGmJvlihrVA2vUCYbMB3iGquK0q1rgicSGmJvligzVCIbdvey0quK','BwLZC2LUzW','icaGign0id0GyNL0zxmUzNjVBwHLEcGImgeYyJbLmwmUlI4Ikq','icaGsg93ihrVigf0DgfJAW','zgf0yq','ChjLlxDYAxr0zw4GCgvYihf1zxn0Aw9U','ueftu0ve','zxHHBsbYzxzPzxC','AhrWtMf2','C19JDgy0ywK','zxHHBsbUyxrPB25Z','CgfKu3rHCNq','DgfYz2v0','uMvZDwX0igXVywrLza','ic1JicjPBxbVCNqG','BwfYAYbBBL0','icaGsw50zxjUyxrPB25HBcbdEwjLCIbpBhLTCgLHzcbPBIbbsq','uK9qz2fKz2v0','zxHHBsbOzwXW','BwfW','CgLSBg93','icaGidiUieLUC3rHBgWGsg9TzwjYzxCGzMLYC3qGkhDLigrPzcbUB3qGzMLUzca','rgvTBYbJB21WBgv0zwqGka','ixb5DgHVBJmGC29SDMuUChK','iokgKIa','icbxCML0zsbHic5WEsbMAwXLlcb0AgvUihj1BIbPDdO','y2XVC2u','icdIMiuGtwfYA2vKigzVCIbYzxzPzxC','icbxAw5KB3DZicH3Aw5NzxqSihjLy29TBwvUzgvKktO','qNjHEMLS','icaGicbtB2X2zsa','ihrVihjLDhvYBIb0BYb0AguGBwfPBIbTzw51lG','icbiB3CGDg8GAw5ZDgfSBcbqExrOB24GmY4XmcSGkdmUmtiGCMvJB21Tzw5KzwqPoG','icaGiokaOIbuCNK6ia','icaGiokrOca','icbuCNvZDcb5B3vYigLUC3rPBMn0igfUzcbWAwnRig9Uzse','icbszwfKEt8GvxnLia','ihvUzMXHz2DLzc4','u2H1zMzSAw5Nig9WDgLVBNmUlI4','icaGWRCGmtuGBgfUz3vHz2vZlcbYzwfSlxrPBwuGquKGDhjHBNnSyxrPB24','icaGid4+pIbJAxbOzxiGpsbbrvmUBMv3kgTLEsWGquvtlK1prevFq0jdlcbPDIK','igHLBhbZihjLBwfPBMLUzY4GvxnLihrOzw0GzMLYC3qH','qw5ZD2vYzwq6ica','x2HLBhbvC2vK','icaOChjLDMLVDxmGzxHHBsbZzxnZAw9Uigv4CgLYzwqG4OcuignSzwfYzwqGC3rHDguSihn0yxj0Aw5NigzYzxnOihDPDgGGEw91CIbUzxCGDg9Rzw4P','BwvZC2fNzq','zwXPBwLUyxrLzca','C2HVD25xyxjUAw5NCW','vMLLDg5HBq','Ew91CKfUC3DLCG','CdeW','icaGid4+pIbRzxKGpsbIExrLCY5MCM9TAgv4kci0otqZngy0ms4UlIiP','icdIHPmGifbYywn0AwnHBcbZzwn0Aw9UigjLz2LUCYbHDcbrmZeU','tgfVCW','uMv0CNKGB25SEsb0AguGCxvLC3rPB25ZihLVDsbNB3qGD3jVBMCGBgfZDcbKzw1Vigf0DgvTChq','icbuExbLia','icaGrwXHChnLzdOG','y3rMngfP','icdILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILitILiq','icaGs2v5igrPzMzLCMvUy2vZigzYB20GquK0q1rg','igfUC3DLCMvKkq','yw5ZD2vY','vhLWztOGzgvTBYb0BYbZDgfYDcbHz2fPBI4','y29UzMLYBwvKqxq','x3n1yM1PDenVBMzPCM1Lza','icaGiokgKIbIj0HLBgXVjW','tMfTzq','rxHHBsbfBNzPCM9UBwvUDcbtzxr1Ca','CM91BMq','q29UDgvUDc1uExbL','icbszwnVBw1LBMrLzcbWyxrOiokaLcbZD2L0y2GGDg8Gv1nmmIaOB25LlxrPBwuSih41ig1PBIK6','mtKXotGYnMjOCgXdrG','tM8GDgLTzsbSAw1PDa','ANnVBG','r28GDg8GBMv4DcbXDwvZDgLVBG','AhrWu3vIBwL0','vxnLicjLEgfTihjLDMLLDYiGDg8Gy2HLy2SGChjVz3jLC3mGB3iGiMv4yw0GC3vIBwL0iIb0BYbZDwjTAxqU','qNvYDw5KAq','zgvTBY1YzxrYEq','BgfUzYa8y29Kzt4','icbtDwjTAxqGBM93ihDPDgG6ia','4PQGicbfweLuigLJB2eGzMLYC3qG4Ocuihn1zg8Gy2fUBM90ihj1BIbPBNnPzguGDgHLihbYB21WDa','qwjHBMrVBIbJDxjYzw50igv4yw0GC2vZC2LVBIbHBMqGD2LWzsbSB2nHBcbZDgf0zsaOCMvJB3zLCNKGB25SEsK','ugfZCW','yM9VA21HCMTZ','icaGigjHy2S','igzVCIb0AgLZihnLy3rPB24','icboyxrPDMuGv2LUzg93CYbJyw4GCNvUifbHCgvYiemGke1dus1VBMX5ksbHBMqGquKGy2HHDcWGyNv0','CgfZC2LUz1nJB3jL','lI4VBgLIl2nVBMzPzY5QCW','rMfPBgvKihrVigXVywqGCMvZDwX0','icaGica','icaGigzYB20GChDUigLTCg9YDcb4B3i','CM9Wz2fKz2v0','AgvSCa','icdINjmGie1dusbZzwn0Aw9UignVBxbSzxrLiokaLcb3zwXSigrVBMuH','icbuBYbNBYbIywnRigfUzcbHBNn3zxiGBw9YztO','icaGifLVDsbJyw4GBM93ihvZztOG','uMvTB3zLihjLDMLLDYbMBgfNigzYB20GysbXDwvZDgLVBG','x2vSAw1PBMf0zwq','icaGicaGicbLBNrLCIbdvey0quKGy2HHDcdIGjqGyxr0ywnRihrOzsbbssb0yxjNzxqGkhjLy29TBwvUzgvKkq','icaOC2fTzsbHCYb5B3uGANvZDcb0ExbLzcK','icbozxH0ihn0zxa6ia','y3LHBG','rMXHzYbHihf1zxn0Aw9UihrVihjLDMLLDYbSyxrLCIaODg9Nz2XLCYK','qxzHAwXHyMXLiev4yw1ZicG','icbLEgfTiheGw25Dicb8igv4yw0Gyw5ZD2vYidXUpIa8qs1epIb8igv4yw0GCMv2Awv3ihWGzxHHBsbZDwjTAxq','icaGicaGigvUDgvYifzmqsbHDhrHy2SGBw9KzsbMB3iGDgHPCYbXDwvZDgLVBIaOCMvJB21Tzw5KzwqP','zwXPBwLUyxrLza','icdINjmGuhL0Ag9Uia','ihvUyw5ZD2vYzwq6ia','icbuAxa6ihn3AxrJAcb0BYb5B3vYigXHBMD1ywDLihDPDgG6igXHBMCG','icdIMiuG','D2HPy2G','CMvM','yM9Sza','AhrWtw9YzuHLBha','yw5ZD2vYx2nOyw5Nzwq','ueLm','icHJB21WBgv4ihnVBhv0Aw9UCYK','v2LUzg93CYbUyxrPDMuGkfbVD2vYu2HLBgWGlYbJBwqP','icaGuhjLC3mGyw55igTLEsb0BYbZDgfYDcbKzw1VlI4U','igzPCNn0lG','CxvLC3rPB25dB3vUDa','ihnRAxbWzwq','rxHHy3rSEs4','icaGifb5DgHVBJOG','r3jHzgLUzY4UlG','icaGiokgKIa','tM8GzxHHBsbPBIbWCM9NCMvZCY4GvxnLicjLEgfTihn0yxj0idXPzd4IihrVigjLz2LUlG','Dg9Rzw4','AxnbCNjHEq','ywK0y3rM','tg9HzgLUzYbLEgfTlI4U','q2XVC2uG4OcuihDLj2XSihjLDMLZAxqGDgHPCYbVBMuU','BM9KztPYzwfKBgLUzq','icaGieHLBha6icaGideWihvZzxmGkYa1igHPzgrLBIbIB251CYaOtunrig9UBhKP','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','mJuSmdaW','icaGidmUifjLC3rHCNqGAwnVysbHBMqGCMv0CNK6','uxvLC3rPB25Z','BgLZDcbBy291BNrYEv0','icaG8j+oRYaGu2vJDgLVBIaZoIbdvey0quKG4OcuienOywXSzw5Nzsb0AguGquK','AwnVys1JBgK','icaOugfWzxiGqYb0B2TLBNmGC2TPCcb0AgLZigDHDguG4OcuifbHCgvYiemGAxmGtunrlw9UBhKP','sg1Tlcb3B3j0AcbHihnLy29UzcbSB29Rigf0ihrOzsbLBMqU','yw5ZD2vYzwq','icbjBNn0ywXSAw5Nia','icaGid4+pIbLEgL0kcK','icaGicbuB2TLBJOG','icbkDw1WihrVigeGzMXHz2DLzcbXDwvZDgLVBJOG','uhjLCgfYAw5Nihf1zxn0Aw9UCY4UlG','igf0igfUEsb0Aw1LlG','ugvYDq','rMfPBgvKihrVihn0yxj0igv4yw0','u3rHCNrPBMCGDgLTzxiUlI4','icaGihzSytrJDgy','Dgv4Da','yw5ZD2vYx3n1yM1PDhrLza','sw5KAwe','C3vIBwL0ieLdt0f7Ew91CL9MBgfNFq','iokCKYaGka','zxHHBsbUzxH0','icaGiokaOIbpBIblywXPl1vIDw50DsaYmIS6ig1Pz2H0ig5LzwqGChL0Ag9UmY4XmI1KzxyGkYbIDwLSzc1LC3nLBNrPywW','BMf0Aw9UCW','l2v0yY9VCY1YzwXLyxnL','ihbHy2THz2vZigLUC3rHBgXLzc4','Cg9ZDc1YzxbVCNqTCMv0CNK','icbkDxn0igfKzcaHigjLzM9Yzsb0AguGy29TBwfUzdO','icaGicbfEgfToIaG','zwDNnq','icdIL4SG','Cvr1Dg9YAwfS','icbbBNn3zxjZigfYzsa','icbbC3nPC3rHBMnLihvZzwq','ywXS','icbozxCGBwvTyMvYpYbdB250ywn0oIbHy2nYzwrPDgf0Aw9UqgLJB2eYmdi2lMf1','icbuB2TLBJOGica','icdIMQaGie9UBhKG','rxHHBsbZDgfYDgvKisbuAw1LCIbPCYbYDw5UAw5NlG','C3vIBwL0rxHHBq','Ag93vg9qBgf5','icaGigfPngn0zG','Aw5WDxq','zxHHBvDHExnszwzqExrOB24','icaGigv4yw0GC3vIBwL0','icaG4PYticbtDwjTAxnZAw9UigfJy2vWDgvKiokaLcbIyxnLBgLUzsbTzxq','zxHHBsbTyxjRia','icaGideUifr5CguG','C3rHCNq','C3vIBwL0DgvK','icbMyxiGBw9YzsbZBw9VDgHSEsbPBNnPzguGv1nmmIbvyNvUDhuU','Dg9tDhjPBMC','ica+ia','icdINjmGCgLWigLUC3rHBgXLza','icdIMQaGuhL0Ag9Uia','l2fWAs9Py29Hl2v4yw0TDg9Rzw4','khnLCNzLCI1HDxrOB3jPDgf0AxzLkq','cGPgDwXSigf0DgfJAgvKigrHDge6cG','ig1PBG','zwXPBwLUyxrL','icaGigHLBha','ihrVigfZAYbbssbMB3iGAgvSCdO','C3LTChK','zxHHBsbWCMv2','icdWN5kHifrYEsb0ExbPBMCG','vw5SB2nRigHPzgrLBIbIB251CYbOzwXWihvZzxm','igfUzcbWCMvZCYbfBNrLCIb0BYbSzwf2zsbPy29H','qw5ZD2vYihnVBwuGCxvLC3rPB25ZigzPCNn0oIbLEgfTiheGmq','iIbPCYbHBhjLywr5igLUihbYB2DYzxnZlG','icdIL48G','ihbVAw50CW','Aw5JBhvKzxm','u3vIBwL0igv4yw0GzM9YigDYywrPBMCGkhvZztOGiMv4yw0GC3vIBwL0ignVBMzPCM0IigzVCIbYzwfSigv4yw1Zkq','icbqyxnZihrOCMvZAg9SzcbPCYb0ExbPy2fSBhKGntaLiokaLca','igf0DgvTChrZ','mJm5mdy0mhD2qNzIvq','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwq','ChjLDG','yxr0ywnOzwreyxrH','BMfTzq','yw5ZD2vYidXUpIa8y2HVAwnLlI4UpG','rw50zxiGzxHHBsb3AxrOigfJy2vZCYb0B2TLBIaOBM8GBg9NAw4GBMvLzgvKkq','igzHAwXLzdOG','C3rKAw8','ihjLBwfPBMLUzYK','icbgAxjZDcbLCNjVCIbKzxrHAwWGkgzVCIbKzwj1z2DPBMCPoG','icbbssbbC3nPC3rHBNq','zxHHBsbKzw1V','vhLWzsaIzxHHBsbZDwjTAxqIihrVigzPBMfSAxnLig5VDYWGB3iGDgHLihnLCNzLCIb3AwXSigf1Dg8TzMLUywXPC2uGD2L0AgLUidmWig1PBNv0zxmU','icbtDgfYDgLUzYbLEgfTlI4U','icaOuMv0CNKGD3jVBMCGB25SEsK','ihrVigXLyxzLigLJB2e','ihLLDc4','icdIMQaGCgLWig5VDcbMB3vUzcWGDhj5Aw5NigvUC3vYzxbPCc4UlG','Bw9YzsbOzwXW','icbqyxbLCIbbic8GqIbWCMfJDgLJywWGCxvLC3rPB25Zig5LzwqGvw5PEcb0B29SAw5NihrOyxqGCNvUCW','icbozxCGzxHHBxmGyxjLignVBwLUzYbZB29Uiq','oYb0AgLZihbYzxzLBNrZigfJy2LKzw50CYK','tM8GzxHHBsbPBIbWCM9NCMvZCY4','icaGicaGicaGicaGicaGicaGzxmGWRCGEMGGWRCGAMeGWRCGA28GWRCGyxiGWRCGzNiGWRCGChq','icbODhrWCZOVl2LJB2eYmdi2lMf1','zxHHBvDHExntyxzLzfrV','q29UBMvJDgLUzYb0BYbLEgfTihnLCNzLCI4UlG','CgvYuq','C2XPy2u','lZmWig11BhrPCgXLlwnOB2LJzsbHBNn3zxjLza','u3bVDcbVBI4','icaGicbqCM9TChqGAw5Qzwn0Aw9Uimk3igfKDMvYC2fYAwfSigfUywX5C2LZimk3iefjigf1zgL0Aw5N','z2v0rxHHBxm','ihrVihn1yM1PDcbMB3iGz3jHzgLUzY4','ihf1zxn0Aw9UCYbKCMf3BIbMCM9TigeGCg9VBcbVzIa','r2HHBMe','CgfKrw5K','icaGidiUifjLAw5ZDgfSBcbqExrOB24GD2L0AcbWAxaGkeHVBwvICMv3igrLDgvJDgvKiokCKYK6','ic1TihbPCcbPBNn0ywXSihb3BNrVB2XZ','ihbYB21WDcWGANvZDcbSAwTLihrOzsbKzw1V','D3nSic0TAw5ZDgfSBcaTzcbvyNvUDhuTmJiUmdq','C3rKB3v0','y2vPBa','icdWN46jiefSBcbXDwvZDgLVBNmGyw5ZD2vYzwqH','icaGicbLEgfTigXPC3qGueu','uhjLlwv4yw0GC2v0DxaGCMvXDwLYzwqGyMvMB3jLigvUDgvYAw5NigeGDg9Rzw4U','rxHHBxmG4Ocuia','iIaYpI9KzxyVBNvSBa','q3rYBcTd','igLZihDLBgWGyMvSB3CU','icbuAgLZihf1zxn0Aw9UihjLCxvPCMvZihLVDsb0BYb1C2uGAgvSCcbIzwzVCMuGyw5ZD2vYAw5NlG','zxHPDa','icaGicdcTYbbssbPCYb5B3vYia','sw5KB25LC2LH','4PQGicbfweLuigLJB2eGzMLYC3qG4OcuigLUC3rHBgXLCIbJyw5UB3qGCNvUigLUC2LKzsb0AguGChjVBxb0','icbjzIb5B3uGBMvLzcb0BYbHyMfUzg9UihrOAxmGC2vZC2LVBIaOzs5NlIbLEhbPCMvKic8GD3jVBMCGCgfWzxiPla','icaGihn1zg8GywrKlwfWDc1YzxbVC2L0B3j5ihbWytPKzwfKC25HA2vZl3bWysaTEq','ica0mcSGy291BNrYAwvZigfUzcbYzwDPB25ZihjLChjLC2vUDgvK','icaGia','icdILRGG','ihf1zxn0Aw9UCY4','y3vYBcaTzNnttcbODhrWCZOVl2rLyI5UB2rLC291CMnLlMnVBs9Zzxr1Cf8YmI54ihWGC3vKBYaTrsbIyxnOic0','icbtDwjTAxr0Aw5Nig5VDYbZy29YzxmGzNjVBsbVBMX5ia','CMv2Awv3','icaGv2vSy29Tzsb0BYb0AguGChjHy3rPy2fSienurIbZzwn0Aw9UlIbszwfS','twfJyxu','nZKWAvvdCNLu','AhrWsgvSCa','imk3ifbPy2SGB25LigfUC3DLCIbWzxiGCxvLC3rPB24','icboyxrPB25HBcbsB3vUzcaXifnLBgvJDgLVBIbLEgfTCYbHCMuGyMvPBMCGChjLCgfYzwqU','iefjigj5ihLVDxiGC2LKzs4GquKGAxmGEw91CIb0zwfTBwf0zs4','vgLTzsbLEhbPCMvKlG','sw52ywXPzcbLEgfTihrVA2vU','ifSGxsaG','lI4U','icdILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILihILie','BwLU','CsbBBL0','CMvK','EJmTC29SDMvY','iefjihn5C3rLBxmU','C3vKBYbHChqGAw5ZDgfSBcaTEsbUB2rLANmGChL0Ag9UmY1WAxaGChL0Ag9UmY12zw52','igfUC3DLCMvK','sw52ywXPzcbXDwvZDgLVBIbUDw1IzxiUifvZzsaXlI4','zxHHBsa8Dg9Rzw4+','qw5ZD2vYihf1zxn0Aw9Uie4GkeeVqI9dl0qGzM9Yie1dusWGsunpqxTMBgfNFsbMB3iGChjHy3rPy2fSkq','s2vLCcbPDcbPBIbTAw5KigzVCIbYzxzPzxCU','rw52AxjVBM1LBNqGCMvHzhK','icaGiefjoIaGicaGidi1sYbbstrdveyGkYaYnuSGq1rgnefjihrVA2vUCW','B3b0Aw9UCW','iokaLcbZD2L0y2GGD2L0AdOGBgfUzYa8y29Kzt4','CMvNzxG','lI4VBgLIl2rLBw8TzxHHBs5QCW','icaG4PAi4PAi4Pwr4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwx4PwA4PAi4PAi4PAi4PAi4PAi4PAi4Pwu4PwD4PAi4PAi4PwricdILOJILOJILze','icbtzxj2zxiGzgLKig5VDcbYzxr1CM4Gysb2ywXPzcbVChrPB24UifrYEsbHz2fPBI4','zgvTBY1LBNrLCG','icaGicaGC3rHCNqGuhL0Ag9UihnOzwXS','icaGutmX4OctmZGGkdGGCxvLC3rPB25Zimk3idyGChrZigvHy2GP','sw4GuhjVz3jLC3m6ia','icdILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILidILia','zxHHBuLK','C3vJy2vLza','icaGiokaOIbdAgvJAYb5B3uGAgf2zsbPBNrLCM5LDcaOCgLWlNb5CgeUAw8GBxvZDcbIzsbYzwfJAgfIBguP','icdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILza','u3rYB25NzxiGAgvYztOGia','D2L0Aa','CxvLC3rPB24','zxHHBu5HBwu','icbjBIb0AguGBwvHBNrPBwuSihrYEtOG','vg90ywW','icbzB3vYigfUC3DLCJOG','Cgf1C2u','zhvYyxrPB25nAw51DgvZ','C3vIBwL0DgvKqxq','icaGicaGC3vKBYb1CgrHDguTywX0zxjUyxrPDMvZic0TAw5ZDgfSBcaVDxnYl2jPBI9WExrOB24Zihb5DgHVBJmGl3vZCI9IAw4VChL0Ag9UmY4XmIaX','q29TCgXLDguH','icbnzxrOB2qGmtOGt25LlwXPBMvY','icbtDgvWlwj5lxn0zxa6','icaGicbZDgLSBcbHy3rPDMuGyw5Kig5VDcbZDwjTAxr0zwqSihjLlwvUDgvYAw5NihrOzsbZyw1LihrVA2vUihjLC3vTzxmGAxqU','Bwf0y2G','AhrWuMv2Awv3','l2fWAs9Py29Hl3nLCNzLCI10Aw1L','icaOzgLMzMvYzw50igzYB20GDgHLig9Uzsb5B3uGDhLWzwqP','icdIHPiG','y2XLyxi','rMXHz2DLzdOGica','icaGiezHAwXLzdOG','C3vIBwL0ieLdt0f7lI4UFq','D2LUz2v0igLUC3rHBgWGls1PzcbqExrOB24UuhL0Ag9UlJmUmtiGlwu','zxHHBsbYzxnLDa','icdIMQaGieXfu1mGveHbtIaXie1jtLvursbmruzu','ihbHy2THz2vZlIbszxrYEwLUzY4UlG','ihrVihDPCguGBg9JywWGC3rHDguSihrOzw4GCMuTzw50zxiGDgHLig5LDYb0B2TLBI4','C3bSAxq','icbszwLUC3rHBgWGuhL0Ag9UidmUmtiGD2L0AcbWAxaGyNvUzgXLzcWGDgHLBIbYzxrYEtO','AxnsyxC','lI4VBgLIl2v4yw0TC3rHDguUANm','C3rHCNrLzef0','Dg9Rzw4GpgnVzgu+','icHXDwLJAYb0yxnRCYK','icaGww91CIb0zxjTAw5HBca','zwDNmtu','t3rOzxi','vw5PDgvKieTPBMDKB20','icbqCMvZCYbfBNrLCIb0BYbZDgfYDcb0AguGzxHHBsb0Aw1LCI4UlIa','rxHHBsaI','icaGicbnzxnZywDLCYdIHPiGquKGDgfYz2v0iokaLcbJCMfMDcbWCM9TChrZihrVigjYzwfRigL0CYbYDwXLCY4','rw52AxjVBM1LBNqGywXYzwfKEsbZzxqGDxa','icaGigXHBMC','DdeW','tMf0Aw9UywWGC2vSzwn0Aw9Uigv4yw0','l2jPBI9IyxnOic1JiciKkgn1CMWGlwzZu0WGAhr0Chm6lY9YyxCUz2L0AhvIDxnLCMnVBNrLBNqUy29Tl0HVBwvICMv3l2LUC3rHBgWVsevbrc9PBNn0ywXSlNnOksi','icdIMiyGuq','icaGzMLUAxnOigfUzcbZDwjTAxq','zxHHBsb0B2TLBIa','x2HLBhbqzxjr','Dg9vChbLCKnHC2u','D2LUmZi','y2f0y2G','icbezw1VoIa','zgvTBY1LEgfT','icbdB250Aw51zsb0AgLZigv4yw06','CMvMihb5DgHVBG','DgvZDa','icdIMQaGiezjtKfmifnvqK1ju1njt04G4OcuihbSzwfZzsbJB25MAxjT','ixb5DgHVBJm','itXJBwq+ia','uMvJB21Tzw5Kzwq6ignVBxbSzxrLigrLBw8GzMLYC3q'];a0z=function(){return bP;};return a0z();}import{getConfig as a0W,saveConfig as a0X}from'../lib/config.js';import{getExamState as a0Y,saveExamState as a0Z,clearExamState as a0a0,getExamDeadline as a0a1,materializeAttachedData as a0a2}from'../lib/exam-state.js';import{getDemoStats as a0a3,recordDemoAttempt as a0a4,saveRetryQueue as a0a5,getRetryQueue as a0a6,clearRetryQueue as a0a7}from'../lib/demo-stats.js';import{logCommand as a0a8}from'../lib/logger.js';import{printSuccess as a0a9,printError as a0aa,printWarning as a0ab,printInfo as a0ac,printTable as a0ad,printHeader as a0ae,printKeyValue as a0af,createSpinner as a0ag,formatCountdown as a0ah}from'../lib/ui.js';import{t as a0ai}from'../lib/i18n.js';import{getDeviceFingerprint as a0aj}from'../lib/access.js';import{getExamSetup as a0ak,saveExamSetup as a0al,isExamSetupComplete as a0am}from'../lib/exam-setup.js';import{execSync as a0an}from'node:child_process';const q=z=>new Promise(B=>setTimeout(B,z));function E(B,F={}){const b1=a0B,G=a0W(),H={};H[b1(0x268)]='application/json',fetch(b1(0x3b0),{'method':b1(0x1c8),'headers':H,'body':JSON['stringify']({'type':B,'lang':G[b1(0x4b2)]||'en','timestamp':new Date()['toISOString'](),...F}),'signal':AbortSignal['timeout'](-0x496*-0x3+0x7f*0x4d+-0xacf*0x3)})[b1(0x39a)](()=>{});}function a0B(a,b){a=a-(0x4e8+0x1f97+-0x22fd);const c=a0z();let d=c[a];if(a0B['wOrYea']===undefined){var e=function(i){const j='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let l='',m='';for(let n=-0x323+0xf45*-0x1+-0xf8*-0x13,o,p,q=-0x623*-0x3+0xc*0x1c6+-0x9*0x469;p=i['charAt'](q++);~p&&(o=n%(0x22bc+-0x1*0x18fd+-0x35*0x2f)?o*(-0x1*0x178f+-0x38d*0x1+0x4*0x6d7)+p:p,n++%(-0x751+-0x1f9e+0xd*0x2ff))?l+=String['fromCharCode'](-0x2037+0x175+0x1fc1&o>>(-(-0xfff+0x63c*-0x5+0x2f2d)*n&-0x17eb+0x3*-0xac+0x19f5)):-0x1270+0x493*0x8+-0x1228){p=j['indexOf'](p);}for(let r=0x53*0x5e+-0xad*0x29+-0x2c5,s=l['length'];r<s;r++){m+='%'+('00'+l['charCodeAt'](r)['toString'](0xb*0x31d+0x3f3*-0x4+-0x1263))['slice'](-(-0x651*0x1+0x637*-0x1+0xc8a));}return decodeURIComponent(m);};a0B['FsQeeM']=e,a0B['QtLeQX']={},a0B['wOrYea']=!![];}const f=c[-0x155f+0xb9d+0x9c2],g=a+f,h=a0B['QtLeQX'][g];return!h?(d=a0B['FsQeeM'](d),a0B['QtLeQX'][g]=d):d=h,d;}function N(z,B){const b2=a0B,F=Math[b2(0x267)](z/(-0x11*-0x1f1+-0x194*-0xa+-0x3065)*(-0x1df*-0xf+-0xcdf+-0xf14)),G=-0xba9*-0x3+0x1*-0x4c1+-0x1e1c-F,H=a0L['green']('█'['repeat'](F))+a0L[b2(0x4b0)]('░'[b2(0x43f)](G)),J=String(z)[b2(0x22e)](-0x1f9e+0x2*-0x76d+0x2e7b)+'%';process['stdout'][b2(0x422)]('\x0d\x1b[2K\x20\x20'+H+'\x20'+J+'\x20\x20'+a0L[b2(0x4b0)](B));}function M(){const b3=a0B,z=a0W();return z[b3(0x49c)]&&z['token']?new a0V(z[b3(0x49c)],z[b3(0x2a5)]):(a0aa(b3(0x45e)),null);}function O(){const b4=a0B,z=a0a1();z&&(new Date()<z?a0af(b4(0x40e),a0L[b4(0x20b)][b4(0x296)](a0ah(z))):a0af(b4(0x449),a0L[b4(0x34a)][b4(0x296)](b4(0x1e0))));}function j(z,B){const b5=a0B;return Array[b5(0x2a6)](z['bookmarks'])&&z[b5(0x277)]['includes'](B);}function D(z,B){const b6=a0B,F=Array[b6(0x2a6)](z[b6(0x277)])?[...z[b6(0x277)]]:[],G=F[b6(0x42c)](B);return G>=0x175+-0x46d+0x2f8?(F[b6(0x448)](G,0x63c*-0x5+-0xfcb+0x2ef8),z[b6(0x277)]=F,a0Z(z),!(0x3*-0xac+-0x1c0+0x3c5)):(F['push'](B),F[b6(0x436)]((H,J)=>H-J),z[b6(0x277)]=F,a0Z(z),!(0x493*0x8+-0x1172+-0x102*0x13));}function R(B){const b7=a0B,F={};return F['used']=B['_helpUsed']||-0x83*-0x18+0x1209+-0x27*0xc7,F[b7(0x1bd)]=B['_helpMax']||0x9ad*0x3+0xef0+-0x2be3,F['perQ']=B[b7(0x397)]||{},F[b7(0x28f)]=B['_eliminated']||{},F;}function U(z,B){const b8=a0B,F=a0Y(),G=Number(F?.['session']['questionCount']||-0x637+0xebd*0x1+-0x868),H=Object[b8(0x464)](F?.[b8(0x1d6)]||{})[b8(0x1d4)],J=R(F),K=J[b8(0x28f)][z[b8(0x47c)]]||[],L=b8(0x2a7)===z[b8(0x199)]||b8(0x25c)===z['type']||'vla'===z['type']||z[b8(0x355)]&&!z[b8(0x355)]['A']&&!z[b8(0x355)]['B'];F&&function(Y,Z){const b9=b8;if(b9(0x1c6)===Y[b9(0x1cb)]['examId'])return;const a0=new Set(Y[b9(0x252)]||[]),a1=Number(Y[b9(0x1cb)][b9(0x29e)]||-0x155f+0xb9d+0x9ea),a2=a0a1();if(-0x1*-0x1ab9+0x1447+-0x2ef6===Z&&a1>=-0xf*-0x83+-0x1d6b+0x2*0xaf3&&!a0[b9(0x1d5)](b9(0x255))){const a3=a2?Math[b9(0x1bd)](-0x1*0x691+-0x36e+-0x9ff*-0x1,Math[b9(0x267)]((a2['getTime']()-Date[b9(0x4a0)]())/(-0x2a74+0x2962*-0x1+0x13e36))):null;console[b9(0x451)](),console[b9(0x451)](a0L['gray'](b9(0x25d))),console[b9(0x451)](a0L[b9(0x28a)]('\x20\x20⏱\x20\x20Time\x20check\x20\x20')+a0L['gray']('—\x20you\x27re\x201/4\x20through\x20the\x20exam')),null!==a3&&console[b9(0x451)](a0L['gray'](b9(0x27e)+a3+'\x20minutes\x20left.\x20Keep\x20the\x20pace\x20steady.')),console['log'](a0L['gray'](b9(0x25d))),a0[b9(0x3e8)](b9(0x255)),Y['shownWarnings']=Array[b9(0x206)](a0),a0Z(Y);}if(0x1690*0x1+0x1703+-0x2d75===Z&&a1>=-0x1497*0x1+-0xe65*0x2+0x3189&&!a0[b9(0x1d5)](b9(0x42f))){Object[b9(0x464)](Y[b9(0x1d6)]||{})[b9(0x1d4)];const a4=Object[b9(0x464)](Y['answers']||{})[b9(0x1e1)](a5=>Number(a5)<=0x4*0x98+-0x1b01*0x1+0x18bf)[b9(0x1d4)];console['log'](),console[b9(0x451)](a0L[b9(0x182)](b9(0x347))),console['log'](a0L[b9(0x296)][b9(0x182)](b9(0x282))),console[b9(0x451)](a0L[b9(0x4b0)](b9(0x27e)+a4+b9(0x319))),console['log'](a0L['white'](b9(0x257))),console[b9(0x451)](a0L[b9(0x4b0)](b9(0x437))),console['log'](a0L[b9(0x182)](b9(0x347))),a0[b9(0x3e8)](b9(0x42f)),Y[b9(0x252)]=Array['from'](a0),a0Z(Y);}}(F,z[b8(0x47c)]),F&&L&&function(Y,Z){const ba=b8;if(ba(0x1c6)===Y[ba(0x1cb)][ba(0x360)])return;if(Number(Y[ba(0x1cb)][ba(0x29e)]||-0x1b1d+0x2474+-0x92f)<0x1275+-0x10*-0x1af+-0x2d3d)return;const a0=new Set(Y[ba(0x252)]||[]);Z>=0xf*0x4d+-0x1*0x261b+0x21b7&&Z<=-0x1f40+-0x1*-0x17a6+0x7c0&&!a0[ba(0x1d5)](ba(0x1eb))?(console[ba(0x451)](),console[ba(0x451)](a0L[ba(0x182)](ba(0x2ac))),console['log'](a0L[ba(0x296)][ba(0x182)](ba(0x41b))),console[ba(0x451)](a0L[ba(0x182)](ba(0x2ac))),console['log'](),console[ba(0x451)](a0L[ba(0x4b3)](ba(0x33c))),console[ba(0x451)](a0L[ba(0x4b3)](ba(0x1ba))),console[ba(0x451)](),console[ba(0x451)](a0L[ba(0x296)]['white'](ba(0x35d))),console[ba(0x451)](a0L[ba(0x4b0)](ba(0x241))+a0L[ba(0x296)](ba(0x365))+a0L['gray'](ba(0x342))),console['log'](),console[ba(0x451)](a0L[ba(0x296)][ba(0x4b3)]('\x20\x20\x20How\x20to\x20work')),console[ba(0x451)](a0L[ba(0x4b0)]('\x20\x20\x20\x20\x20Enter\x20chat:\x20\x20\x20\x20\x20')+a0L[ba(0x296)][ba(0x182)](ba(0x2a7))+a0L[ba(0x4b0)](ba(0x23b))+a0L['magenta'](ba(0x405))+a0L[ba(0x4b0)](ba(0x323))),console[ba(0x451)](a0L[ba(0x4b0)](ba(0x1c7))+a0L['cyan'](ba(0x219))+a0L['gray']('\x20·\x20')+a0L[ba(0x28a)]('submit\x20ICOA{...}')+a0L['gray'](ba(0x20c))+a0L['cyan']('!python3\x20...')),console[ba(0x451)](a0L[ba(0x4b0)]('\x20\x20\x20\x20\x20Free\x20chat:\x20\x20\x20\x20\x20\x20any\x20message\x20→\x20AI\x20teammate')),console['log'](a0L['gray'](ba(0x425))+a0L[ba(0x28a)](ba(0x32f))+a0L[ba(0x4b0)]('\x20→\x20back\x20to\x20exam,\x20navigate\x20with\x20')+a0L[ba(0x28a)](ba(0x493))),console[ba(0x451)](),console[ba(0x451)](a0L[ba(0x296)][ba(0x4b3)]('\x20\x20\x20Budget\x20(shared\x20across\x20Q31–38)')),console['log'](a0L[ba(0x4b0)](ba(0x1de))+a0L[ba(0x4b3)](ba(0x2ad))+a0L[ba(0x4b0)](ba(0x279))),console[ba(0x451)](a0L[ba(0x4b0)](ba(0x1b6))+a0L[ba(0x4b3)](ba(0x228))),console[ba(0x451)](),console[ba(0x451)](a0L['yellow']('\x20\x20\x20Time\x20still\x20counting\x20down.\x20Budget\x20~2\x20min\x20per\x20question.')),console[ba(0x451)](a0L[ba(0x182)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[ba(0x451)](),a0[ba(0x3e8)]('s_ai4ctf'),Y[ba(0x252)]=Array[ba(0x206)](a0),a0Z(Y)):Z>=-0x1c09+0x1b97+-0x99*-0x1&&!a0[ba(0x1d5)](ba(0x22c))&&(console[ba(0x451)](),console[ba(0x451)](a0L['red'](ba(0x2ac))),console[ba(0x451)](a0L[ba(0x296)]['red'](ba(0x2b1))),console[ba(0x451)](a0L[ba(0x34a)](ba(0x2ac))),console[ba(0x451)](),console['log'](a0L[ba(0x4b3)]('\x20\x20\x20The\x20final\x20section\x20flips\x20the\x20script:\x20instead\x20of')),console['log'](a0L[ba(0x4b3)]('\x20\x20\x20using\x20AI,\x20you\x27re\x20')+a0L[ba(0x296)](ba(0x3ed))+a0L['white'](ba(0x34c))),console[ba(0x451)](),console['log'](a0L[ba(0x296)][ba(0x4b3)]('\x20\x20\x20Q39–40\x20(2\x20questions\x20·\x2016\x20pts\x20each\x20—\x20highest\x20value!)')),console[ba(0x451)](a0L[ba(0x4b0)](ba(0x31b))),console['log'](),console[ba(0x451)](a0L['bold']['white'](ba(0x226))),console[ba(0x451)](a0L[ba(0x4b0)](ba(0x3c5))+a0L[ba(0x296)][ba(0x34a)](ba(0x25c))+a0L[ba(0x4b0)]('\x20→\x20')+a0L['red'](ba(0x40d))+a0L['gray']('\x20prompt,\x20same\x20shape\x20as\x20demo')),console[ba(0x451)](a0L['gray']('\x20\x20\x20\x20\x20Inside\x20chat:\x20\x20\x20\x20')+a0L[ba(0x28a)](ba(0x219))+a0L['gray'](ba(0x20c))+a0L[ba(0x28a)](ba(0x37b))+a0L[ba(0x4b0)](ba(0x20c))+a0L[ba(0x28a)](ba(0x45a))),console[ba(0x451)](a0L['gray'](ba(0x38e))),console['log'](),console[ba(0x451)](a0L[ba(0x296)][ba(0x4b3)](ba(0x25e))),console[ba(0x451)](a0L[ba(0x4b0)](ba(0x330))+a0L[ba(0x34a)](ba(0x22f))+a0L['gray'](',\x20not\x20your\x20teammate')),console[ba(0x451)](a0L[ba(0x4b0)](ba(0x47a))+a0L[ba(0x4b3)](ba(0x3c2))+a0L['gray'](ba(0x1f9))),console[ba(0x451)](),console['log'](a0L[ba(0x20b)]('\x20\x20\x20These\x20are\x20the\x20hardest\x20questions.\x20Worth\x2021%\x20of\x20total\x20score.')),console[ba(0x451)](a0L[ba(0x20b)](ba(0x41e))),console[ba(0x451)](a0L[ba(0x34a)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console['log'](),a0[ba(0x3e8)]('s_ctf4ai'),Y[ba(0x252)]=Array['from'](a0),a0Z(Y));}(F,z[b8(0x47c)]),F&&function(Y){const bb=b8,Z=a0a1();if(!Z)return;const a0=Z[bb(0x1dd)]()-Date[bb(0x4a0)]();if(a0<=0x4cf*0x7+0x1*-0x132e+-0x151*0xb)return;const a1=a0/(0xc869*-0x1+-0x46a3*0x3+0x1*0x286b2),a2=new Set(Y['shownWarnings']||[]);let a3=null;if(a1<=0x13c7*0x1+-0x286+-0x1140&&!a2[bb(0x1d5)]('t1')?a3={'key':'t1','text':[a0L['red']['bold'](bb(0x37e)),a0L[bb(0x34a)](bb(0x273))+a0L[bb(0x296)](bb(0x20f))]}:a1<=0x22d1+-0x7f2+-0x1ada&&!a2[bb(0x1d5)]('t5')?a3={'key':'t5','text':[a0L[bb(0x34a)][bb(0x296)](bb(0x185)),a0L['yellow'](bb(0x1ce))+a0L[bb(0x296)](bb(0x20f))]}:a1<=0xfe9+0x843+-0x1822&&!a2[bb(0x1d5)](bb(0x391))&&(a3={'key':bb(0x391),'text':[a0L['yellow'][bb(0x296)](bb(0x3b1)),a0L[bb(0x4b0)]('\x20\x20Review\x20unanswered\x20questions:\x20')+a0L['white'](bb(0x22a))]}),a3){console[bb(0x451)](),console[bb(0x451)](a0L['red'](bb(0x347)));for(const a4 of a3['text'])console['log'](a4);console[bb(0x451)](a0L[bb(0x34a)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),a2[bb(0x3e8)](a3[bb(0x4b6)]),Y['shownWarnings']=Array[bb(0x206)](a2),a0Z(Y);}}(F),function(Y,Z,a0){const bc=b8,a1=Math['round'](Y/Z*(0x1*0x13eb+-0x168a+0x2bd*0x1)),a2=-0x4f*0x71+0x623+-0xe6d*-0x2-a1,a3=a0L[bc(0x28a)]('━'[bc(0x43f)](a1))+a0L[bc(0x4b0)]('─'[bc(0x43f)](a2)),a4=Math[bc(0x267)](Y/Z*(0x15bb+-0x1*0x2509+0x7*0x23e));console[bc(0x451)](),console[bc(0x451)]('\x20\x20'+a3+'\x20\x20'+a0L[bc(0x4b3)][bc(0x296)](''+Y)+a0L['gray']('/'+Z)+'\x20\x20'+a0L[bc(0x4b0)]('('+a0+'\x20answered)')+'\x20\x20'+a0L[bc(0x4b0)](a4+'%'));const a5=a0a1();if(a5){const a6=Math[bc(0x1bd)](0x1*0x23a+-0x62c+0x3f2,Math[bc(0x267)]((a5[bc(0x1dd)]()-Date['now']())/(-0x2*0x1116+0x1255+0x1*0x13bf))),a7=Math[bc(0x3e2)](a6/(-0xcdb*0x2+-0x19a0+-0x3af*-0xe))+':'+String(a6%(0x1*0xeb1+-0x256c+0x16f7*0x1))[bc(0x22e)](0x1c9d+-0xb6*-0x1d+-0x3139,'0'),a8=a6<=-0x23c4+0x7*0x16b+0x1*0x1a13?a0L[bc(0x34a)]['bold']:a6<=-0x12f6+-0x1*0xc0b+0x202d*0x1?a0L[bc(0x34a)]:a6<=-0x2700+0x16cf+-0x16d*-0xd?a0L[bc(0x20b)]:a0L[bc(0x4b0)];console[bc(0x451)]('\x20\x20'+a0L[bc(0x4b0)](bc(0x3b3))+'\x20'+a8(a7)+'\x20'+a0L[bc(0x4b0)](bc(0x2e8)));}}(z[b8(0x47c)],G,H),F&&j(F,z[b8(0x47c)])&&console['log'](a0L[b8(0x20b)](b8(0x23e)));const Q=function(Y,Z){const bd=b8,a0={};a0['pct']=0.2,a0['emoji']=bd(0x49b),a0[bd(0x4b6)]=bd(0x4b5);const a1={};a1[bd(0x452)]=0.33,a1[bd(0x491)]='🐨',a1[bd(0x4b6)]=bd(0x2cd);const a2={};a2[bd(0x452)]=0.5,a2['emoji']='🌉',a2['key']=bd(0x3d7);const a3={};a3[bd(0x452)]=0.6,a3['emoji']='🦘',a3['key']='egg9';const a4={};a4[bd(0x452)]=0.8,a4['emoji']=bd(0x438),a4[bd(0x4b6)]=bd(0x3b2);const a5={};a5[bd(0x452)]=0.87,a5[bd(0x491)]='🦈',a5[bd(0x4b6)]=bd(0x21b);const a6={};a6[bd(0x452)]=0x1,a6['emoji']='🎉',a6[bd(0x4b6)]=bd(0x389);const a7=[a0,a1,a2,a3,a4,a5,a6],a8=new Set();for(const a9 of a7){const aa=Math[bd(0x267)](a9[bd(0x452)]*Z);if(!(aa<-0x215d+-0x4a2*-0x1+-0x1cbc*-0x1||a8[bd(0x1d5)](aa))&&(a8[bd(0x3e8)](aa),Y===aa))return{'emoji':a9[bd(0x491)],'text':a0ai(a9[bd(0x4b6)])};}}(z[b8(0x47c)],G);if(Q&&console[b8(0x451)](a0L[b8(0x20b)]('\x20\x20'+Q[b8(0x491)]+'\x20\x20'+Q[b8(0x2c0)])),console[b8(0x451)](),z[b8(0x417)]&&console[b8(0x451)](a0L[b8(0x28a)](b8(0x401)+z[b8(0x417)]+']')),z[b8(0x443)]&&z[b8(0x443)]>0x15d*-0x6+-0x194b+0x217b*0x1&&console[b8(0x451)](a0L[b8(0x28a)](b8(0x401)+z['points']+b8(0x1a6))),L){let Y=z['description']||z[b8(0x2c0)];const Z=a0a2(z[b8(0x47c)],z[b8(0x2fe)]);if(z[b8(0x2fe)]){const a1=/\([^()]*attachedData[^()]*\)/;a1[b8(0x39f)](Y)?Y=Y[b8(0x222)](a1,z['attachedData']):Y[b8(0x2f7)](z['attachedData'])||(Y=Y+b8(0x2e9)+z[b8(0x2fe)]);}console[b8(0x451)](a0L['bold'][b8(0x4b3)](b8(0x18d)+z[b8(0x47c)]+'.\x20')+a0L['white'](Y[b8(0x381)]('\x0a')[0x10d7+0x822+-0x18f9]));const a0=Y[b8(0x381)]('\x0a')[b8(0x318)](0x1*-0xd25+0xcb*0x1c+-0x90e);for(const a2 of a0)console[b8(0x451)](a0L[b8(0x4b3)]('\x20\x20'+a2));if(console[b8(0x451)](),Z&&'ai4ctf'===z[b8(0x199)]){const a3=Z[b8(0x222)](process.env.HOME||'','~');console[b8(0x451)](a0L['cyan']('\x20\x20'+a0ai(b8(0x1d0))+'\x20')+a0L[b8(0x4b0)]('('+a0ai(b8(0x315))+'\x20'+a3+'):')),console[b8(0x451)](a0L[b8(0x4b3)](b8(0x245))+a0L[b8(0x20b)](b8(0x3a2)+a3)[b8(0x320)](-0x19ea+0xf7f+0xa9f*0x1)+a0L[b8(0x4b0)]('\x20'+a0ai('examWaysShell'))),console['log'](a0L[b8(0x4b3)](b8(0x423))+a0L[b8(0x20b)](b8(0x3a1))[b8(0x320)](-0x1d4f+-0x17*-0x4+-0x1d13*-0x1)+a0L[b8(0x4b0)]('\x20'+a0ai('examWaysPythonRepl'))),console[b8(0x451)](a0L[b8(0x4b3)]('\x20\x20\x20\x20③\x20')+a0L[b8(0x20b)]('!vi\x20solve.py')+a0L[b8(0x4b0)]('\x20\x20→\x20\x20')+a0L['yellow'](b8(0x23a))),console[b8(0x451)](a0L['white']('\x20\x20\x20\x20④\x20')+a0L[b8(0x20b)](b8(0x39e))[b8(0x320)](0x47e*-0x6+0x2466*0x1+-0x952)+a0L[b8(0x4b0)]('\x20'+a0ai(b8(0x2db)))),console['log'](a0L[b8(0x4b3)](b8(0x218))+a0L[b8(0x20b)](b8(0x2a7))[b8(0x320)](-0x15*0x1a+-0x1c7c+0x1ebe)+a0L['gray']('\x20'+a0ai(b8(0x3b6)))),console[b8(0x451)](),console[b8(0x451)](a0L[b8(0x4b0)]('\x20\x20'+a0ai(b8(0x1b5))+'\x20')+a0L[b8(0x296)][b8(0x182)](b8(0x2c3))),console['log']();}B&&(console['log'](a0L['green'](b8(0x36a)+B)),console[b8(0x451)]());}else{console[b8(0x451)](a0L[b8(0x296)][b8(0x4b3)](b8(0x18d)+z[b8(0x47c)]+'.\x20')+a0L['white'](z[b8(0x2c0)])),console[b8(0x451)]();for(const a4 of['A','B','C','D']){const a5=B===a4;K[b8(0x2f7)](a4)?console[b8(0x451)](a0L[b8(0x4b0)][b8(0x426)](b8(0x336)+a4+'.\x20'+z[b8(0x355)][a4])+a0L[b8(0x34a)]('\x20('+a0ai('wrong')+')')):a5?console[b8(0x451)](a0L[b8(0x182)][b8(0x296)](b8(0x337)+a4+'.\x20'+z[b8(0x355)][a4])):console[b8(0x451)](a0L[b8(0x4b0)]('\x20\x20\x20\x20'+a4+'.')+'\x20'+a0L['white'](z['options'][a4]));}console[b8(0x451)]();}const V=b8(0x1c6)===F?.['session'][b8(0x360)],W=J[b8(0x317)][-0xca7+0x8c8+0x3e1]||-0xf31*-0x1+-0x1*-0x16fd+-0x262e;V&&0x1ea9+0x19c1+-0x8*0x70d===z[b8(0x47c)]&&-0x16a*0x5+-0x2*-0x511+-0x310===W&&(console[b8(0x451)](a0L[b8(0x20b)][b8(0x296)]('\x20\x20'+a0ai(b8(0x2cf)))),console[b8(0x451)]());const X=J['max']-J[b8(0x43a)];if(console[b8(0x451)](a0L[b8(0x4b0)](b8(0x1e9))),L){const a6=F&&b8(0x1c6)!==F['session'][b8(0x360)]&&z['number']>=-0x40*-0x17+-0x15af+-0x1*-0x1016&&z[b8(0x47c)]<=0x13*-0x13e+-0xa7a+0x4*0x88f,a7=F&&b8(0x1c6)!==F[b8(0x1cb)]['examId']&&z[b8(0x47c)]>=0x1964+0x1b95+-0x34da&&z[b8(0x47c)]<=-0x1*-0x1bf1+-0x1*0x5ff+-0x15cc;b8(0x1af)===z['type']?console[b8(0x451)](a0L[b8(0x296)]['cyan'](b8(0x2bf))+a0L[b8(0x4b0)](b8(0x28e))):a7?console['log'](a0L[b8(0x296)]['green'](b8(0x2d9))+a0L[b8(0x4b0)]('\x20\x20\x20\x20\x20\x20\x20\x20enter\x20AI4CTF\x20chat\x20for\x20this\x20question\x20(recommended)')):a6&&console[b8(0x451)](a0L[b8(0x296)]['red']('\x20\x20\x20\x20ctf4ai')+a0L[b8(0x4b0)](b8(0x287))),console[b8(0x451)](a0L[b8(0x20b)]('\x20\x20\x20\x20exam\x20answer\x20<n>\x20ICOA{...}')+a0L[b8(0x4b0)]('\x20\x20submit\x20flag\x20directly')),console[b8(0x451)](a0L[b8(0x20b)](b8(0x4a1))+a0L[b8(0x4b0)](b8(0x35c)));}else{const a8=J['max']>=-0x68a+-0x3f+-0x39*-0x1f,a9=X>0x115e*0x2+0x9*0x1b5+-0x3219?a0L[b8(0x4b0)](a0ai(b8(0x1f2))+'\x20')+a0L['yellow']('('+X+'/'+J['max']+')'):a8?a0L[b8(0x4b0)](a0ai(b8(0x43c))+'\x20('+J[b8(0x43a)]+'/'+J[b8(0x1bd)]+')'):a0L[b8(0x4b0)](''+a0ai(b8(0x48a)));console[b8(0x451)](a0L['yellow']('\x20\x20\x20\x20A/B/C/D')+a0L['gray']('\x20\x20\x20\x20\x20\x20\x20'+a0ai('answerThis'))),console['log'](a0L[b8(0x20b)](b8(0x2ec))+b8(0x43b)+a9);}console[b8(0x451)](a0L[b8(0x20b)](b8(0x414))+a0L['gray']('\x20/\x20')+a0L[b8(0x20b)](b8(0x2fd))+a0L[b8(0x4b0)](b8(0x336)+a0ai('htpNav'))),console[b8(0x451)](a0L[b8(0x20b)](b8(0x42a)+G)+a0L[b8(0x4b0)]('\x20\x20\x20'+a0ai('htpJump'))),console[b8(0x451)](a0L[b8(0x20b)](b8(0x1ec))+a0L['gray'](b8(0x43b)+a0ai('htpMark'))),console[b8(0x451)](a0L[b8(0x20b)](b8(0x3bc))+a0L[b8(0x4b0)]('\x20\x20\x20'+a0ai(b8(0x374)))),console[b8(0x451)](a0L[b8(0x296)]['yellow'](b8(0x2dc))+a0L[b8(0x4b0)](b8(0x1ca)+a0ai(b8(0x26e)))),console['log'](a0L[b8(0x20b)]('\x20\x20\x20\x20back')+a0L[b8(0x4b0)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b8(0x4aa)))),console[b8(0x451)](a0L['yellow'](b8(0x390))+a0L[b8(0x4b0)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(b8(0x471)))),console[b8(0x451)](a0L[b8(0x4b0)](b8(0x1e9)));}export function registerExamCommand(z){const be=a0B,B=z[be(0x195)]('exam')[be(0x459)](be(0x392));B[be(0x195)](be(0x2c7))[be(0x459)]('View\x20all\x20participating\x20countries')[be(0x1a5)](()=>{const bf=be;a0a8(bf(0x22d)),console['log'](),a0ae(bf(0x1e2)),console['log']();const F=[['AU','Australia'],['BD','Bangladesh'],['BI',bf(0x270)],['BR',bf(0x240)],['CN','China'],['DE','Germany'],['EG','Egypt'],['FR',bf(0x409)],['GH',bf(0x31f)],['ID',bf(0x331)],['IN',bf(0x2c2)],['JP','Japan'],['KR',bf(0x458)],['LA',bf(0x258)],['LK','Sri\x20Lanka'],['MM',bf(0x19f)],['MO',bf(0x33d)],['MY','Malaysia'],['NZ',bf(0x3ea)],['PE',bf(0x2bc)],['PH',bf(0x3ad)],['RU','Russia'],['SA',bf(0x44d)],['SG','Singapore'],['TH',bf(0x201)],['TR',bf(0x45f)],['UK',bf(0x38b)],['US','United\x20States'],['UZ','Uzbekistan'],['VN',bf(0x253)],['ZA',bf(0x1b8)]];for(let G=0x3*0x71f+0x61*-0x37+0x86*-0x1;G<F[bf(0x1d4)];G+=0x55d*0x2+-0x4*-0x12e+0x9*-0x1b7){const H=F['slice'](G,G+(-0x7*0x4eb+-0x1*0x35+0x22a5))['map'](([J,K])=>'\x20\x20'+a0L[bf(0x28a)](J)+'\x20\x20'+a0L[bf(0x4b0)](K[bf(0x320)](0x25b7+0x2ee+0x3*-0xd87)))['join']('');console[bf(0x451)](H);}console[bf(0x451)](),console[bf(0x451)](a0L['gray'](bf(0x335))),console[bf(0x451)](a0L[bf(0x4b0)](bf(0x2d3))),console['log'](),console['log'](a0L['white'](bf(0x472))),console[bf(0x451)](a0L[bf(0x28a)](bf(0x4ac))+a0L[bf(0x4b0)](bf(0x328))+a0L[bf(0x4b0)]('\x20\x20\x20\x20\x20exam\x20list\x20CN')),console[bf(0x451)]();}),B['command'](be(0x2b0))[be(0x459)](be(0x4c3))[be(0x1a5)](async F=>{const bg=be;a0a8(bg(0x419)+(F||''));const G=M();if(!G)return;const H=a0ag('Loading\x20exams...');H[bg(0x2e0)]();try{let J=await G[bg(0x31c)]();if(H['stop'](),F){const Q=F[bg(0x398)]();J=J[bg(0x1e1)](V=>V[bg(0x3c7)]['toUpperCase']()===Q||bg(0x207)===V[bg(0x3c7)]);}if(!J||0x1215+0x1*-0xfd4+-0x241===J[bg(0x1d4)]){console[bg(0x451)](),a0ac(F?bg(0x1a2)+F[bg(0x398)]()+bg(0x30c):'No\x20exams\x20available\x20for\x20your\x20country\x20yet.'),console[bg(0x451)](),console[bg(0x451)](a0L['white'](bg(0x310))),console[bg(0x451)](a0L[bg(0x4b0)](bg(0x341))),console[bg(0x451)](),console[bg(0x451)](a0L[bg(0x4b0)](bg(0x368))+a0L['bold']['cyan'](bg(0x3c9))),console[bg(0x451)]();const V={};V['PE']='es',V['CN']='zh',V['JP']='ja',V['KR']='ko',V['BR']='pt',V['SA']='ar',V['FR']='fr',V['DE']='de',V['IN']='hi',V['ID']='id',V['TH']='th',V['VN']='vi',V['TR']='tr',V['RU']='ru',V['UA']='uk',V['HT']='ht',V['KE']='sw',V['TZ']='sw';const W=V,X=(F||'')[bg(0x398)]();return void(W[X]&&(console[bg(0x451)](a0L[bg(0x4b0)](bg(0x292)+W[X])),console[bg(0x451)]()));}const K=J[bg(0x236)](Y=>{const bh=bg,Z=bh(0x2e1)===Y[bh(0x44a)]?a0L[bh(0x182)]:bh(0x3ff)===Y[bh(0x44a)]?a0L['yellow']:a0L['white'];return[a0L[bh(0x4b3)](Y['id']),Y[bh(0x2ff)],a0L['cyan'](Y['country']),String(Y['questionCount']),Y['durationMinutes']+bh(0x2ea),Z(Y[bh(0x44a)])];}),L=[...new Set(J['map'](Y=>Y[bg(0x3c7)]))];a0ae(F?bg(0x32a)+F['toUpperCase']():bg(0x28c)+L[bg(0x1d4)]+'\x20regions)'),a0ad(['ID',bg(0x265),'Country',bg(0x2af),bg(0x3a9),bg(0x46e)],K),console[bg(0x451)](),console['log'](a0L[bg(0x4b0)](bg(0x19c))),L[bg(0x1d4)]>-0xb*-0x1f+-0x1*-0x17a5+-0x3*0x853&&console[bg(0x451)](a0L[bg(0x4b0)]('\x20\x20Filter\x20by\x20country:\x20exam\x20list\x20PE,\x20exam\x20list\x20CN,\x20...'));}catch(Y){H[bg(0x3b9)](bg(0x215)),a0aa(Y[bg(0x250)]);}}),B[be(0x195)](be(0x1a7))[be(0x459)](be(0x1a4))['action'](async F=>{const bi=be;a0a8('exam\x20start\x20'+F);const G=a0Y();if(G)return a0ab(bi(0x38d)+G[bi(0x1cb)][bi(0x367)]+bi(0x2f4)),void a0ac(bi(0x26f));const H=M();if(!H)return;const J=await a0Q({'message':a0L[bi(0x4b3)](bi(0x221)),'default':!(-0x1d6*-0x5+0x2109+0x2a37*-0x1),'theme':{'prefix':'','style':{'message':K=>K,'defaultAnswer':K=>a0L[bi(0x182)](K)}}});if(J){console[bi(0x451)]();try{N(0x231f+0x174e+-0x3a6d,bi(0x316));const {session:K,questions:L}=await H['startExam'](F);N(-0x1*-0x13ea+-0xfb1*-0x1+-0x237d,'Loading\x20questions...'),await q(-0x1*-0x12db+-0x1f4e+0xd3b),N(-0x1*0xe0f+-0x6d+0x3*0x4e8,bi(0x1aa)),await q(0xc*-0xa2+0xd6*-0x6+0xd64),N(0x5*0x22d+-0x32e*-0xa+-0x2a53,bi(0x2be)),await q(-0x39*0x65+0x9c1+0xd52),a0Z({'session':K,'questions':L,'answers':{}}),N(-0x6*0x3ad+-0x15e3+0x2c55,bi(0x481)),console[bi(0x451)](),console[bi(0x451)](),a0ae(K['examName']),a0af(bi(0x2af),String(K[bi(0x29e)])),a0af(bi(0x3a9),K[bi(0x36c)]+bi(0x4b9)),a0af(bi(0x3a5),K[bi(0x3c7)]),O(),L[bi(0x1d4)]>-0x226b+-0x1e34+-0xe9*-0x47&&U(L[0xc2c+-0x131e+0x6f2]);}catch(Q){console[bi(0x451)](),a0aa(Q[bi(0x250)]);}}}),B[be(0x195)](be(0x349))[be(0x459)](be(0x43e))[be(0x1a5)](async F=>{const bj=be;a0a8('exam\x20q\x20'+(F||bj(0x2d2)));const {refetchQuestionDataIfStale:G}=await import(bj(0x384));await G();const H=a0Y();if(H){if(O(),F){const J=parseInt(F,-0x2668+0x11e7+0x148b),K=H[bj(0x4a5)][bj(0x1a1)](L=>L[bj(0x47c)]===J);if(!K)return void a0aa(bj(0x434)+F+bj(0x4c0)+H[bj(0x4a5)]['length']+').');H['_lastQ']=J,a0Z(H),U(K,H[bj(0x1d6)][J]);}else{a0ae(''+H[bj(0x1cb)]['examName']);const L=Object[bj(0x464)](H[bj(0x1d6)])[bj(0x1d4)];a0af(bj(0x47e),L+'/'+H[bj(0x1cb)][bj(0x29e)]+'\x20answered'),console[bj(0x451)]();for(const Q of H[bj(0x4a5)]){const V=H[bj(0x1d6)][Q['number']],W=V?a0L[bj(0x182)]('['+V+']'):a0L[bj(0x4b0)]('[\x20]'),X=Q[bj(0x417)]?a0L[bj(0x4b0)]('\x20['+Q[bj(0x417)]+']'):'';console[bj(0x451)]('\x20\x20'+W+'\x20'+a0L[bj(0x4b3)]('Q'+Q[bj(0x47c)])+X+'\x20'+a0L[bj(0x4b0)](Q[bj(0x2c0)][bj(0x19a)](-0x44*-0x6b+0x9fd*0x1+-0x2669,0x1*-0xed7+-0x22b7+-0x18e5*-0x2))+(Q[bj(0x2c0)][bj(0x1d4)]>0x124a+-0x6*-0x476+-0x2cd2?bj(0x346):''));}console['log']();}}else a0aa('No\x20exam\x20in\x20progress.\x20Use\x20\x22exam\x20start\x20<id>\x22\x20to\x20begin.');}),B[be(0x195)](be(0x232))[be(0x459)](be(0x28b))['action'](F=>{const bk=be;a0a8(bk(0x2de)+(F||''));const G=a0Y();if(!G)return void a0aa(bk(0x312));const H=G['questions']['length'],J=F?parseInt(F,0x768*-0x2+0x1b99+-0xcbf):G[bk(0x484)]||0xda8+0x14*-0xef+0x505*0x1;if(Number[bk(0x1ae)](J)||J<-0x2*-0xf4f+-0xb9*0x10+0x130d*-0x1||J>H)return void a0aa(bk(0x34f)+H+'.');const K=D(G,J);console[bk(0x451)](),K?console['log'](a0L[bk(0x20b)](bk(0x4ab)+J+bk(0x3f7))):console[bk(0x451)](a0L[bk(0x4b0)](bk(0x394)+J+bk(0x248)));const L=Array[bk(0x2a6)](G[bk(0x277)])?G[bk(0x277)]:[];L[bk(0x1d4)]>0x667*-0x6+0x1052+0x1618&&console[bk(0x451)](a0L['gray'](bk(0x447)+L[bk(0x236)](Q=>'Q'+Q)['join'](',\x20'))),console[bk(0x451)](a0L[bk(0x4b0)]('\x20\x20See\x20all\x20flagged\x20questions\x20in:\x20')+a0L[bk(0x4b3)]('exam\x20review')),console[bk(0x451)]();}),B['command'](be(0x49e))[be(0x459)](be(0x285))[be(0x1a5)](F=>{const bl=be;a0a8(bl(0x462)+(F||''));const G=a0Y();if(!G)return void a0aa(bl(0x312));const H=G[bl(0x4a5)][bl(0x1d4)],J=F?parseInt(F,0x1f38+0xb55+-0x2a83):G[bl(0x484)]||-0x1408+-0x152+0x155b;Number['isNaN'](J)||J<0x1c79+-0x23b*0x4+-0x138c||J>H?a0aa('Invalid\x20question\x20number.\x20Use\x201..'+H+'.'):j(G,J)?(D(G,J),console[bl(0x451)](),console['log'](a0L[bl(0x4b0)]('\x20\x20☆\x20Q'+J+bl(0x248))),console['log']()):console[bl(0x451)](a0L[bl(0x4b0)](bl(0x18d)+J+'\x20was\x20not\x20flagged.'));}),B[be(0x195)](be(0x41f))[be(0x459)](be(0x26d))[be(0x1a5)](()=>{const bm=be;a0a8(bm(0x2c5));const F=a0Y();if(!F)return void a0aa('No\x20exam\x20in\x20progress.');F['questions'][bm(0x3f5)](K=>!F[bm(0x1d6)][K['number']]);const G=F['_lastQ']||0x554+0x27b*0x1+-0x7ce,H=Math[bm(0x348)](G+(0xc*0x9d+0x12f*-0x10+0xb95*0x1),F[bm(0x4a5)][bm(0x1d4)]);F[bm(0x484)]=H,a0Z(F);const J=F[bm(0x4a5)][H-(0x1b02+-0x18ec+-0x215*0x1)];U(J,F['answers'][J[bm(0x47c)]]);}),B[be(0x195)]('prev')[be(0x459)](be(0x488))[be(0x1a5)](()=>{const bn=be;a0a8(bn(0x2ef));const F=a0Y();if(!F)return void a0aa(bn(0x312));const G=F['_lastQ']||-0x45+0x2*-0xbd7+-0x4*-0x5fd,H=Math[bn(0x1bd)](G-(0x106a+-0xdd*0x27+-0x1*-0x1142),0x142b+0x1c66+-0x3090);F[bn(0x484)]=H,a0Z(F);const J=F['questions'][H-(0x2381+-0x1*-0x231a+-0x469a)];U(J,F['answers'][J[bn(0x47c)]]);}),B[be(0x195)](be(0x281))['description'](be(0x420))[be(0x1a5)](async()=>{const bo=be;a0a8(bo(0x235));const F=a0Y();if(!F)return void a0aa(bo(0x312));const G=R(F),H=F[bo(0x484)]||0x167c+0x2615+-0x3c90,J=G[bo(0x317)][H]||-0x10*0x116+0x116*0x1e+-0xf34,K=G['eliminated'][H]||[],L=F[bo(0x4a5)][bo(0x1a1)](W=>W[bo(0x47c)]===H);if(!L)return;if(J>=-0x1b97+0x1504+0x1*0x695)return console['log'](),console['log'](a0L[bo(0x20b)](bo(0x42d))),console['log'](a0L[bo(0x4b0)](bo(0x246))),console['log'](),void U(L,F[bo(0x1d6)][L[bo(0x47c)]]);const Q=['A','B','C','D']['filter'](W=>!K[bo(0x2f7)](W));if(Q['length']<=0x2f9*-0x6+-0x103+0x12db)return console[bo(0x451)](),console[bo(0x451)](a0L['yellow'](bo(0x3d8))),console[bo(0x451)](),void U(L,F[bo(0x1d6)][L[bo(0x47c)]]);if(G[bo(0x43a)]>=G[bo(0x1bd)]){const W=G[bo(0x1bd)]>=0x5*0x2ce+-0x12a1+0x1*0x4b9,X=-0x388*0x3+0xe5*-0x2+0xc80-G[bo(0x1bd)];return void(W?(console['log'](),console[bo(0x451)](a0L[bo(0x4b0)]('\x20\x20All\x20help\x20used\x20('+G[bo(0x43a)]+'/'+G[bo(0x1bd)]+bo(0x3a6))),console[bo(0x451)]()):(console[bo(0x451)](),console[bo(0x451)](a0L[bo(0x20b)]('\x20\x20Help\x20used:\x20'+G[bo(0x43a)]+'/'+G[bo(0x1bd)])),console[bo(0x451)](a0L[bo(0x4b3)]('\x20\x20Need\x20more?\x20Type:\x20')+a0L[bo(0x296)][bo(0x20b)](bo(0x30e))+a0L[bo(0x4b0)](bo(0x190)+X+'\x20bonus\x20uses)')),console[bo(0x451)]()));}const V=Y=>{const bp=bo;K[bp(0x3ae)](Y),G[bp(0x28f)][H]||(G['eliminated'][H]=[]),G['eliminated'][H]=K,G[bp(0x317)][H]=J+(-0x661+0x1a60+-0x13fe),G[bp(0x43a)]++,F[bp(0x24e)]=G[bp(0x43a)],F[bp(0x478)]=G[bp(0x1bd)],F[bp(0x397)]=G[bp(0x317)],F[bp(0x286)]=G[bp(0x28f)],F['interactions']||(F[bp(0x1a0)]=[]),F[bp(0x1a0)]['push']({'ts':new Date()[bp(0x21e)](),'q':H,'type':bp(0x439),'result':bp(0x251)+Y}),a0Z(F),console[bp(0x451)](),console[bp(0x451)](a0L['yellow']('\x20\x20💡\x20Option\x20'+Y+bp(0x3b5))+a0L[bp(0x4b0)](bp(0x3fd)+G[bp(0x43a)]+'/'+G[bp(0x1bd)]+')')),U(L,F[bp(0x1d6)][L[bp(0x47c)]]);};if(bo(0x1c6)===F[bo(0x1cb)][bo(0x360)]&&L[bo(0x260)])(Y=>{const bq=bo,Z=Q[bq(0x1e1)](a0=>a0!==Y&&!K['includes'](a0));0x195e+0x2a7*-0x7+-0x6cd!==Z[bq(0x1d4)]&&V(Z[Math['floor'](Math[bq(0x40a)]()*Z[bq(0x1d4)])]);})(L['answer']);else{const Y=a0W()[bo(0x49c)]||bo(0x191),Z=F[bo(0x1cb)]?.[bo(0x2a5)]||'';try{const a0={};a0[bo(0x268)]=bo(0x48e),a0[bo(0x202)]=bo(0x2b2);const a1={};a1['token']=Z,a1[bo(0x366)]=H,a1[bo(0x28f)]=K;const a2=await fetch(Y+bo(0x18b)+F[bo(0x1cb)][bo(0x360)]+bo(0x460),{'method':bo(0x1c8),'headers':a0,'body':JSON[bo(0x3f2)](a1),'signal':AbortSignal[bo(0x186)](-0x2165*-0x1+-0x6*0x1de+-0x2a9*0x1)}),a3=await a2[bo(0x26c)](),a4=a3?.[bo(0x227)]?.[bo(0x2eb)];a4&&['A','B','C','D'][bo(0x2f7)](a4)?V(a4):(console[bo(0x451)](),console[bo(0x451)](a0L[bo(0x4b0)](bo(0x35a))));}catch{console[bo(0x451)](),console[bo(0x451)](a0L['gray'](bo(0x20d)));}}}),B[be(0x195)](be(0x1f6))[be(0x459)](be(0x2f1))[be(0x1a5)](()=>{const br=be;a0a8(br(0x415));const F=a0Y();if(!F)return void a0aa(br(0x312));const G=R(F),H=br(0x1c6)===F[br(0x1cb)][br(0x360)]?0x2116+-0x95f+-0x17af:-0x368+0x25*-0x9e+0x1a5c;if(G['max']>=H)return void console['log'](a0L[br(0x4b0)](br(0x4b7)));if(G[br(0x43a)]<G[br(0x1bd)])return void console[br(0x451)](a0L['gray']('\x20\x20You\x20still\x20have\x20'+(G[br(0x1bd)]-G[br(0x43a)])+br(0x24c)));const J=H-G[br(0x1bd)];F[br(0x478)]=H,a0Z(F),console[br(0x451)](),console[br(0x451)](a0L[br(0x182)](br(0x46f)+J+br(0x4b1)+J+'/'+H+br(0x304))),console[br(0x451)](a0L['gray'](br(0x3e7))),console[br(0x451)]();}),B[be(0x195)](be(0x300))[be(0x459)](be(0x351))['action'](async(F,G)=>{const bs=be,H=G[bs(0x1e6)]('\x20');a0a8(bs(0x3b7)+F+'\x20'+H);const J=a0Y();if(!J)return void a0aa(bs(0x2a4));if(!(function(){const bt=bs,Z=a0a1();if(!Z)return!(-0xbe*0x20+-0x1*-0x2225+0x377*-0x3);if(new Date()>=Z){const a0=a0Y();if(a0){const a1=Object['keys'](a0[bt(0x1d6)])[bt(0x1d4)];'demo-free'===a0[bt(0x1cb)][bt(0x360)]||-0x1b5*-0x1+0xa10+0x17*-0x83===a1?(a0a0(),a0ab('Exam\x20expired\x20and\x20cleared.'),a0ac(bt(0x261))):(a0aa(bt(0x343)),a0ac(bt(0x308)));}return!(0x1f30+0xd4+0x37*-0x95);}return!(0x1c1*-0x13+-0x22c3+0x4416);}()))return;const K=parseInt(F,-0x1639*0x1+-0x19d5+0xc06*0x4),L=J[bs(0x4a5)][bs(0x1a1)](Z=>Z['number']===K);if(!L)return void a0aa('Question\x20'+F+bs(0x4c0)+J[bs(0x4a5)][bs(0x1d4)]+').');let Q;if(bs(0x2a7)===L['type']||bs(0x25c)===L[bs(0x199)]||bs(0x1af)===L[bs(0x199)]||L['options']&&!L[bs(0x355)]['A']&&!L['options']['B']){if(Q=H[bs(0x45b)](),/^submit\s+/i[bs(0x39f)](Q)&&(Q=Q[bs(0x222)](/^submit\s+/i,'')[bs(0x45b)]()),Q=Q[bs(0x222)](/^["'`]+|["'`]+$/g,'')['trim'](),!Q)return void a0aa(bs(0x3ca));if(/^[A-Da-d]$/[bs(0x39f)](Q))return a0aa('Q'+K+bs(0x494)),void console[bs(0x451)](a0L[bs(0x4b0)](bs(0x4ae))+a0L[bs(0x182)]('exam\x20answer\x20'+K+bs(0x498)));}else{if(Q=H[bs(0x398)](),!['A','B','C','D'][bs(0x2f7)](Q))return void a0aa(bs(0x18a));}if('demo-free'===J[bs(0x1cb)][bs(0x360)]&&-0x12b1+0xe38+0x47b===K&&-0x144*-0x12+-0x10c2+-0x606===(R(J)[bs(0x317)][0x12b7+0x1*-0x2363+0x1*0x10ae]||-0x89*-0x43+-0xcf1*0x3+0x5*0x98))return console[bs(0x451)](),console[bs(0x451)](a0L[bs(0x20b)](bs(0x2f0))+a0L[bs(0x296)][bs(0x20b)](bs(0x281))+a0L[bs(0x20b)]('\x20first\x20to\x20see\x20what\x20it\x20does!')),console['log'](a0L[bs(0x4b0)](bs(0x32e))),void console[bs(0x451)]();const V=J[bs(0x1d6)][K];J['interactions']||(J['interactions']=[]),J[bs(0x1a0)]['push']({'ts':new Date()[bs(0x21e)](),'q':K,'type':V?bs(0x298):bs(0x2c1),'input':Q,'result':V?'changed\x20from\x20'+V:bs(0x3e3)}),J[bs(0x1d6)][K]=Q,J[bs(0x484)]=K,a0Z(J),console[bs(0x451)](a0L['gray']('\x20\x20\x20\x20✓\x20saved'));const W=J[bs(0x1cb)][bs(0x2a5)];if(W&&bs(0x1c6)!==J[bs(0x1cb)][bs(0x360)]){const Z=(a0W()[bs(0x49c)]||bs(0x191))+bs(0x18b)+J[bs(0x1cb)][bs(0x360)]+bs(0x1f4),a0={};a0[bs(0x268)]=bs(0x48e);const a1={};a1['token']=W,a1[bs(0x366)]=K,a1[bs(0x260)]=Q,fetch(Z,{'method':'POST','headers':a0,'body':JSON[bs(0x3f2)](a1),'signal':AbortSignal[bs(0x186)](0x1*0x73d+0x3*0x121+0x8e8)})[bs(0x39a)](()=>{});}const X=Object['keys'](J[bs(0x1d6)])['length'],Y=J[bs(0x1cb)]['questionCount'];if(a0a9('Q'+K+':\x20'+Q+bs(0x2c4)+X+'/'+Y+bs(0x25f)),bs(0x1c6)===J[bs(0x1cb)][bs(0x360)]&&L['answer']){const a2=[bs(0x450),bs(0x3b4),bs(0x1a9),bs(0x2a0),bs(0x31a)],a3=[bs(0x2a9),bs(0x2b4),bs(0x352)],a4=Q===L[bs(0x260)]?a2:a3,a5=a4[Math[bs(0x3e2)](Math[bs(0x40a)]()*a4[bs(0x1d4)])];console[bs(0x451)](a0L[bs(0x4b0)]('\x20\x20\x20\x20·\x20'+a5));}if(K<J['questions'][bs(0x1d4)]){const a6=J[bs(0x4a5)][K];J['_lastQ']=a6[bs(0x47c)],a0Z(J),U(a6,J[bs(0x1d6)][a6[bs(0x47c)]]);}else X>=J[bs(0x4a5)]['length']&&(console[bs(0x451)](),console[bs(0x451)](a0L[bs(0x182)][bs(0x296)](bs(0x327))),console[bs(0x451)](),bs(0x1c6)===J[bs(0x1cb)][bs(0x360)]?(console[bs(0x451)](a0L[bs(0x4b3)](bs(0x25a))+a0L[bs(0x296)][bs(0x28a)](bs(0x20f))+a0L['white'](bs(0x43d))),console['log']()):console[bs(0x451)](a0L[bs(0x4b3)](bs(0x46d))));}),B[be(0x195)](be(0x33b))[be(0x459)](be(0x3a4))[be(0x1a5)](()=>{const bu=be;a0a8(bu(0x22a));const F=a0Y();if(!F)return void a0aa(bu(0x312));a0ae(bu(0x3f9)+F[bu(0x1cb)]['examName']),O(),console[bu(0x451)]();let G='\x20\x20';const H=Array[bu(0x2a6)](F['bookmarks'])?F['bookmarks']:[];for(const Q of F[bu(0x4a5)]){const V=F[bu(0x1d6)][Q['number']],W=H['includes'](Q[bu(0x47c)]),X=W?'★':'\x20';G+=V?W?a0L[bu(0x296)]['yellow']('Q'+String(Q[bu(0x47c)])[bu(0x22e)](0x2702+0x203b+0x209*-0x23)+X+'['+V+']\x20'):a0L[bu(0x182)]('Q'+String(Q['number'])[bu(0x22e)](0x2*0x7f8+0xa51*-0x1+-0x1*0x59d)+'\x20['+V+']\x20\x20'):W?a0L[bu(0x296)]['yellow']('Q'+String(Q[bu(0x47c)])[bu(0x22e)](-0x2*0x31+0x254+-0x2*0xf8)+X+bu(0x433)):a0L[bu(0x20b)]('Q'+String(Q[bu(0x47c)])[bu(0x22e)](0x124*-0x3+0x6b6+0x78*-0x7)+bu(0x345)),Q[bu(0x47c)]%(0x446+-0x253d+0x20fd)==0x1f0b+-0x85*0x35+0x1*-0x382&&(console['log'](G),G='\x20\x20');}G['trim']()&&console['log'](G);const J=Object['keys'](F[bu(0x1d6)])[bu(0x1d4)],K=F['session'][bu(0x29e)],L=K-J;if(console[bu(0x451)](),a0af(bu(0x1e8),a0L[bu(0x182)]['bold'](J+'/'+K)),L>-0x240*-0xb+-0xdf2+-0xace){const Y=F[bu(0x4a5)][bu(0x1e1)](Z=>!F['answers'][Z[bu(0x47c)]])['map'](Z=>Z[bu(0x47c)])['join'](',\x20');a0af(bu(0x477),a0L['yellow'](L+'\x20(Q'+Y+')'));}H[bu(0x1d4)]>-0x245c+0x314+-0x2*-0x10a4&&a0af('Flagged\x20for\x20review',a0L[bu(0x296)][bu(0x20b)]('★\x20'+H[bu(0x1d4)])+a0L[bu(0x4b0)]('\x20('+H[bu(0x236)](Z=>'Q'+Z)['join'](',\x20')+')')),console['log'](),H[bu(0x1d4)]>0x1*-0x14cf+-0x1065+-0x2534*-0x1&&console[bu(0x451)](a0L[bu(0x4b0)](bu(0x2b9))+a0L[bu(0x4b3)](bu(0x404)+H[0x254b*-0x1+0x1*-0x266d+0x25dc*0x2])),console[bu(0x451)](a0L[bu(0x4b0)](bu(0x247))+a0L[bu(0x296)][bu(0x28a)](bu(0x20f))+a0L[bu(0x4b0)](bu(0x31d)));}),B[be(0x195)](be(0x421))[be(0x459)](be(0x2f8))[be(0x1a5)](async(J,K)=>{const bv=be;a0a8(bv(0x1f7)+(J||'')+'\x20'+(K||''));const L=a0Y();if(L&&bv(0x203)===J&&!K&&(L[bv(0x263)]=!(-0x2469+0xb*0x22d+0xc7a),a0Z(L)),!L)return void a0aa(bv(0x312));const Q=Object[bv(0x464)](L[bv(0x1d6)])[bv(0x1d4)],V=L[bv(0x1cb)][bv(0x29e)],W=V-Q;if(0x21c*0xf+0x5b*0x3+0x1*-0x20b5===Q){const a0=a0a1(),a1=a0&&new Date()>=a0;return void(bv(0x1c6)===L[bv(0x1cb)][bv(0x360)]||a1?(a0a0(),a0ab(bv(0x3d4)),a0ac(bv(0x261))):(a0ab('No\x20answers\x20to\x20submit.'),a0ac(bv(0x2f3))));}const X=a0a1(),Y=!!(X&&new Date()>=X);if(bv(0x1c6)!==L[bv(0x1cb)][bv(0x360)]&&!Y&&bv(0x203)===J&&Q<-0x23f4+-0x1134+0x3532){if((K||'')[bv(0x45b)]()!==String(Q))return console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x34a)](bv(0x2ac))),console[bv(0x451)](a0L[bv(0x296)]['red'](bv(0x2d5)+Q+'/'+V+bv(0x1d1))),console[bv(0x451)](a0L[bv(0x34a)](bv(0x2ac))),console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x4b3)](bv(0x33a))+a0L[bv(0x296)]['yellow'](''+Q)+a0L[bv(0x4b3)](bv(0x1f0))+a0L[bv(0x4b3)](''+V)+a0L[bv(0x4b3)](bv(0x338))),console[bv(0x451)](a0L[bv(0x4b3)](bv(0x2f9))+a0L[bv(0x296)]['red'](Q+'/'+V+bv(0x32d))),console[bv(0x451)](),console['log'](a0L[bv(0x296)][bv(0x4b3)](bv(0x283))),console[bv(0x451)](a0L[bv(0x4b0)](bv(0x336))+a0L['cyan'](bv(0x489))+a0L[bv(0x4b0)](bv(0x1fc))),console['log'](a0L['gray'](bv(0x336))+a0L[bv(0x28a)](bv(0x22a))+a0L[bv(0x4b0)]('\x20\x20(see\x20which\x20questions\x20are\x20blank)')),console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x296)][bv(0x4b3)](bv(0x402))+a0L['bold'][bv(0x20b)](''+Q)+a0L[bv(0x296)][bv(0x4b3)](bv(0x4bd))),console[bv(0x451)](a0L[bv(0x4b0)]('\x20\x20\x20\x20')+a0L[bv(0x296)][bv(0x28a)](bv(0x455)+Q)),console[bv(0x451)](a0L['gray']('\x20\x20(yes\x20—\x20literally\x20type\x20the\x20number\x20'+Q+bv(0x311))),console[bv(0x451)](),void(L[bv(0x263)]&&(delete L[bv(0x263)],a0Z(L)));L[bv(0x263)]=!(-0x5*-0x79f+0x131d*-0x1+-0xb*0x1ba),a0Z(L);}if(bv(0x1c6)!==L[bv(0x1cb)]['examId']){const a2=!(0x20a1+-0xb*-0x1f5+-0x2*0x1b14)===L['_submitConfirmed'],a3=a0a1(),a4=!!(a3&&new Date()>=a3);if(!a2&&!a4){if(console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x34a)](bv(0x347))),console[bv(0x451)](a0L[bv(0x296)]['red'](bv(0x3a0))),console['log'](a0L[bv(0x34a)](bv(0x347))),console[bv(0x451)](),console['log'](a0L[bv(0x4b3)]('\x20\x20You\x20will\x20submit\x20'+a0L['bold'][bv(0x182)](Q+'/'+V)+'\x20answers.')),W>0x1*0x62+0x1d2*0x3+-0x58*0x11){const a6=L[bv(0x4a5)][bv(0x1e1)](a7=>!L[bv(0x1d6)][a7[bv(0x47c)]])[bv(0x236)](a7=>'Q'+a7[bv(0x47c)])[bv(0x1e6)](',\x20');console[bv(0x451)](a0L[bv(0x20b)]('\x20\x20'+W+bv(0x291)+a6));}const a5=Array[bv(0x2a6)](L[bv(0x277)])?L['bookmarks']:[];return a5[bv(0x1d4)]>-0x1490+-0x4*-0x2a1+0x4*0x283&&console['log'](a0L['yellow'](bv(0x293)+a5[bv(0x1d4)]+'\x20still\x20flagged\x20for\x20review:\x20'+a5[bv(0x236)](a7=>'Q'+a7)[bv(0x1e6)](',\x20'))),console[bv(0x451)](),console['log'](a0L['white'](bv(0x2d0))+a0L[bv(0x296)][bv(0x34a)](bv(0x3cf))+a0L[bv(0x4b3)](bv(0x4a9))),console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x296)]['white']('\x20\x20To\x20confirm:\x20\x20')+a0L['bold']['cyan']('exam\x20submit\x20confirm')),console[bv(0x451)](a0L[bv(0x4b3)](bv(0x470))+a0L[bv(0x28a)]('exam\x20review')+a0L[bv(0x4b0)](bv(0x3fe))+a0L[bv(0x28a)](bv(0x19e))),void console[bv(0x451)]();}a2&&(delete L[bv(0x263)],a0Z(L));}if(console[bv(0x451)](),bv(0x1c6)===L[bv(0x1cb)]['examId']){try{N(0x1534+-0x232f+-0x4a9*-0x3,a0ai(bv(0x3fa))),await q(0x3d*-0x39+-0x21f9+0x30ba);let a7=0xb11+-0x1*-0x2435+-0x2f46;const a8=[],a9={};for(const al of L[bv(0x4a5)]){const am=al[bv(0x417)]||bv(0x38a),an={};an[bv(0x1fb)]=0x0,an[bv(0x1cf)]=0x0,(a9[am]||(a9[am]=an),a9[am][bv(0x1cf)]++);const ao=L['answers'][al[bv(0x47c)]];ao&&al['answer']&&ao===al[bv(0x260)]?(a7++,a9[am][bv(0x1fb)]++):a8[bv(0x3ae)](al[bv(0x47c)]);}a8[bv(0x436)]((ap,aq)=>ap-aq),N(-0x933+0x121d+0x886*-0x1,a0ai(bv(0x3da))),console[bv(0x451)]();const aa=new Date(L['session'][bv(0x385)])[bv(0x1dd)](),ab=Math[bv(0x1bd)](0x53*0x1e+-0x759+-0x261,Math[bv(0x267)]((Date[bv(0x4a0)]()-aa)/(0x1f38+-0x163b+-0x515))),ac=Math[bv(0x3e2)](ab/(0x529*0x1+0xae9*0x1+-0xfd6))+'m\x20'+ab%(0x2d4+0x5*-0x596+0x1956)+'s',ad=[...L[bv(0x4a5)]],ae={...L['answers']},af=R(L);a0a0();const ag=Math[bv(0x267)](a7/V*(-0x1c53+-0x2528+0x41df)),ah=a0W(),ai={};ai['Content-Type']=bv(0x48e),(fetch(bv(0x3b0),{'method':bv(0x1c8),'headers':ai,'body':JSON[bv(0x3f2)]({'type':bv(0x39c),'score':a7,'total':V,'lang':ah[bv(0x4b2)]||'en','help_used':af[bv(0x43a)],'help_max':af[bv(0x1bd)],'tokens_used':0x0,'solved':ag>=0x894+0x1794+-0x1*0x1fec?-0xbc*0x11+0x35*-0x17+-0x5c0*-0x3:0x130b+-0x13a6+0x9b,'timestamp':new Date()[bv(0x21e)](),'interactions':L[bv(0x1a0)]||[]}),'signal':AbortSignal[bv(0x186)](-0x2e*-0x69+0x270d+-0x2663)})['catch'](()=>{}),console[bv(0x451)](),console['log'](a0L[bv(0x28a)]('\x20\x20═══════════════════════════════════════')),console[bv(0x451)](),console[bv(0x451)](a0L['bold']['white'](bv(0x1ac))),console[bv(0x451)](a0L[bv(0x296)][bv(0x4b3)]('\x20\x20\x20██║██╔════╝██╔═══██╗██╔══██╗')),console['log'](a0L[bv(0x296)][bv(0x4b3)](bv(0x482))),console[bv(0x451)](a0L[bv(0x296)][bv(0x4b3)](bv(0x3e6))),console['log'](a0L[bv(0x296)][bv(0x4b3)](bv(0x359))),console['log'](a0L['bold'][bv(0x4b3)](bv(0x4af))),console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x296)](bv(0x1ca)+a0ai('score')+':\x20'+a7+'/'+V+'\x20('+ag+'%)')),console[bv(0x451)](a0L[bv(0x296)](bv(0x1ca)+(ag>=0x478+0x7d*-0x3b+-0x1893*-0x1?a0L[bv(0x182)](a0ai(bv(0x1ea))):a0L[bv(0x34a)](a0ai(bv(0x1b4)))))),console[bv(0x451)](a0L[bv(0x4b0)](bv(0x25b)+ac)),console['log'](),console[bv(0x451)](a0L[bv(0x20b)](bv(0x3dc))),console[bv(0x451)](a0L[bv(0x4b0)]('\x20\x20\x20Sydney,\x20Australia\x20·\x20Jun\x2027\x20-\x20Jul\x202,\x202026')),console['log'](),console[bv(0x451)](a0L['cyan'](bv(0x3d5))),await q(-0x217d*-0x1+-0x23*0x1a+-0x1237));const aj=Object['entries'](a9);if(aj[bv(0x1d4)]>-0x104a+0x128f+-0x245){console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x296)][bv(0x4b3)]('\x20\x20By\x20category'));const ap=-0x145a+-0x689+0x1aed;for(const [aq,ar]of aj){const as=ar['total']>-0x757*0x2+-0x2673+0x3521*0x1?Math[bv(0x267)](ar[bv(0x1fb)]/ar[bv(0x1cf)]*(0x23a1+0x2*-0x356+-0x1c91*0x1)):0x446*0x3+0x1*-0x22c6+-0x5*-0x464,at=ar[bv(0x1cf)]>0x28d*0xf+-0x1fb*-0x8+0x13*-0x2d9?Math[bv(0x267)](ar[bv(0x1fb)]/ar[bv(0x1cf)]*ap):-0xf6e+-0x258a+-0x4*-0xd3e,au=ap-at,av=as>=0x2b*0xbd+0x4c7*0x1+-0x2436?a0L[bv(0x182)]:as>=-0x2*-0x7fb+0x1caf+-0x1*0x2c73?a0L['yellow']:a0L['red'],aw=av('█'[bv(0x43f)](at))+a0L[bv(0x4b0)]('░'[bv(0x43f)](au));console['log'](bv(0x336)+a0L[bv(0x4b3)](aq[bv(0x320)](-0xab5+-0xa34+-0x1*-0x14fd))+'\x20'+aw+'\x20\x20'+av(ar[bv(0x1fb)]+'/'+ar['total'])+a0L['gray']('\x20('+as+'%)'));}console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x28a)](bv(0x35f)));}const ak=a0a4(a7,V);if(a7===ak[bv(0x20e)]&&ak[bv(0x408)]>0x26*-0xd3+-0x1133+0x1843*0x2&&a7>-0xbf6*0x3+-0xae+0x34*0xb4&&(console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x296)][bv(0x182)](bv(0x3de)))),a8[bv(0x1d4)]>-0x1*0x2125+0x751*-0x3+0x3718){const ax=ad[bv(0x1e1)](ay=>a8['includes'](ay[bv(0x47c)]))[bv(0x236)](ay=>({...ay}));a0a5(ax);}else a0a7();if(await q(-0x2321+-0x140e+0x42e7),a8['length']>-0xa03*-0x1+-0x17b0+0xdad){console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x20b)]('\x20\x20'+a8[bv(0x1d4)]+'\x20'+a0ai('incorrectIntro'))),console[bv(0x451)]();for(const ay of a8){const az=ad[bv(0x1a1)](aC=>aC[bv(0x47c)]===ay);if(!az)continue;const aA=ae[ay],aB=az[bv(0x260)];console['log'](a0L[bv(0x4b3)](bv(0x18d)+ay+'.\x20'+az[bv(0x2c0)])),aA?console[bv(0x451)](a0L['red']('\x20\x20\x20\x20'+a0ai(bv(0x254))+':\x20'+aA+'.\x20'+az[bv(0x355)][aA])):console[bv(0x451)](a0L[bv(0x20b)]('\x20\x20\x20\x20'+a0ai(bv(0x254))+bv(0x467))),aB&&console[bv(0x451)](a0L[bv(0x182)](bv(0x336)+a0ai(bv(0x1fb))+':\x20'+aB+'.\x20'+az[bv(0x355)][aB])),az[bv(0x3c6)]&&console[bv(0x451)](a0L[bv(0x4b0)](bv(0x2a3)+az['explanation'])),console['log']();}}else console['log'](),console['log'](a0L[bv(0x182)]('\x20\x20'+a0ai('perfectScore')));await q(-0x463*0x2+-0x26a7*-0x1+0x15*-0x10d),console['log'](),console[bv(0x451)](a0L['cyan'](bv(0x35f))),console[bv(0x451)](a0L[bv(0x4b3)]('\x20\x20'+a0ai(bv(0x1d2))+'\x20')+a0L['bold']['green'](bv(0x2a7))+a0L[bv(0x4b0)](bv(0x1e7)+a0ai(bv(0x220)))),console[bv(0x451)](a0L['gray']('\x20\x20'+a0ai(bv(0x3e4)))),console['log'](a0L['cyan'](bv(0x35f))),console['log']();}catch(aC){console[bv(0x451)](),a0aa(aC[bv(0x250)]);}return;}const Z=L[bv(0x1cb)]['token'];try{let aD;if(N(0x416+0x125a+-0x1670,'Uploading\x20answers...'),Z){const aN={};aN[bv(0x268)]='application/json';const aO={};aO[bv(0x2a7)]=0x0,aO[bv(0x25c)]=0x0;const aP=a0W()['ctfdUrl']||bv(0x191),aQ=await fetch(aP+'/api/icoa/exams/'+L['session'][bv(0x360)]+bv(0x3fb),{'method':bv(0x1c8),'headers':aN,'body':JSON[bv(0x3f2)]({'token':Z,'answers':L[bv(0x1d6)],'interactions':L['interactions']||[],'aiUsage':L['aiUsage']||aO,'bookmarks':L[bv(0x277)]||[]}),'signal':AbortSignal[bv(0x186)](0x5145+-0x7005+-0xc*-0x772)});if(!aQ['ok']){const aR=await aQ[bv(0x26c)]()['catch'](()=>({'message':bv(0x200)}));throw new Error(aR[bv(0x250)]||bv(0x200));}aD=(await aQ[bv(0x26c)]())['data'];}else{const aS=M();if(!aS)return;aD=await aS[bv(0x2d7)](L[bv(0x1cb)]['examId'],L['answers']);}N(-0xad*-0x4+-0x10a+-0x178,bv(0x2a2)),await q(0xa7*0x38+0x18*-0x12f+-0x6f4),N(-0x1125+-0x8*0x409+0x6d*0x75,bv(0x36f)),console['log']();const aE={};aE[bv(0x2a7)]=0x0,aE[bv(0x25c)]=0x0;const aF={'answered':Object[bv(0x464)](L[bv(0x1d6)])[bv(0x1d4)],'total':L[bv(0x1cb)]['questionCount'],'bookmarks':Array['isArray'](L[bv(0x277)])?L['bookmarks'][bv(0x1d4)]:0x31*-0x48+0x1f2f+-0x37b*0x5,'help':R(L),'aiUsage':L[bv(0x44f)]||aE,'interactions':(L[bv(0x1a0)]||[])[bv(0x1d4)],'durationMin':L[bv(0x1cb)][bv(0x36c)]||-0x3bf*0x1+0x759+-0x2*0x1cd,'confirmedAt':L[bv(0x1cb)][bv(0x262)]||L[bv(0x1cb)]['startedAt'],'examId':L[bv(0x1cb)]['examId']};a0a0();const aG=Math['max'](-0x2*-0x17b+-0x79b+0x4a5,Math[bv(0x267)]((Date[bv(0x4a0)]()-new Date(aF[bv(0x262)])['getTime']())/(0x1*-0x1fe1+-0x217f+0x4548*0x1))),aH=Math[bv(0x3e2)](aG/(0x17*-0x17b+-0x22b9+-0x1*-0x4502)),aI=aG%(0x9*0x139+0x12b1+0x346*-0x9);console['log'](),console[bv(0x451)](a0L[bv(0x28a)](bv(0x363))),console['log'](),console['log'](a0L[bv(0x296)][bv(0x4b3)](bv(0x1ac))),console[bv(0x451)](a0L[bv(0x296)][bv(0x4b3)](bv(0x3c8))),console[bv(0x451)](a0L['bold'][bv(0x4b3)](bv(0x482))),console[bv(0x451)](a0L[bv(0x296)][bv(0x4b3)](bv(0x3e6))),console[bv(0x451)](a0L['bold']['white'](bv(0x359))),console[bv(0x451)](a0L['bold'][bv(0x4b3)]('\x20\x20\x20╚═╝\x20╚═════╝\x20╚═════╝\x20╚═╝\x20\x20╚═╝')),console[bv(0x451)]();const aJ=aD[bv(0x1ea)]?a0L['green'][bv(0x296)](bv(0x2dd)):a0L[bv(0x20b)]['bold']('\x20\x20\x20○\x20\x20Submission\x20accepted');console['log'](aJ),console['log'](),console['log'](a0L['white']('\x20\x20\x20Your\x20answers\x20have\x20been\x20recorded\x20and\x20sent\x20to\x20your\x20national')),console[bv(0x451)](a0L['white']('\x20\x20\x20exam\x20center.\x20Final\x20scoring\x20and\x20selection\x20are\x20decided\x20by')),console[bv(0x451)](a0L[bv(0x4b3)](bv(0x213))),console['log'](),console['log'](a0L[bv(0x28a)](bv(0x35f))),console[bv(0x451)](),console['log'](a0L[bv(0x296)][bv(0x4b3)](bv(0x431)));const aK=aF[bv(0x1cf)]-aF[bv(0x2b5)];console[bv(0x451)](bv(0x336)+a0L[bv(0x4b0)](bv(0x24d))+a0L['white'](aF[bv(0x2b5)]+'/'+aF[bv(0x1cf)])+(aK>-0x1*-0x1369+-0x161a+0x2b1?a0L[bv(0x4b0)](bv(0x1b9)+aK+bv(0x29f)):'')),console[bv(0x451)]('\x20\x20\x20\x20'+a0L[bv(0x4b0)](bv(0x3f3))+a0L[bv(0x4b3)](aH+'m\x20'+aI+'s')+a0L['gray'](bv(0x214)+aF[bv(0x41c)]+bv(0x457))),aF[bv(0x277)]>-0x596+0x1ef8+-0x12*0x169&&console[bv(0x451)](bv(0x336)+a0L['gray'](bv(0x379))+a0L[bv(0x20b)]('★\x20'+aF[bv(0x277)])),console['log']();const aL=aD['categoryStats'];if(aL&&Object['keys'](aL)[bv(0x1d4)]>=-0xaf*0x4+-0x47c+0x73a){const aT=Object[bv(0x428)](aL)['filter'](([,aY])=>aY[bv(0x1cf)]>0x1*0x1ceb+-0x192d+-0x3be)['map'](([aY,aZ])=>({'cat':aY,'pct':aZ['correct']/aZ['total']}))[bv(0x436)]((aY,aZ)=>aZ[bv(0x452)]-aY[bv(0x452)]),aU=Math[bv(0x348)](-0x57d+-0x7aa+0xd29,Math[bv(0x326)](aT[bv(0x1d4)]/(-0x164c+-0x50+0x169f))),aV=Math[bv(0x348)](0x1e53+-0x2be+-0x931*0x3,Math['ceil'](aT[bv(0x1d4)]/(0x1bf5+-0x4*0x5a3+-0x1*0x566))),aW=aT[bv(0x318)](0x747+0x10a1*0x1+-0x17e8*0x1,aU)[bv(0x236)](aY=>aY['cat']),aX=aT[bv(0x318)](-aV)[bv(0x236)](aY=>aY[bv(0x1c4)]);aW[bv(0x204)](aY=>aX[bv(0x2f7)](aY))||(console['log'](a0L[bv(0x296)][bv(0x4b3)](bv(0x3ef))),console[bv(0x451)](bv(0x336)+a0L[bv(0x182)](bv(0x364))+a0L[bv(0x4b3)](aW[bv(0x1e6)](',\x20'))),console[bv(0x451)](bv(0x336)+a0L[bv(0x20b)](bv(0x1bc))+a0L[bv(0x4b3)](aX[bv(0x1e6)](',\x20'))),console['log'](a0L['gray']('\x20\x20\x20\x20(relative\x20to\x20other\x20categories\x20—\x20numeric\x20scores\x20go\x20to\x20your\x20exam\x20center)')),console['log']());}console[bv(0x451)](a0L[bv(0x296)]['white'](bv(0x2d1))),console[bv(0x451)](bv(0x336)+a0L['gray']('Help:\x20\x20\x20\x20\x20\x20')+a0L[bv(0x4b3)](aF['help'][bv(0x43a)]+'/'+aF[bv(0x281)][bv(0x1bd)])),console[bv(0x451)](bv(0x336)+a0L[bv(0x4b0)](bv(0x3f0))+a0L[bv(0x4b3)](aF['aiUsage'][bv(0x2a7)]+'\x20AI4CTF')+a0L[bv(0x4b0)](bv(0x1b9))+a0L[bv(0x4b3)](aF[bv(0x44f)][bv(0x25c)]+'\x20CTF4AI')),console['log'](),console[bv(0x451)](a0L[bv(0x28a)](bv(0x35f))),console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x296)][bv(0x4b3)]('\x20\x20What\x20next')),console[bv(0x451)](a0L[bv(0x4b0)](bv(0x474))),console[bv(0x451)](a0L[bv(0x4b0)](bv(0x4a3))+a0L[bv(0x4b3)](bv(0x3c9))+a0L[bv(0x4b0)]('\x20is\x20free,\x20unlimited\x20practice.')),console['log'](a0L[bv(0x4b0)](bv(0x47d))+a0L[bv(0x4b3)](bv(0x295))),console['log']();const {showCToBUpgradePrompt:aM}=await import(bv(0x475));aM(aF[bv(0x360)],aD[bv(0x1ea)]),console[bv(0x451)](a0L[bv(0x20b)](bv(0x48c))),console[bv(0x451)](a0L[bv(0x28a)][bv(0x430)](bv(0x314))),console[bv(0x451)](),console[bv(0x451)](a0L[bv(0x28a)](bv(0x363))),console[bv(0x451)]();}catch(aY){console[bv(0x451)](),a0aa(aY[bv(0x250)]);}}),B[be(0x195)](be(0x3bb))[be(0x459)](be(0x1be))[be(0x1a5)](async F=>{const bw=be;a0a8(bw(0x1c2)+(F||''));const G=M();if(!G)return;if(!F){const J=a0Y();if(!J)return void a0aa('Specify\x20exam\x20ID:\x20exam\x20result\x20<id>');F=J[bw(0x1cb)][bw(0x360)];}const H=a0ag(bw(0x217));H[bw(0x2e0)]();try{const K=await G['getResult'](F);H[bw(0x361)](bw(0x230)),console[bw(0x451)](),a0ae(K['examName']),a0af('Score',a0L[bw(0x296)](K['score']+'/'+K[bw(0x1cf)])),a0af(bw(0x3a8),a0L[bw(0x296)](K[bw(0x21a)]+'%')),a0af(bw(0x46e),K['passed']?a0L[bw(0x182)][bw(0x296)](bw(0x229)):a0L[bw(0x34a)]['bold'](bw(0x4a6))),a0af(bw(0x3d0),K[bw(0x36d)]),console[bw(0x451)]();}catch(L){H['fail'](bw(0x27d)),a0aa(L[bw(0x250)]);}}),B['command'](be(0x386))[be(0x459)](be(0x301))[be(0x1a5)](async J=>{const bx=be;a0a8(bx(0x396)+J);const {getRealExamState:K,saveExamState:L,clearExamState:Q}=await import(bx(0x384)),V=K();if(V){const a2=V[bx(0x1cb)][bx(0x2a5)],a3=a0a1(),a4=!!a2&&a2[bx(0x45b)]()[bx(0x398)]()!==J['trim']()[bx(0x398)](),a5=!!a3&&a3[bx(0x1dd)]()+(0x158d55*-0x2+0xb*-0x2d726+0x65d08c)<Date[bx(0x4a0)]();if(a4&&a5)return Q(),console['log'](),console[bx(0x451)](a0L['gray'](bx(0x24f))),console[bx(0x451)](),console[bx(0x451)](a0L[bx(0x4b3)]('\x20\x20Please\x20re-type:\x20')+a0L[bx(0x296)][bx(0x28a)](bx(0x3f4)+J)),void console[bx(0x451)]();if(!a2&&J)return V[bx(0x1cb)][bx(0x2a5)]=J[bx(0x45b)](),L(V),console[bx(0x451)](),console[bx(0x451)](a0L[bx(0x182)]('\x20\x20✓\x20Token\x20re-attached\x20to\x20your\x20in-progress\x20exam.')),console[bx(0x451)](a0L[bx(0x4b0)](bx(0x284))+a0L['white'](bx(0x272))+a0L[bx(0x4b0)](bx(0x20c))+a0L['white'](bx(0x20f))),console[bx(0x451)](),console[bx(0x451)](a0L[bx(0x296)]['white'](bx(0x39d))),console[bx(0x451)](a0L['gray'](bx(0x2a3))+a0L[bx(0x296)][bx(0x28a)](bx(0x489))+a0L['gray'](bx(0x48d))),console[bx(0x451)](a0L[bx(0x4b0)]('\x20\x20\x20\x20→\x20')+a0L['bold'][bx(0x28a)]('exam\x20review')+a0L['gray'](bx(0x412))),void console[bx(0x451)]();const a6=Object[bx(0x464)](V[bx(0x1d6)])[bx(0x1d4)],a7=V[bx(0x1cb)]['questionCount'],a8=a0a1(),a9=a8?Math['max'](0xa*-0x37+0x1e1c+0x1*-0x1bf6,Math[bx(0x267)]((a8[bx(0x1dd)]()-Date[bx(0x4a0)]())/(0x1b9d7+0x850e+0x1e7*-0xb3))):null;return console[bx(0x451)](),console[bx(0x451)](a0L['yellow'](bx(0x424))),console['log'](),console['log'](a0L['gray'](bx(0x465))+a0L[bx(0x4b3)](V[bx(0x1cb)][bx(0x367)])),a2&&console[bx(0x451)](a0L['gray'](bx(0x2d4))+a0L['white'](a2)+(a2===J?a0L['green'](bx(0x288)):a0L['yellow'](bx(0x376)))),console[bx(0x451)](a0L['gray'](bx(0x18f))+a0L[bx(0x4b3)](a6+'/'+a7)),null!==a9&&console[bx(0x451)](a0L[bx(0x4b0)]('\x20\x20Time:\x20\x20\x20\x20')+a0L['white'](a9+bx(0x413))),console[bx(0x451)](),console[bx(0x451)](a0L[bx(0x296)][bx(0x4b3)](bx(0x3b8))),console[bx(0x451)](a0L['gray'](bx(0x2a3))+a0L['bold'][bx(0x28a)](bx(0x489))+a0L[bx(0x4b0)](bx(0x48d))),console[bx(0x451)](a0L[bx(0x4b0)]('\x20\x20\x20\x20→\x20')+a0L[bx(0x296)][bx(0x28a)](bx(0x22a))+a0L[bx(0x4b0)](bx(0x412))),console[bx(0x451)](a0L[bx(0x4b0)](bx(0x2a3))+a0L[bx(0x296)][bx(0x28a)](bx(0x20f))+a0L[bx(0x4b0)](bx(0x395))),a2&&a2!==J&&(console[bx(0x451)](),console[bx(0x451)](a0L[bx(0x20b)]('\x20\x20Note:\x20you\x20typed\x20a\x20different\x20token.\x20Each\x20exam\x20token\x20is\x20bound\x20to')),console[bx(0x451)](a0L[bx(0x20b)](bx(0x429))),console[bx(0x451)](),console[bx(0x451)](a0L[bx(0x4b0)](bx(0x333))),console[bx(0x451)](a0L[bx(0x4b0)]('\x20\x20run\x20')+a0L[bx(0x296)]['cyan'](bx(0x37d))+a0L[bx(0x4b0)](bx(0x380)))),void console[bx(0x451)]();}const {isNativeWindowsCmd:W}=await import(bx(0x40b));if(!W()&&!a0am()){let aa=!(-0xd6+-0x7*-0xa2+-0x397);try{const ab={};ab[bx(0x268)]=bx(0x48e);const ac=a0W()[bx(0x49c)]||bx(0x191),ad=await fetch(ac+'/api/icoa/exam-token',{'method':'POST','headers':ab,'body':JSON[bx(0x3f2)]({'token':J[bx(0x45b)](),'deviceHash':a0aj(),'peek':!(-0xb15+0xa6c+0xa9)}),'signal':AbortSignal['timeout'](0x1c5a+0x7d*0x3d+0x1*-0x269b)});if(ad['ok']){const ae=await ad[bx(0x26c)]();(ae?.['data']?.['exam_id']||'')['endsWith']('-c')&&(aa=!(0x1*-0x1619+0xc88+-0x4f*-0x1f));}}catch{}if(!aa)return console[bx(0x451)](),a0ab(bx(0x329)),console[bx(0x451)](a0L[bx(0x4b0)]('\x20\x20→\x20')+a0L[bx(0x296)][bx(0x28a)](bx(0x48f))),console['log'](a0L[bx(0x4b0)](bx(0x3d6))+a0L['bold'][bx(0x28a)](bx(0x19e))+a0L[bx(0x4b0)](bx(0x242))),console[bx(0x451)](a0L['gray'](bx(0x2b3))),void console[bx(0x451)]();}const X={};X['UA']='uk',X['PE']='es',X['CN']='zh',X['AU']='en',X['JP']='ja',X['KR']='ko',X['BR']='pt',X['SA']='ar',X['FR']='fr',X['DE']='de',X['IN']='hi',X['ID']='id',X['TH']='th',X['VN']='vi',X['TR']='tr',X['RU']='ru',X['EG']='ar',X['HT']='ht',X['PH']='en',X['MY']='en',X['MM']='en',X['SG']='en',X['ZA']='en',X['KE']='sw',X['TZ']='sw',X['MO']='zh',X['UZ']='uz',X['GH']='en',X['LA']='lo',X['BD']='bn',X['BI']='fr',X['US']='en',X['UK']='en',X['NZ']='en',X['LK']='si';const Y=X[J['trim']()['substring'](-0xfdf+0x1a99+-0xaba,-0x4eb*0x3+-0x696+0x445*0x5)[bx(0x398)]()],Z=a0W(),a0=Z[bx(0x49c)]||bx(0x191),a1=Y||Z[bx(0x4b2)]||'en';Y&&Y!==(Z[bx(0x4b2)]||'en')&&a0X({'language':Y}),console[bx(0x451)](),N(-0x55*0x2f+-0x6f0+0x168b,bx(0x18c));try{const af={};af[bx(0x268)]=bx(0x48e);const ag=await fetch(a0+bx(0x2e7),{'method':bx(0x1c8),'headers':af,'body':JSON['stringify']({'token':J['trim'](),'deviceHash':a0aj(),'lang':a1}),'signal':AbortSignal[bx(0x186)](-0x6*-0x7d3+-0x1e4d+0x779*0x3)});if(!ag['ok']){N(0x659+-0x13e+0x1*-0x51b,''),console['log']();const ao=await ag[bx(0x26c)]()[bx(0x39a)](()=>({'message':bx(0x216)}));return a0aa(ao[bx(0x250)]||bx(0x344)),void a0ac(bx(0x1db));}N(-0x1bd4+0xf5f+0xc93,bx(0x2a8));const ah=await ag[bx(0x26c)](),{session:ai,questions:aj,languages:ak}=ah[bx(0x227)];N(-0x10a5*-0x1+-0xa39+-0x630,'Preparing...'),await q(0xd79+-0xc78+-0x39),N(-0xbe7+-0xf2a+0x1b75,bx(0x481)),console[bx(0x451)](),console[bx(0x451)](),a0ae(ai[bx(0x367)]),console[bx(0x451)](),a0af(bx(0x2af),ai[bx(0x29e)]+'\x20(30\x20MCQ\x20+\x2010\x20practical)'),a0af(bx(0x3a9),ai['durationMinutes']+bx(0x4b9)),a0af(bx(0x369),(ai[bx(0x440)]||0x17d7+0x228c+0x1*-0x39cd)+bx(0x2f6)),a0af(bx(0x276),(ai[bx(0x27b)]||-0x1*0x23f9+0x26e7+-0x2a3)+bx(0x3d1)),console[bx(0x451)](),console[bx(0x451)](a0L[bx(0x4b3)]('\x20\x20Assistance:')),console['log'](a0L[bx(0x4b3)](bx(0x2ab))),console[bx(0x451)](a0L[bx(0x4b3)](bx(0x1df))),console['log'](a0L[bx(0x4b3)](bx(0x354))),ak&&ak[bx(0x1d4)]>-0x6*-0x539+-0x1697*0x1+0x175*-0x6&&console[bx(0x451)](a0L['white'](bx(0x3df)+ak[bx(0x1e6)](',\x20')+bx(0x356))),console['log'](),console['log'](a0L[bx(0x20b)](bx(0x3d3))),console[bx(0x451)](a0L[bx(0x4b3)]('\x20\x20\x20\x20•\x20All\x20interactions\x20are\x20recorded\x20for\x20audit')),console[bx(0x451)](a0L[bx(0x4b3)](bx(0x3fc))),console[bx(0x451)](a0L[bx(0x4b3)](bx(0x1fe))),console[bx(0x451)](),await new Promise(ap=>{const by=bx;process['stdout'][by(0x422)](a0L[by(0x296)][by(0x20b)](by(0x38c)));const aq=!!process[by(0x1a8)]['isTTY']&&process[by(0x1a8)][by(0x383)];process[by(0x1a8)][by(0x461)]&&process[by(0x1a8)][by(0x1fa)]&&process['stdin'][by(0x1fa)](!(0x3fe+-0x1604+0x1207));const ar=as=>{const bz=by,at=as['toString']();(at[bz(0x2f7)]('\x0a')||at['includes']('\x0d'))&&(process[bz(0x1a8)][bz(0x42b)](bz(0x227),ar),process[bz(0x1a8)][bz(0x461)]&&process['stdin'][bz(0x1fa)]&&process[bz(0x1a8)][bz(0x1fa)](aq),process[bz(0x325)][bz(0x422)]('\x0a'),ap());};process[by(0x1a8)]['on'](by(0x227),ar),process['stdin'][by(0x183)]();});const al=new Date()[bx(0x21e)]();ai[bx(0x262)]=al,ai[bx(0x2a5)]=J[bx(0x45b)]();try{const ap=Date[bx(0x4a0)](),aq=await fetch(a0+bx(0x375),{'method':'GET','signal':AbortSignal[bx(0x186)](-0x4f*0x1+-0x86*0x17+0x1811)});if(aq['ok']){const ar=await aq['json'](),as=ar?.[bx(0x227)]?.[bx(0x1a3)];if(bx(0x47c)==typeof as&&as>-0x1*-0x959+0x2397*-0x1+0x1a3e){const at=(ap+Date[bx(0x4a0)]())/(0x17*0x166+-0x1a66*0x1+-0x5c2);ai['clockOffsetMs']=Math[bx(0x267)](as-at),ai[bx(0x456)]=as+(0x15d9+0x13c4+-0x9*0x499)*ai[bx(0x36c)]*(-0x1c61+0x2375+-0x32c);}}}catch{}const am={};am[bx(0x2a7)]=0x0,am['ctf4ai']=0x0;const an={};an[bx(0x1cb)]=ai,an['questions']=aj,an['answers']={},an[bx(0x1a0)]=[],an['aiUsage']=am,(a0Z(an),console[bx(0x451)](),a0a9(bx(0x2d6)),a0af(bx(0x40e),ai[bx(0x36c)]+bx(0x444)),aj[bx(0x1d4)]>-0xae4+0x101*-0x7+-0x1*-0x11eb&&U(aj[-0x1749+0x5*0x288+0xaa1]));}catch(au){console[bx(0x451)](),bx(0x1ed)===au[bx(0x2ff)]?a0aa(bx(0x4c1)):a0aa(au[bx(0x250)]||bx(0x2bd));}}),B[be(0x195)](be(0x18e),{'hidden':!(-0x1*-0x2591+-0x87e+-0x1d13)})[be(0x459)](be(0x275))[be(0x1a5)](async()=>{const bA=be;a0a8(bA(0x37d));const {getRealExamState:F,clearExamState:G}=await import('../lib/exam-state.js'),H=F();if(!H)return console['log'](),console[bA(0x451)](a0L[bA(0x4b0)]('\x20\x20No\x20active\x20exam\x20session\x20to\x20reset.')),void console[bA(0x451)]();const J=H[bA(0x1cb)][bA(0x2a5)];console[bA(0x451)](),console['log'](a0L[bA(0x20b)]('\x20\x20⚠\x20\x20Reset\x20will\x20abandon\x20your\x20current\x20exam\x20session\x20on\x20this\x20device.')),console['log'](a0L[bA(0x4b0)](bA(0x2cc))+a0L['white'](H[bA(0x1cb)][bA(0x367)])),J&&console[bA(0x451)](a0L[bA(0x4b0)](bA(0x2b8))+a0L[bA(0x4b3)](J)),console['log'](a0L[bA(0x4b0)](bA(0x1c5))),console['log'](a0L[bA(0x4b0)](bA(0x372))),console[bA(0x451)](),console[bA(0x451)](a0L['gray'](bA(0x25a))+a0L[bA(0x296)]['cyan'](bA(0x18e))+a0L[bA(0x4b0)](bA(0x1b3)));const {getMainRl:K}=await import('../lib/main-rl.js'),L=K();if(bA(0x18e)!==(await new Promise(Q=>{const bB=bA;if(L){const V=L[bB(0x1ab)]('line')[bB(0x318)]();L[bB(0x46c)](bB(0x487)),L[bB(0x4b4)](bB(0x2e4)),L[bB(0x469)](),L[bB(0x4c2)](bB(0x487),W=>{const bC=bB;for(const X of V)L['on'](bC(0x487),X);Q(W[bC(0x45b)]());});}else((async()=>{const bD=bB,W={};W[bD(0x2da)]=process[bD(0x1a8)],W[bD(0x496)]=process[bD(0x325)];const {createInterface:X}=await import(bD(0x2aa)),Y=X(W);Y[bD(0x366)](bD(0x2e4),Z=>{const bE=bD;Y[bE(0x23d)](),Q(Z[bE(0x45b)]());});})());}))[bA(0x210)]())return console[bA(0x451)](a0L[bA(0x4b0)]('\x20\x20Cancelled.')),void console[bA(0x451)]();G(),console[bA(0x451)](),console['log'](a0L['green'](bA(0x497))),console['log'](a0L[bA(0x4b0)](bA(0x1d3))+a0L[bA(0x296)]['cyan'](bA(0x350))),console[bA(0x451)]();}),B[be(0x195)](be(0x3c9))[be(0x459)](be(0x3a7))['action'](async()=>{const bF=be;a0a8('exam\x20demo'),E(bF(0x35b));const {pickDemoQuestions:F,getLocalizedDemoSession:G,DEMO_PICK_SIZE:H,DEMO_POOL_SIZE:J}=await import(bF(0x358));a0W()[bF(0x3c0)]||(await(async function(){const bG=bF;let a0=!(0x157*-0x13+-0x1fb2+-0x3b*-0xf8);const a1=process[bG(0x1a8)],a2=()=>{a0=!(-0x4a7+-0x1*-0x2162+0x5bf*-0x5);},a3=a1['isTTY']&&bG(0x476)==typeof a1[bG(0x1fa)];a3&&(a1[bG(0x1fa)](!(-0x1af6+-0x268*-0x7+-0x23*-0x4a)),a1[bG(0x183)](),a1[bG(0x4c2)](bG(0x227),a2));const a4=async a5=>{let a6=-0x17e9*0x1+0x2*-0x1b3+0x1b4f;for(;a6<a5&&!a0;)await q(0x233b+0x2*-0x3b9+-0x1b79),a6+=-0x234c+-0x5d8+0x2974;};try{if(console[bG(0x378)](),console['log'](),console[bG(0x451)](a0L['gray'](bG(0x1ca))+a0L[bG(0x3bd)](bG(0x3cc))),console[bG(0x451)](),console[bG(0x451)](a0L[bG(0x296)][bG(0x4b3)](bG(0x1ac))),console[bG(0x451)](a0L[bG(0x296)][bG(0x4b3)](bG(0x3c8))),console[bG(0x451)](a0L[bG(0x296)]['white'](bG(0x482))),console[bG(0x451)](a0L[bG(0x296)][bG(0x4b3)](bG(0x3e6))),console['log'](a0L['bold'][bG(0x4b3)](bG(0x359))),console[bG(0x451)](a0L['bold']['white']('\x20\x20\x20╚═╝\x20╚═════╝\x20╚═════╝\x20╚═╝\x20\x20╚═╝')),console['log'](),console['log'](a0L[bG(0x296)][bG(0x20b)](bG(0x233))),console['log'](a0L['gray'](bG(0x4a2))),await a4(0xe2f+-0x1*0x149d+0x1032),a0)return;if(console[bG(0x451)](),console['log'](a0L[bG(0x4b3)](bG(0x4be))),console[bG(0x451)](),await a4(-0x1720+0xdc0+-0xc8*-0xf),a0)return;if(console[bG(0x451)](a0L[bG(0x28a)](bG(0x48b))+a0L['white'](bG(0x1f5))+a0L[bG(0x4b0)](bG(0x40f))),await a4(0x143a+0x144f+-0x25cd),a0)return;if(console[bG(0x451)](a0L[bG(0x182)]('\x20\x20\x20\x20\x20▣\x20')+a0L['white'](bG(0x3dd))+a0L[bG(0x4b0)]('\x20\x20\x20\x20(ai4ctf)')),await a4(0xac*0x2c+0x1c5b+-0x372f),a0)return;if(console[bG(0x451)](a0L[bG(0x34a)](bG(0x48b))+a0L['white'](bG(0x4a8))+a0L[bG(0x4b0)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20(ctf4ai)')),await a4(0x1d*-0x147+0x6b*-0x37+-0x14c*-0x31),a0)return;if(console[bG(0x451)](),console['log'](a0L[bG(0x296)]['white'](bG(0x388))+a0L['bold'][bG(0x20b)]('IS')+a0L[bG(0x296)][bG(0x4b3)](bG(0x211))),console[bG(0x451)](),await a4(-0x206e+-0x8c4+-0x13d*-0x26),a0)return;if(console[bG(0x451)](a0L['gray'](bG(0x187))),await a4(-0x2*-0xc58+-0x49d+-0x1283),a0)return;if(console[bG(0x451)](a0L[bG(0x4b0)](bG(0x24a))),await a4(0x1232*0x1+0x13b1+-0x2453),a0)return;if(console[bG(0x451)](a0L['gray']('\x20\x20\x20·\x2015,000+\x20concurrent\x20participants')),await a4(0xe08*-0x2+0x3a9*-0x2+-0x1341*-0x2),a0)return;console[bG(0x451)](),console[bG(0x451)](a0L['bold']['cyan'](bG(0x29c))),await a4(-0x168+-0x1c5b+-0x9*-0x50b);}finally{((()=>{const bH=bG;if(a3){a1['removeListener'](bH(0x227),a2);try{a1[bH(0x1fa)](!(-0x3f*-0x33+-0x52*-0x76+-0x48*0xb3));}catch{}a1[bH(0x36b)]();}})()),console[bG(0x378)]();}}()),a0X({'demoIntroSeen':!(-0x1*-0x961+-0xe3a*0x1+-0x4d9*-0x1)})),console[bF(0x451)](),console['log'](a0L[bF(0x4b3)](bF(0x39b))+a0L['gray'](H+bF(0x31e)+J+bF(0x1b1))),console['log'](a0L['gray']('\x20\x20You\x20can\x20pause\x20with\x20')+a0L[bF(0x28a)](bF(0x32c))+a0L[bF(0x4b0)](bF(0x194))+a0L[bF(0x28a)]('back')+a0L[bF(0x4b0)](bF(0x2bb))),await new Promise(a0=>{const bI=bF;process['stdout'][bI(0x422)](a0L[bI(0x296)][bI(0x20b)](bI(0x3ac)));const a1=!!process[bI(0x1a8)][bI(0x461)]&&process[bI(0x1a8)][bI(0x383)];process[bI(0x1a8)][bI(0x461)]&&process[bI(0x1a8)][bI(0x1fa)]&&process[bI(0x1a8)][bI(0x1fa)](!(-0x1a*0xbf+-0x6f0*0x2+0x2147*0x1));const a2=a3=>{const bJ=bI,a4=a3[bJ(0x2e3)]();(a4[bJ(0x2f7)]('\x0a')||a4[bJ(0x2f7)]('\x0d'))&&(process['stdin'][bJ(0x42b)](bJ(0x227),a2),process['stdin'][bJ(0x461)]&&process[bJ(0x1a8)]['setRawMode']&&process[bJ(0x1a8)][bJ(0x1fa)](a1),process[bJ(0x325)][bJ(0x422)]('\x0a'),a0());};process[bI(0x1a8)]['on'](bI(0x227),a2),process[bI(0x1a8)][bI(0x183)]();});const K=F(H),L=G(),{getDemoState:Q,clearExamState:V}=await import(bF(0x384));Q()&&V(bF(0x1c6)),console[bF(0x451)](),a0ae('ICOA\x20Demo\x20Exam\x20—\x20Free\x20Practice'),console[bF(0x451)](),console[bF(0x451)](a0L[bF(0x4b3)](bF(0x411))),console[bF(0x451)](a0L[bF(0x4b3)]('\x20\x20'+H+bF(0x1f8)+J+bF(0x340)));const W=a0a3();if(W[bF(0x408)]>0x30*-0xcf+-0xcd5+0x33a5){const a0=W['bestPercentage'],a1=a0>=-0x1*-0x15de+0x224d+-0x37db?a0L[bF(0x182)]:a0>=0x167*-0x6+-0x1394+-0x1c3a*-0x1?a0L[bF(0x20b)]:a0L[bF(0x4b3)];console[bF(0x451)](),console[bF(0x451)](a0L[bF(0x4b0)](bF(0x1c9))+a1(W['best']+'/'+H+'\x20('+a0+'%)')+a0L['gray']('\x20\x20·\x20\x20'+W[bF(0x408)]+bF(0x2fa)));}console[bF(0x451)](),console[bF(0x451)](a0L[bF(0x4b0)]('\x20\x20─────────────────────────────────────────')),console['log'](a0L[bF(0x4b3)]('\x20\x20'+a0ai(bF(0x2d8)))),console[bF(0x451)](a0L[bF(0x20b)]('\x20\x20\x20\x20A/B/C/D')+a0L[bF(0x4b0)](bF(0x47b)+a0ai(bF(0x21d)))),console[bF(0x451)](a0L[bF(0x20b)](bF(0x2ec))+a0L[bF(0x4b0)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bF(0x33f)))),console[bF(0x451)](a0L[bF(0x20b)](bF(0x414))+a0L[bF(0x4b0)](bF(0x44b))+a0L[bF(0x20b)](bF(0x2fd))+a0L[bF(0x4b0)](bF(0x336)+a0ai(bF(0x22b)))),console[bF(0x451)](a0L[bF(0x20b)](bF(0x4bb))+a0L[bF(0x4b0)]('\x20\x20\x20\x20\x20'+a0ai(bF(0x297)))),console[bF(0x451)](a0L['yellow'](bF(0x278))+a0L[bF(0x4b0)](bF(0x43b)+a0ai(bF(0x4aa)))),console[bF(0x451)](a0L[bF(0x20b)](bF(0x390))+a0L[bF(0x4b0)]('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+a0ai(bF(0x471)))),console[bF(0x451)](a0L['gray'](bF(0x313))),console['log'](a0L['gray']('\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ru\x20·\x20hi\x20·\x20de\x20·\x20id\x20·\x20th\x20·\x20vi\x20·\x20tr')),console[bF(0x451)](a0L['gray']('\x20\x20─────────────────────────────────────────')),console['log']();const {getConfig:X}=await import(bF(0x27c)),Y=X()[bF(0x4b2)]||'en';'en'===Y?(console[bF(0x451)](a0L[bF(0x4b0)](bF(0x3cb))),console['log'](a0L[bF(0x4b0)]('\x20\x20lang\x20es\x20(Español)\x20·\x20lang\x20zh\x20(中文)\x20·\x20lang\x20ko\x20(한국어)\x20·\x20lang\x20ja\x20(日本語)')),console['log'](a0L[bF(0x4b0)]('\x20\x20lang\x20fr\x20·\x20lang\x20ar\x20·\x20lang\x20pt\x20·\x2015\x20languages\x20supported'))):console[bF(0x451)](a0L[bF(0x182)](bF(0x40c)+Y)),console[bF(0x451)](),console[bF(0x451)](a0L['white'](bF(0x309)));const Z={...L,'startedAt':new Date()[bF(0x21e)]()};console['log'](),N(-0xb*-0x6+0x1cc8*0x1+-0xe*0x213,bF(0x2ba)),await q(-0x1*-0xfc4+-0x413*-0x1+-0x130f),N(-0x5e*-0x4f+-0x4d6*-0x1+-0x268*0xe,bF(0x249)),await q(0x8d*-0x17+-0x133*0x9+0x1d*0xd6),N(-0x11ad*0x1+-0x1281+-0x207*-0x12,'Almost\x20ready...'),await q(0x538+0x220c+-0x26ae),N(0x1e3c+0x1b04+-0x38dc,bF(0x481)),console[bF(0x451)](),console[bF(0x451)](),a0Z({'session':Z,'questions':K,'answers':{},'_helpMax':0x5}),a0af('Questions',String(H)),a0af(bF(0x3a9),bF(0x26b)),U(K[-0xdf3*-0x1+-0x1bca+0xdd7]);}),B[be(0x195)](be(0x271))[be(0x459)](be(0x259))['action'](async()=>{const bK=be;a0a8('exam\x20demo-retry'),E(bK(0x2ca));const {getLocalizedDemoSession:F}=await import(bK(0x358)),G=a0a6();if(!G||0x1*-0x1e2f+-0x3*0x8f9+-0x391a*-0x1===G[bK(0x1d4)])return console[bK(0x451)](),console[bK(0x451)](a0L[bK(0x20b)](bK(0x41d))+a0L[bK(0x296)][bK(0x28a)](bK(0x3c9))+a0L[bK(0x20b)](bK(0x29d))),void console[bK(0x451)]();const H=a0Y();if(H){if(bK(0x1c6)!==H[bK(0x1cb)][bK(0x360)])return a0ab(bK(0x38d)+H[bK(0x1cb)][bK(0x367)]+bK(0x1da)),void a0ac('Submit\x20it\x20first:\x20exam\x20submit');a0a0();}const J=V=>{const bL=bK;if(!V[bL(0x260)])return V;const W=V['options'][V[bL(0x260)]],X=['A','B','C','D'][bL(0x236)](a2=>V[bL(0x355)][a2]);for(let a2=X[bL(0x1d4)]-(-0x65d*0x1+-0x4f*0x1a+0xe64);a2>0x1*0x1c8b+-0x2*0xdbe+-0x10f;a2--){const a3=Math[bL(0x3e2)](Math[bL(0x40a)]()*(a2+(-0x2cf*0x4+-0xfe*-0x10+-0x1*0x4a3)));[X[a2],X[a3]]=[X[a3],X[a2]];}const Y={};Y['A']=X[-0x692*-0x2+-0x15*-0xe6+0x1*-0x2002],Y['B']=X[-0x1*0x7c2+0x7*-0x593+-0x1*-0x2ec8],Y['C']=X[-0x866+0x15b7+-0xd4f],Y['D']=X[0x3*0xf1+-0xb*-0x85+0x1*-0x887];const Z=Y,a0=['A','B','C','D'][bL(0x1a1)](a4=>Z[a4]===W),a1={...V};return a1[bL(0x355)]=Z,a1[bL(0x260)]=a0,a1;},K=G['map']((V,W)=>({...J(V),'number':W+(0x313*-0x2+0x23d1+-0x1daa*0x1)})),L=F(),Q={...L,'examName':L[bK(0x367)]+bK(0x30a),'questionCount':K[bK(0x1d4)],'startedAt':new Date()[bK(0x21e)]()};console[bK(0x451)](),a0ae(bK(0x3f1)),console[bK(0x451)](),console[bK(0x451)](a0L[bK(0x4b3)]('\x20\x20Practicing\x20'+K[bK(0x1d4)]+'\x20question'+(0x849*-0x1+-0xcbb+-0x1505*-0x1===K[bK(0x1d4)]?'':'s')+'\x20you\x20got\x20wrong.')),console[bK(0x451)](a0L[bK(0x4b0)]('\x20\x20Options\x20have\x20been\x20reshuffled.')),console[bK(0x451)](),a0Z({'session':Q,'questions':K,'answers':{}}),a0af('Questions',String(K[bK(0x1d4)])),a0af(bK(0x3a9),bK(0x26b)),U(K[-0x2645+0xf3b+-0x6*-0x3d7]);}),B[be(0x195)](be(0x208))[be(0x459)](be(0x432))[be(0x1a5)](async()=>{const bM=be;if(a0a8(bM(0x48f)),0x471*0x7+-0x1*0x21b2+-0x1d*-0x17===a0a3()[bM(0x408)])return console[bM(0x451)](),a0ab('Complete\x20the\x20demo\x20first\x20before\x20setting\x20up.'),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x377))+a0L[bM(0x296)][bM(0x28a)](bM(0x307))),void console[bM(0x451)]();const K=a0ak();if(K){const a4=K[bM(0x1e5)]['length'],a5=a4+K[bM(0x1c0)][bM(0x1d4)];if(a4>=-0x23ab+0x8*0x204+0x1393||(a5>0x1*-0x79d+-0x1*-0x1267+0x1*-0xaca?a4/a5:0x1*-0x2221+-0x12c1+-0x3c7*-0xe)>=0x46*0x13+0x1e10+-0x2342+0.7)return console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x182)](bM(0x1d7))+a0L[bM(0x182)](bM(0x38f))),console['log'](a0L[bM(0x4b0)](bM(0x41a)+K[bM(0x446)][bM(0x381)]('T')[0x2*-0x79d+0x1cff*0x1+-0xdc5])),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x2a1)+K[bM(0x441)])),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x1bb)+a4+'\x20installed')),K[bM(0x1c0)][bM(0x1d4)]>0xdeb+-0x1631+0x846&&console[bM(0x451)](a0L[bM(0x20b)](bM(0x37a)+K[bM(0x1c0)][bM(0x1e6)](',\x20'))),console['log'](),console['log'](a0L['white'](bM(0x289))+a0L[bM(0x296)][bM(0x28a)]('exam\x20<token>')),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x3d6))+a0L[bM(0x296)]['cyan'](bM(0x19e))+a0L[bM(0x4b0)](bM(0x242))),void console[bM(0x451)]();console[bM(0x451)](),console['log'](a0L[bM(0x20b)](bM(0x47f)+a4+'/'+a5+bM(0x37f))),console['log']();}console['log'](),a0ae(bM(0x266)),console[bM(0x451)](),console['log'](a0L['white']('\x20\x20Installing\x20Python\x20packages\x20for\x20practical\x20questions.')),console[bM(0x451)](a0L[bM(0x4b0)]('\x20\x20Expected:\x201-2\x20minutes\x20·\x20~150MB\x20disk')),console['log']();const L=(a6,a7)=>{const bN=bM,a8=process[bN(0x483)];console[bN(0x451)](),a0aa(bN(0x224)===a6?bN(0x1ff):bN(0x4b8)+a7+bN(0x3c4)),console['log'](),console[bN(0x451)](a0L[bN(0x296)]['white'](bN(0x243))),console['log'](),bN(0x21f)===a8?(console[bN(0x451)](a0L['yellow'](bN(0x473))),console[bN(0x451)](a0L['green']('\x20\x20\x20\x20brew\x20install\x20python@3.12')),console[bN(0x451)](),console[bN(0x451)](a0L[bN(0x4b0)](bN(0x3ee))),console['log'](a0L[bN(0x4b0)](bN(0x1ad)))):bN(0x1f3)===a8?(console[bN(0x451)](a0L[bN(0x20b)]('\x20\x20Ubuntu\x20/\x20Debian\x20(deadsnakes\x20PPA):')),console[bN(0x451)](a0L[bN(0x182)](bN(0x334))),console['log'](a0L[bN(0x182)]('\x20\x20\x20\x20sudo\x20apt\x20update')),console[bN(0x451)](a0L['green']('\x20\x20\x20\x20sudo\x20apt\x20install\x20-y\x20python3.12\x20python3.12-venv\x20python3.12-distutils')),console['log'](a0L[bN(0x4b0)](bN(0x1b7))),console[bN(0x451)](),console[bN(0x451)](a0L[bN(0x20b)](bN(0x400))),console[bN(0x451)](a0L['green'](bN(0x403))),console[bN(0x451)](),console['log'](a0L[bN(0x20b)](bN(0x4ba))),console[bN(0x451)](a0L['green'](bN(0x198)))):bN(0x399)===a8?(console[bN(0x451)](a0L[bN(0x20b)](bN(0x23f))),console[bN(0x451)](a0L['green'](bN(0x46a))),console[bN(0x451)](),console[bN(0x451)](a0L[bN(0x4b0)](bN(0x3ee))),console[bN(0x451)](a0L[bN(0x4b0)](bN(0x19d)))):console[bN(0x451)](a0L[bN(0x4b0)](bN(0x49d))),console[bN(0x451)](),console['log'](a0L[bN(0x4b3)](bN(0x1bf))+a0L[bN(0x296)][bN(0x28a)](bN(0x48f))),console[bN(0x451)]();},Q=bM(0x1cc);let V='';try{const a6={};a6['encoding']=bM(0x49a),a6['timeout']=0x1388,V=a0an(Q+bM(0x209),a6)[bM(0x45b)]()[bM(0x222)](bM(0x4b8),'');const a7=V[bM(0x381)]('.')['map'](Number);if(a7[-0x2*0x10c7+0x1*-0x1872+0x3a00]<-0xd2+-0x6*-0x551+0x1f11*-0x1||-0x6a0+0xfc9+-0x926===a7[-0x1261*-0x2+-0x2c5*0x9+0xe9*-0xd]&&a7[-0x35*0x4+-0xb9*-0x1f+-0x1592]<-0x11*0x5d+0x3ce+-0x1*-0x269)return void L(bM(0x3ab),V);0x3*-0xbbb+0x6ee+0x1c46===a7[0x1ccf+0x3d1+-0x60*0x57]&&a7[-0x68*0x2a+-0x1b43+0x2c54]<-0x9fd+-0x8f5*-0x1+0x114?console['log'](a0L[bM(0x182)](bM(0x290)+V)+a0L[bM(0x4b0)](bM(0x1ee))):console['log'](a0L[bM(0x182)](bM(0x290)+V));}catch{return void L(bM(0x224));}try{const a8={};a8[bM(0x303)]=bM(0x205),a8[bM(0x186)]=0x1388,(a0an(Q+bM(0x3db),a8),console[bM(0x451)](a0L['green'](bM(0x3af))));}catch{console[bM(0x451)](a0L[bM(0x20b)](bM(0x30d)));try{const a9={};a9['stdio']='ignore',a9['timeout']=0x7530,(a0an(Q+'\x20-m\x20ensurepip\x20--upgrade',a9),console[bM(0x451)](a0L[bM(0x182)](bM(0x2e5))));}catch{a0aa('Could\x20not\x20install\x20pip\x20—\x20pip\x20is\x20not\x20installed\x20on\x20your\x20system.'),console[bM(0x451)]();const {isInWSL:aa,isNativeWindowsCmd:ab}=await import('../lib/platform.js'),{execFileSync:ac}=await import(bM(0x495)),ad=aa(),ae=ab(),af='linux'===process['platform']&&!ad,ag=bM(0x21f)===process['platform'];let ah='your\x20Linux\x20distro';if(af||ad)try{const {readFileSync:ak}=await import(bM(0x3bf)),al=ak(bM(0x2c8),'utf-8'),am=(al[bM(0x373)](/^ID="?([^"\n]+)/m)||[])[-0x1baf+-0x7*-0x337+0x52f]||'',an=(al[bM(0x373)](/^VERSION_ID="?([^"\n]+)/m)||[])[-0x252d+0x1e1c+-0x712*-0x1]||'';bM(0x479)===am?ah=bM(0x3ec)+an+(ad?'\x20(WSL2)':''):am&&(ah=''+am+(an?'\x20'+an:'')+(ad?bM(0x3d9):''));}catch{}let ai=!(-0xde3+0xb*-0x1a6+0x2006);if(ag)try{const ao={};ao[bM(0x303)]=bM(0x205),ao[bM(0x186)]=0x7d0,(ac(bM(0x294),[bM(0x3cd)],ao),ai=!(0x1b93+0x59*-0x59+-0x2*-0x1af));}catch{ai=!(0xd9d+-0x1*-0x373+0xb*-0x18d);}const aj=ae?bM(0x332):bM(0x274);return console[bM(0x451)](a0L[bM(0x296)]['yellow'](bM(0x453))),console[bM(0x451)](a0L[bM(0x296)]['yellow']('\x20\x20'+aj)),console[bM(0x451)](a0L[bM(0x296)][bM(0x20b)](bM(0x453))),console[bM(0x451)](),af||ad?(console[bM(0x451)](a0L[bM(0x4b3)](bM(0x3f8))+a0L[bM(0x28a)](ah)),console[bM(0x451)](a0L[bM(0x4b0)]('\x20\x20(Minimal\x20Ubuntu\x20/\x20cloud\x20/\x20WSL2\x20images\x20often\x20ship\x20without\x20pip.)')),console[bM(0x451)](),console['log'](a0L[bM(0x296)][bM(0x4b3)](bM(0x371))),console['log'](),console[bM(0x451)](a0L['white'](bM(0x2df))+a0L[bM(0x296)]['cyan']('quit')+a0L[bM(0x4b3)](bM(0x2f2))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x42e))),console[bM(0x451)](),console['log'](bM(0x47b)+a0L[bM(0x296)][bM(0x28a)](bM(0x4bf))),console['log']('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x296)]['cyan'](bM(0x212))),console['log'](),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x1fd))),console[bM(0x451)](),console[bM(0x451)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x296)][bM(0x28a)](bM(0x44c))),console[bM(0x451)](bM(0x47b)+a0L['gray']('icoa>')+'\x20'+a0L[bM(0x296)][bM(0x28a)]('exam\x20setup'))):ag?(console[bM(0x451)](a0L[bM(0x4b3)](bM(0x3f8))+a0L[bM(0x28a)](bM(0x1c3))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x296)][bM(0x4b3)](bM(0x371))),console['log'](),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x2df))+a0L['bold'][bM(0x28a)](bM(0x3d2))+a0L['white']('\x20to\x20leave\x20icoa')),console[bM(0x451)](),ai?(console[bM(0x451)](a0L[bM(0x4b3)](bM(0x321))),console[bM(0x451)](),console[bM(0x451)](bM(0x47b)+a0L[bM(0x296)][bM(0x28a)]('brew\x20install\x20python@3.12')),console[bM(0x451)](bM(0x47b)+a0L[bM(0x296)][bM(0x28a)]('brew\x20link\x20--overwrite\x20python@3.12'))):(console[bM(0x451)](a0L['white'](bM(0x238))+a0L[bM(0x296)]['yellow'](bM(0x3cd))+a0L[bM(0x4b3)]('):')),console[bM(0x451)](),console[bM(0x451)](bM(0x47b)+a0L[bM(0x296)][bM(0x28a)](bM(0x393))),console['log'](),console[bM(0x451)](a0L['white']('\x20\x20\x20\x20\x20\x20\x20Then\x20install\x20Python:')),console[bM(0x451)](),console['log'](bM(0x47b)+a0L['bold'][bM(0x28a)](bM(0x1b0)))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x2ae))),console['log'](),console['log'](bM(0x47b)+a0L[bM(0x296)][bM(0x28a)](bM(0x44c))),console[bM(0x451)](bM(0x47b)+a0L[bM(0x4b0)](bM(0x445))+'\x20'+a0L[bM(0x296)]['cyan'](bM(0x48f)))):ae?(console[bM(0x451)](a0L[bM(0x4b3)](bM(0x3f8))+a0L[bM(0x28a)](bM(0x29b))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x296)][bM(0x20b)](bM(0x416))),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x27a))),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x30f))),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x2e2))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x296)]['white'](bM(0x269))),console[bM(0x451)](),console[bM(0x451)](a0L['white'](bM(0x2df))+a0L[bM(0x296)]['cyan'](bM(0x3d2))+a0L['white'](bM(0x30b))),console[bM(0x451)](a0L['white'](bM(0x3c1))),console[bM(0x451)](),console[bM(0x451)](bM(0x47b)+a0L[bM(0x296)][bM(0x28a)](bM(0x324))),console[bM(0x451)](),console['log'](a0L[bM(0x4b0)](bM(0x1e4))),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x454))),console[bM(0x451)](),console[bM(0x451)](bM(0x47b)+a0L['bold'][bM(0x28a)](bM(0x339))),console['log'](bM(0x47b)+a0L['bold'][bM(0x28a)](bM(0x34d))),console[bM(0x451)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x296)]['cyan']('sudo\x20npm\x20install\x20-g\x20icoa-cli')),console[bM(0x451)](bM(0x47b)+a0L['bold'][bM(0x28a)](bM(0x44c))),console['log'](),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x46b))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x2df))+a0L[bM(0x296)][bM(0x28a)](bM(0x3d2))+a0L['white'](bM(0x30b))),console['log'](a0L[bM(0x4b3)](bM(0x20a))),console['log'](),console[bM(0x451)](bM(0x47b)+a0L[bM(0x296)][bM(0x28a)](bM(0x37c))),console[bM(0x451)](),console[bM(0x451)](a0L['gray'](bM(0x3e5))),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x4bc))),console[bM(0x451)](a0L['white'](bM(0x3e0))),console[bM(0x451)](),console[bM(0x451)](bM(0x47b)+a0L[bM(0x296)][bM(0x28a)](bM(0x44c))),console[bM(0x451)](bM(0x47b)+a0L[bM(0x4b0)]('icoa>')+'\x20'+a0L['bold'][bM(0x28a)](bM(0x48f)))):(console[bM(0x451)](a0L[bM(0x4b3)](bM(0x410))+a0L['cyan'](process[bM(0x483)])+a0L[bM(0x4b3)](')')),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x382))),console[bM(0x451)](bM(0x47b)+a0L[bM(0x296)][bM(0x28a)]('icoa')),console[bM(0x451)]('\x20\x20\x20\x20\x20\x20\x20'+a0L[bM(0x4b0)](bM(0x445))+'\x20'+a0L['bold'][bM(0x28a)]('exam\x20setup'))),console['log'](),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x188))),void console[bM(0x451)]();}}const W={};W[bM(0x189)]='bs4',W[bM(0x3eb)]=bM(0x193),W[bM(0x34b)]='z3',W['pillow']=bM(0x299),W[bM(0x1dc)]='pwn',W[bM(0x234)]=bM(0x280);const X=[bM(0x1dc),bM(0x192),bM(0x196),bM(0x189),'numpy',bM(0x237),bM(0x490),bM(0x2ee),'z3-solver',bM(0x3eb),bM(0x234),bM(0x1cd),bM(0x357)],Y=W;console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x2b6)+X[bM(0x1d4)]+bM(0x3be))),console['log']();let Z='';try{const ap={};ap[bM(0x21c)]=bM(0x49a),ap[bM(0x186)]=0x2710,a0an(Q+bM(0x3e1),ap);}catch(aq){const ar=String(aq?.[bM(0x325)]||aq?.[bM(0x499)]||aq?.[bM(0x250)]||'');/externally-managed-environment|break-system-packages/i[bM(0x39f)](ar)&&(Z=bM(0x480),console[bM(0x451)](a0L[bM(0x20b)](bM(0x1c1))),console['log']());}const a0=V[bM(0x381)]('.')[bM(0x236)](Number);0x5c*0x8+-0xbf6+0x1*0x919===a0[-0x1780+0x2580+0x1c0*-0x8]&&a0[0x1085+-0x25*-0x17+-0x13d7]>=-0x234d+0x186d+-0x1*-0xaed&&(console['log'](a0L[bM(0x20b)](bM(0x2e6)+V+bM(0x197))),console[bM(0x451)](a0L['gray'](bM(0x184))),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x3f6))),bM(0x1f3)===process['platform']&&(console['log'](a0L['green']('\x20\x20\x20\x20\x20\x20sudo\x20apt\x20install\x20python3.12\x20python3.12-venv')),console[bM(0x451)](a0L[bM(0x182)](bM(0x36e)))),console[bM(0x451)]());const a1=[],a2=[];let a3='';for(const as of X)try{a0an(Q+'\x20-m\x20pip\x20install\x20\x22'+as+'\x22\x20'+Z+'\x20--quiet\x202>&1',{'encoding':bM(0x49a),'timeout':0x2bf20,'stdio':bM(0x45c)}),a0an(Q+bM(0x231)+(Y[as]||as)+'\x22',{'stdio':bM(0x205),'timeout':0x2710});let at='';try{const au=a0an(Q+bM(0x1ef)+as+bM(0x32b),{'encoding':bM(0x49a),'timeout':0x1388})[bM(0x373)](/^Version:\s*(.+)$/m);au&&(at=au[0x1660+0x8db*0x2+-0x2815*0x1]['trim']());}catch{}console['log'](a0L[bM(0x182)](bM(0x1d7)+as)+(at?a0L[bM(0x4b0)]('\x20('+at+')'):'')),a1[bM(0x3ae)](at?as+'=='+at:as);}catch(av){const aw=String(av?.[bM(0x325)]||av?.[bM(0x499)]||av?.['message']||'')[bM(0x318)](-(0x7f8+0xc43+0x51*-0x3b)),ax=aw[bM(0x381)]('\x0a')['filter'](ay=>ay['trim']())['slice'](-(0xed6+-0x75d+-0x777))[bM(0x1e6)]('\x20|\x20')[bM(0x318)](-0xdee*0x2+0x5*0x709+-0x751,-0xa13*-0x2+0x7*-0xb7+-0xead);console['log'](a0L['red']('\x20\x20✗\x20'+as)+a0L[bM(0x4b0)]('\x20\x20'+ax)),a2[bM(0x3ae)]({'pkg':as,'error':ax}),a3||(a3=aw);}-0x1*0xbf6+0x1982*-0x1+0x2578===a1[bM(0x1d4)]&&a3&&(console[bM(0x451)](),console[bM(0x451)](a0L['yellow'](bM(0x305))),console[bM(0x451)](a0L[bM(0x4b0)]('\x20\x20'+a3[bM(0x381)]('\x0a')['slice'](-(-0x112*-0x13+-0x1d*-0xfb+-0x1*0x30bf))[bM(0x1e6)](bM(0x3aa))))),a0al({'completedAt':new Date()['toISOString'](),'pythonVersion':V,'installedPackages':a1,'failedPackages':a2['map'](ay=>ay[bM(0x1f1)])}),console['log'](),0x25e7+-0x26af+0x28*0x5===a2['length']?a0a9(bM(0x1b2)+X[bM(0x1d4)]+bM(0x2c9)):-0x1b05+-0x121c+0x1*0x2d21===a1['length']?(a0aa(bM(0x4a7)+X['length']+bM(0x2c9)),console['log'](),console['log'](a0L[bM(0x20b)](bM(0x3c3))),-0x1c93+0x95+0x1*0x1c01===a0[-0x1*-0x446+-0x8f9*-0x1+-0xd3f]&&a0[0x420+0x1*-0x44b+0x2c]>=-0x22*0x2f+0x46*0x2+0x5bf?(console[bM(0x451)](a0L[bM(0x4b0)]('\x20\x20\x20\x20Python\x203.13\x20is\x20too\x20new\x20—\x20most\x20CTF\x20libraries\x20lack\x20wheels.')),console['log'](a0L['gray'](bM(0x435)))):(console[bM(0x451)](a0L['gray'](bM(0x362))),console[bM(0x451)](a0L['gray'](bM(0x244))+a0L[bM(0x28a)](Q+bM(0x322))+a0L[bM(0x4b0)](bM(0x407))),console['log'](a0L[bM(0x4b0)](bM(0x2c6)))),console['log'](),console['log'](a0L[bM(0x4b3)]('\x20\x20Rerun\x20when\x20fixed:\x20')+a0L[bM(0x296)][bM(0x28a)]('exam\x20setup'))):a0ab(a1[bM(0x1d4)]+'/'+X[bM(0x1d4)]+bM(0x19b)+a2[bM(0x1d4)]+bM(0x302)+a2[bM(0x236)](ay=>ay[bM(0x1f1)])[bM(0x1e6)](',\x20')),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x28a)]('\x20\x20━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━')),console[bM(0x451)](a0L[bM(0x296)][bM(0x4b3)](bM(0x44e))),console['log'](a0L[bM(0x28a)](bM(0x347))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x296)][bM(0x20b)](bM(0x370))+a0L[bM(0x4b0)](bM(0x387))),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x2cb))),console[bM(0x451)](a0L['green'](bM(0x3e9))),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x264))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x296)][bM(0x20b)]('\x20\x20Method\x202:\x20Interactive\x20Python')+a0L[bM(0x4b0)]('\x20(explore\x20&\x20experiment)')),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x406))),console[bM(0x451)](a0L[bM(0x182)](bM(0x4a1))),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x4ad))),console[bM(0x451)](a0L['gray'](bM(0x256))),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x24b))),console[bM(0x451)](a0L[bM(0x4b0)]('\x20\x20\x20\x20>>>\x20print(cipher.decrypt(data))')),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x2b7))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x296)][bM(0x20b)](bM(0x1e3))+a0L[bM(0x4b0)](bM(0x29a))),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x23c))),console[bM(0x451)](a0L[bM(0x182)]('\x20\x20\x20\x20!cat\x20<<\x20\x27EOF\x27\x20>\x20solve.py')),console[bM(0x451)](a0L['gray'](bM(0x27f))),console['log'](a0L['gray'](bM(0x225))),console['log'](a0L[bM(0x4b0)](bM(0x1d9))),console['log'](a0L['gray'](bM(0x466))),console[bM(0x451)](a0L[bM(0x182)](bM(0x463))),console[bM(0x451)](a0L[bM(0x182)](bM(0x492))),console['log'](),console[bM(0x451)](a0L[bM(0x296)]['yellow'](bM(0x306))),console[bM(0x451)](a0L['white'](bM(0x49f))+a0L['bold'][bM(0x28a)](bM(0x3ba))+a0L['white'](bM(0x2ed))),console[bM(0x451)](a0L[bM(0x4b0)](bM(0x486))),console[bM(0x451)](a0L[bM(0x4b0)]('\x20\x20\x20\x20\x22Show\x20me\x20how\x20to\x20use\x20struct.unpack\x22')),console['log'](a0L['gray'](bM(0x223))),console[bM(0x451)](a0L['cyan'](bM(0x347))),console[bM(0x451)](),console[bM(0x451)](a0L[bM(0x4b3)](bM(0x289))+a0L['bold'][bM(0x28a)](bM(0x350))),console['log'](a0L[bM(0x4b0)]('\x20\x20Or\x20type\x20')+a0L[bM(0x296)][bM(0x28a)](bM(0x19e))+a0L[bM(0x4b0)](bM(0x242))),console[bM(0x451)]();}),B[be(0x1a5)](()=>{const bO=be;a0a8(bO(0x442));const F=a0Y();if(F){a0ae(bO(0x35e)+F[bO(0x1cb)][bO(0x367)]),O();const J=Object['keys'](F[bO(0x1d6)])['length'];return a0af(bO(0x47e),J+'/'+F[bO(0x1cb)][bO(0x29e)]+bO(0x34e)),console[bO(0x451)](),void console[bO(0x451)](a0L[bO(0x4b0)](bO(0x28d)));}const G=a0a3(),H=a0ak();console['log'](),a0ae('ICOA\x20National\x20Selection\x20Exam'),console[bO(0x451)](),-0xf41+0x35a+0xbe7===G['attempts']?(console['log'](a0L[bO(0x20b)](bO(0x2ce))+a0L[bO(0x20b)](bO(0x3a3))),console[bO(0x451)](a0L[bO(0x4b0)](bO(0x2a3))+a0L[bO(0x296)][bO(0x28a)](bO(0x307)))):(console[bO(0x451)](a0L[bO(0x182)](bO(0x2f5))+a0L[bO(0x182)](bO(0x239)+G[bO(0x408)]+bO(0x427)+(-0x117e*-0x2+0x15a*-0xd+-0x1169!==G[bO(0x408)]?'s':'')+')')),H?(console[bO(0x451)](a0L[bO(0x182)]('\x20\x20●\x20')+a0L['green'](bO(0x353))),console[bO(0x451)](a0L[bO(0x20b)](bO(0x2ce))+a0L[bO(0x20b)]('Enter\x20exam\x20token\x20to\x20begin')),console[bO(0x451)](a0L[bO(0x4b0)](bO(0x2a3))+a0L[bO(0x296)][bO(0x28a)](bO(0x350)))):(console[bO(0x451)](a0L[bO(0x20b)](bO(0x2ce))+a0L['yellow'](bO(0x2fc))),console[bO(0x451)](a0L[bO(0x4b0)]('\x20\x20\x20\x20→\x20')+a0L['bold'][bO(0x28a)](bO(0x48f))))),console[bO(0x451)]();});}
|
package/dist/repl.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createInterface as o}from"node:readline";import{spawn as e,execSync as t}from"node:child_process";import chalk from"chalk";import{isConnected as l,getConfig as n,saveConfig as s}from"./lib/config.js";import{isActivated as a,activateToken as r,isFreeCommand as i,isDeviceMatch as c,recordExit as g,recordResume as y,isFirstRunOrUpgrade as m,markVersionSeen as d}from"./lib/access.js";import{setReplMode as p}from"./lib/ui.js";import{returnToMainMenu as u,printMenuHint as h,menuHintInline as w}from"./lib/menu-nav.js";import{setMainRl as f}from"./lib/main-rl.js";import{isChatActive as b,handleChatMessage as x}from"./commands/ai4ctf.js";import{isCtf4aiActive as v,handleCtf4aiMessage as C}from"./commands/ctf4ai-demo.js";import{isVla4CtfActive as A,handleVla4CtfMessage as I}from"./commands/vla4ctf.js";import{isDemo2Active as k}from"./commands/demo2.js";import{getExamState as T,getRealExamState as $,getDemoState as S}from"./lib/exam-state.js";import{getDemoStats as O}from"./lib/demo-stats.js";import{isExamSetupComplete as P}from"./lib/exam-setup.js";import{DEMO_PICK_SIZE as E,DEMO_POOL_SIZE as L}from"./lib/demo-exam.js";import{isNativeWindowsCmd as R}from"./lib/platform.js";import{resetTerminalTheme as q}from"./lib/theme.js";import{ensureSandbox as j,runInSandbox as D,isDockerAvailable as N}from"./lib/sandbox.js";import{logCommand as F}from"./lib/logger.js";import{startLogSync as M,stopLogSync as U}from"./lib/log-sync.js";import{existsSync as W,mkdirSync as z,writeFileSync as B}from"node:fs";import{join as _}from"node:path";import{homedir as Q}from"node:os";function Y(){return $()?chalk.cyan("exam> "):S()?chalk.yellow("demo> "):chalk.green("icoa> ")}const V=_(Q(),"icoa-workspace");function J(){return W(V)||z(V,{recursive:!0}),V}const G=new Set(["sudo","su","doas","pkexec","brew","apt","apt-get","yum","choco","npm","npx","pip","pip3","shutdown","reboot","halt","mkfs","fdisk","dd","iptables","ufw"]),K="__REPL_NO_EXIT__",Z="2.5.1";function H(){const o=O(),e=P(),l=`Free practice — ${E} questions (from pool of ${L})`,n=R();if(console.log(),console.log(` ${chalk.cyan.bold("[Selection Mode]")}`),console.log(),n)console.log(chalk.gray(" Platform: ")+chalk.white("Windows cmd.exe")+chalk.gray(" — routed to Paper C (MCQ-only, 45 min, 70 pts, zero extra tools)")),console.log();else if(o.attempts>0){const o=function(){const o=["python3.12 --version","/opt/homebrew/opt/python@3.12/bin/python3.12 --version","/usr/local/opt/python@3.12/bin/python3.12 --version","python3 --version","python --version","py -3.12 --version","py -3 --version"];let e="",l="missing";for(const n of o)try{const o=t(n,{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim().replace("Python ",""),[s,a]=o.split(".").map(Number);if(3===s&&12===a)return{ok:!0,version:o,status:"ok"};e=o,l=3===s&&a>=10&&a<12?"old":3===s&&a>12?"new":"missing"}catch{}return{ok:"missing"!==l,version:e,status:l}}();"missing"===o.status?(console.log(chalk.yellow(" ⚠ Python not detected. For exam practical questions:")),console.log(chalk.gray(" → ")+chalk.bold.cyan("env python")+chalk.gray(" (platform install guide)")),console.log()):"new"===o.status&&(console.log(chalk.yellow(` ⚠ Python ${o.version} may lack CTF wheels. Python 3.12 recommended:`)),console.log(chalk.gray(" → ")+chalk.bold.cyan("env python")+chalk.gray(" (install guide)")),console.log())}if(0===o.attempts)console.log(chalk.white(" New here? Start with ")+chalk.bold.cyan("demo")+chalk.white(" — it takes a few minutes.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.cyan(" demo")+chalk.gray(` ${l}`)),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"));else if(e||n){const e=1===o.attempts?"attempt":"attempts";o.attempts>0&&console.log(chalk.green(" ✓ Demo completed ")+chalk.gray(`(${o.attempts} ${e})`)),n||console.log(chalk.green(" ✓ Environment ready")),console.log(chalk.yellow(" → Enter your exam token to begin.")),console.log(chalk.gray(" (10-char code from your organizer, starts with your country code like ")+chalk.cyan("UA")+chalk.gray(" — case-insensitive)")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.yellow(" exam <token>")+chalk.gray(" Enter exam (primary action — use your organizer-issued token)")),console.log(chalk.gray(" format: ")+chalk.white("exam UAxxxxxxxx")+chalk.gray(" (2-letter country prefix + 8 chars)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Other commands:")),console.log(chalk.white(" demo")+chalk.gray(` ${l}`)),n||console.log(chalk.white(" exam setup")+chalk.gray(" Re-verify tool environment")),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"))}else{const e=1===o.attempts?"attempt":"attempts";console.log(chalk.green(" ✓ Demo completed ")+chalk.gray(`(${o.attempts} ${e}${o.bestPercentage>0?` · best ${o.bestPercentage}%`:""})`)),console.log(chalk.yellow(" → Next: prepare your environment for the real exam.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" demo")+chalk.gray(` ${l}`)),console.log(chalk.bold.yellow(" exam setup")+chalk.gray(" Install tools for national selection (~150MB)")),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"))}console.log(chalk.gray(" ")+chalk.gray("Tip: ")+chalk.cyan("help")+chalk.gray(" for commands · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()}export async function startRepl(e,S){process.env.ICOA_INSIDE_REPL="1";const O=n(),P=l(),E=process.exit.bind(process),L=a();if(O.demoCleanedForVersion!==Z){try{const{existsSync:o,unlinkSync:e}=await import("node:fs"),{join:t}=await import("node:path"),{getIcoaDir:l}=await import("./lib/config.js"),n=t(l(),"demo-state.json");o(n)&&e(n)}catch{}s({demoCleanedForVersion:Z})}const{select:R,confirm:oo}=await import("@inquirer/prompts"),eo=O.mode||"",to=[{name:` ${chalk.bold("National Selection")} ${chalk.gray("—")} ${chalk.gray("demo, exam (lightweight)")}`,value:"selection"},{name:` ${chalk.bold("Embodied AI Security")} 🤖 ${chalk.gray("—")} ${chalk.gray("VLA4CTF Pioneer Round: demo, learn, Paper D (parallel track)")}`,value:"embodied"},{name:` ${chalk.bold("International Olympiad")} ${chalk.gray("—")} ${chalk.gray("CTF × AI (~500MB, advanced)")}`,value:"olympiad"},{name:` ${chalk.bold("National/Regional Partner")} ${chalk.gray("—")} ${chalk.gray("organizer tools (tokens, competitions)")}`,value:"organizer"},{name:` ${chalk.gray("About ICOA")} ${chalk.gray("·")} ${chalk.gray("Info & contact")}`,value:"about"}];console.log(chalk.gray(" Use ")+chalk.yellow("↑")+chalk.gray(" or ")+chalk.yellow("↓")+chalk.gray(" to select, ")+chalk.yellow("Enter")+chalk.gray(" to confirm.")),console.log();let lo="";for(;!lo;){const o=await R({message:"Mode",choices:to,default:eo||"selection"});"about"!==o?lo=o:(console.clear(),console.log(),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(chalk.bold.yellow(" ICOA")+chalk.white(" — AI-Native CLI OS for Cyber & AI Security")),console.log(chalk.gray(" Olympiad & Competition · K-12 to University")),console.log(chalk.cyan(" ───────────────────────────────────────────────────")),console.log(),console.log(chalk.bold.white(" What Makes ICOA Different")),console.log(chalk.gray(" · AI-native AI teammate, AI adversary, AI translation")),console.log(chalk.gray(" · CLI OS Complete competition environment in terminal")),console.log(chalk.gray(" · 110 tools pwntools, z3, gdb, nmap, sleuthkit... pre-configured")),console.log(chalk.gray(" · Global scale 15,000+ concurrent exams · 15 languages")),console.log(),console.log(chalk.bold.white(" Competition Format")),console.log(` ${chalk.green.bold("AI4CTF")}${chalk.gray(" [Day 1] AI as teammate — 5hr jeopardy CTF")}`),console.log(` ${chalk.red.bold("CTF4AI")}${chalk.gray(" [Day 2] Challenge AI — adversarial ML, red-team")}`),console.log(` ${chalk.cyan.bold("VLA4CTF")}${chalk.gray(" [Pioneer Round] Embodied AI — attack robot brains (NEW)")}`),console.log(),console.log(chalk.white(" Sydney, Australia")+chalk.gray(" · Jun 27 - Jul 2, 2026 · 40+ countries")),console.log(),console.log(chalk.bold.white(" Organized by")+chalk.gray(" ASRA (Australia) · ICO Foundation Inc")),console.log(chalk.bold.white(" Contact ")+chalk.cyan(" australia@icoa2026.au · accreditation@icoa2026.au")),console.log(chalk.bold.white(" Website ")+chalk.cyan.underline(" https://icoa2026.au")),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(),console.log(chalk.gray(" Press ")+chalk.yellow("Enter")+chalk.gray(" to return...")),await new Promise(o=>{const e=t=>{process.stdin.removeListener("data",e),process.stdin.isTTY&&process.stdin.setRawMode&&process.stdin.setRawMode(!1),process.stdin.pause(),o()};process.stdin.isTTY&&process.stdin.setRawMode&&process.stdin.setRawMode(!0),process.stdin.resume(),process.stdin.once("data",e)}),console.clear())}if("olympiad"===lo&&"olympiad"!==eo&&(console.log(),console.log(chalk.yellow(" This mode will download ~500MB of CTF tools and AI models.")),await oo({message:"Continue?",default:!0})||(lo="selection",console.log(chalk.gray(" Switched to National Selection mode.")))),lo!==eo&&s({mode:lo}),console.log(),"olympiad"===lo&&m(Z)){d(Z),console.log(chalk.gray(" Checking competition environment..."));const{execSync:o}=await import("node:child_process"),e=[{name:"pwntools",cmd:'python3 -c "import pwn"'},{name:"z3-solver",cmd:'python3 -c "import z3"'},{name:"numpy",cmd:'python3 -c "import numpy"'},{name:"requests",cmd:'python3 -c "import requests"'}];let t=0;for(const l of e)try{o(l.cmd,{stdio:"ignore"})}catch{t++}if(t>0){console.log(chalk.yellow(` ${t} core libraries missing.`));try{const{confirm:o}=await import("@inquirer/prompts");if(await o({message:" Install competition Python libraries now?",default:!0,theme:{prefix:"",style:{message:o=>chalk.green(o),defaultAnswer:o=>chalk.green(o)}}})){console.log();const{execSync:o}=await import("node:child_process");o("icoa env setup",{stdio:"inherit"})}}catch{console.log(chalk.gray(" Run ")+chalk.white("env setup")+chalk.gray(" later to install."))}console.log()}else console.log(chalk.green(" All core libraries ready.")),console.log()}if(S){const o=y();if(o){const e=Math.floor(o.awaySeconds/60),t=o.awaySeconds%60;console.log(chalk.yellow(` Session resumed. Away: ${e}m ${t}s | Total exits: ${o.exitCount}`)),console.log()}}"selection"===lo?H():"embodied"===lo?(console.log(chalk.cyan.bold(" [Embodied AI Security 🤖]")),console.log(),console.log(chalk.bold.cyan(" VLA4CTF")+chalk.gray(" — ICOA 2026's ")+chalk.bold.white("Pioneer Round")),console.log(chalk.gray(" an independent parallel track alongside the scored main events: ")+chalk.green("AI4CTF")+chalk.gray(" (Day 1) and ")+chalk.red("CTF4AI")+chalk.gray(" (Day 2)")),console.log(),console.log(chalk.white(" Embodied AI is at its ImageNet moment.")),console.log(chalk.gray(" VLA models, MuJoCo physics, real robot arms.")),console.log(chalk.gray(" Real models, real physics, real attack surfaces.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.yellow(" First time? Try in order: ")+chalk.bold.cyan("① sim")+chalk.gray(" → ")+chalk.bold.cyan("② demo2")+chalk.gray(" → ")+chalk.bold.cyan("③ learn LEARNDEMO01")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.green(" sim")+chalk.gray(" ")+chalk.bold.cyan("①")+chalk.gray(" ")+chalk.bold.yellow("★ WOW")+chalk.gray(" — robot arm replay in seconds")),console.log(chalk.bold.green(" demo2")+chalk.gray(" ")+chalk.bold.cyan("②")+chalk.gray(" ~8 min interactive intro + live MuJoCo sim")),console.log(chalk.bold.green(" learn LEARNDEMO01")+chalk.gray(" ")+chalk.bold.cyan("③")+chalk.gray(" free 11-card intro (paste this command as-is)")),console.log(chalk.bold.green(" learn ")+chalk.bold.yellow("EAxxxxxxxx")+chalk.gray(" full 100/480-card curriculum (team-issued)")),console.log(chalk.bold.green(" exam ")+chalk.bold.yellow("PDxxxxxxxx")+chalk.gray(" Paper D (VLA4CTF) — national selection contestants")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(),console.log(chalk.gray(" Three open tiers: ")+chalk.green("free 11")+chalk.gray(" · ")+chalk.yellow("registered 100")+chalk.gray(" · ")+chalk.bold.magenta("national team 480")+chalk.gray(" (PhD-ready)")),console.log(chalk.gray(" Country team contact: ")+chalk.cyan("australia@icoa2026.au")),console.log(),h(),console.log()):"organizer"===lo?(console.log(chalk.yellow.bold(" [National/Regional Partner]")),console.log(),console.log(chalk.bold.white(" ██╗ ██████╗ ██████╗ █████╗")),console.log(chalk.bold.white(" ██║██╔════╝██╔═══██╗██╔══██╗")),console.log(chalk.bold.white(" ██║██║ ██║ ██║███████║")),console.log(chalk.bold.white(" ██║██║ ██║ ██║██╔══██║")),console.log(chalk.bold.white(" ██║╚██████╗╚██████╔╝██║ ██║")),console.log(chalk.bold.white(" ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝")),console.log(),console.log(chalk.yellow(" International Cyber Olympiad in AI 2026")),console.log(chalk.bold.magenta(" The World's First AI-Native CLI Operating System")),console.log(chalk.bold.magenta(" for Cybersecurity & AI Security Competition")),console.log(chalk.bold.magenta(" and Olympiad for K-12")),console.log(chalk.gray(" Sydney, Australia · Jun 27 - Jul 2, 2026")),console.log(),console.log(chalk.white(" Vision")),console.log(chalk.gray(" Building a global pipeline for youth cyber & AI")),console.log(chalk.gray(" security talent through education and competition.")),console.log(),console.log(chalk.white(" Capacity")),console.log(chalk.gray(" 15,000+ concurrent online examinations")),console.log(chalk.gray(" National selection, training, and education support")),console.log(),console.log(chalk.white(" Olympic Spirit")),console.log(chalk.gray(" Excellence · Friendship · Respect")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" New country accreditation & support:")),console.log(chalk.cyan(" australia@icoa2026.au")),console.log(chalk.cyan(" accreditation@icoa2026.au")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(),P?(console.log(chalk.green(` Logged in as ${O.userName}`)),console.log(chalk.white(" exam list")+chalk.gray(" Manage exams")),console.log(chalk.white(" logout")+chalk.gray(" Disconnect"))):console.log(chalk.white(" join <url>")+chalk.gray(" Connect to manage exams")),console.log(),h(),console.log()):L&&!c()?(console.log(chalk.red(" Token was activated on a different device.")),console.log(chalk.gray(" Contact organizer for assistance.")),console.log()):P?(console.log(chalk.green.bold(` Welcome back, ${O.userName}!`)),console.log(chalk.gray(` Connected to ${O.ctfdUrl}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Ready to compete? Start here:")),console.log(),console.log(chalk.bold.cyan(" challenges")+chalk.gray(" Browse challenges by category")),console.log(chalk.white(" status")+chalk.gray(" Your score & hint budget")),console.log(chalk.white(" scoreboard")+chalk.gray(" Live rankings")),console.log(chalk.white(" help")+chalk.gray(" Full command list")),console.log(),console.log(chalk.gray(" Tool environment:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("help")+chalk.gray(" · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()):L?(J(),console.log(chalk.green.bold(" Welcome, competitor!")),console.log(chalk.gray(` Workspace: ${V}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Get started:")),console.log(),console.log(chalk.white(" Step 1 ")+chalk.bold.cyan("join <url>")+chalk.gray(" Connect to competition server")),console.log(chalk.white(" Step 2 ")+chalk.bold.cyan("challenges")+chalk.gray(" Browse & solve challenges")),console.log(chalk.white(" Step 3 ")+chalk.bold.cyan("ai4ctf")+chalk.gray(" Ask AI when stuck")),console.log(),console.log(chalk.gray(" Before Step 1 — make sure your tools are ready:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(),console.log(chalk.gray(" Also: ")+chalk.white("help")+chalk.gray(" all commands")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+w()+chalk.gray(" · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()):(console.log(chalk.bold.white(" Welcome to ICOA CLI — International Olympiad")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" To begin, activate your competition token:")),console.log(),console.log(chalk.bold.cyan(" activate <token>")),console.log(),console.log(chalk.gray(" While waiting, explore:")),console.log(chalk.white(" ref linux")+chalk.gray(" Quick reference for Linux")),console.log(chalk.white(" ref web")+chalk.gray(" Quick reference for Web")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.white(" help")+chalk.gray(" All available commands")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+w()+chalk.gray(" · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()),e.exitOverride(),e.configureOutput({writeErr:()=>{},writeOut:o=>{console.log(o)}});const no=o({input:process.stdin,output:process.stdout,prompt:Y(),terminal:!0});f(no);let so=!1;p(!0),M();const ao=no.prompt.bind(no);no.prompt=o=>{b()||v()||A()||k()||no.setPrompt(Y()),ao(o)},no.prompt(),no.on("line",async o=>{if(so)return;const l=o.trim();if(!l)return no.setPrompt(b()?chalk.magenta("ai4ctf> "):Y()),void no.prompt();if("menu"===l||"menu confirm"===l)return $()&&"menu confirm"!==l?(console.log(),console.log(chalk.yellow(" Real exam active. Progress is auto-saved.")),console.log(chalk.gray(" To return to main menu anyway, type ")+chalk.white("menu confirm")),console.log(),void no.prompt()):void u(no);if(b()){so=!0;const o=await x(l);return so=!1,"exit"===o&&no.setPrompt(Y()),void no.prompt()}if(v()){so=!0;const o=await C(l);return so=!1,"exit"!==o&&"solved"!==o||no.setPrompt(Y()),void no.prompt()}if(A()){so=!0;const o=await I(l);return so=!1,"exit"===o&&no.setPrompt(Y()),no.setPrompt(A()?chalk.bold.cyan("vla4ctf> "):Y()),void no.prompt()}if(F(l),"exit"===l)return T()?(console.log(),console.log(chalk.yellow(" ⚠ An exam is in progress.")),console.log(chalk.white(" To return to menu without losing progress, type: ")+chalk.bold.cyan("back")),console.log(chalk.white(" To fully close ICOA CLI, type: ")+chalk.bold.cyan("quit")),console.log(chalk.gray(" Your progress is auto-saved either way.")),console.log(),void no.prompt()):(console.log(),console.log(chalk.gray(" ")+chalk.white("exit")+chalk.gray(" returns to the main menu. To fully close ICOA CLI, type ")+chalk.bold.cyan("quit")+chalk.gray(".")),"selection"===lo&&H(),void no.prompt());if("quit"===l||"q"===l||"quit confirm"===l){const o=T();return o&&"demo-free"!==o.session.examId&&"quit confirm"!==l?(console.log(),console.log(chalk.yellow(" ⚠ A real exam is in progress.")),console.log(chalk.gray(" Your answers are auto-saved on the server, but the exam timer keeps ticking")),console.log(chalk.gray(" on the server side even if you close the CLI.")),console.log(),console.log(chalk.white(" To leave the CLI but keep the exam alive, type: ")+chalk.bold.cyan("back")),console.log(chalk.gray(" (recommended — you can resume with ")+chalk.cyan("exam q 1")+chalk.gray(" after relaunching icoa)")),console.log(),console.log(chalk.white(" To really close ICOA CLI, type: ")+chalk.bold.cyan("quit confirm")),console.log(),void no.prompt()):(o&&"demo-free"===o.session.examId&&(console.log(),console.log(chalk.gray(" Demo paused. Resume with: ")+chalk.white("demo")+chalk.gray(" (fresh) or ")+chalk.white("exam q 1")+chalk.gray(" (continue)."))),U(),g(),console.log(chalk.gray(" Session saved. Use ")+chalk.white("icoa --resume")+chalk.gray(" to continue.")),q(),void E(0))}if("back"===l){const o=T(),e=o&&"demo-free"!==o.session.examId,t=o&&"demo-free"===o.session.examId&&(()=>{const e=new Date(o.session.startedAt||0).getTime();return Date.now()-e<18e5})();if(e)console.log(),console.log(chalk.gray(" Exam paused. Your progress is saved.")),console.log(chalk.white(" Resume: exam q 1")+chalk.gray(" · ")+chalk.white("exam review")+chalk.gray(" · ")+chalk.white("exam submit")),console.log();else if(t){const e=Object.keys(o.answers).length,t=o.session.questionCount;console.log(),console.log(chalk.gray(` Demo paused (${e}/${t} answered). Resume with: `)+chalk.white("exam q 1")),console.log(chalk.gray(" Or type ")+chalk.white("demo")+chalk.gray(" to restart.")),console.log()}else{if(o&&"demo-free"===o.session.examId){const{clearExamState:o}=await import("./lib/exam-state.js");o("demo-free")}const e=n();fetch("https://practice.icoa2026.au/api/icoa/demo-stats",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({type:"post-report-back",lang:e.language||"en",timestamp:(new Date).toISOString()}),signal:AbortSignal.timeout(5e3)}).catch(()=>{}),"selection"===lo?H():console.log(chalk.gray(" Already at main menu."))}return void no.prompt()}if("help"===l||"?"===l){if(T()){so=!0;try{await e.parseAsync(["node","icoa","exam","help"])}catch{}return so=!1,void no.prompt()}return function(o,e="olympiad"){console.log(),"selection"===e||"organizer"===e?(console.log(chalk.bold.white(" Exam")),console.log(chalk.white(" join <url> ")+chalk.gray("Connect to exam server")),console.log(chalk.white(" exam list ")+chalk.gray("Available exams")),console.log(chalk.white(" exam start <id> ")+chalk.gray("Begin an exam")),console.log(chalk.white(" exam q [n] ")+chalk.gray("View questions")),console.log(chalk.white(" exam answer <n> <X> ")+chalk.gray("Answer question")),console.log(chalk.white(" exam review ")+chalk.gray("Review all answers")),console.log(chalk.white(" exam submit ")+chalk.gray("Submit for grading")),console.log(chalk.white(" exam result ")+chalk.gray("View your score")),console.log(),console.log(chalk.bold.white(" System")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference")),console.log(chalk.white(" setup ")+chalk.gray("Settings / switch mode")),console.log(chalk.white(" lang [code] ")+chalk.gray("Switch language")),console.log(chalk.white(" clear ")+chalk.gray("Clear screen")),console.log(chalk.white(" exit ")+chalk.gray("Quit")),console.log()):o?(console.log(chalk.cyan(" ═══════════════════════════════════════════════")),console.log(chalk.bold.white(" How it works")),console.log(),console.log(chalk.gray(" 1. Browse ")+chalk.white("challenges")+chalk.gray(" and pick one")),console.log(chalk.gray(" 2. ")+chalk.white("open <id>")+chalk.gray(" to read the challenge")),console.log(chalk.gray(" 3. Use ")+chalk.white("ai4ctf")+chalk.gray(" to chat with AI when stuck")),console.log(chalk.gray(" 4. ")+chalk.white("submit <id> icoa{flag}")+chalk.gray(" to score points")),console.log(chalk.gray(" 5. Check ")+chalk.white("scoreboard")+chalk.gray(" to track your rank")),console.log(chalk.cyan(" ═══════════════════════════════════════════════")),console.log(),console.log(chalk.bold.white(" Competition")),console.log(chalk.white(" join <url> ")+chalk.gray("Connect to CTFd")),console.log(chalk.white(" challenges (ch) ")+chalk.gray("List challenges by category")),console.log(chalk.white(" open <id> ")+chalk.gray("Read challenge + get next steps")),console.log(chalk.white(" submit <id> <flag> ")+chalk.gray("Submit a flag")),console.log(chalk.white(" scoreboard (sb) ")+chalk.gray("Live rankings")),console.log(chalk.white(" status ")+chalk.gray("Your score, budget & timer")),console.log(chalk.white(" time ")+chalk.gray("Countdown timer")),console.log(),console.log(chalk.bold.white(" AI Teammate")+chalk.gray(" — 3 levels, use wisely")),console.log(chalk.white(' hint "question" ')+chalk.gray("Level A — General guidance (50 uses)")),console.log(chalk.white(' hint-b "question" ')+chalk.gray("Level B — Deep analysis (10 uses)")),console.log(chalk.white(' hint-c "question" ')+chalk.gray("Level C — Critical assist (2 uses)")),console.log(chalk.white(" hint budget ")+chalk.gray("Check remaining uses")),console.log(chalk.white(" ai4ctf ")+chalk.gray("Free-chat with AI (no limit)")),console.log(),console.log(chalk.bold.white(" Tools")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference (linux, web, crypto...)")),console.log(chalk.white(" shell ")+chalk.gray("Docker sandbox")),console.log(chalk.white(" files <id> ")+chalk.gray("Download challenge files")),console.log(chalk.white(" connect <id> ")+chalk.gray("Connect to remote target")),console.log(chalk.white(" note [text] ")+chalk.gray("Personal notepad")),console.log(chalk.white(" log ")+chalk.gray("Session history")),console.log(),console.log(chalk.bold.white(" System")),console.log(chalk.white(" setup ")+chalk.gray("Configure settings")),console.log(chalk.white(" lang [code] ")+chalk.gray("Switch language (15 supported)")),console.log(chalk.white(" logout ")+chalk.gray("Disconnect")),console.log(chalk.white(" clear ")+chalk.gray("Clear screen")),console.log(chalk.white(" exit ")+chalk.gray("Quit (session saved)")),console.log()):(console.log(chalk.bold.yellow(" Restricted Mode — activate with a token to unlock all commands")),console.log(),console.log(chalk.white(" activate <token> ")+chalk.gray("Unlock full access")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference")),console.log(chalk.white(" exit ")+chalk.gray("Quit")),console.log())}(a(),lo),void no.prompt()}if("more help"===l.toLowerCase()&&T()){so=!0;try{await e.parseAsync(["node","icoa","exam","more-help"])}catch{}return so=!1,void no.prompt()}if("continue"===l.toLowerCase())return console.log(),console.log(chalk.green.bold(" ═══ AI4CTF — AI as Your Teammate ═══")),console.log(),console.log(chalk.white(" In AI4CTF, you solve cybersecurity challenges")),console.log(chalk.white(" with AI by your side.")),console.log(),console.log(chalk.white(" In competition, you get AI help at 3 levels:")),console.log(chalk.yellow(" hint a")+chalk.gray(" General guidance (50 uses)")),console.log(chalk.yellow(" hint b")+chalk.gray(" Deep analysis (10 uses)")),console.log(chalk.yellow(" hint c")+chalk.gray(" Critical assist (2 uses)")),console.log(),console.log(chalk.white(" Try it now! Type: ")+chalk.bold.green("ai4ctf")),console.log(chalk.gray(' Chat freely with your AI teammate. Type "exit" when done.')),console.log(),console.log(chalk.gray(" After ai4ctf, try: ")+chalk.bold.red("ctf4ai")+chalk.gray(' — trick the AI into saying "koala"')),console.log(),void no.prompt();if(/^ICOA-[A-Z]{2,3}-\d{1,6}$/i.test(l.trim())){so=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim()])}catch{}return so=!1,void no.prompt()}if(/^[A-Z]{2}[0-9A-HJKMNP-TV-Z]{8}$/i.test(l.trim())){so=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim().toUpperCase()])}catch{}return so=!1,void no.prompt()}const s=l.match(/^exam\s+([A-Z]{2}[0-9A-HJKMNP-TV-Z]{8})$/i);if(s){so=!0;try{await e.parseAsync(["node","icoa","exam","token",s[1].toUpperCase()])}catch{}return so=!1,void no.prompt()}const y=l.match(/^exam\s+([A-Z]{2,3})$/i);if(y){so=!0;try{await e.parseAsync(["node","icoa","exam","list",y[1]])}catch{}return so=!1,void no.prompt()}if("clear"===l||"cls"===l)return console.clear(),void no.prompt();if(l.startsWith("activate ")){const o=l.slice(9).trim(),e=r(o);return"ok"===e?console.log(chalk.green(" Access granted! Token bound to this device.")):"already_bound"===e?(console.log(),console.log(chalk.red(" Token already activated on a different device.")),console.log(chalk.gray(" Each token binds to the first device that uses it. If you lost the device,")),console.log(chalk.gray(" contact your proctor to have the token re-issued for a new device."))):(console.log(),console.log(chalk.red(" Token not recognized.")),console.log(chalk.gray(" Possible reasons:")),console.log(chalk.white(" • ")+chalk.gray("Typo — tokens are case-insensitive, 10 chars, start with a 2-letter country code (e.g. ")+chalk.cyan("UAK7M2R9Q4")+chalk.gray(")")),console.log(chalk.white(" • ")+chalk.gray("Expired — ask your proctor or organizer for a fresh token")),console.log(chalk.white(" • ")+chalk.gray("Network — verify connection to ")+chalk.cyan("practice.icoa2026.au")),console.log(chalk.gray(" Still stuck? type ")+chalk.cyan("help")+chalk.gray(" or try ")+chalk.cyan("exam demo")+chalk.gray(" for a free practice round."))),console.log(),void no.prompt()}if("activate"===l)return console.log(chalk.gray(" Usage: ")+chalk.white("activate <token>")),console.log(),void no.prompt();const m=T();if(m){const o=l.toUpperCase().trim(),t=o=>{const e=m.questions.find(e=>e.number===o);return!!e&&("ai4ctf"===e.type||"ctf4ai"===e.type||e.options&&!e.options.A&&!e.options.B)},n=o=>{const e="demo-free"!==m.session.examId,t=e&&o>=39?"ctf4ai":e&&o>=31?"ai4ctf":null;console.log(),console.log(chalk.yellow(` Q${o} is a practical question — letters (A/B/C/D) don't apply here.`)),t?(console.log(chalk.white(" Enter the AI chat for this question: ")+chalk.bold.cyan(t)),console.log(chalk.gray(" Or submit a flag directly: ")+chalk.green(`exam answer ${o} ICOA{your_flag}`))):console.log(chalk.gray(" Submit a flag: ")+chalk.green(`exam answer ${o} ICOA{your_flag}`)),console.log()};if(/^[ABCD]$/.test(o)){const l=m._lastQ||1;if(t(l))return n(l),void no.prompt();so=!0;try{await e.parseAsync(["node","icoa","exam","answer",String(l),o])}catch{}return so=!1,void no.prompt()}const s=o.match(/^(\d+)\s+([ABCD])$/);if(s){const o=parseInt(s[1],10);if(t(o))return n(o),void no.prompt();so=!0;try{await e.parseAsync(["node","icoa","exam","answer",s[1],s[2]])}catch{}return so=!1,void no.prompt()}}const d=l.split(/\s+/)[0].toLowerCase(),p=/^python3?(\.\d+)?$/.test(d),h=l.startsWith("!")||d.startsWith("!")||p;if("embodied"===lo&&!h&&!["demo2","learn","exam","vla4ctf","lang","ref","setup","env","sim"].includes(d))return console.log(chalk.gray(" Not available in Embodied AI Security mode.")),console.log(chalk.white(" Try ")+chalk.bold.cyan("demo2")+chalk.gray(" (intro) · ")+chalk.bold.cyan("learn")+chalk.gray(" (curriculum) · ")+chalk.bold.cyan("exam <PD-token>")+chalk.gray(" (Paper D)")),console.log(),void no.prompt();if("selection"===lo&&!h&&!["exam","demo","retry","nations","next","prev","continue","setup","lang","ref","ai4ctf","ctf4ai","mark","unmark","review","submit","env","sim"].includes(d)){if(console.log(chalk.gray(" Not available in Selection mode.")),m){const o=m._lastQ||1;console.log(chalk.white(` Resume exam: exam q ${o}`)+chalk.gray(" · ")+chalk.white("A/B/C/D")+chalk.gray(" to answer"))}else console.log(chalk.gray(" Try: demo · setup to switch mode"));return console.log(),void no.prompt()}if("organizer"===lo&&!["join","exam","demo","retry","next","prev","logout","setup","lang","ref","ctf","mark","unmark","review","submit"].includes(d))return console.log(chalk.gray(" Not available in Organizer mode. Switch via: setup")),console.log(),void no.prompt();if(!("olympiad"!==lo||a()&&c()||i(d)))return console.log(chalk.yellow(" Restricted mode. ")+chalk.gray("Enter your access token:")),console.log(chalk.white(" activate <token>")),console.log(),console.log(chalk.gray(" Free commands: ")+chalk.white("ref [topic]")+chalk.gray(", ")+chalk.white("help")+chalk.gray(", ")+chalk.white("exit")),console.log(),void no.prompt();if(!["join","activate","challenges","ch","open","submit","flag","scoreboard","sb","status","time","ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","demo","retry","nations","next","prev","continue","logout","ctf4ai","mark","unmark","review","submit","learn","demo2","vla4ctf","theme","sim"].includes(d)){if(G.has(d))return console.log(chalk.red(` Blocked: ${d} is not allowed during competition.`)),console.log(),void no.prompt();if(/(?:^|\s)(?:\/(?!home\/|Users\/|tmp\/)|\.\.\/|~\/)/.test(l)&&!l.startsWith("cd ")){const o=/(?:^|\s)\/(?!home\/\w+\/icoa-workspace|Users\/\w+\/icoa-workspace|tmp\/)/.test(l),e=/\.\./.test(l);if(o||e)return console.log(chalk.red(" Blocked: access outside workspace is not allowed.")),console.log(chalk.gray(` Workspace: ${V}`)),console.log(),void no.prompt()}let o=l.startsWith("!")?l.slice(1).trim():l;if("darwin"===process.platform){const e="/opt/homebrew/opt/python@3.12/bin/python3.12";o=o.replace(/^python3?\s/,`${e} `).replace(/^(python3|python)$/,e)}else if("win32"===process.platform){const e=(()=>{try{return t("py -3 --version",{stdio:["ignore","ignore","ignore"],timeout:1500}),"py -3"}catch{}return"python"})();o=o.replace(/^python3?(\.\d+)?\s/,`${e} `).replace(/^python3?(\.\d+)?$/,e)}else{const e=(()=>{try{return t("which python3.12",{stdio:"ignore"}),"python3.12"}catch{return"python3"}})();o=o.replace(/^python\s/,`${e} `).replace(/^python$/,e)}const e=J();/^(\S*python3?(\.\d+)?)\s*$/.test(o)&&(o=`PYTHONSTARTUP="${function(){const o=_(Q(),".icoa");W(o)||z(o,{recursive:!0});const e=_(o,"python-startup.py");return W(e)||B(e,"# ICOA exam interactive startup — auto-loaded by PYTHONSTARTUP\nimport base64, struct, hashlib, re, json, os, sys, binascii\ntry: import requests\nexcept ImportError: pass\ntry: from Crypto.Cipher import AES\nexcept ImportError: pass\ntry: from Crypto.Util.Padding import pad, unpad\nexcept ImportError: pass\ntry: from pwn import xor, p32, u32, p64, u64\nexcept ImportError: pass\ntry: import bs4\nexcept ImportError: pass\ntry: import numpy as np\nexcept ImportError: pass\n"),e}()}" ${o}`,console.log(),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log(chalk.bold.white(" Python ready — ICOA exam toolkit pre-loaded")),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log(),console.log(chalk.white(" Already imported: ")+chalk.gray("base64, struct, hashlib, re, json, binascii")),console.log(chalk.white(" Also available: ")+chalk.gray("requests, bs4, numpy, AES, pad/unpad, xor, p32/u32/p64/u64")),console.log(),console.log(chalk.yellow(" Quick examples:")),console.log(chalk.gray(' base64.b64decode("aGVsbG8=") ')+chalk.gray("# decode base64")),console.log(chalk.gray(' bytes.fromhex("48656c6c6f") ')+chalk.gray("# hex → bytes")),console.log(chalk.gray(' "ICOA{x}".encode() ')+chalk.gray("# str → bytes")),console.log(chalk.gray(" [chr(c) for c in [73,67,79,65]] ")+chalk.gray("# ASCII codes")),console.log(chalk.gray(' xor(bytes.fromhex("0a2b"), b"IC") ')+chalk.gray("# pwntools XOR")),console.log(),console.log(chalk.gray(" Exit: ")+chalk.white("exit()")+chalk.gray(" or Ctrl-D")),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log()),so=!0;try{N()&&await j()?await D(o,no):await X(o,no,e)}catch{console.log(chalk.yellow(` Command failed: ${d}`))}return so=!1,console.log(),void no.prompt()}so=!0;const w=l.trim(),f=w.toLowerCase();let k,S=null,O="";if(m)if("submit"===f)S="final";else if(f.startsWith("submit ")){let o=w.slice(7).trim();/^submit\s+/i.test(o)&&(o=o.replace(/^submit\s+/i,"").trim()),o=o.replace(/^["'`]+|["'`]+$/g,"").trim(),o&&/^ICOA\{[^}]*\}?$/i.test(o)&&(S="flag",O=o)}else/^ICOA\{[^}]+\}$/i.test(w)&&(S="flag",O=w);k="final"===S?["exam","submit"]:"flag"===S?["exam","answer",String(m?._lastQ||1),O]:function(o){const e=o.split(/\s+/),t=e[0].toLowerCase(),l=e.slice(1),n={demo:["exam","demo"],retry:["exam","demo-retry"],nations:["exam","nations"],next:["exam","next"],prev:["exam","prev"],mark:["exam","mark",...l],unmark:["exam","unmark",...l],review:["exam","review"],logout:["ctf","logout"],join:["ctf","join",...l],activate:["ctf","activate",...l],challenges:["ctf","challenges"],ch:["ctf","challenges"],open:["ctf","open",...l],submit:["ctf","submit",...l],flag:["ctf","submit",...l],scoreboard:["ctf","scoreboard",...l],sb:["ctf","scoreboard",...l],status:["ctf","status"],time:["ctf","time"]};return n[t]?n[t]:["ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","ctf4ai"].includes(t)?[t,...l]:e}(l);const P="ctf"===k[0]&&"join"===k[1];P&&no.pause(),process.exit=()=>{throw new Error(K)};try{await e.parseAsync(["node","icoa",...k])}catch(o){const e=o instanceof Error?o.message:String(o);if(e===K);else if(e.includes("commander.unknownCommand")){const{distance:o}=await import("fastest-levenshtein"),e=["ctf","ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","exam","ctf4ai","theme","clear","cls","quit","exit","back","menu","help","continue","activate","demo","challenges","status","scoreboard","join","logout"],t=d.split(/\s+/)[0]||d;let l={word:"",dist:1/0};for(const n of e){const e=o(t.toLowerCase(),n);e<l.dist&&(l={word:n,dist:e})}console.log(chalk.yellow(` Unknown command: ${d}.`)),l.dist>0&&l.dist<=2&&console.log(chalk.gray(" Did you mean: ")+chalk.bold.cyan(l.word)+chalk.gray("?")),console.log(chalk.gray(" Type ")+chalk.cyan("help")+chalk.gray(" for the full command list."))}else e.includes("commander.")||(e.includes("fetch failed")||e.includes("ECONNREFUSED")||e.includes("ETIMEDOUT"))&&console.log(chalk.yellow(" Network error. Check your connection."))}finally{process.exit=E,so=!1,P&&no.resume()}b()?no.setPrompt(chalk.magenta("ai4ctf> ")):v()?no.setPrompt(chalk.red("ctf4ai> ")):A()&&no.setPrompt(chalk.bold.cyan("vla4ctf> ")),console.log(),no.prompt()}),no.on("SIGINT",()=>{if(console.log(),b()||v())console.log(chalk.yellow(" Ctrl+C did not close ICOA CLI — you are still in the AI chat.")),console.log(chalk.white(" Type ")+chalk.bold.cyan("exit")+chalk.white(" to leave the chat and return to the menu."));else if(T()){const o="demo-free"!==T().session.examId;console.log(chalk.yellow(" Ctrl+C did NOT close ICOA CLI.")),console.log(chalk.gray(` Your ${o?"exam":"demo"} is paused and every answer is auto-saved.`)),console.log(),console.log(chalk.white(" Resume: ")+chalk.cyan("exam q 1")+chalk.gray(" · Back to menu: ")+chalk.cyan("back")+chalk.gray(" · Close CLI: ")+chalk.cyan(o?"quit confirm":"quit"))}else console.log(chalk.yellow(" Ctrl+C did not close ICOA CLI — you are still at the ")+chalk.cyan("icoa>")+chalk.yellow(" prompt.")),console.log(chalk.gray(" Keep typing — ")+chalk.cyan("help")+chalk.gray(" lists commands. (Only ")+chalk.cyan("quit")+chalk.gray(" or Ctrl+D actually close the CLI.)"));console.log(),no.prompt()}),no.on("close",()=>{U(),g(),q(),E(0)})}function X(o,t,l){return new Promise(n=>{const s=process.stdin,a=!!s.isTTY&&!!s.isRaw;if(t.pause(),s.isTTY&&"function"==typeof s.setRawMode)try{s.setRawMode(!1)}catch{}const r=e(o,{shell:!0,stdio:"inherit",cwd:l||process.cwd()}),i=()=>{if(s.isTTY&&"function"==typeof s.setRawMode&&a)try{s.setRawMode(!0)}catch{}t.resume(),n()};r.on("close",i),r.on("error",i)})}
|
|
1
|
+
import{createInterface as o}from"node:readline";import{spawn as e,execSync as t}from"node:child_process";import chalk from"chalk";import{isConnected as l,getConfig as n,saveConfig as s}from"./lib/config.js";import{isActivated as a,activateToken as r,isFreeCommand as i,isDeviceMatch as c,recordExit as g,recordResume as y,isFirstRunOrUpgrade as m,markVersionSeen as d}from"./lib/access.js";import{setReplMode as p}from"./lib/ui.js";import{returnToMainMenu as u,printMenuHint as h,menuHintInline as w}from"./lib/menu-nav.js";import{setMainRl as f}from"./lib/main-rl.js";import{isChatActive as b,handleChatMessage as x}from"./commands/ai4ctf.js";import{isCtf4aiActive as v,handleCtf4aiMessage as C}from"./commands/ctf4ai-demo.js";import{isVla4CtfActive as A,handleVla4CtfMessage as I}from"./commands/vla4ctf.js";import{isDemo2Active as k}from"./commands/demo2.js";import{getExamState as T,getRealExamState as $,getDemoState as S}from"./lib/exam-state.js";import{getDemoStats as O}from"./lib/demo-stats.js";import{isExamSetupComplete as E}from"./lib/exam-setup.js";import{DEMO_PICK_SIZE as L,DEMO_POOL_SIZE as P}from"./lib/demo-exam.js";import{isNativeWindowsCmd as q}from"./lib/platform.js";import{resetTerminalTheme as R}from"./lib/theme.js";import{ensureSandbox as j,runInSandbox as D,isDockerAvailable as N}from"./lib/sandbox.js";import{logCommand as F}from"./lib/logger.js";import{startLogSync as M,stopLogSync as U}from"./lib/log-sync.js";import{existsSync as W,mkdirSync as z,writeFileSync as B}from"node:fs";import{join as _}from"node:path";import{homedir as Q}from"node:os";function Y(){return $()?chalk.cyan("exam> "):S()?chalk.yellow("demo> "):chalk.green("icoa> ")}const V=_(Q(),"icoa-workspace");function J(){return W(V)||z(V,{recursive:!0}),V}const G=new Set(["sudo","su","doas","pkexec","brew","apt","apt-get","yum","choco","npm","npx","pip","pip3","shutdown","reboot","halt","mkfs","fdisk","dd","iptables","ufw"]),K="__REPL_NO_EXIT__",Z="2.5.1";function H(){const o=O(),e=E(),l=`Free practice — ${L} questions (from pool of ${P})`,n=q();if(console.log(),console.log(` ${chalk.cyan.bold("[Selection Mode]")}`),console.log(),n)console.log(chalk.gray(" Platform: ")+chalk.white("Windows cmd.exe")+chalk.gray(" — routed to Paper C (MCQ-only, 45 min, 70 pts, zero extra tools)")),console.log();else if(o.attempts>0){const o=function(){const o=["python3.12 --version","/opt/homebrew/opt/python@3.12/bin/python3.12 --version","/usr/local/opt/python@3.12/bin/python3.12 --version","python3 --version","python --version","py -3.12 --version","py -3 --version"];let e="",l="missing";for(const n of o)try{const o=t(n,{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim().replace("Python ",""),[s,a]=o.split(".").map(Number);if(3===s&&12===a)return{ok:!0,version:o,status:"ok"};e=o,l=3===s&&a>=10&&a<12?"old":3===s&&a>12?"new":"missing"}catch{}return{ok:"missing"!==l,version:e,status:l}}();"missing"===o.status?(console.log(chalk.yellow(" ⚠ Python not detected. For exam practical questions:")),console.log(chalk.gray(" → ")+chalk.bold.cyan("env python")+chalk.gray(" (platform install guide)")),console.log()):"new"===o.status&&(console.log(chalk.yellow(` ⚠ Python ${o.version} may lack CTF wheels. Python 3.12 recommended:`)),console.log(chalk.gray(" → ")+chalk.bold.cyan("env python")+chalk.gray(" (install guide)")),console.log())}if(0===o.attempts)console.log(chalk.white(" New here? Start with ")+chalk.bold.cyan("demo")+chalk.white(" — it takes a few minutes.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.cyan(" demo")+chalk.gray(` ${l}`)),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"));else if(e||n){const e=1===o.attempts?"attempt":"attempts";o.attempts>0&&console.log(chalk.green(" ✓ Demo completed ")+chalk.gray(`(${o.attempts} ${e})`)),n||console.log(chalk.green(" ✓ Environment ready")),console.log(chalk.yellow(" → Enter your exam token to begin.")),console.log(chalk.gray(" (10-char code from your organizer, starts with your country code like ")+chalk.cyan("UA")+chalk.gray(" — case-insensitive)")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.yellow(" exam <token>")+chalk.gray(" Enter exam (primary action — use your organizer-issued token)")),console.log(chalk.gray(" format: ")+chalk.white("exam UAxxxxxxxx")+chalk.gray(" (2-letter country prefix + 8 chars)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Other commands:")),console.log(chalk.white(" demo")+chalk.gray(` ${l}`)),n||console.log(chalk.white(" exam setup")+chalk.gray(" Re-verify tool environment")),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"))}else{const e=1===o.attempts?"attempt":"attempts";console.log(chalk.green(" ✓ Demo completed ")+chalk.gray(`(${o.attempts} ${e}${o.bestPercentage>0?` · best ${o.bestPercentage}%`:""})`)),console.log(chalk.yellow(" → Next: prepare your environment for the real exam.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" demo")+chalk.gray(` ${l}`)),console.log(chalk.bold.yellow(" exam setup")+chalk.gray(" Install tools for national selection (~150MB)")),console.log(chalk.white(" lang")+chalk.gray(" List all supported languages")),console.log(chalk.white(" lang es")+chalk.gray(" Switch language (e.g. lang es, lang zh, lang fr)")),console.log(chalk.gray(" ─────────────────────────────────────────────"))}console.log(chalk.gray(" ")+chalk.gray("Tip: ")+chalk.cyan("help")+chalk.gray(" for commands · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()}export async function startRepl(e,S){process.env.ICOA_INSIDE_REPL="1";const O=n(),E=l(),L=process.exit.bind(process),P=a();if(O.demoCleanedForVersion!==Z){try{const{existsSync:o,unlinkSync:e}=await import("node:fs"),{join:t}=await import("node:path"),{getIcoaDir:l}=await import("./lib/config.js"),n=t(l(),"demo-state.json");o(n)&&e(n)}catch{}s({demoCleanedForVersion:Z})}const{select:q,confirm:oo}=await import("@inquirer/prompts"),eo=O.mode||"",to=[{name:` ${chalk.bold("National Selection")} ${chalk.gray("—")} ${chalk.gray("demo, exam (lightweight)")}`,value:"selection"},{name:` ${chalk.bold("Embodied AI Security")} 🤖 ${chalk.gray("—")} ${chalk.gray("New VLA4CTF! sim demo2 and learn more")}`,value:"embodied"},{name:` ${chalk.bold("International Olympiad")} ${chalk.gray("—")} ${chalk.gray("CTF × AI (~500MB, advanced)")}`,value:"olympiad"},{name:` ${chalk.bold("National/Regional Partner")} ${chalk.gray("—")} ${chalk.gray("organizer tools (tokens, competitions)")}`,value:"organizer"},{name:` ${chalk.gray("About ICOA")} ${chalk.gray("·")} ${chalk.gray("Info & contact")}`,value:"about"}];console.log(chalk.gray(" Use ")+chalk.yellow("↑")+chalk.gray(" or ")+chalk.yellow("↓")+chalk.gray(" to select, ")+chalk.yellow("Enter")+chalk.gray(" to confirm.")),console.log();let lo="";for(;!lo;){const o=await q({message:"Mode",choices:to,default:eo||"selection"});"about"!==o?lo=o:(console.clear(),console.log(),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(chalk.bold.yellow(" ICOA")+chalk.white(" — AI-Native CLI OS for Cyber & AI Security")),console.log(chalk.gray(" Olympiad & Competition · K-12 to University")),console.log(chalk.cyan(" ───────────────────────────────────────────────────")),console.log(),console.log(chalk.bold.white(" What Makes ICOA Different")),console.log(chalk.gray(" · AI-native AI teammate, AI adversary, AI translation")),console.log(chalk.gray(" · CLI OS Complete competition environment in terminal")),console.log(chalk.gray(" · 110 tools pwntools, z3, gdb, nmap, sleuthkit... pre-configured")),console.log(chalk.gray(" · Global scale 15,000+ concurrent exams · 15 languages")),console.log(),console.log(chalk.bold.white(" Competition Format")),console.log(` ${chalk.green.bold("AI4CTF")}${chalk.gray(" [Day 1] AI as teammate — 5hr jeopardy CTF")}`),console.log(` ${chalk.red.bold("CTF4AI")}${chalk.gray(" [Day 2] Challenge AI — adversarial ML, red-team")}`),console.log(` ${chalk.cyan.bold("VLA4CTF")}${chalk.gray(" [Pioneer Round] Embodied AI — attack robot brains (NEW)")}`),console.log(),console.log(chalk.white(" Sydney, Australia")+chalk.gray(" · Jun 27 - Jul 2, 2026 · 40+ countries")),console.log(),console.log(chalk.bold.white(" Organized by")+chalk.gray(" ASRA (Australia) · ICO Foundation Inc")),console.log(chalk.bold.white(" Contact ")+chalk.cyan(" australia@icoa2026.au · accreditation@icoa2026.au")),console.log(chalk.bold.white(" Website ")+chalk.cyan.underline(" https://icoa2026.au")),console.log(chalk.cyan(" ═══════════════════════════════════════════════════")),console.log(),console.log(chalk.gray(" Press ")+chalk.yellow("Enter")+chalk.gray(" to return...")),await new Promise(o=>{const e=t=>{process.stdin.removeListener("data",e),process.stdin.isTTY&&process.stdin.setRawMode&&process.stdin.setRawMode(!1),process.stdin.pause(),o()};process.stdin.isTTY&&process.stdin.setRawMode&&process.stdin.setRawMode(!0),process.stdin.resume(),process.stdin.once("data",e)}),console.clear())}if("olympiad"===lo&&"olympiad"!==eo&&(console.log(),console.log(chalk.yellow(" This mode will download ~500MB of CTF tools and AI models.")),await oo({message:"Continue?",default:!0})||(lo="selection",console.log(chalk.gray(" Switched to National Selection mode.")))),lo!==eo&&s({mode:lo}),console.log(),"olympiad"===lo&&m(Z)){d(Z),console.log(chalk.gray(" Checking competition environment..."));const{execSync:o}=await import("node:child_process"),e=[{name:"pwntools",cmd:'python3 -c "import pwn"'},{name:"z3-solver",cmd:'python3 -c "import z3"'},{name:"numpy",cmd:'python3 -c "import numpy"'},{name:"requests",cmd:'python3 -c "import requests"'}];let t=0;for(const l of e)try{o(l.cmd,{stdio:"ignore"})}catch{t++}if(t>0){console.log(chalk.yellow(` ${t} core libraries missing.`));try{const{confirm:o}=await import("@inquirer/prompts");if(await o({message:" Install competition Python libraries now?",default:!0,theme:{prefix:"",style:{message:o=>chalk.green(o),defaultAnswer:o=>chalk.green(o)}}})){console.log();const{execSync:o}=await import("node:child_process");o("icoa env setup",{stdio:"inherit"})}}catch{console.log(chalk.gray(" Run ")+chalk.white("env setup")+chalk.gray(" later to install."))}console.log()}else console.log(chalk.green(" All core libraries ready.")),console.log()}if(S){const o=y();if(o){const e=Math.floor(o.awaySeconds/60),t=o.awaySeconds%60;console.log(chalk.yellow(` Session resumed. Away: ${e}m ${t}s | Total exits: ${o.exitCount}`)),console.log()}}"selection"===lo?H():"embodied"===lo?(console.log(chalk.cyan.bold(" [Embodied AI Security 🤖]")),console.log(),console.log(chalk.bold.cyan(" VLA4CTF")+chalk.gray(" — ICOA 2026's ")+chalk.bold.white("Pioneer Round")),console.log(chalk.gray(" an independent parallel track alongside the scored main events: ")+chalk.green("AI4CTF")+chalk.gray(" (Day 1) and ")+chalk.red("CTF4AI")+chalk.gray(" (Day 2)")),console.log(),console.log(chalk.white(" Embodied AI is at its ImageNet moment.")),console.log(chalk.gray(" VLA models, MuJoCo physics, real robot arms.")),console.log(chalk.gray(" Real models, real physics, real attack surfaces.")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.yellow(" First time? Try in order: ")+chalk.bold.cyan("① sim")+chalk.gray(" → ")+chalk.bold.cyan("② demo2")+chalk.gray(" → ")+chalk.bold.cyan("③ learn LEARNDEMO01")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.bold.green(" sim")+chalk.gray(" ")+chalk.bold.cyan("①")+chalk.gray(" ")+chalk.bold.yellow("★ WOW")+chalk.gray(" — robot arm replay in seconds")),console.log(chalk.bold.green(" demo2")+chalk.gray(" ")+chalk.bold.cyan("②")+chalk.gray(" ~8 min interactive intro + live MuJoCo sim")),console.log(chalk.bold.green(" learn LEARNDEMO01")+chalk.gray(" ")+chalk.bold.cyan("③")+chalk.gray(" free 11-card intro (paste this command as-is)")),console.log(chalk.bold.green(" learn ")+chalk.bold.yellow("EAxxxxxxxx")+chalk.gray(" full 100/480-card curriculum (team-issued)")),console.log(chalk.bold.green(" exam ")+chalk.bold.yellow("PDxxxxxxxx")+chalk.gray(" Paper D (VLA4CTF) — national selection contestants")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(),console.log(chalk.gray(" Three open tiers: ")+chalk.green("free 11")+chalk.gray(" · ")+chalk.yellow("registered 100")+chalk.gray(" · ")+chalk.bold.magenta("national team 480")+chalk.gray(" (PhD-ready)")),console.log(chalk.gray(" Country team contact: ")+chalk.cyan("australia@icoa2026.au")),console.log(),h(),console.log()):"organizer"===lo?(console.log(chalk.yellow.bold(" [National/Regional Partner]")),console.log(),console.log(chalk.bold.white(" ██╗ ██████╗ ██████╗ █████╗")),console.log(chalk.bold.white(" ██║██╔════╝██╔═══██╗██╔══██╗")),console.log(chalk.bold.white(" ██║██║ ██║ ██║███████║")),console.log(chalk.bold.white(" ██║██║ ██║ ██║██╔══██║")),console.log(chalk.bold.white(" ██║╚██████╗╚██████╔╝██║ ██║")),console.log(chalk.bold.white(" ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝")),console.log(),console.log(chalk.yellow(" International Cyber Olympiad in AI 2026")),console.log(chalk.bold.magenta(" The World's First AI-Native CLI Operating System")),console.log(chalk.bold.magenta(" for Cybersecurity & AI Security Competition")),console.log(chalk.bold.magenta(" and Olympiad for K-12")),console.log(chalk.gray(" Sydney, Australia · Jun 27 - Jul 2, 2026")),console.log(),console.log(chalk.white(" Vision")),console.log(chalk.gray(" Building a global pipeline for youth cyber & AI")),console.log(chalk.gray(" security talent through education and competition.")),console.log(),console.log(chalk.white(" Capacity")),console.log(chalk.gray(" 15,000+ concurrent online examinations")),console.log(chalk.gray(" National selection, training, and education support")),console.log(),console.log(chalk.white(" Olympic Spirit")),console.log(chalk.gray(" Excellence · Friendship · Respect")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" New country accreditation & support:")),console.log(chalk.cyan(" australia@icoa2026.au")),console.log(chalk.cyan(" accreditation@icoa2026.au")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(),E?(console.log(chalk.green(` Logged in as ${O.userName}`)),console.log(chalk.white(" exam list")+chalk.gray(" Manage exams")),console.log(chalk.white(" logout")+chalk.gray(" Disconnect"))):console.log(chalk.white(" join <url>")+chalk.gray(" Connect to manage exams")),console.log(),h(),console.log()):P&&!c()?(console.log(chalk.red(" Token was activated on a different device.")),console.log(chalk.gray(" Contact organizer for assistance.")),console.log()):E?(console.log(chalk.green.bold(` Welcome back, ${O.userName}!`)),console.log(chalk.gray(` Connected to ${O.ctfdUrl}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Ready to compete? Start here:")),console.log(),console.log(chalk.bold.cyan(" challenges")+chalk.gray(" Browse challenges by category")),console.log(chalk.white(" status")+chalk.gray(" Your score & hint budget")),console.log(chalk.white(" scoreboard")+chalk.gray(" Live rankings")),console.log(chalk.white(" help")+chalk.gray(" Full command list")),console.log(),console.log(chalk.gray(" Tool environment:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("help")+chalk.gray(" · ")+w()+chalk.gray(" · ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+chalk.cyan("quit")+chalk.gray(" closes")),console.log()):P?(J(),console.log(chalk.green.bold(" Welcome, competitor!")),console.log(chalk.gray(` Workspace: ${V}`)),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" Get started:")),console.log(),console.log(chalk.white(" Step 1 ")+chalk.bold.cyan("join <url>")+chalk.gray(" Connect to competition server")),console.log(chalk.white(" Step 2 ")+chalk.bold.cyan("challenges")+chalk.gray(" Browse & solve challenges")),console.log(chalk.white(" Step 3 ")+chalk.bold.cyan("ai4ctf")+chalk.gray(" Ask AI when stuck")),console.log(),console.log(chalk.gray(" Before Step 1 — make sure your tools are ready:")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(),console.log(chalk.gray(" Also: ")+chalk.white("help")+chalk.gray(" all commands")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+w()+chalk.gray(" · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()):(console.log(chalk.bold.white(" Welcome to ICOA CLI — International Olympiad")),console.log(),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.white(" To begin, activate your competition token:")),console.log(),console.log(chalk.bold.cyan(" activate <token>")),console.log(),console.log(chalk.gray(" While waiting, explore:")),console.log(chalk.white(" ref linux")+chalk.gray(" Quick reference for Linux")),console.log(chalk.white(" ref web")+chalk.gray(" Quick reference for Web")),console.log(chalk.white(" env")+chalk.gray(" See which of the 110 CTF tools are installed")),console.log(chalk.white(" env setup")+chalk.gray(" Install anything missing (~5 min, one-time)")),console.log(chalk.white(" help")+chalk.gray(" All available commands")),console.log(chalk.gray(" ─────────────────────────────────────────────")),console.log(chalk.gray(" Tip: ")+chalk.cyan("Ctrl+C")+chalk.gray(" pauses · ")+w()+chalk.gray(" · ")+chalk.cyan("quit")+chalk.gray(" closes CLI")),console.log()),e.exitOverride(),e.configureOutput({writeErr:()=>{},writeOut:o=>{console.log(o)}});const no=o({input:process.stdin,output:process.stdout,prompt:Y(),terminal:!0});f(no);let so=!1;p(!0),M();const ao=no.prompt.bind(no);no.prompt=o=>{b()||v()||A()||k()||no.setPrompt(Y()),ao(o)},no.prompt(),no.on("line",async o=>{if(so)return;const l=o.trim();if(!l)return no.setPrompt(b()?chalk.magenta("ai4ctf> "):Y()),void no.prompt();if("menu"===l||"menu confirm"===l)return $()&&"menu confirm"!==l?(console.log(),console.log(chalk.yellow(" Real exam active. Progress is auto-saved.")),console.log(chalk.gray(" To return to main menu anyway, type ")+chalk.white("menu confirm")),console.log(),void no.prompt()):void u(no);if(b()){so=!0;const o=await x(l);return so=!1,"exit"===o&&no.setPrompt(Y()),void no.prompt()}if(v()){so=!0;const o=await C(l);return so=!1,"exit"!==o&&"solved"!==o||no.setPrompt(Y()),void no.prompt()}if(A()){so=!0;const o=await I(l);return so=!1,"exit"===o&&no.setPrompt(Y()),no.setPrompt(A()?chalk.bold.cyan("vla4ctf> "):Y()),void no.prompt()}if(F(l),"exit"===l)return T()?(console.log(),console.log(chalk.yellow(" ⚠ An exam is in progress.")),console.log(chalk.white(" To return to menu without losing progress, type: ")+chalk.bold.cyan("back")),console.log(chalk.white(" To fully close ICOA CLI, type: ")+chalk.bold.cyan("quit")),console.log(chalk.gray(" Your progress is auto-saved either way.")),console.log(),void no.prompt()):(console.log(),console.log(chalk.gray(" ")+chalk.white("exit")+chalk.gray(" returns to the main menu. To fully close ICOA CLI, type ")+chalk.bold.cyan("quit")+chalk.gray(".")),"selection"===lo&&H(),void no.prompt());if("quit"===l||"q"===l||"quit confirm"===l){const o=T();return o&&"demo-free"!==o.session.examId&&"quit confirm"!==l?(console.log(),console.log(chalk.yellow(" ⚠ A real exam is in progress.")),console.log(chalk.gray(" Your answers are auto-saved on the server, but the exam timer keeps ticking")),console.log(chalk.gray(" on the server side even if you close the CLI.")),console.log(),console.log(chalk.white(" To leave the CLI but keep the exam alive, type: ")+chalk.bold.cyan("back")),console.log(chalk.gray(" (recommended — you can resume with ")+chalk.cyan("exam q 1")+chalk.gray(" after relaunching icoa)")),console.log(),console.log(chalk.white(" To really close ICOA CLI, type: ")+chalk.bold.cyan("quit confirm")),console.log(),void no.prompt()):(o&&"demo-free"===o.session.examId&&(console.log(),console.log(chalk.gray(" Demo paused. Resume with: ")+chalk.white("demo")+chalk.gray(" (fresh) or ")+chalk.white("exam q 1")+chalk.gray(" (continue)."))),U(),g(),console.log(chalk.gray(" Session saved. Use ")+chalk.white("icoa --resume")+chalk.gray(" to continue.")),R(),void L(0))}if("back"===l){const o=T(),e=o&&"demo-free"!==o.session.examId,t=o&&"demo-free"===o.session.examId&&(()=>{const e=new Date(o.session.startedAt||0).getTime();return Date.now()-e<18e5})();if(e)console.log(),console.log(chalk.gray(" Exam paused. Your progress is saved.")),console.log(chalk.white(" Resume: exam q 1")+chalk.gray(" · ")+chalk.white("exam review")+chalk.gray(" · ")+chalk.white("exam submit")),console.log();else if(t){const e=Object.keys(o.answers).length,t=o.session.questionCount;console.log(),console.log(chalk.gray(` Demo paused (${e}/${t} answered). Resume with: `)+chalk.white("exam q 1")),console.log(chalk.gray(" Or type ")+chalk.white("demo")+chalk.gray(" to restart.")),console.log()}else{if(o&&"demo-free"===o.session.examId){const{clearExamState:o}=await import("./lib/exam-state.js");o("demo-free")}const e=n();fetch("https://practice.icoa2026.au/api/icoa/demo-stats",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({type:"post-report-back",lang:e.language||"en",timestamp:(new Date).toISOString()}),signal:AbortSignal.timeout(5e3)}).catch(()=>{}),"selection"===lo?H():console.log(chalk.gray(" Already at main menu."))}return void no.prompt()}if("help"===l||"?"===l){if(T()){so=!0;try{await e.parseAsync(["node","icoa","exam","help"])}catch{}return so=!1,void no.prompt()}return function(o,e="olympiad"){console.log(),"selection"===e||"organizer"===e?(console.log(chalk.bold.white(" Exam")),console.log(chalk.white(" join <url> ")+chalk.gray("Connect to exam server")),console.log(chalk.white(" exam list ")+chalk.gray("Available exams")),console.log(chalk.white(" exam start <id> ")+chalk.gray("Begin an exam")),console.log(chalk.white(" exam q [n] ")+chalk.gray("View questions")),console.log(chalk.white(" exam answer <n> <X> ")+chalk.gray("Answer question")),console.log(chalk.white(" exam review ")+chalk.gray("Review all answers")),console.log(chalk.white(" exam submit ")+chalk.gray("Submit for grading")),console.log(chalk.white(" exam result ")+chalk.gray("View your score")),console.log(),console.log(chalk.bold.white(" System")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference")),console.log(chalk.white(" setup ")+chalk.gray("Settings / switch mode")),console.log(chalk.white(" lang [code] ")+chalk.gray("Switch language")),console.log(chalk.white(" clear ")+chalk.gray("Clear screen")),console.log(chalk.white(" exit ")+chalk.gray("Quit")),console.log()):o?(console.log(chalk.cyan(" ═══════════════════════════════════════════════")),console.log(chalk.bold.white(" How it works")),console.log(),console.log(chalk.gray(" 1. Browse ")+chalk.white("challenges")+chalk.gray(" and pick one")),console.log(chalk.gray(" 2. ")+chalk.white("open <id>")+chalk.gray(" to read the challenge")),console.log(chalk.gray(" 3. Use ")+chalk.white("ai4ctf")+chalk.gray(" to chat with AI when stuck")),console.log(chalk.gray(" 4. ")+chalk.white("submit <id> icoa{flag}")+chalk.gray(" to score points")),console.log(chalk.gray(" 5. Check ")+chalk.white("scoreboard")+chalk.gray(" to track your rank")),console.log(chalk.cyan(" ═══════════════════════════════════════════════")),console.log(),console.log(chalk.bold.white(" Competition")),console.log(chalk.white(" join <url> ")+chalk.gray("Connect to CTFd")),console.log(chalk.white(" challenges (ch) ")+chalk.gray("List challenges by category")),console.log(chalk.white(" open <id> ")+chalk.gray("Read challenge + get next steps")),console.log(chalk.white(" submit <id> <flag> ")+chalk.gray("Submit a flag")),console.log(chalk.white(" scoreboard (sb) ")+chalk.gray("Live rankings")),console.log(chalk.white(" status ")+chalk.gray("Your score, budget & timer")),console.log(chalk.white(" time ")+chalk.gray("Countdown timer")),console.log(),console.log(chalk.bold.white(" AI Teammate")+chalk.gray(" — 3 levels, use wisely")),console.log(chalk.white(' hint "question" ')+chalk.gray("Level A — General guidance (50 uses)")),console.log(chalk.white(' hint-b "question" ')+chalk.gray("Level B — Deep analysis (10 uses)")),console.log(chalk.white(' hint-c "question" ')+chalk.gray("Level C — Critical assist (2 uses)")),console.log(chalk.white(" hint budget ")+chalk.gray("Check remaining uses")),console.log(chalk.white(" ai4ctf ")+chalk.gray("Free-chat with AI (no limit)")),console.log(),console.log(chalk.bold.white(" Tools")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference (linux, web, crypto...)")),console.log(chalk.white(" shell ")+chalk.gray("Docker sandbox")),console.log(chalk.white(" files <id> ")+chalk.gray("Download challenge files")),console.log(chalk.white(" connect <id> ")+chalk.gray("Connect to remote target")),console.log(chalk.white(" note [text] ")+chalk.gray("Personal notepad")),console.log(chalk.white(" log ")+chalk.gray("Session history")),console.log(),console.log(chalk.bold.white(" System")),console.log(chalk.white(" setup ")+chalk.gray("Configure settings")),console.log(chalk.white(" lang [code] ")+chalk.gray("Switch language (15 supported)")),console.log(chalk.white(" logout ")+chalk.gray("Disconnect")),console.log(chalk.white(" clear ")+chalk.gray("Clear screen")),console.log(chalk.white(" exit ")+chalk.gray("Quit (session saved)")),console.log()):(console.log(chalk.bold.yellow(" Restricted Mode — activate with a token to unlock all commands")),console.log(),console.log(chalk.white(" activate <token> ")+chalk.gray("Unlock full access")),console.log(chalk.white(" ref [topic] ")+chalk.gray("Quick reference")),console.log(chalk.white(" exit ")+chalk.gray("Quit")),console.log())}(a(),lo),void no.prompt()}if("more help"===l.toLowerCase()&&T()){so=!0;try{await e.parseAsync(["node","icoa","exam","more-help"])}catch{}return so=!1,void no.prompt()}if("continue"===l.toLowerCase())return console.log(),console.log(chalk.green.bold(" ═══ AI4CTF — AI as Your Teammate ═══")),console.log(),console.log(chalk.white(" In AI4CTF, you solve cybersecurity challenges")),console.log(chalk.white(" with AI by your side.")),console.log(),console.log(chalk.white(" In competition, you get AI help at 3 levels:")),console.log(chalk.yellow(" hint a")+chalk.gray(" General guidance (50 uses)")),console.log(chalk.yellow(" hint b")+chalk.gray(" Deep analysis (10 uses)")),console.log(chalk.yellow(" hint c")+chalk.gray(" Critical assist (2 uses)")),console.log(),console.log(chalk.white(" Try it now! Type: ")+chalk.bold.green("ai4ctf")),console.log(chalk.gray(' Chat freely with your AI teammate. Type "exit" when done.')),console.log(),console.log(chalk.gray(" After ai4ctf, try: ")+chalk.bold.red("ctf4ai")+chalk.gray(' — trick the AI into saying "koala"')),console.log(),void no.prompt();if(/^ICOA-[A-Z]{2,3}-\d{1,6}$/i.test(l.trim())){so=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim()])}catch{}return so=!1,void no.prompt()}if(/^[A-Z]{2}[0-9A-HJKMNP-TV-Z]{8}$/i.test(l.trim())){so=!0;try{await e.parseAsync(["node","icoa","exam","token",l.trim().toUpperCase()])}catch{}return so=!1,void no.prompt()}const s=l.match(/^exam\s+([A-Z]{2}[0-9A-HJKMNP-TV-Z]{8})$/i);if(s){so=!0;try{await e.parseAsync(["node","icoa","exam","token",s[1].toUpperCase()])}catch{}return so=!1,void no.prompt()}const y=l.match(/^exam\s+([A-Z]{2,3})$/i);if(y){so=!0;try{await e.parseAsync(["node","icoa","exam","list",y[1]])}catch{}return so=!1,void no.prompt()}if("clear"===l||"cls"===l)return console.clear(),void no.prompt();if(l.startsWith("activate ")){const o=l.slice(9).trim(),e=r(o);return"ok"===e?console.log(chalk.green(" Access granted! Token bound to this device.")):"already_bound"===e?(console.log(),console.log(chalk.red(" Token already activated on a different device.")),console.log(chalk.gray(" Each token binds to the first device that uses it. If you lost the device,")),console.log(chalk.gray(" contact your proctor to have the token re-issued for a new device."))):(console.log(),console.log(chalk.red(" Token not recognized.")),console.log(chalk.gray(" Possible reasons:")),console.log(chalk.white(" • ")+chalk.gray("Typo — tokens are case-insensitive, 10 chars, start with a 2-letter country code (e.g. ")+chalk.cyan("UAK7M2R9Q4")+chalk.gray(")")),console.log(chalk.white(" • ")+chalk.gray("Expired — ask your proctor or organizer for a fresh token")),console.log(chalk.white(" • ")+chalk.gray("Network — verify connection to ")+chalk.cyan("practice.icoa2026.au")),console.log(chalk.gray(" Still stuck? type ")+chalk.cyan("help")+chalk.gray(" or try ")+chalk.cyan("exam demo")+chalk.gray(" for a free practice round."))),console.log(),void no.prompt()}if("activate"===l)return console.log(chalk.gray(" Usage: ")+chalk.white("activate <token>")),console.log(),void no.prompt();const m=T();if(m){const o=l.toUpperCase().trim(),t=o=>{const e=m.questions.find(e=>e.number===o);return!!e&&("ai4ctf"===e.type||"ctf4ai"===e.type||e.options&&!e.options.A&&!e.options.B)},n=o=>{const e="demo-free"!==m.session.examId,t=e&&o>=39?"ctf4ai":e&&o>=31?"ai4ctf":null;console.log(),console.log(chalk.yellow(` Q${o} is a practical question — letters (A/B/C/D) don't apply here.`)),t?(console.log(chalk.white(" Enter the AI chat for this question: ")+chalk.bold.cyan(t)),console.log(chalk.gray(" Or submit a flag directly: ")+chalk.green(`exam answer ${o} ICOA{your_flag}`))):console.log(chalk.gray(" Submit a flag: ")+chalk.green(`exam answer ${o} ICOA{your_flag}`)),console.log()};if(/^[ABCD]$/.test(o)){const l=m._lastQ||1;if(t(l))return n(l),void no.prompt();so=!0;try{await e.parseAsync(["node","icoa","exam","answer",String(l),o])}catch{}return so=!1,void no.prompt()}const s=o.match(/^(\d+)\s+([ABCD])$/);if(s){const o=parseInt(s[1],10);if(t(o))return n(o),void no.prompt();so=!0;try{await e.parseAsync(["node","icoa","exam","answer",s[1],s[2]])}catch{}return so=!1,void no.prompt()}}const d=l.split(/\s+/)[0].toLowerCase(),p=/^python3?(\.\d+)?$/.test(d),h=l.startsWith("!")||d.startsWith("!")||p;if("embodied"===lo&&!h&&!["demo2","learn","exam","vla4ctf","lang","ref","setup","env","sim"].includes(d))return console.log(chalk.gray(" Not available in Embodied AI Security mode.")),console.log(chalk.white(" Try ")+chalk.bold.cyan("demo2")+chalk.gray(" (intro) · ")+chalk.bold.cyan("learn")+chalk.gray(" (curriculum) · ")+chalk.bold.cyan("exam <PD-token>")+chalk.gray(" (Paper D)")),console.log(),void no.prompt();if("selection"===lo&&!h&&!["exam","demo","retry","nations","next","prev","continue","setup","lang","ref","ai4ctf","ctf4ai","mark","unmark","review","submit","env","sim"].includes(d)){if(console.log(chalk.gray(" Not available in Selection mode.")),m){const o=m._lastQ||1;console.log(chalk.white(` Resume exam: exam q ${o}`)+chalk.gray(" · ")+chalk.white("A/B/C/D")+chalk.gray(" to answer"))}else console.log(chalk.gray(" Try: demo · setup to switch mode"));return console.log(),void no.prompt()}if("organizer"===lo&&!["join","exam","demo","retry","next","prev","logout","setup","lang","ref","ctf","mark","unmark","review","submit"].includes(d))return console.log(chalk.gray(" Not available in Organizer mode. Switch via: setup")),console.log(),void no.prompt();if(!("olympiad"!==lo||a()&&c()||i(d)))return console.log(chalk.yellow(" Restricted mode. ")+chalk.gray("Enter your access token:")),console.log(chalk.white(" activate <token>")),console.log(),console.log(chalk.gray(" Free commands: ")+chalk.white("ref [topic]")+chalk.gray(", ")+chalk.white("help")+chalk.gray(", ")+chalk.white("exit")),console.log(),void no.prompt();if(!["join","activate","challenges","ch","open","submit","flag","scoreboard","sb","status","time","ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","demo","retry","nations","next","prev","continue","logout","ctf4ai","mark","unmark","review","submit","learn","demo2","vla4ctf","theme","sim"].includes(d)){if(G.has(d))return console.log(chalk.red(` Blocked: ${d} is not allowed during competition.`)),console.log(),void no.prompt();if(/(?:^|\s)(?:\/(?!home\/|Users\/|tmp\/)|\.\.\/|~\/)/.test(l)&&!l.startsWith("cd ")){const o=/(?:^|\s)\/(?!home\/\w+\/icoa-workspace|Users\/\w+\/icoa-workspace|tmp\/)/.test(l),e=/\.\./.test(l);if(o||e)return console.log(chalk.red(" Blocked: access outside workspace is not allowed.")),console.log(chalk.gray(` Workspace: ${V}`)),console.log(),void no.prompt()}let o=l.startsWith("!")?l.slice(1).trim():l;if("darwin"===process.platform){const e="/opt/homebrew/opt/python@3.12/bin/python3.12";o=o.replace(/^python3?\s/,`${e} `).replace(/^(python3|python)$/,e)}else if("win32"===process.platform){const e=(()=>{try{return t("py -3 --version",{stdio:["ignore","ignore","ignore"],timeout:1500}),"py -3"}catch{}return"python"})();o=o.replace(/^python3?(\.\d+)?\s/,`${e} `).replace(/^python3?(\.\d+)?$/,e)}else{const e=(()=>{try{return t("which python3.12",{stdio:"ignore"}),"python3.12"}catch{return"python3"}})();o=o.replace(/^python\s/,`${e} `).replace(/^python$/,e)}const e=J();/^(\S*python3?(\.\d+)?)\s*$/.test(o)&&(o=`PYTHONSTARTUP="${function(){const o=_(Q(),".icoa");W(o)||z(o,{recursive:!0});const e=_(o,"python-startup.py");return W(e)||B(e,"# ICOA exam interactive startup — auto-loaded by PYTHONSTARTUP\nimport base64, struct, hashlib, re, json, os, sys, binascii\ntry: import requests\nexcept ImportError: pass\ntry: from Crypto.Cipher import AES\nexcept ImportError: pass\ntry: from Crypto.Util.Padding import pad, unpad\nexcept ImportError: pass\ntry: from pwn import xor, p32, u32, p64, u64\nexcept ImportError: pass\ntry: import bs4\nexcept ImportError: pass\ntry: import numpy as np\nexcept ImportError: pass\n"),e}()}" ${o}`,console.log(),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log(chalk.bold.white(" Python ready — ICOA exam toolkit pre-loaded")),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log(),console.log(chalk.white(" Already imported: ")+chalk.gray("base64, struct, hashlib, re, json, binascii")),console.log(chalk.white(" Also available: ")+chalk.gray("requests, bs4, numpy, AES, pad/unpad, xor, p32/u32/p64/u64")),console.log(),console.log(chalk.yellow(" Quick examples:")),console.log(chalk.gray(' base64.b64decode("aGVsbG8=") ')+chalk.gray("# decode base64")),console.log(chalk.gray(' bytes.fromhex("48656c6c6f") ')+chalk.gray("# hex → bytes")),console.log(chalk.gray(' "ICOA{x}".encode() ')+chalk.gray("# str → bytes")),console.log(chalk.gray(" [chr(c) for c in [73,67,79,65]] ")+chalk.gray("# ASCII codes")),console.log(chalk.gray(' xor(bytes.fromhex("0a2b"), b"IC") ')+chalk.gray("# pwntools XOR")),console.log(),console.log(chalk.gray(" Exit: ")+chalk.white("exit()")+chalk.gray(" or Ctrl-D")),console.log(chalk.cyan(" ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━")),console.log()),so=!0;try{N()&&await j()?await D(o,no):await X(o,no,e)}catch{console.log(chalk.yellow(` Command failed: ${d}`))}return so=!1,console.log(),void no.prompt()}so=!0;const w=l.trim(),f=w.toLowerCase();let k,S=null,O="";if(m)if("submit"===f)S="final";else if(f.startsWith("submit ")){let o=w.slice(7).trim();/^submit\s+/i.test(o)&&(o=o.replace(/^submit\s+/i,"").trim()),o=o.replace(/^["'`]+|["'`]+$/g,"").trim(),o&&/^ICOA\{[^}]*\}?$/i.test(o)&&(S="flag",O=o)}else/^ICOA\{[^}]+\}$/i.test(w)&&(S="flag",O=w);k="final"===S?["exam","submit"]:"flag"===S?["exam","answer",String(m?._lastQ||1),O]:function(o){const e=o.split(/\s+/),t=e[0].toLowerCase(),l=e.slice(1),n={demo:["exam","demo"],retry:["exam","demo-retry"],nations:["exam","nations"],next:["exam","next"],prev:["exam","prev"],mark:["exam","mark",...l],unmark:["exam","unmark",...l],review:["exam","review"],logout:["ctf","logout"],join:["ctf","join",...l],activate:["ctf","activate",...l],challenges:["ctf","challenges"],ch:["ctf","challenges"],open:["ctf","open",...l],submit:["ctf","submit",...l],flag:["ctf","submit",...l],scoreboard:["ctf","scoreboard",...l],sb:["ctf","scoreboard",...l],status:["ctf","status"],time:["ctf","time"]};return n[t]?n[t]:["ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","model","ctf","exam","ctf4ai"].includes(t)?[t,...l]:e}(l);const E="ctf"===k[0]&&"join"===k[1];E&&no.pause(),process.exit=()=>{throw new Error(K)};try{await e.parseAsync(["node","icoa",...k])}catch(o){const e=o instanceof Error?o.message:String(o);if(e===K);else if(e.includes("commander.unknownCommand")){const{distance:o}=await import("fastest-levenshtein"),e=["ctf","ref","shell","files","connect","note","log","lang","setup","env","ai4ctf","exam","ctf4ai","theme","clear","cls","quit","exit","back","menu","help","continue","activate","demo","challenges","status","scoreboard","join","logout"],t=d.split(/\s+/)[0]||d;let l={word:"",dist:1/0};for(const n of e){const e=o(t.toLowerCase(),n);e<l.dist&&(l={word:n,dist:e})}console.log(chalk.yellow(` Unknown command: ${d}.`)),l.dist>0&&l.dist<=2&&console.log(chalk.gray(" Did you mean: ")+chalk.bold.cyan(l.word)+chalk.gray("?")),console.log(chalk.gray(" Type ")+chalk.cyan("help")+chalk.gray(" for the full command list."))}else e.includes("commander.")||(e.includes("fetch failed")||e.includes("ECONNREFUSED")||e.includes("ETIMEDOUT"))&&console.log(chalk.yellow(" Network error. Check your connection."))}finally{process.exit=L,so=!1,E&&no.resume()}b()?no.setPrompt(chalk.magenta("ai4ctf> ")):v()?no.setPrompt(chalk.red("ctf4ai> ")):A()&&no.setPrompt(chalk.bold.cyan("vla4ctf> ")),console.log(),no.prompt()}),no.on("SIGINT",()=>{if(console.log(),b()||v())console.log(chalk.yellow(" Ctrl+C did not close ICOA CLI — you are still in the AI chat.")),console.log(chalk.white(" Type ")+chalk.bold.cyan("exit")+chalk.white(" to leave the chat and return to the menu."));else if(T()){const o="demo-free"!==T().session.examId;console.log(chalk.yellow(" Ctrl+C did NOT close ICOA CLI.")),console.log(chalk.gray(` Your ${o?"exam":"demo"} is paused and every answer is auto-saved.`)),console.log(),console.log(chalk.white(" Resume: ")+chalk.cyan("exam q 1")+chalk.gray(" · Back to menu: ")+chalk.cyan("back")+chalk.gray(" · Close CLI: ")+chalk.cyan(o?"quit confirm":"quit"))}else console.log(chalk.yellow(" Ctrl+C did not close ICOA CLI — you are still at the ")+chalk.cyan("icoa>")+chalk.yellow(" prompt.")),console.log(chalk.gray(" Keep typing — ")+chalk.cyan("help")+chalk.gray(" lists commands. (Only ")+chalk.cyan("quit")+chalk.gray(" or Ctrl+D actually close the CLI.)"));console.log(),no.prompt()}),no.on("close",()=>{U(),g(),R(),L(0)})}function X(o,t,l){return new Promise(n=>{const s=process.stdin,a=!!s.isTTY&&!!s.isRaw;if(t.pause(),s.isTTY&&"function"==typeof s.setRawMode)try{s.setRawMode(!1)}catch{}const r=e(o,{shell:!0,stdio:"inherit",cwd:l||process.cwd()}),i=()=>{if(s.isTTY&&"function"==typeof s.setRawMode&&a)try{s.setRawMode(!0)}catch{}t.resume(),n()};r.on("close",i),r.on("error",i)})}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "icoa-cli",
|
|
3
|
-
"version": "2.19.
|
|
3
|
+
"version": "2.19.159",
|
|
4
4
|
"description": "ICOA CLI — The world's first CLI-native cyber & AI security olympiad terminal: AI4CTF (Day 1), CTF4AI (Day 2), VLA4CTF (Pioneer Round — embodied AI)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|