diff --git a/.github/workflows/obfuscator.yml b/.github/workflows/obfuscator.yml deleted file mode 100644 index 11e095d39..000000000 --- a/.github/workflows/obfuscator.yml +++ /dev/null @@ -1,72 +0,0 @@ -name: Obfuscate and Commit - -on: - push: - paths: - - '_worker.src.js' - workflow_dispatch: - -jobs: - obfuscate: - runs-on: ubuntu-latest - permissions: - contents: write - - steps: - - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - - name: Use Node.js - uses: actions/setup-node@v3 - with: - node-version: "16" - - - name: Install dependencies - run: npm install -g javascript-obfuscator - - - name: Prepare files for obfuscation - run: | - if grep -q "Obfuscate-cmliu" _worker.src.js; then - echo "检测到 Obfuscate 准备分段处理" - line_number=$(awk '/Obfuscate-cmliu/ {print NR; exit}' _worker.src.js) - echo "Obfuscate 分段处理行号为: $line_number" - head -n $line_number _worker.src.js > src.js - tail -n +$((line_number + 1)) _worker.src.js > obf.js - else - echo "未检测到 Obfuscate 执行全文件混淆" - cp _worker.src.js obf.js - fi - - - name: Obfuscate code - run: | - javascript-obfuscator obf.js --output _worker.js \ - --compact true \ - --control-flow-flattening true \ - --control-flow-flattening-threshold 1 \ - --dead-code-injection true \ - --dead-code-injection-threshold 1 \ - --string-array true \ - --string-array-encoding 'rc4' \ - --string-array-threshold 1 \ - --transform-object-keys true \ - --unicode-escape-sequence true - - - name: Concatenate src.js if exists - run: | - if [ -f src.js ]; then - cat src.js _worker.js > temp && mv temp _worker.js - fi - - - name: Commit changes - run: | - git config --local user.email "github-actions[bot]@users.noreply.github.com" - git config --local user.name "github-actions[bot]" - git add _worker.js - git commit -m "Obfuscate _worker.js" || echo "No changes to commit" - - - name: Push changes - uses: ad-m/github-push-action@master - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - branch: ${{ github.ref }} \ No newline at end of file diff --git a/README.md b/README.md index 2923e4565..daba05779 100644 --- a/README.md +++ b/README.md @@ -156,8 +156,6 @@ Telegram交流群:[@CMLiussss](https://t.me/CMLiussss),**感谢[Alice Networ | RPROXYIP | `false` |❌| 设为 true 即可强制获取订阅器分配的ProxyIP(需订阅器支持)| [Video](https://www.youtube.com/watch?v=s91zjpw3-P8&t=1816s) | | URL302 | `https://t.me/CMLiussss` |❌| 主页302跳转(支持多url, url之间使用`,`或`换行`作间隔, 小白别用) | | | URL | `https://blog.cmliussss.com` |❌| 主页反代伪装(支持多url, url之间使用`,`或`换行`作间隔, 乱设容易触发反诈) | | -| CFEMAIL | `admin@gmail.com` |❌| CF账户邮箱(与`CFKEY`都填上后, 订阅信息将显示请求使用量, 小白别用) | | -| CFKEY | `c6a944b5c956b6c18c2352880952bced8b85e` |❌| CF账户Global API Key(与`CFEMAIL`都填上后, 订阅信息将显示请求使用量, 小白别用) | | | CFPORTS | `2053`,`2096`,`8443` |❌| CF账户标准端口列表 | | **注意: 填入`KEY`后将不再启用`UUID`!请二选一使用!!!** @@ -170,8 +168,6 @@ Telegram交流群:[@CMLiussss](https://t.me/CMLiussss),**感谢[Alice Networ **注意: 填入`SUB`后将不再启用`ADD*`类变量生成的订阅内容!请二选一使用!!!** -**注意: 同时填入`CFEMAIL`和`CFKEY`才会启用显示请求使用量,但是不推荐使用!没必要给一个Worker项目这么高的权限!后果自负!!!** - ## 实用小技巧 **该项目部署的订阅可通过添加`sub`键值快速更换优选订阅生成器!** diff --git a/_worker.src.js b/_worker.src.js deleted file mode 100644 index ddfe33d74..000000000 --- a/_worker.src.js +++ /dev/null @@ -1 +0,0 @@ -const _0x452530=_0x42e2;(function(_0x4499a3,_0x36eefd){const _0x58a97b=_0x42e2,_0x29c7fd=_0x4499a3();while(!![]){try{const _0xc7c3bd=parseInt(_0x58a97b(0xba))/0x1+-parseInt(_0x58a97b(0xd4))/0x2*(-parseInt(_0x58a97b(0xbf))/0x3)+parseInt(_0x58a97b(0x1b3))/0x4+parseInt(_0x58a97b(0xb2))/0x5*(parseInt(_0x58a97b(0x117))/0x6)+parseInt(_0x58a97b(0xb7))/0x7*(parseInt(_0x58a97b(0x113))/0x8)+-parseInt(_0x58a97b(0x8a))/0x9+-parseInt(_0x58a97b(0x13f))/0xa*(parseInt(_0x58a97b(0x109))/0xb);if(_0xc7c3bd===_0x36eefd)break;else _0x29c7fd['push'](_0x29c7fd['shift']());}catch(_0x3747a0){_0x29c7fd['push'](_0x29c7fd['shift']());}}}(_0x2647,0xb117b));import{connect}from'cloudflare:sockets';let userID,proxyIP='',sub='',subconverter=_0x452530(0x106),subconfig=_0x452530(0x17c),subProtocol='https',socks5Address='',parsedSocks5Address={},enableSocks=![],fakeUserID,fakeHostName,noTLS=_0x452530(0x11d);const expire=0xf4849500;let proxyIPs,socks5s,go2Socks5s=['*ttvnw.net','*tapecontent.net',_0x452530(0xfd),'*.loadshare.org'],addresses=[],addressesapi=[],addressesnotls=[],addressesnotlsapi=[],addressescsv=[],DLS=0x8,FileName=atob('ZWRnZXR1bm5lbA=='),BotToken,ChatID,proxyhosts=[],proxyhostsURL='',RproxyIP='false',httpsPorts=[_0x452530(0xd1),'2083',_0x452530(0x195),_0x452530(0x1a1),'8443'],有效时间=0x7,更新时间=0x3,userIDLow,userIDTime='',proxyIPPool=[];export default{async 'fetch'(_0x3d2015,_0x5ee915,_0xe7eefe){const _0x422822=_0x452530;try{const _0x2f5538=_0x3d2015[_0x422822(0x1b0)][_0x422822(0xd9)]('User-Agent')||_0x422822(0xa4),_0x39cf66=_0x2f5538[_0x422822(0x170)]();if(_0x5ee915[_0x422822(0x11c)]){有效时间=_0x5ee915[_0x422822(0xad)]||有效时间,更新时间=_0x5ee915[_0x422822(0xf1)]||更新时间;const _0xb9c11d=await 生成动态UUID(_0x5ee915[_0x422822(0x11c)]);userID=_0xb9c11d[0x0];}else _0x5ee915[_0x422822(0xec)]&&(userID=_0x5ee915[_0x422822(0xec)]);const _0x196c60={};_0x196c60['status']=0x194;if(!userID)return new Response(_0x422822(0x1bf),_0x196c60);const _0x3cdbee=new Date();_0x3cdbee['setHours'](0x0,0x0,0x0,0x0);const _0x103043=Math[_0x422822(0x19c)](_0x3cdbee[_0x422822(0x189)]()/0x3e8),_0x143c02=await 双重哈希(''+userID+_0x103043);fakeUserID=[_0x143c02[_0x422822(0x98)](0x0,0x8),_0x143c02['slice'](0x8,0xc),_0x143c02[_0x422822(0x98)](0xc,0x10),_0x143c02[_0x422822(0x98)](0x10,0x14),_0x143c02[_0x422822(0x98)](0x14)][_0x422822(0xd6)]('-'),fakeHostName=_0x143c02[_0x422822(0x98)](0x6,0x9)+'.'+_0x143c02['slice'](0xd,0x13),proxyIP=_0x5ee915[_0x422822(0x16f)]||proxyIP,proxyIPs=await 整理(proxyIP),proxyIP=proxyIPs[Math[_0x422822(0x10c)](Math[_0x422822(0xe0)]()*proxyIPs['length'])],socks5Address=_0x5ee915[_0x422822(0x1a4)]||socks5Address,socks5s=await 整理(socks5Address),socks5Address=socks5s[Math[_0x422822(0x10c)](Math[_0x422822(0xe0)]()*socks5s[_0x422822(0x178)])],socks5Address=socks5Address[_0x422822(0x1ac)]('//')[0x1]||socks5Address;if(_0x5ee915[_0x422822(0x18c)])httpsPorts=await 整理(_0x5ee915[_0x422822(0x18c)]);sub=_0x5ee915[_0x422822(0xf7)]||sub,subconverter=_0x5ee915['SUBAPI']||subconverter;subconverter[_0x422822(0x15e)]('http://')?(subconverter=subconverter['split']('//')[0x1],subProtocol=_0x422822(0x10b)):subconverter=subconverter[_0x422822(0x1ac)]('//')[0x1]||subconverter;subconfig=_0x5ee915[_0x422822(0xf5)]||subconfig;if(socks5Address)try{parsedSocks5Address=socks5AddressParser(socks5Address),RproxyIP=_0x5ee915['RPROXYIP']||_0x422822(0x11d),enableSocks=!![];}catch(_0x4d4171){let _0x43df64=_0x4d4171;console[_0x422822(0x185)](_0x43df64['toString']()),RproxyIP=_0x5ee915[_0x422822(0x90)]||!proxyIP?_0x422822(0x18d):_0x422822(0x11d),enableSocks=![];}else RproxyIP=_0x5ee915['RPROXYIP']||!proxyIP?_0x422822(0x18d):_0x422822(0x11d);if(_0x5ee915[_0x422822(0xbc)])addresses=await 整理(_0x5ee915[_0x422822(0xbc)]);if(_0x5ee915[_0x422822(0x166)])addressesapi=await 整理(_0x5ee915[_0x422822(0x166)]);if(_0x5ee915['ADDNOTLS'])addressesnotls=await 整理(_0x5ee915[_0x422822(0x150)]);if(_0x5ee915['ADDNOTLSAPI'])addressesnotlsapi=await 整理(_0x5ee915[_0x422822(0x152)]);if(_0x5ee915['ADDCSV'])addressescsv=await 整理(_0x5ee915[_0x422822(0x1bd)]);DLS=_0x5ee915[_0x422822(0x157)]||DLS,BotToken=_0x5ee915[_0x422822(0x91)]||BotToken,ChatID=_0x5ee915[_0x422822(0x12a)]||ChatID;if(_0x5ee915[_0x422822(0x13d)])go2Socks5s=await 整理(_0x5ee915[_0x422822(0x13d)]);const _0x3f65b6=_0x3d2015[_0x422822(0x1b0)][_0x422822(0xd9)]('Upgrade'),_0x13c0bd=new URL(_0x3d2015[_0x422822(0x13a)]);if(_0x13c0bd[_0x422822(0x1b1)]['has'](_0x422822(0x122))&&_0x13c0bd[_0x422822(0x1b1)]['get'](_0x422822(0x122))!=='')sub=_0x13c0bd[_0x422822(0x1b1)][_0x422822(0xd9)](_0x422822(0x122));FileName=_0x5ee915['SUBNAME']||FileName;if(_0x13c0bd['searchParams'][_0x422822(0x1a0)](_0x422822(0x105)))noTLS=_0x422822(0x18d);if(!_0x3f65b6||_0x3f65b6!=='websocket'){const _0x3f37f0=_0x13c0bd['pathname']['toLowerCase']();if(_0x3f37f0=='/'){const _0x5f522f={};_0x5f522f[_0x422822(0x1bb)]=_0x422822(0x88);const _0x411164={};_0x411164[_0x422822(0x128)]=0xc8,_0x411164[_0x422822(0x1b0)]=_0x5f522f;if(_0x5ee915[_0x422822(0x19f)])return Response[_0x422822(0x112)](_0x5ee915['URL302'],0x12e);else{if(_0x5ee915[_0x422822(0xc1)])return await 代理URL(_0x5ee915[_0x422822(0xc1)],_0x13c0bd);else return new Response(JSON[_0x422822(0x15f)](_0x3d2015['cf'],null,0x4),_0x411164);}}else{if(_0x3f37f0=='/'+fakeUserID){const _0x221fd1=await 生成配置信息(userID,_0x3d2015[_0x422822(0x1b0)]['get'](_0x422822(0x172)),sub,_0x422822(0xbd),RproxyIP,_0x13c0bd,_0x5ee915),_0x488c7d={};return _0x488c7d['status']=0xc8,new Response(''+_0x221fd1,_0x488c7d);}else{if(_0x3f37f0=='/'+_0x5ee915[_0x422822(0x11c)]||_0x3f37f0=='/'+userID){await sendMessage('#获取订阅\x20'+FileName,_0x3d2015[_0x422822(0x1b0)][_0x422822(0xd9)](_0x422822(0x93)),_0x422822(0x1c2)+_0x2f5538+_0x422822(0x10f)+_0x13c0bd[_0x422822(0x14f)]+_0x422822(0x158)+(_0x13c0bd[_0x422822(0x19d)]+_0x13c0bd[_0x422822(0x1c1)])+'');const _0x2e0bc6=await 生成配置信息(userID,_0x3d2015[_0x422822(0x1b0)][_0x422822(0xd9)](_0x422822(0x172)),sub,_0x2f5538,RproxyIP,_0x13c0bd,_0x5ee915),_0x159683=Date[_0x422822(0xce)](),_0x125130=new Date(_0x159683);_0x125130['setHours'](0x0,0x0,0x0,0x0);const _0x3e4491=Math[_0x422822(0x10c)]((_0x159683-_0x125130[_0x422822(0x189)]())/0x5265c00*0x18*0x10000000000/0x2);let _0x14819e=_0x3e4491,_0x28123f=_0x3e4491,_0x37de0c=0x18*0x10000000000;if(_0x39cf66&&_0x39cf66[_0x422822(0x15e)](_0x422822(0xa3))){const _0x1e71d4={};_0x1e71d4[_0x422822(0x126)]=_0x422822(0x149),_0x1e71d4[_0x422822(0x151)]='6',_0x1e71d4[_0x422822(0x165)]='upload='+_0x14819e+_0x422822(0x1ae)+_0x28123f+_0x422822(0x1ba)+_0x37de0c+_0x422822(0x13c)+expire;const _0x2b393a={};return _0x2b393a[_0x422822(0x128)]=0xc8,_0x2b393a['headers']=_0x1e71d4,new Response(''+_0x2e0bc6,_0x2b393a);}else return new Response(''+_0x2e0bc6,{'status':0xc8,'headers':{'Content-Disposition':_0x422822(0x13e)+FileName+';\x20filename*=utf-8\x27\x27'+encodeURIComponent(FileName),'Content-Type':_0x422822(0x149),'Profile-Update-Interval':'6','Subscription-Userinfo':'upload='+_0x14819e+_0x422822(0x1ae)+_0x28123f+_0x422822(0x1ba)+_0x37de0c+_0x422822(0x13c)+expire}});}else{const _0x258337={};_0x258337[_0x422822(0x128)]=0x194;if(_0x5ee915[_0x422822(0x19f)])return Response['redirect'](_0x5ee915[_0x422822(0x19f)],0x12e);else{if(_0x5ee915[_0x422822(0xc1)])return await 代理URL(_0x5ee915[_0x422822(0xc1)],_0x13c0bd);else return new Response(_0x422822(0x104),_0x258337);}}}}}else{proxyIP=_0x13c0bd[_0x422822(0x1b1)]['get'](_0x422822(0x16e))||proxyIP;if(new RegExp(_0x422822(0xcd),'i')[_0x422822(0x1a5)](_0x13c0bd['pathname']))proxyIP=_0x13c0bd[_0x422822(0x19d)][_0x422822(0x170)]()[_0x422822(0x1ac)](_0x422822(0xcd))[0x1];else{if(new RegExp(_0x422822(0x103),'i')[_0x422822(0x1a5)](_0x13c0bd[_0x422822(0x19d)]))proxyIP=_0x422822(0x131)+_0x13c0bd['pathname']['toLowerCase']()['split'](_0x422822(0x103))[0x1];}socks5Address=_0x13c0bd[_0x422822(0x1b1)][_0x422822(0xd9)](_0x422822(0xd2))||socks5Address;if(new RegExp(_0x422822(0x134),'i')['test'](_0x13c0bd['pathname']))socks5Address=_0x13c0bd[_0x422822(0x19d)]['split']('5=')[0x1];else{if(new RegExp(_0x422822(0xf4),'i')['test'](_0x13c0bd['pathname'])||new RegExp('/socks5://','i')[_0x422822(0x1a5)](_0x13c0bd[_0x422822(0x19d)])){socks5Address=_0x13c0bd[_0x422822(0x19d)]['split']('://')[0x1][_0x422822(0x1ac)]('#')[0x0];if(socks5Address[_0x422822(0x15e)]('@')){let _0xbc8b6e=socks5Address[_0x422822(0x1ac)]('@')[0x0];const _0x2a424e=/^(?:[A-Z0-9+/]{4})*(?:[A-Z0-9+/]{2}==|[A-Z0-9+/]{3}=)?$/i;if(_0x2a424e[_0x422822(0x1a5)](_0xbc8b6e)&&!_0xbc8b6e['includes'](':'))_0xbc8b6e=atob(_0xbc8b6e);socks5Address=_0xbc8b6e+'@'+socks5Address[_0x422822(0x1ac)]('@')[0x1];}}}if(socks5Address)try{parsedSocks5Address=socks5AddressParser(socks5Address),enableSocks=!![];}catch(_0xafc01){let _0x2c69a3=_0xafc01;console[_0x422822(0x185)](_0x2c69a3['toString']()),enableSocks=![];}else enableSocks=![];return await 维列斯WS开搞开搞(_0x3d2015);}}catch(_0x5d2e78){let _0x2cc8ab=_0x5d2e78;return new Response(_0x2cc8ab['toString']());}}};async function 维列斯WS开搞开搞(_0xdba366){const _0x367767=_0x452530,_0x25e6e7=new WebSocketPair(),[_0x4e58a7,_0x2072db]=Object[_0x367767(0xc8)](_0x25e6e7);_0x2072db['accept']();let _0x4fb92e='',_0x38ccfd='';const _0x1464d2=(_0x4adf53,_0x1192de)=>{console['log']('['+_0x4fb92e+':'+_0x38ccfd+']\x20'+_0x4adf53,_0x1192de||'');},_0x299f9c=_0xdba366[_0x367767(0x1b0)][_0x367767(0xd9)]('sec-websocket-protocol')||'',_0x41ff04=makeReadableWebSocketStream(_0x2072db,_0x299f9c,_0x1464d2),_0x3c998a={};_0x3c998a[_0x367767(0x1be)]=null;let _0x21117a=_0x3c998a,_0x17c839=![];_0x41ff04[_0x367767(0x16a)](new WritableStream({async 'write'(_0x98f9c3,_0x44d99c){const _0x16966d=_0x367767;if(_0x17c839)return await handleDNSQuery(_0x98f9c3,_0x2072db,null,_0x1464d2);if(_0x21117a[_0x16966d(0x1be)]){const _0x30b2f0=_0x21117a[_0x16966d(0x1be)]['writable']['getWriter']();await _0x30b2f0[_0x16966d(0x101)](_0x98f9c3),_0x30b2f0[_0x16966d(0x14b)]();return;}const {hasError:_0x1a1296,message:_0x3b6591,addressType:_0x46c864,portRemote:portRemote=0x1bb,addressRemote:addressRemote='',rawDataIndex:_0x1330c9,vlessVersion:vlessVersion=new Uint8Array([0x0,0x0]),isUDP:_0x35adfb}=processVlessHeader(_0x98f9c3,userID);_0x4fb92e=addressRemote,_0x38ccfd=portRemote+'--'+Math['random']()+'\x20'+(_0x35adfb?_0x16966d(0x89):_0x16966d(0x125))+'\x20';if(_0x1a1296){throw new Error(_0x3b6591);return;}if(_0x35adfb){if(portRemote===0x35)_0x17c839=!![];else{throw new Error('UDP\x20代理仅对\x20DNS(53\x20端口)启用');return;}}const _0x4fbdd5=new Uint8Array([vlessVersion[0x0],0x0]),_0x18a2d0=_0x98f9c3[_0x16966d(0x98)](_0x1330c9);if(_0x17c839)return handleDNSQuery(_0x18a2d0,_0x2072db,_0x4fbdd5,_0x1464d2);_0x1464d2('处理\x20TCP\x20出站连接\x20'+addressRemote+':'+portRemote),handleTCPOutBound(_0x21117a,_0x46c864,addressRemote,portRemote,_0x18a2d0,_0x2072db,_0x4fbdd5,_0x1464d2);},'close'(){const _0x8fe3db=_0x367767;_0x1464d2(_0x8fe3db(0xc2));},'abort'(_0x4daa30){const _0x247a28=_0x367767;_0x1464d2(_0x247a28(0xf3),JSON[_0x247a28(0x15f)](_0x4daa30));}}))[_0x367767(0x1b2)](_0x4b770f=>{const _0x3b0b59=_0x367767;_0x1464d2(_0x3b0b59(0xe3),_0x4b770f);});const _0x17a241={};return _0x17a241['status']=0x65,_0x17a241[_0x367767(0x15d)]=_0x4e58a7,new Response(null,_0x17a241);}async function handleTCPOutBound(_0x2a0abe,_0x496314,_0x57d925,_0x1d4e3a,_0x58c55d,_0x4d3e81,_0x4fd97a,_0x35b0a9){const _0x30fb35=_0x452530;async function _0xe40bb7(_0x49ec4b){const _0xda70c4=_0x42e2;if(go2Socks5s[_0xda70c4(0x15e)](atob('YWxsIGlu'))||go2Socks5s[_0xda70c4(0x15e)](atob('Kg==')))return!![];return go2Socks5s[_0xda70c4(0x92)](_0x543238=>{const _0x5dca88=_0xda70c4;let _0xcc0171=_0x543238[_0x5dca88(0xde)](/\*/g,'.*'),_0x30e0f9=new RegExp('^'+_0xcc0171+'$','i');return _0x30e0f9[_0x5dca88(0x1a5)](_0x49ec4b);});}async function _0x320e0c(_0x11f424,_0x2839bf,_0x5554cb=![]){const _0x4a50fc=_0x42e2;_0x35b0a9(_0x4a50fc(0xcb)+_0x11f424+':'+_0x2839bf);const _0x5ec9b0=_0x5554cb?await socks5Connect(_0x496314,_0x11f424,_0x2839bf,_0x35b0a9):connect({'hostname':_0x11f424,'port':_0x2839bf});_0x2a0abe[_0x4a50fc(0x1be)]=_0x5ec9b0;const _0x2d2dcf=_0x5ec9b0[_0x4a50fc(0x1c4)]['getWriter']();return await _0x2d2dcf['write'](_0x58c55d),_0x2d2dcf['releaseLock'](),_0x5ec9b0;}async function _0x14a228(){const _0x51a179=_0x42e2;if(enableSocks)_0x17c6f1=await _0x320e0c(_0x57d925,_0x1d4e3a,!![]);else{if(!proxyIP||proxyIP=='')proxyIP=atob(_0x51a179(0x147));else{if(proxyIP[_0x51a179(0x15e)](']:'))_0x1d4e3a=proxyIP[_0x51a179(0x1ac)](']:')[0x1]||_0x1d4e3a,proxyIP=proxyIP[_0x51a179(0x1ac)](']:')[0x0]||proxyIP;else proxyIP['split'](':')[_0x51a179(0x178)]===0x2&&(_0x1d4e3a=proxyIP[_0x51a179(0x1ac)](':')[0x1]||_0x1d4e3a,proxyIP=proxyIP[_0x51a179(0x1ac)](':')[0x0]||proxyIP);}if(proxyIP[_0x51a179(0x15e)](_0x51a179(0x184)))_0x1d4e3a=proxyIP[_0x51a179(0x1ac)]('.tp')[0x1]['split']('.')[0x0]||_0x1d4e3a;_0x17c6f1=await _0x320e0c(proxyIP||_0x57d925,_0x1d4e3a);}_0x17c6f1[_0x51a179(0x10e)][_0x51a179(0x1b2)](_0x48b5b9=>{const _0x3e882a=_0x51a179;console[_0x3e882a(0x185)](_0x3e882a(0x110),_0x48b5b9);})[_0x51a179(0xd7)](()=>{safeCloseWebSocket(_0x4d3e81);}),remoteSocketToWS(_0x17c6f1,_0x4d3e81,_0x4fd97a,null,_0x35b0a9);}let _0x410067=![];if(go2Socks5s[_0x30fb35(0x178)]>0x0&&enableSocks)_0x410067=await _0xe40bb7(_0x57d925);let _0x17c6f1=await _0x320e0c(_0x57d925,_0x1d4e3a,_0x410067);remoteSocketToWS(_0x17c6f1,_0x4d3e81,_0x4fd97a,_0x14a228,_0x35b0a9);}function makeReadableWebSocketStream(_0x58e2b7,_0x454118,_0x55377a){let _0x5dcdc9=![];const _0x22a889=new ReadableStream({'start'(_0xfd8433){const _0x1abbe9=_0x42e2;_0x58e2b7[_0x1abbe9(0x1b6)](_0x1abbe9(0x102),_0x392ef2=>{const _0x376909=_0x1abbe9;if(_0x5dcdc9)return;const _0x587352=_0x392ef2[_0x376909(0x16b)];_0xfd8433[_0x376909(0xed)](_0x587352);}),_0x58e2b7[_0x1abbe9(0x1b6)](_0x1abbe9(0x129),()=>{const _0x45c8c9=_0x1abbe9;safeCloseWebSocket(_0x58e2b7);if(_0x5dcdc9)return;_0xfd8433[_0x45c8c9(0x129)]();}),_0x58e2b7[_0x1abbe9(0x1b6)](_0x1abbe9(0x11a),_0xa3b1e9=>{const _0x1b168c=_0x1abbe9;_0x55377a(_0x1b168c(0x191)),_0xfd8433[_0x1b168c(0x11a)](_0xa3b1e9);});const {earlyData:_0x20f603,error:_0x1e88ca}=base64ToArrayBuffer(_0x454118);if(_0x1e88ca)_0xfd8433['error'](_0x1e88ca);else _0x20f603&&_0xfd8433[_0x1abbe9(0xed)](_0x20f603);},'pull'(_0x58ff65){},'cancel'(_0x263e9a){const _0xb0ba70=_0x42e2;if(_0x5dcdc9)return;_0x55377a(_0xb0ba70(0x153)+_0x263e9a),_0x5dcdc9=!![],safeCloseWebSocket(_0x58e2b7);}});return _0x22a889;}function processVlessHeader(_0x56cca3,_0x5c38d9){const _0x5da9b4=_0x452530;if(_0x56cca3[_0x5da9b4(0x8f)]<0x18){const _0x2d1087={};return _0x2d1087[_0x5da9b4(0xa0)]=!![],_0x2d1087[_0x5da9b4(0x102)]=_0x5da9b4(0xa8),_0x2d1087;}const _0x288fe5=new Uint8Array(_0x56cca3[_0x5da9b4(0x98)](0x0,0x1));let _0xff1702=![],_0x1c9054=![];function _0x4f46fb(_0xe053c3,_0x56e7bd,_0x41043a){const _0x3b50b7=_0x5da9b4,_0x3590cd=new Uint8Array(_0x41043a[_0x3b50b7(0x98)](0x1,0x11)),_0x16f2c6=stringify(_0x3590cd);return _0x16f2c6===_0xe053c3||_0x16f2c6===_0x56e7bd;}_0xff1702=_0x4f46fb(_0x5c38d9,userIDLow,_0x56cca3);if(!_0xff1702)return{'hasError':!![],'message':_0x5da9b4(0x8b)+new Uint8Array(_0x56cca3[_0x5da9b4(0x98)](0x1,0x11))};const _0x50deab=new Uint8Array(_0x56cca3[_0x5da9b4(0x98)](0x11,0x12))[0x0],_0x23c5f9=new Uint8Array(_0x56cca3[_0x5da9b4(0x98)](0x12+_0x50deab,0x12+_0x50deab+0x1))[0x0];if(_0x23c5f9===0x1){}else{if(_0x23c5f9===0x2)_0x1c9054=!![];else{const _0xb4833d={};return _0xb4833d['hasError']=!![],_0xb4833d[_0x5da9b4(0x102)]='command\x20'+_0x23c5f9+_0x5da9b4(0x159),_0xb4833d;}}const _0x2f154d=0x12+_0x50deab+0x1,_0x32f6c3=_0x56cca3[_0x5da9b4(0x98)](_0x2f154d,_0x2f154d+0x2),_0x38ff94=new DataView(_0x32f6c3)[_0x5da9b4(0xa2)](0x0);let _0x2f278e=_0x2f154d+0x2;const _0x4836a5=new Uint8Array(_0x56cca3[_0x5da9b4(0x98)](_0x2f278e,_0x2f278e+0x1)),_0x1c46ef=_0x4836a5[0x0];let _0xdd54a2=0x0,_0x578ee0=_0x2f278e+0x1,_0x3345db='';switch(_0x1c46ef){case 0x1:_0xdd54a2=0x4,_0x3345db=new Uint8Array(_0x56cca3['slice'](_0x578ee0,_0x578ee0+_0xdd54a2))['join']('.');break;case 0x2:_0xdd54a2=new Uint8Array(_0x56cca3[_0x5da9b4(0x98)](_0x578ee0,_0x578ee0+0x1))[0x0],_0x578ee0+=0x1,_0x3345db=new TextDecoder()[_0x5da9b4(0x111)](_0x56cca3[_0x5da9b4(0x98)](_0x578ee0,_0x578ee0+_0xdd54a2));break;case 0x3:_0xdd54a2=0x10;const _0x46ece7=new DataView(_0x56cca3[_0x5da9b4(0x98)](_0x578ee0,_0x578ee0+_0xdd54a2)),_0x2a8da5=[];for(let _0x586357=0x0;_0x586357<0x8;_0x586357++){_0x2a8da5['push'](_0x46ece7[_0x5da9b4(0xa2)](_0x586357*0x2)[_0x5da9b4(0x137)](0x10));}_0x3345db=_0x2a8da5[_0x5da9b4(0xd6)](':');break;default:const _0x21bd36={};_0x21bd36[_0x5da9b4(0xa0)]=!![],_0x21bd36[_0x5da9b4(0x102)]=_0x5da9b4(0x10d)+_0x1c46ef;return _0x21bd36;}if(!_0x3345db){const _0x38a134={};return _0x38a134[_0x5da9b4(0xa0)]=!![],_0x38a134[_0x5da9b4(0x102)]=_0x5da9b4(0x1c5)+_0x1c46ef,_0x38a134;}const _0x12d4f2={};return _0x12d4f2[_0x5da9b4(0xa0)]=![],_0x12d4f2[_0x5da9b4(0xcf)]=_0x3345db,_0x12d4f2[_0x5da9b4(0x97)]=_0x1c46ef,_0x12d4f2[_0x5da9b4(0xe6)]=_0x38ff94,_0x12d4f2[_0x5da9b4(0x144)]=_0x578ee0+_0xdd54a2,_0x12d4f2[_0x5da9b4(0x1c7)]=_0x288fe5,_0x12d4f2['isUDP']=_0x1c9054,_0x12d4f2;}async function remoteSocketToWS(_0x1bf77b,_0x4487ca,_0x47834f,_0x1f0f16,_0xf75e6b){const _0x1d2eae=_0x452530;let _0x1d5c50=0x0,_0x32ace1=[],_0x5d912d=_0x47834f,_0x2e682b=![];await _0x1bf77b['readable'][_0x1d2eae(0x16a)](new WritableStream({'start'(){},async 'write'(_0xe43c1c,_0x8d6dca){const _0x1da3ff=_0x1d2eae;_0x2e682b=!![],_0x4487ca[_0x1da3ff(0x17a)]!==WS_READY_STATE_OPEN&&_0x8d6dca[_0x1da3ff(0x11a)](_0x1da3ff(0xb9)),_0x5d912d?(_0x4487ca['send'](await new Blob([_0x5d912d,_0xe43c1c])[_0x1da3ff(0x17f)]()),_0x5d912d=null):_0x4487ca[_0x1da3ff(0x8e)](_0xe43c1c);},'close'(){const _0x36aad2=_0x1d2eae;_0xf75e6b(_0x36aad2(0xc6)+_0x2e682b);},'abort'(_0x51e19e){const _0xd8b96a=_0x1d2eae;console[_0xd8b96a(0x11a)](_0xd8b96a(0x1c9),_0x51e19e);}}))['catch'](_0x739673=>{const _0x159dee=_0x1d2eae;console[_0x159dee(0x11a)]('remoteSocketToWS\x20has\x20exception\x20',_0x739673['stack']||_0x739673),safeCloseWebSocket(_0x4487ca);}),_0x2e682b===![]&&_0x1f0f16&&(_0xf75e6b(_0x1d2eae(0xd3)),_0x1f0f16());}function base64ToArrayBuffer(_0x28dfb4){const _0x7125d3=_0x452530;if(!_0x28dfb4){const _0x227b97={};return _0x227b97['error']=null,_0x227b97;}try{_0x28dfb4=_0x28dfb4['replace'](/-/g,'+')[_0x7125d3(0xde)](/_/g,'/');const _0x3e7100=atob(_0x28dfb4),_0x1e1e9d=Uint8Array['from'](_0x3e7100,_0x175ad9=>_0x175ad9[_0x7125d3(0x95)](0x0)),_0x3cae91={};return _0x3cae91['earlyData']=_0x1e1e9d[_0x7125d3(0xe8)],_0x3cae91[_0x7125d3(0x11a)]=null,_0x3cae91;}catch(_0x5e13aa){const _0x15a9d1={};return _0x15a9d1[_0x7125d3(0x11a)]=_0x5e13aa,_0x15a9d1;}}function _0x42e2(_0x4ffed8,_0xc0ff5){const _0x2647fd=_0x2647();return _0x42e2=function(_0x42e27d,_0xeafd59){_0x42e27d=_0x42e27d-0x88;let _0x4d71c2=_0x2647fd[_0x42e27d];return _0x4d71c2;},_0x42e2(_0x4ffed8,_0xc0ff5);}function isValidUUID(_0x89ea96){const _0x28b8c5=_0x452530,_0xf5e88c=/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;return _0xf5e88c[_0x28b8c5(0x1a5)](_0x89ea96);}function _0x2647(){const _0xb44c4d=['proxyip','PROXYIP','toLowerCase','pages.dev','Host','Error:\x20fetch\x20is\x20not\x20available\x20in\x20this\x20environment.','json','Sm9pbi5teS5UZWxlZ3JhbS5jaGFubmVsLkNNTGl1c3NzLnRvLnVubG9jay5tb3JlLnByZW1pdW0ubm9kZXMuY2YuMDkwMjI3Lnh5eiPliqDlhaXmiJHnmoTpopHpgZN0Lm1lL0NNTGl1c3Nz6Kej6ZSB5pu05aSa5LyY6YCJ6IqC54K5CjEyNy4wLjAuMToxMjM0I0NGbmF0CnZpc2EuY246NDQzCnNpbmdhcG9yZS5jb206ODQ0MwpqYXBhbi5jb206MjA1MwpicmF6aWwuY29tOjIwODMKcnVzc2lhLmNvbToyMDg3Cnd3dy5nb3YudWE6MjA5Ngp3d3cuZ2NvLmdvdi5xYTo4NDQzCnd3dy5nb3Yuc2UKdGltZS5pcwp3d3cud3RvLm9yZzo4NDQzCmZiaS5nb3Y6MjA4NwppY29vay5oawpbMjYwNjo0NzAwOjpdI0lQdjY=','/sub?target=singbox&url=','&type=','length','&host=','readyState','readable','https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_MultiMode.ini','\x0a','&uuid=','arrayBuffer','\x0a\x20\x20name:\x20','2052','ADDNOTLS(noTLS优选域名&IP):\x20\x0a\x20\x20',')\x20TCP\x20连接异常中断','.tp','log','/sub?host=','worker','\x20时(北京时间)\x0a\x0a','getTime','\x0aUUIDNow:\x20','?b64\x0ahttps://','CFPORTS','true','https','\x0aASN:\x20','&fp=random&type=ws&host=','WebSocket\x20服务器发生错误','IENGLVdvcmtlcnMtZWRnZXR1bm5lbC9jbWxpdQ==','text/html,application/xhtml+xml,application/xml;','\x22\x0a\x20\x20\x20\x20headers:\x0a\x20\x20\x20\x20\x20\x20host:\x20','2087','charAt','&path=','proxyip=true','text','获取地址时出错:','&fp=','ceil','pathname','\x0aUUID:\x20','URL302','has','2096','SOCKS5\x20连接建立失败','randomized','SOCKS5','test','%E6%89%80%E6%9C%89%E6%B5%81%E9%87%8F','\x0aSUBAPI(订阅转换后端):\x20','digest','visa.cn','match','all','split','Mozilla/5.0\x20Chrome/90.0.4430.72',';\x20download=','SHA-256','headers','searchParams','catch','1420972ISzXXX','dmxlc3M=','protocol','addEventListener','then','TRUE','safeCloseWebSocket\x20error',';\x20total=','content-type','FALSE','ADDCSV','value','请设置你的UUID变量,或尝试重试部署,检查变量是否成效?','CSV文件缺少必需的字段','search','UA:\x20','已发送\x20SOCKS5\x20请求','writable','addressValue\x20is\x20empty,\x20addressType\x20is\x20','虚假HOST:\x20','vlessVersion','subconverter','remoteConnection!.readable\x20abort','application/json','udp\x20','2184462QFYUVu','invalid\x20user\x20','\x0a您的订阅内容由\x20内置\x20addresses/ADD*\x20参数变量提供\x0a','无效的地址类型:\x20','send','byteLength','RPROXYIP','TGTOKEN','some','CF-Connecting-IP','map','charCodeAt','\x0a\x20\x20udp:\x20false\x0a\x20\x20sni:\x20','addressType','slice','reverse','substr','已发送\x20SOCKS5\x20问候消息','?lang=zh-CN','from','Accept-Encoding','&insert=false&config=','hasError','\x0aUA:\x20','getUint16','mozilla','null','X-New-URL','2082','Kg==','invalid\x20data','allSettled','2095','?singbox\x0a---------------------------------------------------------------\x0a################################################################\x0a','\x0a---------------------------------------------------------------\x0a################################################################\x0aclash-meta\x0a---------------------------------------------------------------\x0a','TIME','\x20(UTC+8):\x20','encode','DNS\x20服务器(','SOCKS5\x20连接已建立','7196135TZKgOL','TLS','find','subtle','ADDCSV(IPTest测速csv文件\x20限速\x20','1253SVMnaj','toISOString','webSocket.readyState\x20is\x20not\x20open,\x20maybe\x20close','248125QrdqRt','服务器不接受任何认证方法','ADD','CF-Workers-SUB','\x0a国家:\x20','1993071qEYDnd','signal','URL','readableWebSocketStream\x20已关闭','HOST:\x20','https://api.telegram.org/bot','&parse_mode=HTML&text=','remoteConnection!.readable\x20is\x20close\x20with\x20hasIncomingData\x20is\x20','?encry','values','.workers.dev','body','connected\x20to\x20','clash','/proxyip=','now','addressRemote','获取CSV地址时出错:','2053','socks5','retry','4YPfewZ','\x20天\x0aUPTIME(动态UUID更新时间):\x20','join','finally','虚假订阅:\x20','get','\x0a---------------------------------------------------------------\x0a################################################################\x0av2ray\x0a---------------------------------------------------------------\x0a','TOKEN:\x20','&emoji=true&list=false&tfo=false&scv=true&fdn=false&sort=false&new_name=true','Error\x20sending\x20message:','replace','port','random','b64','CFCDN(访问方式):\x20Socks5\x0a\x20\x20','readableWebSocketStream\x20管道错误','padStart','http://ip-api.com/json/','portRemote','2086','buffer','\x0a\x20\x20server:\x20','getWriter','?base64\x0a\x0aclash订阅地址:\x0ahttps://','UUID','enqueue','?encryption=none&security=tls&sni=','Error\x20fetching\x20content:\x20','none','UPTIME','连接到\x20','readableWebSocketStream\x20已中止','/socks://','SUBCONFIG','\x20已启用临时域名中转服务,请尽快绑定自定义域!','SUB','\x0a城市:\x20','function','concat','push','无效的\x20SOCKS\x20地址格式:端口号必须是数字','*cloudatacdn.com','abort',':443','\x0aFKID:\x20','write','message','/proxyip.','不用怀疑!你UUID就是错的!!!或尝试重试部署,检查变量是否成效?','notls','SUBAPI.fxxk.dedyn.io','CFCDN(访问方式):\x20自动获取ProxyIP\x0a','flatMap','33ubbaIC','ADD(TLS优选域名&IP):\x20\x0a\x20\x20','http','floor','invild\x20addressType\x20is\x20','closed','\x0a域名:\x20','retry\x20tcpSocket\x20closed\x20error','decode','redirect','51704szjnRt','\x0aUUIDLow:\x20','handleDNSQuery\x20函数发生异常,错误信息:\x20','sing-box','6lZxtfe','\x0a\x20\x20','&proxyip=','error',')\x20TCP\x20连接已关闭','KEY','false','://','SOCKS5\x20服务器版本错误:\x20收到\x20','SOCKS5\x20服务器认证失败','base64','sub','/sendMessage?chat_id=','CFCDN(访问方式):\x20无法访问,\x20需要您设置\x20proxyIP/PROXYIP\x20!!!\x0a','tcp\x20','Content-Type','city','status','close','TGID','Q0YtV29ya2Vycy1lZGdldHVubmVsL2NtbGl1','entries','TIME(动态UUID有效时间):\x20','\x0a\x20\x20tls:\x20','filter','MD5','proxyip.','reject','\x0a\x20\x20uuid:\x20','/socks5=','dXNhLnZpc2EuY29tOjIwOTUKbXlhbm1hci52aXNhLmNvbTo4MDgwCmR5bmFkb3QuY29tOjg4ODAKd3d3LnZpc2FldXJvcGUuY2g6MjA1MgpzaG9waWZ5LmNvbToyMDgyCnd3dy52aXNhc291dGhlYXN0ZXVyb3BlLmNvbToyMDg2Cg==','&edgetunnel=cmliu&proxyip=','toString','8.8.4.4','singbox','url','?notls',';\x20expire=','GO2SOCKS5','attachment;\x20filename=','11866990eJBDqI','read','tls','ADDAPI(TLS优选域名&IP\x20的\x20API):\x20\x0a\x20\x20','method','rawDataIndex','toUpperCase','trim','UFJPWFlJUC50cDEuZnh4ay5kZWR5bi5pbw==','\x0a\x20\x20client-fingerprint:\x20','text/plain;charset=utf-8','password','releaseLock','.pages.dev','pop','?sub\x0a\x0aBase64订阅地址:\x0ahttps://','hostname','ADDNOTLS','Profile-Update-Interval','ADDNOTLSAPI','可读流被取消,原因是\x20','https://','org','/?ed=2560','DLS','\x0a入口:\x20','\x20is\x20not\x20support,\x20command\x2001-tcp,02-udp,03-mux','statusText','fulfilled',',期望是\x205','webSocket','includes','stringify','\x0a\x20\x20ws-opts:\x0a\x20\x20\x20\x20path:\x20\x22','nekobox','-\x20type:\x20','Accept','8080','Subscription-Userinfo','ADDAPI','&sni=','无效的\x20SOCKS\x20地址格式:认证部分必须是\x20\x22username:password\x22\x20的形式','8880','pipeTo','data','GET','gzip,\x20deflate,\x20br'];_0x2647=function(){return _0xb44c4d;};return _0x2647();}const WS_READY_STATE_OPEN=0x1,WS_READY_STATE_CLOSING=0x2;function safeCloseWebSocket(_0x2545e7){const _0x5d0c9f=_0x452530;try{(_0x2545e7[_0x5d0c9f(0x17a)]===WS_READY_STATE_OPEN||_0x2545e7[_0x5d0c9f(0x17a)]===WS_READY_STATE_CLOSING)&&_0x2545e7[_0x5d0c9f(0x129)]();}catch(_0x5e4aff){console['error'](_0x5d0c9f(0x1b9),_0x5e4aff);}}const byteToHex=[];for(let i=0x0;i<0x100;++i){byteToHex['push']((i+0x100)['toString'](0x10)[_0x452530(0x98)](0x1));}function unsafeStringify(_0x316e64,_0x32b63e=0x0){const _0x4311a4=_0x452530;return(byteToHex[_0x316e64[_0x32b63e+0x0]]+byteToHex[_0x316e64[_0x32b63e+0x1]]+byteToHex[_0x316e64[_0x32b63e+0x2]]+byteToHex[_0x316e64[_0x32b63e+0x3]]+'-'+byteToHex[_0x316e64[_0x32b63e+0x4]]+byteToHex[_0x316e64[_0x32b63e+0x5]]+'-'+byteToHex[_0x316e64[_0x32b63e+0x6]]+byteToHex[_0x316e64[_0x32b63e+0x7]]+'-'+byteToHex[_0x316e64[_0x32b63e+0x8]]+byteToHex[_0x316e64[_0x32b63e+0x9]]+'-'+byteToHex[_0x316e64[_0x32b63e+0xa]]+byteToHex[_0x316e64[_0x32b63e+0xb]]+byteToHex[_0x316e64[_0x32b63e+0xc]]+byteToHex[_0x316e64[_0x32b63e+0xd]]+byteToHex[_0x316e64[_0x32b63e+0xe]]+byteToHex[_0x316e64[_0x32b63e+0xf]])[_0x4311a4(0x170)]();}function stringify(_0x20c7b9,_0x2c939d=0x0){const _0x17e1c=unsafeStringify(_0x20c7b9,_0x2c939d);if(!isValidUUID(_0x17e1c))throw TypeError('生成的\x20UUID\x20不符合规范\x20'+_0x17e1c);return _0x17e1c;}async function handleDNSQuery(_0x529cc2,_0x5bf198,_0x4e2e35,_0x5b3a48){const _0x109d1b=_0x452530;try{const _0x1af4fb=_0x109d1b(0x138),_0x23e654=0x35;let _0x3af4a2=_0x4e2e35;const _0x4526ee={};_0x4526ee[_0x109d1b(0x14f)]=_0x1af4fb,_0x4526ee[_0x109d1b(0xdf)]=_0x23e654;const _0x17ff58=connect(_0x4526ee);_0x5b3a48(_0x109d1b(0xf2)+_0x1af4fb+':'+_0x23e654);const _0x522189=_0x17ff58[_0x109d1b(0x1c4)][_0x109d1b(0xea)]();await _0x522189[_0x109d1b(0x101)](_0x529cc2),_0x522189[_0x109d1b(0x14b)](),await _0x17ff58[_0x109d1b(0x17b)]['pipeTo'](new WritableStream({async 'write'(_0x121fcb){const _0x2597d1=_0x109d1b;_0x5bf198['readyState']===WS_READY_STATE_OPEN&&(_0x3af4a2?(_0x5bf198[_0x2597d1(0x8e)](await new Blob([_0x3af4a2,_0x121fcb])['arrayBuffer']()),_0x3af4a2=null):_0x5bf198['send'](_0x121fcb));},'close'(){const _0x357d49=_0x109d1b;_0x5b3a48(_0x357d49(0xb0)+_0x1af4fb+_0x357d49(0x11b));},'abort'(_0x52b31d){const _0x1517ce=_0x109d1b;console[_0x1517ce(0x11a)](_0x1517ce(0xb0)+_0x1af4fb+_0x1517ce(0x183),_0x52b31d);}}));}catch(_0x3337f3){console[_0x109d1b(0x11a)](_0x109d1b(0x115)+_0x3337f3[_0x109d1b(0x102)]);}}async function socks5Connect(_0x14e85d,_0x24e9e6,_0x501e33,_0x5a5da1){const _0x5c5aca=_0x452530,{username:_0x32cc7c,password:_0x42aef9,hostname:_0x1a535a,port:_0x14c80d}=parsedSocks5Address,_0x29f94c={};_0x29f94c['hostname']=_0x1a535a,_0x29f94c[_0x5c5aca(0xdf)]=_0x14c80d;const _0x37e797=connect(_0x29f94c),_0x498815=new Uint8Array([0x5,0x2,0x0,0x2]),_0x37fc4c=_0x37e797['writable'][_0x5c5aca(0xea)]();await _0x37fc4c['write'](_0x498815),_0x5a5da1(_0x5c5aca(0x9b));const _0x508331=_0x37e797[_0x5c5aca(0x17b)]['getReader'](),_0x45292e=new TextEncoder();let _0x4958ed=(await _0x508331[_0x5c5aca(0x140)]())['value'];if(_0x4958ed[0x0]!==0x5){_0x5a5da1(_0x5c5aca(0x11f)+_0x4958ed[0x0]+_0x5c5aca(0x15c));return;}if(_0x4958ed[0x1]===0xff){_0x5a5da1(_0x5c5aca(0xbb));return;}if(_0x4958ed[0x1]===0x2){_0x5a5da1('SOCKS5\x20服务器需要认证');if(!_0x32cc7c||!_0x42aef9){_0x5a5da1('请提供用户名和密码');return;}const _0x2fb012=new Uint8Array([0x1,_0x32cc7c[_0x5c5aca(0x178)],..._0x45292e[_0x5c5aca(0xaf)](_0x32cc7c),_0x42aef9[_0x5c5aca(0x178)],..._0x45292e['encode'](_0x42aef9)]);await _0x37fc4c[_0x5c5aca(0x101)](_0x2fb012),_0x4958ed=(await _0x508331[_0x5c5aca(0x140)]())['value'];if(_0x4958ed[0x0]!==0x1||_0x4958ed[0x1]!==0x0){_0x5a5da1(_0x5c5aca(0x120));return;}}let _0x189342;switch(_0x14e85d){case 0x1:_0x189342=new Uint8Array([0x1,..._0x24e9e6[_0x5c5aca(0x1ac)]('.')[_0x5c5aca(0x94)](Number)]);break;case 0x2:_0x189342=new Uint8Array([0x3,_0x24e9e6[_0x5c5aca(0x178)],..._0x45292e[_0x5c5aca(0xaf)](_0x24e9e6)]);break;case 0x3:_0x189342=new Uint8Array([0x4,..._0x24e9e6[_0x5c5aca(0x1ac)](':')[_0x5c5aca(0x108)](_0x2789ee=>[parseInt(_0x2789ee[_0x5c5aca(0x98)](0x0,0x2),0x10),parseInt(_0x2789ee[_0x5c5aca(0x98)](0x2),0x10)])]);break;default:_0x5a5da1(_0x5c5aca(0x8d)+_0x14e85d);return;}const _0x3c91f0=new Uint8Array([0x5,0x1,0x0,..._0x189342,_0x501e33>>0x8,_0x501e33&0xff]);await _0x37fc4c['write'](_0x3c91f0),_0x5a5da1(_0x5c5aca(0x1c3)),_0x4958ed=(await _0x508331[_0x5c5aca(0x140)]())['value'];if(_0x4958ed[0x1]===0x0)_0x5a5da1(_0x5c5aca(0xb1));else{_0x5a5da1(_0x5c5aca(0x1a2));return;}return _0x37fc4c[_0x5c5aca(0x14b)](),_0x508331[_0x5c5aca(0x14b)](),_0x37e797;}function socks5AddressParser(_0x478eea){const _0x5c569f=_0x452530;let [_0xb0fa7a,_0x1adc6c]=_0x478eea[_0x5c569f(0x1ac)]('@')[_0x5c569f(0x99)](),_0x1d336b,_0x1ee8e1,_0x6a8ad2,_0x398506;if(_0x1adc6c){const _0x45fddc=_0x1adc6c[_0x5c569f(0x1ac)](':');if(_0x45fddc[_0x5c569f(0x178)]!==0x2)throw new Error(_0x5c569f(0x168));[_0x1d336b,_0x1ee8e1]=_0x45fddc;}const _0x3f620c=_0xb0fa7a[_0x5c569f(0x1ac)](':');_0x398506=Number(_0x3f620c[_0x5c569f(0x14d)]());if(isNaN(_0x398506))throw new Error(_0x5c569f(0xfc));_0x6a8ad2=_0x3f620c['join'](':');const _0x42058f=/^\[.*\]$/;if(_0x6a8ad2[_0x5c569f(0x15e)](':')&&!_0x42058f['test'](_0x6a8ad2))throw new Error('无效的\x20SOCKS\x20地址格式:IPv6\x20地址必须用方括号括起来,如\x20[2001:db8::1]');const _0x3a8cb8={};return _0x3a8cb8['username']=_0x1d336b,_0x3a8cb8[_0x5c569f(0x14a)]=_0x1ee8e1,_0x3a8cb8[_0x5c569f(0x14f)]=_0x6a8ad2,_0x3a8cb8[_0x5c569f(0xdf)]=_0x398506,_0x3a8cb8;}function 恢复伪装信息(_0x2a38bb,_0x203ffd,_0x7323d9,_0xa8f221){const _0x2b7e4e=_0x452530;if(_0xa8f221)_0x2a38bb=atob(_0x2a38bb);_0x2a38bb=_0x2a38bb['replace'](new RegExp(fakeUserID,'g'),_0x203ffd)[_0x2b7e4e(0xde)](new RegExp(fakeHostName,'g'),_0x7323d9);if(_0xa8f221)_0x2a38bb=btoa(_0x2a38bb);return _0x2a38bb;}async function 双重哈希(_0x1f3c8f){const _0x3f009e=_0x452530,_0x553205=new TextEncoder(),_0x214409=await crypto['subtle'][_0x3f009e(0x1a8)]('MD5',_0x553205['encode'](_0x1f3c8f)),_0x51dd38=Array[_0x3f009e(0x9d)](new Uint8Array(_0x214409)),_0x580096=_0x51dd38[_0x3f009e(0x94)](_0x49711d=>_0x49711d['toString'](0x10)[_0x3f009e(0xe4)](0x2,'0'))[_0x3f009e(0xd6)](''),_0x105dea=await crypto[_0x3f009e(0xb5)][_0x3f009e(0x1a8)](_0x3f009e(0x130),_0x553205[_0x3f009e(0xaf)](_0x580096[_0x3f009e(0x98)](0x7,0x1b))),_0x2ad9f6=Array[_0x3f009e(0x9d)](new Uint8Array(_0x105dea)),_0x2918ed=_0x2ad9f6[_0x3f009e(0x94)](_0x479a15=>_0x479a15['toString'](0x10)[_0x3f009e(0xe4)](0x2,'0'))['join']('');return _0x2918ed[_0x3f009e(0x170)]();}async function 代理URL(_0x49c833,_0x277a10){const _0x14d327=_0x452530,_0x50819d=await 整理(_0x49c833),_0x2c4903=_0x50819d[Math[_0x14d327(0x10c)](Math[_0x14d327(0xe0)]()*_0x50819d['length'])];let _0x1032ac=new URL(_0x2c4903);console[_0x14d327(0x185)](_0x1032ac);let _0x112e37=_0x1032ac[_0x14d327(0x1b5)]['slice'](0x0,-0x1)||_0x14d327(0x18e),_0x2ad817=_0x1032ac[_0x14d327(0x14f)],_0x235631=_0x1032ac[_0x14d327(0x19d)],_0x2fc2f3=_0x1032ac['search'];_0x235631[_0x14d327(0x196)](_0x235631[_0x14d327(0x178)]-0x1)=='/'&&(_0x235631=_0x235631['slice'](0x0,-0x1));_0x235631+=_0x277a10[_0x14d327(0x19d)];let _0x2d7553=_0x112e37+'://'+_0x2ad817+_0x235631+_0x2fc2f3,_0x239300=await fetch(_0x2d7553),_0x2671e8=new Response(_0x239300[_0x14d327(0xca)],{'status':_0x239300[_0x14d327(0x128)],'statusText':_0x239300[_0x14d327(0x15a)],'headers':_0x239300[_0x14d327(0x1b0)]});return _0x2671e8[_0x14d327(0x1b0)]['set'](_0x14d327(0xa5),_0x2d7553),_0x2671e8;}function 添加基础优选订阅(_0x5263f4){const _0x5b6e25=_0x452530;(!sub||sub=='')&&addresses[_0x5b6e25(0x178)]+addressesapi[_0x5b6e25(0x178)]+addressesnotls[_0x5b6e25(0x178)]+addressesnotlsapi['length']+addressescsv[_0x5b6e25(0x178)]==0x0&&(addresses=addresses[_0x5b6e25(0xfa)](整理(atob(_0x5b6e25(0x175)))),_0x5263f4[_0x5b6e25(0x15e)](_0x5b6e25(0xc9))&&(addressesnotls=addressesnotls['concat'](整理(atob(_0x5b6e25(0x135))))));}const 啥啥啥_写的这是啥啊=_0x452530(0x1b4);function 配置信息(_0x5e4a43,_0x10e583){const _0x548f85=_0x452530,_0x40ba3b=atob(啥啥啥_写的这是啥啊),_0x329f3a=FileName;let _0x31d720=_0x10e583,_0x5773c6=0x1bb;const _0x116203=_0x5e4a43,_0x4fc3d3=_0x548f85(0xf0),_0x55e62f='ws',_0x17f154=_0x10e583,_0x1cf3fc=_0x548f85(0x156);let _0x43159b=[_0x548f85(0x141),!![]];const _0x48fbd0=_0x10e583,_0x3e61a3=_0x548f85(0x1a3);_0x10e583[_0x548f85(0x15e)]('.workers.dev')&&(_0x31d720=_0x548f85(0x1a9),_0x5773c6=0x50,_0x43159b=['',![]]);const _0x266b00=_0x40ba3b+_0x548f85(0x11e)+_0x116203+'@'+_0x31d720+':'+_0x5773c6+_0x548f85(0xc7)+'p'+(atob('dGlvbj0=')+_0x4fc3d3+'&security='+_0x43159b[0x0]+_0x548f85(0x167)+_0x48fbd0+_0x548f85(0x19b)+_0x3e61a3+_0x548f85(0x177)+_0x55e62f+_0x548f85(0x179)+_0x17f154+_0x548f85(0x197)+encodeURIComponent(_0x1cf3fc)+'#'+encodeURIComponent(_0x329f3a)),_0x58988c=_0x548f85(0x162)+_0x40ba3b+_0x548f85(0x180)+FileName+_0x548f85(0xe9)+_0x31d720+'\x0a\x20\x20port:\x20'+_0x5773c6+_0x548f85(0x133)+_0x116203+'\x0a\x20\x20network:\x20'+_0x55e62f+_0x548f85(0x12e)+_0x43159b[0x1]+_0x548f85(0x96)+_0x48fbd0+_0x548f85(0x148)+_0x3e61a3+_0x548f85(0x160)+_0x1cf3fc+_0x548f85(0x194)+_0x17f154;return[_0x266b00,_0x58988c];}let subParams=[_0x452530(0x122),_0x452530(0x121),_0x452530(0xe1),_0x452530(0xcc),_0x452530(0x139),'sb'];async function 生成配置信息(_0x245f82,_0x57bbc0,_0x458639,_0x78eebc,_0x2850c2,_0x4c4d34,_0x517287){const _0x79fa=_0x452530,_0x3cfc49=_0x4c4d34[_0x79fa(0x19d)]=='/'+_0x517287[_0x79fa(0x11c)]?_0x517287[_0x79fa(0x11c)]:_0x245f82;添加基础优选订阅(_0x57bbc0);const _0x18552a=_0x78eebc[_0x79fa(0x170)](),_0x607fad=配置信息(_0x245f82,_0x57bbc0),_0x344521=_0x607fad[0x0],_0x157b24=_0x607fad[0x1];let _0x492036='';if(_0x57bbc0[_0x79fa(0x15e)](_0x79fa(0xc9))){if(proxyhostsURL&&(!proxyhosts||proxyhosts[_0x79fa(0x178)]==0x0))try{const _0x4384c7=await fetch(proxyhostsURL);if(!_0x4384c7['ok']){console[_0x79fa(0x11a)](_0x79fa(0x19a),_0x4384c7['status'],_0x4384c7[_0x79fa(0x15a)]);return;}const _0x474a54=await _0x4384c7[_0x79fa(0x199)](),_0x56e176=_0x474a54['split']('\x0a'),_0x1934fd=_0x56e176[_0x79fa(0x12f)](_0xcea376=>_0xcea376[_0x79fa(0x146)]()!=='');proxyhosts=proxyhosts[_0x79fa(0xfa)](_0x1934fd);}catch(_0x4ba1f6){}if(proxyhosts['length']!=0x0)_0x492036=proxyhosts[Math[_0x79fa(0x10c)](Math[_0x79fa(0xe0)]()*proxyhosts['length'])]+'/';}if(_0x18552a[_0x79fa(0x15e)](_0x79fa(0xa3))&&!subParams['some'](_0x46b8df=>_0x4c4d34[_0x79fa(0x1b1)][_0x79fa(0x1a0)](_0x46b8df))){const _0x5481e6=socks5s[_0x79fa(0x94)](_0x7f93f=>{const _0x59dbd1=_0x79fa;if(_0x7f93f[_0x59dbd1(0x15e)]('@'))return _0x7f93f['split']('@')[0x1];else{if(_0x7f93f[_0x59dbd1(0x15e)]('//'))return _0x7f93f[_0x59dbd1(0x1ac)]('//')[0x1];else return _0x7f93f;}});let _0x1fb9ba='';if(go2Socks5s[_0x79fa(0x178)]>0x0&&enableSocks){_0x1fb9ba=''+decodeURIComponent('SOCKS5%EF%BC%88%E7%99%BD%E5%90%8D%E5%8D%95%EF%BC%89%3A%20');if(go2Socks5s['includes'](atob('YWxsIGlu'))||go2Socks5s[_0x79fa(0x15e)](atob(_0x79fa(0xa7))))_0x1fb9ba+=decodeURIComponent(_0x79fa(0x1a6))+'\x0a';else _0x1fb9ba+='\x0a\x20\x20'+go2Socks5s[_0x79fa(0xd6)](_0x79fa(0x118))+'\x0a';}let _0x37f81e='\x0a';if(!_0x458639||_0x458639==''){if(enableSocks)_0x37f81e+=_0x79fa(0xe2)+_0x5481e6[_0x79fa(0xd6)](_0x79fa(0x118))+'\x0a'+_0x1fb9ba;else{if(proxyIP&&proxyIP!='')_0x37f81e+='CFCDN(访问方式):\x20ProxyIP\x0a\x20\x20'+proxyIPs[_0x79fa(0xd6)](_0x79fa(0x118))+'\x0a';else _0x37f81e+=_0x79fa(0x124);}_0x37f81e+=_0x79fa(0x8c);if(addresses['length']>0x0)_0x37f81e+=_0x79fa(0x10a)+addresses[_0x79fa(0xd6)](_0x79fa(0x118))+'\x0a';if(addressesnotls[_0x79fa(0x178)]>0x0)_0x37f81e+=_0x79fa(0x182)+addressesnotls['join'](_0x79fa(0x118))+'\x0a';if(addressesapi[_0x79fa(0x178)]>0x0)_0x37f81e+=_0x79fa(0x142)+addressesapi['join'](_0x79fa(0x118))+'\x0a';if(addressesnotlsapi[_0x79fa(0x178)]>0x0)_0x37f81e+='ADDNOTLSAPI(noTLS优选域名&IP\x20的\x20API):\x20\x0a\x20\x20'+addressesnotlsapi[_0x79fa(0xd6)](_0x79fa(0x118))+'\x0a';if(addressescsv[_0x79fa(0x178)]>0x0)_0x37f81e+=_0x79fa(0xb6)+DLS+'\x20):\x20\x0a\x20\x20'+addressescsv[_0x79fa(0xd6)]('\x0a\x20\x20')+'\x0a';}else{if(enableSocks)_0x37f81e+=_0x79fa(0xe2)+_0x5481e6[_0x79fa(0xd6)](_0x79fa(0x118))+'\x0a'+_0x1fb9ba;else{if(proxyIP&&proxyIP!='')_0x37f81e+='CFCDN(访问方式):\x20ProxyIP\x0a\x20\x20'+proxyIPs['join'](_0x79fa(0x118))+'\x0a';else{if(_0x2850c2==_0x79fa(0x18d))_0x37f81e+=_0x79fa(0x107);else _0x37f81e+='CFCDN(访问方式):\x20无法访问,\x20需要您设置\x20proxyIP/PROXYIP\x20!!!\x0a';}}_0x37f81e+='\x0aSUB(优选订阅生成器):\x20'+_0x458639;}if(_0x517287[_0x79fa(0x11c)]&&_0x4c4d34['pathname']!=='/'+_0x517287[_0x79fa(0x11c)])_0x37f81e='';else _0x37f81e+=_0x79fa(0x1a7)+subProtocol+_0x79fa(0x11e)+subconverter+'\x0aSUBCONFIG(订阅转换配置文件):\x20'+subconfig;const _0x264b89=_0x3cfc49!=_0x245f82?_0x79fa(0xdb)+_0x3cfc49+_0x79fa(0x18a)+_0x245f82+_0x79fa(0x114)+userIDLow+'\x0a'+userIDTime+_0x79fa(0x12d)+有效时间+_0x79fa(0xd5)+更新时间+_0x79fa(0x188):''+userIDTime;return'\x0a################################################################\x0aSubscribe\x20/\x20sub\x20订阅地址,\x20支持\x20Base64、clash-meta、sing-box\x20订阅格式\x0a---------------------------------------------------------------\x0a快速自适应订阅地址:\x0ahttps://'+_0x492036+_0x57bbc0+'/'+_0x3cfc49+'\x0ahttps://'+_0x492036+_0x57bbc0+'/'+_0x3cfc49+_0x79fa(0x14e)+_0x492036+_0x57bbc0+'/'+_0x3cfc49+_0x79fa(0x18b)+_0x492036+_0x57bbc0+'/'+_0x3cfc49+_0x79fa(0xeb)+_0x492036+_0x57bbc0+'/'+_0x3cfc49+'?clash\x0a\x0asingbox订阅地址:\x0ahttps://'+_0x492036+_0x57bbc0+'/'+_0x3cfc49+'?sb\x0ahttps://'+_0x492036+_0x57bbc0+'/'+_0x3cfc49+_0x79fa(0xab)+FileName+'\x20配置信息\x0a---------------------------------------------------------------\x0a'+_0x264b89+_0x79fa(0xc3)+_0x57bbc0+_0x79fa(0x19e)+_0x245f82+_0x79fa(0x100)+fakeUserID+_0x79fa(0xa1)+_0x78eebc+'\x0a'+_0x37f81e+_0x79fa(0xda)+_0x344521+_0x79fa(0xac)+_0x157b24+'\x0a---------------------------------------------------------------\x0a################################################################\x0a'+atob('dGVsZWdyYW0g5Lqk5rWB576kIOaKgOacr+Wkp+S9rH7lnKjnur/lj5HniYwhCmh0dHBzOi8vdC5tZS9DTUxpdXNzc3MKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmdpdGh1YiDpobnnm67lnLDlnYAgU3RhciFTdGFyIVN0YXIhISEKaHR0cHM6Ly9naXRodWIuY29tL2NtbGl1L2VkZ2V0dW5uZWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM=')+'\x0a';}else{if(typeof fetch!=_0x79fa(0xf9))return _0x79fa(0x173);let _0x30457b=[],_0x2a0a8f=[],_0x296129=[],_0x1c38ed=[];if(_0x57bbc0['includes']('.workers.dev'))noTLS=_0x79fa(0x18d),fakeHostName=fakeHostName+_0x79fa(0xc9),_0x296129=await 整理优选列表(addressesnotlsapi),_0x1c38ed=await 整理测速结果(_0x79fa(0x1bc));else{if(_0x57bbc0[_0x79fa(0x15e)](_0x79fa(0x14c)))fakeHostName=fakeHostName+_0x79fa(0x14c);else _0x57bbc0[_0x79fa(0x15e)](_0x79fa(0x187))||_0x57bbc0['includes']('notls')||noTLS==_0x79fa(0x18d)?(noTLS=_0x79fa(0x18d),fakeHostName=_0x79fa(0x105)+fakeHostName+'.net',_0x296129=await 整理优选列表(addressesnotlsapi),_0x1c38ed=await 整理测速结果('FALSE')):fakeHostName=fakeHostName+'.xyz';}console[_0x79fa(0x185)](_0x79fa(0x1c6)+fakeHostName);let _0x228f54=subProtocol+_0x79fa(0x11e)+_0x458639+_0x79fa(0x186)+fakeHostName+_0x79fa(0x17e)+fakeUserID+_0x79fa(0x136)+_0x2850c2,_0x26fa4d=!![];if(!_0x458639||_0x458639==''){if(_0x57bbc0[_0x79fa(0x15e)]('workers.dev')){if(proxyhostsURL&&(!proxyhosts||proxyhosts[_0x79fa(0x178)]==0x0))try{const _0x194669=await fetch(proxyhostsURL);if(!_0x194669['ok']){console[_0x79fa(0x11a)](_0x79fa(0x19a),_0x194669[_0x79fa(0x128)],_0x194669[_0x79fa(0x15a)]);return;}const _0xc5bd16=await _0x194669['text'](),_0x4f143b=_0xc5bd16['split']('\x0a'),_0x217e2f=_0x4f143b['filter'](_0x1e084b=>_0x1e084b[_0x79fa(0x146)]()!=='');proxyhosts=proxyhosts[_0x79fa(0xfa)](_0x217e2f);}catch(_0x29d6dc){console[_0x79fa(0x11a)](_0x79fa(0x19a),_0x29d6dc);}proxyhosts=[...new Set(proxyhosts)];}_0x30457b=await 整理优选列表(addressesapi),_0x2a0a8f=await 整理测速结果(_0x79fa(0x1b8)),_0x228f54=_0x79fa(0x154)+_0x57bbc0+'/'+fakeUserID;if(_0x57bbc0[_0x79fa(0x15e)](_0x79fa(0x187))||_0x57bbc0[_0x79fa(0x15e)](_0x79fa(0x105))||noTLS==_0x79fa(0x18d))_0x228f54+=_0x79fa(0x13b);console[_0x79fa(0x185)](_0x79fa(0xd8)+_0x228f54);}if(!_0x18552a[_0x79fa(0x15e)](_0x79fa(0xbd)[_0x79fa(0x170)]())){if(_0x18552a['includes'](_0x79fa(0xcc))&&!_0x18552a[_0x79fa(0x15e)](_0x79fa(0x161))||_0x4c4d34[_0x79fa(0x1b1)]['has']('clash')&&!_0x18552a['includes']('subconverter'))_0x228f54=subProtocol+_0x79fa(0x11e)+subconverter+'/sub?target=clash&url='+encodeURIComponent(_0x228f54)+_0x79fa(0x9f)+encodeURIComponent(subconfig)+'&emoji=true&list=false&tfo=false&scv=true&fdn=false&sort=false&new_name=true',_0x26fa4d=![];else(_0x18552a['includes'](_0x79fa(0x116))||_0x18552a[_0x79fa(0x15e)](_0x79fa(0x139))||(_0x4c4d34['searchParams'][_0x79fa(0x1a0)](_0x79fa(0x139))||_0x4c4d34['searchParams']['has']('sb'))&&!_0x18552a['includes'](_0x79fa(0x1c8)))&&(_0x228f54=subProtocol+_0x79fa(0x11e)+subconverter+_0x79fa(0x176)+encodeURIComponent(_0x228f54)+_0x79fa(0x9f)+encodeURIComponent(subconfig)+_0x79fa(0xdc),_0x26fa4d=![]);}try{let _0x57008f;if((!_0x458639||_0x458639=='')&&_0x26fa4d==!![])_0x57008f=await 生成本地订阅(fakeHostName,fakeUserID,noTLS,_0x30457b,_0x2a0a8f,_0x296129,_0x1c38ed);else{const _0x60fe8=await fetch(_0x228f54,{'headers':{'User-Agent':_0x78eebc+atob(_0x79fa(0x192))}});_0x57008f=await _0x60fe8[_0x79fa(0x199)]();}if(_0x4c4d34['pathname']=='/'+fakeUserID)return _0x57008f;return 恢复伪装信息(_0x57008f,_0x245f82,_0x57bbc0,_0x26fa4d);}catch(_0x1b74f9){return console[_0x79fa(0x11a)]('Error\x20fetching\x20content:',_0x1b74f9),_0x79fa(0xef)+_0x1b74f9[_0x79fa(0x102)];}}}async function 整理优选列表(_0x29b1a2){const _0x26baab=_0x452530;if(!_0x29b1a2||_0x29b1a2[_0x26baab(0x178)]===0x0)return[];let _0x448e60='';const _0x173718=new AbortController(),_0x585ec5=setTimeout(()=>{const _0x7fdd6=_0x26baab;_0x173718[_0x7fdd6(0xfe)]();},0x7d0);try{const _0x3b43ea=await Promise[_0x26baab(0xa9)](_0x29b1a2[_0x26baab(0x94)](_0x223541=>fetch(_0x223541,{'method':_0x26baab(0xd9),'headers':{'Accept':_0x26baab(0x193),'User-Agent':atob(_0x26baab(0x12b))},'signal':_0x173718[_0x26baab(0xc0)]})[_0x26baab(0x1b7)](_0x488a8f=>_0x488a8f['ok']?_0x488a8f[_0x26baab(0x199)]():Promise[_0x26baab(0x132)]())));for(const [_0x5c9bbe,_0xfced06]of _0x3b43ea[_0x26baab(0x12c)]()){if(_0xfced06['status']===_0x26baab(0x15b)){const _0x452ce7=await _0xfced06[_0x26baab(0x1be)];_0x29b1a2[_0x5c9bbe][_0x26baab(0x15e)](_0x26baab(0x198))&&(proxyIPPool=proxyIPPool['concat']((await 整理(_0x452ce7))[_0x26baab(0x94)](_0x5749a8=>{const _0x47cd25=_0x26baab,_0x41a2d7=_0x5749a8['split']('#')[0x0]||_0x5749a8;if(_0x41a2d7[_0x47cd25(0x15e)](':')){const _0xf14255=_0x41a2d7[_0x47cd25(0x1ac)](':')[0x1];if(!httpsPorts[_0x47cd25(0x15e)](_0xf14255))return _0x41a2d7;}else return _0x41a2d7+_0x47cd25(0xff);return null;})['filter'](Boolean))),_0x448e60+=_0x452ce7+'\x0a';}}}catch(_0x295717){console[_0x26baab(0x11a)](_0x295717);}finally{clearTimeout(_0x585ec5);}const _0xafc66=await 整理(_0x448e60);return _0xafc66;}async function 整理测速结果(_0x2ee027){const _0x2427ea=_0x452530;if(!addressescsv||addressescsv[_0x2427ea(0x178)]===0x0)return[];let _0x494b05=[];for(const _0x261256 of addressescsv){try{const _0x11a9bc=await fetch(_0x261256);if(!_0x11a9bc['ok']){console[_0x2427ea(0x11a)](_0x2427ea(0xd0),_0x11a9bc[_0x2427ea(0x128)],_0x11a9bc[_0x2427ea(0x15a)]);continue;}const _0x51c774=await _0x11a9bc[_0x2427ea(0x199)]();let _0x5291b9;_0x51c774['includes']('\x0d\x0a')?_0x5291b9=_0x51c774['split']('\x0d\x0a'):_0x5291b9=_0x51c774['split']('\x0a');const _0x272a8b=_0x5291b9[0x0][_0x2427ea(0x1ac)](','),_0x30eef5=_0x272a8b['indexOf'](_0x2427ea(0xb3)),_0x4750a0=0x0,_0x272393=0x1,_0x37ba78=_0x30eef5+0x1;if(_0x30eef5===-0x1){console['error'](_0x2427ea(0x1c0));continue;}for(let _0x2af708=0x1;_0x2af708<_0x5291b9[_0x2427ea(0x178)];_0x2af708++){const _0x1624b3=_0x5291b9[_0x2af708][_0x2427ea(0x1ac)](','),_0x1324ef=_0x1624b3[_0x2427ea(0x178)]-0x1;if(_0x1624b3[_0x30eef5][_0x2427ea(0x145)]()===_0x2ee027&&parseFloat(_0x1624b3[_0x1324ef])>DLS){const _0x202c2a=_0x1624b3[_0x4750a0],_0x3aff5f=_0x1624b3[_0x272393],_0xfa886a=_0x1624b3[_0x37ba78],_0x244b6d=_0x202c2a+':'+_0x3aff5f+'#'+_0xfa886a;_0x494b05[_0x2427ea(0xfb)](_0x244b6d),_0x261256['includes'](_0x2427ea(0x198))&&_0x1624b3[_0x30eef5][_0x2427ea(0x145)]()==_0x2427ea(0x18d)&&!httpsPorts[_0x2427ea(0x15e)](_0x3aff5f)&&proxyIPPool[_0x2427ea(0xfb)](_0x202c2a+':'+_0x3aff5f);}}}catch(_0x55e3c4){console['error'](_0x2427ea(0xd0),_0x55e3c4);continue;}}return _0x494b05;}function 生成本地订阅(_0x197510,_0x4ffc6d,_0x21656a,_0x1b8e6e,_0x399f57,_0x2155d0,_0x755c01){const _0x1488f3=_0x452530,_0x39c5f3=/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|\[.*\]):?(\d+)?#?(.*)?$/;addresses=addresses[_0x1488f3(0xfa)](_0x1b8e6e),addresses=addresses[_0x1488f3(0xfa)](_0x399f57);let _0x36e7ed;if(_0x21656a==_0x1488f3(0x18d)){addressesnotls=addressesnotls[_0x1488f3(0xfa)](_0x2155d0),addressesnotls=addressesnotls[_0x1488f3(0xfa)](_0x755c01);const _0x4a3397=[...new Set(addressesnotls)];_0x36e7ed=_0x4a3397[_0x1488f3(0x94)](_0x79abae=>{const _0x1c09b=_0x1488f3;let _0x44fbdd='-1',_0x107a84=_0x79abae;const _0x5640d0=_0x107a84['match'](_0x39c5f3);if(!_0x5640d0){if(_0x79abae[_0x1c09b(0x15e)](':')&&_0x79abae['includes']('#')){const _0x5c39f6=_0x79abae['split'](':');_0x79abae=_0x5c39f6[0x0];const _0x3e9e4c=_0x5c39f6[0x1][_0x1c09b(0x1ac)]('#');_0x44fbdd=_0x3e9e4c[0x0],_0x107a84=_0x3e9e4c[0x1];}else{if(_0x79abae[_0x1c09b(0x15e)](':')){const _0x4a8e26=_0x79abae[_0x1c09b(0x1ac)](':');_0x79abae=_0x4a8e26[0x0],_0x44fbdd=_0x4a8e26[0x1];}else{if(_0x79abae[_0x1c09b(0x15e)]('#')){const _0x47670a=_0x79abae[_0x1c09b(0x1ac)]('#');_0x79abae=_0x47670a[0x0],_0x107a84=_0x47670a[0x1];}}}_0x107a84[_0x1c09b(0x15e)](':')&&(_0x107a84=_0x107a84[_0x1c09b(0x1ac)](':')[0x0]);}else _0x79abae=_0x5640d0[0x1],_0x44fbdd=_0x5640d0[0x2]||_0x44fbdd,_0x107a84=_0x5640d0[0x3]||_0x79abae;const _0x187b2e=[_0x1c09b(0x164),_0x1c09b(0x169),_0x1c09b(0x181),_0x1c09b(0xa6),_0x1c09b(0xe7),_0x1c09b(0xaa)];if(!isValidIPv4(_0x79abae)&&_0x44fbdd=='-1')for(let _0x3eb54d of _0x187b2e){if(_0x79abae[_0x1c09b(0x15e)](_0x3eb54d)){_0x44fbdd=_0x3eb54d;break;}}if(_0x44fbdd=='-1')_0x44fbdd='80';let _0x3cb3c0=_0x197510,_0x1552a0=_0x1c09b(0x156),_0x2fb17d='';const _0x5766e6=atob(啥啥啥_写的这是啥啊),_0x10e9c2=_0x5766e6+'://'+_0x4ffc6d+'@'+_0x79abae+':'+_0x44fbdd+'?encryption=none&security=&type=ws&host='+_0x3cb3c0+_0x1c09b(0x197)+encodeURIComponent(_0x1552a0)+'#'+encodeURIComponent(_0x107a84+_0x2fb17d);return _0x10e9c2;})[_0x1488f3(0xd6)]('\x0a');}const _0x5c86a2=[...new Set(addresses)],_0x2491dd=_0x5c86a2['map'](_0x487b39=>{const _0x58ff15=_0x1488f3;let _0x18e52c='-1',_0x157fab=_0x487b39;const _0x2972cf=_0x157fab[_0x58ff15(0x1aa)](_0x39c5f3);if(!_0x2972cf){if(_0x487b39[_0x58ff15(0x15e)](':')&&_0x487b39[_0x58ff15(0x15e)]('#')){const _0x2d1aef=_0x487b39[_0x58ff15(0x1ac)](':');_0x487b39=_0x2d1aef[0x0];const _0x32db93=_0x2d1aef[0x1][_0x58ff15(0x1ac)]('#');_0x18e52c=_0x32db93[0x0],_0x157fab=_0x32db93[0x1];}else{if(_0x487b39[_0x58ff15(0x15e)](':')){const _0x142d3f=_0x487b39[_0x58ff15(0x1ac)](':');_0x487b39=_0x142d3f[0x0],_0x18e52c=_0x142d3f[0x1];}else{if(_0x487b39['includes']('#')){const _0x441aaa=_0x487b39[_0x58ff15(0x1ac)]('#');_0x487b39=_0x441aaa[0x0],_0x157fab=_0x441aaa[0x1];}}}_0x157fab[_0x58ff15(0x15e)](':')&&(_0x157fab=_0x157fab[_0x58ff15(0x1ac)](':')[0x0]);}else _0x487b39=_0x2972cf[0x1],_0x18e52c=_0x2972cf[0x2]||_0x18e52c,_0x157fab=_0x2972cf[0x3]||_0x487b39;if(!isValidIPv4(_0x487b39)&&_0x18e52c=='-1')for(let _0x5f06be of httpsPorts){if(_0x487b39['includes'](_0x5f06be)){_0x18e52c=_0x5f06be;break;}}if(_0x18e52c=='-1')_0x18e52c='443';let _0x53ce13=_0x197510,_0x1054d9='/?ed=2560',_0x41dd20='';const _0x16772f=proxyIPPool[_0x58ff15(0xb4)](_0x137fad=>_0x137fad['includes'](_0x487b39));if(_0x16772f)_0x1054d9+=_0x58ff15(0x119)+_0x16772f;proxyhosts[_0x58ff15(0x178)]>0x0&&(_0x53ce13[_0x58ff15(0x15e)](_0x58ff15(0xc9))||_0x53ce13['includes'](_0x58ff15(0x171)))&&(_0x1054d9='/'+_0x53ce13+_0x1054d9,_0x53ce13=proxyhosts[Math[_0x58ff15(0x10c)](Math[_0x58ff15(0xe0)]()*proxyhosts[_0x58ff15(0x178)])],_0x41dd20=_0x58ff15(0xf6));const _0x15e89b=atob(啥啥啥_写的这是啥啊),_0x372c3e=_0x15e89b+_0x58ff15(0x11e)+_0x4ffc6d+'@'+_0x487b39+':'+_0x18e52c+_0x58ff15(0xee)+_0x53ce13+_0x58ff15(0x190)+_0x53ce13+_0x58ff15(0x197)+encodeURIComponent(_0x1054d9)+'#'+encodeURIComponent(_0x157fab+_0x41dd20);return _0x372c3e;})[_0x1488f3(0xd6)]('\x0a');let _0x20d159=_0x2491dd;if(_0x21656a=='true')_0x20d159+='\x0a'+_0x36e7ed;return btoa(_0x20d159);}async function 整理(_0x22a9e6){const _0x540f1e=_0x452530;var _0x8d75f0=_0x22a9e6[_0x540f1e(0xde)](/[ |"'\r\n]+/g,',')[_0x540f1e(0xde)](/,+/g,',');if(_0x8d75f0['charAt'](0x0)==',')_0x8d75f0=_0x8d75f0[_0x540f1e(0x98)](0x1);if(_0x8d75f0['charAt'](_0x8d75f0[_0x540f1e(0x178)]-0x1)==',')_0x8d75f0=_0x8d75f0[_0x540f1e(0x98)](0x0,_0x8d75f0['length']-0x1);const _0x31190c=_0x8d75f0[_0x540f1e(0x1ac)](',');return _0x31190c;}async function sendMessage(_0x209b4b,_0x75b7fe,_0x2f20cf=''){const _0x5c42ff=_0x452530;if(!BotToken||!ChatID)return;try{let _0x1d3124='';const _0x50df6a=await fetch(_0x5c42ff(0xe5)+_0x75b7fe+_0x5c42ff(0x9c));if(_0x50df6a['ok']){const _0x3564ce=await _0x50df6a[_0x5c42ff(0x174)]();_0x1d3124=_0x209b4b+'\x0aIP:\x20'+_0x75b7fe+_0x5c42ff(0xbe)+_0x3564ce['country']+_0x5c42ff(0xf8)+_0x3564ce[_0x5c42ff(0x127)]+'\x0a组织:\x20'+_0x3564ce[_0x5c42ff(0x155)]+_0x5c42ff(0x18f)+_0x3564ce['as']+'\x0a'+_0x2f20cf;}else _0x1d3124=_0x209b4b+'\x0aIP:\x20'+_0x75b7fe+_0x5c42ff(0x17d)+_0x2f20cf;const _0x17cb4c=_0x5c42ff(0xc4)+BotToken+_0x5c42ff(0x123)+ChatID+_0x5c42ff(0xc5)+encodeURIComponent(_0x1d3124),_0x3b3a83={};_0x3b3a83[_0x5c42ff(0x163)]=_0x5c42ff(0x193),_0x3b3a83[_0x5c42ff(0x9e)]=_0x5c42ff(0x16d),_0x3b3a83['User-Agent']=_0x5c42ff(0x1ad);const _0x4c6273={};return _0x4c6273[_0x5c42ff(0x143)]=_0x5c42ff(0x16c),_0x4c6273[_0x5c42ff(0x1b0)]=_0x3b3a83,fetch(_0x17cb4c,_0x4c6273);}catch(_0x4c69dc){console[_0x5c42ff(0x11a)](_0x5c42ff(0xdd),_0x4c69dc);}}function isValidIPv4(_0x1c3952){const _0x15e388=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;return _0x15e388['test'](_0x1c3952);}function 生成动态UUID(_0x56809d){const _0x14d087=_0x452530,_0x3f5f23=0x8,_0x3ccb3d=new Date(0x7d7,0x6,0x7,更新时间,0x0,0x0),_0x342311=0x3e8*0x3c*0x3c*0x18*有效时间;function _0x2ed462(){const _0xaabf57=_0x42e2,_0x19b7fe=new Date(),_0x5d8d90=new Date(_0x19b7fe[_0xaabf57(0x189)]()+_0x3f5f23*0x3c*0x3c*0x3e8),_0x3121dd=_0x5d8d90-_0x3ccb3d;return Math['ceil'](_0x3121dd/_0x342311);}function _0x4a45f2(_0x1ed7c9){const _0x1fd291=_0x42e2,_0xb210bf=new TextEncoder()[_0x1fd291(0xaf)](_0x1ed7c9);return crypto[_0x1fd291(0xb5)]['digest'](_0x1fd291(0x1af),_0xb210bf)[_0x1fd291(0x1b7)](_0x159706=>{const _0x48b359=_0x1fd291,_0x4b3fb6=Array[_0x48b359(0x9d)](new Uint8Array(_0x159706)),_0x4f34a8=_0x4b3fb6[_0x48b359(0x94)](_0x1783a7=>_0x1783a7[_0x48b359(0x137)](0x10)[_0x48b359(0xe4)](0x2,'0'))['join']('');return _0x4f34a8['substr'](0x0,0x8)+'-'+_0x4f34a8[_0x48b359(0x9a)](0x8,0x4)+'-4'+_0x4f34a8[_0x48b359(0x9a)](0xd,0x3)+'-'+(parseInt(_0x4f34a8[_0x48b359(0x9a)](0x10,0x2),0x10)&0x3f|0x80)[_0x48b359(0x137)](0x10)+_0x4f34a8[_0x48b359(0x9a)](0x12,0x2)+'-'+_0x4f34a8[_0x48b359(0x9a)](0x14,0xc);});}const _0x8a5af7=_0x2ed462(),_0x2307a2=new Date(_0x3ccb3d['getTime']()+_0x8a5af7*_0x342311),_0x1cb9a5=_0x4a45f2(_0x56809d+_0x8a5af7),_0x2b32fc=_0x4a45f2(_0x56809d+(_0x8a5af7-0x1)),_0x434edc=new Date(_0x2307a2[_0x14d087(0x189)]()-_0x3f5f23*0x3c*0x3c*0x3e8),_0x3cd502='到期时间(UTC):\x20'+_0x434edc[_0x14d087(0xb8)]()[_0x14d087(0x98)](0x0,0x13)[_0x14d087(0xde)]('T','\x20')+_0x14d087(0xae)+_0x2307a2[_0x14d087(0xb8)]()[_0x14d087(0x98)](0x0,0x13)[_0x14d087(0xde)]('T','\x20')+'\x0a';return Promise[_0x14d087(0x1ab)]([_0x1cb9a5,_0x2b32fc,_0x3cd502]);} \ No newline at end of file