- ID de exploración:
- 7d0b6529-5ed2-41f9-bd92-19ebc2c5d496Finalizado
- URL enviada:
- https://arbs09.de/
- Informe finalizado:
Enlaces: 6 encontrados
Los enlaces salientes identificados en la página
Enlace | TEXTO |
---|---|
https://github.com/arbs09/ | |
https://mastodon.social/@arbs | |
https://www.instagram.com/arbs09/ | |
https://x.com/Arbs09_ | |
https://gohugo.io/ | Hugo |
https://github.com/adityatelange/hugo-PaperMod/ | PaperMod |
Variables JavaScript: 5 encontradas
Las variables JavaScript globales cargadas en el objeto de ventana de una página son variables declaradas fuera de las funciones y a las que se puede acceder desde cualquier lugar del código en el ámbito actual
Nombre | Tipo |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
mybutton | object |
plausible | function |
Mensajes de registro de la consola: 0 encontrados
Mensajes registrados en la consola web
HTML
El cuerpo HTML sin procesar de la página
<!DOCTYPE html><html lang="en" dir="auto"><head><meta name="generator" content="Hugo 0.139.4"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="robots" content="index, follow"><title>arbs09.de</title>
<meta name="keywords" content="arbs09,photography,blog,tech,developer"><meta name="description" content="the blog of arbs09."><meta name="author" content="arbs09"><link rel="canonical" href="https://arbs09.de/"><link crossorigin="anonymous" href="/assets/css/stylesheet.fc220c15db4aef0318bbf30adc45d33d4d7c88deff3238b23eb255afdc472ca6.css" integrity="sha256-/CIMFdtK7wMYu/MK3EXTPU18iN7/MjiyPrJVr9xHLKY=" rel="preload stylesheet" as="style"><link rel="icon" href="https://arbs09.de/favicon.ico"><link rel="icon" type="image/png" sizes="16x16" href="https://arbs09.de/favicon-16x16.png"><link rel="icon" type="image/png" sizes="32x32" href="https://arbs09.de/favicon-32x32.png"><link rel="apple-touch-icon" href="https://arbs09.de/apple-touch-icon.png"><link rel="mask-icon" href="https://arbs09.de/safari-pinned-tab.svg"><meta name="theme-color" content="#2e2e33"><meta name="msapplication-TileColor" content="#2e2e33"><link rel="alternate" type="application/rss+xml" href="https://arbs09.de/index.xml"><link rel="alternate" type="application/json" href="https://arbs09.de/index.json"><link rel="alternate" hreflang="en" href="https://arbs09.de/"><link rel="alternate" hreflang="de" href="https://arbs09.de/de/"><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51)}.list{background:var(--theme)}.list:not(.dark)::-webkit-scrollbar-track{background:0 0}.list:not(.dark)::-webkit-scrollbar-thumb{border-color:var(--theme)}}</style></noscript><script defer="" data-domain="arbs09.de" src="https://analytics.arbs09.de/js/script.outbound-links.js"></script><meta name="fediverse:creator" content="@[email protected]"><meta property="og:title" content="arbs09.de"><meta property="og:description" content="the blog of arbs09."><meta property="og:type" content="website"><meta property="og:url" content="https://arbs09.de/"><meta property="og:image" content="https://arbs09.de/photography/denmark-2023/images/dsc00040.jpg"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:image" content="https://arbs09.de/photography/denmark-2023/images/dsc00040.jpg"><meta name="twitter:title" content="arbs09.de"><meta name="twitter:description" content="the blog of arbs09."><meta name="twitter:site" content="@Arbs09_"><script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","name":"arbs09.de","url":"https://arbs09.de/","description":"the blog of arbs09.","thumbnailUrl":"https://arbs09.de/favicon.ico","sameAs":["mailto:[email protected]","https://github.com/arbs09/","https://arbs09.dev/pgp.txt","https://mastodon.social/@arbs","https://www.instagram.com/arbs09/","https://x.com/Arbs09_"]}</script></head><body class="list" id="top"><script>localStorage.getItem("pref-theme")==="dark"?document.body.classList.add("dark"):localStorage.getItem("pref-theme")==="light"?document.body.classList.remove("dark"):window.matchMedia("(prefers-color-scheme: dark)").matches&&document.body.classList.add("dark")</script><header class="header"><nav class="nav"><div class="logo"><a href="https://arbs09.de/" accesskey="h" title="arbs09.de (Alt + H)">arbs09.de</a><div class="logo-switches"><button id="theme-toggle" accesskey="t" title="(Alt + T)"><svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"></path></svg><svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></button><ul class="lang-switch"><li>|</li><li><a href="https://arbs09.de/de/" title="🇩🇪" aria-label=":de:">De</a></li></ul></div></div><ul id="menu"><li><a href="https://arbs09.de/photography/" title="photography"><span>photography</span></a></li><li><a href="https://arbs09.de/tech/" title="tech"><span>tech</span></a></li><li><a href="https://arbs09.de/about/" title="about me"><span>about me</span></a></li><li><a href="https://arbs09.de/search/" title="search (Alt + /)" accesskey="/"><span>search</span></a></li><li><a href="https://gallery.arbs09.de" title="my gallery"><span>my gallery</span> <svg fill="none" shape-rendering="geometricPrecision" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" viewBox="0 0 24 24" height="12" width="12"><path d="M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6"></path><path d="M15 3h6v6"></path><path d="M10 14 21 3"></path></svg></a></li><li><a href="https://arbs09.dev" title="my dev page"><span>my dev page</span> <svg fill="none" shape-rendering="geometricPrecision" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" viewBox="0 0 24 24" height="12" width="12"><path d="M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6"></path><path d="M15 3h6v6"></path><path d="M10 14 21 3"></path></svg></a></li></ul></nav></header><main class="main"><article class="first-entry home-info"><header class="entry-header"><h1>@arbs09.de</h1></header><div class="entry-content">Hey, I am arbs09 and welcome to my blog.</div><footer class="entry-footer"><div class="social-icons"><a href="mailto:[email protected]" target="_blank" rel="noopener noreferrer me" title="Email"><svg viewBox="0 0 24 21" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 4h16c1.1.0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1.0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path><polyline points="22,6 12,13 2,6"></polyline></svg>
</a><a href="https://github.com/arbs09/" target="_blank" rel="noopener noreferrer me" title="Github"><svg viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"></path></svg>
</a><a href="https://arbs09.dev/pgp.txt" target="_blank" rel="noopener noreferrer me" title="Key"><svg viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M8 18l2-2h2l1.36-1.36a6.5 6.5.0 10-3.997-3.992L2 18v4h4l2-2v-2z" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path><circle cx="17" cy="7" r="1" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></circle></svg>
</a><a href="https://mastodon.social/@arbs" target="_blank" rel="noopener noreferrer me" title="Mastodon"><svg viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21.58 13.913c-.29 1.469-2.592 3.121-5.238 3.396-1.379.184-2.737.368-4.185.276-2.368-.092-4.237-.551-4.237-.551.0.184.014.459.043.643.308 2.294 2.317 2.478 4.22 2.57 1.922.0 3.633-.46 3.633-.46l.079 1.653s-1.344.734-3.738.918c-1.32.091-2.96-.092-4.869-.551-4.14-1.102-4.853-5.507-4.961-10.005-.034-1.285-.013-2.57-.013-3.58.0-4.589 3-5.966 3-5.966 1.513-.734 4.11-1.01 6.808-1.01h.067c2.699.0 5.296.276 6.81 1.01.0.0 3 1.377 3 5.967.0.0.037 3.304-.419 5.69" stroke="currentcolor"></path><path d="M17.832 8.633v5h-1.978V8.78c0-1.023-.43-1.542-1.29-1.542-.95.0-1.427.616-1.427 1.834v2.655H11.17V9.072c0-1.218-.476-1.834-1.427-1.834-.86.0-1.29.52-1.29 1.542v4.852H6.475V8.633c0-1.022.26-1.834.782-2.434.538-.6 1.243-.909 2.118-.909 1.012.0 1.779.39 2.286 1.169l.492.827.493-.827c.507-.78 1.274-1.169 2.286-1.169.875.0 1.58.308 2.118.909.522.6.782 1.412.782 2.434" fill="currentcolor" stroke="none"></path></svg>
</a><a href="https://www.instagram.com/arbs09/" target="_blank" rel="noopener noreferrer me" title="Instagram"><svg viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="20" rx="5" ry="5"></rect><path d="M16 11.37A4 4 0 1112.63 8 4 4 0 0116 11.37z"></path><line x1="17.5" y1="6.5" x2="17.5" y2="6.5"></line></svg>
</a><a href="https://x.com/Arbs09_" target="_blank" rel="noopener noreferrer me" title="X"><svg viewBox="0 0 24 24" fill="currentcolor"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"></path></svg></a></div></footer></article><article class="post-entry"><figure class="entry-cover"><img loading="lazy" srcset="https://arbs09.de/photography/02.11.2024/images/DSC00013_hu974570935317343775.jpg 360w ,https://arbs09.de/photography/02.11.2024/images/DSC00013_hu2660833277332097903.jpg 480w ,https://arbs09.de/photography/02.11.2024/images/DSC00013_hu16962434157593001896.jpg 720w ,https://arbs09.de/photography/02.11.2024/images/DSC00013_hu4801583607822712996.jpg 1080w ,https://arbs09.de/photography/02.11.2024/images/DSC00013_hu18001156981948857823.jpg 1500w ,https://arbs09.de/photography/02.11.2024/images/DSC00013.jpg 2736w" sizes="(min-width: 768px) 720px, 100vw" src="https://arbs09.de/photography/02.11.2024/images/DSC00013.jpg" alt="" width="2736" height="1536"></figure><header class="entry-header"><h2 class="entry-hint-parent">Day in Leipzig</h2></header><div class="entry-content"><p>Today I was in Leipzig, Germany and I took some photoes, take a look!</p></div><footer class="entry-footer"><span title="2024-11-02 00:00:00 +0000 UTC">November 2, 2024</span> · arbs09</footer><a class="entry-link" aria-label="post link to Day in Leipzig" href="https://arbs09.de/photography/02.11.2024/"></a></article><article class="post-entry"><header class="entry-header"><h2 class="entry-hint-parent">Night Sky 31.10.2024</h2></header><div class="entry-content"><p>On the 31. of October I shot some amazing night sky pictures. Take a look!</p></div><footer class="entry-footer"><span title="2024-10-31 00:00:00 +0000 UTC">October 31, 2024</span> · arbs09</footer><a class="entry-link" aria-label="post link to Night Sky 31.10.2024" href="https://arbs09.de/photography/31.10.2024/"></a></article><article class="post-entry"><header class="entry-header"><h2 class="entry-hint-parent">ADB Honeypot</h2></header><div class="entry-content"><p>I Found something realy interesting, a ADB Honeypot. I installed it one one of my servers via Docker. Than I waited for 24h.
Findings after 24h After 24h i logged back into my server and locked at the log data of the honeypot. If you want to take a look:
adbhoney.log
I analysed the data and here are my findings.
Table of connections ID IP Country ASN Connections Tot Time (s) Avg Time (s) Max Time (s) 1 103.205.XXX.XXX VN AS149137 1 45.3 45.3 45.3 2 157.10.XXX.XXX VN AS150862 3 136.2 45.4 45.5 3 198.235.XXX.XXX BE AS396982 2 0 0 0 4 139.59.XXX.XXX IN AS14061 6 2732.2 455.4 748 5 45.200.XXX.XXX NL AS50580 5 5.1 1 1 6 154.213.XXX.XXX DE AS51396 3 136.1 45.4 45.6 7 154.213.XXX.XXX DE AS51396 5 228.2 45.6 46 8 35.203.XXX.XXX GB AS396982 1 182.5 182.5 182.5 9 104.167.XXX.XXX US AS399045 5 228.3 45.7 45.8 10 115.231.XXX.XXX CN AS58461 1 20.9 20.9 20.9 11 172.169.XXX.XXX US AS8075 1 160 160 160 12 167.94.XXX.XXX DE AS398705 4 12.7 3.2 9.1 13 212.64.XXX.XXX TR AS197450 1 45.9 45.9 45.9 Analysis A total of 13 unique IPs contacted my honeypot. The first connection lasted 1h 38min and came from Vietnam. The attacker tried to download and run a script in the temp folder (/data/local/tmp/). I ran the script on virustotal and it says that the script is malware. Only 30 minutes later a new connection came from Vietnam. It also tried to download a script, but it also wanted to kill some processes based on CPU usage. The 3rd just connected and did nothing else, 2 times. The 4th IP came from India and connected 6 times but also never really did anything. The next IP came from the Netherlands and did not send anything. The next 2 IPs came from Germany and tried to download malware to my honeypot 3 times. The 8. IP came from the UK just connected and did nothing.
...</p></div><footer class="entry-footer"><span title="2024-10-12 00:00:00 +0000 UTC">October 12, 2024</span> · arbs09</footer><a class="entry-link" aria-label="post link to ADB Honeypot" href="https://arbs09.de/tech/adb-honeypot/"></a></article><article class="post-entry"><header class="entry-header"><h2 class="entry-hint-parent">How to install Portainer CE on Ubuntu using Docker</h2></header><div class="entry-content"><p>Requirements You need a Linux Server / Computer with Docker installed.
Installation of Portainer on Ubuntu using Docker Creating a volume sudo docker volume create portainer_data This is where Portainer will store the data.
Creating the Container sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest This created a instance of Portainer CE as a Docker Container.
Setting Portainer up First you got to
...</p></div><footer class="entry-footer"><span title="2024-10-09 00:00:00 +0000 UTC">October 9, 2024</span> · arbs09</footer><a class="entry-link" aria-label="post link to How to install Portainer CE on Ubuntu using Docker" href="https://arbs09.de/tech/portainer-docker-ubuntu/"></a></article><article class="post-entry"><figure class="entry-cover"><img loading="lazy" srcset="https://arbs09.de/photography/denmark-2024/images/01.10.2024/DSC00017_hu18025617084340943145.jpg 360w ,https://arbs09.de/photography/denmark-2024/images/01.10.2024/DSC00017_hu476384580620266978.jpg 480w ,https://arbs09.de/photography/denmark-2024/images/01.10.2024/DSC00017_hu3237458126089470356.jpg 720w ,https://arbs09.de/photography/denmark-2024/images/01.10.2024/DSC00017_hu17516370585554046239.jpg 1080w ,https://arbs09.de/photography/denmark-2024/images/01.10.2024/DSC00017_hu18200164373695050778.jpg 1500w ,https://arbs09.de/photography/denmark-2024/images/01.10.2024/DSC00017.jpg 2736w" sizes="(min-width: 768px) 720px, 100vw" src="https://arbs09.de/photography/denmark-2024/images/01.10.2024/DSC00017.jpg" alt="" width="2736" height="1536"></figure><header class="entry-header"><h2 class="entry-hint-parent">Denmark and Sweden 2024</h2></header><div class="entry-content"><p>Here is a photo dump of my trip to Denmark. It took a lot of pictures here you can see some of my favorite photos I took.
29.09.2024 30.09.2024 Koppenhagen (01.10.2024) Here you can see a photo of some boats in a canal in Kopenhagen.
02.10.2024 ...</p></div><footer class="entry-footer"><span title="2024-10-08 00:00:00 +0000 UTC">October 8, 2024</span> · arbs09</footer><a class="entry-link" aria-label="post link to Denmark and Sweden 2024" href="https://arbs09.de/photography/denmark-2024/"></a></article><article class="post-entry"><header class="entry-header"><h2 class="entry-hint-parent">Installing pihole on dietpi</h2></header><div class="entry-content"><p>What even is Pihole? Pi-hole is a network-level ad blocker that acts as a DNS sinkhole. It blocks ads and trackers across your entire network by intercepting DNS requests for known ad-serving domains.
Why do I even need a Pihole? There are several reasons you might want to use Pi-hole:
Network-wide ad blocking: It blocks ads on all devices, including those that don’t support ad-blockers (like smart TVs or mobile apps). Privacy: It reduces tracking by blocking known tracker domains. Performance: Devices may run faster without loading resource-heavy ads. What are we doing? Setting up pihole on a Raspberry Pi with dietpi What are the requirements? a Raspberry Pi 4 (or 3 or 5, but in this tutorials i will be using the RPI 4) set up with dietpi Getting you Pi setup with pihole on dietpi After installing dietpi you ssh into your pi. First run
...</p></div><footer class="entry-footer"><span title="2024-09-29 00:00:00 +0000 UTC">September 29, 2024</span> · arbs09</footer><a class="entry-link" aria-label="post link to Installing pihole on dietpi" href="https://arbs09.de/tech/pihole-install-dietpi/"></a></article><article class="post-entry"><figure class="entry-cover"><img loading="lazy" srcset="https://arbs09.de/photography/gothenburg-2023/images/dsc00047_hu7412988217263398758.jpg 360w ,https://arbs09.de/photography/gothenburg-2023/images/dsc00047_hu17417764598743910139.jpg 480w ,https://arbs09.de/photography/gothenburg-2023/images/dsc00047_hu14483271405949512340.jpg 720w ,https://arbs09.de/photography/gothenburg-2023/images/dsc00047_hu17211086038501406502.jpg 1080w ,https://arbs09.de/photography/gothenburg-2023/images/dsc00047_hu2432313532856697244.jpg 1500w ,https://arbs09.de/photography/gothenburg-2023/images/dsc00047.jpg 2736w" sizes="(min-width: 768px) 720px, 100vw" src="https://arbs09.de/photography/gothenburg-2023/images/dsc00047.jpg" alt="multi-storey houses next to each other in Gothenburg" width="2736" height="1536"></figure><header class="entry-header"><h2 class="entry-hint-parent">Gothenburg 18.10.2023</h2></header><div class="entry-content"><p></p></div><footer class="entry-footer"><span title="2023-10-19 00:00:00 +0000 UTC">October 19, 2023</span> · arbs09</footer><a class="entry-link" aria-label="post link to Gothenburg 18.10.2023" href="https://arbs09.de/photography/gothenburg-2023/"></a></article><article class="post-entry"><figure class="entry-cover"><img loading="lazy" srcset="https://arbs09.de/photography/denmark-2023/images/dsc00064_hu10236399959955517423.jpg 360w ,https://arbs09.de/photography/denmark-2023/images/dsc00064_hu6741219238880830273.jpg 480w ,https://arbs09.de/photography/denmark-2023/images/dsc00064_hu5485934233359714671.jpg 720w ,https://arbs09.de/photography/denmark-2023/images/dsc00064_hu17858577395729527265.jpg 1080w ,https://arbs09.de/photography/denmark-2023/images/dsc00064_hu9216046852136677245.jpg 1500w ,https://arbs09.de/photography/denmark-2023/images/dsc00064.jpg 2736w" sizes="(min-width: 768px) 720px, 100vw" src="https://arbs09.de/photography/denmark-2023/images/dsc00064.jpg" alt="the North Sea at Cliffs" width="2736" height="1536"></figure><header class="entry-header"><h2 class="entry-hint-parent">Denmark 2023</h2></header><div class="entry-content"><p></p></div><footer class="entry-footer"><span title="2023-10-17 00:00:00 +0000 UTC">October 17, 2023</span> · arbs09</footer><a class="entry-link" aria-label="post link to Denmark 2023" href="https://arbs09.de/photography/denmark-2023/"></a></article><article class="post-entry"><header class="entry-header"><h2 class="entry-hint-parent">Baum auf Berg</h2></header><div class="entry-content"><p>Bilder</p></div><footer class="entry-footer"><span title="2021-12-12 00:00:00 +0000 UTC">December 12, 2021</span> · arbs09</footer><a class="entry-link" aria-label="post link to Baum auf Berg" href="https://arbs09.de/photography/baum-auf-berg/"></a></article></main><footer class="footer"><span>© 2024 <a href="https://arbs09.de/">arbs09.de</a></span> ·
<span>Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a></span></footer><a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g"><svg viewBox="0 0 12 6" fill="currentcolor"><path d="M12 6H0l6-6z"></path></svg>
</a><script>let menu=document.getElementById("menu");menu&&(menu.scrollLeft=localStorage.getItem("menu-scroll-position"),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}),document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{document.body.className.includes("dark")?(document.body.classList.remove("dark"),localStorage.setItem("pref-theme","light")):(document.body.classList.add("dark"),localStorage.setItem("pref-theme","dark"))})</script></body></html>