@unotest/web 0.17.0 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- const _0x583bb3=_0x18a0;(function(_0x4760ac,_0x236c58){const _0x2c46e0={_0x189164:0x12e,_0x27429c:0x11b,_0x43d19d:0x129,_0x2fd112:0x12b,_0x1bba32:0x140,_0x5a7850:0x114,_0x1e0e87:0x12c,_0x3fa8a3:0x126,_0x53ea0f:0x12f},_0x56a8f9=_0x18a0,_0x313564=_0x4760ac();while(!![]){try{const _0x1869b0=-parseInt(_0x56a8f9(0x135))/0x1+-parseInt(_0x56a8f9(0x11f))/0x2*(parseInt(_0x56a8f9(_0x2c46e0._0x189164))/0x3)+parseInt(_0x56a8f9(_0x2c46e0._0x27429c))/0x4*(parseInt(_0x56a8f9(_0x2c46e0._0x43d19d))/0x5)+parseInt(_0x56a8f9(_0x2c46e0._0x2fd112))/0x6*(-parseInt(_0x56a8f9(_0x2c46e0._0x1bba32))/0x7)+-parseInt(_0x56a8f9(_0x2c46e0._0x5a7850))/0x8*(parseInt(_0x56a8f9(_0x2c46e0._0x1e0e87))/0x9)+parseInt(_0x56a8f9(_0x2c46e0._0x3fa8a3))/0xa*(-parseInt(_0x56a8f9(0x136))/0xb)+parseInt(_0x56a8f9(_0x2c46e0._0x53ea0f))/0xc;if(_0x1869b0===_0x236c58)break;else _0x313564['push'](_0x313564['shift']());}catch(_0x16bdb5){_0x313564['push'](_0x313564['shift']());}}}(_0x53d5,0xa7b16));var __defProp=Object[_0x583bb3(0x139)],__name=(_0x3b9580,_0x4381c2)=>__defProp(_0x3b9580,_0x583bb3(0x12a),{'value':_0x4381c2,'configurable':!![]});import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){for(const _0x3ea7d7 of[probeChrome,probeEdge,probeChromeBeta]){const _0x18dff3=_0x3ea7d7();if(_0x18dff3['channel']!==null)return _0x18dff3;}return{'channel':null};}__name(probeSystemBrowser,'probeSystemBrowser');function probeChrome(){const _0x31b0ea={_0x15dcb1:0x137},_0x29bc13=_0x583bb3,_0x5afaf0=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x5afaf0)return{'channel':_0x29bc13(0x119),'path':_0x5afaf0,'label':_0x29bc13(_0x31b0ea._0x15dcb1)};return{'channel':null};}__name(probeChrome,_0x583bb3(0x116));function probeEdge(){const _0x5513ba={_0x5ef297:0x112},_0x59d7cf=_0x583bb3,_0x2a7ed4=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x2a7ed4)return{'channel':_0x59d7cf(_0x5513ba._0x5ef297),'path':_0x2a7ed4,'label':_0x59d7cf(0x143)};return{'channel':null};}function _0x18a0(_0x63d81a,_0x542eff){_0x63d81a=_0x63d81a-0x112;const _0x53d576=_0x53d5();let _0x18a095=_0x53d576[_0x63d81a];if(_0x18a0['KDCLDt']===undefined){var _0x3483a3=function(_0x1f7c44){const _0x346606='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3b9580='',_0x4381c2='';for(let _0x3ea7d7=0x0,_0x18dff3,_0x5afaf0,_0x2a7ed4=0x0;_0x5afaf0=_0x1f7c44['charAt'](_0x2a7ed4++);~_0x5afaf0&&(_0x18dff3=_0x3ea7d7%0x4?_0x18dff3*0x40+_0x5afaf0:_0x5afaf0,_0x3ea7d7++%0x4)?_0x3b9580+=String['fromCharCode'](0xff&_0x18dff3>>(-0x2*_0x3ea7d7&0x6)):0x0){_0x5afaf0=_0x346606['indexOf'](_0x5afaf0);}for(let _0xf02f1e=0x0,_0x227653=_0x3b9580['length'];_0xf02f1e<_0x227653;_0xf02f1e++){_0x4381c2+='%'+('00'+_0x3b9580['charCodeAt'](_0xf02f1e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4381c2);};_0x18a0['CwlHqX']=_0x3483a3,_0x18a0['wSVnvM']={},_0x18a0['KDCLDt']=!![];}const _0x30c885=_0x53d576[0x0],_0x43b54e=_0x63d81a+_0x30c885,_0x33cdc2=_0x18a0['wSVnvM'][_0x43b54e];return!_0x33cdc2?(_0x18a095=_0x18a0['CwlHqX'](_0x18a095),_0x18a0['wSVnvM'][_0x43b54e]=_0x18a095):_0x18a095=_0x33cdc2,_0x18a095;}__name(probeEdge,_0x583bb3(0x13e));function probeChromeBeta(){const _0x238df7=_0x583bb3,_0xf02f1e=firstExistingPath(CHROME_BETA_PATHS);if(_0xf02f1e)return{'channel':_0x238df7(0x11d),'path':_0xf02f1e,'label':'Google\x20Chrome\x20Beta'};return{'channel':null};}__name(probeChromeBeta,_0x583bb3(0x133));var CHROME_PATHS=((()=>{const _0x1c88a3={_0x526914:0x13b,_0x5d4f88:0x141,_0x3ea763:0x13a,_0x214561:0x130,_0x29a3e0:0x11a,_0x554c0c:0x118},_0x5b6ae2=_0x583bb3;switch(process[_0x5b6ae2(_0x1c88a3._0x526914)]){case _0x5b6ae2(0x123):return[_0x5b6ae2(_0x1c88a3._0x5d4f88)];case _0x5b6ae2(_0x1c88a3._0x3ea763):return[process[_0x5b6ae2(_0x1c88a3._0x214561)][_0x5b6ae2(0x11e)]+_0x5b6ae2(_0x1c88a3._0x29a3e0),process['env'][_0x5b6ae2(0x13c)]+_0x5b6ae2(0x11a),process['env'][_0x5b6ae2(_0x1c88a3._0x554c0c)]+_0x5b6ae2(0x11a)];default:return[_0x5b6ae2(0x117),'/usr/bin/google-chrome-stable','/snap/bin/google-chrome',_0x5b6ae2(0x132),_0x5b6ae2(0x13d)];}})()),CHROME_BIN_NAMES=[_0x583bb3(0x131),_0x583bb3(0x142),'chromium','chromium-browser'],EDGE_PATHS=((()=>{const _0x149c4e={_0x270924:0x13b,_0x49d0b5:0x13a,_0x36c415:0x130,_0x217d7a:0x13c,_0x4f368d:0x115},_0x201827=_0x583bb3;switch(process[_0x201827(_0x149c4e._0x270924)]){case _0x201827(0x123):return[_0x201827(0x127)];case _0x201827(_0x149c4e._0x49d0b5):return[process[_0x201827(_0x149c4e._0x36c415)][_0x201827(0x11e)]+_0x201827(0x138),process[_0x201827(0x130)][_0x201827(_0x149c4e._0x217d7a)]+_0x201827(0x138)];default:return[_0x201827(0x124),_0x201827(_0x149c4e._0x4f368d)];}})()),EDGE_BIN_NAMES=[_0x583bb3(0x13f),_0x583bb3(0x11c)],CHROME_BETA_PATHS=((()=>{const _0x414a53={_0x4cb743:0x130,_0x55ea01:0x12d},_0x45d20c=_0x583bb3;switch(process['platform']){case _0x45d20c(0x123):return['/Applications/Google\x20Chrome\x20Beta.app/Contents/MacOS/Google\x20Chrome\x20Beta'];case'win32':return[process[_0x45d20c(_0x414a53._0x4cb743)][_0x45d20c(0x11e)]+_0x45d20c(_0x414a53._0x55ea01)];default:return['/usr/bin/google-chrome-beta'];}})());function firstExistingPath(_0x227653){const _0x3e191f=_0x583bb3;for(const _0x3a795b of _0x227653){if(!_0x3a795b||_0x3a795b[_0x3e191f(0x120)](_0x3e191f(0x134)))continue;if(existsSync(_0x3a795b))return _0x3a795b;}return null;}__name(firstExistingPath,_0x583bb3(0x128));function whichOf(_0x1da35c){const _0xaf1d83={_0x3c9f8b:0x13a,_0x14a07d:0x122,_0x4edd74:0x125,_0x1c9424:0x121},_0xc6915f=_0x583bb3;if(process['platform']===_0xc6915f(_0xaf1d83._0x3c9f8b))return void 0x0;for(const _0x30292f of _0x1da35c){try{const _0x3c495b=execFileSync(_0xc6915f(_0xaf1d83._0x14a07d),[_0x30292f],{'encoding':_0xc6915f(_0xaf1d83._0x4edd74)})[_0xc6915f(0x113)]();if(_0x3c495b[_0xc6915f(_0xaf1d83._0x1c9424)]>0x0&&existsSync(_0x3c495b))return _0x3c495b;}catch{}}return void 0x0;}__name(whichOf,'whichOf');function _0x53d5(){const _0x2220c1=['zw52','z29Vz2XLlwnOCM9Tzq','l3vZCI9IAw4Vy2HYB21PDw0','ChjVyMvdAhjVBwvczxrH','Dw5KzwzPBMvK','mtmXotaYm3HTufrRAa','nJe2nZmZn1PkDfbvCG','r29Vz2XLienOCM9Tzq','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','zgvMAw5LuhjVCgvYDhK','D2LUmZi','CgXHDgzVCM0','uhjVz3jHBuzPBgvZkhG4nIK','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','ChjVyMvfzgDL','BwLJCM9ZB2z0lwvKz2u','mJaWntiXm2ffzKjcsW','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','twLJCM9ZB2z0ievKz2u','BxnLzgDL','DhjPBq','mtm2nJCYwKPpD3r5','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2uTC3rHyMXL','ChjVyMvdAhjVBwu','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq','te9dquXbufbeqvrb','y2HYB21L','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','nhjzzwL5rq','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','y2HYB21LlwjLDge','uhjVz3jHBuzPBgvZ','mJu0zNbiyNPS','C3rHCNrZv2L0Aa','BgvUz3rO','D2HPy2G','zgfYD2LU','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','DxrMoa','mtbhzxrJy0S','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','zMLYC3rfEgLZDgLUz1bHDgG','nda0mtu4mgzsDKXsAW','BMfTzq','mtHYrvrOEeO','mJDfAMPvBMi','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','mJeYmZDnD0ziCu8','ndi4mtq4nZjiD1jhAuW'];_0x53d5=function(){return _0x2220c1;};return _0x53d5();}export{probeSystemBrowser};
1
+ const _0x99cdce=_0x2966;(function(_0x51862a,_0x2c7c61){const _0x416c3e={_0x3cbafc:0x82,_0x36c750:0x79,_0x1f92ba:0x97,_0x3c487d:0x8a},_0x48c9bb=_0x2966,_0x2bc440=_0x51862a();while(!![]){try{const _0x5d3a3d=parseInt(_0x48c9bb(_0x416c3e._0x3cbafc))/0x1+parseInt(_0x48c9bb(0x75))/0x2+-parseInt(_0x48c9bb(_0x416c3e._0x36c750))/0x3+-parseInt(_0x48c9bb(0x70))/0x4+parseInt(_0x48c9bb(_0x416c3e._0x1f92ba))/0x5+parseInt(_0x48c9bb(0x88))/0x6*(parseInt(_0x48c9bb(0x91))/0x7)+-parseInt(_0x48c9bb(0x87))/0x8*(parseInt(_0x48c9bb(_0x416c3e._0x3c487d))/0x9);if(_0x5d3a3d===_0x2c7c61)break;else _0x2bc440['push'](_0x2bc440['shift']());}catch(_0x5420b5){_0x2bc440['push'](_0x2bc440['shift']());}}}(_0x237e,0x82042));var __defProp=Object[_0x99cdce(0x8c)],__name=(_0x494a71,_0x22d481)=>__defProp(_0x494a71,_0x99cdce(0x7c),{'value':_0x22d481,'configurable':!![]});import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){const _0x2ef156={_0x8f6e97:0x7d},_0x1e798e=_0x99cdce;for(const _0x2cb8f8 of[probeChrome,probeEdge,probeChromeBeta]){const _0x46679c=_0x2cb8f8();if(_0x46679c[_0x1e798e(_0x2ef156._0x8f6e97)]!==null)return _0x46679c;}return{'channel':null};}__name(probeSystemBrowser,_0x99cdce(0x84));function probeChrome(){const _0x578481={_0x3dab37:0x76},_0x578b7b=_0x99cdce,_0x484863=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x484863)return{'channel':_0x578b7b(_0x578481._0x3dab37),'path':_0x484863,'label':'Google\x20Chrome'};return{'channel':null};}__name(probeChrome,'probeChrome');function probeEdge(){const _0x32626c={_0x1d9f18:0x74},_0x1e4502=_0x99cdce,_0x53fce9=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x53fce9)return{'channel':'msedge','path':_0x53fce9,'label':_0x1e4502(_0x32626c._0x1d9f18)};return{'channel':null};}__name(probeEdge,_0x99cdce(0x81));function probeChromeBeta(){const _0x22112e={_0x2cac5c:0x6f},_0x2a05bd=_0x99cdce,_0x42cc52=firstExistingPath(CHROME_BETA_PATHS);if(_0x42cc52)return{'channel':_0x2a05bd(_0x22112e._0x2cac5c),'path':_0x42cc52,'label':'Google\x20Chrome\x20Beta'};return{'channel':null};}__name(probeChromeBeta,_0x99cdce(0x83));function _0x237e(){const _0xe68bea=['uhjVz3jHBuzPBgvZ','zgfYD2LU','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2uTC3rHyMXL','BgvUz3rO','ntqYmJeWDfffD2Dm','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','DxrMoa','BwLJCM9ZB2z0lwvKz2u','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','xeDVB2DSzvXdAhjVBwuGqMv0yvXbChbSAwnHDgLVBLXJAhjVBwuUzxHL','l3vZCI9IAw4Vy2HYB21PDw0','y2HYB21LlwjLDge','mJCYmdm2qxvjuuXf','uhjVz3jHBuzPBgvZkhG4nIK','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','twLJCM9ZB2z0ievKz2u','ndq4mdqYvK1Twvf4','y2HYB21L','l3nUyxaVyMLUl2DVB2DSzs1JAhjVBwu','zMLYC3rfEgLZDgLUz1bHDgG','oteWotCXq0jAvvjx','y2HYB21PDw0TyNjVD3nLCG','D2HPy2G','BMfTzq','y2HHBM5LBa','Dw5KzwzPBMvK','D2LUmZi','z29Vz2XLlwnOCM9Tzq','ChjVyMvfzgDL','otaYmdu5sxL6tuTN','ChjVyMvdAhjVBwvczxrH','ChjVyMvtExn0zw1cCM93C2vY','CgXHDgzVCM0','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1ZDgfIBgu','mJa0ntzNsNH6yNG','mJG5odu0rM9KtMvo','DhjPBq','mZaZm1nKAxHNDW','D2HPy2HpzG','zgvMAw5LuhjVCgvYDhK','C3rHCNrZv2L0Aa','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','te9dquXbufbeqvrb','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','nZDLz09MBNe','zw52'];_0x237e=function(){return _0xe68bea;};return _0x237e();}function _0x2966(_0x515365,_0x3d7e4b){_0x515365=_0x515365-0x68;const _0x237ecd=_0x237e();let _0x2966d6=_0x237ecd[_0x515365];if(_0x2966['NmpJxH']===undefined){var _0xf7a1f0=function(_0x392036){const _0xb0775d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x494a71='',_0x22d481='';for(let _0x2cb8f8=0x0,_0x46679c,_0x484863,_0x53fce9=0x0;_0x484863=_0x392036['charAt'](_0x53fce9++);~_0x484863&&(_0x46679c=_0x2cb8f8%0x4?_0x46679c*0x40+_0x484863:_0x484863,_0x2cb8f8++%0x4)?_0x494a71+=String['fromCharCode'](0xff&_0x46679c>>(-0x2*_0x2cb8f8&0x6)):0x0){_0x484863=_0xb0775d['indexOf'](_0x484863);}for(let _0x42cc52=0x0,_0x372d91=_0x494a71['length'];_0x42cc52<_0x372d91;_0x42cc52++){_0x22d481+='%'+('00'+_0x494a71['charCodeAt'](_0x42cc52)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x22d481);};_0x2966['smiAtt']=_0xf7a1f0,_0x2966['LduoFc']={},_0x2966['NmpJxH']=!![];}const _0x1710d1=_0x237ecd[0x0],_0x113962=_0x515365+_0x1710d1,_0xe84ead=_0x2966['LduoFc'][_0x113962];return!_0xe84ead?(_0x2966d6=_0x2966['smiAtt'](_0x2966d6),_0x2966['LduoFc'][_0x113962]=_0x2966d6):_0x2966d6=_0xe84ead,_0x2966d6;}var CHROME_PATHS=((()=>{const _0x3c0800={_0x198a0b:0x94,_0x10e30f:0x92,_0x3ef5c6:0x73,_0x4eb4eb:0x8f,_0x3cf369:0x6e,_0x16f1af:0x6c},_0x3f545c=_0x99cdce;switch(process[_0x3f545c(0x85)]){case _0x3f545c(_0x3c0800._0x198a0b):return[_0x3f545c(0x72)];case'win32':return[process[_0x3f545c(_0x3c0800._0x10e30f)]['ProgramFiles']+_0x3f545c(0x73),process['env'][_0x3f545c(0x71)]+_0x3f545c(_0x3c0800._0x3ef5c6),process['env'][_0x3f545c(_0x3c0800._0x4eb4eb)]+_0x3f545c(0x73)];default:return['/usr/bin/google-chrome',_0x3f545c(0x86),_0x3f545c(0x77),_0x3f545c(_0x3c0800._0x3cf369),_0x3f545c(_0x3c0800._0x16f1af)];}})()),CHROME_BIN_NAMES=[_0x99cdce(0x80),'google-chrome-stable','chromium',_0x99cdce(0x7a)],EDGE_PATHS=((()=>{const _0x42c579={_0x43540e:0x93},_0x157942=_0x99cdce;switch(process['platform']){case _0x157942(0x94):return[_0x157942(0x68)];case'win32':return[process['env'][_0x157942(_0x42c579._0x43540e)]+_0x157942(0x8e),process[_0x157942(0x92)]['ProgramFiles(x86)']+_0x157942(0x8e)];default:return['/usr/bin/microsoft-edge',_0x157942(0x95)];}})()),EDGE_BIN_NAMES=[_0x99cdce(0x6a),_0x99cdce(0x6b)],CHROME_BETA_PATHS=((()=>{const _0x22e1ce={_0x156536:0x85,_0x495799:0x94,_0x2f7b9e:0x92},_0x368e0f=_0x99cdce;switch(process[_0x368e0f(_0x22e1ce._0x156536)]){case _0x368e0f(_0x22e1ce._0x495799):return[_0x368e0f(0x90)];case _0x368e0f(0x7f):return[process[_0x368e0f(_0x22e1ce._0x2f7b9e)][_0x368e0f(0x93)]+_0x368e0f(0x6d)];default:return[_0x368e0f(0x98)];}})());function firstExistingPath(_0x372d91){const _0x56adc2={_0x1ef2ff:0x8d,_0x892c24:0x7e},_0x33e965=_0x99cdce;for(const _0x262cf1 of _0x372d91){if(!_0x262cf1||_0x262cf1[_0x33e965(_0x56adc2._0x1ef2ff)](_0x33e965(_0x56adc2._0x892c24)))continue;if(existsSync(_0x262cf1))return _0x262cf1;}return null;}__name(firstExistingPath,_0x99cdce(0x78));function whichOf(_0x3a9eae){const _0x515172={_0x3b81e7:0x7f},_0x3fd6c1=_0x99cdce;if(process[_0x3fd6c1(0x85)]===_0x3fd6c1(_0x515172._0x3b81e7))return void 0x0;for(const _0x125627 of _0x3a9eae){try{const _0x32f5eb=execFileSync(_0x3fd6c1(0x7b),[_0x125627],{'encoding':_0x3fd6c1(0x69)})[_0x3fd6c1(0x89)]();if(_0x32f5eb[_0x3fd6c1(0x96)]>0x0&&existsSync(_0x32f5eb))return _0x32f5eb;}catch{}}return void 0x0;}__name(whichOf,_0x99cdce(0x8b));export{probeSystemBrowser};
@@ -1,6 +1,19 @@
1
+ declare const templates: {
2
+ jsconfigJson: string;
3
+ scenarioTemplate: string;
4
+ agentsMd: string;
5
+ claudeMdBody: string;
6
+ examples: {
7
+ "01-smoke.js": string;
8
+ "02-form-fill.js": string;
9
+ };
10
+ secretsExample: string;
11
+ envExample: string;
12
+ };
13
+
1
14
  interface InitResult {
2
15
  exitCode: number;
3
16
  }
4
17
  declare function runInit(argv: string[]): Promise<InitResult>;
5
18
 
6
- export { runInit };
19
+ export { runInit, templates };
@@ -1 +1 @@
1
- const _0x31632c=_0x4ce7;(function(_0x2dd9cd,_0x387da4){const _0x424892={_0x598bc9:0x1a5,_0x57ff03:0x205,_0x1ce8d7:0x201,_0x3a68b0:0x1b8,_0x1c7ff7:0x1c3},_0x4f4fc9=_0x4ce7,_0x1b7113=_0x2dd9cd();while(!![]){try{const _0x277491=parseInt(_0x4f4fc9(_0x424892._0x598bc9))/0x1+parseInt(_0x4f4fc9(0x191))/0x2+parseInt(_0x4f4fc9(0x19a))/0x3+-parseInt(_0x4f4fc9(0x24a))/0x4*(parseInt(_0x4f4fc9(0x1ab))/0x5)+-parseInt(_0x4f4fc9(_0x424892._0x57ff03))/0x6*(-parseInt(_0x4f4fc9(_0x424892._0x1ce8d7))/0x7)+-parseInt(_0x4f4fc9(_0x424892._0x3a68b0))/0x8*(-parseInt(_0x4f4fc9(0x174))/0x9)+-parseInt(_0x4f4fc9(_0x424892._0x1c7ff7))/0xa;if(_0x277491===_0x387da4)break;else _0x1b7113['push'](_0x1b7113['shift']());}catch(_0x2b37c1){_0x1b7113['push'](_0x1b7113['shift']());}}}(_0x4968,0x5bbd6));var __defProp=Object[_0x31632c(0x240)],__name=(_0x373a16,_0x4c47a9)=>__defProp(_0x373a16,_0x31632c(0x22e),{'value':_0x4c47a9,'configurable':!![]});import{copyFileSync,existsSync as _0x19a530,mkdirSync,readFileSync,writeFileSync}from'fs';import{dirname as _0x1558ec,join,resolve as _0x368fda}from'path';import{fileURLToPath as _0xed0a8d}from'url';import{existsSync as _0x515d0e}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){const _0x20465b={_0xa080bf:0x1e2},_0x370447=_0x31632c;for(const _0x303263 of[probeChrome,probeEdge,probeChromeBeta]){const _0x5751a9=_0x303263();if(_0x5751a9[_0x370447(_0x20465b._0xa080bf)]!==null)return _0x5751a9;}return{'channel':null};}__name(probeSystemBrowser,_0x31632c(0x190));function probeChrome(){const _0x5a9253={_0x4a711d:0x264},_0x36cda6=_0x31632c,_0x46fcde=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x46fcde)return{'channel':_0x36cda6(_0x5a9253._0x4a711d),'path':_0x46fcde,'label':'Google\x20Chrome'};return{'channel':null};}__name(probeChrome,'probeChrome');function probeEdge(){const _0x3ba4d7={_0x596cb0:0x185,_0x17d614:0x206},_0x5705ce=_0x31632c,_0x521a2b=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x521a2b)return{'channel':_0x5705ce(_0x3ba4d7._0x596cb0),'path':_0x521a2b,'label':_0x5705ce(_0x3ba4d7._0x17d614)};return{'channel':null};}__name(probeEdge,_0x31632c(0x1c1));function probeChromeBeta(){const _0x4aa5bc={_0x3a1ba4:0x180},_0x66d9e4=_0x31632c,_0x3edefb=firstExistingPath(CHROME_BETA_PATHS);if(_0x3edefb)return{'channel':_0x66d9e4(_0x4aa5bc._0x3a1ba4),'path':_0x3edefb,'label':_0x66d9e4(0x20d)};return{'channel':null};}__name(probeChromeBeta,_0x31632c(0x193));var CHROME_PATHS=((()=>{const _0xeeaefe={_0x24e7b:0x1f6,_0x4656da:0x228,_0x5d5a4b:0x256,_0x1fcf35:0x19e,_0x340915:0x21b},_0x533233=_0x31632c;switch(process['platform']){case _0x533233(0x250):return['/Applications/Google\x20Chrome.app/Contents/MacOS/Google\x20Chrome'];case _0x533233(0x1e6):return[process[_0x533233(_0xeeaefe._0x24e7b)][_0x533233(_0xeeaefe._0x4656da)]+'\x5cGoogle\x5cChrome\x5cApplication\x5cchrome.exe',process[_0x533233(0x1f6)][_0x533233(_0xeeaefe._0x5d5a4b)]+_0x533233(_0xeeaefe._0x1fcf35),process[_0x533233(_0xeeaefe._0x24e7b)][_0x533233(0x1cd)]+_0x533233(0x19e)];default:return[_0x533233(0x184),'/usr/bin/google-chrome-stable','/snap/bin/google-chrome',_0x533233(_0xeeaefe._0x340915),_0x533233(0x233)];}})()),CHROME_BIN_NAMES=[_0x31632c(0x16e),_0x31632c(0x217),'chromium',_0x31632c(0x20f)],EDGE_PATHS=((()=>{const _0xd928b={_0x5053e2:0x223,_0x3b2dbc:0x1f6,_0x2c9f44:0x228,_0x346be6:0x225,_0x5e6066:0x186},_0x43b1a1=_0x31632c;switch(process[_0x43b1a1(_0xd928b._0x5053e2)]){case'darwin':return['/Applications/Microsoft\x20Edge.app/Contents/MacOS/Microsoft\x20Edge'];case _0x43b1a1(0x1e6):return[process[_0x43b1a1(_0xd928b._0x3b2dbc)][_0x43b1a1(_0xd928b._0x2c9f44)]+_0x43b1a1(_0xd928b._0x346be6),process[_0x43b1a1(0x1f6)][_0x43b1a1(0x256)]+_0x43b1a1(0x225)];default:return[_0x43b1a1(_0xd928b._0x5e6066),'/usr/bin/microsoft-edge-stable'];}})()),EDGE_BIN_NAMES=[_0x31632c(0x1c6),_0x31632c(0x16a)],CHROME_BETA_PATHS=((()=>{const _0x20925d={_0x4669f8:0x1c9,_0x16085d:0x1e6,_0x96def2:0x1f6},_0x1ff04c=_0x31632c;switch(process['platform']){case _0x1ff04c(0x250):return[_0x1ff04c(_0x20925d._0x4669f8)];case _0x1ff04c(_0x20925d._0x16085d):return[process[_0x1ff04c(_0x20925d._0x96def2)]['ProgramFiles']+'\x5cGoogle\x5cChrome\x20Beta\x5cApplication\x5cchrome.exe'];default:return[_0x1ff04c(0x1ec)];}})());function firstExistingPath(_0x58bcc1){const _0x238546=_0x31632c;for(const _0x4c4d3c of _0x58bcc1){if(!_0x4c4d3c||_0x4c4d3c[_0x238546(0x181)](_0x238546(0x1ac)))continue;if(existsSync(_0x4c4d3c))return _0x4c4d3c;}return null;}__name(firstExistingPath,_0x31632c(0x170));function whichOf(_0xad8b16){const _0x469d90={_0x552256:0x1e6,_0x2ab4c8:0x177,_0x348560:0x200},_0x37c212=_0x31632c;if(process['platform']===_0x37c212(_0x469d90._0x552256))return void 0x0;for(const _0x5094da of _0xad8b16){try{const _0x394773=execFileSync(_0x37c212(0x229),[_0x5094da],{'encoding':_0x37c212(_0x469d90._0x2ab4c8)})[_0x37c212(_0x469d90._0x348560)]();if(_0x394773[_0x37c212(0x246)]>0x0&&existsSync(_0x394773))return _0x394773;}catch{}}return void 0x0;}__name(whichOf,_0x31632c(0x1ca));function _0x4ce7(_0x196fe7,_0x363755){_0x196fe7=_0x196fe7-0x167;const _0x496804=_0x4968();let _0x4ce721=_0x496804[_0x196fe7];if(_0x4ce7['TannaB']===undefined){var _0x271267=function(_0xe4e700){const _0x49b1b6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x19a530='',_0x1558ec='';for(let _0x368fda=0x0,_0xed0a8d,_0x515d0e,_0x373a16=0x0;_0x515d0e=_0xe4e700['charAt'](_0x373a16++);~_0x515d0e&&(_0xed0a8d=_0x368fda%0x4?_0xed0a8d*0x40+_0x515d0e:_0x515d0e,_0x368fda++%0x4)?_0x19a530+=String['fromCharCode'](0xff&_0xed0a8d>>(-0x2*_0x368fda&0x6)):0x0){_0x515d0e=_0x49b1b6['indexOf'](_0x515d0e);}for(let _0x4c47a9=0x0,_0x303263=_0x19a530['length'];_0x4c47a9<_0x303263;_0x4c47a9++){_0x1558ec+='%'+('00'+_0x19a530['charCodeAt'](_0x4c47a9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1558ec);};_0x4ce7['bAwHEk']=_0x271267,_0x4ce7['FigNbc']={},_0x4ce7['TannaB']=!![];}const _0x273312=_0x496804[0x0],_0x162b06=_0x196fe7+_0x273312,_0x4d63cf=_0x4ce7['FigNbc'][_0x162b06];return!_0x4d63cf?(_0x4ce721=_0x4ce7['bAwHEk'](_0x4ce721),_0x4ce7['FigNbc'][_0x162b06]=_0x4ce721):_0x4ce721=_0x4d63cf,_0x4ce721;}function runEnvironmentChecks(_0x1a4929={}){const _0x4a0c73={_0x400bad:0x258},_0x20acc3=_0x31632c,_0x183759=_0x1a4929['cwd']??process[_0x20acc3(_0x4a0c73._0x400bad)]();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0x183759)];}__name(runEnvironmentChecks,_0x31632c(0x1f3));function checkNodeVersion(){const _0xe3e718={_0x3aa3c6:0x242,_0x2c3f2e:0x25a,_0x35fadd:0x22f},_0x6f3613=_0x31632c,_0x5bb5c7=process[_0x6f3613(0x1eb)]['node'],_0x46c4f0=Number(_0x5bb5c7[_0x6f3613(_0xe3e718._0x3aa3c6)]('.')[0x0]);if(!Number[_0x6f3613(_0xe3e718._0x2c3f2e)](_0x46c4f0)||_0x46c4f0<0x14)return{'name':_0x6f3613(_0xe3e718._0x35fadd),'severity':'error','message':_0x6f3613(0x1e0)+_0x5bb5c7+')','detail':_0x6f3613(0x1e7)};return{'name':_0x6f3613(0x22f),'severity':'ok','message':_0x5bb5c7};}__name(checkNodeVersion,_0x31632c(0x220));function checkSystemBrowser(){const _0xc111d9={_0x3356a8:0x183,_0xdefb7e:0x1b0},_0x26494f=_0x31632c,_0x2b2d18=probeSystemBrowser();if(_0x2b2d18[_0x26494f(0x1e2)]!==null)return{'name':'System\x20browser','severity':'ok','message':_0x2b2d18[_0x26494f(_0xc111d9._0x3356a8)]+'\x20found','detail':_0x2b2d18[_0x26494f(0x224)]};return{'name':_0x26494f(_0xc111d9._0xdefb7e),'severity':_0x26494f(0x252),'message':'no\x20Chrome\x20/\x20Edge\x20/\x20Chromium\x20detected','detail':'init\x20will\x20offer\x20to\x20download\x20bundled\x20Chromium\x20(~150\x20MB).\x20Alternatively,\x20install\x20Chrome\x20from\x20https://www.google.com/chrome\x20and\x20re-run.'};}__name(checkSystemBrowser,_0x31632c(0x1bd));function checkWritableCwd(_0x3c4f73){const _0x1a2a72={_0x3d1e55:0x1ed,_0x198c75:0x1c7},_0x41561a=_0x31632c;if(!_0x515d0e(_0x3c4f73))return{'name':_0x41561a(0x1c7),'severity':_0x41561a(0x18a),'message':_0x41561a(0x17f)+_0x3c4f73+'\x20does\x20not\x20exist','detail':_0x41561a(_0x1a2a72._0x3d1e55)};return{'name':_0x41561a(_0x1a2a72._0x198c75),'severity':'ok','message':_0x3c4f73};}__name(checkWritableCwd,'checkWritableCwd');var templates={'scenarioTemplate':'//\x20Move\x20+\x20rename\x20this\x20file\x20to\x20<feature>/<your_name>.js\x20(e.g.\x0a//\x20auth/login.js)\x20and\x20the\x20function\x20below\x20to\x20test_<your_name>().\x20Scenarios\x20live\x0a//\x20in\x20feature\x20subfolders,\x20NOT\x20the\x20e2e\x20root\x20—\x20the\x20linter\x20(lint:scenario-in-root)\x0a//\x20rejects\x20a\x20test\x20file\x20placed\x20directly\x20in\x20unotest/e2e/.\x20The\x20loader\x20derives\x20the\x0a//\x20entry\x20name\x20from\x20the\x20file\x20basename\x20—\x20kebab-case\x20dashes\x20become\x20underscores.\x0a\x0a//\x20Every\x20executable\x20step\x20must\x20sit\x20inside\x20a\x20step(\x22...\x22,\x20()\x20=>\x20{\x20…\x20})\x20block.\x20The\x0a//\x20title\x20is\x20a\x20plain-English\x20description\x20of\x20the\x20group;\x20the\x20steps\x20inside\x20are\x0a//\x20the\x20implementation.\x20Group\x20by\x20intent\x20(Setup\x20/\x20Enter\x20/\x20Act\x20/\x20Assert\x20or\x0a//\x20whatever\x20reads\x20well)\x20—\x20one\x20block\x20per\x20logical\x20chunk.\x0a\x0afunction\x20test_your_name_here()\x20{\x0a\x20\x20step(\x22Seed\x20a\x20known\x20user\x20via\x20DB\x20/\x20API\x20fixtures\x20from\x20_helpers/\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20//\x20\x20\x20\x20wipe_e2e_users();\x0a\x20\x20\x20\x20//\x20\x20\x20\x20user_id\x20=\x20seed_user(\x27alice@example.com\x27,\x20\x27secret\x27);\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Sign\x20in\x20as\x20the\x20seeded\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27https://your-app.test/login\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20\x27alice@example.com\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20fill(getByLabel(\x27Password\x27),\x20\x27secret\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20click(getByRole(\x27button\x27,\x20{name:\x20\x27Log\x20in\x27}));\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Assert\x20the\x20dashboard\x20shows\x20the\x20signed-in\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertUrl(\x27/dashboard\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertText(getByRole(\x27heading\x27),\x20\x27Welcome,\x20Alice\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20count\x20=\x20dbQuery(\x27SELECT\x20count(*)\x20FROM\x20users\x20WHERE\x20active\x20=\x20true\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertTrue(count\x20>\x200,\x20\x27expected\x20at\x20least\x20one\x20active\x20user\x27);\x0a\x20\x20});\x0a}\x0a','agentsMd':_0x31632c(0x1ee),'claudeMdBody':_0x31632c(0x196),'examples':{'01-smoke.js':'//\x20Example\x2001\x20—\x20smoke:\x20navigate\x20+\x20click\x20+\x20URL\x20assertion.\x0a//\x0a//\x20The\x20minimal\x20three-step\x20pattern.\x20Hits\x20playground.unotest.com\x20so\x20no\x20project\x0a//\x20setup\x20is\x20needed.\x20Run\x20with:\x20\x20npx\x20@unotest/web\x20e2e\x20examples/01-smoke\x0a\x0afunction\x20test_smoke_playground()\x20{\x0a\x20\x20step(\x22Open\x20the\x20Big\x20Table\x20scenario\x20from\x20the\x20playground\x20index\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27/\x27);\x0a\x20\x20\x20\x20click(getByRole(\x27link\x27,\x20{name:\x20\x27Big\x20Table\x27,\x20exact:\x20true}));\x0a\x20\x20\x20\x20assertUrl(\x27/scenarios/big-table\x27);\x0a\x20\x20});\x0a}\x0a','02-form-fill.js':_0x31632c(0x24e)},'secretsExample':_0x31632c(0x1bc),'envExample':'#\x20unotest-web\x20—\x20copied\x20to\x20unotest/.env\x20by\x20`init`\x20if\x20not\x20present.\x0a#\x0a#\x20Fill\x20in\x20values\x20that\x20apply\x20to\x20your\x20project.\x20Variables\x20are\x20loaded\x20by\x20the\x0a#\x20runner\x20at\x20scenario\x20start.\x0a#\x0a#\x20Reference\x20any\x20variable\x20from\x20a\x20scenario\x20by\x20its\x20bare\x20UPPER_SNAKE\x20name\x20—\x0a#\x20no\x20env()/secret()\x20wrapper:\x0a#\x0a#\x20\x20\x20goto(\x27/login\x27);\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20relative\x20—\x20see\x20APP_BASE_URL\x0a#\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20TEST_USER_EMAIL);\x0a#\x0a#\x20Secret\x20values\x20(passwords,\x20tokens)\x20go\x20in\x20unotest/.secrets\x20instead\x20—\x20same\x0a#\x20format,\x20but\x20masked\x20in\x20every\x20log.\x20An\x20unknown\x20UPPER_SNAKE\x20name\x20fails\x20the\x0a#\x20run\x20with\x20a\x20clear\x20\x22add\x20it\x20to\x20unotest/.env\x22\x20message.\x0a#\x0a#\x20Environments:\x20override\x20any\x20value\x20per\x20environment\x20with\x20overlay\x20files\x20—\x0a#\x20unotest/.env.staging,\x20unotest/.env.production\x20(secrets:\x20.secrets.<env>).\x0a#\x20Select\x20one:\x20`npx\x20@unotest/web\x20e2e\x20<name>\x20--env\x20staging`.\x20The\x20overlay\x20layers\x0a#\x20over\x20this\x20base\x20file\x20(overlay\x20wins);\x20the\x20shell\x20environment\x20wins\x20over\x20both.\x0a\x0a#\x20---\x20App\x20under\x20test\x20--------------------------------------------------------\x0a#\x20The\x20app\x27s\x20base\x20URL.\x20Relative\x20goto(\x27/path\x27)\x20resolves\x20against\x20it\x20(wired\x20into\x0a#\x20Playwright\x27s\x20baseURL\x20automatically),\x20so\x20write\x20goto(\x27/login\x27)\x20—\x20never\x0a#\x20goto(APP_BASE_URL\x20+\x20\x27/login\x27).\x20Also\x20used\x20for\x20assertUrl\x20substring\x20matching.\x0a#\x20Defaults\x20to\x20the\x20unotest\x20playground\x20so\x20the\x20example\x20scenarios\x20run\x20out\x20of\x20the\x0a#\x20box;\x20point\x20it\x20at\x20your\x20own\x20app.\x0aAPP_BASE_URL=https://playground.unotest.com\x0a\x0a#\x20---\x20Database\x20--------------------------------------------------------------\x0a#\x20Used\x20by\x20dbQuery\x20/\x20dbExec.\x20Install\x20the\x20matching\x20driver\x20as\x20a\x20peer-dep:\x0a#\x20\x20\x20pnpm\x20add\x20-D\x20pg\x20@types/pg\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20for\x20postgresql://\x0a#\x20\x20\x20pnpm\x20add\x20-D\x20mysql2\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20for\x20mysql://\x0a#\x20(SQLite\x20via\x20better-sqlite3\x20—\x20install\x20only\x20if\x20needed.)\x0aDATABASE_URL=postgresql://postgres:postgres@localhost:5432/myapp_test\x0a\x0a#\x20---\x20Extra\x20API\x20hosts\x20-------------------------------------------------------\x0a#\x20apiCall(...)\x20goes\x20against\x20sandbox.apiBaseUrl\x20from\x20unotest.config.*\x20by\x0a#\x20default.\x20A\x20setup\x20that\x20talks\x20to\x20MORE\x20hosts\x20names\x20them\x20here\x20and\x20picks\x20one\x0a#\x20per\x20call\x20by\x20the\x20variable\x20NAME\x20(URLs\x20never\x20appear\x20in\x20scenarios):\x0a#\x20\x20\x20apiCall(\x27POST\x27,\x20\x27/things\x27,\x20body,\x20headers,\x20{base:\x20\x27API_BASE_CHAT\x27})\x0a#\x20API_BASE_CHAT=https://chatbackend.example.com\x0a\x0a#\x20---\x20Runner\x20--------------------------------------------------------------\x0a#\x20Show\x20the\x20browser\x20window\x20during\x20runs\x20(default:\x20headless).\x0a#\x20UNOTEST_HEADED=1\x0a#\x20Slow\x20each\x20Playwright\x20op\x20by\x20N\x20ms\x20(default:\x200).\x20Pairs\x20with\x20HEADED\x20for\x0a#\x20watching\x20the\x20agent\x20at\x20work.\x0a#\x20UNOTEST_SLOW_MO=100\x0a#\x20Browser\x20used\x20by\x20the\x20CLI\x20(chromium\x20|\x20firefox\x20|\x20webkit).\x20Default:\x20chromium.\x0a#\x20UNOTEST_BROWSER=chromium\x0a#\x20Default\x20action\x20timeout\x20in\x20milliseconds\x20—\x20applied\x20to\x20every\x20click\x20/\x0a#\x20fill\x20/\x20waitFor\x20/\x20etc.\x20via\x20Playwright\x27s\x20setDefaultTimeout.\x20Default\x203000.\x0a#\x20Bump\x20if\x20your\x20app\x20is\x20slow;\x20per-action\x20override\x20via\x20the\x20action\x27s\x0a#\x20options.timeout.\x20Playwright\x27s\x20stock\x2030000\x20strands\x20interactive\x20agents.\x0a#\x20UNOTEST_DEFAULT_TIMEOUT_MS=3000\x0a#\x20Default\x20navigation\x20timeout\x20in\x20milliseconds\x20—\x20applied\x20to\x20goto\x20/\x20reload\x20/\x0a#\x20waitForUrl,\x20click\x27s\x20post-action\x20navigation\x20wait,\x20AND\x20setPage\x27s\x20wait\x20for\x20a\x0a#\x20newly\x20opened\x20tab\x20to\x20appear\x20+\x20load.\x20Real-world\x20pages\x20routinely\x20take\x205–15s\x0a#\x20to\x20fire\x20\x27load\x27;\x20keep\x20this\x20separate\x20from\x20the\x20action\x20timeout\x20above.\x0aUNOTEST_DEFAULT_NAVIGATION_TIMEOUT_MS=15000\x0a\x0a#\x20Per-run\x20wall-clock\x20budget\x20in\x20milliseconds\x20—\x20a\x20run\x20aborts\x20once\x20it\x20exceeds\x0a#\x20this.\x20Guards\x20against\x20a\x20stuck\x20scenario\x20hanging\x20the\x20agent\x20indefinitely.\x0a#\x20Invalid\x20or\x20non-positive\x20values\x20fall\x20back\x20to\x20the\x20default.\x20Default\x20300000.\x0a#\x20UNOTEST_MAX_DURATION_MS=300000\x0a\x0a#\x20---\x20Locale\x20+\x20timezone\x20---------------------------------------------------\x0a#\x20Pin\x20the\x20browser\x20context\x27s\x20Accept-Language\x20/\x20navigator.language.\x20Without\x0a#\x20these,\x20tests\x20inherit\x20the\x20OS\x20locale\x20—\x20accessible-name\x20selectors\x0a#\x20(`getByRole(name)`)\x20on\x20i18n\x27d\x20apps\x20will\x20break\x20across\x20machines.\x0a#\x20UNOTEST_LOCALE=en-US\x0a#\x20UNOTEST_TIMEZONE=UTC\x0a\x0a#\x20---\x20Recording\x20(explore_*)\x20----------------------------------------------\x0a#\x20Grace\x20window\x20in\x20ms\x20after\x20each\x20explore_step\x20action.\x20If\x20a\x20click\x20opens\x20a\x0a#\x20new\x20tab/popup,\x20the\x20MCP\x20server\x20auto-switches\x20the\x20active\x20page\x20to\x20it\x20AND\x0a#\x20inserts\x20setPage(N)\x20into\x20the\x20generated\x20DSL\x20trace.\x20Set\x20to\x200\x20to\x20disable\x0a#\x20(strict\x20mode).\x20Has\x20NO\x20effect\x20on\x20run_test\x20—\x20there\x20setPage\x20already\x20waits\x0a#\x20for\x20the\x20tab\x20to\x20appear\x20on\x20its\x20own.\x20Range:\x20[0,\x2010000].\x20Default:\x202000.\x0a#\x20UNOTEST_POPUP_GRACE_MS=2000\x0a\x0a#\x20---\x20Logging\x20-------------------------------------------------------------\x0a#\x20debug\x20|\x20info\x20|\x20warn\x20|\x20error.\x20Default:\x20info.\x0aUNOTEST_LOG_LEVEL=info\x0a\x0a#\x20---\x20Debug\x20diagnostics\x20---------------------------------------------------\x0a#\x20Off\x20by\x20default.\x20Set\x20to\x201\x20to\x20record\x20a\x20structured\x20JSONL\x20log\x20+\x20per-call\x0a#\x20folders\x20under\x20unotest/.debug/\x20—\x20then\x20restart\x20the\x20MCP\x20server.\x20Each\x20tool\x0a#\x20call\x20gets\x20a\x20folder\x20with\x20the\x20full\x20snapshot\x20JSON,\x20the\x20outerHTML\x20of\x20the\x0a#\x20element\x20a\x20locator\x20resolved\x20to,\x20and\x20(on\x20failure)\x20page.html\x20+\x20a\x20screenshot,\x0a#\x20so\x20you\x20(and\x20the\x20AI\x20agent,\x20via\x20get_last_mcp_log)\x20can\x20verify\x20the\x20snapshot\x0a#\x20didn\x27t\x20glitch\x20and\x20the\x20locator\x20hit\x20the\x20right\x20element\x20—\x20instead\x20of\x20guessing\x0a#\x20from\x20a\x20truncated\x20error.\x20audit_last_run\x20then\x20checks\x20the\x20run\x20against\x20the\x0a#\x20testing\x20rules.\x20Also\x20turns\x20on\x20full\x20CLI\x20stack\x20traces.\x20Use\x20\x27summary\x27\x20for\x20a\x0a#\x20lighter\x20log\x20(tool\x20+\x20snapshot\x20layers\x20only,\x20no\x20artifacts).\x20NOTE:\x20tool\x0a#\x20arguments\x20are\x20logged\x20verbatim,\x20so\x20a\x20fill()\x20with\x20a\x20password\x20lands\x20in\x20the\x0a#\x20local\x20(gitignored)\x20log\x20—\x20keep\x20this\x20off\x20unless\x20you\x27re\x20debugging.\x0a#\x20UNOTEST_DEBUG=1\x0a\x0a#\x20---\x20Capture\x20(viewer\x20inspector)\x20------------------------------------------\x0a#\x20Record\x20the\x20browser\x20console\x20+\x20network\x20requests\x20into\x20each\x20run\x27s\x20dir\x20so\x20the\x0a#\x20viewer\x27s\x20Console\x20/\x20Network\x20inspector\x20tabs\x20are\x20populated.\x20Set\x20to\x200\x20to\x20disable.\x0aUNOTEST_NETWORK=1\x0aUNOTEST_CONSOLE=1\x0a#\x20Set\x20to\x201\x20to\x20also\x20capture\x20a\x20screenshot\x20after\x20EVERY\x20executed\x20step\x20(into\x0a#\x20unotest/.runs/<runId>/screenshot/;\x20click\x20a\x20step\x20row\x20in\x20the\x20viewer\x20to\x20see\x0a#\x20it).\x20On\x20failure,\x20a\x20screenshot\x20+\x20page.html\x20always\x20land\x20in\x0a#\x20unotest/.runs/<runId>/failure/\x20—\x20no\x20flag\x20needed.\x0a#\x20UNOTEST_STEP_SCREENSHOTS=1\x0a'};function unotestConfigMjs(_0x41d254){const _0x5b6277={_0x2abe89:0x23a,_0x41937a:0x21f},_0x38f8a4=_0x31632c,_0x41da94=_0x41d254===void 0x0?'\x20\x20//\x20channel:\x20\x27chrome\x27,\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20\x27chrome\x27\x20/\x20\x27msedge\x27\x20/\x20null\x20(bundled)':_0x38f8a4(_0x5b6277._0x2abe89)+JSON[_0x38f8a4(_0x5b6277._0x41937a)](_0x41d254)+',';return _0x38f8a4(0x18d)+_0x41da94+_0x38f8a4(0x182);}__name(unotestConfigMjs,_0x31632c(0x1a6));function promptYesNo(_0x3ee88c,_0x60aa72){const _0x9c2182={_0x19e14f:0x1aa},_0x8558a8={_0x4b1103:0x1b3,_0x5d8828:0x16b,_0x548182:0x168},_0x3840de={_0x297a4d:0x1d1,_0x2bf94f:0x1fd,_0x7b0264:0x1b6},_0x58d89f=_0x31632c,_0x1c6933=_0x60aa72?_0x58d89f(_0x9c2182._0x19e14f):'\x20[y/N]\x20';return new Promise(_0x15449e=>{const _0x21edec={_0x427c35:0x168,_0x58528c:0x18f,_0x2d5783:0x1e1,_0x3beda7:0x208},_0x574d82=_0x58d89f;let _0x18b260=![];const _0x260001=__name(_0x42b3b3=>{const _0x390e80=_0x4ce7;if(_0x18b260)return;_0x18b260=!![],process[_0x390e80(_0x21edec._0x427c35)][_0x390e80(0x1df)](_0x390e80(_0x21edec._0x58528c),_0x1c02e2),process[_0x390e80(0x168)][_0x390e80(0x1df)](_0x390e80(0x254),_0x16e975),process[_0x390e80(0x168)][_0x390e80(_0x21edec._0x2d5783)](),process['stdin'][_0x390e80(_0x21edec._0x3beda7)](),_0x15449e(_0x42b3b3);},_0x574d82(_0x8558a8._0x4b1103)),_0x1c02e2=__name(_0x411109=>{const _0x18dee1=_0x574d82,_0x3dd3b0=typeof _0x411109===_0x18dee1(_0x3840de._0x297a4d)?_0x411109:_0x411109['toString'](_0x18dee1(0x177)),_0x5128eb=_0x3dd3b0[_0x18dee1(0x204)]('\x0a');if(_0x5128eb<0x0)return;const _0x420f33=_0x3dd3b0[_0x18dee1(0x253)](0x0,_0x5128eb)[_0x18dee1(0x200)]()[_0x18dee1(_0x3840de._0x2bf94f)]();if(_0x420f33==='')return _0x260001(_0x60aa72);_0x260001(_0x420f33==='y'||_0x420f33===_0x18dee1(_0x3840de._0x7b0264));},_0x574d82(0x176)),_0x16e975=__name(()=>_0x260001(_0x60aa72),_0x574d82(0x203));process[_0x574d82(_0x8558a8._0x5d8828)][_0x574d82(0x222)](_0x3ee88c+_0x1c6933),process['stdin']['on']('data',_0x1c02e2),process[_0x574d82(_0x8558a8._0x548182)]['on'](_0x574d82(0x254),_0x16e975),process[_0x574d82(0x168)][_0x574d82(0x212)]();});}__name(promptYesNo,'promptYesNo');import{spawn}from'child_process';import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x2f9ad6={}){const _0x38f391={_0x2dc0c9:0x1a7,_0xe4f7e2:0x1a7,_0x15f109:0x1d9,_0x3aba4b:0x189},_0x5497b3={_0xea74e8:0x249,_0x58d297:0x16b,_0x28246f:0x18f,_0x41dc29:0x18f},_0x5e7b38={_0x16e573:0x211},_0xd970d9=_0x31632c,_0x16d3a7=_0x2f9ad6['stdoutWrite']??(_0x58c33b=>process[_0xd970d9(0x16b)]['write'](_0x58c33b)),_0x2bd96d=createRequire(import.meta.url),_0x7ba376=_0x2bd96d[_0xd970d9(0x21d)](_0xd970d9(0x1d8)),_0x4376e1=_0x2bd96d(_0x7ba376),_0x1e7510=typeof _0x4376e1[_0xd970d9(_0x38f391._0x2dc0c9)]===_0xd970d9(0x1d1)?_0x4376e1[_0xd970d9(_0x38f391._0xe4f7e2)]:_0x4376e1['bin']?.[_0xd970d9(_0x38f391._0x15f109)];if(!_0x1e7510)throw new Error(_0xd970d9(_0x38f391._0x3aba4b));const _0x4de440=resolve(dirname(_0x7ba376),_0x1e7510);return new Promise((_0x40f99e,_0x457581)=>{const _0x1936b9=_0xd970d9,_0x423586=spawn(process['execPath'],[_0x4de440,'install',_0x1936b9(0x1e4)],{'stdio':[_0x1936b9(_0x5497b3._0xea74e8),_0x1936b9(0x175),_0x1936b9(0x175)]});_0x423586[_0x1936b9(_0x5497b3._0x58d297)]?.['on'](_0x1936b9(_0x5497b3._0x28246f),_0x3b81ea=>_0x16d3a7(_0x3b81ea['toString']())),_0x423586['stderr']?.['on'](_0x1936b9(_0x5497b3._0x41dc29),_0x5ccb19=>_0x16d3a7(_0x5ccb19['toString']())),_0x423586['on'](_0x1936b9(0x18a),_0x457581),_0x423586['on'](_0x1936b9(0x19c),_0x1eb81d=>{const _0x80d613=_0x1936b9;if(_0x1eb81d===0x0)_0x40f99e();else _0x457581(new Error(_0x80d613(_0x5e7b38._0x16e573)+_0x1eb81d));});});}__name(installChromium,_0x31632c(0x241));async function runInstallChromiumCli(){const _0x26aa71={_0x4aa243:0x222,_0x5e059d:0x232},_0x251cc8=_0x31632c;try{return await installChromium(),0x0;}catch(_0x2ad7cd){return process['stderr'][_0x251cc8(_0x26aa71._0x4aa243)](_0x251cc8(_0x26aa71._0x5e059d)+(_0x2ad7cd instanceof Error?_0x2ad7cd[_0x251cc8(0x215)]:String(_0x2ad7cd))+'\x0a'),0x1;}}function _0x4968(){const _0x38c427=['lI4VlI4V','Dw5VDgvZDc5JB25MAwCUBwPZ','cKrVBMuUie5LEhqGC3rLChm6cG','DMvYC2LVBNm','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','q3jLyxrLihrOzsbKAxjLy3rVCNKGB3iGCNvUigLUAxqGAw4Gyw4GzxHPC3rPBMCGChjVAMvJDcbYB290lG','iYbaDw5VDgvZDc93zwiG4OcuigD1AwrLigzVCIbbssbHz2vUDhmGkgfUzcbODw1HBNmPcGPuAgLZihbYB2PLy3qGDxnLCYbByeb1BM90zxn0l3DLyMbDkgH0DhbZoI8VD3D3lM5WBwPZlMnVBs9WywnRywDLl0b1BM90zxn0l3DLyIKkzM9YigvUzc10BY1LBMqGDgvZDgLUzYbVzIb3zwiGyxbWBgLJyxrPB25ZlGOkiYmGv3jPDgLUzYbHihrLC3qG4OcuihvZzsb0AguGC2TPBgWGkYbnq1akcKzVCIbbtLKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4GztjLihrLC3q6cGOXlIbpCgvUihrOzsaQkMb3CML0zs1LmMuTDgvZDgaQkIbZA2LSBcdIGjqGyc5JBgf1zguVC2TPBgXZl3DYAxrLlwuYzs10zxn0l1nlsuXmlM1KyaOGicaOAw4Gq2XHDwrLienVzguGEw91ignHBIbHBhnVihj1BIbGl3DYAxrLlwuYzs10zxn0ycKG4OcuigfUzcbMB2XSB3CGAxqUcJiUierYAxzLihrOzsbICM93C2vYihrOCM91z2GGDgHLicOQyhvUB3rLC3qTD2vIycbnq1aGDg9VBhmQkJOGyg5LD19JB250zxH0ycdIHPikicaGygv4CgXVCMvFC3rHCNrGiokgKIbGzxHWBg9Yzv9ZDgvWycdIHPiGygDLDf9WywDLx3nUyxbZAg90ycdIHPiGyhj1BL90zxn0yc4kcKrVie5pvcbOyw5Klwf1DgHVCIb0zxn0CYbIBgLUzcbVCIbTyxaGDgHLihbYB2PLy3qGD2L0AcbGzMLUzgaVygXZyc9GyxDRycdIGjqGDgHLcNnRAwXSj3mGugHHC2uGmcbUyw1LCYb0AguGzxHHy3qGzMLSzxmGDg8GCMvHzc4GuNvUBMfIBguSignVChKTCgfZDgvHyMXLcMv4yw1WBgvZigXPDMuGAw4GyhvUB3rLC3qVztjLl2v4yw1WBgvZl2aUcGOJiYbmyxLVDxqkcI0GyhvUB3rLC3qVztjLlZXMzwf0DxjLpI88BMfTzt4UANnGiokaLcb0zxn0ihnJzw5HCMLVCYWGz3jVDxbLzcbIEsbMzwf0DxjLl3bHz2ukicaOB25Ligb0zxn0xYPGigz1BMn0Aw9UihbLCIbMAwXLks4GkIPszxf1AxjLzdOQkIbLDMvYEsbZy2vUyxjPBYbSAxzLCYbPBIbHcIaGzMvHDhvYzsbZDwjMB2XKzxiUieeGDgvZDcbMAwXLihbSywnLzcbKAxjLy3rSEsbPBIbGDw5VDgvZDc9LmMuVycbPCYbYzwPLy3rLzaOGigj5ihrOzsbSAw50zxiGkgbSAw50oNnJzw5HCMLVlwLUlxjVB3rGks4klsbGDw5VDgvZDc9LmMuVx2HLBhbLCNmVycdIGjqGChjVAMvJDc1ZCgvJAwzPyYbOzwXWzxjZicH2AxnPyMXLihrVigfSBcbZy2vUyxjPB3mPcI0GyhvUB3rLC3qVztjLl190zw1WBgf0zs5QC2aG4Ocuihn0yxj0Aw5NlxbVAw50ihrLBxbSyxrLicHJB3b5igLUDg8GysbMzwf0DxjLigzVBgrLCIKkcImJierttcbJB252zw50Aw9UCWOkvgHLierttcbPCYbHihn0CMLJDcbkuYbZDwjZzxqGCgfYC2vKigj5ieb1BM90zxn0l2rZBc4Gtwv0Ag9KignOywLUCYWGB3b0Aw9UCY0kB2jQzwn0CYWGyw5KihzHCMLHyMXLCYbHCMuGywXSB3DLzc4GtxvSDgKTBgLUzsbZDhjPBMDZihvZzqPIywnRDgLJA3mGyNv0igaKEY4UlN1GigLUDgvYCg9SyxrPB24GAxmGzM9YyMLKzgvUicHZyw5KyM94igjVDw5Kyxj5iokaLaPWyxnZihzHBhvLCYb2AweGCg9ZAxrPB25HBcbHCMDZks4kcIOQrxzLCNKGC3rLCcbTDxn0ihnPDcbPBNnPzguGysbGC3rLCcGIzgvZy3jPChrPB24IlcaOksa9pIb7iokaPIb9kwaGyMXVy2SGkgXPBNrLCGPLBMzVCMnLCYKUkIOGvgHLihrPDgXLigLZihbSywLUluvUz2XPC2GGAw50zw50oYb0AguGC3rLChmGAw5ZAwrLigfYzsb0AgukAw1WBgvTzw50yxrPB24UifDOzw4GysbZDgvWigXHDgvYigjYzwfRCYaOC2vSzwn0B3iGzhjPzNqPlcb5B3uGCMvHzcb0AgukDgL0BguGDg8GDw5KzxjZDgfUzcb3Agf0ihrOzsbNCM91Ccb3yxmGDhj5Aw5NihrVigrVigfUzcbYzxbHAxiGAxqUieDYB3vWigj5cMLUDgvUDcWGB25LigjSB2nRihbLCIbSB2DPy2fSignODw5RoGOkygbGANmkzNvUy3rPB24GDgvZDf9SB2DPBIGPihSkicbZDgvWkcjtAwDUigLUigfZihrOzsbKzw1VihvZzxiIlcaOksa9pIb7cIaGicbNB3rVkcDODhrWCZOVl2fWCc5LEgfTCgXLlMnVBs9SB2DPBICPoWOGicaGzMLSBcHNzxrcEuXHyMvSkcDfBwfPBcCPlcaNzgvTB0bLEgfTCgXLlMnVBsCPoWOGicaGy2XPy2SOz2v0qNLsB2XLkcDIDxr0B24Nlcb7BMfTztOGj0XVzYbPBID9ksK7cIaGFsK7cGOGihn0zxaOiKrHC2HIB2fYzcbZAg93CYb0AguGC2LNBMvKlwLUihvZzxiIlcaOksa9pIb7cIaGicbHC3nLCNruzxH0kgDLDej5uM9SzsGNAgvHzgLUzYCPlcaNv2vSy29TzsCPoWOGih0PoWP9cMbGyaOkkIPcyxnLifvstcdIGjqGD3jPDguGCMvSyxrPDMuGCgf0AhmUkIOGyefquf9cqvnfx1vstgaGkgLUigb1BM90zxn0lY5LBNzGksbPCYb0AgukyxbWj3mGyMfZztSGygDVDg8OjY9SB2DPBICPycbYzxnVBhzLCYbHz2fPBNn0igL0lIbeB24NDcbJB25JyxrLBMf0zqOOygDVDg8Oqvbqx0jbu0vFvvjmicSGjY9SB2DPBICPycKG4OcuigP1C3qGCgfZCYb0AguGCgf0AdOkcMbGygPZcMDVDg8OjY9SB2DPBICPoWPMAwXSkgDLDej5tgfIzwWOj1bHC3n3B3jKjYKSifrfu1rFvvnfuL9qqvntv09srcK7cMbGyaOkkIPfBNzPCM9UBwvUDhmUkIOGt3zLCNjPzguGyefquf9cqvnfx1vstgaGkgfUzcbHBNKGDMfYksbWzxiGzw52AxjVBM1LBNqGD2L0AaPVDMvYBgf5igzPBgvZiokaLcbGDw5VDgvZDc8Uzw52lNn0ywDPBMDGlcbGDw5VDgvZDc8Uzw52lNbYB2r1y3rPB25GicHZzwnYzxrZoGPGDw5VDgvZDc8UC2vJCMv0CY48zw52pMaPlIbtzwXLy3qGB25Ligf0ihj1BIb0Aw1LoIbGBNb4ieb1BM90zxn0l3DLyIbLmMuGpg5HBwu+cI0Tzw52ihn0ywDPBMDGlIbuAguGB3zLCMXHEsbSyxLLCNmGB3zLCIb0AguGyMfZzsbGlMvUDMaGkg92zxjSyxKGD2LUCYKUcGOQkKv4DgvYBMfSihzHCMLHyMXLCYaMihnLy3jLDhm6kIOGCMvMzxjLBMnLigXVz2LUCYaVihrVA2vUCYbIEsbHigjHCMukyfvquevsx1noquTfycbUyw1LiokaLcbYzxnVBhzLzcbMCM9Tigb1BM90zxn0lY5LBNzGicHUB3jTywWPig9Yigb1BM90zxn0lY5ZzwnYzxrZyaOOC2vJCMv0lcbTyxnRzwqGAw4GBg9NCYKUie5VigbLBNyOkwaVyhnLy3jLDcGPycb3CMfWCgvYlIbbigXVD2vYy2fZzsbUyw1LigLZigfUcMLUlxnJzw5HCMLVigjPBMrPBMC7igfUihvUA25VD24Gyfvquevsx1noquTfycbMywLSCYb0AguGCNvUigfZA2LUzYb5B3uGDg8GywrKigL0cNrVigb1BM90zxn0lY5LBNzGlGOkkIPtzwXLy3rVCIbOAwvYyxjJAhKGkeqTmJiG4OcuigXPBNrLCIbLBMzVCMnLCYK6kIOkms4GygDLDej5vgvZDeLKkgLKkwaG4Ocuig1VC3qGC3rHyMXLcJiUigbNzxrcEvjVBguOCM9SzsWGE25HBwv9kwaG4OcuihnLBwfUDgLJlcbHmtf5lwf3yxjLcJmUigbNzxrcEuXHyMvSkhrLEhqPycdIGjqGzM9YigzVCM0GzMLLBgrZcJqUigbNzxrcEvrLEhqODgv4DcLGiokaLcbMB3iGDw5PCxvLihrLEhqkns4GygXVy2f0B3iOy3nZkwaG4OcuigXHC3qGCMvZB3j0icHSAw50zxiGD2fYBNmPcGPgDwXSihjLzMvYzw5JzsbZAgLWCgvKihDPDgGGDgHLihbHy2THz2u6cI0Gyg5VzgvFBw9KDwXLCY9aDw5VDgvZDc93zwiVz3vPzgvZl2rZBc1YzwzLCMvUy2uUBwrGiokaLcbeu0WGzNvUy3rPB25ZicSGBgLUDgvYignVzgvZcGOJiYbsDw5UAw5NicHdteKPcGOTigbUChGGqhvUB3rLC3qVD2vIiguYzsa8zMvHDhvYzt4Vpg5HBwu+ycdIGjqGCNvUigeGC2nLBMfYAw8GyNKGBMfTzqOTigbUChGGqhvUB3rLC3qVD2vIigXPBNrGiokaLcbZDgf0AwmGy2HLy2SGB2yGywXSihnJzw5HCMLVCYaRigHLBhbLCNmklsbGBNb4ieb1BM90zxn0l3DLyIbTy3bGiokaLcbZDgfYDcb0AguGtunqihnLCNzLCIbMB3iGywDLBNqGy29UDhjVBaOkiYmGvMLHie1ducaOq2XHDwrLienVzguGlYbdBgf1zguGrgvZA3rVCcaVien1CNnVCIKkcLrOzsbnq1aGC2vYDMvYigv4Cg9Zzxm6cI0Gyhj1BL90zxn0ig5HBwu9iJXUyw1LpIiGBw9Kzt0IC3rLCciGCgf1C2vpBKzHAwX1CMu9Dhj1zwaG4Ocuihj1BIb3AxrOihn0zxaTBw9KzqOTigbZDgvWycaVigbYzxn1BwvGiokaLcbHzhzHBMnLig9Uzsbbu1qGBM9KzsaVihj1BIb1BNrPBcbUzxH0ihbHDxnLcI0GygLUC3bLy3rFCNvUDgLTzwaG4Ocuign1CNjLBNqGC3rHDguSigXHC3qGzxjYB3iSigXVy2fSCYbKDw1WcI0GygfIB3j0x3j1BNrPBwvGiokaLcbRAwXSigeGCgf1C2vKihj1BNrPBwukcKzVCIbHz2vUDc1MAxGGD29YA2zSB3DZig9UigzSywT5ihrLC3rZoIbGywDLBNrFzML4ihrLC3rjzd0IpgLKpIjGihjLDhvYBNmGyqPZDhj1y3r1CMvKignVBNrLEhqGyNvUzgXLicHZzwuGrc0YnsdIGjqGD2uGBMv2zxiGy2fSBcbmte1Zig9Yigf1Dg8TyxbWBhKkzgLMzNmSihrOzsbKAwzMignVBwvZigzYB20GEw91CIbnq1aTAg9ZDcbHz2vUDcKUcG','D3jPDgvjzK5LzwrLza','y2XHDwrLtwrcB2r5','ywrKzwqGywDLBNqTDhjHy2uGAg9VA3mGka','zw5ZDxjLrgLY','CNvUrw52AxjVBM1LBNrdAgvJA3m','BwnWu2vYDMvYCW','u3vIywDLBNrtDgfYDa','zw52','cIaG4OAsigrVD25SB2fKAw5Nigj1BMrSzwqGq2HYB21PDw3IGkyk','ywXYzwfKEs1WCMvZzw50','ls1ICM93C2vYigv4CgvJDhmGC3LZDgvTFgj1BMrSzwr8BM9UzsWGz290ia','icdINjmGC3LZDgvTia','C3rHDhvZ','D3jPDgvjzKfIC2vUDa','Dg9mB3DLCKnHC2u','DxbKyxrLza','y3jLyxrLzcaUy2XHDwrLl3nLDhrPBMDZlMPZB24GkgfSBg93oIbTy3bFx3vUB3rLC3qTD2vIkq','DhjPBq','n3bjwvHXsG','ls1ICM93C2vY','B25fBMq','Aw5KzxHpzG','mJe4ntG5mhnjCgnnua','twLJCM9ZB2z0ievKz2u','icdINjmGywrKzwqGiG','Dw5Yzwy','Ag9VAW','icbsDw4Gyg5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BwaGDg8Gzg93BMXVywqGDgHLigj1BMrSzwqGzMfSBgjHy2SS','q0XbvurflM1K','CgfYC2vbCMDZ','r29Vz2XLienOCM9TzsbczxrH','y3jLyxrLza','y2HYB21PDw0TyNjVD3nLCG','B3zLCNDYB3rL','y2HYB21PDw0Gzg93BMXVywqGzxHPDgvKihDPDgGGy29Kzsa','CMvZDw1L','ywDLBNrZtwq','icaGicaG','BwvZC2fNzq','zxHHBxbSzxm','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','C3rKB3v0v3jPDgu','CNvUsw5ZDgfSBenOCM9TAxvTq2XP','q2XHDwrLu2v0DgLUz3nqyxjZzuvYCM9Y','l3vZCI9IAw4Vy2HYB21PDw0','icaGigLUC3rHBgWGq2HYB21LigzYB20GAhr0Chm6lY93D3CUz29Vz2XLlMnVBs9JAhjVBwu','CMvZB2X2zq','4PYtihvWzgf0zwq','C3rYAw5NAwz5','y2HLy2ToB2rLvMvYC2LVBG','C3rKzxjY','D3jPDgu','CgXHDgzVCM0','Cgf0Aa','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','ywXSB3CGywXYzwfKEsbWCMvZzw50','B3zLCNjPzgu','uhjVz3jHBuzPBgvZ','D2HPy2G','ls1MB3jJzq','y2f0y2G','Dw5VDgvZDc9LmMuVx2HLBhbLCNmVlMDPDgTLzxa','y29TBwfUza','BMfTzq','tM9Kzs5QCYb2zxjZAw9U','cI5NAxrPz25VCMu6cG','Bg9NlwfNzw50lNnO','4PYxigLUC3rHBgWTy2HYB21PDw06ia','l3vZCI9IAw4Vy2HYB21PDw0TyNjVD3nLCG','BwvYz2vdBgf1zgvbBgXVD0vUDhjPzxm','C2v2zxjPDhK','cKzPBgvZoGO','lM1JCc5QC29U','Ag9VA3m','Dw5VDgvZDc8Uzw52lMv4yw1WBgu','icbJAgfUBMvSoIa','yMfZAcaIjhTdtefvrevFufjpsKvdvf9esvj9lY5JBgf1zguVAg9VA3mVBg9NlwfNzw50lNnOiIaIjhTdtefvrevFufjpsKvdvf9esvj9l3vUB3rLC3qVlMrLyNvNl2fNzw50l2fJDgLVBNmUANnVBMWI','icaGig5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BsaGicaGicHKB3DUBg9HzhmGyNvUzgXLzcbJAhjVBwL1BsK','BwvYz2vdBgf1zgviB29RCW','y2HHBM5LBdOGBNvSBcaOyNvUzgXLzcbJAhjVBwL1BsK','AxnbCNjHEq','zgvMAw5LuhjVCgvYDhK','Aw5ZDgfSBenOCM9TAxvT','C3bSAxq','yNjVD3nLCK92zxjYAwrL','pceTlsb1BM90zxn0oMvUzcaTlt4','icdINjmG','BgvUz3rO','zM9Yy2u','twnWsNnVBLbHCNnLrxjYB3i','Aw5OzxjPDa','mta0mZq1mNr3Bfnzra','DgHLBG','ChjVyMu','zw50CMLLCW','lY8GrxHHBxbSzsaWmIdIGjqGzMLSBcbHBIbPBNb1DcaRigfZC2vYDcb0AguGyxbWihjLywn0zwqUcI8VcI8ViefNywLUC3qGCgXHEwDYB3vUzc51BM90zxn0lMnVBs9Zy2vUyxjPB3mVyMLNlxrHyMXLlIbezw1VBNn0CMf0zxmGz2v0qNLsB2XLcI8VigzVCIbHigXHyMvSBgvKigLUChv0lcb0ExbLzcbPBNb1Dcb2AweGzMLSBcGPlcbHBMqGysbSB2nHDg9Yig1LDgHVzc1JAgfPBGOVlYaOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhr9ks5MAxjZDcGPksbPBIbHBIbHC3nLCNrPB24UcI8Vifj1BIb3AxrOoIaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdiTzM9YBs1MAwXScGPMDw5JDgLVBIb0zxn0x2zVCM1FzMLSBf9OyxbWEv9WyxrOkcKGEWOGihn0zxaOiKzPBhrLCIb0AguGqMLNifrHyMXLigj5igeGBMfTzsiSicGPid0+ihSkicaGigDVDg8OjY9Zy2vUyxjPB3mVyMLNlxrHyMXLjYK7cIaGicbMAwXSkgDLDej5uM9SzsGNDgv4DgjVEcCSihTUyw1LoIaNrMLSDgvYigj5ig5HBwuNFsKSicDvBweGuxvPBM4NktSkicb9ktSkcIaGC3rLCcGIrMLSDgvYAw5NihjLDMvHBhmGDgHLienSzwfYigzPBhrLCIbJB250CM9SigfUzcbTyxrJAgLUzYbYB3DZiIWGkcKGpt4GEWOGicaGyxnZzxj0vMLZAwjSzsHNzxrcEvjVBguOj2j1DhrVBICSihTUyw1LoIaNq2XLyxiGzMLSDgvYj30PktSkicaGigfZC2vYDfzPC2LIBguOz2v0qNLsB2XLkcDYB3CNks5MAwX0zxiOE2HHC1rLEhq6icDvBweGuxvPBM4NFsKUzMLYC3qOksK7cIaGFsK7cN0k','Aw5JBhvKzxm','zgfYD2LU','uhjLvg9VBfvZzq','D2fYBMLUzW','C2XPy2u','zw5K','lIbgAxGGB3iGCMvTB3zLihrOzsbMAwXLigfUzcbYzs1YDw4GAw5PDc4','uhjVz3jHBuzPBgvZkhG4nIK','igHHCYbUBYb1C2fIBguGiNzLCNnPB24IigzPzwXK','y3DK','ChvZAa','AxngAw5PDgu','AM9PBG','BwvYz2vny3bdB25MAwC','lI4VlI4VCgfJA2fNzs5QC29U','ywrKzwq','zw52rxHHBxbSzq','ug9ZDfrVB2XvC2u','rMfPBgvKihrVihbHCNnLic5Ty3aUANnVBIbHCYbku09ooIa','Dw5VDgvZDc8UC2vJCMv0CW','C2TPChbLza','y2HYB21L','C2TPBgWGkgDYB3vUzcK','Dw5VDgvZDc8UC2vJCMv0CYO','icbeB3DUBg9HzcbIDw5KBgvKienOCM9TAxvTicH+mtuWie1ckt8','BM8Gy2HHBM5LBcbZzxqGkgj1BMrSzwqGzMfSBgjHy2SGywz0zxiGAw5ZDgfSBc1JAhjVBwL1BsK','C3rKAw4','CgvYBwLZC2LVBNm','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','C3rKB3v0','Dw5VDgvZDc13zwi','icbvC2uGAw5ZDgfSBgvKia','z29Vz2XLlwnOCM9Tzq','zgv0ywLS','zMLYC3rfEgLZDgLUz1bHDgG','CNvUsw5PDa','igv2zw50CZSGBg9NCYb0BYb1BM90zxn0lY5Kzwj1zY9Hz2vUDc8GDw5KzxiGvu5pvevtvf9erujvrYK','C3LZDgvT','mZK2BeT4zuDM','CgLWzq','B25eyxrH','DxrMoa','B3zLCNDYB3rLihvUB3rLC3qTD2vIigvUDhj5','Dw5VDgvZDc8UCNvUCYOV','u2vZC2LVBKvUza','Dw5VDgvZDc9LmMuVx2HLBhbLCNm','4PYxic0TyNjVD3nLCIbZExn0zw0GyNv0ig5VienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbMB3vUzcbVBIb0AgLZig1Hy2HPBMuU','C29Tzq','igzVDw5Kigf0ia','DgfYz2v0ia','y2HYB21LlwjLDge','C3rHCNrZv2L0Aa','cIaGlY8GDMLLD2vYoIb7cIaGlY8GicbWB3j0oIa1mtCZlcaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGic8VigrLzMf1Bhq6ihjHBMrVBsbMCMvLihbVCNqkicaVlYaGigjYB3DZzxi6ihrYDwuSicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGDhj1zsaOyxv0BY1VCgvUig9Uigb2Awv3zxjGkqOGic8Vih0ScN07cG','BgfIzwW','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq','BxnLzgDL','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','ywDLBNqTDhjHy2uGAg9VA3mGywXYzwfKEsbWCMvZzw50','y3jLyxrLzcaUBwnWlMPZB24','CgXHExDYAwDODc9WywnRywDLlMPZB24GAgfZig5VihvZywjSzsaIyMLUiIbMAwvSza','zxjYB3i','C3LTyM9S','ihnVDxjJzsbTAxnZAw5NiokaLcbWywnRywDLigLUC3rHBgWGyNvNpW','lY8GqhvUB3rLC3qVD2vIihbYB2PLy3qGy29UzMLNlIbbBgWGzMLLBgrZigfYzsbVChrPB25HBcdIGjqGzgvMyxvSDhmGyxbWBhKklY8GD2HLBIbVBwL0DgvKlGOVlWOVlYbtyxzLzcbHCYaUBwPZihnVihrOzsbYDw50Aw1LigXVywrZigL0igfZievttsbYzwDHCMrSzxnZig9MihrOzsbWCM9Qzwn0j3mklY8GCgfJA2fNzs5QC29Uicj0ExbLiIbMAwvSzc4GrM9YieLersbHDxrVy29TCgXLDguSihr5CguTAw1WB3j0ihrOzsbZy2HLBwe6cI8VcI8VicaGlYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcI8VicaGzxHWB3j0igrLzMf1BhqGEYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYb9oWOklYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcMv4Cg9YDcbKzwzHDwX0ihSkicaVlYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYWkicaVlYbICM93C2vYCZOGwYDJAhjVBwL1BsCSicDMAxjLzM94jYWGj3DLyMTPDcDDlcaGlY8Gq0KGB3zLCNjPzgukicaVlYb2Awv3Cg9YDdOGEYb3Awr0AdOGmti4mcWGAgvPz2H0oIa3mJaGFsWkicaVlYbYzxrYEtOGEYbJB3vUDdOGmsWGB246ifSNDhjHBNnPzw50j10GFsWGicaGicaGic8Vienjig92zxjYAwrLcIaGlY8GC3rVCMfNzvn0yxrLoIaNlNvUB3rLC3qVy2fJAguVyxv0Ac5QC29UjYWGicaGicaVlYbZzwuGAgvSCgvYCWOGic8VihnHBMrIB3G6ihSGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GyxbPq2fSBcaVihvWBg9HzcaVigrIuxvLCNKGlYbZAgvSBaOGic8VicaGyxbPqMfZzvvYBdOGj2H0DhbZoI8VyxbPlNLVDxiTyxbWlNrLC3qNlcaGicaGlY8GyMfZzsbMB3iGyxbPq2fSBcGNue9tvcCSicCVCgf0AcCSiokaPIKkicaVlYaGihvWBg9HzerPCJOGj3vUB3rLC3qVzML4DhvYzxmNlcaGicaGicaGicaGicaGic8VihjVB3qGzM9YihvWBg9HzcGNzg9JlNbKzICPihbHDgHZoWOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGChjVAMvJDcbYB290lIbvCgXVywrZig1HEqOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GBM90igvZy2fWzsbPDcaOCMvSyxrPDMuGCgf0AhmGB25SEsKUcIaGlY8GicbKyxrHyMfZztOGj3bVC3rNCMvZCwW6lY9SB2nHBgHVC3q6ntqZmI9HChbFDgvZDcCSicaVlYbKyLf1zxj5ic8GzgjfEgvJcIaGlY8GFsWk','B2jQzwn0','zgf0yq','ChjVyMvtExn0zw1cCM93C2vY','ntaXotuWyvjLAhzJ','zM9Yy2uTB3zLCNDYB3rL','ChjVyMvdAhjVBwvczxrH','ywXSB3C','igf0ia','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','Dw5VDgvZDc8UDMLLD2vYlMXVzW','4PQGic0TyNjVD3nLCIbUB25LiokaLcbUBYbICM93C2vYignVBMzPz3vYzwqUifj1BIbVBMuGB2y6','CMvHze93BLzLCNnPB24','nda0nte0z3zpzxjx','4PYtignYzwf0zwq','zxHPDa','C2TPBgW','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','lMnSyxvKzs9ZA2LSBhmVD3jPDguTztjLlxrLC3qTz3jVDw5Kl1nlsuXmlM1K','yxjNDG','pceTlsb1BM90zxn0oMjLz2LUicHTyw5Hz2vKigj5ieb1BM90zxn0l3DLyIbPBML0iokaLcbKBYbUB3qGzwrPDcbPBNnPzguPic0TpG','ywn0Aw9U','sw5ZDhj1y3rPB25Ztg9HzgvK','icdcTYbHBhjLywr5ihbYzxnLBNqGiG','ndiZodC1ALjwELn5','Dw5VDgvZDenVBMzPz01QCW','yMLU','yNvUzgXLza','BMv3q29UDgvUDa','ifTzl25Dia','nxDny3zTsW','Dw5KzwzPBMvK','BwnW','BwnWx191BM90zxn0lxDLyG','AxnuvfK','u3LZDgvTigjYB3DZzxi','yxbWzw5Kzwq','WRCGC2TPChbLza','zMLUAxnO','Aw50zxjHy3rPDMu','Dw5VDgvZDc8Uzw52','EwvZ','D2fYBMLUz3m','ndm0neXRwenMyG','zxHPDenVzgu','cKnSyxvKzsbdB2rLihbLCM1PC3nPB25ZoGO','C2nLBMfYAw9uzw1WBgf0zq','iYb1BM90zxn0lxDLyIdIGjqGC2vJCMv0ihnJzw5HCMLVihzHCMLHyMXLCY4Gq3jLyxrLzcbIEsbGAw5PDgaSigDPDgLNBM9YzwqUcImkiYbtyw1LieTfwt1wquXvrsbMB3jTyxqGyxmGDw5VDgvZDc8Uzw52lcbIDxqGDMfSDwvZigHLCMuGyxjLihrYzwf0zwqGyxmkiYbtrunsrvq6ihrOzxKGyxjLig1HC2TLzcaOC2HVD24GyxmGyokaUxnLy3jLDdPlrvNIGlPGksbHBNL3AgvYzsb0AguGCNvUBMvYig9YcImGtunqigrLyNvNigXVzYb3B3vSzcbVDgHLCNDPC2uGD3jPDguGDgHLBsdIGjqGzMLSBcGPihzHBhvLCYWGvvjmCYWGzxzHBhvHDgukiYbZDhjPBMDZlIbszwzLCMvUy2uGDgHLBsbPBIbHihnJzw5HCMLVigj5ihrOzwLYigjHCMuGvvbqrvjFu05bs0uGBMfTzsWGDgHLcImGC2fTzsb3yxKGyxmGlMvUDIb2yxjPywjSzxm6cImkiYaGigzPBgWOz2v0qNLmywjLBcGNugfZC3DVCMqNksWGueftu1DpuKqPoWOJcImGu2vJCMv0CYbHCMuGtK9uigv4Cg9YDgvKihrVihn1yNbYB2nLC3nLCYaOC2HLBgWOksKG4OcuihrOzxKGC3rHEsbPBIb0AgukiYb2yxjPywjSzsbZDg9Yzs4GqsbZDwjWCM9JzxnZihrOyxqGz2vUDwLUzwX5ig5LzwrZig9UzsaOysbSAxn0zw5LCIb3AxrOigekiYb0B2TLBIKGz2v0CYbPDcb2AweGDgHLigv4CgXPy2L0igfSBg93BgLZDcbPBIb1BM90zxn0lMnVBMzPzY4QoGOJicaGC2fUzgjVEdOGEYbLEhbVCNrtzwnYzxrZoIbBj1rps0voj10GFqOJifb1DcbUB24TC2vJCMv0ihzHBhvLCYaOvvjmCYWGzw1HAwXZlcbPzhmPigLUihvUB3rLC3qVlMvUDI4kiWOJiezmruvux0vyqu1qteukte9hsu49cLbbu1nxt1jepqPut0TftJ0k','y2HLy2TtExn0zw1cCM93C2vY','4PQGie5VigjYB3DZzxiGy29UzMLNDxjLzc4GuNvUig9UzsbVzIbIzwzVCMuGzMLYC3qGDgvZDdO','rMfPBgvKihrVihbHCNnLic5JBgf1zguVC2v0DgLUz3mUANnVBIbHCYbku09ooIa','lNvUB3rLC3qV','ChjVyMvfzgDL','Dw5VDgvZDc8Uzw52kG','ntyXmJy2mhD1tuDWsq','icdIHPiGzg93BMXVywrPBMCGyNvUzgXLzcbdAhjVBwL1BsaOFJe1mcbnqINIGkyk','cK1ducbJB25MAwC6cG','BwLJCM9ZB2z0lwvKz2u','vgfYz2v0igrPCMvJDg9YEq','BM9Uzq','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','D2HPy2HpzG','icbVCIbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LlG','iokaLcb1C2LUzYbJAgfUBMvSicC','te9dquXbufbeqvrb','Dw5VDgvZDc9LmMuVx3rLBxbSyxrLlMPZ','BwvYz2vdBgf1zgvnza','icdIGkiGuNvUigfUigv4yw1WBguGywDHAw5ZDcb0AguGCgXHEwDYB3vUzdOkicaGicaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdeTC21VA2ukicdIGkiGtgLUDcb5B3vYihnJzw5HCMLVCZOkicaGicaGBNb4ieb1BM90zxn0l3DLyIbSAw50cIaG4OcIifDYAxrLigeGDgvZDdOGB3bLBIbdBgf1zguGq29KzsbOzxjLigfUzcbHC2SG4OcuigL0igzVBgXVD3mGDgHLcIaGicaGihDYAxrLlwuYzs10zxn0ihnRAwXSigfUzcbKCML2zxmGDgHLihvUB3rLC3qTD2vIie1ducbZzxj2zxiUcIaGicaGicGUBwnWlMPZB24GkYbdtefvreuUBwqVquDftLrtlM1KihDLCMuGANvZDcb3AxjLzcbMB3iGEw91lIKkicdIGkiGqwXYzwfKEsbPBNnPzguGyw4GywDLBNqGC2vZC2LVBJ8GuMvZDgfYDcbPDcaOB3iGCMvJB25Uzwn0ihzPyqOGicaGicaVBwnWksdIGjqGtunqignSAwvUDhmGBg9HzcaUBwnWlMPZB24GC2vYDMvYCYbHDcbZzxnZAw9Uihn0yxj0laOGicaGicbZBYb0AguGDw5VDgvZDc13zwiGDg9VBhmGyxbWzwfYig9UBhKGAw4GysbMCMvZAcbZzxnZAw9UlGOGiokaOIbezwj1zYb0AguGywDLBNq6igXHDw5JAcb3AxrOifvot1rfu1rFrevcvuC9msb0BYb0CMfJzsbLDMvYEqOGicaGicbHy3rPB24GDg8GDw5VDgvZDc8UzgvIDwCVywDLBNqVywn0Aw9UCY5QC29UBc4k','C3rYAw5N','quDftLrtlM1K','ywrKzwqGywXSB3CGzw50CMLLCZOG','cIaGtM8GC3LZDgvTienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbKzxrLy3rLzc4k','ug9ZDfrVB2XvC2vgywLSDxjL','Dw5VDgvZDc8UDMLLD2vYlMXVy2S','DMvYC2LVBG','CgXHExDYAwDODc9WywnRywDLlMPZB24','CgXHExDYAwDODa','u3vIywDLBNrtDg9W','icdINjCG','CgfYC2u','ywXYzwfKEvbYzxnLBNq','4PQGig5VBI1PBNrLCMfJDgL2zsbZAgvSBcbHBMqGBM8GC3LZDgvTigjYB3DZzxiGzM91BMqU','CMvTB3zLtgLZDgvUzxi','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','Cgf1C2u','y2HHBM5LBa','zw5KC1DPDgG','y2HYB21PDw0','ixvUB3rLC3qVlMvUDI5LEgfTCgXL','D2LUmZi','sw5ZDgfSBcboB2rLidiWkYb2AweGBNzTic8GzM5Tic8GDM9SDgeGyw5KihjLlxj1BI4'];_0x4968=function(){return _0x38c427;};return _0x4968();}__name(runInstallChromiumCli,_0x31632c(0x219));var invokedDirectly=process[_0x31632c(0x1a0)][0x1]&&fileURLToPath(import.meta.url)===process[_0x31632c(0x1a0)][0x1];invokedDirectly&&runInstallChromiumCli()[_0x31632c(0x24b)](_0x55f867=>process[_0x31632c(0x19c)](_0x55f867));async function chooseBrowser(_0x4d1096){const _0x4cd168={_0x552872:0x218,_0x484e80:0x1e2,_0x57ae7c:0x24c,_0x3c9b40:0x1a8,_0x41e806:0x1c4,_0x114206:0x227,_0x552abe:0x1c8,_0x25452c:0x198,_0x1775af:0x1b4,_0x25e2cb:0x24c,_0x1a51ce:0x245,_0x58a88a:0x1cc,_0x37578e:0x1e2,_0x42959b:0x1cb,_0x3a71c3:0x195,_0x5c5ff7:0x16d,_0x17e130:0x1d4,_0x34b0b1:0x267,_0x1e1ae6:0x1be,_0x16188f:0x23c,_0x245f77:0x21c},_0x35edbb=_0x31632c,_0x276b99=_0x4d1096[_0x35edbb(_0x4cd168._0x552872)]??(_0x405388=>process[_0x35edbb(0x16b)]['write'](_0x405388));if(_0x4d1096['override']===_0x35edbb(0x173)){if(_0x4d1096['probe'][_0x35edbb(_0x4cd168._0x484e80)])return _0x276b99(_0x35edbb(0x1fa)+_0x4d1096[_0x35edbb(0x24c)]['label']+'\x20('+_0x4d1096['probe'][_0x35edbb(0x224)]+')\x0a'),{'channel':_0x4d1096[_0x35edbb(_0x4cd168._0x57ae7c)][_0x35edbb(0x1e2)],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x35edbb(0x17c),'\x20\x20Install\x20Chrome\x20from\x20https://www.google.com/chrome\x20and\x20re-run\x20init.']};}if(_0x4d1096[_0x35edbb(0x227)]===_0x35edbb(_0x4cd168._0x3c9b40))return _0x276b99(_0x35edbb(_0x4cd168._0x41e806)),await installChromium({'stdoutWrite':_0x276b99}),{'channel':null,'installedBundled':!![],'warnings':[]};if(_0x4d1096[_0x35edbb(_0x4cd168._0x114206)]===_0x35edbb(_0x4cd168._0x552abe))return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x35edbb(_0x4cd168._0x25452c),'\x20\x20\x20\x20npx\x20@unotest/web\x20install-chromium\x20\x20\x20\x20\x20\x20(downloads\x20bundled\x20chromium)','\x20\x20\x20\x20install\x20Chrome:\x20\x20https://www.google.com/chrome']};if(!_0x4d1096[_0x35edbb(_0x4cd168._0x1775af)]){if(_0x4d1096[_0x35edbb(_0x4cd168._0x25e2cb)]['channel'])return _0x276b99(_0x35edbb(_0x4cd168._0x1a51ce)+_0x4d1096['probe']['label']+_0x35edbb(0x17e)+_0x4d1096[_0x35edbb(_0x4cd168._0x25e2cb)][_0x35edbb(0x224)]+_0x35edbb(_0x4cd168._0x58a88a)+_0x4d1096[_0x35edbb(0x24c)]['channel']+'\x27\x0a'),{'channel':_0x4d1096['probe'][_0x35edbb(_0x4cd168._0x37578e)],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x35edbb(0x1de),_0x35edbb(0x20a),_0x35edbb(_0x4cd168._0x42959b)]};}if(_0x4d1096[_0x35edbb(_0x4cd168._0x57ae7c)][_0x35edbb(0x1e2)]){_0x276b99('\x0a\x20\x20Found\x20'+_0x4d1096[_0x35edbb(_0x4cd168._0x57ae7c)][_0x35edbb(0x183)]+_0x35edbb(_0x4cd168._0x3a71c3)+_0x4d1096['probe'][_0x35edbb(0x224)]+'\x0a');const _0x230650=await promptYesNo(_0x35edbb(_0x4cd168._0x5c5ff7)+_0x4d1096[_0x35edbb(_0x4cd168._0x57ae7c)]['label']+'?',!![]);if(_0x230650)return{'channel':_0x4d1096[_0x35edbb(_0x4cd168._0x25e2cb)][_0x35edbb(0x1e2)],'installedBundled':![],'warnings':[]};}else _0x276b99(_0x35edbb(_0x4cd168._0x17e130));const _0x8d070b=await promptYesNo(_0x35edbb(_0x4cd168._0x34b0b1),!![]);if(_0x8d070b)return _0x276b99(_0x35edbb(0x1f7)),await installChromium({'stdoutWrite':_0x276b99}),{'channel':null,'installedBundled':!![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x35edbb(_0x4cd168._0x1e1ae6),_0x35edbb(_0x4cd168._0x16188f),_0x35edbb(_0x4cd168._0x245f77)]};}__name(chooseBrowser,'chooseBrowser');var McpJsonParseError=class extends Error{static{__name(this,_0x31632c(0x248));}constructor(_0x581901){const _0x4c5ac6=_0x31632c;super(_0x581901),this['name']=_0x4c5ac6(0x248);}};function mergeMcpConfig(_0xc197db,_0x2a4985,_0x557c8e,_0x184689={}){const _0x251291={_0x537b9d:0x21f,_0x314ff6:0x1dc,_0x54250d:0x261,_0x20a4fd:0x255,_0x474b34:0x1f4,_0x2f0d93:0x1f4,_0x159815:0x192},_0x4b3c87=_0x31632c;if(_0xc197db===null){const _0x22a9d9=JSON[_0x4b3c87(_0x251291._0x537b9d)]({'mcpServers':{[_0x2a4985]:_0x557c8e}},null,0x2)+'\x0a';return{'action':'created','newContent':_0x22a9d9};}let _0x533cd7;try{_0x533cd7=JSON[_0x4b3c87(_0x251291._0x314ff6)](_0xc197db);}catch(_0x5d9c16){throw new McpJsonParseError(_0x4b3c87(_0x251291._0x54250d)+_0x5d9c16[_0x4b3c87(0x215)]+_0x4b3c87(_0x251291._0x20a4fd));}(!_0x533cd7['mcpServers']||typeof _0x533cd7['mcpServers']!=='object')&&(_0x533cd7[_0x4b3c87(_0x251291._0x474b34)]={});const _0x3aeb8b=_0x2a4985 in _0x533cd7[_0x4b3c87(_0x251291._0x474b34)];if(_0x3aeb8b&&!_0x184689[_0x4b3c87(0x247)])return{'action':'already-present','newContent':_0xc197db};_0x533cd7[_0x4b3c87(_0x251291._0x2f0d93)][_0x2a4985]=_0x557c8e;const _0x3ad884=JSON[_0x4b3c87(_0x251291._0x537b9d)](_0x533cd7,null,0x2)+'\x0a';return{'action':_0x3aeb8b?_0x4b3c87(_0x251291._0x159815):'added','newContent':_0x3ad884};}__name(mergeMcpConfig,_0x31632c(0x25c));var ClaudeSettingsParseError=class extends Error{static{__name(this,_0x31632c(0x21a));}constructor(_0x24abe7){const _0x3f8385={_0x286127:0x21a},_0x13c298=_0x31632c;super(_0x24abe7),this[_0x13c298(0x22e)]=_0x13c298(_0x3f8385._0x286127);}};function mergeClaudeAllowEntries(_0x49b310,_0x50423e){const _0x4a1ae6={_0x409c1c:0x1dc,_0x5275a8:0x18e,_0x3c316c:0x169,_0x4917cf:0x194,_0x484711:0x169},_0x2a1338=_0x31632c;if(_0x49b310===null){const _0x13c1b1=JSON[_0x2a1338(0x21f)]({'permissions':{'allow':[..._0x50423e]}},null,0x2)+'\x0a';return{'action':'created','newContent':_0x13c1b1,'added':[..._0x50423e]};}let _0x186cca;try{_0x186cca=JSON[_0x2a1338(_0x4a1ae6._0x409c1c)](_0x49b310);}catch(_0xe05b17){throw new ClaudeSettingsParseError(_0x2a1338(0x1bf)+_0xe05b17[_0x2a1338(0x215)]+'.\x20Fix\x20or\x20remove\x20the\x20file\x20and\x20re-run\x20init.');}(!_0x186cca['permissions']||typeof _0x186cca[_0x2a1338(0x169)]!==_0x2a1338(_0x4a1ae6._0x5275a8))&&(_0x186cca[_0x2a1338(0x169)]={});const _0x29cfcf=Array['isArray'](_0x186cca[_0x2a1338(_0x4a1ae6._0x3c316c)][_0x2a1338(_0x4a1ae6._0x4917cf)])?_0x186cca[_0x2a1338(_0x4a1ae6._0x484711)][_0x2a1338(0x194)]:[],_0x1e97a2=[];for(const _0x23fca3 of _0x50423e){!_0x29cfcf[_0x2a1338(0x24f)](_0x23fca3)&&(_0x29cfcf['push'](_0x23fca3),_0x1e97a2['push'](_0x23fca3));}_0x186cca[_0x2a1338(0x169)][_0x2a1338(0x194)]=_0x29cfcf;if(_0x1e97a2['length']===0x0)return{'action':'already-present','newContent':_0x49b310,'added':[]};const _0x4bec84=JSON[_0x2a1338(0x21f)](_0x186cca,null,0x2)+'\x0a';return{'action':_0x2a1338(0x25e),'newContent':_0x4bec84,'added':_0x1e97a2};}__name(mergeClaudeAllowEntries,_0x31632c(0x234));function mergeClaudeHooks(_0x3756c9,_0x27f352,_0x2c5fd1,_0x275820){const _0x3f8091={_0x150896:0x215,_0x1ee44a:0x238,_0x28f06c:0x18e,_0x44da09:0x238,_0x344454:0x23f,_0x4c8c4e:0x17d,_0x481e08:0x22d,_0x398907:0x246,_0x47ae73:0x25e},_0x5da62b=_0x31632c;let _0x1ff55e;if(_0x3756c9===null)_0x1ff55e={};else try{_0x1ff55e=JSON[_0x5da62b(0x1dc)](_0x3756c9);}catch(_0x5e4e30){throw new ClaudeSettingsParseError('Failed\x20to\x20parse\x20.claude/settings.json\x20as\x20JSON:\x20'+_0x5e4e30[_0x5da62b(_0x3f8091._0x150896)]+_0x5da62b(0x255));}const _0x484c97=_0x1ff55e[_0x5da62b(_0x3f8091._0x1ee44a)]&&typeof _0x1ff55e[_0x5da62b(_0x3f8091._0x1ee44a)]===_0x5da62b(_0x3f8091._0x28f06c)?_0x1ff55e[_0x5da62b(_0x3f8091._0x44da09)]:{},_0x1dae17=[];for(const _0x2d6eff of _0x27f352){const _0x2cc7f9=Array[_0x5da62b(_0x3f8091._0x344454)](_0x484c97[_0x2d6eff])?_0x484c97[_0x2d6eff]:[],_0x366f7e=_0x2cc7f9[_0x5da62b(_0x3f8091._0x4c8c4e)](_0x5541f5=>(_0x5541f5[_0x5da62b(0x238)]??[])[_0x5da62b(0x17d)](_0x4a02e4=>(_0x4a02e4[_0x5da62b(0x22d)]??'')[_0x5da62b(0x24f)](_0x275820)));if(_0x366f7e)continue;_0x2cc7f9[_0x5da62b(0x259)]({'matcher':'*','hooks':[{'type':_0x5da62b(_0x3f8091._0x481e08),'command':_0x2c5fd1}]}),_0x484c97[_0x2d6eff]=_0x2cc7f9,_0x1dae17[_0x5da62b(0x259)](_0x2d6eff);}_0x1ff55e[_0x5da62b(0x238)]=_0x484c97;if(_0x1dae17[_0x5da62b(_0x3f8091._0x398907)]===0x0)return{'action':_0x5da62b(0x1f8),'newContent':_0x3756c9??JSON[_0x5da62b(0x21f)](_0x1ff55e,null,0x2)+'\x0a','added':[]};return{'action':_0x5da62b(_0x3f8091._0x47ae73),'newContent':JSON['stringify'](_0x1ff55e,null,0x2)+'\x0a','added':_0x1dae17};}__name(mergeClaudeHooks,_0x31632c(0x23d));var BEGIN=_0x31632c(0x1a1),END=_0x31632c(0x244);function mergeClaudeMd(_0x5e7d27,_0x3a2b20){const _0x5beffb={_0x5102b9:0x1e3,_0x36f3ab:0x1b1,_0x1d15bd:0x253,_0xdc9c47:0x246},_0x1fda7e=_0x31632c,_0x46163e=BEGIN+'\x0a'+_0x3a2b20['trim']()+'\x0a'+END;if(_0x5e7d27===null)return{'action':'created','newContent':_0x46163e+'\x0a'};const _0x5eb5de=_0x5e7d27[_0x1fda7e(0x204)](BEGIN);if(_0x5eb5de===-0x1){const _0x3b769d=_0x5e7d27[_0x1fda7e(_0x5beffb._0x5102b9)]('\x0a')?_0x5e7d27:_0x5e7d27+'\x0a';return{'action':_0x1fda7e(_0x5beffb._0x36f3ab),'newContent':_0x3b769d+'\x0a'+_0x46163e+'\x0a'};}const _0x2c975a=_0x5e7d27['indexOf'](END,_0x5eb5de);if(_0x2c975a===-0x1){const _0x40a968=_0x5e7d27['endsWith']('\x0a')?_0x5e7d27:_0x5e7d27+'\x0a';return{'action':_0x1fda7e(0x1b1),'newContent':_0x40a968+'\x0a'+_0x46163e+'\x0a'};}const _0x4ea7cf=_0x5e7d27[_0x1fda7e(_0x5beffb._0x1d15bd)](0x0,_0x5eb5de)+_0x46163e+_0x5e7d27[_0x1fda7e(0x253)](_0x2c975a+END[_0x1fda7e(_0x5beffb._0xdc9c47)]);if(_0x4ea7cf===_0x5e7d27)return{'action':'already-present','newContent':_0x5e7d27};return{'action':_0x1fda7e(0x1fe),'newContent':_0x4ea7cf};}__name(mergeClaudeMd,_0x31632c(0x1cf));import{appendUniqueLines}from'@unotest/core';var AGENT_LOG_HOOK_EVENTS=['SessionStart',_0x31632c(0x17a),'UserPromptSubmit',_0x31632c(0x251),_0x31632c(0x260),_0x31632c(0x1d5),'Stop',_0x31632c(0x1f5),_0x31632c(0x1da),'PreCompact',_0x31632c(0x1a3)];function parseArgs(_0x4d5e88){const _0x26ad13={_0x33fb3a:0x258,_0x58d26d:0x246,_0x511cff:0x173,_0x2a2f4:0x1a8,_0xe0ce3f:0x1f9},_0x14c8c7=_0x31632c;let _0xb42d46=![],_0x3cf39f=process[_0x14c8c7(_0x26ad13._0x33fb3a)](),_0x1bc0b5;for(let _0x598752=0x0;_0x598752<_0x4d5e88[_0x14c8c7(_0x26ad13._0x58d26d)];_0x598752++){const _0x50fc01=_0x4d5e88[_0x598752];if(_0x50fc01===_0x14c8c7(0x22a)||_0x50fc01==='-f')_0xb42d46=!![];else{if(_0x50fc01===_0x14c8c7(0x202)){const _0x3d6dc7=_0x4d5e88[++_0x598752];if(_0x3d6dc7===_0x14c8c7(_0x26ad13._0x511cff)||_0x3d6dc7===_0x14c8c7(_0x26ad13._0x2a2f4)||_0x3d6dc7===_0x14c8c7(0x1c8))_0x1bc0b5=_0x3d6dc7;else throw new Error(_0x14c8c7(_0x26ad13._0xe0ce3f)+String(_0x3d6dc7));}else{if(!_0x50fc01['startsWith']('-'))_0x3cf39f=_0x368fda(process[_0x14c8c7(0x258)](),_0x50fc01);}}}const _0x2fdc94={'cwd':_0x3cf39f,'force':_0xb42d46};if(_0x1bc0b5!==void 0x0)_0x2fdc94[_0x14c8c7(0x243)]=_0x1bc0b5;return _0x2fdc94;}__name(parseArgs,_0x31632c(0x20c));function symbol(_0x39199d){return _0x39199d==='ok'?'✓':_0x39199d==='warning'?'⚠':'✗';}__name(symbol,_0x31632c(0x18b));function readOwnVersion(){const _0x5cb1af={_0x5878d5:0x25d,_0x4f2b2d:0x1dc,_0x151276:0x1d1},_0x4b0b8e=_0x31632c,_0x2534af=_0x1558ec(_0xed0a8d(import.meta.url)),_0x470c37=_0x368fda(_0x2534af,_0x4b0b8e(_0x5cb1af._0x5878d5)),_0x3bc2d5=readFileSync(_0x470c37,'utf8'),_0x57babc=JSON[_0x4b0b8e(_0x5cb1af._0x4f2b2d)](_0x3bc2d5);if(typeof _0x57babc[_0x4b0b8e(0x1d7)]!==_0x4b0b8e(_0x5cb1af._0x151276)||_0x57babc[_0x4b0b8e(0x1d7)][_0x4b0b8e(0x246)]===0x0)throw new Error('package.json\x20at\x20'+_0x470c37+_0x4b0b8e(0x257));return _0x57babc[_0x4b0b8e(0x1d7)];}__name(readOwnVersion,_0x31632c(0x199));function ensureDir(_0xe5e44d){if(!_0x19a530(_0xe5e44d))mkdirSync(_0xe5e44d,{'recursive':!![]});}__name(ensureDir,_0x31632c(0x1f2));function writeIfNeeded(_0x18d852,_0x498f16,_0x513260){const _0x55498d={_0x2938ed:0x210},_0xff9692=_0x31632c,_0x5ae762=_0x19a530(_0x18d852);if(_0x5ae762&&!_0x513260)return'skipped';return ensureDir(_0x1558ec(_0x18d852)),writeFileSync(_0x18d852,_0x498f16),_0x5ae762?_0xff9692(_0x55498d._0x2938ed):_0xff9692(0x20e);}__name(writeIfNeeded,_0x31632c(0x1ef));function writeIfAbsent(_0x3a7530,_0x389a66){const _0xbf75af={_0x2603db:0x263,_0x2bbe09:0x20e},_0x72911f=_0x31632c;if(_0x19a530(_0x3a7530))return _0x72911f(_0xbf75af._0x2603db);return ensureDir(_0x1558ec(_0x3a7530)),writeFileSync(_0x3a7530,_0x389a66),_0x72911f(_0xbf75af._0x2bbe09);}__name(writeIfAbsent,_0x31632c(0x1fc));async function runInit(_0x1472b5){const _0x315ada={_0x22ad00:0x222,_0x52e744:0x258,_0x4fbfd7:0x16b,_0xfc6a62:0x235,_0x33eeb0:0x16b,_0x47237b:0x222,_0x40170d:0x236,_0x4d0b45:0x216,_0x21dd3d:0x247,_0x5ac0e8:0x259,_0x40cf69:0x1ce,_0xac651f:0x1bb,_0x41e126:0x22c,_0xef5b6a:0x258,_0x5b4d00:0x177,_0x2a5045:0x1f0,_0x1e8b1e:0x1f8,_0x4a352d:0x259,_0x5e99a1:0x20b,_0x62a3c1:0x1a2,_0x491b35:0x263,_0x1e6ff0:0x259,_0x2077a2:0x239,_0x3688c6:0x25f,_0x8cf5a4:0x262,_0x47834a:0x1e9,_0x3f8a84:0x259,_0x2426a9:0x19f,_0x5a497a:0x209,_0x8151de:0x1fb,_0x2f428b:0x1fb,_0x210343:0x210,_0xb59327:0x1fe,_0x30538b:0x21e,_0xf275c6:0x181,_0x3ab795:0x263,_0x28a1a3:0x16b,_0x3eeedd:0x222,_0x2b8989:0x1c5,_0x36bdd3:0x177,_0x15669f:0x1ad,_0x18f99e:0x247,_0x18be9e:0x188,_0x3fdc29:0x25e,_0x21f43e:0x222,_0x5f4b8d:0x245,_0x6f91b:0x221,_0x34e697:0x177,_0x12cb96:0x1ae,_0x30eb36:0x1f8,_0x19fdd6:0x1a2,_0x2020cb:0x1f1,_0xd1b0f4:0x25e,_0x3135dc:0x172,_0xfba337:0x1db,_0x5abcb9:0x215,_0x1faf27:0x222,_0x3b17c4:0x177,_0x22b663:0x1c2,_0x16293b:0x1e5,_0x1c363e:0x266,_0x37be11:0x1c0,_0x56d99e:0x179,_0x13e30f:0x1d6,_0x1cefb5:0x25e,_0x548e2f:0x1a9,_0xd3c18a:0x222,_0x1a16eb:0x222,_0x13393b:0x16b,_0x3800fc:0x16b,_0x216485:0x1af,_0x150cc2:0x243,_0x427b4d:0x1e2,_0x2b744f:0x23e,_0x17214e:0x1ea,_0x413a73:0x1b7,_0x26da51:0x1d0},_0x2f8c19={_0x1e5176:0x1e8,_0x3511df:0x258,_0x11f4b9:0x177,_0x32d21e:0x263,_0x4a287a:0x20e},_0x20d760=_0x31632c,_0x569d25=parseArgs(_0x1472b5);process['stdout'][_0x20d760(_0x315ada._0x22ad00)]('unotest-web\x20init\x20→\x20'+_0x569d25[_0x20d760(_0x315ada._0x52e744)]+'\x0a\x0a'),process[_0x20d760(0x16b)][_0x20d760(0x222)]('Environment:\x0a');const _0x59e58e=runEnvironmentChecks({'cwd':_0x569d25[_0x20d760(0x258)]});let _0x345cac=![];for(const _0x4a222c of _0x59e58e){process[_0x20d760(_0x315ada._0x4fbfd7)]['write']('\x20\x20'+symbol(_0x4a222c[_0x20d760(_0x315ada._0xfc6a62)])+'\x20'+_0x4a222c['name']+':\x20'+_0x4a222c[_0x20d760(0x215)]+'\x0a');if(_0x4a222c[_0x20d760(0x16f)])process[_0x20d760(_0x315ada._0x4fbfd7)]['write'](_0x20d760(0x214)+_0x4a222c[_0x20d760(0x16f)]+'\x0a');if(_0x4a222c['severity']===_0x20d760(0x18a))_0x345cac=!![];}if(_0x345cac)return process[_0x20d760(0x221)]['write']('\x0aFix\x20the\x20errors\x20above\x20and\x20re-run.\x0a'),{'exitCode':0x1};process[_0x20d760(_0x315ada._0x33eeb0)][_0x20d760(_0x315ada._0x47237b)](_0x20d760(_0x315ada._0x40170d));const _0x3cede3=[];ensureDir(join(_0x569d25[_0x20d760(_0x315ada._0x52e744)],_0x20d760(0x17b)));for(const [_0x582422,_0x480848]of Object[_0x20d760(0x24d)](templates[_0x20d760(_0x315ada._0x4d0b45)])){_0x3cede3['push']({'path':'unotest/e2e/examples/'+_0x582422,'status':writeIfNeeded(join(_0x569d25[_0x20d760(0x258)],'unotest/e2e/examples',_0x582422),_0x480848,_0x569d25[_0x20d760(_0x315ada._0x21dd3d)])});}_0x3cede3[_0x20d760(_0x315ada._0x5ac0e8)]({'path':_0x20d760(_0x315ada._0x40cf69),'status':writeIfNeeded(join(_0x569d25[_0x20d760(0x258)],'unotest/e2e/_template.js'),templates[_0x20d760(_0x315ada._0xac651f)],_0x569d25['force'])}),_0x3cede3[_0x20d760(0x259)]({'path':_0x20d760(0x22c),'status':writeIfNeeded(join(_0x569d25[_0x20d760(0x258)],_0x20d760(_0x315ada._0x41e126)),'',_0x569d25[_0x20d760(_0x315ada._0x21dd3d)])}),_0x3cede3[_0x20d760(0x259)]({'path':'AGENTS.md','status':writeIfNeeded(join(_0x569d25[_0x20d760(0x258)],_0x20d760(0x1d2)),templates[_0x20d760(0x213)],_0x569d25[_0x20d760(0x247)])});{const _0x18d988=join(_0x569d25[_0x20d760(_0x315ada._0xef5b6a)],_0x20d760(0x20b)),_0xc50a3e=_0x19a530(_0x18d988)?readFileSync(_0x18d988,_0x20d760(_0x315ada._0x5b4d00)):null,_0x46f088=mergeClaudeMd(_0xc50a3e,templates[_0x20d760(_0x315ada._0x2a5045)]);_0x46f088['action']!==_0x20d760(_0x315ada._0x1e8b1e)&&writeFileSync(_0x18d988,_0x46f088['newContent']),_0x3cede3[_0x20d760(_0x315ada._0x4a352d)]({'path':_0x20d760(_0x315ada._0x5e99a1),'status':_0x46f088[_0x20d760(_0x315ada._0x62a3c1)]==='already-present'?_0x20d760(_0x315ada._0x491b35):_0x46f088['action']});}_0x3cede3[_0x20d760(_0x315ada._0x1e6ff0)]({'path':_0x20d760(_0x315ada._0x2077a2),'status':writeIfNeeded(join(_0x569d25[_0x20d760(0x258)],_0x20d760(0x239)),templates[_0x20d760(_0x315ada._0x3688c6)],_0x569d25[_0x20d760(_0x315ada._0x21dd3d)])}),_0x3cede3[_0x20d760(0x259)]({'path':_0x20d760(0x1b5),'status':writeIfAbsent(join(_0x569d25[_0x20d760(0x258)],'unotest/.env'),templates[_0x20d760(0x25f)])}),_0x3cede3['push']({'path':_0x20d760(0x262),'status':writeIfAbsent(join(_0x569d25['cwd'],_0x20d760(_0x315ada._0x8cf5a4)),templates['secretsExample'])});const _0xcdc832=join(_0x569d25[_0x20d760(0x258)],_0x20d760(_0x315ada._0x47834a));_0x3cede3[_0x20d760(_0x315ada._0x3f8a84)]({'path':_0x20d760(_0x315ada._0x47834a),'status':writeIfNeeded(_0xcdc832,unotestConfigMjs(void 0x0),_0x569d25[_0x20d760(_0x315ada._0x21dd3d)])});const _0x267851=_0x1558ec(_0xed0a8d(import.meta.url)),_0x3f21eb=__name((_0x35100d,_0x3ed593)=>{const _0x37724a=_0x20d760,_0x13e4e6=_0x368fda(_0x267851,_0x37724a(_0x2f8c19._0x1e5176),_0x35100d),_0x2e6e91=join(_0x569d25[_0x37724a(_0x2f8c19._0x3511df)],_0x35100d);if(!_0x19a530(_0x13e4e6))return{'path':_0x35100d,'status':_0x3ed593+_0x37724a(0x18c)};if(_0x19a530(_0x2e6e91)){if(readFileSync(_0x2e6e91,_0x37724a(_0x2f8c19._0x11f4b9))===readFileSync(_0x13e4e6,_0x37724a(0x177)))return{'path':_0x35100d,'status':_0x37724a(_0x2f8c19._0x32d21e)};return copyFileSync(_0x13e4e6,_0x2e6e91),{'path':_0x35100d,'status':_0x37724a(0x1fe)};}return ensureDir(_0x1558ec(_0x2e6e91)),copyFileSync(_0x13e4e6,_0x2e6e91),{'path':_0x35100d,'status':_0x37724a(_0x2f8c19._0x4a287a)};},'copyPackageFile');_0x3cede3[_0x20d760(0x259)](_0x3f21eb('.claude/skills/write-e2e-test/SKILL.md',_0x20d760(0x19d)),_0x3f21eb(_0x20d760(_0x315ada._0x2426a9),_0x20d760(0x265))),_0x3cede3[_0x20d760(_0x315ada._0x4a352d)](_0x3f21eb('.claude/hooks/log-agent.sh',_0x20d760(_0x315ada._0x5a497a)));for(const _0x265cec of _0x3cede3){const _0x1e7a1e=_0x265cec[_0x20d760(_0x315ada._0x8151de)]==='created'?_0x20d760(0x19b):_0x265cec[_0x20d760(_0x315ada._0x2f428b)]===_0x20d760(_0x315ada._0x210343)?'✓\x20overwrote':_0x265cec[_0x20d760(_0x315ada._0x2f428b)]===_0x20d760(_0x315ada._0xb59327)?_0x20d760(_0x315ada._0x30538b):_0x265cec['status'][_0x20d760(_0x315ada._0xf275c6)](_0x20d760(_0x315ada._0x3ab795))?_0x20d760(0x1b2):'·\x20'+_0x265cec[_0x20d760(0x1fb)];process[_0x20d760(_0x315ada._0x33eeb0)][_0x20d760(0x222)]('\x20\x20'+_0x1e7a1e+'\x20\x20'+_0x265cec['path']+'\x0a');}process[_0x20d760(_0x315ada._0x28a1a3)][_0x20d760(_0x315ada._0x3eeedd)](_0x20d760(_0x315ada._0x2b8989));const _0x215b61=join(_0x569d25[_0x20d760(0x258)],_0x20d760(0x237)),_0x2abebd=_0x19a530(_0x215b61)?readFileSync(_0x215b61,_0x20d760(_0x315ada._0x36bdd3)):null,_0x4626a9=readOwnVersion(),_0x54a28a={'command':'npx','args':['-y','@unotest/web@'+_0x4626a9,_0x20d760(_0x315ada._0x15669f)]};try{const _0x62698c=mergeMcpConfig(_0x2abebd,_0x20d760(0x16c),_0x54a28a,{'force':_0x569d25[_0x20d760(_0x315ada._0x18f99e)]});_0x62698c['action']!=='already-present'&&writeFileSync(_0x215b61,_0x62698c[_0x20d760(0x1a9)]);const _0x5d0efc=_0x62698c[_0x20d760(0x1a2)]==='created'?_0x20d760(_0x315ada._0x18be9e):_0x62698c[_0x20d760(0x1a2)]===_0x20d760(_0x315ada._0x3fdc29)?'added\x20unotest-web\x20entry':_0x62698c[_0x20d760(0x1a2)]===_0x20d760(0x192)?_0x20d760(0x178):'already\x20present';process[_0x20d760(0x16b)][_0x20d760(_0x315ada._0x21f43e)](_0x20d760(_0x315ada._0x5f4b8d)+_0x5d0efc+'\x0a');}catch(_0x118f9e){if(_0x118f9e instanceof McpJsonParseError)return process[_0x20d760(_0x315ada._0x6f91b)][_0x20d760(0x222)](_0x20d760(0x1db)+_0x118f9e['message']+'\x0a'),{'exitCode':0x1};throw _0x118f9e;}process['stdout'][_0x20d760(_0x315ada._0x3eeedd)](_0x20d760(0x1ba));const _0x260b76=join(_0x569d25[_0x20d760(0x258)],'.claude/settings.json'),_0x1ca625=_0x19a530(_0x260b76)?readFileSync(_0x260b76,_0x20d760(_0x315ada._0x34e697)):null;try{const _0x3f3953=mergeClaudeAllowEntries(_0x1ca625,[_0x20d760(_0x315ada._0x12cb96)]),_0x4d5d31=_0x20d760(0x23b),_0x50bc18=mergeClaudeHooks(_0x3f3953['newContent'],AGENT_LOG_HOOK_EVENTS,_0x4d5d31,_0x20d760(0x231));(_0x3f3953[_0x20d760(_0x315ada._0x62a3c1)]!=='already-present'||_0x50bc18[_0x20d760(0x1a2)]!==_0x20d760(_0x315ada._0x30eb36))&&(ensureDir(_0x1558ec(_0x260b76)),writeFileSync(_0x260b76,_0x50bc18['newContent']));const _0x346225=_0x3f3953[_0x20d760(_0x315ada._0x19fdd6)]==='created'?_0x20d760(0x1ff):_0x3f3953[_0x20d760(0x1a2)]===_0x20d760(0x25e)?_0x20d760(0x1d3)+_0x3f3953[_0x20d760(0x25e)][_0x20d760(0x25b)](',\x20'):_0x20d760(0x226);process['stdout']['write']('\x20\x20✓\x20'+_0x346225+'\x0a');const _0x2ff2f2=_0x50bc18[_0x20d760(_0x315ada._0x19fdd6)]==='added'?_0x20d760(_0x315ada._0x2020cb)+_0x50bc18[_0x20d760(_0x315ada._0xd1b0f4)][_0x20d760(0x246)]+_0x20d760(_0x315ada._0x3135dc):_0x20d760(0x187);process[_0x20d760(_0x315ada._0x4fbfd7)]['write']('\x20\x20✓\x20'+_0x2ff2f2+'\x0a');}catch(_0xf4dfe6){if(_0xf4dfe6 instanceof ClaudeSettingsParseError)return process['stderr'][_0x20d760(_0x315ada._0x21f43e)](_0x20d760(_0x315ada._0xfba337)+_0xf4dfe6[_0x20d760(_0x315ada._0x5abcb9)]+'\x0a'),{'exitCode':0x1};throw _0xf4dfe6;}process[_0x20d760(0x16b)][_0x20d760(_0x315ada._0x1faf27)](_0x20d760(0x230));const _0x2ed83c=join(_0x569d25['cwd'],'.gitignore'),_0x536e47=_0x19a530(_0x2ed83c)?readFileSync(_0x2ed83c,_0x20d760(_0x315ada._0x3b17c4)):null,_0x4c0b60=appendUniqueLines(_0x536e47,[_0x20d760(_0x315ada._0x22b663),_0x20d760(_0x315ada._0x16293b),_0x20d760(_0x315ada._0x1c363e),_0x20d760(_0x315ada._0x37be11),_0x20d760(_0x315ada._0x56d99e),'unotest/.debug*/','unotest/.snapshots/',_0x20d760(_0x315ada._0x13e30f),_0x20d760(0x197),'node_modules/']);if(_0x4c0b60[_0x20d760(_0x315ada._0x1cefb5)]['length']>0x0){writeFileSync(_0x2ed83c,_0x4c0b60[_0x20d760(_0x315ada._0x548e2f)]);for(const _0x50cb8c of _0x4c0b60[_0x20d760(0x25e)]){process[_0x20d760(_0x315ada._0x28a1a3)][_0x20d760(_0x315ada._0xd3c18a)](_0x20d760(0x207)+_0x50cb8c+'\x22\x0a');}}for(const _0xf2536b of _0x4c0b60[_0x20d760(0x1dd)]){process['stdout'][_0x20d760(_0x315ada._0x1a16eb)](_0x20d760(0x1a4)+_0xf2536b+'\x22\x0a');}_0x4c0b60[_0x20d760(0x25e)][_0x20d760(0x246)]===0x0&&_0x4c0b60[_0x20d760(0x1dd)]['length']===0x0&&process[_0x20d760(_0x315ada._0x13393b)][_0x20d760(0x222)]('\x20\x20·\x20no\x20changes\x20needed\x0a');process[_0x20d760(_0x315ada._0x3800fc)][_0x20d760(_0x315ada._0x47237b)]('\x0aBrowser:\x0a');const _0x568c58=probeSystemBrowser(),_0x241bb5=Boolean(process['stdin'][_0x20d760(_0x315ada._0x216485)])&&Boolean(process[_0x20d760(_0x315ada._0x4fbfd7)][_0x20d760(0x1af)]),_0x38c70c={'probe':_0x568c58,'interactive':_0x241bb5};if(_0x569d25['browserOverride'])_0x38c70c[_0x20d760(0x227)]=_0x569d25[_0x20d760(_0x315ada._0x150cc2)];const _0x55c6df=await chooseBrowser(_0x38c70c);writeFileSync(_0xcdc832,unotestConfigMjs(_0x55c6df[_0x20d760(0x1e2)]));const _0x4e969e=_0x55c6df[_0x20d760(_0x315ada._0x427b4d)]===void 0x0?_0x20d760(0x167):_0x55c6df['channel']===null?_0x20d760(_0x315ada._0x2b744f):'channel:\x20\x27'+_0x55c6df[_0x20d760(_0x315ada._0x427b4d)]+'\x27';process[_0x20d760(_0x315ada._0x4fbfd7)]['write']('\x20\x20✓\x20unotest.config.mjs\x20'+_0x4e969e+'\x0a'),process['stdout'][_0x20d760(_0x315ada._0x21f43e)](_0x20d760(_0x315ada._0x17214e));if(_0x55c6df[_0x20d760(0x1b7)][_0x20d760(0x246)]>0x0){for(const _0x16d73c of _0x55c6df[_0x20d760(_0x315ada._0x413a73)])process[_0x20d760(0x16b)]['write']('\x20\x20'+_0x16d73c+'\x0a');process['stdout'][_0x20d760(0x222)]('\x0a');}return process[_0x20d760(0x16b)]['write'](_0x20d760(_0x315ada._0x26da51)),{'exitCode':0x0};}__name(runInit,_0x31632c(0x171));var invokedDirectly2=process[_0x31632c(0x1a0)][0x1]&&_0xed0a8d(import.meta.url)===process[_0x31632c(0x1a0)][0x1];invokedDirectly2&&runInit(process[_0x31632c(0x1a0)]['slice'](0x2))[_0x31632c(0x24b)](({exitCode:_0xaf0d2a})=>{const _0x1c762d=_0x31632c;process[_0x1c762d(0x1b9)]=_0xaf0d2a;})[_0x31632c(0x22b)](_0x20de1c=>{const _0x129947={_0x1d391d:0x222,_0x58ceaa:0x1b9},_0x18309c=_0x31632c;process[_0x18309c(0x221)][_0x18309c(_0x129947._0x1d391d)]('init:\x20'+(_0x20de1c instanceof Error?_0x20de1c['message']:String(_0x20de1c))+'\x0a'),process[_0x18309c(_0x129947._0x58ceaa)]=0x1;});export{runInit};
1
+ const _0x15254e=_0x4b8d;(function(_0x183fad,_0x498398){const _0x1fef18={_0x2a15f9:0x1ad,_0x107dda:0x1ab,_0x4767c1:0x1b9,_0x2484fa:0x150,_0x184a69:0x20e,_0x4d543b:0x190,_0x12e7f9:0x15e},_0x5b1efa=_0x4b8d,_0x41fc91=_0x183fad();while(!![]){try{const _0x52b377=-parseInt(_0x5b1efa(_0x1fef18._0x2a15f9))/0x1*(parseInt(_0x5b1efa(0x1a5))/0x2)+parseInt(_0x5b1efa(_0x1fef18._0x107dda))/0x3+-parseInt(_0x5b1efa(_0x1fef18._0x4767c1))/0x4*(-parseInt(_0x5b1efa(_0x1fef18._0x2484fa))/0x5)+parseInt(_0x5b1efa(_0x1fef18._0x184a69))/0x6+-parseInt(_0x5b1efa(_0x1fef18._0x4d543b))/0x7+-parseInt(_0x5b1efa(0x141))/0x8*(parseInt(_0x5b1efa(_0x1fef18._0x12e7f9))/0x9)+parseInt(_0x5b1efa(0x155))/0xa*(parseInt(_0x5b1efa(0x191))/0xb);if(_0x52b377===_0x498398)break;else _0x41fc91['push'](_0x41fc91['shift']());}catch(_0x5d8f7a){_0x41fc91['push'](_0x41fc91['shift']());}}}(_0x27cd,0xb8155));var __defProp=Object[_0x15254e(0x12d)],__name=(_0x4bedb5,_0x382899)=>__defProp(_0x4bedb5,_0x15254e(0x12e),{'value':_0x382899,'configurable':!![]});import{copyFileSync,existsSync as _0xfd37dc,mkdirSync as _0x287bb8,readFileSync as _0x1fdc2b,writeFileSync as _0x1abceb}from'fs';import{dirname as _0x2958af,join as _0x34b0bd,resolve as _0x38cd1e}from'path';import{fileURLToPath as _0x35bde6}from'url';import{existsSync as _0x2a0471}from'fs';import{execFileSync}from'child_process';import{existsSync}from'fs';function probeSystemBrowser(){for(const _0x1d49e3 of[probeChrome,probeEdge,probeChromeBeta]){const _0x5e670d=_0x1d49e3();if(_0x5e670d['channel']!==null)return _0x5e670d;}return{'channel':null};}__name(probeSystemBrowser,_0x15254e(0x18d));function probeChrome(){const _0x442337=_0x15254e,_0x1c9eb8=firstExistingPath(CHROME_PATHS)??whichOf(CHROME_BIN_NAMES);if(_0x1c9eb8)return{'channel':_0x442337(0x210),'path':_0x1c9eb8,'label':_0x442337(0x18a)};return{'channel':null};}__name(probeChrome,_0x15254e(0x219));function probeEdge(){const _0x4843d3=_0x15254e,_0x2e91b8=firstExistingPath(EDGE_PATHS)??whichOf(EDGE_BIN_NAMES);if(_0x2e91b8)return{'channel':_0x4843d3(0x15c),'path':_0x2e91b8,'label':_0x4843d3(0x1b3)};return{'channel':null};}__name(probeEdge,_0x15254e(0x196));function probeChromeBeta(){const _0x73121a={_0x1eb0e4:0x1a9,_0x395d1f:0x169},_0xda2565=_0x15254e,_0x291c24=firstExistingPath(CHROME_BETA_PATHS);if(_0x291c24)return{'channel':_0xda2565(_0x73121a._0x1eb0e4),'path':_0x291c24,'label':_0xda2565(_0x73121a._0x395d1f)};return{'channel':null};}__name(probeChromeBeta,_0x15254e(0x1f4));var CHROME_PATHS=((()=>{const _0x1f2efb={_0x3cd7fa:0x223,_0x3eb1c8:0x115,_0x593c85:0x1db,_0x1b4f14:0x217,_0x3503dd:0x197,_0x33d98a:0x20d,_0x453b3f:0x1c3},_0x1fcbf2=_0x15254e;switch(process[_0x1fcbf2(_0x1f2efb._0x3cd7fa)]){case _0x1fcbf2(0x1b0):return[_0x1fcbf2(0x10b)];case'win32':return[process[_0x1fcbf2(0x1db)][_0x1fcbf2(0x146)]+_0x1fcbf2(_0x1f2efb._0x3eb1c8),process[_0x1fcbf2(_0x1f2efb._0x593c85)][_0x1fcbf2(_0x1f2efb._0x1b4f14)]+_0x1fcbf2(0x115),process['env'][_0x1fcbf2(_0x1f2efb._0x3503dd)]+_0x1fcbf2(0x115)];default:return[_0x1fcbf2(_0x1f2efb._0x33d98a),_0x1fcbf2(0x1b5),'/snap/bin/google-chrome',_0x1fcbf2(_0x1f2efb._0x453b3f),'/usr/bin/chromium-browser'];}})()),CHROME_BIN_NAMES=[_0x15254e(0x140),_0x15254e(0x17d),_0x15254e(0x1f7),_0x15254e(0x147)],EDGE_PATHS=((()=>{const _0x427d32={_0x1ebf22:0x223,_0x58582f:0x1b0,_0x38268f:0x132,_0x253723:0x113,_0x339205:0x1db,_0x659668:0x103,_0x24f4ae:0x217,_0xc82ed4:0x103,_0x5dc400:0x129},_0x2d68cc=_0x15254e;switch(process[_0x2d68cc(_0x427d32._0x1ebf22)]){case _0x2d68cc(_0x427d32._0x58582f):return[_0x2d68cc(_0x427d32._0x38268f)];case _0x2d68cc(_0x427d32._0x253723):return[process[_0x2d68cc(_0x427d32._0x339205)]['ProgramFiles']+_0x2d68cc(_0x427d32._0x659668),process[_0x2d68cc(0x1db)][_0x2d68cc(_0x427d32._0x24f4ae)]+_0x2d68cc(_0x427d32._0xc82ed4)];default:return[_0x2d68cc(0x1c4),_0x2d68cc(_0x427d32._0x5dc400)];}})()),EDGE_BIN_NAMES=[_0x15254e(0x159),_0x15254e(0x16b)],CHROME_BETA_PATHS=((()=>{const _0x10a9d1={_0x5929e3:0x113,_0xb7714a:0x1db},_0x555ab9=_0x15254e;switch(process[_0x555ab9(0x223)]){case _0x555ab9(0x1b0):return[_0x555ab9(0x1ec)];case _0x555ab9(_0x10a9d1._0x5929e3):return[process[_0x555ab9(_0x10a9d1._0xb7714a)][_0x555ab9(0x146)]+'\x5cGoogle\x5cChrome\x20Beta\x5cApplication\x5cchrome.exe'];default:return[_0x555ab9(0x11f)];}})());function firstExistingPath(_0x5399eb){const _0x3faf58=_0x15254e;for(const _0x532c13 of _0x5399eb){if(!_0x532c13||_0x532c13[_0x3faf58(0x17e)]('undefined'))continue;if(existsSync(_0x532c13))return _0x532c13;}return null;}__name(firstExistingPath,_0x15254e(0x1fb));function whichOf(_0x467034){const _0x300361={_0x4dd3c7:0x223,_0x4a403b:0x113,_0x3c4d27:0x1bb,_0x3a2206:0x1c0},_0x8ff4d1=_0x15254e;if(process[_0x8ff4d1(_0x300361._0x4dd3c7)]===_0x8ff4d1(_0x300361._0x4a403b))return void 0x0;for(const _0x12f8b2 of _0x467034){try{const _0x3f2912=execFileSync(_0x8ff4d1(_0x300361._0x3c4d27),[_0x12f8b2],{'encoding':_0x8ff4d1(0x1f2)})[_0x8ff4d1(0x222)]();if(_0x3f2912[_0x8ff4d1(_0x300361._0x3a2206)]>0x0&&existsSync(_0x3f2912))return _0x3f2912;}catch{}}return void 0x0;}__name(whichOf,_0x15254e(0x216));function runEnvironmentChecks(_0x4d6203={}){const _0x406069={_0x59dfd0:0x1d8},_0x33cc80=_0x15254e,_0x1cf58c=_0x4d6203[_0x33cc80(_0x406069._0x59dfd0)]??process['cwd']();return[checkNodeVersion(),checkSystemBrowser(),checkWritableCwd(_0x1cf58c)];}__name(runEnvironmentChecks,_0x15254e(0x185));function checkNodeVersion(){const _0x8db3fa={_0x3c5598:0x1cd,_0x5566ff:0x1df,_0xc3c12f:0x1b2,_0x52a0d9:0x110,_0x40ae0e:0x1e5},_0x17b301=_0x15254e,_0x36b793=process['versions'][_0x17b301(_0x8db3fa._0x3c5598)],_0x1b7e34=Number(_0x36b793[_0x17b301(_0x8db3fa._0x5566ff)]('.')[0x0]);if(!Number['isFinite'](_0x1b7e34)||_0x1b7e34<0x14)return{'name':'Node.js\x20version','severity':_0x17b301(_0x8db3fa._0xc3c12f),'message':_0x17b301(_0x8db3fa._0x52a0d9)+_0x36b793+')','detail':_0x17b301(_0x8db3fa._0x40ae0e)};return{'name':_0x17b301(0x206),'severity':'ok','message':_0x36b793};}__name(checkNodeVersion,_0x15254e(0x1a2));function checkSystemBrowser(){const _0x56a2d2={_0x3bd7c0:0x18e,_0x398aad:0x228,_0x120ea9:0x1d7,_0x370423:0x18e,_0x431266:0x137},_0x52cdb7=_0x15254e,_0x3b533d=probeSystemBrowser();if(_0x3b533d['channel']!==null)return{'name':_0x52cdb7(_0x56a2d2._0x3bd7c0),'severity':'ok','message':_0x3b533d[_0x52cdb7(0x1f0)]+_0x52cdb7(_0x56a2d2._0x398aad),'detail':_0x3b533d[_0x52cdb7(_0x56a2d2._0x120ea9)]};return{'name':_0x52cdb7(_0x56a2d2._0x370423),'severity':_0x52cdb7(0x1ed),'message':_0x52cdb7(_0x56a2d2._0x431266),'detail':_0x52cdb7(0x19c)};}__name(checkSystemBrowser,_0x15254e(0x151));function _0x27cd(){const _0x597365=['y29WEvbHy2THz2vgAwXL','zw5ZDxjLrgLY','y3jLyxrLzcaUy2XHDwrLl3nLDhrPBMDZlMPZB24GkgfSBg93oIbTy3bFx3vUB3rLC3qTD2vIkq','r29Vz2XLienOCM9Tzq','q0XbvurflM1K','ihnVDxjJzsbTAxnZAw5NiokaLcbWywnRywDLigLUC3rHBgWGyNvNpW','ChjVyMvtExn0zw1cCM93C2vY','u3LZDgvTigjYB3DZzxi','Aw50zxjHy3rPDMu','otm5ntCYowD6CLfyvG','mZq4ntKWmenZt0f5Aq','4PYxic0TyNjVD3nLCIbZExn0zw0GyNv0ig5VienOCM9TzsaVievKz2uGlYbdAhjVBwL1BsbMB3vUzcbVBIb0AgLZig1Hy2HPBMuU','uhjLq29TCgfJDa','Cgf1C2u','B3zLCNDYB3rL','ChjVyMvfzgDL','te9dquXbufbeqvrb','CNvUsw5PDa','4PYxigLUC3rHBgWTy2HYB21PDw06ia','Dw5VDgvZDc13zwiGAw5PDcdIHPiG','CgfYC2u','Aw5PDcb3AwXSig9MzMvYihrVigrVD25SB2fKigj1BMrSzwqGq2HYB21PDw0Gkh4XntaGtuiPlIbbBhrLCM5HDgL2zwX5lcbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4U','Dw5VDgvZDc9LmMuVx2HLBhbLCNmVlMDPDgTLzxa','CgXHExDYAwDODc9WywnRywDLlMPZB24GAgfZig5VihvZywjSzsaIyMLUiIbMAwvSza','Dw5VDgvZDc8Uzw52','CMvUzgvYrw52vhLWzxm','DMvYC2LVBG','y2HLy2ToB2rLvMvYC2LVBG','icaGig5WEcbaDw5VDgvZDc93zwiGAw5ZDgfSBc1JAhjVBwL1BsaGicaGicHKB3DUBg9HzhmGyNvUzgXLzcbJAhjVBwL1BsK','Aw5JBhvKzxm','nZeYnJq0ugDIAxzx','rMfPBgvKihrVihbHCNnLic5JBgf1zguVC2v0DgLUz3mUANnVBIbHCYbku09ooIa','C3LZDgvT','DxbKyxrLza','y2HYB21LlwjLDge','C2vJCMv0C0zPBgvZ','mte2otm0mhjMrfPTva','DgHLBG','mxPgrMvksa','AgfZ','BMv3q29UDgvUDa','zgfYD2LU','Dw5VDgvZDc8Uzw52kG','zxjYB3i','twLJCM9ZB2z0ievKz2u','Dw5VDgvZDc9LmMuVx2HLBhbLCNm','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1ZDgfIBgu','C2XPy2u','BwfW','zMLUAxnO','ndGZmdiWD0f5sfLm','Dg9tDhjPBMC','D2HPy2G','D3jPDgvjzK5LzwrLza','BwnW','Aw5ZDgfSBenOCM9TAxvT','cIaG4OAsigrVD25SB2fKAw5Nigj1BMrSzwqGq2HYB21PDw3IGkyk','BgvUz3rO','Dw5VDgvZDc13zwi','B25eyxrH','l3vZCI9IAw4Vy2HYB21PDw0','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2u','zw50CMLLCW','uhjLvg9VBfvZzq','C2vJCMv0C0v4yw1WBgu','ANnJB25MAwDkC29U','icdINjmGC3LZDgvTia','BwvYz2vdBgf1zgvbBgXVD0vUDhjPzxm','ug9ZDfrVB2XvC2vgywLSDxjL','zxHHBxbSzxm','BM9Kzq','u2vZC2LVBKvUza','igzVDw5Kigf0ia','lY8GrxH0zxjUywWGC2nLBMfYAw8GDMfYAwfIBguGtKfnrvmGB25SEtSGDMfSDwvZig5LDMvYigXLyxzLihrOB3nLigzPBgvZlG','ywDLBNqTDhjHy2uGAg9VA3mGywXYzwfKEsbWCMvZzw50','y3jLyxrLza','lM1JCc5QC29U','Dw5VDgvZDc9LmMuVzxHHBxbSzxmV','lMnSyxvKzs9OB29RCY9SB2CTywDLBNqUC2G','Dg9mB3DLCKnHC2u','Cgf0Aa','y3DK','Dw5VDgvZDc8Uzw52lMv4yw1WBgu','C3rKB3v0v3jPDgu','zw52','Dw5VDgvZDc5JB25MAwCUBwPZ','BM9Kzv9TB2r1BgvZlW','q2XHDwrLu2v0DgLUz3nqyxjZzuvYCM9Y','C3bSAxq','lIbgAxGGB3iGCMvTB3zLihrOzsbMAwXLigfUzcbYzs1YDw4GAw5PDc4','ls1ICM93C2vYigv4CgvJDhmGC3LZDgvTFgj1BMrSzwr8BM9UzsWGz290ia','quDftLrtlM1K','q3jLyxrLihrOzsbKAxjLy3rVCNKGB3iGCNvUigLUAxqGAw4Gyw4GzxHPC3rPBMCGChjVAMvJDcbYB290lG','ywrKzwqGywDLBNqTDhjHy2uGAg9VA3mGka','sw5ZDgfSBcboB2rLidiWkYb2AweGBNzTic8GzM5Tic8GDM9SDgeGyw5KihjLlxj1BI4','y2HHBM5LBa','Dw5VDgvZDa','zw52AxjVBM1LBNqGiG','4PYtignYzwf0zwq','C29YDa','lNvUB3rLC3q','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LiejLDgeUyxbWl0nVBNrLBNrZl01Hy09tl0DVB2DSzsbdAhjVBwuGqMv0yq','D2fYBMLUzW','4PQGic0TyNjVD3nLCIbUB25LiokaLcbUBYbICM93C2vYignVBMzPz3vYzwqUifj1BIbVBMuGB2y6','zw52rxHHBxbSzq','BgfIzwW','u3vIywDLBNrtDgfYDa','DxrMoa','C3rKB3v0','ChjVyMvdAhjVBwvczxrH','ANnJB25MAwCUANnVBG','igv2zw50CZSGBg9NCYb0BYb1BM90zxn0lY5Kzwj1zY9Hz2vUDc8GDw5KzxiGvu5pvevtvf9erujvrYK','y2HYB21PDw0','vgfYz2v0igrPCMvJDg9YEq','zM9Yy2u','DgfYz2v0ia','zMLYC3rfEgLZDgLUz1bHDgG','iYmGrtjfihrLC3rPBMCGD2L0AcbaDw5VDgvZDc93zwikcKbbr0vovfmUBwqkcKzVCIbHBNKGCMvXDwvZDcb0BYb3CML0zsWGCMvJB3jKlcbVCIbYDw4Gyw4Gzw5KlxrVlwvUzcb0zxn0lcbVCgvUihrOzqPGD3jPDguTztjLlxrLC3rGihnRAwXSicHVCIbYDw4Gyc93CML0zs1LmMuTDgvZDgaPigfUzcbKCML2zsb0AguGyNjVD3nLCIb0AhjVDwDOcNrOzsbGDw5VDgvZDc13zwjGie1ducb0B29SCYaOyg5LD19JB250zxH0ycdIHPiGygv4CgXVCMvFC3rLCgaG4OAsigbNzxrFCgfNzv9ZBMfWC2HVDgak4OAsigbYDw5FDgvZDgaPlIbeBYbUB3qGAgfUzc1HDxrOB3iGDgvZDhmGyMXPBMqGB3iGBwfWihrOzsbWCM9Qzwn0ihDPDgGkygzPBMrGl2bSC2aVygf3A2aG4OcuihrOzsbZA2LSBcDZifbOyxnLidaGBgLZDhmGDgHLigzPBgvZihrVihjLywqU','ChvZAa','Bg9NlwfNzw50lNnO','C2TPBgWGkgDYB3vUzcK','cKzPEcb0AguGzxjYB3jZigfIB3zLigfUzcbYzs1YDw4UcG','B3zLCNjPzgu','EwvZ','icHUBYbZDwnOigzPBguP','zw5K','4PQGie5VigjYB3DZzxiGy29UzMLNDxjLzc4GuNvUig9UzsbVzIbIzwzVCMuGzMLYC3qGDgvZDdO','tM9Kzs5QCYb2zxjZAw9U','BwvZC2fNzq','C3rYAw5N','BwnWx191BM90zxn0lxDLyG','C3LUy0vUDLr5CgvZ','zMLSzq','icdcTYbHBhjLywr5ihbYzxnLBNqGiG','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzq','mtm0otm3mgnlEwjsCW','cI5NAxrPz25VCMu6cG','y2HYB21L','Dw5VDgvZDenVBMzPz01QCW','y2HLy2TxCML0ywjSzun3za','lY8GuMvMCMvZAgvKigf1Dg9TyxrPy2fSBhKGB24GzxzLCNKGBgLUDcaVihj1BI4','lI4VlI4VCgfJA2fNzs5QC29U','Dw5VDgvZDc8UDMLLD2vYlMXVy2S','D2HPy2HpzG','uhjVz3jHBuzPBgvZkhG4nIK','zgv0ywLS','ChjVyMvdAhjVBwu','pceTlsb1BM90zxn0oMvUzcaTlt4','yMfZzsbLBNzPCM9UBwvUDcaOBM8Gvu5pvevtvf9ftLyP','zxHPDenVzgu','Aw5OzxjPDa','zw52lMqUDhm','B25fBMq','ywXSB3CGywXYzwfKEsbWCMvZzw50','oIbZDhjPBMC7','DhjPBq','CgXHDgzVCM0','4PYtig92zxj3CM90zq','cIaGlY8GDMLLD2vYoIb7cIaGlY8GicbWB3j0oIa1mtCZlcaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGic8VigrLzMf1Bhq6ihjHBMrVBsbMCMvLihbVCNqkicaVlYaGigjYB3DZzxi6ihrYDwuSicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGDhj1zsaOyxv0BY1VCgvUig9Uigb2Awv3zxjGkqOGic8Vih0ScN07cG','C2vJCMv0CW','CgfYC2vfBNzmyxLLCMvK','igzVDw5K','u2vJCMv0uMvNAxn0CNK','Ag9VA3m','Dw5VDgvZDc8UC2vJCMv0CYO','xe1Py3jVC29MDfXfzgDLxefWCgXPy2f0Aw9Uxg1ZzwrNzs5LEgu','ywrKzwq','icbjBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LigfUzcbYzs1YDw4GAw5PDc4','icdIGkiGuNvUigfUigv4yw1WBguGywDHAw5ZDcb0AguGCgXHEwDYB3vUzdOkicaGicaGBNb4ieb1BM90zxn0l3DLyIbLmMuGzxHHBxbSzxmVmdeTC21VA2ukicdIGkiGtgLUDcb5B3vYihnJzw5HCMLVCZOkicaGicaGBNb4ieb1BM90zxn0l3DLyIbSAw50cIaG4OcIifDYAxrLigeGDgvZDdOGB3bLBIbdBgf1zguGq29KzsbOzxjLigfUzcbHC2SG4OcuigL0igzVBgXVD3mGDgHLcIaGicaGihDYAxrLlwuYzs10zxn0ihnRAwXSigfUzcbKCML2zxmGDgHLihvUB3rLC3qTD2vIie1ducbZzxj2zxiUcIaGicaGicGUBwnWlMPZB24GkYbdtefvreuUBwqVquDftLrtlM1KihDLCMuGANvZDcb3AxjLzcbMB3iGEw91lIKkicdIGkiGqwXYzwfKEsbPBNnPzguGyw4GywDLBNqGC2vZC2LVBJ8GuMvZDgfYDcbPDcaOB3iGCMvJB25Uzwn0ihzPyqOGicaGicaVBwnWksdIGjqGtunqignSAwvUDhmGBg9HzcaUBwnWlMPZB24GC2vYDMvYCYbHDcbZzxnZAw9Uihn0yxj0laOGicaGicbZBYb0AguGDw5VDgvZDc13zwiGDg9VBhmGyxbWzwfYig9UBhKGAw4GysbMCMvZAcbZzxnZAw9UlGOGiokaOIbezwj1zYb0AguGywDLBNq6igXHDw5JAcb3AxrOifvot1rfu1rFrevcvuC9msb0BYb0CMfJzsbLDMvYEqOGicaGicbHy3rPB24GDg8GDw5VDgvZDc8UzgvIDwCVywDLBNqVywn0Aw9UCY5QC29UBc4k','y2HHBM5LBdOGjW','zgvJBgfYzsbJB25ZDca','ANnJB25MAwC','icdINjCG','l0fWCgXPy2f0Aw9UCY9hB29NBguGq2HYB21LlMfWCc9dB250zw50CY9nywnpuY9hB29NBguGq2HYB21L','ChjVyMu','y2XHDwrLtwrcB2r5','igf0ia','zw5ZDxjLrwrPDg9YvhLWzxm','CMvXDwLYzxmGtM9KzsdIIAuYmcaOCNvUBMLUzYa','yMfZAcaIjhTdtefvrevFufjpsKvdvf9esvj9lY5JBgf1zguVAg9VA3mVBg9NlwfNzw50lNnOiIaIjhTdtefvrevFufjpsKvdvf9esvj9l3vUB3rLC3qVlMrLyNvNl2fNzw50l2fJDgLVBNmUANnVBMWI','y29TBwfUza','D2LUmZi','ls1MB3jJzq','xeDVB2DSzvXdAhjVBwvCqxbWBgLJyxrPB25Cy2HYB21LlMv4zq','CMvNAxn0zxi','ywXSB3C','zMLSDgvY','B3jKzxjLza','ifT5l05Dia','B3zLCNDYB3rLihvUB3rLC3qTD2vIigvUDhj5','zM9Yy2uTB3zLCNDYB3rL','AM9PBG','zxHPDa','l3vZCI9IAw4Vz29Vz2XLlwnOCM9Tzs1IzxrH','CMvWB3j0','C2v2zxjPDhK','lNvUB3rLC3qV','A2v5CW','lY8GrxHHBxbSzsaWmsdIGjqGC21VA2u6ig5HDMLNyxrLicSGy2XPy2SGkYbvuKWGyxnZzxj0Aw9UlGOVlWOVlYbuAguGBwLUAw1HBcb0AhjLzs1ZDgvWihbHDhrLCM4UieHPDhmGCgXHEwDYB3vUzc51BM90zxn0lMnVBsbZBYbUBYbWCM9Qzwn0cI8VihnLDhvWigLZig5LzwrLzc4GuNvUihDPDgG6icbUChGGqhvUB3rLC3qVD2vIiguYzsbLEgfTCgXLCY8Wms1ZBw9RzqOkzNvUy3rPB24GDgvZDf9ZBw9Rzv9WBgf5z3jVDw5KkcKGEWOGihn0zxaOiK9Wzw4GDgHLiejPzYbuywjSzsbZy2vUyxjPBYbMCM9TihrOzsbWBgf5z3jVDw5KigLUzgv4iIWGkcKGpt4GEWOGicaGz290BYGNlYCPoWOGicaGy2XPy2SOz2v0qNLsB2XLkcDSAw5RjYWGE25HBwu6icDcAwCGvgfIBguNlcbLEgfJDdOGDhj1zx0PktSkicaGigfZC2vYDfvYBcGNl3nJzw5HCMLVCY9IAwCTDgfIBguNktSkicb9ktSkFqO','C29Tzq','C2L6zq','lI4VlI4V','CgXHExDYAwDODc9WywnRywDLlMPZB24','l3vZCI9IAw4VBwLJCM9ZB2z0lwvKz2uTC3rHyMXL','CMvKywn0vMfSDwu','4PYtihvWzgf0zwq','Aw5PDdOG','zgvMAw5LuhjVCgvYDhK','BMfTzq','yNvUzgXLza','BwvYz2vdBgf1zgviB29RCW','icbVCIbPBNn0ywXSienOCM9TzsbMCM9TigH0DhbZoI8VD3D3lMDVB2DSzs5JB20Vy2HYB21LlG','l0fWCgXPy2f0Aw9UCY9nAwnYB3nVzNqGrwrNzs5HChaVq29UDgvUDhmVtwfJt1mVtwLJCM9ZB2z0ievKz2u','D2fYBMLUz3m','lMnSyxvKzs9ZA2LSBhmVD3jPDguTztjLlxrLC3qTz3jVDw5Kl1nlsuXmlM1K','ywXYzwfKEsbWCMvZzw50','icaVlYbJAgfUBMvSoIaNy2HYB21LjYWGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8Gj2nOCM9TzsCGlYaNBxnLzgDLjYaVig51BgWGkgj1BMrSzwqP','BM8Gq2HYB21Lic8GrwrNzsaVienOCM9TAxvTigrLDgvJDgvK','icdINjmG','icbeB3DUBg9HzcbIDw5KBgvKienOCM9TAxvTicH+mtuWie1ckt8','CgLWzq','D3jPDgu','icbvC2uGAw5ZDgfSBgvKia','DhLWzxm','BwnWu2vYDMvYCW','yMLU','z29Vz2XLlwnOCM9Tzq','ndG4yvvKsxzN','yxbWzw5Kzwq','ywrKzwqGywXSB3CGzw50CMLLCZOG','Bg9HzfnJzw5HCMLVvMfYAwfIBgvZ','ixvUB3rLC3qVlMvUDI5LEgfTCgXL','uhjVz3jHBuzPBgvZ','y2HYB21PDw0TyNjVD3nLCG','ywn0Aw9U','zxHLy1bHDgG','C3rKAw4','Dw5VDgvZDc9LmMuVx3rLBxbSyxrLlMPZ','ywXYzwfKEs1WCMvZzw50','zw52rMLSzxm','yNjVD3nLCK92zxjYAwrL','BM9Uzq','nJbWt3LfBvm','y2HLy2TtExn0zw1cCM93C2vY','vxnLCLbYB21WDfn1yM1PDa','C2v0','C2TPBgW','ntbLugTvtLa','lY8GqhvUB3rLC3qVD2vIihbYB2PLy3qGy29UzMLNlIbbBgWGzMLLBgrZigfYzsbVChrPB25HBcdIGjqGzgvMyxvSDhmGyxbWBhKklY8GD2HLBIbVBwL0DgvKlGOVlWOVlYbtyxzLzcbHCYaUBwPZihnVihrOzsbYDw50Aw1LigXVywrZigL0igfZievttsbYzwDHCMrSzxnZig9MihrOzsbWCM9Qzwn0j3mklY8GCgfJA2fNzs5QC29Uicj0ExbLiIbMAwvSzc4GrM9YieLersbHDxrVy29TCgXLDguSihr5CguTAw1WB3j0ihrOzsbZy2HLBwe6cI8VcI8VicaGlYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcI8VicaGzxHWB3j0igrLzMf1BhqGEYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYb9oWOklYOQieb0ExbLihTqyxj0AwfSpgLTCg9YDcGNqhvUB3rLC3qVD2vIjYKUvw5VDgvZDenVBMzPzZ59icOVcMv4Cg9YDcbKzwzHDwX0ihSkicaVlYbIyxnLvxjSoIaNAhr0Chm6lY95B3vYlwfWCc50zxn0jYWkicaVlYbICM93C2vYCZOGwYDJAhjVBwL1BsCSicDMAxjLzM94jYWGj3DLyMTPDcDDlcaGlY8Gq0KGB3zLCNjPzgukicaVlYb2Awv3Cg9YDdOGEYb3Awr0AdOGmti4mcWGAgvPz2H0oIa3mJaGFsWkicaVlYbYzxrYEtOGEYbJB3vUDdOGmsWGB246ifSNDhjHBNnPzw50j10GFsWGicaGicaGic8Vienjig92zxjYAwrLcIaGlY8GC3rVCMfNzvn0yxrLoIaNlNvUB3rLC3qVy2fJAguVyxv0Ac5QC29UjYWGicaGicaVlYbZzwuGAgvSCgvYCWOGic8VihnHBMrIB3G6ihSGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GyxbPq2fSBcaVihvWBg9HzcaVigrIuxvLCNKGlYbZAgvSBaOGic8VicaGyxbPqMfZzvvYBdOGj2H0DhbZoI8VyxbPlNLVDxiTyxbWlNrLC3qNlcaGicaGlY8GyMfZzsbMB3iGyxbPq2fSBcGNue9tvcCSicCVCgf0AcCSiokaPIKkicaVlYaGihvWBg9HzerPCJOGj3vUB3rLC3qVzML4DhvYzxmNlcaGicaGicaGicaGicaGic8VihjVB3qGzM9YihvWBg9HzcGNzg9JlNbKzICPihbHDgHZoWOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GzgvMyxvSDdOGChjVAMvJDcbYB290lIbvCgXVywrZig1HEqOGic8VicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGicaGlY8GBM90igvZy2fWzsbPDcaOCMvSyxrPDMuGCgf0AhmGB25SEsKUcIaGlY8GicbKyxrHyMfZztOGj3bVC3rNCMvZCwW6lY9SB2nHBgHVC3q6ntqZmI9HChbFDgvZDcCSicaVlYbKyLf1zxj5ic8GzgjfEgvJcIaGlY8GFsWk','BNb4','Aw5KzxHpzG','BwLJCM9ZB2z0lwvKz2u','icdINjmGDw5VDgvZDc5JB25MAwCUBwPZia','zw5KC1DPDgG','BxnLzgDL','zxHPC3rZ','mtC2nda5D3vosLHj','twnWsNnVBLbHCNnLrxjYB3i','Ag9VAW','cIaGrM91BMqG','CMvTB3zLtgLZDgvUzxi','ywn0AxzL','Bgf5zxjjBMzVCW','zgf0yq','icaGigLUC3rHBgWGq2HYB21LigzYB20GAhr0Chm6lY93D3CUz29Vz2XLlMnVBs9JAhjVBwu','CMvZB2X2zq','cKjYB3DZzxi6cG','r29Vz2XLienOCM9TzsbczxrH','Dw5VDgvZDc8UC2vJCMv0CW','BwLJCM9ZB2z0lwvKz2uTC3rHyMXL','ywXYzwfKEvbYzxnLBNq','B2jQzwn0','CgfYC2vbCMDZ','C2TPChbLza','CgvYBwLZC2LVBNm','CNvUsw5ZDgfSBenOCM9TAxvTq2XP','C3rYAw5NAwz5','lY8Gr0vorvjbveveigj5ieb1BM90zxn0l3DLyIbMCM9TihvUB3rLC3qVlMvUDIbHBMqGDw5VDgvZDc8UC2vJCMv0CYdIGjqGzg8GBM90igvKAxqU','igHHCYbUBYb1C2fIBguGiNzLCNnPB24IigzPzwXK','C2nLBMfYAw9uzw1WBgf0zq','cKrVBMuUie5LEhqGC3rLChm6cG','AxnuvfK','pceTlsb1BM90zxn0oMjLz2LUicHTyw5Hz2vKigj5ieb1BM90zxn0l3DLyIbPBML0iokaLcbKBYbUB3qGzwrPDcbPBNnPzguPic0TpG','y2HHBM5LBdOGBNvSBcaOyNvUzgXLzcbJAhjVBwL1BsK','Dw5Yzwy','BwvYz2vdBgf1zgvnza','AxnbCNjHEq','z29Vz2XLlwnOCM9Tzs1ZDgfIBgu','C3rHCNrZv2L0Aa','Dw5VDgvZDc8UCNvUCYOV','C3rHDhvZ','yNLwywX1zq','yxjNDG','C3rKzxjY','iIaOvu5pvevtvf9ftLyP','CNvUrw52AxjVBM1LBNrdAgvJA3m','Aw1WBgLJAxq'];_0x27cd=function(){return _0x597365;};return _0x27cd();}function checkWritableCwd(_0x245069){const _0x2a50b3={_0x14ecfc:0x1f8,_0x8c1484:0x1fa},_0xfd1064=_0x15254e;if(!_0x2a0471(_0x245069))return{'name':_0xfd1064(_0x2a50b3._0x14ecfc),'severity':'error','message':_0xfd1064(_0x2a50b3._0x8c1484)+_0x245069+'\x20does\x20not\x20exist','detail':_0xfd1064(0x1e3)};return{'name':_0xfd1064(_0x2a50b3._0x14ecfc),'severity':'ok','message':_0x245069};}__name(checkWritableCwd,_0x15254e(0x212));import{existsSync as _0x142185,mkdirSync,readFileSync as _0x465bf4,writeFileSync as _0x4467e3}from'fs';import{dirname,join as _0x374a06}from'path';import{existsSync as _0x5395ff}from'fs';import{join as _0x2a8cdd}from'path';import{categorizeVariable,isExternalVarName,secretsFileFor,activeEnvName,envLayerFilesFor,secretsLayerFilesFor}from'@unotest/protocol';import{existsSync as _0x5a1677,readFileSync,writeFileSync}from'fs';import{join}from'path';import{applyEnvLayers,readEnvFile,readEnvLayers}from'@unotest/core';import{insertEnvVar,removeEnvVar,envFileFor}from'@unotest/protocol';var WEB_SUFFIX='';function parseEnvLayered(_0x542869,_0x27000d){return readEnvLayers(_0x542869,WEB_SUFFIX,_0x27000d);}__name(parseEnvLayered,_0x15254e(0x227));var parseEnvFile=readEnvFile,SecretRegistry=class{static{__name(this,_0x15254e(0x100));}['byValue']=new Map();[_0x15254e(0x119)]=[];[_0x15254e(0x116)](_0x2f788d,_0x54194f){const _0x1a6d30=_0x15254e;if(_0x54194f['length']===0x0)return;this['byValue'][_0x1a6d30(0x153)](_0x54194f,_0x2f788d),this['ordered']=[...this['byValue'][_0x1a6d30(0x1c5)]()][_0x1a6d30(0x1ea)]((_0xbf853e,_0xe40f0c)=>_0xe40f0c[0x0][_0x1a6d30(0x1c0)]-_0xbf853e[0x0][_0x1a6d30(0x1c0)]);}get['size'](){const _0x5af8dd={_0x23153a:0x181,_0x1dbaaa:0x126},_0x121513=_0x15254e;return this[_0x121513(_0x5af8dd._0x23153a)][_0x121513(_0x5af8dd._0x1dbaaa)];}['mergeInto'](_0x1b07c5){const _0x262f09={_0x3cd613:0x181},_0x43af3d=_0x15254e;for(const [_0x531b23,_0x8bf893]of this[_0x43af3d(_0x262f09._0x3cd613)])_0x1b07c5['register'](_0x8bf893,_0x531b23);}['redactString'](_0x131a97){const _0x16b0da={_0x591c9d:0x119,_0xd8ddb0:0x1a4},_0x4cc985=_0x15254e;if(this['ordered']['length']===0x0)return _0x131a97;let _0x1f5498=_0x131a97;for(const [_0x15ddf5,_0x1b4a31]of this[_0x4cc985(_0x16b0da._0x591c9d)]){if(_0x1f5498[_0x4cc985(_0x16b0da._0xd8ddb0)](_0x15ddf5))_0x1f5498=_0x1f5498[_0x4cc985(0x1df)](_0x15ddf5)[_0x4cc985(0x11d)]('‹secret:'+_0x1b4a31+'›');}return _0x1f5498;}['redact'](_0x5527c7){const _0x3d668b={_0x40b6d6:0x1c0},_0x2d5d46=_0x15254e;if(this['ordered'][_0x2d5d46(_0x3d668b._0x40b6d6)]===0x0)return _0x5527c7;return this['redactValue'](_0x5527c7);}[_0x15254e(0x12a)](_0x3bc473){const _0x5622ea=_0x15254e;if(typeof _0x3bc473===_0x5622ea(0x208))return this['redactString'](_0x3bc473);if(Array['isArray'](_0x3bc473))return _0x3bc473[_0x5622ea(0x1b7)](_0xfc531f=>this['redactValue'](_0xfc531f));if(_0x3bc473!==null&&typeof _0x3bc473===_0x5622ea(0x16d)){const _0x222a92={};for(const [_0x14ea42,_0x4fd8e1]of Object['entries'](_0x3bc473)){_0x222a92[_0x14ea42]=this['redactValue'](_0x4fd8e1);}return _0x222a92;}return _0x3bc473;}},WEB_SUFFIX2='';function layerInfos(_0x41aa61,_0x526c14){return _0x526c14['map'](_0x21bc50=>({'file':_0x21bc50,'exists':_0x5395ff(_0x2a8cdd(_0x41aa61,_0x21bc50))}));}__name(layerInfos,_0x15254e(0x164));function describeEnvLayers(_0x31f866,_0x10f9b2=process[_0x15254e(0x1db)]){const _0x4b23f6=activeEnvName(_0x10f9b2);return{'active':_0x4b23f6??null,'envFiles':layerInfos(_0x31f866,envLayerFilesFor(WEB_SUFFIX2,_0x4b23f6)),'secretsFiles':layerInfos(_0x31f866,secretsLayerFilesFor(WEB_SUFFIX2,_0x4b23f6))};}__name(describeEnvLayers,'describeEnvLayers');function formatSources(_0x40bdb7){const _0x140bc1={_0x3a094d:0x1b7,_0x5c5dec:0x163,_0x50d372:0x21b},_0x6e075e=_0x15254e,_0x53214a=[..._0x40bdb7[_0x6e075e(0x14d)],..._0x40bdb7[_0x6e075e(0x1aa)]][_0x6e075e(_0x140bc1._0x3a094d)](_0x3211be=>_0x3211be[_0x6e075e(0x15d)]?_0x3211be['file']:_0x3211be[_0x6e075e(0x20b)]+_0x6e075e(0x203))[_0x6e075e(0x11d)](',\x20'),_0x206968=_0x40bdb7[_0x6e075e(_0x140bc1._0x5c5dec)]?_0x6e075e(0x1e8)+_0x40bdb7['active']+_0x6e075e(0x184):_0x6e075e(_0x140bc1._0x50d372);return _0x206968+':\x20'+_0x53214a;}__name(formatSources,'formatSources');function secretsFilePath(_0x2801b0,_0x46c053){return _0x2a8cdd(_0x2801b0,secretsFileFor('',_0x46c053));}__name(secretsFilePath,'secretsFilePath');var EnvVariableStore=class{constructor(_0x31dac6,_0x3dd51d,_0x4fa96f){const _0x385b53={_0x523114:0x226},_0x358401=_0x15254e;this['env']=_0x31dac6,this[_0x358401(_0x385b53._0x523114)]=_0x3dd51d,this['report']=_0x4fa96f;}[_0x15254e(0x1db)];[_0x15254e(0x226)];[_0x15254e(0x120)];static{__name(this,'EnvVariableStore');}['describeSources'](){return formatSources(this['report']);}[_0x15254e(0x1ae)](_0x2d0f5f){const _0x3a607a=_0x15254e;return _0x2d0f5f in this['secrets']||this[_0x3a607a(0x1db)][_0x2d0f5f]!==void 0x0;}['get'](_0x1efef8){const _0x392150=_0x15254e;return _0x1efef8 in this[_0x392150(0x226)]?this[_0x392150(0x226)][_0x1efef8]:this['env'][_0x1efef8];}};function loadScenarioVariables(_0x249566,_0x277511=process[_0x15254e(0x1db)]){const _0x8a4b8b={_0x41d757:0x116,_0x39282d:0x123},_0x193fe7=_0x15254e,_0x371a7e=activeEnvName(_0x277511),_0x2cb686=describeEnvLayers(_0x249566,_0x277511),_0x32e42b=parseEnvLayered(_0x249566,_0x371a7e),_0x421dfe={...parseEnvFile(secretsFilePath(_0x249566)),..._0x371a7e?parseEnvFile(secretsFilePath(_0x249566,_0x371a7e)):{}},_0x89bfd9=new SecretRegistry();for(const [_0x2d2718,_0x38dfe3]of Object['entries'](_0x421dfe)){_0x89bfd9[_0x193fe7(_0x8a4b8b._0x41d757)](_0x2d2718,_0x38dfe3);}const _0x5a2918=[...Object[_0x193fe7(_0x8a4b8b._0x39282d)](_0x32e42b)[_0x193fe7(0x1b7)](_0x5329ba=>({'name':_0x5329ba,'source':_0x193fe7(0x1db),'secret':![],'category':categorizeVariable({'name':_0x5329ba,'source':'env'})})),...Object['keys'](_0x421dfe)['map'](_0x596594=>({'name':_0x596594,'source':'secrets','secret':!![],'category':categorizeVariable({'name':_0x596594,'source':_0x193fe7(0x226)})}))];return{'store':new EnvVariableStore(_0x277511,_0x421dfe,_0x2cb686),'secretRegistry':_0x89bfd9,'declared':_0x5a2918,'envReport':_0x2cb686};}function _0x4b8d(_0x3771bd,_0x2a0701){_0x3771bd=_0x3771bd-0x100;const _0x27cd3a=_0x27cd();let _0x4b8d8b=_0x27cd3a[_0x3771bd];if(_0x4b8d['FQdaCw']===undefined){var _0x9f4d2e=function(_0x4de5aa){const _0x39a1ef='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xfd37dc='',_0x287bb8='';for(let _0x1fdc2b=0x0,_0x1abceb,_0x2958af,_0x34b0bd=0x0;_0x2958af=_0x4de5aa['charAt'](_0x34b0bd++);~_0x2958af&&(_0x1abceb=_0x1fdc2b%0x4?_0x1abceb*0x40+_0x2958af:_0x2958af,_0x1fdc2b++%0x4)?_0xfd37dc+=String['fromCharCode'](0xff&_0x1abceb>>(-0x2*_0x1fdc2b&0x6)):0x0){_0x2958af=_0x39a1ef['indexOf'](_0x2958af);}for(let _0x38cd1e=0x0,_0x35bde6=_0xfd37dc['length'];_0x38cd1e<_0x35bde6;_0x38cd1e++){_0x287bb8+='%'+('00'+_0xfd37dc['charCodeAt'](_0x38cd1e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x287bb8);};_0x4b8d['gROURp']=_0x9f4d2e,_0x4b8d['kXoBsN']={},_0x4b8d['FQdaCw']=!![];}const _0x3a2f16=_0x27cd3a[0x0],_0x2f881d=_0x3771bd+_0x3a2f16,_0x4c7aee=_0x4b8d['kXoBsN'][_0x2f881d];return!_0x4c7aee?(_0x4b8d8b=_0x4b8d['gROURp'](_0x4b8d8b),_0x4b8d['kXoBsN'][_0x2f881d]=_0x4b8d8b):_0x4b8d8b=_0x4c7aee,_0x4b8d8b;}__name(loadScenarioVariables,_0x15254e(0x144));var templates={'jsconfigJson':'{\x0a\x20\x20\x22compilerOptions\x22:\x20{\x0a\x20\x20\x20\x20\x22checkJs\x22:\x20false,\x0a\x20\x20\x20\x20\x22target\x22:\x20\x22es2022\x22,\x0a\x20\x20\x20\x20\x22lib\x22:\x20[\x22es2022\x22],\x0a\x20\x20\x20\x20\x22types\x22:\x20[]\x0a\x20\x20},\x0a\x20\x20\x22include\x22:\x20[\x0a\x20\x20\x20\x20\x22**/*.js\x22,\x0a\x20\x20\x20\x20\x22../.unotest/types/env.d.ts\x22,\x0a\x20\x20\x20\x20\x22../node_modules/@unotest/web/types/unotest-dsl.d.ts\x22\x0a\x20\x20]\x0a}\x0a','scenarioTemplate':'//\x20Move\x20+\x20rename\x20this\x20file\x20to\x20<feature>/<your_name>.js\x20(e.g.\x0a//\x20auth/login.js)\x20and\x20the\x20function\x20below\x20to\x20test_<your_name>().\x20Scenarios\x20live\x0a//\x20in\x20feature\x20subfolders,\x20NOT\x20the\x20e2e\x20root\x20—\x20the\x20linter\x20(lint:scenario-in-root)\x0a//\x20rejects\x20a\x20test\x20file\x20placed\x20directly\x20in\x20unotest/e2e/.\x20The\x20loader\x20derives\x20the\x0a//\x20entry\x20name\x20from\x20the\x20file\x20basename\x20—\x20kebab-case\x20dashes\x20become\x20underscores.\x0a\x0a//\x20Every\x20executable\x20step\x20must\x20sit\x20inside\x20a\x20step(\x22...\x22,\x20()\x20=>\x20{\x20…\x20})\x20block.\x20The\x0a//\x20title\x20is\x20a\x20plain-English\x20description\x20of\x20the\x20group;\x20the\x20steps\x20inside\x20are\x0a//\x20the\x20implementation.\x20Group\x20by\x20intent\x20(Setup\x20/\x20Enter\x20/\x20Act\x20/\x20Assert\x20or\x0a//\x20whatever\x20reads\x20well)\x20—\x20one\x20block\x20per\x20logical\x20chunk.\x0a\x0afunction\x20test_your_name_here()\x20{\x0a\x20\x20step(\x22Seed\x20a\x20known\x20user\x20via\x20DB\x20/\x20API\x20fixtures\x20from\x20_helpers/\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20//\x20\x20\x20\x20wipe_e2e_users();\x0a\x20\x20\x20\x20//\x20\x20\x20\x20user_id\x20=\x20seed_user(\x27alice@example.com\x27,\x20\x27secret\x27);\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Sign\x20in\x20as\x20the\x20seeded\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27https://your-app.test/login\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20\x27alice@example.com\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20fill(getByLabel(\x27Password\x27),\x20\x27secret\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20click(getByRole(\x27button\x27,\x20{name:\x20\x27Log\x20in\x27}));\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Assert\x20the\x20dashboard\x20shows\x20the\x20signed-in\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertUrl(\x27/dashboard\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertText(getByRole(\x27heading\x27),\x20\x27Welcome,\x20Alice\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20count\x20=\x20dbQuery(\x27SELECT\x20count(*)\x20FROM\x20users\x20WHERE\x20active\x20=\x20true\x27);\x0a\x20\x20\x20\x20//\x20\x20\x20\x20assertTrue(count\x20>\x200,\x20\x27expected\x20at\x20least\x20one\x20active\x20user\x27);\x0a\x20\x20});\x0a}\x0a','agentsMd':'#\x20@unotest/web\x20—\x20guide\x20for\x20AI\x20agents\x20(and\x20humans)\x0a\x0aThis\x20project\x20uses\x20[`@unotest/web`](https://www.npmjs.com/package/@unotest/web)\x0afor\x20end-to-end\x20testing\x20of\x20web\x20applications.\x0a\x0a##\x20Writing\x20a\x20test\x20—\x20use\x20the\x20skill\x20+\x20MCP\x0a\x0aFor\x20ANY\x20request\x20to\x20write,\x20record,\x20or\x20run\x20an\x20e2e\x20test:\x0a\x0a1.\x20Open\x20the\x20**`write-e2e-test`**\x20skill\x20—\x20`.claude/skills/write-e2e-test/SKILL.md`\x0a\x20\x20\x20(in\x20Claude\x20Code\x20you\x20can\x20also\x20run\x20`/write-e2e-test`)\x20—\x20and\x20follow\x20it.\x0a2.\x20Drive\x20the\x20browser\x20through\x20the\x20**`unotest-web`\x20MCP\x20tools**:\x20`new_context`\x20→\x0a\x20\x20\x20`explore_start`\x20→\x20`explore_step`\x20→\x20`get_page_snapshot`\x20→\x20`run_test`.\x0a\x0aDo\x20NOT\x20hand-author\x20tests\x20blind\x20or\x20map\x20the\x20project\x20with\x20`find`/`ls`/`awk`\x20—\x20the\x0askill\x27s\x20Phase\x200\x20names\x20the\x20exact\x20files\x20to\x20read.\x20Runnable,\x20copy-pasteable\x0aexamples\x20live\x20in\x20`unotest/e2e/examples/`.\x0a\x0a##\x20Layout\x0a\x0a-\x20`unotest/e2e/<feature>/<name>.js`\x20—\x20test\x20scenarios,\x20grouped\x20by\x20feature/page\x0a\x20\x20(one\x20`test_*`\x20function\x20per\x20file).\x20**Required:**\x20every\x20scenario\x20lives\x20in\x20a\x0a\x20\x20feature\x20subfolder.\x20A\x20test\x20file\x20placed\x20directly\x20in\x20`unotest/e2e/`\x20is\x20rejected\x0a\x20\x20by\x20the\x20linter\x20(`lint:scenario-in-root`).\x0a-\x20`unotest/e2e/_helpers/`\x20—\x20project-specific\x20helpers\x20(visible\x20to\x20all\x20scenarios)\x0a-\x20`unotest/e2e/_template.js`\x20—\x20starting-point\x20template\x20(copy\x20into\x20a\x20feature\x20folder)\x0a\x0a##\x20DSL\x20conventions\x0a\x0aThe\x20DSL\x20is\x20a\x20strict\x20JS\x20subset\x20parsed\x20by\x20@unotest/dsl.\x20Method\x20chains,\x20options-\x0aobjects,\x20and\x20variables\x20are\x20allowed.\x20Multi-line\x20strings\x20use\x0abackticks\x20but\x20`${...}`\x20interpolation\x20is\x20forbidden\x20(sandbox\x20boundary\x20—\x0apass\x20values\x20via\x20positional\x20args).\x0a\x0a**Every\x20step\x20must\x20sit\x20inside\x20a\x20`step(\x22description\x22,\x20()\x20=>\x20{\x20…\x20})`\x20block\x20(linter\x0aenforces).**\x20The\x20title\x20is\x20plain-English\x20intent;\x20the\x20steps\x20inside\x20are\x20the\x0aimplementation.\x20When\x20a\x20step\x20later\x20breaks\x20(selector\x20drift),\x20you\x20read\x20the\x0atitle\x20to\x20understand\x20what\x20the\x20group\x20was\x20trying\x20to\x20do\x20and\x20repair\x20it.\x20Group\x20by\x0aintent,\x20one\x20block\x20per\x20logical\x20chunk:\x0a\x0a```js\x0afunction\x20test_login()\x20{\x0a\x20\x20step(\x22Sign\x20in\x20as\x20the\x20demo\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27https://app.example.com/login\x27);\x0a\x20\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20\x27demo@example.com\x27);\x0a\x20\x20\x20\x20click(getByRole(\x27button\x27,\x20{name:\x20\x27Log\x20in\x27}));\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Dashboard\x20shows\x20the\x20signed-in\x20user\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20assertText(getByRole(\x27heading\x27),\x20\x27Welcome\x27);\x0a\x20\x20});\x0a}\x0a```\x0a\x0a**Base\x20URL\x20—\x20write\x20relative\x20paths.**\x20`APP_BASE_URL`\x20(in\x20`unotest/.env`)\x20is\x20the\x0aapp\x27s\x20base;\x20`goto(\x27/login\x27)`\x20resolves\x20against\x20it.\x20Don\x27t\x20concatenate\x0a(`goto(APP_BASE_URL\x20+\x20\x27/login\x27)`)\x20—\x20just\x20pass\x20the\x20path:\x0a\x0a```js\x0agoto(\x27/login\x27);\x0afill(getByLabel(\x27Password\x27),\x20TEST_USER_PASSWORD);\x0a```\x0a\x0a**Environments.**\x20Override\x20`APP_BASE_URL`\x20(and\x20any\x20var)\x20per\x20environment\x20with\x0aoverlay\x20files\x20—\x20`unotest/.env.staging`,\x20`unotest/.env.production`\x20(secrets:\x0a`unotest/.secrets.<env>`).\x20Select\x20one\x20at\x20run\x20time:\x20`npx\x20@unotest/web\x20e2e\x20<name>\x0a--env\x20staging`.\x20The\x20overlay\x20layers\x20over\x20the\x20base\x20`.env`\x20(overlay\x20wins).\x0a\x0a**External\x20variables\x20&\x20secrets:**\x20reference\x20logins\x20/\x20tokens\x20by\x20a\x20bare\x0a`UPPER_SNAKE`\x20name\x20—\x20resolved\x20from\x20`unotest/.env`\x20(normal)\x20or\x20`unotest/.secrets`\x0a(secret,\x20masked\x20in\x20logs).\x20No\x20`env()`/`secret()`\x20wrapper.\x20A\x20lowercase\x20name\x20is\x20an\x0ain-scenario\x20binding;\x20an\x20unknown\x20`UPPER_SNAKE`\x20fails\x20the\x20run\x20asking\x20you\x20to\x20add\x20it\x0ato\x20`unotest/.env`.\x0a\x0a**Selector\x20hierarchy\x20(D-22\x20—\x20linter\x20enforces):**\x0a1.\x20`getByTestId(id)`\x20—\x20most\x20stable\x0a2.\x20`getByRole(role,\x20{name})`\x20—\x20semantic,\x20a11y-aware\x0a3.\x20`getByLabel(text)`\x20—\x20for\x20form\x20fields\x0a4.\x20`getByText(text)`\x20—\x20for\x20unique\x20text\x0a5.\x20`locator(css)`\x20—\x20last\x20resort\x20(linter\x20warns)\x0a\x0aFull\x20reference\x20shipped\x20with\x20the\x20package:\x0a-\x20`node_modules/@unotest/web/guides/dsl-reference.md`\x20—\x20DSL\x20functions\x20+\x20linter\x20codes\x0a\x0a##\x20Running\x20(CLI)\x0a\x0a-\x20`npx\x20@unotest/web\x20e2e\x20<feature>/<name>`\x20—\x20run\x20a\x20scenario\x20by\x20name\x0a-\x20`npx\x20@unotest/web\x20lint`\x20—\x20static\x20check\x20of\x20all\x20scenarios\x20+\x20helpers\x0a-\x20`npx\x20@unotest/web\x20mcp`\x20—\x20start\x20the\x20MCP\x20server\x20for\x20agent\x20control\x0a\x0a##\x20Via\x20MCP\x20(Claude\x20Code\x20/\x20Claude\x20Desktop\x20/\x20Cursor)\x0a\x0aThe\x20MCP\x20server\x20exposes:\x0a-\x20`run_test\x20name=\x22<name>\x22\x20mode=\x22step\x22\x20pauseOnFailure=true`\x20—\x20run\x20with\x20step-mode\x0a-\x20`step`\x20/\x20`resume`\x20—\x20advance\x20one\x20AST\x20node\x20/\x20run\x20until\x20next\x20pause\x0a-\x20`inspect_runtime`\x20—\x20current\x20state,\x20last\x20error,\x20locals\x20dump\x0a-\x20`abort_runtime`\x20—\x20kill\x20a\x20paused\x20runtime\x0a\x0aFor\x20agent-fix\x20workflows\x20on\x20flaky\x20tests:\x20`agent_fix\x20testId=\x22<id>\x22`\x20returns\x20a\x0astructured\x20context\x20bundle\x20(see\x20D-25\x20—\x20we\x20never\x20call\x20LLMs\x20or\x20auto-apply\x0adiffs,\x20the\x20diff\x20comes\x20from\x20your\x20MCP-host\x20agent).\x0a','claudeMdBody':_0x15254e(0x1fc),'examples':{'01-smoke.js':_0x15254e(0x124),'02-form-fill.js':'//\x20Example\x2002\x20—\x20fill\x20an\x20input\x20+\x20assert\x20the\x20app\x20reacted.\x0a//\x0a//\x20Against\x20playground.unotest.com/scenarios/big-table.\x20Demonstrates\x20getByRole\x0a//\x20for\x20a\x20labelled\x20input,\x20typed\x20input\x20via\x20fill(),\x20and\x20a\x20locator\x20method-chain\x0a//\x20(getByRole(\x27row\x27).filter({hasText}).first())\x20in\x20an\x20assertion.\x0a//\x20Run\x20with:\x20\x20npx\x20@unotest/web\x20e2e\x20examples/02-form-fill\x0a\x0afunction\x20test_form_fill_happy_path()\x20{\x0a\x20\x20step(\x22Filter\x20the\x20Big\x20Table\x20by\x20a\x20name\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20goto(\x27/scenarios/big-table\x27);\x0a\x20\x20\x20\x20fill(getByRole(\x27textbox\x27,\x20{name:\x20\x27Filter\x20by\x20name\x27}),\x20\x27Uma\x20Quinn\x27);\x0a\x20\x20});\x0a\x0a\x20\x20step(\x22Filtering\x20reveals\x20the\x20Clear\x20filter\x20control\x20and\x20matching\x20rows\x22,\x20()\x20=>\x20{\x0a\x20\x20\x20\x20assertVisible(getByRole(\x27button\x27,\x20{name:\x20\x27Clear\x20filter\x27}));\x0a\x20\x20\x20\x20assertVisible(getByRole(\x27row\x27).filter({hasText:\x20\x27Uma\x20Quinn\x27}).first());\x0a\x20\x20});\x0a}\x0a'},'secretsExample':'#\x20unotest-web\x20—\x20secret\x20scenario\x20variables.\x20Created\x20by\x20`init`,\x20gitignored.\x0a#\x0a#\x20Same\x20KEY=VALUE\x20format\x20as\x20unotest/.env,\x20but\x20values\x20here\x20are\x20treated\x20as\x0a#\x20SECRET:\x20they\x20are\x20masked\x20(shown\x20as\x20`‹secret:KEY›`)\x20anywhere\x20the\x20runner\x20or\x0a#\x20MCP\x20debug\x20log\x20would\x20otherwise\x20write\x20them\x20—\x20fill()\x20values,\x20URLs,\x20evaluate\x0a#\x20strings.\x20Reference\x20them\x20in\x20a\x20scenario\x20by\x20their\x20bare\x20UPPER_SNAKE\x20name,\x20the\x0a#\x20same\x20way\x20as\x20.env\x20variables:\x0a#\x0a#\x20\x20\x20fill(getByLabel(\x27Password\x27),\x20PASSWORD);\x0a#\x0a#\x20Secrets\x20are\x20NOT\x20exported\x20to\x20subprocesses\x20(shell())\x20—\x20they\x20stay\x20in\x20the\x0a#\x20variable\x20store.\x20A\x20subprocess\x20that\x20genuinely\x20needs\x20one\x20(a\x20listener\x20with\x20a\x0a#\x20token)\x20gets\x20it\x20via\x20the\x20explicit\x20allowlist\x20in\x20unotest.config.*:\x0a#\x20\x20\x20sandbox:\x20{\x20exportSecrets:\x20[\x27TOKEN\x27]\x20}\x0a#\x20Put\x20non-secret\x20values\x20(URLs,\x20emails,\x20ids)\x20in\x20unotest/.env.\x0a#\x0a#\x20FLEET_EXAMPLE\x0aLOGIN=\x0aPASSWORD=\x0aTOKEN=\x0a','envExample':'#\x20unotest-web\x20—\x20copied\x20to\x20unotest/.env\x20by\x20`init`\x20if\x20not\x20present.\x0a#\x0a#\x20Fill\x20in\x20values\x20that\x20apply\x20to\x20your\x20project.\x20Variables\x20are\x20loaded\x20by\x20the\x0a#\x20runner\x20at\x20scenario\x20start.\x0a#\x0a#\x20Reference\x20any\x20variable\x20from\x20a\x20scenario\x20by\x20its\x20bare\x20UPPER_SNAKE\x20name\x20—\x0a#\x20no\x20env()/secret()\x20wrapper:\x0a#\x0a#\x20\x20\x20goto(\x27/login\x27);\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20relative\x20—\x20see\x20APP_BASE_URL\x0a#\x20\x20\x20fill(getByLabel(\x27Email\x27),\x20TEST_USER_EMAIL);\x0a#\x0a#\x20Secret\x20values\x20(passwords,\x20tokens)\x20go\x20in\x20unotest/.secrets\x20instead\x20—\x20same\x0a#\x20format,\x20but\x20masked\x20in\x20every\x20log.\x20An\x20unknown\x20UPPER_SNAKE\x20name\x20fails\x20the\x0a#\x20run\x20with\x20a\x20clear\x20\x22add\x20it\x20to\x20unotest/.env\x22\x20message.\x0a#\x0a#\x20Environments:\x20override\x20any\x20value\x20per\x20environment\x20with\x20overlay\x20files\x20—\x0a#\x20unotest/.env.staging,\x20unotest/.env.production\x20(secrets:\x20.secrets.<env>).\x0a#\x20Select\x20one:\x20`npx\x20@unotest/web\x20e2e\x20<name>\x20--env\x20staging`.\x20The\x20overlay\x20layers\x0a#\x20over\x20this\x20base\x20file\x20(overlay\x20wins);\x20the\x20shell\x20environment\x20wins\x20over\x20both.\x0a\x0a#\x20---\x20App\x20under\x20test\x20--------------------------------------------------------\x0a#\x20The\x20app\x27s\x20base\x20URL.\x20Relative\x20goto(\x27/path\x27)\x20resolves\x20against\x20it\x20(wired\x20into\x0a#\x20Playwright\x27s\x20baseURL\x20automatically),\x20so\x20write\x20goto(\x27/login\x27)\x20—\x20never\x0a#\x20goto(APP_BASE_URL\x20+\x20\x27/login\x27).\x20Also\x20used\x20for\x20assertUrl\x20substring\x20matching.\x0a#\x20Defaults\x20to\x20the\x20unotest\x20playground\x20so\x20the\x20example\x20scenarios\x20run\x20out\x20of\x20the\x0a#\x20box;\x20point\x20it\x20at\x20your\x20own\x20app.\x0aAPP_BASE_URL=https://playground.unotest.com\x0a\x0a#\x20---\x20Database\x20--------------------------------------------------------------\x0a#\x20Used\x20by\x20dbQuery\x20/\x20dbExec.\x20Install\x20the\x20matching\x20driver\x20as\x20a\x20peer-dep:\x0a#\x20\x20\x20pnpm\x20add\x20-D\x20pg\x20@types/pg\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20for\x20postgresql://\x0a#\x20\x20\x20pnpm\x20add\x20-D\x20mysql2\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20for\x20mysql://\x0a#\x20(SQLite\x20via\x20better-sqlite3\x20—\x20install\x20only\x20if\x20needed.)\x0aDATABASE_URL=postgresql://postgres:postgres@localhost:5432/myapp_test\x0a\x0a#\x20---\x20Extra\x20API\x20hosts\x20-------------------------------------------------------\x0a#\x20apiCall(...)\x20goes\x20against\x20sandbox.apiBaseUrl\x20from\x20unotest.config.*\x20by\x0a#\x20default.\x20A\x20setup\x20that\x20talks\x20to\x20MORE\x20hosts\x20names\x20them\x20here\x20and\x20picks\x20one\x0a#\x20per\x20call\x20by\x20the\x20variable\x20NAME\x20(URLs\x20never\x20appear\x20in\x20scenarios):\x0a#\x20\x20\x20apiCall(\x27POST\x27,\x20\x27/things\x27,\x20body,\x20headers,\x20{base:\x20\x27API_BASE_CHAT\x27})\x0a#\x20API_BASE_CHAT=https://chatbackend.example.com\x0a\x0a#\x20---\x20Runner\x20--------------------------------------------------------------\x0a#\x20Show\x20the\x20browser\x20window\x20during\x20runs\x20(default:\x20headless).\x0a#\x20UNOTEST_HEADED=1\x0a#\x20Slow\x20each\x20Playwright\x20op\x20by\x20N\x20ms\x20(default:\x200).\x20Pairs\x20with\x20HEADED\x20for\x0a#\x20watching\x20the\x20agent\x20at\x20work.\x0a#\x20UNOTEST_SLOW_MO=100\x0a#\x20Browser\x20used\x20by\x20the\x20CLI\x20(chromium\x20|\x20firefox\x20|\x20webkit).\x20Default:\x20chromium.\x0a#\x20UNOTEST_BROWSER=chromium\x0a#\x20Default\x20action\x20timeout\x20in\x20milliseconds\x20—\x20applied\x20to\x20every\x20click\x20/\x0a#\x20fill\x20/\x20waitFor\x20/\x20etc.\x20via\x20Playwright\x27s\x20setDefaultTimeout.\x20Default\x203000.\x0a#\x20Bump\x20if\x20your\x20app\x20is\x20slow;\x20per-action\x20override\x20via\x20the\x20action\x27s\x0a#\x20options.timeout.\x20Playwright\x27s\x20stock\x2030000\x20strands\x20interactive\x20agents.\x0a#\x20UNOTEST_DEFAULT_TIMEOUT_MS=3000\x0a#\x20Default\x20navigation\x20timeout\x20in\x20milliseconds\x20—\x20applied\x20to\x20goto\x20/\x20reload\x20/\x0a#\x20waitForUrl,\x20click\x27s\x20post-action\x20navigation\x20wait,\x20AND\x20setPage\x27s\x20wait\x20for\x20a\x0a#\x20newly\x20opened\x20tab\x20to\x20appear\x20+\x20load.\x20Real-world\x20pages\x20routinely\x20take\x205–15s\x0a#\x20to\x20fire\x20\x27load\x27;\x20keep\x20this\x20separate\x20from\x20the\x20action\x20timeout\x20above.\x0aUNOTEST_DEFAULT_NAVIGATION_TIMEOUT_MS=15000\x0a\x0a#\x20Per-run\x20wall-clock\x20budget\x20in\x20milliseconds\x20—\x20a\x20run\x20aborts\x20once\x20it\x20exceeds\x0a#\x20this.\x20Guards\x20against\x20a\x20stuck\x20scenario\x20hanging\x20the\x20agent\x20indefinitely.\x0a#\x20Invalid\x20or\x20non-positive\x20values\x20fall\x20back\x20to\x20the\x20default.\x20Default\x20300000.\x0a#\x20UNOTEST_MAX_DURATION_MS=300000\x0a\x0a#\x20---\x20Locale\x20+\x20timezone\x20---------------------------------------------------\x0a#\x20Pin\x20the\x20browser\x20context\x27s\x20Accept-Language\x20/\x20navigator.language.\x20Without\x0a#\x20these,\x20tests\x20inherit\x20the\x20OS\x20locale\x20—\x20accessible-name\x20selectors\x0a#\x20(`getByRole(name)`)\x20on\x20i18n\x27d\x20apps\x20will\x20break\x20across\x20machines.\x0a#\x20UNOTEST_LOCALE=en-US\x0a#\x20UNOTEST_TIMEZONE=UTC\x0a\x0a#\x20---\x20Recording\x20(explore_*)\x20----------------------------------------------\x0a#\x20Grace\x20window\x20in\x20ms\x20after\x20each\x20explore_step\x20action.\x20If\x20a\x20click\x20opens\x20a\x0a#\x20new\x20tab/popup,\x20the\x20MCP\x20server\x20auto-switches\x20the\x20active\x20page\x20to\x20it\x20AND\x0a#\x20inserts\x20setPage(N)\x20into\x20the\x20generated\x20DSL\x20trace.\x20Set\x20to\x200\x20to\x20disable\x0a#\x20(strict\x20mode).\x20Has\x20NO\x20effect\x20on\x20run_test\x20—\x20there\x20setPage\x20already\x20waits\x0a#\x20for\x20the\x20tab\x20to\x20appear\x20on\x20its\x20own.\x20Range:\x20[0,\x2010000].\x20Default:\x202000.\x0a#\x20UNOTEST_POPUP_GRACE_MS=2000\x0a\x0a#\x20---\x20Logging\x20-------------------------------------------------------------\x0a#\x20debug\x20|\x20info\x20|\x20warn\x20|\x20error.\x20Default:\x20info.\x0aUNOTEST_LOG_LEVEL=info\x0a\x0a#\x20---\x20Debug\x20diagnostics\x20---------------------------------------------------\x0a#\x20Off\x20by\x20default.\x20Set\x20to\x201\x20to\x20record\x20a\x20structured\x20JSONL\x20log\x20+\x20per-call\x0a#\x20folders\x20under\x20unotest/.debug/\x20—\x20then\x20restart\x20the\x20MCP\x20server.\x20Each\x20tool\x0a#\x20call\x20gets\x20a\x20folder\x20with\x20the\x20full\x20snapshot\x20JSON,\x20the\x20outerHTML\x20of\x20the\x0a#\x20element\x20a\x20locator\x20resolved\x20to,\x20and\x20(on\x20failure)\x20page.html\x20+\x20a\x20screenshot,\x0a#\x20so\x20you\x20(and\x20the\x20AI\x20agent,\x20via\x20get_last_mcp_log)\x20can\x20verify\x20the\x20snapshot\x0a#\x20didn\x27t\x20glitch\x20and\x20the\x20locator\x20hit\x20the\x20right\x20element\x20—\x20instead\x20of\x20guessing\x0a#\x20from\x20a\x20truncated\x20error.\x20audit_last_run\x20then\x20checks\x20the\x20run\x20against\x20the\x0a#\x20testing\x20rules.\x20Also\x20turns\x20on\x20full\x20CLI\x20stack\x20traces.\x20Use\x20\x27summary\x27\x20for\x20a\x0a#\x20lighter\x20log\x20(tool\x20+\x20snapshot\x20layers\x20only,\x20no\x20artifacts).\x20NOTE:\x20tool\x0a#\x20arguments\x20are\x20logged\x20verbatim,\x20so\x20a\x20fill()\x20with\x20a\x20password\x20lands\x20in\x20the\x0a#\x20local\x20(gitignored)\x20log\x20—\x20keep\x20this\x20off\x20unless\x20you\x27re\x20debugging.\x0a#\x20UNOTEST_DEBUG=1\x0a\x0a#\x20---\x20Capture\x20(viewer\x20inspector)\x20------------------------------------------\x0a#\x20Record\x20the\x20browser\x20console\x20+\x20network\x20requests\x20into\x20each\x20run\x27s\x20dir\x20so\x20the\x0a#\x20viewer\x27s\x20Console\x20/\x20Network\x20inspector\x20tabs\x20are\x20populated.\x20Set\x20to\x200\x20to\x20disable.\x0aUNOTEST_NETWORK=1\x0aUNOTEST_CONSOLE=1\x0a#\x20Set\x20to\x201\x20to\x20also\x20capture\x20a\x20screenshot\x20after\x20EVERY\x20executed\x20step\x20(into\x0a#\x20unotest/.runs/<runId>/screenshot/;\x20click\x20a\x20step\x20row\x20in\x20the\x20viewer\x20to\x20see\x0a#\x20it).\x20On\x20failure,\x20a\x20screenshot\x20+\x20page.html\x20always\x20land\x20in\x0a#\x20unotest/.runs/<runId>/failure/\x20—\x20no\x20flag\x20needed.\x0a#\x20UNOTEST_STEP_SCREENSHOTS=1\x0a'};function unotestConfigMjs(_0x5886a0){const _0x5cf92d={_0x496619:0x136},_0x25943b=_0x15254e,_0x8c3932=_0x5886a0===void 0x0?_0x25943b(_0x5cf92d._0x496619):'\x20\x20channel:\x20'+JSON['stringify'](_0x5886a0)+',';return _0x25943b(0x156)+_0x8c3932+_0x25943b(0x225);}__name(unotestConfigMjs,_0x15254e(0x211));var JSCONFIG_REL=_0x374a06(_0x15254e(0x1e7),_0x15254e(0x1f5)),ENV_TYPES_REL=_0x374a06(_0x15254e(0x1eb),_0x15254e(0x13d),_0x15254e(0x21e)),SKIPPED={'jsconfig':_0x15254e(0x16f),'envTypes':_0x15254e(0x16f)},IDENTIFIER=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function renderEnvTypes(_0x5bac67){const _0x55272={_0x32ea25:0x173,_0x364383:0x1d0,_0x35bd75:0x213},_0x347320=_0x15254e,_0x2ae031=[...new Set(_0x5bac67[_0x347320(0x118)](_0x13efaa=>IDENTIFIER['test'](_0x13efaa)))]['sort']();return[_0x347320(_0x55272._0x32ea25),_0x347320(_0x55272._0x364383),_0x347320(_0x55272._0x35bd75),'',..._0x2ae031['map'](_0x2726ce=>_0x347320(0x108)+_0x2726ce+_0x347320(0x221)),'']['join']('\x0a');}__name(renderEnvTypes,_0x15254e(0x1a0));function ensureEditorTypes(_0x18c2a1,_0x2abe19={}){const _0x349494={_0x44ee26:0x1e7,_0x44b26b:0x1f9},_0x5673bf=_0x15254e,_0x51711e=_0x2abe19['env']??process['env'];if(_0x2abe19[_0x5673bf(0x186)]&&_0x51711e['CI'])return SKIPPED;if(!_0x142185(_0x374a06(_0x18c2a1,_0x5673bf(_0x349494._0x44ee26))))return SKIPPED;return{'jsconfig':ensureJsconfig(_0x18c2a1,_0x2abe19[_0x5673bf(_0x349494._0x44b26b)]??![]),'envTypes':syncEnvTypes(_0x18c2a1,_0x51711e)};}__name(ensureEditorTypes,_0x15254e(0x10f));function ensureJsconfig(_0x5157d5,_0x163c9e){const _0x5aa301={_0x1695bd:0x195,_0x1d553b:0x1d2},_0x159fbd=_0x15254e,_0x6a1f7e=_0x374a06(_0x5157d5,JSCONFIG_REL),_0x2179af=_0x142185(_0x6a1f7e);if(_0x2179af&&!_0x163c9e)return _0x159fbd(0x16f);return mkdirSync(dirname(_0x6a1f7e),{'recursive':!![]}),_0x4467e3(_0x6a1f7e,templates[_0x159fbd(0x1c8)]),_0x2179af?_0x159fbd(_0x5aa301._0x1695bd):_0x159fbd(_0x5aa301._0x1d553b);}__name(ensureJsconfig,'ensureJsconfig');function syncEnvTypes(_0x372d1e,_0x4f8a0f){const _0x11e026={_0x2ec067:0x1d2},_0x573a5e=_0x15254e,{declared:_0x52f6a6}=loadScenarioVariables(_0x372d1e,_0x4f8a0f),_0x19823f=renderEnvTypes(_0x52f6a6['map'](_0x30faad=>_0x30faad['name'])),_0x228f7c=_0x374a06(_0x372d1e,ENV_TYPES_REL),_0x26e432=_0x142185(_0x228f7c);if(_0x26e432&&_0x465bf4(_0x228f7c,_0x573a5e(0x1f2))===_0x19823f)return'skipped';return mkdirSync(dirname(_0x228f7c),{'recursive':!![]}),_0x4467e3(_0x228f7c,_0x19823f),_0x26e432?_0x573a5e(0x1a8):_0x573a5e(_0x11e026._0x2ec067);}__name(syncEnvTypes,_0x15254e(0x20a));function promptYesNo(_0x34503e,_0x4d0c4d){const _0xdff520={_0x39e79e:0x11a},_0x3cb1b0={_0x286c9f:0x1b8,_0x2322f6:0x21f,_0x44a2ce:0x14a,_0x4c1867:0x204},_0x51a307={_0x2fe67a:0x162,_0xa49315:0x14a,_0x22165b:0x17a},_0x20bb7c=_0x15254e,_0xaaf1c8=_0x4d0c4d?'\x20[Y/n]\x20':_0x20bb7c(_0xdff520._0x39e79e);return new Promise(_0x12385d=>{const _0x587723={_0x21da28:0x1f2,_0x1d1fa1:0x158,_0x542333:0x222},_0x2f3451=_0x20bb7c;let _0x5bd976=![];const _0x2f288d=__name(_0x578245=>{const _0xcd47f3=_0x4b8d;if(_0x5bd976)return;_0x5bd976=!![],process['stdin'][_0xcd47f3(_0x51a307._0x2fe67a)](_0xcd47f3(0x165),_0x364f47),process[_0xcd47f3(_0x51a307._0xa49315)][_0xcd47f3(0x162)](_0xcd47f3(0x204),_0x168f56),process[_0xcd47f3(_0x51a307._0xa49315)][_0xcd47f3(0x194)](),process[_0xcd47f3(0x14a)][_0xcd47f3(_0x51a307._0x22165b)](),_0x12385d(_0x578245);},_0x2f3451(_0x3cb1b0._0x286c9f)),_0x364f47=__name(_0x2e04c5=>{const _0x33f45e=_0x2f3451,_0x530fff=typeof _0x2e04c5===_0x33f45e(0x208)?_0x2e04c5:_0x2e04c5[_0x33f45e(0x1ba)](_0x33f45e(_0x587723._0x21da28)),_0x3c27ca=_0x530fff[_0x33f45e(_0x587723._0x1d1fa1)]('\x0a');if(_0x3c27ca<0x0)return;const _0x58d4b0=_0x530fff['slice'](0x0,_0x3c27ca)[_0x33f45e(_0x587723._0x542333)]()[_0x33f45e(0x1d6)]();if(_0x58d4b0==='')return _0x2f288d(_0x4d0c4d);_0x2f288d(_0x58d4b0==='y'||_0x58d4b0===_0x33f45e(0x202));},_0x2f3451(0x1c2)),_0x168f56=__name(()=>_0x2f288d(_0x4d0c4d),_0x2f3451(_0x3cb1b0._0x2322f6));process['stdout'][_0x2f3451(0x13b)](_0x34503e+_0xaaf1c8),process[_0x2f3451(0x14a)]['on']('data',_0x364f47),process[_0x2f3451(_0x3cb1b0._0x44a2ce)]['on'](_0x2f3451(_0x3cb1b0._0x4c1867),_0x168f56),process[_0x2f3451(_0x3cb1b0._0x44a2ce)]['resume']();});}__name(promptYesNo,'promptYesNo');import{spawn}from'child_process';import{createRequire}from'module';import{dirname as _0x18c4b7,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x5b9217={}){const _0x8533bc={_0x473d8b:0x1da,_0x299cac:0x13f,_0x4394e4:0x19e},_0x1e335f={_0x4fda12:0x149,_0x44363a:0x13a,_0x1cf79c:0x1f3,_0x1ab1ca:0x165,_0x2d87e1:0x183,_0x654115:0x1b2,_0x702032:0x11e},_0x3e22c0=_0x15254e,_0x264a47=_0x5b9217[_0x3e22c0(_0x8533bc._0x473d8b)]??(_0x54bc39=>process[_0x3e22c0(0x1f3)][_0x3e22c0(0x13b)](_0x54bc39)),_0x2e9151=createRequire(import.meta.url),_0x56b468=_0x2e9151[_0x3e22c0(0x167)](_0x3e22c0(0x128)),_0x55f12e=_0x2e9151(_0x56b468),_0x513881=typeof _0x55f12e[_0x3e22c0(_0x8533bc._0x299cac)]===_0x3e22c0(0x208)?_0x55f12e['bin']:_0x55f12e[_0x3e22c0(0x13f)]?.['playwright'];if(!_0x513881)throw new Error(_0x3e22c0(_0x8533bc._0x4394e4));const _0x3995ad=resolve(_0x18c4b7(_0x56b468),_0x513881);return new Promise((_0xe9b78d,_0x109bc5)=>{const _0x4d6ddd=_0x3e22c0,_0x5b7f5a=spawn(process[_0x4d6ddd(_0x1e335f._0x4fda12)],[_0x3995ad,'install',_0x4d6ddd(0x1f7)],{'stdio':[_0x4d6ddd(0x21d),'pipe',_0x4d6ddd(_0x1e335f._0x44363a)]});_0x5b7f5a[_0x4d6ddd(_0x1e335f._0x1cf79c)]?.['on'](_0x4d6ddd(_0x1e335f._0x1ab1ca),_0x3da30f=>_0x264a47(_0x3da30f[_0x4d6ddd(0x1ba)]())),_0x5b7f5a[_0x4d6ddd(_0x1e335f._0x2d87e1)]?.['on'](_0x4d6ddd(0x165),_0x2f8641=>_0x264a47(_0x2f8641[_0x4d6ddd(0x1ba)]())),_0x5b7f5a['on'](_0x4d6ddd(_0x1e335f._0x654115),_0x109bc5),_0x5b7f5a['on'](_0x4d6ddd(_0x1e335f._0x702032),_0xd36c4e=>{if(_0xd36c4e===0x0)_0xe9b78d();else _0x109bc5(new Error('chromium\x20download\x20exited\x20with\x20code\x20'+_0xd36c4e));});});}__name(installChromium,_0x15254e(0x1be));async function runInstallChromiumCli(){const _0x1c44ed={_0x312b6e:0x183,_0x19e2c5:0x13b,_0x78a646:0x207},_0x3aaf93=_0x15254e;try{return await installChromium(),0x0;}catch(_0x5848c9){return process[_0x3aaf93(_0x1c44ed._0x312b6e)][_0x3aaf93(_0x1c44ed._0x19e2c5)](_0x3aaf93(0x199)+(_0x5848c9 instanceof Error?_0x5848c9[_0x3aaf93(_0x1c44ed._0x78a646)]:String(_0x5848c9))+'\x0a'),0x1;}}__name(runInstallChromiumCli,_0x15254e(0x171));var invokedDirectly=process[_0x15254e(0x182)][0x1]&&fileURLToPath(import.meta.url)===process['argv'][0x1];invokedDirectly&&runInstallChromiumCli()['then'](_0x50606e=>process[_0x15254e(0x11e)](_0x50606e));async function chooseBrowser(_0xa69f97){const _0x79906b={_0x104420:0x1a7,_0x4c59f5:0x1c9,_0x2d2f58:0x1d7,_0x21e0d6:0x192,_0x543c9d:0x12f,_0x31394b:0x1ee,_0x3090fc:0x18f,_0x3c0579:0x10c,_0xe9808e:0x1cf,_0x39cd14:0x1e6,_0x335602:0x131,_0xccd334:0x161,_0x343219:0x1f0,_0x34056f:0x13c,_0x12f017:0x10c,_0x181819:0x1f0,_0x2c61ce:0x1e6,_0x537f23:0x139,_0x11b216:0x205,_0x50d49a:0x1a3,_0x242874:0x166},_0x19f2a7=_0x15254e,_0x351ad7=_0xa69f97[_0x19f2a7(0x1da)]??(_0x587f5b=>process[_0x19f2a7(0x1f3)][_0x19f2a7(0x13b)](_0x587f5b));if(_0xa69f97['override']===_0x19f2a7(_0x79906b._0x104420)){if(_0xa69f97[_0x19f2a7(0x10c)]['channel'])return _0x351ad7(_0x19f2a7(_0x79906b._0x4c59f5)+_0xa69f97[_0x19f2a7(0x10c)][_0x19f2a7(0x1f0)]+'\x20('+_0xa69f97[_0x19f2a7(0x10c)][_0x19f2a7(_0x79906b._0x2d2f58)]+')\x0a'),{'channel':_0xa69f97['probe'][_0x19f2a7(0x1e6)],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x19f2a7(_0x79906b._0x21e0d6),_0x19f2a7(0x105)]};}if(_0xa69f97['override']===_0x19f2a7(_0x79906b._0x543c9d))return _0x351ad7('\x20\x20→\x20downloading\x20bundled\x20Chromium\x20(~150\x20MB)…\x0a'),await installChromium({'stdoutWrite':_0x351ad7}),{'channel':null,'installedBundled':!![],'warnings':[]};if(_0xa69f97[_0x19f2a7(0x201)]===_0x19f2a7(0x14f))return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x19f2a7(_0x79906b._0x31394b),_0x19f2a7(0x1a3),'\x20\x20\x20\x20install\x20Chrome:\x20\x20https://www.google.com/chrome']};if(!_0xa69f97[_0x19f2a7(_0x79906b._0x3090fc)]){if(_0xa69f97[_0x19f2a7(0x10c)][_0x19f2a7(0x1e6)])return _0x351ad7('\x20\x20✓\x20'+_0xa69f97[_0x19f2a7(_0x79906b._0x3c0579)][_0x19f2a7(0x1f0)]+_0x19f2a7(_0x79906b._0xe9808e)+_0xa69f97['probe']['path']+'\x20—\x20using\x20channel\x20\x27'+_0xa69f97[_0x19f2a7(0x10c)][_0x19f2a7(_0x79906b._0x39cd14)]+'\x27\x0a'),{'channel':_0xa69f97[_0x19f2a7(0x10c)]['channel'],'installedBundled':![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':['⚠\x20non-interactive\x20shell\x20and\x20no\x20system\x20browser\x20found.','\x20\x20Run\x20`npx\x20@unotest/web\x20install-chromium`\x20to\x20download\x20the\x20bundled\x20fallback,',_0x19f2a7(_0x79906b._0x335602)]};}if(_0xa69f97[_0x19f2a7(_0x79906b._0x3c0579)][_0x19f2a7(0x1e6)]){_0x351ad7(_0x19f2a7(_0x79906b._0xccd334)+_0xa69f97['probe'][_0x19f2a7(_0x79906b._0x343219)]+_0x19f2a7(0x10e)+_0xa69f97['probe'][_0x19f2a7(0x1d7)]+'\x0a');const _0x3f7511=await promptYesNo(_0x19f2a7(_0x79906b._0x34056f)+_0xa69f97[_0x19f2a7(_0x79906b._0x12f017)][_0x19f2a7(_0x79906b._0x181819)]+'?',!![]);if(_0x3f7511)return{'channel':_0xa69f97[_0x19f2a7(0x10c)][_0x19f2a7(_0x79906b._0x2c61ce)],'installedBundled':![],'warnings':[]};}else _0x351ad7('\x0a\x20\x20No\x20system\x20Chrome\x20/\x20Edge\x20/\x20Chromium\x20detected.\x0a');const _0x40fbb4=await promptYesNo(_0x19f2a7(_0x79906b._0x537f23),!![]);if(_0x40fbb4)return _0x351ad7(_0x19f2a7(0x1bf)),await installChromium({'stdoutWrite':_0x351ad7}),{'channel':null,'installedBundled':!![],'warnings':[]};return{'channel':void 0x0,'installedBundled':![],'warnings':[_0x19f2a7(_0x79906b._0x11b216),_0x19f2a7(_0x79906b._0x50d49a),_0x19f2a7(_0x79906b._0x242874)]};}__name(chooseBrowser,'chooseBrowser');var McpJsonParseError=class extends Error{static{__name(this,_0x15254e(0x15f));}constructor(_0x1923b7){const _0x59e2cd={_0x4d74cf:0x12e,_0x192b42:0x15f},_0x2f4c07=_0x15254e;super(_0x1923b7),this[_0x2f4c07(_0x59e2cd._0x4d74cf)]=_0x2f4c07(_0x59e2cd._0x192b42);}};function mergeMcpConfig(_0x5b9497,_0xb56ca2,_0x28a574,_0x3e1a25={}){const _0x106de1={_0x3c927b:0x172,_0x4127e9:0x19b,_0x4aefc0:0x207,_0x43f78d:0x1e0,_0x4cf2d6:0x13e,_0xe016f4:0x13e,_0xc1f088:0x16d,_0x405d6a:0x11c},_0x59c544=_0x15254e;if(_0x5b9497===null){const _0x2bf8d2=JSON[_0x59c544(_0x106de1._0x3c927b)]({'mcpServers':{[_0xb56ca2]:_0x28a574}},null,0x2)+'\x0a';return{'action':_0x59c544(0x1d2),'newContent':_0x2bf8d2};}let _0x35fc2f;try{_0x35fc2f=JSON[_0x59c544(_0x106de1._0x4127e9)](_0x5b9497);}catch(_0x39aab2){throw new McpJsonParseError('Failed\x20to\x20parse\x20.mcp.json\x20as\x20JSON:\x20'+_0x39aab2[_0x59c544(_0x106de1._0x4aefc0)]+_0x59c544(_0x106de1._0x43f78d));}(!_0x35fc2f[_0x59c544(_0x106de1._0x4cf2d6)]||typeof _0x35fc2f[_0x59c544(_0x106de1._0xe016f4)]!==_0x59c544(_0x106de1._0xc1f088))&&(_0x35fc2f[_0x59c544(0x13e)]={});const _0x20b116=_0xb56ca2 in _0x35fc2f[_0x59c544(_0x106de1._0xe016f4)];if(_0x20b116&&!_0x3e1a25['force'])return{'action':_0x59c544(0x14c),'newContent':_0x5b9497};_0x35fc2f['mcpServers'][_0xb56ca2]=_0x28a574;const _0x53f6da=JSON[_0x59c544(_0x106de1._0x3c927b)](_0x35fc2f,null,0x2)+'\x0a';return{'action':_0x20b116?_0x59c544(_0x106de1._0x405d6a):'added','newContent':_0x53f6da};}__name(mergeMcpConfig,'mergeMcpConfig');var ClaudeSettingsParseError=class extends Error{static{__name(this,_0x15254e(0x1de));}constructor(_0x3dfd9d){const _0x377fd8=_0x15254e;super(_0x3dfd9d),this[_0x377fd8(0x12e)]=_0x377fd8(0x1de);}};function mergeClaudeAllowEntries(_0x41fb3b,_0x3d7186){const _0x580c35={_0x423c68:0x1a6,_0x4c749d:0x1e0,_0x1cafcb:0x170,_0x4defc:0x17c,_0x25c507:0x170,_0x145c5b:0x1fd,_0x253087:0x117,_0x46a1f6:0x1c0,_0x20eb6a:0x14c},_0x2d2827=_0x15254e;if(_0x41fb3b===null){const _0x2c906e=JSON[_0x2d2827(0x172)]({'permissions':{'allow':[..._0x3d7186]}},null,0x2)+'\x0a';return{'action':'created','newContent':_0x2c906e,'added':[..._0x3d7186]};}let _0x4d5d23;try{_0x4d5d23=JSON[_0x2d2827(0x19b)](_0x41fb3b);}catch(_0x49a2ac){throw new ClaudeSettingsParseError(_0x2d2827(_0x580c35._0x423c68)+_0x49a2ac['message']+_0x2d2827(_0x580c35._0x4c749d));}(!_0x4d5d23['permissions']||typeof _0x4d5d23[_0x2d2827(_0x580c35._0x1cafcb)]!=='object')&&(_0x4d5d23[_0x2d2827(0x170)]={});const _0x2404f3=Array[_0x2d2827(_0x580c35._0x4defc)](_0x4d5d23[_0x2d2827(_0x580c35._0x25c507)]['allow'])?_0x4d5d23[_0x2d2827(0x170)]['allow']:[],_0x58965d=[];for(const _0x577ac3 of _0x3d7186){!_0x2404f3['includes'](_0x577ac3)&&(_0x2404f3['push'](_0x577ac3),_0x58965d[_0x2d2827(_0x580c35._0x145c5b)](_0x577ac3));}_0x4d5d23[_0x2d2827(0x170)][_0x2d2827(_0x580c35._0x253087)]=_0x2404f3;if(_0x58965d[_0x2d2827(_0x580c35._0x46a1f6)]===0x0)return{'action':_0x2d2827(_0x580c35._0x20eb6a),'newContent':_0x41fb3b,'added':[]};const _0x2b9868=JSON['stringify'](_0x4d5d23,null,0x2)+'\x0a';return{'action':_0x2d2827(0x104),'newContent':_0x2b9868,'added':_0x58965d};}__name(mergeClaudeAllowEntries,_0x15254e(0x1ca));function mergeClaudeHooks(_0xec3984,_0x4af98b,_0xf25f96,_0x343bce){const _0x572371={_0x3ffbb5:0x19b,_0x5adb84:0x1a6,_0x36f83d:0x207,_0x5e8282:0x1e0,_0x3da2bb:0x101,_0x14501:0x16d,_0x32804a:0x172},_0x5ee098=_0x15254e;let _0x149d49;if(_0xec3984===null)_0x149d49={};else try{_0x149d49=JSON[_0x5ee098(_0x572371._0x3ffbb5)](_0xec3984);}catch(_0x227cd3){throw new ClaudeSettingsParseError(_0x5ee098(_0x572371._0x5adb84)+_0x227cd3[_0x5ee098(_0x572371._0x36f83d)]+_0x5ee098(_0x572371._0x5e8282));}const _0x3dbc3a=_0x149d49[_0x5ee098(0x101)]&&typeof _0x149d49[_0x5ee098(_0x572371._0x3da2bb)]===_0x5ee098(_0x572371._0x14501)?_0x149d49[_0x5ee098(0x101)]:{},_0x1e4529=[];for(const _0x40e6c3 of _0x4af98b){const _0x3c8a2d=Array[_0x5ee098(0x17c)](_0x3dbc3a[_0x40e6c3])?_0x3dbc3a[_0x40e6c3]:[],_0x17fc2d=_0x3c8a2d[_0x5ee098(0x125)](_0x3a4cc2=>(_0x3a4cc2['hooks']??[])[_0x5ee098(0x125)](_0x53fc36=>(_0x53fc36['command']??'')[_0x5ee098(0x1a4)](_0x343bce)));if(_0x17fc2d)continue;_0x3c8a2d[_0x5ee098(0x1fd)]({'matcher':'*','hooks':[{'type':_0x5ee098(0x112),'command':_0xf25f96}]}),_0x3dbc3a[_0x40e6c3]=_0x3c8a2d,_0x1e4529[_0x5ee098(0x1fd)](_0x40e6c3);}_0x149d49['hooks']=_0x3dbc3a;if(_0x1e4529[_0x5ee098(0x1c0)]===0x0)return{'action':'already-present','newContent':_0xec3984??JSON[_0x5ee098(0x172)](_0x149d49,null,0x2)+'\x0a','added':[]};return{'action':_0x5ee098(0x104),'newContent':JSON[_0x5ee098(_0x572371._0x32804a)](_0x149d49,null,0x2)+'\x0a','added':_0x1e4529};}__name(mergeClaudeHooks,_0x15254e(0x130));var BEGIN=_0x15254e(0x178),END=_0x15254e(0x21a);function mergeClaudeMd(_0x4d57b2,_0x2c4302){const _0x54d87d={_0x34fb92:0x222,_0x4f1447:0x15b,_0x3a3617:0x142,_0x39aa66:0x1c0,_0x1f3c8e:0x1a8},_0x4ffb71=_0x15254e,_0x425578=BEGIN+'\x0a'+_0x2c4302[_0x4ffb71(_0x54d87d._0x34fb92)]()+'\x0a'+END;if(_0x4d57b2===null)return{'action':_0x4ffb71(0x1d2),'newContent':_0x425578+'\x0a'};const _0x3c7fe3=_0x4d57b2[_0x4ffb71(0x158)](BEGIN);if(_0x3c7fe3===-0x1){const _0x2d28d9=_0x4d57b2[_0x4ffb71(_0x54d87d._0x4f1447)]('\x0a')?_0x4d57b2:_0x4d57b2+'\x0a';return{'action':_0x4ffb71(_0x54d87d._0x3a3617),'newContent':_0x2d28d9+'\x0a'+_0x425578+'\x0a'};}const _0x3ae3c0=_0x4d57b2[_0x4ffb71(0x158)](END,_0x3c7fe3);if(_0x3ae3c0===-0x1){const _0x8de883=_0x4d57b2['endsWith']('\x0a')?_0x4d57b2:_0x4d57b2+'\x0a';return{'action':_0x4ffb71(0x142),'newContent':_0x8de883+'\x0a'+_0x425578+'\x0a'};}const _0x192478=_0x4d57b2[_0x4ffb71(0x1b6)](0x0,_0x3c7fe3)+_0x425578+_0x4d57b2[_0x4ffb71(0x1b6)](_0x3ae3c0+END[_0x4ffb71(_0x54d87d._0x39aa66)]);if(_0x192478===_0x4d57b2)return{'action':'already-present','newContent':_0x4d57b2};return{'action':_0x4ffb71(_0x54d87d._0x1f3c8e),'newContent':_0x192478};}__name(mergeClaudeMd,_0x15254e(0x17b));import{appendUniqueLines}from'@unotest/core';var AGENT_LOG_HOOK_EVENTS=['SessionStart',_0x15254e(0x1ce),_0x15254e(0x152),_0x15254e(0x1c6),'PostToolUse',_0x15254e(0x1cb),'Stop',_0x15254e(0x1f1),'SubagentStop',_0x15254e(0x193),'InstructionsLoaded'];function parseArgs(_0x1be821){const _0xeb264d={_0x5349c1:0x1c0,_0x21fcfe:0x114,_0x1ccac0:0x14f,_0x513f5b:0x1e1,_0x48c0ce:0x14e},_0x941f62=_0x15254e;let _0x5a6011=![],_0x539ab2=process[_0x941f62(0x1d8)](),_0x1aba28;for(let _0x795d6e=0x0;_0x795d6e<_0x1be821[_0x941f62(_0xeb264d._0x5349c1)];_0x795d6e++){const _0x58264e=_0x1be821[_0x795d6e];if(_0x58264e===_0x941f62(_0xeb264d._0x21fcfe)||_0x58264e==='-f')_0x5a6011=!![];else{if(_0x58264e==='--browser'){const _0x4b844c=_0x1be821[++_0x795d6e];if(_0x4b844c==='system'||_0x4b844c==='bundled'||_0x4b844c===_0x941f62(_0xeb264d._0x1ccac0))_0x1aba28=_0x4b844c;else throw new Error(_0x941f62(_0xeb264d._0x513f5b)+String(_0x4b844c));}else{if(!_0x58264e[_0x941f62(0x17e)]('-'))_0x539ab2=_0x38cd1e(process['cwd'](),_0x58264e);}}}const _0x3b0055={'cwd':_0x539ab2,'force':_0x5a6011};if(_0x1aba28!==void 0x0)_0x3b0055[_0x941f62(_0xeb264d._0x48c0ce)]=_0x1aba28;return _0x3b0055;}__name(parseArgs,_0x15254e(0x16e));function symbol(_0x259549){const _0x3ed398=_0x15254e;return _0x259549==='ok'?'✓':_0x259549===_0x3ed398(0x1ed)?'⚠':'✗';}__name(symbol,'symbol');function readOwnVersion(){const _0x54abf1={_0x2ca560:0x214,_0xefd7b6:0x1f2,_0x1fecff:0x1a1,_0x54ab4d:0x1c0,_0x10ea88:0x174},_0x4eebd6=_0x15254e,_0x957ec4=_0x2958af(_0x35bde6(import.meta.url)),_0x38ba40=_0x38cd1e(_0x957ec4,_0x4eebd6(_0x54abf1._0x2ca560)),_0x2f7c4c=_0x1fdc2b(_0x38ba40,_0x4eebd6(_0x54abf1._0xefd7b6)),_0xe69518=JSON['parse'](_0x2f7c4c);if(typeof _0xe69518[_0x4eebd6(_0x54abf1._0x1fecff)]!=='string'||_0xe69518[_0x4eebd6(0x1a1)][_0x4eebd6(_0x54abf1._0x54ab4d)]===0x0)throw new Error('package.json\x20at\x20'+_0x38ba40+_0x4eebd6(_0x54abf1._0x10ea88));return _0xe69518['version'];}__name(readOwnVersion,'readOwnVersion');function ensureDir(_0x2ea57b){if(!_0xfd37dc(_0x2ea57b))_0x287bb8(_0x2ea57b,{'recursive':!![]});}__name(ensureDir,_0x15254e(0x188));function writeIfNeeded(_0x280a24,_0x2aac4b,_0x2c8836){const _0xe20042=_0x15254e,_0x107de6=_0xfd37dc(_0x280a24);if(_0x107de6&&!_0x2c8836)return'skipped';return ensureDir(_0x2958af(_0x280a24)),_0x1abceb(_0x280a24,_0x2aac4b),_0x107de6?_0xe20042(0x195):'created';}__name(writeIfNeeded,_0x15254e(0x1bc));function writeIfAbsent(_0x2bbe50,_0x15125c){const _0x61198c={_0x4fa93c:0x16f},_0x3a360f=_0x15254e;if(_0xfd37dc(_0x2bbe50))return _0x3a360f(_0x61198c._0x4fa93c);return ensureDir(_0x2958af(_0x2bbe50)),_0x1abceb(_0x2bbe50,_0x15125c),_0x3a360f(0x1d2);}__name(writeIfAbsent,'writeIfAbsent');async function runInit(_0x111da2){const _0x1bd1e1={_0x18b744:0x1f3,_0x411a1e:0x1f3,_0x56f52e:0x12e,_0x6f1d8a:0x207,_0x461305:0x13b,_0x267656:0x218,_0x87c926:0x121,_0x4b799d:0x1b2,_0x56d454:0x183,_0x1b8626:0x200,_0x1dc39b:0x1d4,_0x4f7c7c:0x1d8,_0x1df00b:0x1fd,_0x2a147f:0x14b,_0x3624b3:0x175,_0x1529b0:0x1fd,_0x163631:0x19d,_0xf14a0b:0x1e2,_0x341fb6:0x1f9,_0xdc7b49:0x1f2,_0x13cf05:0x14c,_0x31486d:0x18b,_0x3ecc3c:0x14c,_0x3853f6:0x16f,_0x496996:0x1d9,_0x9d2073:0x19f,_0x2a2d9f:0x19f,_0x45150f:0x16a,_0x43dd80:0x1fd,_0x5be38a:0x1dc,_0x2682b6:0x180,_0x33f514:0x13b,_0x52d8e0:0x1d7,_0x56c31f:0x13b,_0x452215:0x157,_0x135f9f:0x1c1,_0x4107bd:0x1f9,_0x5b2799:0x14c,_0x259698:0x1af,_0x2bf853:0x1d2,_0x52d51d:0x148,_0x73de11:0x148,_0x402db4:0x11b,_0x4fd438:0x10a,_0x20bbc1:0x13b,_0x23685d:0x209,_0x407a57:0x1af,_0x5d70de:0x148,_0x543f5e:0x189,_0x1393ba:0x143,_0x1aeda2:0x220,_0x228ed8:0x148,_0x4680e3:0x1e4,_0x53b6e4:0x1f6,_0x2f8c74:0x1d1,_0x2a5e98:0x138,_0x416112:0x207,_0x3312e3:0x1f3,_0x14eb21:0x1d8,_0x5f49ef:0x1b1,_0x3e01c0:0x145,_0x55bed5:0x104,_0x453a29:0x13b,_0x37692a:0x16c,_0x5e5764:0x20c,_0x52ece6:0x14a,_0x410abf:0x201,_0x5027f6:0x1e6,_0x267c84:0x13b,_0x9ed40c:0x133,_0xf616d1:0x1c0,_0x38f5ed:0x106},_0x24f09a={_0x48741e:0x18c,_0x48e356:0x16f},_0x2bbbe9=_0x15254e,_0x19edaa=parseArgs(_0x111da2);process[_0x2bbbe9(_0x1bd1e1._0x18b744)]['write'](_0x2bbbe9(0x19a)+_0x19edaa[_0x2bbbe9(0x1d8)]+'\x0a\x0a'),process[_0x2bbbe9(0x1f3)]['write']('Environment:\x0a');const _0x1dc7fc=runEnvironmentChecks({'cwd':_0x19edaa[_0x2bbbe9(0x1d8)]});let _0x5a7c8f=![];for(const _0x30fe9b of _0x1dc7fc){process[_0x2bbbe9(_0x1bd1e1._0x411a1e)][_0x2bbbe9(0x13b)]('\x20\x20'+symbol(_0x30fe9b[_0x2bbbe9(0x121)])+'\x20'+_0x30fe9b[_0x2bbbe9(_0x1bd1e1._0x56f52e)]+':\x20'+_0x30fe9b[_0x2bbbe9(_0x1bd1e1._0x6f1d8a)]+'\x0a');if(_0x30fe9b['detail'])process[_0x2bbbe9(0x1f3)][_0x2bbbe9(_0x1bd1e1._0x461305)]('\x20\x20\x20\x20\x20\x20'+_0x30fe9b[_0x2bbbe9(_0x1bd1e1._0x267656)]+'\x0a');if(_0x30fe9b[_0x2bbbe9(_0x1bd1e1._0x87c926)]===_0x2bbbe9(_0x1bd1e1._0x4b799d))_0x5a7c8f=!![];}if(_0x5a7c8f)return process[_0x2bbbe9(_0x1bd1e1._0x56d454)]['write'](_0x2bbbe9(_0x1bd1e1._0x1b8626)),{'exitCode':0x1};process[_0x2bbbe9(0x1f3)]['write']('\x0aFiles:\x0a');const _0x83165c=[];ensureDir(_0x34b0bd(_0x19edaa['cwd'],_0x2bbbe9(0x1b4)));for(const [_0x1fb551,_0x2db286]of Object[_0x2bbbe9(0x1c5)](templates[_0x2bbbe9(0x1cc)])){_0x83165c[_0x2bbbe9(0x1fd)]({'path':_0x2bbbe9(_0x1bd1e1._0x1dc39b)+_0x1fb551,'status':writeIfNeeded(_0x34b0bd(_0x19edaa[_0x2bbbe9(_0x1bd1e1._0x4f7c7c)],'unotest/e2e/examples',_0x1fb551),_0x2db286,_0x19edaa[_0x2bbbe9(0x1f9)])});}_0x83165c[_0x2bbbe9(_0x1bd1e1._0x1df00b)]({'path':_0x2bbbe9(_0x1bd1e1._0x2a147f),'status':writeIfNeeded(_0x34b0bd(_0x19edaa[_0x2bbbe9(_0x1bd1e1._0x4f7c7c)],_0x2bbbe9(0x14b)),templates[_0x2bbbe9(_0x1bd1e1._0x3624b3)],_0x19edaa['force'])}),_0x83165c[_0x2bbbe9(_0x1bd1e1._0x1529b0)]({'path':_0x2bbbe9(_0x1bd1e1._0x163631),'status':writeIfNeeded(_0x34b0bd(_0x19edaa[_0x2bbbe9(_0x1bd1e1._0x4f7c7c)],'unotest/e2e/_helpers/.gitkeep'),'',_0x19edaa['force'])}),_0x83165c[_0x2bbbe9(0x1fd)]({'path':_0x2bbbe9(0x1e2),'status':writeIfNeeded(_0x34b0bd(_0x19edaa['cwd'],_0x2bbbe9(_0x1bd1e1._0xf14a0b)),templates['agentsMd'],_0x19edaa[_0x2bbbe9(_0x1bd1e1._0x341fb6)])});{const _0x1e9526=_0x34b0bd(_0x19edaa[_0x2bbbe9(_0x1bd1e1._0x4f7c7c)],_0x2bbbe9(0x18b)),_0x292351=_0xfd37dc(_0x1e9526)?_0x1fdc2b(_0x1e9526,_0x2bbbe9(_0x1bd1e1._0xdc7b49)):null,_0x56bb8f=mergeClaudeMd(_0x292351,templates[_0x2bbbe9(0x10d)]);_0x56bb8f[_0x2bbbe9(0x148)]!==_0x2bbbe9(_0x1bd1e1._0x13cf05)&&_0x1abceb(_0x1e9526,_0x56bb8f[_0x2bbbe9(0x1af)]),_0x83165c['push']({'path':_0x2bbbe9(_0x1bd1e1._0x31486d),'status':_0x56bb8f['action']===_0x2bbbe9(_0x1bd1e1._0x3ecc3c)?_0x2bbbe9(_0x1bd1e1._0x3853f6):_0x56bb8f[_0x2bbbe9(0x148)]});}_0x83165c[_0x2bbbe9(0x1fd)]({'path':'unotest/.env.example','status':writeIfNeeded(_0x34b0bd(_0x19edaa[_0x2bbbe9(_0x1bd1e1._0x4f7c7c)],_0x2bbbe9(_0x1bd1e1._0x496996)),templates[_0x2bbbe9(0x1ef)],_0x19edaa[_0x2bbbe9(0x1f9)])}),_0x83165c[_0x2bbbe9(_0x1bd1e1._0x1df00b)]({'path':_0x2bbbe9(_0x1bd1e1._0x9d2073),'status':writeIfAbsent(_0x34b0bd(_0x19edaa[_0x2bbbe9(0x1d8)],_0x2bbbe9(_0x1bd1e1._0x2a2d9f)),templates[_0x2bbbe9(0x1ef)])}),_0x83165c['push']({'path':_0x2bbbe9(0x16a),'status':writeIfAbsent(_0x34b0bd(_0x19edaa[_0x2bbbe9(0x1d8)],_0x2bbbe9(_0x1bd1e1._0x45150f)),templates[_0x2bbbe9(0x1c7)])});const _0x2cbc2c=ensureEditorTypes(_0x19edaa['cwd'],{'force':_0x19edaa[_0x2bbbe9(0x1f9)]});_0x83165c['push']({'path':JSCONFIG_REL,'status':_0x2cbc2c[_0x2bbbe9(0x109)]}),_0x83165c[_0x2bbbe9(_0x1bd1e1._0x43dd80)]({'path':ENV_TYPES_REL,'status':_0x2cbc2c['envTypes']});const _0x1d9031=_0x34b0bd(_0x19edaa[_0x2bbbe9(0x1d8)],_0x2bbbe9(_0x1bd1e1._0x5be38a));_0x83165c[_0x2bbbe9(0x1fd)]({'path':_0x2bbbe9(_0x1bd1e1._0x5be38a),'status':writeIfNeeded(_0x1d9031,unotestConfigMjs(void 0x0),_0x19edaa[_0x2bbbe9(0x1f9)])});const _0x12cbf0=_0x2958af(_0x35bde6(import.meta.url)),_0x57dee3=__name((_0x94e13c,_0x1e5e20)=>{const _0x5d8a51=_0x2bbbe9,_0x5b164f=_0x38cd1e(_0x12cbf0,_0x5d8a51(0x127),_0x94e13c),_0x41884b=_0x34b0bd(_0x19edaa[_0x5d8a51(0x1d8)],_0x94e13c);if(!_0xfd37dc(_0x5b164f))return{'path':_0x94e13c,'status':_0x1e5e20+_0x5d8a51(_0x24f09a._0x48741e)};if(_0xfd37dc(_0x41884b)){if(_0x1fdc2b(_0x41884b,_0x5d8a51(0x1f2))===_0x1fdc2b(_0x5b164f,'utf8'))return{'path':_0x94e13c,'status':_0x5d8a51(_0x24f09a._0x48e356)};return copyFileSync(_0x5b164f,_0x41884b),{'path':_0x94e13c,'status':_0x5d8a51(0x1a8)};}return ensureDir(_0x2958af(_0x41884b)),copyFileSync(_0x5b164f,_0x41884b),{'path':_0x94e13c,'status':_0x5d8a51(0x1d2)};},_0x2bbbe9(0x187));_0x83165c[_0x2bbbe9(_0x1bd1e1._0x1df00b)](_0x57dee3('.claude/skills/write-e2e-test/SKILL.md',_0x2bbbe9(0x154)),_0x57dee3(_0x2bbbe9(0x134),_0x2bbbe9(0x1ff))),_0x83165c[_0x2bbbe9(_0x1bd1e1._0x1529b0)](_0x57dee3(_0x2bbbe9(0x1d5),_0x2bbbe9(0x160)));for(const _0x2a998d of _0x83165c){const _0x1bef4e=_0x2a998d['status']==='created'?_0x2bbbe9(0x1e9):_0x2a998d[_0x2bbbe9(0x180)]===_0x2bbbe9(0x195)?_0x2bbbe9(0x224):_0x2a998d[_0x2bbbe9(0x180)]==='updated'?_0x2bbbe9(0x12b):_0x2a998d[_0x2bbbe9(_0x1bd1e1._0x2682b6)][_0x2bbbe9(0x17e)](_0x2bbbe9(0x16f))?'·\x20skipped':'·\x20'+_0x2a998d[_0x2bbbe9(_0x1bd1e1._0x2682b6)];process[_0x2bbbe9(0x1f3)][_0x2bbbe9(_0x1bd1e1._0x33f514)]('\x20\x20'+_0x1bef4e+'\x20\x20'+_0x2a998d[_0x2bbbe9(_0x1bd1e1._0x52d8e0)]+'\x0a');}process['stdout'][_0x2bbbe9(_0x1bd1e1._0x56c31f)]('\x0aMCP\x20config:\x0a');const _0x17401e=_0x34b0bd(_0x19edaa[_0x2bbbe9(0x1d8)],_0x2bbbe9(0x1d3)),_0x39833f=_0xfd37dc(_0x17401e)?_0x1fdc2b(_0x17401e,'utf8'):null,_0x3453cb=readOwnVersion(),_0x447e07={'command':_0x2bbbe9(_0x1bd1e1._0x452215),'args':['-y','@unotest/web@'+_0x3453cb,_0x2bbbe9(0x1bd)]};try{const _0x2a6a04=mergeMcpConfig(_0x39833f,_0x2bbbe9(_0x1bd1e1._0x135f9f),_0x447e07,{'force':_0x19edaa[_0x2bbbe9(_0x1bd1e1._0x4107bd)]});_0x2a6a04[_0x2bbbe9(0x148)]!==_0x2bbbe9(_0x1bd1e1._0x5b2799)&&_0x1abceb(_0x17401e,_0x2a6a04[_0x2bbbe9(_0x1bd1e1._0x259698)]);const _0x16c1f6=_0x2a6a04[_0x2bbbe9(0x148)]===_0x2bbbe9(_0x1bd1e1._0x2bf853)?'created\x20.mcp.json':_0x2a6a04[_0x2bbbe9(_0x1bd1e1._0x52d51d)]===_0x2bbbe9(0x104)?'added\x20unotest-web\x20entry':_0x2a6a04[_0x2bbbe9(_0x1bd1e1._0x73de11)]===_0x2bbbe9(0x11c)?_0x2bbbe9(_0x1bd1e1._0x402db4):_0x2bbbe9(0x135);process[_0x2bbbe9(0x1f3)][_0x2bbbe9(_0x1bd1e1._0x461305)](_0x2bbbe9(0x138)+_0x16c1f6+'\x0a');}catch(_0x5db234){if(_0x5db234 instanceof McpJsonParseError)return process[_0x2bbbe9(0x183)][_0x2bbbe9(0x13b)](_0x2bbbe9(_0x1bd1e1._0x4fd438)+_0x5db234['message']+'\x0a'),{'exitCode':0x1};throw _0x5db234;}process[_0x2bbbe9(_0x1bd1e1._0x411a1e)][_0x2bbbe9(_0x1bd1e1._0x20bbc1)]('\x0aClaude\x20Code\x20permissions:\x0a');const _0x57be07=_0x34b0bd(_0x19edaa['cwd'],'.claude/settings.json'),_0x2e7d85=_0xfd37dc(_0x57be07)?_0x1fdc2b(_0x57be07,'utf8'):null;try{const _0x331c6d=mergeClaudeAllowEntries(_0x2e7d85,[_0x2bbbe9(_0x1bd1e1._0x23685d)]),_0x5db8dc=_0x2bbbe9(0x111),_0x78b1e0=mergeClaudeHooks(_0x331c6d[_0x2bbbe9(_0x1bd1e1._0x407a57)],AGENT_LOG_HOOK_EVENTS,_0x5db8dc,_0x2bbbe9(0x1fe));(_0x331c6d[_0x2bbbe9(_0x1bd1e1._0x52d51d)]!=='already-present'||_0x78b1e0[_0x2bbbe9(_0x1bd1e1._0x5d70de)]!==_0x2bbbe9(0x14c))&&(ensureDir(_0x2958af(_0x57be07)),_0x1abceb(_0x57be07,_0x78b1e0['newContent']));const _0xc273d5=_0x331c6d['action']===_0x2bbbe9(_0x1bd1e1._0x2bf853)?_0x2bbbe9(_0x1bd1e1._0x543f5e):_0x331c6d['action']==='added'?_0x2bbbe9(_0x1bd1e1._0x1393ba)+_0x331c6d[_0x2bbbe9(0x104)]['join'](',\x20'):_0x2bbbe9(_0x1bd1e1._0x1aeda2);process[_0x2bbbe9(0x1f3)]['write'](_0x2bbbe9(0x138)+_0xc273d5+'\x0a');const _0x19534a=_0x78b1e0[_0x2bbbe9(_0x1bd1e1._0x228ed8)]==='added'?_0x2bbbe9(_0x1bd1e1._0x4680e3)+_0x78b1e0[_0x2bbbe9(0x104)]['length']+_0x2bbbe9(_0x1bd1e1._0x53b6e4):_0x2bbbe9(_0x1bd1e1._0x2f8c74);process[_0x2bbbe9(0x1f3)][_0x2bbbe9(0x13b)](_0x2bbbe9(_0x1bd1e1._0x2a5e98)+_0x19534a+'\x0a');}catch(_0x3b69d2){if(_0x3b69d2 instanceof ClaudeSettingsParseError)return process['stderr'][_0x2bbbe9(_0x1bd1e1._0x461305)](_0x2bbbe9(0x10a)+_0x3b69d2[_0x2bbbe9(_0x1bd1e1._0x416112)]+'\x0a'),{'exitCode':0x1};throw _0x3b69d2;}process[_0x2bbbe9(_0x1bd1e1._0x3312e3)][_0x2bbbe9(_0x1bd1e1._0x461305)](_0x2bbbe9(0x20f));const _0x3fa10b=_0x34b0bd(_0x19edaa[_0x2bbbe9(_0x1bd1e1._0x14eb21)],'.gitignore'),_0x19ae4d=_0xfd37dc(_0x3fa10b)?_0x1fdc2b(_0x3fa10b,'utf8'):null,_0x2878be=appendUniqueLines(_0x19ae4d,[_0x2bbbe9(_0x1bd1e1._0x5f49ef),_0x2bbbe9(_0x1bd1e1._0x3e01c0),_0x2bbbe9(0x102),_0x2bbbe9(0x122),_0x2bbbe9(0x17f),'unotest/.debug*/','unotest/.snapshots/',_0x2bbbe9(0x215),'unotest/.viewer.log',_0x2bbbe9(0x1dd)]);if(_0x2878be['added']['length']>0x0){_0x1abceb(_0x3fa10b,_0x2878be[_0x2bbbe9(0x1af)]);for(const _0x30493f of _0x2878be[_0x2bbbe9(_0x1bd1e1._0x55bed5)]){process[_0x2bbbe9(0x1f3)][_0x2bbbe9(_0x1bd1e1._0x453a29)]('\x20\x20✓\x20added\x20\x22'+_0x30493f+'\x22\x0a');}}for(const _0x42d90b of _0x2878be[_0x2bbbe9(_0x1bd1e1._0x37692a)]){process[_0x2bbbe9(0x1f3)][_0x2bbbe9(0x13b)](_0x2bbbe9(_0x1bd1e1._0x5e5764)+_0x42d90b+'\x22\x0a');}_0x2878be['added'][_0x2bbbe9(0x1c0)]===0x0&&_0x2878be[_0x2bbbe9(0x16c)]['length']===0x0&&process[_0x2bbbe9(0x1f3)]['write']('\x20\x20·\x20no\x20changes\x20needed\x0a');process[_0x2bbbe9(0x1f3)][_0x2bbbe9(0x13b)](_0x2bbbe9(0x168));const _0x1956c5=probeSystemBrowser(),_0xfdfa68=Boolean(process[_0x2bbbe9(_0x1bd1e1._0x52ece6)][_0x2bbbe9(0x177)])&&Boolean(process[_0x2bbbe9(_0x1bd1e1._0x411a1e)][_0x2bbbe9(0x177)]),_0x15c934={'probe':_0x1956c5,'interactive':_0xfdfa68};if(_0x19edaa[_0x2bbbe9(0x14e)])_0x15c934[_0x2bbbe9(_0x1bd1e1._0x410abf)]=_0x19edaa[_0x2bbbe9(0x14e)];const _0x4a5934=await chooseBrowser(_0x15c934);_0x1abceb(_0x1d9031,unotestConfigMjs(_0x4a5934['channel']));const _0x255073=_0x4a5934[_0x2bbbe9(_0x1bd1e1._0x5027f6)]===void 0x0?'no\x20channel\x20set\x20(bundled\x20fallback\x20after\x20install-chromium)':_0x4a5934['channel']===null?_0x2bbbe9(0x179):_0x2bbbe9(0x107)+_0x4a5934[_0x2bbbe9(_0x1bd1e1._0x5027f6)]+'\x27';process[_0x2bbbe9(0x1f3)][_0x2bbbe9(_0x1bd1e1._0x267c84)](_0x2bbbe9(0x15a)+_0x255073+'\x0a'),process['stdout'][_0x2bbbe9(0x13b)](_0x2bbbe9(0x176));if(_0x4a5934[_0x2bbbe9(_0x1bd1e1._0x9ed40c)][_0x2bbbe9(_0x1bd1e1._0xf616d1)]>0x0){for(const _0x12e01c of _0x4a5934[_0x2bbbe9(0x133)])process[_0x2bbbe9(0x1f3)]['write']('\x20\x20'+_0x12e01c+'\x0a');process[_0x2bbbe9(_0x1bd1e1._0x3312e3)]['write']('\x0a');}return process[_0x2bbbe9(0x1f3)][_0x2bbbe9(0x13b)](_0x2bbbe9(_0x1bd1e1._0x38f5ed)),{'exitCode':0x0};}__name(runInit,_0x15254e(0x198));var invokedDirectly2=process[_0x15254e(0x182)][0x1]&&_0x35bde6(import.meta.url)===process['argv'][0x1];invokedDirectly2&&runInit(process['argv']['slice'](0x2))[_0x15254e(0x1ac)](({exitCode:_0x1e5b0a})=>{const _0x1f1ea1={_0x362ab6:0x21c},_0x117896=_0x15254e;process[_0x117896(_0x1f1ea1._0x362ab6)]=_0x1e5b0a;})['catch'](_0xa1d499=>{const _0x42976a={_0x2f37c5:0x183,_0x2b69bf:0x207},_0x4edb2b=_0x15254e;process[_0x4edb2b(_0x42976a._0x2f37c5)]['write'](_0x4edb2b(0x12c)+(_0xa1d499 instanceof Error?_0xa1d499[_0x4edb2b(_0x42976a._0x2b69bf)]:String(_0xa1d499))+'\x0a'),process[_0x4edb2b(0x21c)]=0x1;});export{runInit,templates};
@@ -1 +1 @@
1
- function _0x3037(){const _0x306e97=['mtHzBxHTwK0','CgXHExDYAwDODc9WywnRywDLlMPZB24GAgfZig5VihvZywjSzsaIyMLUiIbMAwvSza','C3rKB3v0','zgf0yq','mJmWntuXmNrVy2rcsq','BMfTzq','zxHPDa','mJrztuHgENe','CMvZB2X2zq','mtq2nZG0vKnJtfvW','CgXHExDYAwDODc9WywnRywDLlMPZB24','zxHLy1bHDgG','CgLWzq','mtb4te1hy3e','Aw5ZDgfSBenOCM9TAxvT','mJrzs2Lxv2W','4PYxigLUC3rHBgWTy2HYB21PDw06ia','nJGZmZy4u3fwwKnl','mZCYotG3ovLetK9mwG','yMLU','y2HYB21PDw0Gzg93BMXVywqGzxHPDgvKihDPDgGGy29Kzsa','DgHLBG','BwvZC2fNzq','C3rKzxjY','mJiZmtK2ofDYrwHMrW','CNvUsw5ZDgfSBenOCM9TAxvTq2XP','nJC2mtm1CLf2uwfx','CgXHExDYAwDODa','yxjNDG','mZK4otLhzeTSze4','Dg9tDhjPBMC','C3rYAw5N','Aw5ZDgfSBa','D3jPDgu','zgvMAw5LuhjVCgvYDhK'];_0x3037=function(){return _0x306e97;};return _0x3037();}const _0x3f11a2=_0x58ef;(function(_0x47cb6d,_0x3ada91){const _0x4d4e00={_0x3e6cf5:0x1cd,_0x507a8f:0x1d3,_0x44927e:0x1dc,_0x427143:0x1eb,_0x320efe:0x1ed,_0x34dab2:0x1da,_0x40630c:0x1e2,_0x2e1b96:0x1e5,_0x151ae7:0x1d7},_0x19de32=_0x58ef,_0x2abad5=_0x47cb6d();while(!![]){try{const _0x563458=-parseInt(_0x19de32(_0x4d4e00._0x3e6cf5))/0x1*(-parseInt(_0x19de32(_0x4d4e00._0x507a8f))/0x2)+-parseInt(_0x19de32(_0x4d4e00._0x44927e))/0x3+parseInt(_0x19de32(_0x4d4e00._0x427143))/0x4+parseInt(_0x19de32(_0x4d4e00._0x320efe))/0x5*(parseInt(_0x19de32(_0x4d4e00._0x34dab2))/0x6)+parseInt(_0x19de32(0x1e4))/0x7*(-parseInt(_0x19de32(_0x4d4e00._0x40630c))/0x8)+-parseInt(_0x19de32(_0x4d4e00._0x2e1b96))/0x9*(parseInt(_0x19de32(0x1e0))/0xa)+-parseInt(_0x19de32(_0x4d4e00._0x151ae7))/0xb;if(_0x563458===_0x3ada91)break;else _0x2abad5['push'](_0x2abad5['shift']());}catch(_0x598521){_0x2abad5['push'](_0x2abad5['shift']());}}}(_0x3037,0x78288));var __defProp=Object[_0x3f11a2(0x1d2)],__name=(_0x444864,_0x18b30b)=>__defProp(_0x444864,_0x3f11a2(0x1d8),{'value':_0x18b30b,'configurable':!![]});import{spawn}from'child_process';import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x29f208={}){const _0xb09c6e={_0x5224ff:0x1db,_0x45dc6d:0x1dd,_0x11e6df:0x1e6,_0x32b267:0x1cf,_0x374414:0x1e6},_0x4fdf7f={_0x11ad9c:0x1d0,_0x5150bb:0x1df,_0x5c4210:0x1d6,_0x4d94b4:0x1d9},_0x4a7cec=_0x3f11a2,_0x2a9be4=_0x29f208['stdoutWrite']??(_0x97d8f=>process[_0x4a7cec(0x1d5)]['write'](_0x97d8f)),_0x4c1279=createRequire(import.meta.url),_0x4e6930=_0x4c1279[_0x4a7cec(_0xb09c6e._0x5224ff)](_0x4a7cec(_0xb09c6e._0x45dc6d)),_0x2b3245=_0x4c1279(_0x4e6930),_0x3fab9b=typeof _0x2b3245[_0x4a7cec(_0xb09c6e._0x11e6df)]===_0x4a7cec(_0xb09c6e._0x32b267)?_0x2b3245[_0x4a7cec(_0xb09c6e._0x11e6df)]:_0x2b3245[_0x4a7cec(_0xb09c6e._0x374414)]?.[_0x4a7cec(0x1ee)];if(!_0x3fab9b)throw new Error(_0x4a7cec(0x1d4));const _0xc12f1c=resolve(dirname(_0x4e6930),_0x3fab9b);return new Promise((_0x11da93,_0x48a464)=>{const _0x473132=_0x4a7cec,_0x1bf2c4=spawn(process[_0x473132(0x1de)],[_0xc12f1c,_0x473132(_0x4fdf7f._0x11ad9c),'chromium'],{'stdio':['inherit',_0x473132(0x1df),_0x473132(_0x4fdf7f._0x5150bb)]});_0x1bf2c4[_0x473132(0x1d5)]?.['on']('data',_0x5d43fd=>_0x2a9be4(_0x5d43fd['toString']())),_0x1bf2c4['stderr']?.['on'](_0x473132(_0x4fdf7f._0x5c4210),_0x52f14a=>_0x2a9be4(_0x52f14a[_0x473132(0x1ce)]())),_0x1bf2c4['on']('error',_0x48a464),_0x1bf2c4['on'](_0x473132(_0x4fdf7f._0x4d94b4),_0x3844ac=>{const _0x196ff0=_0x473132;if(_0x3844ac===0x0)_0x11da93();else _0x48a464(new Error(_0x196ff0(0x1e7)+_0x3844ac));});});}function _0x58ef(_0x11c93c,_0x2197d9){_0x11c93c=_0x11c93c-0x1cc;const _0x303792=_0x3037();let _0x58ef82=_0x303792[_0x11c93c];if(_0x58ef['JCEnbQ']===undefined){var _0x440f43=function(_0x26bd2a){const _0x4018c3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x444864='',_0x18b30b='';for(let _0x29f208=0x0,_0x2a9be4,_0x4c1279,_0x4e6930=0x0;_0x4c1279=_0x26bd2a['charAt'](_0x4e6930++);~_0x4c1279&&(_0x2a9be4=_0x29f208%0x4?_0x2a9be4*0x40+_0x4c1279:_0x4c1279,_0x29f208++%0x4)?_0x444864+=String['fromCharCode'](0xff&_0x2a9be4>>(-0x2*_0x29f208&0x6)):0x0){_0x4c1279=_0x4018c3['indexOf'](_0x4c1279);}for(let _0x2b3245=0x0,_0x3fab9b=_0x444864['length'];_0x2b3245<_0x3fab9b;_0x2b3245++){_0x18b30b+='%'+('00'+_0x444864['charCodeAt'](_0x2b3245)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x18b30b);};_0x58ef['oNpSDQ']=_0x440f43,_0x58ef['sJtTtT']={},_0x58ef['JCEnbQ']=!![];}const _0x1ec53b=_0x303792[0x0],_0x1ef205=_0x11c93c+_0x1ec53b,_0x4dc86e=_0x58ef['sJtTtT'][_0x1ef205];return!_0x4dc86e?(_0x58ef82=_0x58ef['oNpSDQ'](_0x58ef82),_0x58ef['sJtTtT'][_0x1ef205]=_0x58ef82):_0x58ef82=_0x4dc86e,_0x58ef82;}__name(installChromium,_0x3f11a2(0x1e1));async function runInstallChromiumCli(){const _0x4d06c0={_0x238c88:0x1ea,_0x3fa3a7:0x1d1,_0x370e8e:0x1e9},_0x4f2a5a=_0x3f11a2;try{return await installChromium(),0x0;}catch(_0x2b67bd){return process[_0x4f2a5a(_0x4d06c0._0x238c88)][_0x4f2a5a(_0x4d06c0._0x3fa3a7)](_0x4f2a5a(0x1e3)+(_0x2b67bd instanceof Error?_0x2b67bd[_0x4f2a5a(_0x4d06c0._0x370e8e)]:String(_0x2b67bd))+'\x0a'),0x1;}}__name(runInstallChromiumCli,_0x3f11a2(0x1ec));var invokedDirectly=process[_0x3f11a2(0x1cc)][0x1]&&fileURLToPath(import.meta.url)===process[_0x3f11a2(0x1cc)][0x1];invokedDirectly&&runInstallChromiumCli()[_0x3f11a2(0x1e8)](_0x14c078=>process['exit'](_0x14c078));export{installChromium,runInstallChromiumCli};
1
+ const _0x51b087=_0x5967;(function(_0x1617da,_0x10496e){const _0x20ec06={_0x4fae9e:0x200,_0x67386:0x1eb,_0x5a80c0:0x1f7,_0x3d25ac:0x1f6,_0x30d74c:0x1ee,_0x2bc56c:0x1e5},_0x1c846a=_0x5967,_0x99c48c=_0x1617da();while(!![]){try{const _0x51b79e=parseInt(_0x1c846a(_0x20ec06._0x4fae9e))/0x1*(parseInt(_0x1c846a(0x202))/0x2)+-parseInt(_0x1c846a(_0x20ec06._0x67386))/0x3*(-parseInt(_0x1c846a(0x1e9))/0x4)+parseInt(_0x1c846a(_0x20ec06._0x5a80c0))/0x5*(-parseInt(_0x1c846a(0x1ed))/0x6)+parseInt(_0x1c846a(0x1f9))/0x7*(-parseInt(_0x1c846a(0x1f4))/0x8)+parseInt(_0x1c846a(_0x20ec06._0x3d25ac))/0x9*(parseInt(_0x1c846a(_0x20ec06._0x30d74c))/0xa)+parseInt(_0x1c846a(_0x20ec06._0x2bc56c))/0xb+-parseInt(_0x1c846a(0x1fa))/0xc*(parseInt(_0x1c846a(0x1ef))/0xd);if(_0x51b79e===_0x10496e)break;else _0x99c48c['push'](_0x99c48c['shift']());}catch(_0xdd15e7){_0x99c48c['push'](_0x99c48c['shift']());}}}(_0x4cd8,0xd5d12));var __defProp=Object['defineProperty'],__name=(_0x50618f,_0x509972)=>__defProp(_0x50618f,_0x51b087(0x1f3),{'value':_0x509972,'configurable':!![]});import{spawn}from'child_process';import{createRequire}from'module';import{dirname,resolve}from'path';import{fileURLToPath}from'url';async function installChromium(_0x4029f9={}){const _0x6eb029={_0x1663e5:0x1e7,_0x1557a4:0x1fc},_0x503d9c={_0x5111d8:0x1f2,_0xef44fb:0x1e3,_0x102c56:0x1e6},_0x16a21a=_0x51b087,_0x145705=_0x4029f9['stdoutWrite']??(_0x2dde1f=>process['stdout']['write'](_0x2dde1f)),_0x4da3cd=createRequire(import.meta.url),_0x5a65d7=_0x4da3cd[_0x16a21a(_0x6eb029._0x1663e5)](_0x16a21a(_0x6eb029._0x1557a4)),_0x411dc6=_0x4da3cd(_0x5a65d7),_0x307b4e=typeof _0x411dc6['bin']===_0x16a21a(0x1e2)?_0x411dc6[_0x16a21a(0x1f8)]:_0x411dc6[_0x16a21a(0x1f8)]?.[_0x16a21a(0x1e8)];if(!_0x307b4e)throw new Error(_0x16a21a(0x1fe));const _0x46f786=resolve(dirname(_0x5a65d7),_0x307b4e);return new Promise((_0x93c910,_0x3dc1d9)=>{const _0x2d1822=_0x16a21a,_0x1ebf52=spawn(process[_0x2d1822(_0x503d9c._0x5111d8)],[_0x46f786,'install','chromium'],{'stdio':[_0x2d1822(_0x503d9c._0xef44fb),'pipe','pipe']});_0x1ebf52[_0x2d1822(0x1fb)]?.['on'](_0x2d1822(0x1f5),_0x357381=>_0x145705(_0x357381[_0x2d1822(0x1f0)]())),_0x1ebf52['stderr']?.['on'](_0x2d1822(0x1f5),_0x173bcd=>_0x145705(_0x173bcd[_0x2d1822(0x1f0)]())),_0x1ebf52['on'](_0x2d1822(0x1ec),_0x3dc1d9),_0x1ebf52['on'](_0x2d1822(_0x503d9c._0x102c56),_0x556e96=>{if(_0x556e96===0x0)_0x93c910();else _0x3dc1d9(new Error('chromium\x20download\x20exited\x20with\x20code\x20'+_0x556e96));});});}__name(installChromium,_0x51b087(0x1ea));async function runInstallChromiumCli(){const _0x41103a={_0x16df72:0x1ff},_0x58062e=_0x51b087;try{return await installChromium(),0x0;}catch(_0x2b146a){return process[_0x58062e(_0x41103a._0x16df72)][_0x58062e(0x1e1)]('✗\x20install-chromium:\x20'+(_0x2b146a instanceof Error?_0x2b146a[_0x58062e(0x1f1)]:String(_0x2b146a))+'\x0a'),0x1;}}__name(runInstallChromiumCli,_0x51b087(0x1fd));var invokedDirectly=process[_0x51b087(0x201)][0x1]&&fileURLToPath(import.meta.url)===process[_0x51b087(0x201)][0x1];function _0x4cd8(){const _0x154bc1=['mtu1mLb2yvLiBG','Aw5ZDgfSBenOCM9TAxvT','otG3oujpCvPyCa','zxjYB3i','mJe2mZmWnLvrCvnWzG','mZbAv3jLA20','mtnpBwvcre8','Dg9tDhjPBMC','BwvZC2fNzq','zxHLy1bHDgG','BMfTzq','nte2otq0y05mrNfW','zgf0yq','ntm4mdj1rvjyB2C','nu1pqM90uW','yMLU','ndLsvertyMS','mZmZnduZndHMD3f5A2q','C3rKB3v0','CgXHExDYAwDODc9WywnRywDLlMPZB24','CNvUsw5ZDgfSBenOCM9TAxvTq2XP','CgXHExDYAwDODc9WywnRywDLlMPZB24GAgfZig5VihvZywjSzsaIyMLUiIbMAwvSza','C3rKzxjY','mtCXodK4n0PvuLjZzW','yxjNDG','mLjADNnIza','D3jPDgu','C3rYAw5N','Aw5OzxjPDa','DgHLBG','mtu5odeYotvpAMzKu3O','zxHPDa','CMvZB2X2zq','CgXHExDYAwDODa'];_0x4cd8=function(){return _0x154bc1;};return _0x4cd8();}invokedDirectly&&runInstallChromiumCli()[_0x51b087(0x1e4)](_0x46aa9d=>process[_0x51b087(0x1e6)](_0x46aa9d));function _0x5967(_0x61364b,_0x4b075d){_0x61364b=_0x61364b-0x1e1;const _0x4cd807=_0x4cd8();let _0x5967ac=_0x4cd807[_0x61364b];if(_0x5967['WaSvpT']===undefined){var _0x26bd9b=function(_0xedd333){const _0x23e212='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x50618f='',_0x509972='';for(let _0x4029f9=0x0,_0x145705,_0x4da3cd,_0x5a65d7=0x0;_0x4da3cd=_0xedd333['charAt'](_0x5a65d7++);~_0x4da3cd&&(_0x145705=_0x4029f9%0x4?_0x145705*0x40+_0x4da3cd:_0x4da3cd,_0x4029f9++%0x4)?_0x50618f+=String['fromCharCode'](0xff&_0x145705>>(-0x2*_0x4029f9&0x6)):0x0){_0x4da3cd=_0x23e212['indexOf'](_0x4da3cd);}for(let _0x411dc6=0x0,_0x307b4e=_0x50618f['length'];_0x411dc6<_0x307b4e;_0x411dc6++){_0x509972+='%'+('00'+_0x50618f['charCodeAt'](_0x411dc6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x509972);};_0x5967['oLynqj']=_0x26bd9b,_0x5967['IqXlxh']={},_0x5967['WaSvpT']=!![];}const _0x4496aa=_0x4cd807[0x0],_0x43c9c2=_0x61364b+_0x4496aa,_0x581995=_0x5967['IqXlxh'][_0x43c9c2];return!_0x581995?(_0x5967ac=_0x5967['oLynqj'](_0x5967ac),_0x5967['IqXlxh'][_0x43c9c2]=_0x5967ac):_0x5967ac=_0x581995,_0x5967ac;}export{installChromium,runInstallChromiumCli};
@@ -1 +1 @@
1
- const _0x4a502d=_0x2014;(function(_0x5e608b,_0x237e75){const _0x5261a7={_0x10119a:0x18a,_0x1512bf:0x1c2,_0x51dffc:0x1ac,_0x250944:0x175,_0x2ace0d:0x1c8,_0x3a5e8e:0x184,_0x534fff:0x170},_0x2c42fd=_0x2014,_0x10be41=_0x5e608b();while(!![]){try{const _0x510c1a=-parseInt(_0x2c42fd(0x17c))/0x1*(parseInt(_0x2c42fd(_0x5261a7._0x10119a))/0x2)+parseInt(_0x2c42fd(_0x5261a7._0x1512bf))/0x3+parseInt(_0x2c42fd(0x190))/0x4+-parseInt(_0x2c42fd(_0x5261a7._0x51dffc))/0x5*(-parseInt(_0x2c42fd(0x160))/0x6)+parseInt(_0x2c42fd(0x193))/0x7*(parseInt(_0x2c42fd(_0x5261a7._0x250944))/0x8)+parseInt(_0x2c42fd(0x16e))/0x9*(-parseInt(_0x2c42fd(_0x5261a7._0x2ace0d))/0xa)+-parseInt(_0x2c42fd(_0x5261a7._0x3a5e8e))/0xb*(-parseInt(_0x2c42fd(_0x5261a7._0x534fff))/0xc);if(_0x510c1a===_0x237e75)break;else _0x10be41['push'](_0x10be41['shift']());}catch(_0x3f581b){_0x10be41['push'](_0x10be41['shift']());}}}(_0xc444,0x5a45a));var __defProp=Object[_0x4a502d(0x1aa)],__name=(_0x2e45fc,_0x2f73d6)=>__defProp(_0x2e45fc,_0x4a502d(0x1a3),{'value':_0x2f73d6,'configurable':!![]});import{writeFileSync as _0x2d9868}from'fs';import{join as _0x2dc774}from'path';function _0xc444(){const _0x142713=['y3DK','CMv3CML0zs1ZzwXLy3rVCG','cK5LEhq6ihbHC3rLigvHy2GGzML4lxbYB21WDc5TzcbPBNrVihLVDxiGteXnignSAwvUDcaOq2XHDwrLienVzguGlWPdDxjZB3iGlYbLDgmUks4GvgHLieXmtsbYzxr1CM5ZigeGDw5PzMLLzcbKAwzMoYbYzxzPzxCGAxqGyw5KigfWCgX5cM1HBNvHBgX5lIbxzsbUzxzLCIbHDxrVlwfWCgX5icHelti1ks4k','lcbJB2WG','C291CMnLCW','ndyYnJLpEePsthe','zMfPBhvYzxm','BgvUz3rO','ls1MywLSAw5N','DhjHy2u','D3jPDgu','ndbvD3zWAvO','ChvZAa','C25HChnOB3q','Bgv2zwW','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','Aw5JBhvKzxm','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','vgLTzw91DevYCM9Y','mJyZnhvqyvHZzW','iYmJifn0ywnRcMbGyaO','Dg9vChbLCKnHC2u','zgvMyxvSDezHAwX1CMvZuM9VDa','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','cI0GkIPmB2nHDgLVBIOQoIbSAw5Lia','zMLSDgvY','y2XHC3nPzNK','C3rKzxjY','cMbGyaOkiYmGu2vTyw50AwmTre9nihnUyxbZAg90cGO','AxneAxjLy3rVCNK','y2vPBa','y29UzMLKzw5Jzq','C2nYzwvUC2HVDc1LCNjVCI50Ehq','ntq1nJyXs2nrrw5Y','cI0GkIPfCNjVCIOQoIbG','nte2BMnVCwLN','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','C2nYzwvUC2HVDevYCM9Y','BwvZC2fNzq','CgfKu3rHCNq','ndb0zhzczfG','yxjNDG','rxjYB3i','B3v0','yxbWCM94vg9Rzw5Z','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','CNvUuhjLCgfYzuzPEa','odiXuwj5sgXh','qxnZzxj0Aw9UrxjYB3i','C29YDa','iIaOBg9VA2vKigLUia','DxrMoa','BgLUzq','xYHUBYbZzw1HBNrPyY1KB20GC25HChnOB3qGy2fWDhvYzwqGzM9YihrOAxmGzMfPBhvYzsLF','yNvPBgrqCM9TChrnyxjRzg93BG','nte3Cu9vvKPv','phnJzw5HCMLVigzPBguGBM8GBg9Uz2vYig9UigrPC2S+','DMfSDwvZ','DgvZDa','ChjLCgfYzs1MAxG6ig5VihrLC3rjzcbWCM92AwrLzcbHBMqGBM8GzMfPBgLUzYb0zxn0CYbMB3vUzc4k','ChjVBxb0twfYA2rVD24','mZuYyw1use50','y29UC29SzuXPBwL0','BgLZDezHAwX1CMvZ','zxHPDa','CMvHzezHAwX1CMvcDw5KBgu','C3vNz2vZDgvKqwn0Aw9U','mtiWntKZnMfmEu9PDG','DgvZDezU','C2nYzwvUC2HVDc5WBMC','mtKWnZqZrMvAEwje','AM9PBG','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','icb+','AgfZ','C3rHy2S','cMbGyaOkiYmGtgfZDcbJB25ZB2XLigvUDhjPzxmkcMbGyaO','vvjmoIa','DMLKzw9qyxrO','ChjLCgfYzs1MAxG6ignVBxbVC2LUzYbMAxGGChjVBxb0CYbMB3iG','zxjYB3i','C25HChnOB3qUANnVBG','y29TCg9ZzuzPEfbYB21WDa','AgLNAa','C2nLBMfYAw9qyxrO','BwfW','BMfTzq','DgLTzxn0yw1W','y29UC29Szq','tg9JyxrVCKvYCM9Y','lNvUB3rLC3q','y29UC29Szs5QC29U','C3rKB3v0','zgvMAw5LuhjVCgvYDhK','CMvZB2X2zuj1BMrSzurPCG','mZqZnvzjse9ABq','zxjY','ChjLCgfYzs1MAxG6ig5VigzHAwX1CMuGyNvUzgXLCYbMB3vUzcb1BMrLCIaUDw5VDgvZDc9MywLSDxjLCY8Uifj1BIbHigzHAwXPBMCGDgvZDcbMAxjZDdSGDgHLigj1BMrSzsbPCYb3CML0DgvUigf1Dg9TyxrPy2fSBhKUcG','Dw5RBM93BG','y2HHBMDLlwfZC2vYDgLVBG','icdINjmG','C2XPy2u','C3bSAxq','CgfYC2u','cGOJiYbxAgf0ihDLig5LzwqkcLbYB2r1y2uGysaQkNvUAwzPzwqGzgLMzIOQihrOyxqGzML4zxmGDgHLihrLC3qUienVBNn0CMfPBNrZoGOkms4Gs2vLCcb0AguGC2fTzsb0zxn0xYOOksbMDw5JDgLVBIbUyw1LigfUzcb0AguGC2fTzsbVDMvYywXSigzSB3CG4OcuignOyw5Nzsb0AgukicaGBwLUAw11BsbYzxf1AxjLzcb0BYbTywTLihrOzsbMywLSAw5Nihn0zxaGC3vJy2vLzc4kmI4GuhjLzMvYihrOzsbeltiYihnLBgvJDg9YigHPzxjHCMnOEtOGygDLDej5vgvZDeLKycdIHPiGygDLDej5uM9SzsH7BMfTzx0PyaOGicdIHPiGygDLDej5tgfIzwXGiokgKIbGz2v0qNLuzxH0ycdIHPiGygXVy2f0B3iOy3nZkwaGkgXHC3qGCMvZB3j0ks4kmY4GswyGywrKAw5NigeGD2fPDcWGChjLzMvYigb3ywL0rM9YkgXVyYLGic8GyhDHAxrgB3jvCMWOCgf0DgvYBILGig92zxiGyhbHDxnLkg1ZkwaUcJqUie5VigLTCg9YDhmG4OcuierttcbMDw5JDgLVBNmGCMvZB2X2zsb0AhjVDwDOihrOzsbYDw50Aw1LihjLz2LZDhj5igj5ig5HBwuUcJuUie5VigbHC3LUy2aVygf3ywL0ycdIGjqGDgHLigv4zwn1Dg9YigHHBMrSzxmGyxn5BMmGAw50zxjUywXSEs4knI4Gt3v0Chv0ie9otfKGDgHLihvUAwzPzwqGzgLMzIbIzxr3zwvUigzLBMnLCYbGygbKAwzMiokaPIbGygaUifrOzsb1C2vYcIaGihjLDMLLD3mGkYbHChbSAwvZigL0ig1HBNvHBgX5icHelti1iokaLcb3zsbUzxzLCIbHDxrVlwfWCgX5ks4k','y29S','icaGicaG','BMv0D29YAW','zMfPBhvYzs5QC29U','Dgv4Da','icbJB25MAwrLBMnLpq','Dg9mB3DLCKnHC2u'];_0xc444=function(){return _0x142713;};return _0xc444();}import{fileURLToPath}from'url';import{readFileSync as _0x14398e,existsSync as _0x3ca66d}from'fs';import{relative}from'path';import{existsSync,mkdirSync,readFileSync,readdirSync,statSync,writeFileSync}from'fs';import{join,dirname}from'path';function readFailureBundle(_0x4e6e8d){const _0xc5d5b={_0x191960:0x1b9,_0x30f894:0x180,_0x1d1099:0x1a8,_0x30d2da:0x1b8,_0x791ca4:0x1b4,_0x36f639:0x1ca},_0x44ecf6=_0x4a502d;if(!existsSync(_0x4e6e8d))return null;const _0x1a3ef9=join(_0x4e6e8d,_0x44ecf6(_0xc5d5b._0x191960));if(!existsSync(_0x1a3ef9))return null;const _0xc6ec74=JSON[_0x44ecf6(0x1b4)](readFileSync(_0x1a3ef9,_0x44ecf6(_0xc5d5b._0x30f894))),_0x1f12f8=join(_0x4e6e8d,_0x44ecf6(_0xc5d5b._0x1d1099)),_0x437d85=existsSync(_0x1f12f8)?JSON[_0x44ecf6(0x1b4)](readFileSync(_0x1f12f8,_0x44ecf6(0x180))):[],_0x12951c=join(_0x4e6e8d,_0x44ecf6(0x19e)),_0x43de23=existsSync(_0x12951c)?JSON[_0x44ecf6(0x1b4)](readFileSync(_0x12951c,_0x44ecf6(0x180))):void 0x0,_0x222edb={'trace':_0xc6ec74,'console':_0x437d85},_0x5cfa62=join(_0x4e6e8d,'network.json');existsSync(_0x5cfa62)&&(_0x222edb[_0x44ecf6(_0xc5d5b._0x30d2da)]=JSON[_0x44ecf6(_0xc5d5b._0x791ca4)](readFileSync(_0x5cfa62,_0x44ecf6(0x180))));if(_0x43de23!==void 0x0)_0x222edb[_0x44ecf6(_0xc5d5b._0x36f639)]=_0x43de23;const _0xc810b8=join(_0x4e6e8d,_0x44ecf6(0x192));if(existsSync(_0xc810b8))_0x222edb['screenshotPath']=_0xc810b8;else{const _0xc8ceec=join(_0x4e6e8d,_0x44ecf6(0x16d));existsSync(_0xc8ceec)&&(_0x222edb[_0x44ecf6(0x172)]=readFileSync(_0xc8ceec,_0x44ecf6(0x180)));}const _0x43d89b=join(_0x4e6e8d,'har.json');if(existsSync(_0x43d89b))_0x222edb['harPath']=_0x43d89b;const _0x521625=join(_0x4e6e8d,'video.webm');if(existsSync(_0x521625))_0x222edb[_0x44ecf6(0x19b)]=_0x521625;return _0x222edb;}__name(readFailureBundle,_0x4a502d(0x18e));function listFailures(_0x50ccf4){const _0x1e6789={_0x46d240:0x16a,_0x349158:0x191},_0xde3d49=_0x4a502d;if(!existsSync(_0x50ccf4))return[];const _0x1da873=[];for(const _0x3d76fd of readdirSync(_0x50ccf4)){const _0x3543f5=join(_0x50ccf4,_0x3d76fd);if(!statSync(_0x3543f5)[_0xde3d49(_0x1e6789._0x46d240)]())continue;for(const _0x24cac6 of readdirSync(_0x3543f5)){const _0x50b2ab=join(_0x3543f5,_0x24cac6);if(!statSync(_0x50b2ab)[_0xde3d49(0x16a)]())continue;const _0x14341c=join(_0x50b2ab,'failure.json');if(!existsSync(_0x14341c))continue;try{const _0x3eef26=JSON['parse'](readFileSync(_0x14341c,_0xde3d49(0x180)));_0x1da873[_0xde3d49(0x1c9)]({'runId':_0x3d76fd,'testFn':_0x3eef26[_0xde3d49(_0x1e6789._0x349158)],'scenarioPath':_0x3eef26['scenarioPath'],'dir':_0x50b2ab,'timestamp':_0x3eef26[_0xde3d49(0x1a4)]});}catch{}}}return _0x1da873[_0xde3d49(0x17e)]((_0x895ec3,_0xe258d5)=>_0xe258d5[_0xde3d49(0x1a4)]['localeCompare'](_0x895ec3['timestamp'])),_0x1da873;}__name(listFailures,_0x4a502d(0x18c));function defaultFailuresRoot(_0x57afb6=process[_0x4a502d(0x1bd)]()){const _0x37bec9={_0x307cb9:0x1c3},_0x1bf14a=_0x4a502d;return join(_0x57afb6,_0x1bf14a(0x1a7),_0x1bf14a(_0x37bec9._0x307cb9));}__name(defaultFailuresRoot,_0x4a502d(0x163));function resolveBundleDir(_0x20cb11,_0x10180f){const _0x3794eb={_0x2f05ae:0x16a},_0xab50fa=_0x4a502d;if(existsSync(_0x20cb11)&&statSync(_0x20cb11)[_0xab50fa(_0x3794eb._0x2f05ae)]())return _0x20cb11;return join(_0x10180f,_0x20cb11);}__name(resolveBundleDir,_0x4a502d(0x1ab));function composeFixPrompt(_0x249555,_0x4063da={}){const _0x9620e5={_0x5736fa:0x1b2,_0x5e2e11:0x1c6,_0x2cafd:0x16b,_0x1e950c:0x1c4,_0x1dfa9a:0x1c4},_0x18d536=_0x4a502d,_0x3b57f8=_0x4063da['failuresRoot']??defaultFailuresRoot(),_0x5b3429=resolveBundleDir(_0x249555,_0x3b57f8),_0x864ceb=readFailureBundle(_0x5b3429);if(!_0x864ceb)throw new Error(_0x18d536(0x195)+_0x249555+_0x18d536(0x17f)+_0x5b3429+')');const _0x43af3d=_0x4063da[_0x18d536(0x1bd)]??process[_0x18d536(0x1bd)](),_0x65d4df=_0x3ca66d(_0x864ceb[_0x18d536(0x1c6)]['scenarioPath'])?_0x14398e(_0x864ceb[_0x18d536(0x1c6)][_0x18d536(0x1a1)],'utf8'):_0x18d536(0x185),_0x11ce50=_0x4063da[_0x18d536(0x18b)]??0x19,_0x1d554d=_0x864ceb[_0x18d536(0x1a5)][_0x18d536(_0x9620e5._0x5736fa)](-_0x11ce50),{suggestedAction:_0x12ee3b,confidence:_0x4681a9}=classify(_0x864ceb),_0x1bc7c1=buildPromptMarkdown({'bundle':_0x864ceb,'scenarioSource':_0x65d4df,'scenarioRelative':relative(_0x43af3d,_0x864ceb[_0x18d536(_0x9620e5._0x5e2e11)][_0x18d536(0x1a1)]),'consoleTail':_0x1d554d,'suggestedAction':_0x12ee3b,'confidence':_0x4681a9}),_0x27057f=Math[_0x18d536(_0x9620e5._0x2cafd)](_0x1bc7c1[_0x18d536(_0x9620e5._0x1e950c)]/0x4);return{'promptMarkdown':_0x1bc7c1,'suggestedAction':_0x12ee3b,'confidence':_0x4681a9,'sources':{'bundleDir':_0x5b3429,'scenarioPath':_0x864ceb[_0x18d536(0x1c6)]['scenarioPath'],'consoleEntries':_0x864ceb[_0x18d536(0x1a5)][_0x18d536(_0x9620e5._0x1dfa9a)],'hasSnapshot':!!_0x864ceb['snapshot']},'approxTokens':_0x27057f};}__name(composeFixPrompt,_0x4a502d(0x19f));function classify(_0x47a81d){const _0x5e8c79={_0x271b6b:0x19d,_0x475dc7:0x19d,_0x62d4e:0x1a6,_0x43f74b:0x15f,_0x5e068e:0x1a0,_0x51c633:0x187,_0x9abc80:0x17d},_0x268917=_0x4a502d,_0x549964=_0x47a81d[_0x268917(0x1c6)][_0x268917(_0x5e8c79._0x271b6b)][_0x268917(0x173)][_0x268917(0x1bc)](),_0xccec2e=_0x47a81d['trace'][_0x268917(_0x5e8c79._0x475dc7)][_0x268917(0x1a3)]??'';let _0x595884=_0x268917(0x1af),_0x56445a='low';if(_0xccec2e==='LocatorError'||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i['test'](_0x549964))_0x595884=_0x268917(0x1be),_0x56445a=_0xccec2e===_0x268917(_0x5e8c79._0x62d4e)?_0x268917(0x1a0):'medium';else{if(_0xccec2e===_0x268917(_0x5e8c79._0x43f74b)||/timeout|waiting for/i[_0x268917(0x187)](_0x549964))_0x595884='add-waitfor',_0x56445a=_0xccec2e===_0x268917(0x15f)?_0x268917(_0x5e8c79._0x5e068e):'medium';else(_0xccec2e===_0x268917(0x17d)||/asserttext|assertvisible|expected.*got/i[_0x268917(_0x5e8c79._0x51c633)](_0x549964))&&(_0x595884=_0x268917(0x1b0),_0x56445a=_0xccec2e===_0x268917(_0x5e8c79._0x9abc80)?_0x268917(0x1a0):'medium');}return{'suggestedAction':_0x595884,'confidence':_0x56445a};}__name(classify,_0x4a502d(0x167));function buildPromptMarkdown(_0x1e50ee){const _0xe8962a={_0x2f1939:0x1b3,_0x552a24:0x1a2,_0x4617ed:0x1a2,_0x5d0789:0x194,_0x2e5f3f:0x1ca,_0x4b3350:0x182,_0x2aeb23:0x1c6,_0x33cdb9:0x191,_0x25d5c9:0x165,_0x11b2d6:0x16f,_0x59383d:0x19d,_0x2cec30:0x1c6,_0x938a58:0x198,_0x25de60:0x15c},_0x5c482b=_0x4a502d,{bundle:_0x13ad9a,scenarioSource:_0x961bef,scenarioRelative:_0x36280d,consoleTail:_0x525a37,suggestedAction:_0x39f660,confidence:_0x7bdac6}=_0x1e50ee,_0x18a7fc=_0x961bef[_0x5c482b(_0xe8962a._0x2f1939)]('\x0a')[_0x5c482b(_0xe8962a._0x552a24)]((_0x269c18,_0x593233)=>String(_0x593233+0x1)[_0x5c482b(0x174)](0x3,'\x20')+'\x20\x20'+_0x269c18)['join']('\x0a'),_0x58f716=_0x525a37[_0x5c482b(0x1c4)]===0x0?_0x5c482b(0x17a):_0x525a37[_0x5c482b(_0xe8962a._0x4617ed)](_0x2e73df=>'['+_0x2e73df['timestamp']+']\x20'+_0x2e73df[_0x5c482b(0x1cb)][_0x5c482b(0x162)]()+':\x20'+_0x2e73df[_0x5c482b(0x1ba)])[_0x5c482b(_0xe8962a._0x5d0789)]('\x0a'),_0x59c501=_0x13ad9a[_0x5c482b(_0xe8962a._0x2e5f3f)]?_0x5c482b(0x19a)+_0x13ad9a[_0x5c482b(_0xe8962a._0x2e5f3f)]['url']+'\x0aCaptured:\x20'+_0x13ad9a['snapshot']['capturedAt']+_0x5c482b(0x164):_0x5c482b(_0xe8962a._0x4b3350);return'#\x20Test\x20fix\x20request\x0a\x0a##\x20Failure\x20context\x0a\x0a-\x20**Test**:\x20`'+_0x13ad9a[_0x5c482b(_0xe8962a._0x2aeb23)][_0x5c482b(_0xe8962a._0x33cdb9)]+'`\x20in\x20`'+_0x36280d+'`\x0a-\x20**Step\x20index**:\x20'+(_0x13ad9a[_0x5c482b(0x1c6)]['stepIndex']??'?')+_0x5c482b(_0xe8962a._0x25d5c9)+_0x13ad9a[_0x5c482b(0x1c6)][_0x5c482b(0x181)]+_0x5c482b(0x1c0)+_0x13ad9a['trace'][_0x5c482b(0x1b6)]+_0x5c482b(_0xe8962a._0x11b2d6)+(_0x13ad9a[_0x5c482b(0x1c6)][_0x5c482b(0x19d)][_0x5c482b(0x1a3)]??_0x5c482b(0x177))+'`\x20—\x20'+_0x13ad9a[_0x5c482b(0x1c6)][_0x5c482b(_0xe8962a._0x59383d)][_0x5c482b(0x173)]+_0x5c482b(0x171)+_0x39f660+'`\x20(confidence:\x20'+_0x7bdac6+')\x0a\x0a'+(_0x13ad9a[_0x5c482b(_0xe8962a._0x2cec30)]['error'][_0x5c482b(_0xe8962a._0x938a58)]?_0x5c482b(0x161)+_0x13ad9a[_0x5c482b(0x1c6)][_0x5c482b(_0xe8962a._0x59383d)][_0x5c482b(0x198)]+'\x0a```\x0a':'')+_0x5c482b(_0xe8962a._0x25de60)+_0x18a7fc+_0x5c482b(0x199)+_0x58f716+_0x5c482b(0x169)+_0x59c501+_0x5c482b(0x1b5);}__name(buildPromptMarkdown,_0x4a502d(0x183));function runPrepareFix(_0x502dfd,_0x48e6d0={}){const _0x50c630={_0x568a84:0x178,_0x2ea623:0x1ad,_0x56b7e1:0x168,_0x5ab0c6:0x166,_0x1981b1:0x1c4,_0x19a5f1:0x1c4,_0x1da2b0:0x197,_0x48134e:0x188,_0x6ec90f:0x1c4,_0x29badb:0x1c1,_0x4b806b:0x1c7,_0x486d4a:0x1b7,_0x3342d2:0x18f,_0xb34cd:0x1bb,_0x2ff9aa:0x16c,_0x5caf30:0x1bf},_0x493bab=_0x4a502d,_0xb1fb0=_0x48e6d0[_0x493bab(_0x50c630._0x568a84)]??process[_0x493bab(0x1a9)],_0x1bb252=_0x48e6d0[_0x493bab(_0x50c630._0x2ea623)]??process[_0x493bab(_0x50c630._0x56b7e1)],_0x2909cc=_0x48e6d0[_0x493bab(0x1bd)]??process[_0x493bab(0x1bd)](),_0x413e06=_0x502dfd[_0x493bab(0x15d)](_0x493bab(0x1c5));let _0x1e18fc=_0x502dfd[_0x493bab(_0x50c630._0x5ab0c6)](_0x12f7e6=>!_0x12f7e6['startsWith']('-'));if(_0x413e06||_0x1e18fc[_0x493bab(_0x50c630._0x1981b1)]===0x0){const _0x3d3d3d=listFailures(defaultFailuresRoot(_0x2909cc));if(_0x3d3d3d[_0x493bab(_0x50c630._0x1981b1)]===0x0)return _0x1bb252['write'](_0x493bab(0x1ae)),0x1;if(_0x1e18fc[_0x493bab(_0x50c630._0x19a5f1)]===0x0){const _0x3f9fdc=new Map();for(const _0x4cbd24 of _0x3d3d3d){if(!_0x3f9fdc[_0x493bab(_0x50c630._0x1da2b0)](_0x4cbd24['testFn']))_0x3f9fdc['set'](_0x4cbd24[_0x493bab(0x191)],_0x4cbd24);}_0x1e18fc=[..._0x3f9fdc[_0x493bab(0x186)]()][_0x493bab(0x1a2)](_0x2682f9=>_0x2682f9['runId']+'/'+_0x2682f9[_0x493bab(0x191)]);}}if(_0x1e18fc['length']===0x0)return _0x1bb252[_0x493bab(0x1c7)](_0x493bab(_0x50c630._0x48134e)),0x1;_0xb1fb0['write'](_0x493bab(0x19c)+_0x1e18fc[_0x493bab(_0x50c630._0x6ec90f)]+'\x20test(s)\x20(D-25)\x0a\x0a');const _0x21eb0a=defaultFailuresRoot(_0x2909cc);for(const _0x136611 of _0x1e18fc){try{const _0x19d772=composeFixPrompt(_0x136611,{'cwd':_0x2909cc,'failuresRoot':_0x21eb0a}),_0xa3d196=_0x2dc774(_0x19d772[_0x493bab(_0x50c630._0x29badb)]['bundleDir'],'fix-prompt.md');_0x2d9868(_0xa3d196,_0x19d772[_0x493bab(0x189)]),_0xb1fb0[_0x493bab(0x1c7)](_0x493bab(0x1b1)+_0x136611+'\x0a'),_0xb1fb0[_0x493bab(_0x50c630._0x4b806b)](_0x493bab(_0x50c630._0x486d4a)+_0xa3d196+'\x0a'),_0xb1fb0['write'](_0x493bab(0x15e)+_0x19d772[_0x493bab(_0x50c630._0x3342d2)]+_0x493bab(_0x50c630._0xb34cd)+_0x19d772[_0x493bab(_0x50c630._0x2ff9aa)]+_0x493bab(0x196)+_0x19d772[_0x493bab(0x179)]+'t\x0a');}catch(_0x4ef786){_0x1bb252[_0x493bab(0x1c7)]('\x20\x20✗\x20'+_0x136611+':\x20'+(_0x4ef786 instanceof Error?_0x4ef786[_0x493bab(0x173)]:String(_0x4ef786))+'\x0a');}}return _0xb1fb0[_0x493bab(0x1c7)](_0x493bab(_0x50c630._0x5caf30)),0x0;}__name(runPrepareFix,_0x4a502d(0x17b));function _0x2014(_0x4a3e95,_0x3f1035){_0x4a3e95=_0x4a3e95-0x15c;const _0xc4449c=_0xc444();let _0x201430=_0xc4449c[_0x4a3e95];if(_0x2014['BXfFlO']===undefined){var _0x53ae24=function(_0x1a9986){const _0x56a877='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d9868='',_0x2dc774='';for(let _0x14398e=0x0,_0x3ca66d,_0x2e45fc,_0x2f73d6=0x0;_0x2e45fc=_0x1a9986['charAt'](_0x2f73d6++);~_0x2e45fc&&(_0x3ca66d=_0x14398e%0x4?_0x3ca66d*0x40+_0x2e45fc:_0x2e45fc,_0x14398e++%0x4)?_0x2d9868+=String['fromCharCode'](0xff&_0x3ca66d>>(-0x2*_0x14398e&0x6)):0x0){_0x2e45fc=_0x56a877['indexOf'](_0x2e45fc);}for(let _0x4e6e8d=0x0,_0x1a3ef9=_0x2d9868['length'];_0x4e6e8d<_0x1a3ef9;_0x4e6e8d++){_0x2dc774+='%'+('00'+_0x2d9868['charCodeAt'](_0x4e6e8d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2dc774);};_0x2014['OHKFmE']=_0x53ae24,_0x2014['RjuzUl']={},_0x2014['BXfFlO']=!![];}const _0x3d9caf=_0xc4449c[0x0],_0x22241f=_0x4a3e95+_0x3d9caf,_0x3c0a33=_0x2014['RjuzUl'][_0x22241f];return!_0x3c0a33?(_0x201430=_0x2014['OHKFmE'](_0x201430),_0x2014['RjuzUl'][_0x22241f]=_0x201430):_0x201430=_0x3c0a33,_0x201430;}var invokedDirectly=process[_0x4a502d(0x176)][0x1]&&fileURLToPath(import.meta.url)===process[_0x4a502d(0x176)][0x1];if(invokedDirectly){const code=runPrepareFix(process['argv'][_0x4a502d(0x1b2)](0x2));process[_0x4a502d(0x18d)](code);}export{runPrepareFix};
1
+ function _0x1408(){const _0x1ca50a=['y29UC29SzuXPBwL0','C2nYzwvUC2HVDfbHDgG','BgLZDezHAwX1CMvZ','cGOJiYbty2vUyxjPBYbZB3vYy2uGkgXPBMuTBNvTyMvYzwqPcGPGygbQCWO','y2fWDhvYzwrbDa','C2nYzwvUC2HVDc1LCNjVCI50Ehq','mJaXmJKYAwHezhjo','y29S','BMv0D29YAW','yNvUzgXLrgLY','CgfKu3rHCNq','C2v0','ChjLCgfYzs1MAxG6ignVBxbVC2LUzYbMAxGGChjVBxb0CYbMB3iG','Dg9mB3DLCKnHC2u','mJyXndmWz3DcAK9c','DMLKzw9qyxrO','cI0GkIPtDwDNzxn0zwqGywn0Aw9UkIO6iga','kqOk','icb+','C3rHy2S','y29TCg9ZzuzPEfbYB21WDa','yxbWCM94vg9Rzw5Z','cLjLz2LVBNm6ihnLzsbZBMfWC2HVDc5QC29UigLUihrOzsbIDw5KBguGzgLYicHYzwfKihzPysbGz2v0x2zHAwX1CMvFyteXEwaPlG','ywrKlxDHAxrMB3i','iYmJifn0ywnRcMbGyaO','AM9PBG','ChjLCgfYzs1MAxG6ig5VihrLC3rjzcbWCM92AwrLzcbHBMqGBM8GzMfPBgLUzYb0zxn0CYbMB3vUzc4k','D3jPDgu','iYbuzxn0igzPEcbYzxf1zxn0cGOJiYbgywLSDxjLignVBNrLEhqkcI0GkIPuzxn0kIO6iga','icaGicaG','CgfYC2u','zxjY','C3vNz2vZDgvKqwn0Aw9U','mZi5nZC3n3LcCKHysa','C3bSAxq','BwfW','AgfZ','yaOTicOQu3rLCcbPBMrLEcOQoIa','zxjYB3i','y29UC29Szs5QC29U','lNvUB3rLC3q','AgfYlMPZB24','zML4lxbYB21WDc5Tza','mJeZmdr1Cw5zBgS','cK5LEhq6ihbHC3rLigvHy2GGzML4lxbYB21WDc5TzcbPBNrVihLVDxiGteXnignSAwvUDcaOq2XHDwrLienVzguGlWPdDxjZB3iGlYbLDgmUks4GvgHLieXmtsbYzxr1CM5ZigeGDw5PzMLLzcbKAwzMoYbYzxzPzxCGAxqGyw5KigfWCgX5cM1HBNvHBgX5lIbxzsbUzxzLCIbHDxrVlwfWCgX5icHelti1ks4k','DMfSDwvZ','vgLTzw91DevYCM9Y','CMvHzezHAwX1CMvcDw5KBgu','xYHUBYbJB25ZB2XLigvUDhjPzxmGy2fWDhvYzwqPxW','C25HChnOB3q','C2nYzwvUC2HVDc5WBMC','BgvUz3rO','AgfYugf0Aa','zMfPBhvYzs5QC29U','C25HChnOB3qUANnVBG','y29UC29Szq','AgLNAa','DhjHy2u','C2XPy2u','AxneAxjLy3rVCNK','DgLTzxn0yw1W','ntKYmdK4yuvgCfLl','DgvZDezU','BwvKAxvT','cKnHChr1CMvKoIa','y29UzMLKzw5Jzq','iIaOBg9VA2vKigLUia','DxrMoa','y3DK','vvjmoIa','yxjNDG','DxjS','icaGicaGC3vNz2vZDgvKqwn0Aw9Upq','ycdIGjqG','DgvZDa','ihrLC3qOCYKGkeqTmJuPcGO','BMfTzq','zxHPDa','cMbGyaOkiYmGtgfZDcbJB25ZB2XLigvUDhjPzxmkcMbGyaO','tg9JyxrVCKvYCM9Y','qxnZzxj0Aw9UrxjYB3i','zMfPBhvYzsbIDw5KBguGBM90igzVDw5KigzVCIb0zxn0swq9iG','BwvZC2fNzq','CNvUuhjLCgfYzuzPEa','C2nYzwvUC2HVDevYCM9Y','icdINjCG','phnJzw5HCMLVigzPBguGBM8GBg9Uz2vYig9UigrPC2S+','mteYntq4nxjLtfrbqq','mtiYmtC5mLnmD0XABW','ChvZAa','zMLSDgvY','xYHUBYbZzw1HBNrPyY1KB20GC25HChnOB3qGy2fWDhvYzwqGzM9YihrOAxmGzMfPBhvYzsLF','BMv0D29YAY5QC29U','C291CMnLCW','DMLKzw8UD2vIBq','y2vPBa','icbJB25MAwrLBMnLpq','y2HHBMDLlwfZC2vYDgLVBG','cGOJiYbxAgf0ihDLig5LzwqkcLbYB2r1y2uGysaQkNvUAwzPzwqGzgLMzIOQihrOyxqGzML4zxmGDgHLihrLC3qUienVBNn0CMfPBNrZoGOkms4Gs2vLCcb0AguGC2fTzsb0zxn0xYOOksbMDw5JDgLVBIbUyw1LigfUzcb0AguGC2fTzsbVDMvYywXSigzSB3CG4OcuignOyw5Nzsb0AgukicaGBwLUAw11BsbYzxf1AxjLzcb0BYbTywTLihrOzsbMywLSAw5Nihn0zxaGC3vJy2vLzc4kmI4GuhjLzMvYihrOzsbeltiYihnLBgvJDg9YigHPzxjHCMnOEtOGygDLDej5vgvZDeLKycdIHPiGygDLDej5uM9SzsH7BMfTzx0PyaOGicdIHPiGygDLDej5tgfIzwXGiokgKIbGz2v0qNLuzxH0ycdIHPiGygXVy2f0B3iOy3nZkwaGkgXHC3qGCMvZB3j0ks4kmY4GswyGywrKAw5NigeGD2fPDcWGChjLzMvYigb3ywL0rM9YkgXVyYLGic8GyhDHAxrgB3jvCMWOCgf0DgvYBILGig92zxiGyhbHDxnLkg1ZkwaUcJqUie5VigLTCg9YDhmG4OcuierttcbMDw5JDgLVBNmGCMvZB2X2zsb0AhjVDwDOihrOzsbYDw50Aw1LihjLz2LZDhj5igj5ig5HBwuUcJuUie5VigbHC3LUy2aVygf3ywL0ycdIGjqGDgHLigv4zwn1Dg9YigHHBMrSzxmGyxn5BMmGAw50zxjUywXSEs4knI4Gt3v0Chv0ie9otfKGDgHLihvUAwzPzwqGzgLMzIbIzxr3zwvUigzLBMnLCYbGygbKAwzMiokaPIbGygaUifrOzsb1C2vYcIaGihjLDMLLD3mGkYbHChbSAwvZigL0ig1HBNvHBgX5icHelti1iokaLcb3zsbUzxzLCIbHDxrVlwfWCgX5ks4k','Dw5RBM93BG','cI0GkIPfCNjVCIOQoIbG','cMbGyaO','C2nLBMfYAw9qyxrO','lcbJB2WG'];_0x1408=function(){return _0x1ca50a;};return _0x1408();}const _0x1ab4e8=_0x5cde;(function(_0x2fec66,_0x2e106c){const _0x5661a7={_0x5dc585:0x131,_0x5028d3:0xe6,_0x256c33:0xf8,_0x357c3c:0x129,_0x42c2d3:0x113},_0x21e185=_0x5cde,_0x2eb958=_0x2fec66();while(!![]){try{const _0x148573=parseInt(_0x21e185(_0x5661a7._0x5dc585))/0x1+parseInt(_0x21e185(_0x5661a7._0x5028d3))/0x2+-parseInt(_0x21e185(_0x5661a7._0x256c33))/0x3+parseInt(_0x21e185(_0x5661a7._0x357c3c))/0x4+-parseInt(_0x21e185(0x112))/0x5+-parseInt(_0x21e185(_0x5661a7._0x42c2d3))/0x6+parseInt(_0x21e185(0xdc))/0x7;if(_0x148573===_0x2e106c)break;else _0x2eb958['push'](_0x2eb958['shift']());}catch(_0x25613c){_0x2eb958['push'](_0x2eb958['shift']());}}}(_0x1408,0x28dfd));var __defProp=Object['defineProperty'],__name=(_0x494a3e,_0x4f817e)=>__defProp(_0x494a3e,_0x1ab4e8(0x107),{'value':_0x4f817e,'configurable':!![]});import{writeFileSync as _0x35da0f}from'fs';import{join as _0x56247d}from'path';import{fileURLToPath}from'url';import{readFileSync as _0x386532,existsSync as _0x1eaf7e}from'fs';import{relative}from'path';import{existsSync,mkdirSync,readFileSync,readdirSync,statSync,writeFileSync}from'fs';import{join,dirname}from'path';function readFailureBundle(_0x5cb7c7){const _0x4c622a={_0x3e2de8:0x141,_0x3640e4:0xfe,_0x14499f:0x141,_0x41ae06:0x117,_0x498015:0xed,_0x3d0bf8:0x124,_0x46b3c3:0xe4,_0x4a88df:0xef,_0x262b16:0x132},_0x1577df=_0x1ab4e8;if(!existsSync(_0x5cb7c7))return null;const _0x1efa51=join(_0x5cb7c7,_0x1577df(0xf0));if(!existsSync(_0x1efa51))return null;const _0x1acdea=JSON[_0x1577df(_0x4c622a._0x3e2de8)](readFileSync(_0x1efa51,_0x1577df(_0x4c622a._0x3640e4))),_0x5cd3a3=join(_0x5cb7c7,_0x1577df(0xe2)),_0x2b05e6=existsSync(_0x5cd3a3)?JSON[_0x1577df(_0x4c622a._0x3e2de8)](readFileSync(_0x5cd3a3,_0x1577df(_0x4c622a._0x3640e4))):[],_0x28fbd7=join(_0x5cb7c7,_0x1577df(0xf1)),_0x306d90=existsSync(_0x28fbd7)?JSON[_0x1577df(_0x4c622a._0x14499f)](readFileSync(_0x28fbd7,'utf8')):void 0x0,_0x21b194={'trace':_0x1acdea,'console':_0x2b05e6},_0x224491=join(_0x5cb7c7,_0x1577df(_0x4c622a._0x41ae06));existsSync(_0x224491)&&(_0x21b194[_0x1577df(0x12b)]=JSON[_0x1577df(0x141)](readFileSync(_0x224491,_0x1577df(0xfe))));if(_0x306d90!==void 0x0)_0x21b194[_0x1577df(0xec)]=_0x306d90;const _0x3b4174=join(_0x5cb7c7,_0x1577df(_0x4c622a._0x498015));if(existsSync(_0x3b4174))_0x21b194[_0x1577df(_0x4c622a._0x3d0bf8)]=_0x3b4174;else{const _0x1ae303=join(_0x5cb7c7,_0x1577df(0x128));existsSync(_0x1ae303)&&(_0x21b194[_0x1577df(0x10f)]=readFileSync(_0x1ae303,_0x1577df(_0x4c622a._0x3640e4)));}const _0x48d46f=join(_0x5cb7c7,_0x1577df(_0x4c622a._0x46b3c3));if(existsSync(_0x48d46f))_0x21b194[_0x1577df(_0x4c622a._0x4a88df)]=_0x48d46f;const _0x1fcfc2=join(_0x5cb7c7,_0x1577df(0x119));if(existsSync(_0x1fcfc2))_0x21b194[_0x1577df(_0x4c622a._0x262b16)]=_0x1fcfc2;return _0x21b194;}__name(readFailureBundle,_0x1ab4e8(0xea));function listFailures(_0x4fa6d6){const _0x3bd132={_0x11ba16:0xf6,_0x54a178:0xf6,_0x276cd7:0xf0,_0x9b5cb5:0x114,_0x4db675:0xf9,_0x4e63cf:0x121,_0x4f6cab:0xf7},_0x28fbc8=_0x1ab4e8;if(!existsSync(_0x4fa6d6))return[];const _0x3ecdfa=[];for(const _0x2412d7 of readdirSync(_0x4fa6d6)){const _0x27b2f9=join(_0x4fa6d6,_0x2412d7);if(!statSync(_0x27b2f9)[_0x28fbc8(_0x3bd132._0x11ba16)]())continue;for(const _0x251ef8 of readdirSync(_0x27b2f9)){const _0x2d4a4e=join(_0x27b2f9,_0x251ef8);if(!statSync(_0x2d4a4e)[_0x28fbc8(_0x3bd132._0x54a178)]())continue;const _0x1a2e00=join(_0x2d4a4e,_0x28fbc8(_0x3bd132._0x276cd7));if(!existsSync(_0x1a2e00))continue;try{const _0x4e0817=JSON['parse'](readFileSync(_0x1a2e00,_0x28fbc8(0xfe)));_0x3ecdfa[_0x28fbc8(_0x3bd132._0x9b5cb5)]({'runId':_0x2412d7,'testFn':_0x4e0817[_0x28fbc8(_0x3bd132._0x4db675)],'scenarioPath':_0x4e0817[_0x28fbc8(_0x3bd132._0x4e63cf)],'dir':_0x2d4a4e,'timestamp':_0x4e0817[_0x28fbc8(_0x3bd132._0x4f6cab)]});}catch{}}}return _0x3ecdfa['sort']((_0x30f53e,_0x53f917)=>_0x53f917['timestamp']['localeCompare'](_0x30f53e[_0x28fbc8(0xf7)])),_0x3ecdfa;}__name(listFailures,_0x1ab4e8(0x125));function defaultFailuresRoot(_0x310f75=process[_0x1ab4e8(0xff)]()){const _0x5e8ce0=_0x1ab4e8;return join(_0x310f75,_0x5e8ce0(0xe3),'failures');}__name(defaultFailuresRoot,'defaultFailuresRoot');function resolveBundleDir(_0x28ea25,_0x2e8674){const _0x205ed9=_0x1ab4e8;if(existsSync(_0x28ea25)&&statSync(_0x28ea25)[_0x205ed9(0xf6)]())return _0x28ea25;return join(_0x2e8674,_0x28ea25);}__name(resolveBundleDir,'resolveBundleDir');function composeFixPrompt(_0xc544b6,_0x4f95cb={}){const _0x24a528={_0x11df27:0xff,_0x3d46d8:0x121,_0x2bff74:0x123,_0x57b684:0xf5,_0x419d37:0xec},_0x1bc4b3=_0x1ab4e8,_0x26ccd6=_0x4f95cb['failuresRoot']??defaultFailuresRoot(),_0x16ba7b=resolveBundleDir(_0xc544b6,_0x26ccd6),_0x1a0c7f=readFailureBundle(_0x16ba7b);if(!_0x1a0c7f)throw new Error(_0x1bc4b3(0x10c)+_0xc544b6+_0x1bc4b3(0xfd)+_0x16ba7b+')');const _0x3d687f=_0x4f95cb[_0x1bc4b3(_0x24a528._0x11df27)]??process[_0x1bc4b3(_0x24a528._0x11df27)](),_0x293037=_0x1eaf7e(_0x1a0c7f[_0x1bc4b3(0xf4)][_0x1bc4b3(_0x24a528._0x3d46d8)])?_0x386532(_0x1a0c7f[_0x1bc4b3(0xf4)][_0x1bc4b3(0x121)],_0x1bc4b3(0xfe)):_0x1bc4b3(0x111),_0x287388=_0x4f95cb[_0x1bc4b3(_0x24a528._0x2bff74)]??0x19,_0x177b48=_0x1a0c7f['console'][_0x1bc4b3(_0x24a528._0x57b684)](-_0x287388),{suggestedAction:_0x3009c4,confidence:_0x747ad3}=classify(_0x1a0c7f),_0x4ddea5=buildPromptMarkdown({'bundle':_0x1a0c7f,'scenarioSource':_0x293037,'scenarioRelative':relative(_0x3d687f,_0x1a0c7f['trace'][_0x1bc4b3(_0x24a528._0x3d46d8)]),'consoleTail':_0x177b48,'suggestedAction':_0x3009c4,'confidence':_0x747ad3}),_0x4ac9fd=Math[_0x1bc4b3(0x11a)](_0x4ddea5[_0x1bc4b3(0xee)]/0x4);return{'promptMarkdown':_0x4ddea5,'suggestedAction':_0x3009c4,'confidence':_0x747ad3,'sources':{'bundleDir':_0x16ba7b,'scenarioPath':_0x1a0c7f['trace'][_0x1bc4b3(0x121)],'consoleEntries':_0x1a0c7f[_0x1bc4b3(0xf2)]['length'],'hasSnapshot':!!_0x1a0c7f[_0x1bc4b3(_0x24a528._0x419d37)]},'approxTokens':_0x4ac9fd};}__name(composeFixPrompt,_0x1ab4e8(0x137));function _0x5cde(_0x4d7dc5,_0x275cac){_0x4d7dc5=_0x4d7dc5-0xda;const _0x1408af=_0x1408();let _0x5cde4a=_0x1408af[_0x4d7dc5];if(_0x5cde['isLYPr']===undefined){var _0x103f34=function(_0x248fbe){const _0x2f797d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x35da0f='',_0x56247d='';for(let _0x386532=0x0,_0x1eaf7e,_0x494a3e,_0x4f817e=0x0;_0x494a3e=_0x248fbe['charAt'](_0x4f817e++);~_0x494a3e&&(_0x1eaf7e=_0x386532%0x4?_0x1eaf7e*0x40+_0x494a3e:_0x494a3e,_0x386532++%0x4)?_0x35da0f+=String['fromCharCode'](0xff&_0x1eaf7e>>(-0x2*_0x386532&0x6)):0x0){_0x494a3e=_0x2f797d['indexOf'](_0x494a3e);}for(let _0x5cb7c7=0x0,_0x1efa51=_0x35da0f['length'];_0x5cb7c7<_0x1efa51;_0x5cb7c7++){_0x56247d+='%'+('00'+_0x35da0f['charCodeAt'](_0x5cb7c7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x56247d);};_0x5cde['TptsOO']=_0x103f34,_0x5cde['lFDFig']={},_0x5cde['isLYPr']=!![];}const _0x227554=_0x1408af[0x0],_0x321acb=_0x4d7dc5+_0x227554,_0x24c121=_0x5cde['lFDFig'][_0x321acb];return!_0x24c121?(_0x5cde4a=_0x5cde['TptsOO'](_0x5cde4a),_0x5cde['lFDFig'][_0x321acb]=_0x5cde4a):_0x5cde4a=_0x24c121,_0x5cde4a;}function classify(_0x531523){const _0x222a75={_0x5b9ad1:0x10d,_0x27a405:0xf4,_0x13aab6:0x107,_0x3dec4f:0x10a,_0x4444b9:0x105,_0x5abe61:0x13a,_0x508d50:0x11c,_0x526ce2:0x10b,_0x22c939:0xfa},_0x2c8bfe=_0x1ab4e8,_0x8a0074=_0x531523[_0x2c8bfe(0xf4)][_0x2c8bfe(0xe1)][_0x2c8bfe(_0x222a75._0x5b9ad1)][_0x2c8bfe(0x130)](),_0x4241e8=_0x531523[_0x2c8bfe(_0x222a75._0x27a405)]['error'][_0x2c8bfe(_0x222a75._0x13aab6)]??'';let _0x208908=_0x2c8bfe(0x11e),_0x53e5eb='low';if(_0x4241e8===_0x2c8bfe(_0x222a75._0x3dec4f)||/not found|no element|strict mode|resolved to \d+ elements|nothing matched/i[_0x2c8bfe(0x105)](_0x8a0074))_0x208908='rewrite-selector',_0x53e5eb=_0x4241e8===_0x2c8bfe(0x10a)?_0x2c8bfe(0xf3):'medium';else{if(_0x4241e8===_0x2c8bfe(0xe9)||/timeout|waiting for/i[_0x2c8bfe(_0x222a75._0x4444b9)](_0x8a0074))_0x208908=_0x2c8bfe(_0x222a75._0x5abe61),_0x53e5eb=_0x4241e8===_0x2c8bfe(0xe9)?_0x2c8bfe(0xf3):'medium';else(_0x4241e8===_0x2c8bfe(0x10b)||/asserttext|assertvisible|expected.*got/i[_0x2c8bfe(0x105)](_0x8a0074))&&(_0x208908=_0x2c8bfe(_0x222a75._0x508d50),_0x53e5eb=_0x4241e8===_0x2c8bfe(_0x222a75._0x526ce2)?_0x2c8bfe(0xf3):_0x2c8bfe(_0x222a75._0x22c939));}return{'suggestedAction':_0x208908,'confidence':_0x53e5eb};}__name(classify,'classify');function buildPromptMarkdown(_0x5df34b){const _0x2e92ca={_0x23e001:0xde,_0x2a803d:0xeb,_0x394f1d:0x13c,_0x5699b0:0x102,_0x2f7be8:0x127,_0xd900ea:0x13f,_0x19b580:0xf4,_0x4cf0af:0xf9,_0x467738:0x12a,_0x201846:0x11f,_0x307ca6:0xe1,_0x4a295c:0x134,_0x45e6b2:0x136,_0x4dde65:0x13b,_0x5af060:0x126,_0x223303:0x109,_0x26c46a:0x11d},_0x35f14c=_0x1ab4e8,{bundle:_0x5c7786,scenarioSource:_0x29f562,scenarioRelative:_0x10c4ef,consoleTail:_0x32629a,suggestedAction:_0x2f49b6,confidence:_0x2cf3a6}=_0x5df34b,_0x4b936b=_0x29f562[_0x35f14c(0xdd)]('\x0a')[_0x35f14c(_0x2e92ca._0x23e001)]((_0x1586e6,_0x27c536)=>String(_0x27c536+0x1)[_0x35f14c(0x12d)](0x3,'\x20')+'\x20\x20'+_0x1586e6)['join']('\x0a'),_0x130612=_0x32629a['length']===0x0?_0x35f14c(_0x2e92ca._0x2a803d):_0x32629a[_0x35f14c(_0x2e92ca._0x23e001)](_0x7ee5ed=>'['+_0x7ee5ed[_0x35f14c(0xf7)]+']\x20'+_0x7ee5ed['level']['toUpperCase']()+':\x20'+_0x7ee5ed['text'])[_0x35f14c(_0x2e92ca._0x394f1d)]('\x0a'),_0x4a88fb=_0x5c7786['snapshot']?_0x35f14c(0x100)+_0x5c7786[_0x35f14c(0xec)][_0x35f14c(_0x2e92ca._0x5699b0)]+_0x35f14c(0xfb)+_0x5c7786['snapshot'][_0x35f14c(_0x2e92ca._0x2f7be8)]+_0x35f14c(0x139):_0x35f14c(0x116);return _0x35f14c(_0x2e92ca._0xd900ea)+_0x5c7786[_0x35f14c(_0x2e92ca._0x19b580)][_0x35f14c(_0x2e92ca._0x4cf0af)]+'`\x20in\x20`'+_0x10c4ef+_0x35f14c(0xe0)+(_0x5c7786[_0x35f14c(0xf4)]['stepIndex']??'?')+'\x0a-\x20**Location**:\x20line\x20'+_0x5c7786[_0x35f14c(0xf4)]['line']+_0x35f14c(0x122)+_0x5c7786[_0x35f14c(_0x2e92ca._0x19b580)][_0x35f14c(_0x2e92ca._0x467738)]+_0x35f14c(_0x2e92ca._0x201846)+(_0x5c7786[_0x35f14c(0xf4)][_0x35f14c(_0x2e92ca._0x307ca6)]['name']??'Error')+_0x35f14c(0x104)+_0x5c7786[_0x35f14c(_0x2e92ca._0x19b580)][_0x35f14c(_0x2e92ca._0x307ca6)]['message']+_0x35f14c(0x133)+_0x2f49b6+'`\x20(confidence:\x20'+_0x2cf3a6+_0x35f14c(_0x2e92ca._0x4a295c)+(_0x5c7786[_0x35f14c(_0x2e92ca._0x19b580)][_0x35f14c(_0x2e92ca._0x307ca6)][_0x35f14c(_0x2e92ca._0x45e6b2)]?_0x35f14c(_0x2e92ca._0x4dde65)+_0x5c7786['trace'][_0x35f14c(0xe1)][_0x35f14c(0x136)]+_0x35f14c(0x120):'')+_0x35f14c(_0x2e92ca._0x5af060)+_0x4b936b+_0x35f14c(_0x2e92ca._0x223303)+_0x130612+'\x0a```\x0a\x0a##\x20Semantic-DOM\x20snapshot\x0a\x0a'+_0x4a88fb+_0x35f14c(_0x2e92ca._0x26c46a);}__name(buildPromptMarkdown,'buildPromptMarkdown');function runPrepareFix(_0x1371fc,_0x4ef09d={}){const _0x118bcd={_0x1ed527:0xda,_0xdda683:0xee,_0x294227:0x13e,_0xe4d280:0x106,_0x97b450:0x118,_0x35e1ec:0x12c,_0x27e0bd:0x13e,_0xc4d2fc:0x140,_0x18f77a:0x13e,_0x317e80:0xfc,_0x21a66a:0x13e},_0x5765de=_0x1ab4e8,_0x4f80c6=_0x4ef09d['out']??process['stdout'],_0x44ef02=_0x4ef09d[_0x5765de(_0x118bcd._0x1ed527)]??process['stderr'],_0x3acba6=_0x4ef09d[_0x5765de(0xff)]??process[_0x5765de(0xff)](),_0x434ccd=_0x1371fc['includes']('--failing');let _0x2684b7=_0x1371fc[_0x5765de(0x115)](_0x32252f=>!_0x32252f['startsWith']('-'));if(_0x434ccd||_0x2684b7['length']===0x0){const _0x45d0e6=listFailures(defaultFailuresRoot(_0x3acba6));if(_0x45d0e6[_0x5765de(_0x118bcd._0xdda683)]===0x0)return _0x44ef02[_0x5765de(_0x118bcd._0x294227)]('prepare-fix:\x20no\x20failure\x20bundles\x20found\x20under\x20.unotest/failures/.\x20Run\x20a\x20failing\x20test\x20first;\x20the\x20bundle\x20is\x20written\x20automatically.\x0a'),0x1;if(_0x2684b7[_0x5765de(0xee)]===0x0){const _0x35a551=new Map();for(const _0x17ed5f of _0x45d0e6){if(!_0x35a551[_0x5765de(0xdf)](_0x17ed5f[_0x5765de(0xf9)]))_0x35a551[_0x5765de(0x12e)](_0x17ed5f[_0x5765de(0xf9)],_0x17ed5f);}_0x2684b7=[..._0x35a551[_0x5765de(0xe8)]()][_0x5765de(0xde)](_0x47e989=>_0x47e989['runId']+'/'+_0x47e989[_0x5765de(0xf9)]);}}if(_0x2684b7['length']===0x0)return _0x44ef02[_0x5765de(_0x118bcd._0x294227)](_0x5765de(0x13d)),0x1;_0x4f80c6[_0x5765de(0x13e)](_0x5765de(0x12f)+_0x2684b7[_0x5765de(0xee)]+_0x5765de(_0x118bcd._0xe4d280));const _0x45eafe=defaultFailuresRoot(_0x3acba6);for(const _0x57aa54 of _0x2684b7){try{const _0xdfbc93=composeFixPrompt(_0x57aa54,{'cwd':_0x3acba6,'failuresRoot':_0x45eafe}),_0x344013=_0x56247d(_0xdfbc93[_0x5765de(_0x118bcd._0x97b450)][_0x5765de(_0x118bcd._0x35e1ec)],_0x5765de(0xe5));_0x35da0f(_0x344013,_0xdfbc93['promptMarkdown']),_0x4f80c6[_0x5765de(0x13e)]('\x20\x20✓\x20'+_0x57aa54+'\x0a'),_0x4f80c6[_0x5765de(_0x118bcd._0x27e0bd)](_0x5765de(_0x118bcd._0xc4d2fc)+_0x344013+'\x0a'),_0x4f80c6[_0x5765de(_0x118bcd._0x18f77a)](_0x5765de(0x103)+_0xdfbc93[_0x5765de(0xdb)]+_0x5765de(0x11b)+_0xdfbc93[_0x5765de(_0x118bcd._0x317e80)]+_0x5765de(0x135)+_0xdfbc93[_0x5765de(0x138)]+'t\x0a');}catch(_0x5aa1a6){_0x44ef02['write'](_0x5765de(0x110)+_0x57aa54+':\x20'+(_0x5aa1a6 instanceof Error?_0x5aa1a6['message']:String(_0x5aa1a6))+'\x0a');}}return _0x4f80c6[_0x5765de(_0x118bcd._0x21a66a)](_0x5765de(0xe7)),0x0;}__name(runPrepareFix,_0x1ab4e8(0x10e));var invokedDirectly=process[_0x1ab4e8(0x101)][0x1]&&fileURLToPath(import.meta.url)===process[_0x1ab4e8(0x101)][0x1];if(invokedDirectly){const code=runPrepareFix(process[_0x1ab4e8(0x101)][_0x1ab4e8(0xf5)](0x2));process[_0x1ab4e8(0x108)](code);}export{runPrepareFix};