1<!doctype html> 2<html lang="en"> 3 <head> 4 <meta charset="UTF-8" /> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 6 <title>C.A.R.L. // lab.dannygc.cloud</title> 7
7<script> 8 (function () { 9 var h = location.hostname.toLowerCase() 10 if (h === 'hub.dannygc.cloud' || h.indexOf('hub.') === 0) { 11 document.title = 'Command Centre // hub.dannygc.cloud' 12 } else if (h === 'systems.dannygc.cloud' || h.indexOf('systems.') === 0) { 13 document.title = 'Systems // lab.dannygc.cloud' 14 } 15 })() 16 </script>
16 17
17<script> 18 (function () { 19 var h = location.hostname.toLowerCase() 20 if (h === 'hub.dannygc.cloud' || h.indexOf('hub.') === 0) { 21 document.title = 'Command Centre // hub.dannygc.cloud' 22 } else if (h === 'systems.dannygc.cloud' || h.indexOf('systems.') === 0) { 23 document.title = 'Systems // lab.dannygc.cloud' 24 } 25 })() 26 </script>
26 27
27<script> 28 (function () { 29 var h = location.hostname.toLowerCase() 30 if (!(h.endsWith('.dannygc.cloud') || h === 'localhost' || h === '127.0.0.1')) return 31 function tok() { 32 try { 33 return localStorage.getItem('tg_auth') || (document.cookie.match(/(?:^|;\s*)tg_auth=([^;]+)/) || [])[1] 34 } catch (e) { 35 return null 36 } 37 } 38 function save(t) { 39 localStorage.setItem('tg_auth', t) 40 document.cookie = 'tg_auth=' + encodeURIComponent(t) + '; path=/; max-age=' + 8 * 3600 + '; SameSite=Lax' 41 } 42 window.__tgAuthReady = (async function () { 43 if (tok()) return true 44 try { 45 var st = await fetch('/api/telegram-auth/status', { cache: 'no-store' }).then(function (r) { 46 return r.json() 47 }) 48 if (!st.enabled) return true 49 } catch (e) { 50 return true 51 } 52 try { 53 var ns = await fetch('/api/telegram-auth/nimbus-session', { 54 method: 'POST', 55 headers: { 'Content-Type': 'application/json' }, 56 body: JSON.stringify({ app: h }), 57 cache: 'no-store', 58 }).then(function (r) { 59 return r.json() 60 }) 61 if (ns.session_token) { 62 save(ns.session_token) 63 return true 64 } 65 } catch (e) {} 66 try { 67 var rq = await fetch('/api/telegram-auth/request', { 68 method: 'POST', 69 headers: { 'Content-Type': 'application/json' }, 70 body: JSON.stringify({ app: h }), 71 cache: 'no-store', 72 }).then(function (r) { 73 return r.json() 74 }) 75 if (!rq.request_id) return false 76 for (var i = 0; i < 40; i++) { 77 await new Promise(function (r) { 78 setTimeout(r, 1500) 79 }) 80 var pl = await fetch('/api/telegram-auth/poll?request_id=' + encodeURIComponent(rq.request_id), { 81 cache: 'no-store', 82 }).then(function (r) { 83 return r.json() 84 }) 85 if (pl.session_token) { 86 save(pl.session_token) 87 return true 88 } 89 if (pl.status === 'denied' || pl.status === 'expired') return false 90 } 91 } catch (e) {} 92 return false 93 })() 94 })() 95 </script>
95 96 <link rel="preconnect" href="https://fonts.googleapis.com" /> 97 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> 98 <link href="https://fonts.googleapis.com/css2?family=Exo+2:wght@300;400;600;700&family=Fraunces:opsz,[email protected],500;700&family=Orbitron:wght@500;700;900&family=Syncopate:wght@400;700&family=Syne:wght@600;700;800&family=IBM+Plex+Mono:wght@400;500&display=swap" rel="stylesheet" /> 99
99<script type="module" crossorigin src="/assets/index-BwNHfT0s.js"></script>
99 100 <link rel="stylesheet" crossorigin href="/assets/index-r5zN5185.css"> 101 </head> 102 <body> 103 <div id="root"></div> 104
104<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"8ce9b77a9e8d4fb89e0132a353b7c75a","r":1,"spa":2}' crossorigin="anonymous"></script>
104 105</body> 106</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.