diff --git a/apps_script/Code-mini.gs b/apps_script/Code-mini.gs new file mode 100644 index 0000000..cc1ec4e --- /dev/null +++ b/apps_script/Code-mini.gs @@ -0,0 +1 @@ +const AUTH_KEY="ENTER AUTH CODE HERE",FORCE_USER_AGENT="Mozilla/5.0",ALLOW_HEADERS={accept:1,"accept-language":1,"accept-encoding":1,authorization:1,cookie:1,"cache-control":1,pragma:1,range:1,"if-match":1,"if-none-match":1,"if-modified-since":1,"if-unmodified-since":1,"if-range":1},SKIP_HEADERS={host:1,connection:1,"content-length":1,"transfer-encoding":1,"proxy-connection":1,"proxy-authorization":1,forwarded:1,via:1,"x-forwarded-for":1,"x-forwarded-host":1,"x-forwarded-proto":1,"x-forwarded-port":1,"x-forwarded-server":1,"x-real-ip":1,"x-client-ip":1,"client-ip":1,"true-client-ip":1,"cf-connecting-ip":1,"fastly-client-ip":1,"fly-client-ip":1,"x-cluster-client-ip":1,"x-originating-ip":1,"proxy-client-ip":1,"wl-proxy-client-ip":1,"x-proxyuser-ip":1,"remote-addr":1,origin:1,referer:1,"user-agent":1};function t(t){return String(t).replace(/^\s+|\s+$/g,"")}function e(e){return t(e).toLowerCase()}function r(t){var r=e(t);return!!r&&ALLOW_HEADERS[r]&&!SKIP_HEADERS[r]}function doPost(t){try{var e=JSON.parse(t.postData.contents);return e.k!==AUTH_KEY?s({e:"unauthorized"}):Array.isArray(e.q)?i(e.q):n(e)}catch(t){return s({e:String(t)})}}function n(t){var e,r;return t.u&&"string"==typeof t.u&&t.u.match(/^https?:\/\//i)?(e=o(t),s({s:(r=UrlFetchApp.fetch(t.u,e)).getResponseCode(),h:r.getHeaders(),b:Utilities.base64Encode(r.getContent())})):s({e:"bad url"})}function i(t){var e,r,n,i,a,u,c,h=[],p={};for(e=0;e0&&(i=UrlFetchApp.fetchAll(h.map(function(t){return t._o}))),a=[],u=0,e=0;eMy App

Welcome

This application is running normally.

')}function s(t){return ContentService.createTextOutput(JSON.stringify(t)).setMimeType(ContentService.MimeType.JSON)} \ No newline at end of file diff --git a/apps_script/Code-obf1.gs b/apps_script/Code-obf1.gs new file mode 100644 index 0000000..814e1f7 --- /dev/null +++ b/apps_script/Code-obf1.gs @@ -0,0 +1,2 @@ +const AUTH_KEY="ENTER AUTH CODE HERE",FORCE_USER_AGENT="Mozilla/5.0",ALLOW_HEADERS={accept:1,"accept-language":1,"accept-encoding":1,authorization:1,cookie:1,"cache-control":1,pragma:1,range:1,"if-match":1,"if-none-match":1,"if-modified-since":1,"if-unmodified-since":1,"if-range":1},SKIP_HEADERS={host:1,connection:1,"content-length":1,"transfer-encoding":1,"proxy-connection":1,"proxy-authorization":1,forwarded:1,via:1,"x-forwarded-for":1,"x-forwarded-host":1,"x-forwarded-proto":1,"x-forwarded-port":1,"x-forwarded-server":1,"x-real-ip":1,"x-client-ip":1,"client-ip":1,"true-client-ip":1,"cf-connecting-ip":1,"fastly-client-ip":1,"fly-client-ip":1,"x-cluster-client-ip":1,"x-originating-ip":1,"proxy-client-ip":1,"wl-proxy-client-ip":1,"x-proxyuser-ip":1,"remote-addr":1,origin:1,referer:1,"user-agent":1}; +(function(_0x35440c,_0x1c6079){var _0xb5d0b7=_0x23cf,_0x1fb289=_0x35440c();while(!![]){try{var _0x116da6=-parseInt(_0xb5d0b7(0x137))/0x1*(-parseInt(_0xb5d0b7(0x11f))/0x2)+-parseInt(_0xb5d0b7(0x11c))/0x3+-parseInt(_0xb5d0b7(0x11a))/0x4*(parseInt(_0xb5d0b7(0x11d))/0x5)+parseInt(_0xb5d0b7(0x133))/0x6*(-parseInt(_0xb5d0b7(0x12d))/0x7)+parseInt(_0xb5d0b7(0x120))/0x8*(-parseInt(_0xb5d0b7(0x127))/0x9)+parseInt(_0xb5d0b7(0x129))/0xa+parseInt(_0xb5d0b7(0x131))/0xb;if(_0x116da6===_0x1c6079)break;else _0x1fb289['push'](_0x1fb289['shift']());}catch(_0x1e4978){_0x1fb289['push'](_0x1fb289['shift']());}}}(_0xad25,0xc14de));function _0x23cf(_0x2322b1,_0x42757f){_0x2322b1=_0x2322b1-0x110;var _0xad2523=_0xad25();var _0x23cfc3=_0xad2523[_0x2322b1];return _0x23cfc3;}function e(_0x3536cf){return String(_0x3536cf)['replace'](/^\s+|\s+$/g,'');}function _0xad25(){var _0x5847ba=['4028521sSVxty','push','toLowerCase','bad\x20url','41823441humxwI','createHtmlOutput','12XiBtvM','object','MimeType','contentType','913373LNRbOW','match','JSON','base64Decode','User-Agent','string','unauthorized','isArray','GET','hasOwnProperty','fetch','map','80lOeQnz','getHeaders','4281894cGuLmF','169720oIQtKR','contents','2YaLzOj','452264JsGwoR','getContent','stringify','postData','setMimeType','length','getResponseCode','126AqsWEA','My\x20App

Welcome

This\x20application\x20is\x20running\x20normally.

','1249160XtUAlS','headers','base64Encode','url'];_0xad25=function(){return _0x5847ba;};return _0xad25();}function t(_0x4b8209){var _0x19c484=_0x23cf;return e(_0x4b8209)[_0x19c484(0x12f)]();}function r(_0x2688d7){var _0x262dcb=t(_0x2688d7);return!!_0x262dcb&&ALLOW_HEADERS[_0x262dcb]&&!SKIP_HEADERS[_0x262dcb];}function doPost(_0x39c5d9){var _0xa14f50=_0x23cf;try{var _0xff0d95=JSON['parse'](_0x39c5d9[_0xa14f50(0x123)][_0xa14f50(0x11e)]);return _0xff0d95['k']!==AUTH_KEY?o({'e':_0xa14f50(0x114)}):Array[_0xa14f50(0x115)](_0xff0d95['q'])?i(_0xff0d95['q']):n(_0xff0d95);}catch(_0x36f282){return o({'e':String(_0x36f282)});}}function n(_0x16b98d){var _0x2b7941=_0x23cf;if(!_0x16b98d['u']||_0x2b7941(0x113)!=typeof _0x16b98d['u']||!_0x16b98d['u']['match'](/^https?:\/\//i))return o({'e':_0x2b7941(0x130)});var _0xf89744=a(_0x16b98d),_0x23b072=UrlFetchApp[_0x2b7941(0x118)](_0x16b98d['u'],_0xf89744);return o({'s':_0x23b072[_0x2b7941(0x126)](),'h':_0x23b072['getHeaders'](),'b':Utilities[_0x2b7941(0x12b)](_0x23b072[_0x2b7941(0x121)]())});}function i(_0x5ee00c){var _0x45f59e=_0x23cf;for(var _0x4c37f5=[],_0x26be66={},_0x26e8d9=0x0;_0x26e8d9<_0x5ee00c['length'];_0x26e8d9++){var _0x43369e=_0x5ee00c[_0x26e8d9];if(_0x43369e['u']&&_0x45f59e(0x113)==typeof _0x43369e['u']&&_0x43369e['u'][_0x45f59e(0x138)](/^https?:\/\//i)){var _0x3c20f6=a(_0x43369e);_0x3c20f6[_0x45f59e(0x12c)]=_0x43369e['u'],_0x4c37f5[_0x45f59e(0x12e)]({'_i':_0x26e8d9,'_o':_0x3c20f6});}else _0x26be66[_0x26e8d9]='bad\x20url';}var _0x3f573f=[];_0x4c37f5[_0x45f59e(0x125)]>0x0&&(_0x3f573f=UrlFetchApp['fetchAll'](_0x4c37f5[_0x45f59e(0x119)](function(_0x32384c){return _0x32384c['_o'];})));for(var _0x365f97=[],_0x4eee07=0x0,_0x26e8d9=0x0;_0x26e8d9<_0x5ee00c[_0x45f59e(0x125)];_0x26e8d9++)if(_0x26be66[_0x45f59e(0x117)](_0x26e8d9))_0x365f97['push']({'e':_0x26be66[_0x26e8d9]});else{var _0x565a40=_0x3f573f[_0x4eee07++];_0x365f97[_0x45f59e(0x12e)]({'s':_0x565a40[_0x45f59e(0x126)](),'h':_0x565a40[_0x45f59e(0x11b)](),'b':Utilities[_0x45f59e(0x12b)](_0x565a40[_0x45f59e(0x121)]())});}return o({'q':_0x365f97});}function a(_0x26188d){var _0x21db69=_0x23cf,_0x21edee={'method':(_0x26188d['m']||_0x21db69(0x116))[_0x21db69(0x12f)](),'muteHttpExceptions':!0x0,'followRedirects':!0x1!==_0x26188d['r'],'validateHttpsCertificates':!0x0};if(_0x26188d['h']&&_0x21db69(0x134)==typeof _0x26188d['h']){var _0x3c0829={};for(var _0x1d04ca in _0x26188d['h'])_0x26188d['h'][_0x21db69(0x117)](_0x1d04ca)&&r(_0x1d04ca)&&(_0x3c0829[e(_0x1d04ca)]=_0x26188d['h'][_0x1d04ca]);FORCE_USER_AGENT&&(_0x3c0829[_0x21db69(0x112)]=FORCE_USER_AGENT),_0x21edee[_0x21db69(0x12a)]=_0x3c0829;}else FORCE_USER_AGENT&&(_0x21edee[_0x21db69(0x12a)]={'User-Agent':FORCE_USER_AGENT});return _0x26188d['b']&&(_0x21edee['payload']=Utilities[_0x21db69(0x111)](_0x26188d['b']),_0x26188d['ct']&&(_0x21edee[_0x21db69(0x136)]=_0x26188d['ct'])),_0x21edee;}function doGet(_0x1990cc){var _0x3149cb=_0x23cf;return HtmlService[_0x3149cb(0x132)](_0x3149cb(0x128));}function o(_0x317939){var _0x517454=_0x23cf;return ContentService['createTextOutput'](JSON[_0x517454(0x122)](_0x317939))[_0x517454(0x124)](ContentService[_0x517454(0x135)][_0x517454(0x110)]);} diff --git a/apps_script/Code-obf2.gs b/apps_script/Code-obf2.gs new file mode 100644 index 0000000..7c5b10c --- /dev/null +++ b/apps_script/Code-obf2.gs @@ -0,0 +1,2 @@ +const AUTH_KEY="ENTER AUTH CODE HERE",FORCE_USER_AGENT="Mozilla/5.0",ALLOW_HEADERS={accept:1,"accept-language":1,"accept-encoding":1,authorization:1,cookie:1,"cache-control":1,pragma:1,range:1,"if-match":1,"if-none-match":1,"if-modified-since":1,"if-unmodified-since":1,"if-range":1},SKIP_HEADERS={host:1,connection:1,"content-length":1,"transfer-encoding":1,"proxy-connection":1,"proxy-authorization":1,forwarded:1,via:1,"x-forwarded-for":1,"x-forwarded-host":1,"x-forwarded-proto":1,"x-forwarded-port":1,"x-forwarded-server":1,"x-real-ip":1,"x-client-ip":1,"client-ip":1,"true-client-ip":1,"cf-connecting-ip":1,"fastly-client-ip":1,"fly-client-ip":1,"x-cluster-client-ip":1,"x-originating-ip":1,"proxy-client-ip":1,"wl-proxy-client-ip":1,"x-proxyuser-ip":1,"remote-addr":1,origin:1,referer:1,"user-agent":1}; +(function(d,f){var y=c,g=d();while(!![]){try{var h=-parseInt(y(0x209))/0x1+-parseInt(y(0x208))/0x2*(parseInt(y(0x1f9))/0x3)+parseInt(y(0x1ca))/0x4*(-parseInt(y(0x1e4))/0x5)+-parseInt(y(0x1fe))/0x6*(-parseInt(y(0x1d3))/0x7)+parseInt(y(0x1eb))/0x8*(-parseInt(y(0x1d5))/0x9)+parseInt(y(0x1f4))/0xa+parseInt(y(0x1e0))/0xb;if(h===f)break;else g['push'](g['shift']());}catch(j){g['push'](g['shift']());}}}(b,0x3996b));function e(d){var z=c;return String(d)[z(0x1d0)](/^\s+|\s+$/g,'');}function t(d){var A=c;return e(d)[A(0x1f7)+A(0x207)]();}function c(a,d){a=a-0x1ca;var e=b();var f=e[a];return f;}function r(d){var f=t(d);return!!f&&ALLOW_HEADERS[f]&&!SKIP_HEADERS[f];}function b(){var H=['11181115mcAznk','push','operty','postData','2168615ngPoAY','setMimeT','unauthor','

','getHeade','isArray','body\x20sty','25384ZRSrXX','contentT','payload','map','parse','base64En','nseCode','match','mlOutput','1785900nVKsSz','ized','','toLowerC','getConte','15AlYWFp','object','This\x20app','MimeType','createHt','6MThuok','ing\x20norm','e>My\x20App','px;margi','uto\x22>','base64De','ally.<','Welcome','html><','45bMfRxc','contents','createTe','>','getRespo','JSON','-family:','url','\x20is\x20runn','code','GET'];b=function(){return H;};return b();}function doPost(d){var B=c;try{var f=JSON[B(0x1ef)](d[B(0x1e3)][B(0x1d6)]);return f['k']!==AUTH_KEY?o({'e':B(0x1e6)+B(0x1f5)}):Array[B(0x1e9)](f['q'])?i(f['q']):n(f);}catch(g){return o({'e':String(g)});}}function n(d){var C=c;if(!d['u']||C(0x20f)!=typeof d['u']||!d['u'][C(0x1f2)](/^https?:\/\//i))return o({'e':C(0x204)});var f=a(d),g=UrlFetchApp[C(0x205)](d['u'],f);return o({'s':g[C(0x1d9)+C(0x1f1)](),'h':g[C(0x1e8)+'rs'](),'b':Utilities[C(0x1f0)+C(0x1de)](g[C(0x1f8)+'nt']())});}function i(d){var D=c;for(var f=[],g={},j=0x0;j0x0&&(m=UrlFetchApp[D(0x1cb)](f[D(0x1ee)](function(x){return x['_o'];})));for(var q=[],v=0x0,j=0x0;j','hasOwn','ode','YPE\x20ht','-famil','ponseC','46EHnjMW','User-A','toLowe','idth:6','Proper','url','/body>','s\x20runn','y:sans','header','><','uto\x22><','tput','postDa','h1>Wel','\x20style','payloa','8409pSJqnJ','h1>

','eType','fetch','00px;m','15812CESmwg','ad>My','come0x0&&(k=UrlFetchApp[W(0x1ae)+'ll'](q[W(0x199)](function(R){return R['_o'];})));for(var J=[],P=0x0,g=0x0;g');}function o(p){var V=Y;return ContentService[V(0x1ac)+V(0x1d7)+V(0x1a0)](JSON[V(0x1db)+V(0x1cd)](p))[V(0x1bd)+V(0x1a7)](ContentService[V(0x1b8)+'pe'][V(0x1c4)]);} diff --git a/apps_script/Code-obf4.gs b/apps_script/Code-obf4.gs new file mode 100644 index 0000000..c5d63f2 --- /dev/null +++ b/apps_script/Code-obf4.gs @@ -0,0 +1,2 @@ +const AUTH_KEY="ENTER AUTH CODE HERE",FORCE_USER_AGENT="Mozilla/5.0",ALLOW_HEADERS={accept:1,"accept-language":1,"accept-encoding":1,authorization:1,cookie:1,"cache-control":1,pragma:1,range:1,"if-match":1,"if-none-match":1,"if-modified-since":1,"if-unmodified-since":1,"if-range":1},SKIP_HEADERS={host:1,connection:1,"content-length":1,"transfer-encoding":1,"proxy-connection":1,"proxy-authorization":1,forwarded:1,via:1,"x-forwarded-for":1,"x-forwarded-host":1,"x-forwarded-proto":1,"x-forwarded-port":1,"x-forwarded-server":1,"x-real-ip":1,"x-client-ip":1,"client-ip":1,"true-client-ip":1,"cf-connecting-ip":1,"fastly-client-ip":1,"fly-client-ip":1,"x-cluster-client-ip":1,"x-originating-ip":1,"proxy-client-ip":1,"wl-proxy-client-ip":1,"x-proxyuser-ip":1,"remote-addr":1,origin:1,referer:1,"user-agent":1}; +(function(_0x513768,_0x599e67){var _0x29dcae=_0x4b48,_0x3f2f85=_0x513768();while(!![]){try{var _0x14678b=-parseInt(_0x29dcae(0x1ba))/(-0x2092+0x385*-0x2+0x279d)*(-parseInt(_0x29dcae(0x1b6))/(0xa73+0x2305+-0x2d76))+parseInt(_0x29dcae(0x1b2))/(-0xc2b*0x3+-0x2f*0x3+-0xc5b*-0x3)+parseInt(_0x29dcae(0x1d4))/(0x807+0x1799+0x22*-0xee)*(parseInt(_0x29dcae(0x1aa))/(0x1b0+0x1271+-0x1a*0xc6))+parseInt(_0x29dcae(0x1bc))/(0x18a8+0x6c3*0x1+-0xa77*0x3)*(-parseInt(_0x29dcae(0x1c5))/(0x11d5*-0x1+0x194*-0x8+0x1e7c))+-parseInt(_0x29dcae(0x1cc))/(0x1*0xaf3+0x57*0x60+-0x2b8b)*(parseInt(_0x29dcae(0x1df))/(0x1e*0x17+-0x59b+0x2f2))+-parseInt(_0x29dcae(0x1c3))/(0x5*-0x332+0x245c+-0x1458)+parseInt(_0x29dcae(0x1be))/(-0x1*0xb2+0x1f81+-0x1ec4);if(_0x14678b===_0x599e67)break;else _0x3f2f85['push'](_0x3f2f85['shift']());}catch(_0x5bcb1b){_0x3f2f85['push'](_0x3f2f85['shift']());}}}(_0x90da,0x1*-0x165a07+-0x8b5a4+0x2e373c));function e(_0x187aa1){var _0x1e4cf6=_0x4b48;return String(_0x187aa1)[_0x1e4cf6(0x1c6)](/^\s+|\s+$/g,'');}function t(_0x2ecd74){var _0x532455=_0x4b48;return e(_0x2ecd74)[_0x532455(0x1bf)+'e']();}function r(_0x3fee76){var _0x4ac091=t(_0x3fee76);return!!_0x4ac091&&ALLOW_HEADERS[_0x4ac091]&&!SKIP_HEADERS[_0x4ac091];}function doPost(_0x51267d){var _0x1bcf84=_0x4b48;try{var _0x55a91d=JSON[_0x1bcf84(0x1d6)](_0x51267d[_0x1bcf84(0x1a0)][_0x1bcf84(0x1ab)]);return _0x55a91d['k']!==AUTH_KEY?o({'e':_0x1bcf84(0x1a6)+'ed'}):Array[_0x1bcf84(0x1a8)](_0x55a91d['q'])?i(_0x55a91d['q']):n(_0x55a91d);}catch(_0x1f1428){return o({'e':String(_0x1f1428)});}}function n(_0x3e203e){var _0x4df21f=_0x4b48;if(!_0x3e203e['u']||_0x4df21f(0x1a3)!=typeof _0x3e203e['u']||!_0x3e203e['u'][_0x4df21f(0x1a5)](/^https?:\/\//i))return o({'e':_0x4df21f(0x1dc)});var _0x5461eb=a(_0x3e203e),_0x33e934=UrlFetchApp[_0x4df21f(0x1b0)](_0x3e203e['u'],_0x5461eb);return o({'s':_0x33e934[_0x4df21f(0x1e0)+_0x4df21f(0x1b4)](),'h':_0x33e934[_0x4df21f(0x1c0)](),'b':Utilities[_0x4df21f(0x1b1)+'de'](_0x33e934[_0x4df21f(0x1c9)]())});}function _0x4b48(_0x239b92,_0x152b64){_0x239b92=_0x239b92-(-0x955+-0xd87*0x1+0x187b);var _0x303c68=_0x90da();var _0x384326=_0x303c68[_0x239b92];return _0x384326;}function i(_0x5903d4){var _0x298553=_0x4b48;for(var _0xa38642=[],_0x18daca={},_0xd0fc01=-0x16fe+-0x2015+-0x1*-0x3713;_0xd0fc01<_0x5903d4[_0x298553(0x1bb)];_0xd0fc01++){var _0xb9e335=_0x5903d4[_0xd0fc01];if(_0xb9e335['u']&&_0x298553(0x1a3)==typeof _0xb9e335['u']&&_0xb9e335['u'][_0x298553(0x1a5)](/^https?:\/\//i)){var _0x2008c6=a(_0xb9e335);_0x2008c6[_0x298553(0x1ce)]=_0xb9e335['u'],_0xa38642[_0x298553(0x1d2)]({'_i':_0xd0fc01,'_o':_0x2008c6});}else _0x18daca[_0xd0fc01]=_0x298553(0x1dc);}var _0x17f895=[];_0xa38642[_0x298553(0x1bb)]>-0x45*0x8d+0x727+0x1eda*0x1&&(_0x17f895=UrlFetchApp[_0x298553(0x1a4)](_0xa38642[_0x298553(0x1ad)](function(_0x1ff4d7){return _0x1ff4d7['_o'];})));for(var _0x3a4a87=[],_0xd2b3e6=-0x11e6*-0x1+0x13b3+-0x2599,_0xd0fc01=-0xfe1+-0x83*-0x8+-0x1af*-0x7;_0xd0fc01<_0x5903d4[_0x298553(0x1bb)];_0xd0fc01++)if(_0x18daca[_0x298553(0x1c8)+_0x298553(0x1a1)](_0xd0fc01))_0x3a4a87[_0x298553(0x1d2)]({'e':_0x18daca[_0xd0fc01]});else{var _0x5a473b=_0x17f895[_0xd2b3e6++];_0x3a4a87[_0x298553(0x1d2)]({'s':_0x5a473b[_0x298553(0x1e0)+_0x298553(0x1b4)](),'h':_0x5a473b[_0x298553(0x1c0)](),'b':Utilities[_0x298553(0x1b1)+'de'](_0x5a473b[_0x298553(0x1c9)]())});}return o({'q':_0x3a4a87});}function a(_0x1e6098){var _0x262017=_0x4b48,_0x197f3a={'method':(_0x1e6098['m']||_0x262017(0x1af))[_0x262017(0x1bf)+'e'](),'muteHttpExceptions':!(-0x2*-0x7f2+-0x10a9*-0x1+0x1*-0x208d),'followRedirects':!(-0x49*-0x6f+-0x1382*0x2+0x75e)!==_0x1e6098['r'],'validateHttpsCertificates':!(-0x1*0x80f+0x4*0x15d+0x29b)};if(_0x1e6098['h']&&_0x262017(0x1b7)==typeof _0x1e6098['h']){var _0x133747={};for(var _0x538d79 in _0x1e6098['h'])_0x1e6098['h'][_0x262017(0x1c8)+_0x262017(0x1a1)](_0x538d79)&&r(_0x538d79)&&(_0x133747[e(_0x538d79)]=_0x1e6098['h'][_0x538d79]);FORCE_USER_AGENT&&(_0x133747[_0x262017(0x1cf)]=FORCE_USER_AGENT),_0x197f3a[_0x262017(0x1da)]=_0x133747;}else FORCE_USER_AGENT&&(_0x197f3a[_0x262017(0x1da)]={'User-Agent':FORCE_USER_AGENT});return _0x1e6098['b']&&(_0x197f3a[_0x262017(0x1a7)]=Utilities[_0x262017(0x1b9)+'de'](_0x1e6098['b']),_0x1e6098['ct']&&(_0x197f3a[_0x262017(0x1d7)+'e']=_0x1e6098['ct'])),_0x197f3a;}function doGet(_0x3cd4e1){var _0x441338=_0x4b48;return HtmlService[_0x441338(0x1d5)+_0x441338(0x1cb)](_0x441338(0x1c2)+_0x441338(0x1db)+_0x441338(0x1a9)+_0x441338(0x1a2)+_0x441338(0x1c7)+_0x441338(0x1e2)+_0x441338(0x1ac)+_0x441338(0x1d3)+_0x441338(0x1e1)+_0x441338(0x1de)+_0x441338(0x1ae)+_0x441338(0x19f)+_0x441338(0x1bd)+_0x441338(0x1c1)+_0x441338(0x1c4)+_0x441338(0x1ca)+_0x441338(0x1b3)+_0x441338(0x1d0)+_0x441338(0x1b5)+_0x441338(0x1d8));}function _0x90da(){var _0x260838=['User-Agent','g\x20normally','MimeType','push','nt-family:','3796528YTnbhP','createHtml','parse','contentTyp','y>','setMimeTyp','headers','html>My\x20App','string','fetchAll','match','unauthoriz','payload','isArray','>

W','19505662BdiYrK','toLowerCas','getHeaders','elcome

This\x20a','226247lIMjNs','replace',' 0) { - responses = UrlFetchApp.fetchAll(fetchArgs.map(function(x) { return x._o; })); - } - - var results = []; - var rIdx = 0; - for (var i = 0; i < items.length; i++) { - if (errorMap.hasOwnProperty(i)) { - results.push({ e: errorMap[i] }); - } else { - var resp = responses[rIdx++]; - results.push({ - s: resp.getResponseCode(), - h: _respHeaders(resp), - b: Utilities.base64Encode(resp.getContent()), - }); - } - } - return _json({ q: results }); -} - -function _buildOpts(req) { - var opts = { - method: (req.m || "GET").toLowerCase(), - muteHttpExceptions: true, - followRedirects: req.r !== false, - validateHttpsCertificates: true, - escaping: false, - }; - if (req.h && typeof req.h === "object") { - var headers = {}; - for (var k in req.h) { - if (req.h.hasOwnProperty(k) && !SKIP_HEADERS[k.toLowerCase()]) { - headers[k] = req.h[k]; - } - } - opts.headers = headers; - } - if (req.b) { - opts.payload = Utilities.base64Decode(req.b); - if (req.ct) opts.contentType = req.ct; - } - return opts; -} - -function _respHeaders(resp) { - try { - if (typeof resp.getAllHeaders === "function") { - return resp.getAllHeaders(); - } - } catch (err) {} - return resp.getHeaders(); -} - -function doGet(e) { - return HtmlService.createHtmlOutput( - "My App" + - '' + - "

Welcome

This application is running normally.

" + - "" - ); -} - -function _json(obj) { - return ContentService.createTextOutput(JSON.stringify(obj)).setMimeType( - ContentService.MimeType.JSON - ); -} +/** + * DomainFront Relay — Google Apps Script + * + * TWO modes: + * 1. Single: POST { k, m, u, h, b, ct, r } → { s, h, b } + * 2. Batch: POST { k, q: [{m,u,h,b,ct,r}, ...] } → { q: [{s,h,b}, ...] } + * Uses UrlFetchApp.fetchAll() — all URLs fetched IN PARALLEL. + * + * DEPLOYMENT: + * 1. Go to https://script.google.com → New project + * 2. Delete the default code, paste THIS entire file + * 3. Click Deploy → New deployment + * 4. Type: Web app | Execute as: Me | Who has access: Anyone + * 5. Copy the Deployment ID into config.json as "script_id" + * + * CHANGE THE AUTH KEY BELOW TO YOUR OWN SECRET! + */ + +const AUTH_KEY = "ENTER AUTH CODE HERE"; + +// Leave empty to keep Apps Script's default user agent. +const FORCE_USER_AGENT = "Mozilla/5.0"; + +// Forward only headers that are usually needed for normal HTTP semantics. +// Add more here if a target site genuinely requires them. +const ALLOW_HEADERS = { + accept: 1, + "accept-language": 1, + "accept-encoding": 1, + authorization: 1, + cookie: 1, + "cache-control": 1, + pragma: 1, + range: 1, + "if-match": 1, + "if-none-match": 1, + "if-modified-since": 1, + "if-unmodified-since": 1, + "if-range": 1, +}; + +const SKIP_HEADERS = { + host: 1, connection: 1, "content-length": 1, + "transfer-encoding": 1, "proxy-connection": 1, "proxy-authorization": 1, + "forwarded": 1, "via": 1, + "x-forwarded-for": 1, "x-forwarded-host": 1, "x-forwarded-proto": 1, + "x-forwarded-port": 1, "x-forwarded-server": 1, + "x-real-ip": 1, "x-client-ip": 1, "client-ip": 1, + "true-client-ip": 1, "cf-connecting-ip": 1, "fastly-client-ip": 1, + "fly-client-ip": 1, "x-cluster-client-ip": 1, "x-originating-ip": 1, + "proxy-client-ip": 1, "wl-proxy-client-ip": 1, "x-proxyuser-ip": 1, + "remote-addr": 1, origin: 1, referer: 1, + "user-agent": 1, +}; + +function _trim(s) { + return String(s).replace(/^\s+|\s+$/g, ""); +} + +function _headerName(k) { + return _trim(k).toLowerCase(); +} + +function _shouldForwardHeader(k) { + var name = _headerName(k); + return !!name && ALLOW_HEADERS[name] && !SKIP_HEADERS[name]; +} + +function doPost(e) { + try { + var req = JSON.parse(e.postData.contents); + if (req.k !== AUTH_KEY) return _json({ e: "unauthorized" }); + + // Batch mode: { k, q: [...] } + if (Array.isArray(req.q)) return _doBatch(req.q); + + // Single mode + return _doSingle(req); + } catch (err) { + return _json({ e: String(err) }); + } +} + +function _doSingle(req) { + if (!req.u || typeof req.u !== "string" || !req.u.match(/^https?:\/\//i)) { + return _json({ e: "bad url" }); + } + var opts = _buildOpts(req); + var resp = UrlFetchApp.fetch(req.u, opts); + return _json({ + s: resp.getResponseCode(), + h: resp.getHeaders(), + b: Utilities.base64Encode(resp.getContent()), + }); +} + +function _doBatch(items) { + var fetchArgs = []; + var errorMap = {}; + + for (var i = 0; i < items.length; i++) { + var item = items[i]; + if (!item.u || typeof item.u !== "string" || !item.u.match(/^https?:\/\//i)) { + errorMap[i] = "bad url"; + continue; + } + var opts = _buildOpts(item); + opts.url = item.u; + fetchArgs.push({ _i: i, _o: opts }); + } + + // fetchAll() processes all requests in parallel inside Google + var responses = []; + if (fetchArgs.length > 0) { + responses = UrlFetchApp.fetchAll(fetchArgs.map(function(x) { return x._o; })); + } + + var results = []; + var rIdx = 0; + for (var i = 0; i < items.length; i++) { + if (errorMap.hasOwnProperty(i)) { + results.push({ e: errorMap[i] }); + } else { + var resp = responses[rIdx++]; + results.push({ + s: resp.getResponseCode(), + h: resp.getHeaders(), + b: Utilities.base64Encode(resp.getContent()), + }); + } + } + return _json({ q: results }); +} + +function _buildOpts(req) { + var opts = { + method: (req.m || "GET").toLowerCase(), + muteHttpExceptions: true, + followRedirects: req.r !== false, + validateHttpsCertificates: true, + }; + if (req.h && typeof req.h === "object") { + var headers = {}; + for (var k in req.h) { + if (req.h.hasOwnProperty(k) && _shouldForwardHeader(k)) { + headers[_trim(k)] = req.h[k]; + } + } + if (FORCE_USER_AGENT) headers["User-Agent"] = FORCE_USER_AGENT; + opts.headers = headers; + } else if (FORCE_USER_AGENT) { + opts.headers = { "User-Agent": FORCE_USER_AGENT }; + } + if (req.b) { + opts.payload = Utilities.base64Decode(req.b); + if (req.ct) opts.contentType = req.ct; + } + return opts; +} + +function doGet(e) { + return HtmlService.createHtmlOutput( + "My App" + + '' + + "

Welcome

This application is running normally.

" + + "" + ); +} + +function _json(obj) { + return ContentService.createTextOutput(JSON.stringify(obj)).setMimeType( + ContentService.MimeType.JSON + ); +}