NTE edit

htmlをごと置き換えればいけた(再び)

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name            NTE edit
// @namespace       html置き換え
// @version         1.0.0
// @description     htmlをごと置き換えればいけた(再び)
// @author          umaimann
// @match           *://*/*
// @grant           none
// @run-at          document-end
// @license         MIT
// ==/UserScript==
(function(){
    document.documentElement.innerHTML = `
<html>
  <head>
    <title>loading.</title>
    <link rel="icon" href="https://videotourl.com/images/1779082116705-95af1009-90ae-462f-a181-4147b6bebb2c.jpeg?${Date.now()}">
    <style>
      html, body { margin:0; overflow:hidden; background:black; height:100%; width:100%; }
      video { position:fixed; top:0; left:0; width:100vw; height:100vh; object-fit:cover; z-index: 1; }

      #filter-layer {
        position:fixed;
        top:0; left:0;
        width:100vw; height:100vh;
        backdrop-filter: blur(10px) brightness(1.2) contrast(1.1);
        z-index:2;
        pointer-events:none;
        opacity:1;
        transition: opacity 0.5s ease;
      }

      #text-overlay {
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-family: 'Courier New', monospace;
        font-size: 0.39rem;
        font-weight: bold;
        color: white;
        text-shadow: 0 0 15px rgba(0,0,0,0.8);
        z-index: 3;
        pointer-events: none;
        transition: opacity 0.5s ease, color 0.5s ease, font-size 0.5s ease;
        white-space: pre;
        user-select: none;
      }

      .hidden {
        opacity: 0;
      }
    </style>
  </head>
  <body>
    <video src="https://videotourl.com/videos/1779410075668-d4c50293-a639-4cb8-8732-abb74779bc29.mp4" autoplay playsinline loop></video>
    <div id="filter-layer"></div>
    <audio src="" autoplay loop playsinline></audio>
    <div id="text-overlay">NTE</div>
  </body>
</html>
`;

    const titles = ["_,.•^*‾", ",.•^*‾*", ".•^*‾*^", "•^*‾*^•", "^*‾*^•.", "*‾*^•.,", "‾*^•.,_", "*^•.,_,", "^•.,_,.", "•.,_,.•", ".,_,.•^", ",_,.•^*"];
    let i = 0;
    setInterval(() => document.title = titles[i++ % titles.length], 125);

    const audio = document.querySelector('audio');
    const playAudio = () => audio.play().catch(() => {});
    playAudio();

    const overlay = document.getElementById('text-overlay');
    const filter = document.getElementById('filter-layer');

    const texts = [
        { text: `\`
⠀⠀⢸⣿⣿⣿⣿⣿⠀⠀⠸⣿⣿⣿⣿⣿⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⢸⣿⣿⣿⡀⠀⠀⠀⢸⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⠀⠀⢿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⢸⣿⠘⢿⣷⠀⠀⠀⢸⣿⡇⠀⠀⠀⠀⠀⣀⣠⣤⣴⣄⡀⠀⠀⠀⢰⣦⣤⣀⣤⣄⣠⣤⣤⣤⣀⣤⣤⠄⠀⠀⠠⣀⣤⣤⣦⣄⡒⠀⠀⠀⠀⣄⣠⣀⣤⣀⢀⣠⣤⣴⡀⠀⠀⢀⣤⣀⣤⡀⣀⣤⣴⣤⣀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣴⣤⣄⠀⠀⠀⠀⠀⠀⡀⢄⣠⣤⣤⣄⡀⢠⣄⠀⠀⠀⠀⢀⢄⣠⣤⣤⣄⡀⣠⣀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣿⣷⣀⣀⣀⣀⣀⣀⠀⠀⠀⠀⠀⢀⣤⣤⣤⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⣀⠀⠻⠿⠂⢰⣴⣦⣠⣄⣤⣄⣠⣤⣤⣀⣤⣠⣴⠀⠀⠀⢠⣠⣤⣦⣤⣐⠀⠀⠀⠀⢠⣄⣠⣠⣄⠀⣠⣤⣦⣄⡀⠀⠀⣤⣄⣤⡀⢀⣢⣤⣦⣄⡀⠀⠀⠀⠀⠀⢀⢀⣤⣤⣴⣄⡂⠄⠀⠀⠀⠀⠀⠀⣀⣤⣤⣤⣀⢀⣤⡀⠀⠀⠀⠀⣄⣠⣤⣤⣄⣀⢀⣄⡀
⠀⠀⠀⠀⢸⣿⠀⠈⢿⣷⠀⠀⢸⣿⡇⠀⠀⠀⣸⣿⡿⠛⠛⠙⠛⣿⣶⡀⠀⠈⠛⢻⣿⡛⠉⠉⠉⠛⣻⣿⠿⠋⠀⠀⣸⣾⡿⠛⠋⠛⠻⣿⣦⠄⠀⠀⠛⠛⢻⣿⣼⡿⠛⢋⡛⣿⣷⡄⠘⠛⢻⣿⣾⠟⠛⠛⠛⣿⣧⢄⠀⠀⠰⣲⣿⠟⠛⠙⠛⠻⣿⣆⠀⠀⠀⠰⣷⣿⠟⠋⠉⠛⢿⣿⣿⠀⠀⠀⠀⣿⣿⠛⠋⠉⠛⢿⣿⡿⠀⠀⠀⠀⠀⠀⠀⠘⠛⠛⣿⣿⠛⠛⠛⠛⠛⠏⠀⠀⠀⢀⣾⣿⠛⠋⠙⠛⢿⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣀⣀⣀⣸⣿⠇⠀⠀⠀⠀⠉⠛⣿⣟⠋⠉⠀⠙⢛⣿⡿⡿⠁⠀⣐⣾⣿⠟⠛⠙⠛⢿⣷⡌⠀⠀⠘⠛⠻⣿⣧⣾⠟⠋⠙⢻⣿⣶⡜⠛⠛⣿⣷⡿⠛⠛⠛⢿⣷⡄⠀⠀⡀⢦⣾⡿⠛⠋⠛⠛⣿⣷⣉⠀⠀⢰⢼⣾⡟⠛⠉⠙⠻⣿⣿⡅⠀⠀⠀⢺⣾⠟⠋⠉⠛⠻⣿⣿⡆
⠀⠀⠀⠀⢸⣿⠀⠀⠸⣿⣇⠀⢸⣿⡇⠀⠀⠈⣿⡿⠀⠀⠀⠀⠀⠈⣿⣷⠆⠀⠀⠈⣿⣷⠀⠀⠀⢀⣿⡇⠀⠀⠀⢰⣿⡏⠀⠀⠀⠀⠀⢸⣿⣇⠀⠀⠀⠀⢸⣿⡿⠀⠀⠈⣿⣿⣿⠇⠀⠀⢸⣿⠇⠀⠀⠀⠀⢹⣿⡆⠀⠀⣿⣿⡇⠀⠀⠀⠀⠀⢹⣿⡶⠀⠀⢀⣿⣿⡀⠀⠀⠀⠀⢿⡿⠀⠀⠀⠀⣿⣷⡀⠀⠀⠀⠈⢿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⢀⣿⣿⠁⠀⠀⠀⠀⠀⣿⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⠿⠿⠿⢿⣿⠇⠀⠀⠀⠀⠀⠀⣸⣿⡆⠀⠀⠀⣸⣿⠁⠀⠀⢈⣹⣿⠇⠀⠀⠀⠀⠀⣿⣿⢇⠀⠀⠀⠀⣿⣿⠁⠀⠀⢸⣿⣿⡏⠁⠀⠀⣿⡏⠀⠀⠀⠀⠈⣿⡇⠀⠀⣏⣿⣿⠀⠀⠀⠀⠀⠈⣿⣇⠀⠀⠸⣾⣿⣆⠀⠀⠀⠀⠸⣿⠷⠀⠀⢀⣸⣿⡆⠀⠀⠀⠀⠿⣿⡇
⠀⠀⠀⠀⢸⣿⠀⠀⠀⠹⣿⣆⢸⣿⡇⠀⠀⢠⣿⡿⠿⠿⠿⠿⠿⠿⠿⢿⠄⠀⠀⠀⠘⣿⣇⠀⠀⣾⡿⠁⠀⠀⠀⢼⣿⡿⠿⠿⠿⠿⠿⠿⠿⣿⠀⠀⠀⠀⢸⣿⡃⠀⠀⠀⠉⠉⠁⠀⠀⠀⢸⣿⠀⠀⠀⠀⠀⢸⣿⡂⠀⠘⣿⣿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠀⠀⣸⣍⠻⠿⣷⣶⣦⣤⣄⡒⠀⠀⠀⢻⡙⠻⢿⣷⣶⣤⣤⣄⠘⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣯⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⡏⠀⠀⠀⠀⠀⠀⢹⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠘⢿⠇⠀⠀⠀⠀⠀⠀⠀⢿⣿⡀⠀⢰⣿⠏⠀⠀⠀⣸⣿⣿⠾⠿⠿⠿⠿⠿⠿⠿⡷⠀⠀⠀⠀⣿⡏⠀⠀⠀⠀⠉⠉⠀⠀⠀⠀⣿⡇⠀⠀⠀⠀⠀⣿⡇⠀⠀⣾⣿⡿⠿⠿⠿⠿⠿⠿⠿⣿⠀⠀⠀⣷⠛⠿⢿⣶⣶⣤⣤⡸⠂⠀⠀⢸⣏⠻⠿⣿⣶⣦⣤⣴⡂⠁
⠀⠀⠀⠀⢸⣿⠀⠀⠀⠀⠹⣿⣾⣿⡇⠀⠀⠀⣿⣧⠀⠀⠀⠀⠀⠀⢠⡄⠁⠀⠀⠀⠀⢹⣿⡄⣸⣿⠃⠀⠀⠀⠀⠼⣿⣇⠀⠀⠀⠀⠀⠀⢠⡄⠀⠀⠀⠀⢸⣿⡅⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⠀⠀⠀⠀⠀⢸⣿⡅⠀⠀⢹⣿⡆⠀⠀⠀⠀⠀⠀⢴⡆⠀⠀⣹⣿⣄⠀⠀⠈⠉⠙⢿⣿⡌⠀⠀⢸⣿⣄⠀⠀⠈⠉⠙⢿⣿⡤⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡷⠀⠀⠀⠀⠀⠀⠀⠀⠃⣿⣷⠀⠀⠀⠀⠀⠀⣿⣿⠑⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⠀⠀⢀⣿⡇⠀⠀⠀⠀⠈⣿⣷⢀⣾⡟⠀⠀⠀⠀⠠⢿⣿⠀⠀⠀⠀⠀⠀⠠⣼⠃⠀⠀⠀⠀⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⠀⠀⠀⠀⠀⣿⡧⠀⠀⠘⣿⣧⠀⠀⠀⠀⠀⠀⢀⣼⠁⠀⠀⣿⣧⠀⠀⠀⠉⠉⠻⣿⣧⠀⠀⠘⣿⣦⠀⠀⠀⠉⠙⠻⣿⡆
⠀⠀⢀⣀⣸⣿⣆⡀⠀⠀⠀⠹⣿⣿⣇⠀⠀⠀⠹⣿⣧⣄⣀⠀⣀⣤⣾⡿⠀⠀⠀⠀⠀⠀⢿⣷⣿⠇⠀⠀⠀⠀⠀⠀⠻⣿⣦⣀⡀⢀⣀⣴⣿⠗⠀⠀⣀⣀⣸⣿⣃⣀⣀⣀⡀⠀⠀⠀⢀⣀⣸⣿⣀⡀⠀⢀⣀⣸⣿⣓⣀⠀⠀⢿⣿⣦⣀⠀⢀⣀⣴⣿⠇⠀⠀⣼⣿⣿⣧⣄⡀⠀⢀⣼⣿⠃⠀⠀⢸⣿⢿⣦⣀⡀⠀⢀⣼⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⣦⡀⠠⣀⣼⡿⠃⠀⠈⠘⣿⣷⣀⡀⢠⣀⣶⣿⠏⠀⠀⠀⠀⠀⠀⠀⢀⣀⣿⣿⣀⣀⣀⣀⣀⣀⣼⣿⡃⠀⠀⠀⠀⠀⢘⣿⣾⡿⠀⠀⠀⠀⠀⠀⠘⢿⣷⣄⣀⠀⣀⣠⣾⡿⠀⠀⢀⣀⣀⣿⣇⣀⣀⣀⣀⠀⠀⠀⠀⣀⣚⣿⣇⣀⠀⠀⢀⣐⣿⣿⣳⠀⠀⠹⣿⣧⣀⡀⠀⣀⣤⣿⠟⠀⠀⢸⣿⣿⣷⣄⣀⠀⢀⣠⣿⡟⠀⠀⣤⣿⣿⣷⣄⣀⠀⢀⣠⣿⡏
⠀⠀⠘⠛⠛⠛⠛⠛⠀⠀⠀⠀⠙⠛⠋⠀⠀⠀⠀⠈⠙⠛⣿⣿⠛⠛⠁⠀⠀⠀⠀⠀⠀⠀⠈⠛⠛⠀⠀⠀⠀⠀⠀⠀⠀⠈⠛⢻⣿⣿⠛⠋⠁⠀⠀⠀⠛⠛⠛⠛⠛⠛⠛⠛⠋⠀⠀⠀⠘⠛⠛⠛⠛⠛⠀⠈⠛⠛⠛⠛⠋⠀⠀⠀⠉⠛⢻⣿⣿⠛⠋⠀⠀⠀⠀⠛⠛⠂⠙⠛⣿⣿⡟⠛⠁⠀⠀⠀⠘⠛⠈⠙⠛⣿⣿⡟⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠛⣿⣿⠛⠋⠀⠀⠀⠀⠀⠈⠙⠛⣿⣿⠛⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠘⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⠁⠀⠀⠀⠀⠀⠀⠘⠛⠃⠀⠀⠀⠀⠀⠀⠀⠀⠙⠛⣿⣿⡟⠛⠉⠀⠀⠀⠘⠛⠛⠛⠛⠛⠛⠛⠛⠀⠀⠀⠀⡟⠛⠛⠛⠛⠁⠀⠛⠛⠛⠛⠛⠃⠀⠀⠈⠙⠛⣿⣿⠛⠛⠁⠀⠀⠀⠀⠛⠃⠈⠛⢻⣿⣿⠛⠋⠀⠀⠀⠀⠛⠃⠉⠛⢻⣿⡟⠛⠋⠀
\``, color: "white", size: "0.39rem", dynamic: false },
        { text: `\`
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⣶⣶⣶⣶⣶⣶⣶⠀⠀⠀⠀⠀⠀⠀⠀⢰⣶⣶⣶⣶⣶⣶⣶⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⣿⣿⣿⣿⣿⣆⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠛⠛⠛⢻⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠛⠛⠛⢻⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⣿⣿⣿⣿⣆⠀⠀⠀⠀⠀⢹⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⣿⣿⡏⢿⣿⣆⠀⠀⠀⠀⢸⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⣿⣿⡇⠈⣿⣿⣆⠀⠀⠀⢸⣿⡇⠀⠀⠀⠀⢀⣤⣶⣿⣿⡿⣿⣿⣷⣦⡄⠀⠀⠀⠀⣿⣿⣿⣿⣠⣶⣿⣿⣿⣿⣷⣦⠀⠀⠀⠀⠀⠀⣤⣶⣿⣿⡿⢿⣿⣿⣶⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⡇⠀⢸⣿⣿⣿⣿⣿⣿
⠀⠀⣿⣿⡇⠀⠘⣿⣿⡆⠀⠀⢸⣿⡇⠀⠀⠀⠀⢼⣿⣿⡇⠀⠀⠀⠀⠙⣿⣿⡆⠀⠀⠀⠀⠈⣿⣿⣿⠏⠁⠀⠀⠈⢻⣿⣧⠀⠀⠀⠀⢸⣿⣿⡇⠀⠀⠀⠀⠙⣿⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣆⠀⠀⠀⠀⠀⣾⣿⡏⠀⠀
⠀⠀⣿⣿⡇⠀⠀⠘⣿⣿⣆⠀⢸⣿⡇⠀⠀⠀⠀⠈⠛⠛⠁⠀⠀⣀⠀⠀⢸⣿⡇⠀⠀⠀⠀⠀⣿⣿⠃⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠈⠛⠛⠁⠀⡀⢀⠀⠀⢸⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⡄⠀⠀⠀⣸⣿⡿⠀⠀⠀
⠀⠀⣿⣿⡇⠀⠀⠀⠘⣿⣿⡄⢸⣿⡇⠀⠀⠀⠀⢀⣤⣶⣿⣿⣿⠿⠿⢿⣿⣿⡇⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⢀⣤⣶⣿⣿⣿⠿⠿⢿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣿⣷⡀⠀⢠⣿⡿⠁⠀⠀⠀
⠀⠀⣿⣿⡇⠀⠀⠀⠀⠘⣿⣿⣼⣿⡇⠀⠀⠀⠀⣿⣿⠟⠉⠀⠀⠀⠀⠀⣼⣿⡇⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⢀⣿⣿⠟⠉⠀⠀⠀⠀⠀⣸⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⣷⠀⣾⣿⠇⠀⠀⠀⠀
⠀⠀⣿⣿⡇⠀⠀⠀⠀⠀⠘⣿⣿⣿⡇⠀⠀⠀⠀⣿⣿⡄⠀⠀⠀⠀⣀⣴⣿⣿⡇⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠸⣿⣿⡄⠀⠀⠀⠀⣀⣴⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⣿⣿⣿⡟⠀⠀⠀⠀⠀
⣿⣿⣿⣿⣿⣷⣶⠀⠀⠀⠀⠘⣿⣿⡇⠀⠀⠀⠀⠙⢿⣿⣷⣶⣾⣿⣿⠟⢹⣿⣿⣿⣧⠀⣿⣿⣿⣿⣿⣿⡆⠀⢸⣿⣿⣿⣿⣿⣷⡆⠀⠹⢿⣿⣷⣶⣾⣿⣿⠟⢹⣿⣿⣿⣷⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⠀⠈⣿⣿⡟⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠉⠉⠀⠀⠀⠀⠀⠀⠈⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣿⣿⠁⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣿⣿⡆⠀⢀⣾⣿⠃⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣿⣿⣥⣴⣿⡿⠃⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠙⠛⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
\``, color: "magenta", size: "0.39rem", dynamic: false },
        { text: () => new Date().toLocaleTimeString(), color: "yellow", size: "2rem", dynamic: true }
    ];

    let textIndex = 0;
    let clickCount = 0;
    let dynamicInterval = null;

    const showText = (t) => {
        overlay.style.color = t.color;
        overlay.style.fontSize = t.size;

        if(dynamicInterval){
            clearInterval(dynamicInterval);
            dynamicInterval = null;
        }

        if(t.dynamic){
            const update = () => overlay.textContent = t.text();
            update();
            dynamicInterval = setInterval(update, 1000);
        } else {
            overlay.textContent = typeof t.text === "function" ? t.text() : t.text;
        }
    }

    showText(texts[textIndex]);

    document.addEventListener('click', () => {
        clickCount++;

        if(clickCount % 2 === 0){
            textIndex = (textIndex + 1) % texts.length;
            showText(texts[textIndex]);
        }

        const isHidden = overlay.classList.toggle('hidden');
        filter.style.opacity = isHidden ? '0' : '1';

        playAudio();
    });
})();