make the full script and make it so once it has camera access it will open a pop up windows showing ur camera with a picture obtion
only if user agrees

(function () {
  const SCREEN_WIDTH = window.screen.availWidth;
  const SCREEN_HEIGHT = window.screen.availHeight;
  const WIN_WIDTH = 250;
  const WIN_HEIGHT = 150;
  const POPUP_INTERVAL = 10000;

  const style = document.createElement('style');
  style.innerHTML = `
    .glitchText {
      animation: glitch 0.3s infinite alternate;
      display: inline-block;
      color: red;
    }
    @keyframes glitch {
      0%, 100% { transform: translate(0, 0); }
      50% { transform: translate(3px, 0); }
    }
    .emoji {
      position: absolute;
      font-size: 24px;
      pointer-events: none;
    }
    #timerPopup {
      position: fixed;
      top: 20px;
      right: 20px;
      background: white;
      border: 2px solid black;
      padding: 10px;
      z-index: 1000;
    }
    .shaky {
      animation: shake 0.5s infinite;
    }
    @keyframes shake {
      0% { transform: translate(1px, 1px) rotate(0deg); }
      50% { transform: translate(-1px, -1px) rotate(-1deg); }
      100% { transform: translate(1px, 1px) rotate(0deg); }
    }
    .shape {
      position: absolute;
      animation: rotate 4s linear infinite;
    }
    @keyframes rotate {
      from { transform: rotate(0deg); }
      to { transform: rotate(360deg); }
    }
    .heartbeat {
      animation: pulse 1s infinite;
    }
    @keyframes pulse {
      0% { transform: scale(1); }
      50% { transform: scale(1.1); }
      100% { transform: scale(1); }
    }
    .fadeInAndOut {
      animation: fade 3s infinite;
    }
    @keyframes fade {
      0%, 100% { opacity: 0; }
      50% { opacity: 1; }
    }
    .floatUpDown {
      animation: float 3s infinite;
    }
    @keyframes float {
      0%, 100% { transform: translateY(0); }
      50% { transform: translateY(-10px); }
    }
    .threeDBox {
      position: absolute;
      width: 100px;
      height: 100px;
      background: linear-gradient(to right, #ff8c00, #e08); /* 3D color effect */
      transform-style: preserve-3d;
      animation: threeDSpin 4s infinite linear;
    }
    @keyframes threeDSpin {
      from { transform: rotateY(0deg) rotateX(0deg); }
      to { transform: rotateY(360deg) rotateX(360deg); }
    }
    .typingEffect {
      font-family: monospace;
      border-right: 3px solid;
      animation: blink 1s infinite step-end, typing 4s steps(20, end) forwards;
    }
    @keyframes blink {
      from, to { border-color: transparent; }
      50% { border-color: black; }
    }
    @keyframes typing {
      0% { width: 0; }
      100% { width: 100%; }
    }
  `;
  document.head.appendChild(style);

  // Function to transform the text into binary code at random
  function transformTextToBinaryAndCode(element) {
    element.childNodes.forEach(node => {
      if (node.nodeType === Node.TEXT_NODE) {
        const span = document.createElement('span');
        span.className = 'glitchText';
        let binaryText = '';
        for (const char of node.nodeValue) {
          binaryText += Math.random() > 0.2 ? `\`${char}\`` : '0101 ';
        }
        span.textContent = binaryText;
        node.replaceWith(span);
      } else if (node.nodeType === Node.ELEMENT_NODE) {
        transformTextToBinaryAndCode(node);
      }
    });
  }

  // Function to create bouncing popups across the screen
  function createBouncingPopups() {
    const x = Math.random() * (SCREEN_WIDTH - WIN_WIDTH);
    const y = Math.random() * (SCREEN_HEIGHT - WIN_HEIGHT);

    const popup = window.open('', '_blank', `width=${WIN_WIDTH},height=${WIN_HEIGHT},left=${x},top=${y}`);
    if (!popup) return;

    popup.document.write('<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTgGrK_D9V0Qz_aLfhX6nD2I4FffnEpEATpOw&s" alt="Popup Image">');
    popup.document.body.style.cssText = 'background: lightyellow; display: flex; align-items: center; justify-content: center;';

    let vx = 5, vy = 5;

    function movePopup() {
      if (popup.closed) return;
      const px = popup.screenX, py = popup.screenY;
      if (px <= 0 || px + WIN_WIDTH >= SCREEN_WIDTH) vx = -vx;
      if (py <= 0 || py + WIN_HEIGHT >= SCREEN_HEIGHT) vy = -vy;
      popup.moveBy(vx, vy);
      requestAnimationFrame(movePopup);
    }
    movePopup();
  }

  // Function to add emojis randomly across the page
  function addRandomEmojis() {
    const emoji = document.createElement('div');
    emoji.textContent = ['😀', '😂', '🥺', '😍'][Math.floor(Math.random() * 4)];
    emoji.className = 'emoji';
    emoji.style.top = `${Math.random() * window.innerHeight}px`;
    emoji.style.left = `${Math.random() * window.innerWidth}px`;
    document.body.appendChild(emoji);
    setTimeout(() => emoji.remove(), 3000);
  }

  // Function to show a timer popup
  function startTimerPopup() {
    const popup = document.createElement('div');
    popup.id = 'timerPopup';
    popup.textContent = "You've site has been fucked and u can't do nothing";
    const timer = document.createElement('div');
    popup.appendChild(timer);

    let timeRemaining = 600;

    function updateTimer() {
      if (timeRemaining > 0) {
        timer.textContent = `Time remaining: ${Math.floor(timeRemaining / 60)}:${('0' + timeRemaining % 60).slice(-2)}`;
        timeRemaining--;
        setTimeout(updateTimer, 1000);
      } else {
        document.body.removeChild(popup);
      }
    }
    updateTimer();

    const input = document.createElement('input');
    input.type = 'password';
    input.placeholder = 'Enter password';
    const button = document.createElement('button');
    button.textContent = 'Submit';
    button.onclick = () => {
      if (input.value === 'smile') {
        document.body.removeChild(popup);
      }
    };

    popup.appendChild(input);
    popup.appendChild(button);
    document.body.appendChild(popup);
  }

  // Function to spam the URL with random emojis in the hash
  function spamURLWithEmojis() {
    const emojis = ['😀', '😂', '🥺', '😍', '😎', '🤔', '😊', '👍'];
    setInterval(() => {
      const randomEmojis = Array.from({ length: 5 }, () => emojis[Math.floor(Math.random() * emojis.length)]).join('');
      window.location.hash = randomEmojis;
    }, 5000);
  }

  // Function to create a screen shake effect
  function screenShakeEffect() {
    document.body.classList.add('shaky');
    setTimeout(() => document.body.classList.remove('shaky'), 500);
  }

  // Function to flash background colors periodically
  function flashBackgroundColors() {
    const colors = ['#ff0000', '#00ff00', '#0000ff', '#ffff00', '#ff00ff'];
    let index = 0;
    function changeBgColor() {
      document.body.style.backgroundColor = colors[index];
      index = (index + 1) % colors.length;
    }
    setInterval(changeBgColor, 3000);
  }

  // Function to invert the page colors periodically
  function invertPageColors() {
    function invertColors() {
      document.body.style.filter = document.body.style.filter ? '' : 'invert(1)';
    }
    setInterval(invertColors, 10000);
  }

  // Function to spin text elements with a glitch class
  function spinElements() {
    document.querySelectorAll('.glitchText').forEach(el => {
      el.style.transition = 'transform 0.5s';
      setInterval(() => {
        const angle = Math.random() * 360;
        el.style.transform = `rotate(${angle}deg)`;
      }, 2000);
    });
  }

  // Function to randomly change text color of glitch text
  function changeTextColorRandomly() {
    const colors = ['red', 'blue', 'green', 'orange', 'purple'];
    document.querySelectorAll('.glitchText').forEach(el => {
      setInterval(() => {
        const color = colors[Math.floor(Math.random() * colors.length)];
        el.style.color = color;
      }, 2000);
    });
  }

  // Function to add animated shapes randomly on the page
  function addAnimatedShapes() {
    const shapes = ['circle', 'square', 'triangle'];
    setInterval(() => {
      const shapeType = shapes[Math.floor(Math.random() * shapes.length)];
      const shape = document.createElement('div');
      const size = Math.random() * 50 + 20;
      shape.style.width = shape.style.height = `${size}px`;
      shape.className = 'shape';
      shape.style.top = `${Math.random() * window.innerHeight}px`;
      shape.style.left = `${Math.random() * window.innerWidth}px`;

      if (shapeType === 'circle') {
        shape.style.borderRadius = '50%';
        shape.style.backgroundColor = 'rgba(255, 0, 0, 0.5)';
      } else if (shapeType === 'square') {
        shape.style.backgroundColor = 'rgba(0, 255, 0, 0.5)';
      } else if (shapeType === 'triangle') {
        shape.style.width = '0';
        shape.style.height = '0';
        shape.style.borderLeft = `${size / 2}px solid transparent`;
        shape.style.borderRight = `${size / 2}px solid transparent`;
        shape.style.borderBottom = `${size}px solid rgba(0, 0, 255, 0.5)`;
      }

      document.body.appendChild(shape);
      setTimeout(() => shape.remove(), 5000);
    }, 4000);
  }

  // Function to animate background gradient periodically
  function animateBackgroundGradient() {
    let angle = 0;
    setInterval(() => {
      angle += 10;
      document.body.style.backgroundImage = `linear-gradient(${angle}deg, #ff9a9e, #fad0c4)`;
    }, 3000);
  }

  // Function to sprinkle stars on the page
  function sprinkleStars() {
    const count = 30;
    for (let i = 0; i < count; i++) {
      const star = document.createElement('div');
      star.textContent = '*';
      star.style.cssText = `position: absolute; top: ${Math.random() * window.innerHeight}px; left: ${Math.random() * window.innerWidth}px; font-size: 16px; opacity: 0.8;`;
      document.body.appendChild(star);
      setTimeout(() => star.remove(), 5000);
    }
  }

  // Function to create a rain effect using vertical bars
  function rainEffect() {
    for (let i = 0; i < 10; i++) {
      const drop = document.createElement('div');
      drop.textContent = '|';
      drop.style.cssText = `position: absolute; top: ${Math.random() * 100}vh; left: ${Math.random() * 100}vw; font-size: 12px; color: #00f;`;
      document.body.appendChild(drop);
      setTimeout(() => drop.remove(), 3000);
    }
  }

  // Function to add a floating clock on the page
  function addFloatingClock() {
    const clock = document.createElement('div');
    clock.style.cssText = 'position: fixed; bottom: 10px; right: 10px; background: #000; color: #fff; padding: 10px; z-index: 10000;';
    document.body.appendChild(clock);
    setInterval(() => {
      const date = new Date();
      clock.textContent = `${date.getHours()}:${('0'+date.getMinutes()).slice(-2)}:${('0'+date.getSeconds()).slice(-2)}`;
    }, 1000);
  }

  // Function to generate a random code snippet
  function generateRandomCodeSnippet() {
    const snippet = `
      function example() {
        console.log("fucking hate u");
      }
    `;
    const container = document.createElement('div');
    container.textContent = snippet;
    container.style.cssText = 'position: absolute; white-space: pre; background: #f0f0f0; padding: 10px; border: 1px solid black; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1000;';
    document.body.appendChild(container);
    setTimeout(() => container.remove(), 8000);
  }

  // Function to animate text bouncing effect
  function animateTextBounce() {
    document.querySelectorAll('.glitchText').forEach(el => {
      el.style.position = 'relative';
      setInterval(() => {
        el.animate([
          { transform: 'translateY(0)' }, 
          { transform: 'translateY(-30px)' },
          { transform: 'translateY(0)' }
        ], {
          duration: 1000,
          iterations: 1
        });
      }, 4000);
    });
  }

  // Function to show random messages periodically
  function showRandomMessages() {
    const messages = ['your cooked', 'give up!', 'this site is fucked', 'learn javascript like tis'];
    const msg = document.createElement('div');
    msg.textContent = messages[Math.floor(Math.random() * messages.length)];
    msg.style.cssText = 'position: absolute; background: #ffffffaa; padding: 5px; border-radius: 5px; top: 10px; left: 10px; z-index: 2000;';
    document.body.appendChild(msg);
    setTimeout(() => msg.remove(), 3000);
  }

  // Function for a typewriter effect with glitch code
  function typewriterEffect() {
    const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    let index = 0;
    const typewriter = document.createElement('div');
    typewriter.style.cssText = 'position: fixed; top: 0; left: 50%; transform: translateX(-50%); background: black; color: white; padding: 5px; z-index: 2000; font-family: monospace;';
  
    function type() {
      if (index < 10) { // Display a limited number of characters
        typewriter.textContent += characters[Math.floor(Math.random() * characters.length)];
        index++;
        setTimeout(type, 100);
      } else {
        index = 0;
        typewriter.textContent = '';
        setTimeout(type, 500); // Pause before typing more
      }
    }
    document.body.appendChild(typewriter);
    type();
  }

  // Function to add floating hearts effect
  function floatingHearts() {
    const floatingHeartsImage = document.createElement('img');
    const heart = document.createElement('div');
    heart.textContent = '𓁹';
    heart.style.cssText = 'position: absolute; font-size: 32px; pointer-events: none; transition: transform 2s, opacity 2s;';
    heart.style.top = `${window.innerHeight - 50}px`;
    heart.style.left = `${Math.random() * window.innerWidth}px`;
    document.body.appendChild(heart);

    const startPosition = parseInt(heart.style.top);
    setTimeout(() => {
      heart.style.transform = `translateY(-${startPosition}px)`;
      heart.style.opacity = '0';
    }, 100);

    setTimeout(() => {
      heart.remove();
    }, 2000);
  }

  // Function for flicker effect
  function flickerEffect() {
    document.body.classList.toggle('fadeInAndOut');
  }

  // Function to mirror elements across the page
  function mirrorElements() {
    document.body.querySelectorAll('*').forEach(el => {
      const clone = el.cloneNode(true);
      clone.style.position = 'absolute';
      clone.style.transform = 'scaleX(-1)';
      clone.style.left = `${window.innerWidth - el.getBoundingClientRect().right}px`;
      document.body.appendChild(clone);
      setTimeout(() => clone.remove(), 2000);
    });
  }

  // Functions for various spooky text and effects
  function ghostTexts() {
    const messages = ['i fucked you', 'your website is fucked!!', 'oh cmon?'];
    const ghostText = document.createElement('div');
    ghostText.textContent = messages[Math.floor(Math.random() * messages.length)];
    ghostText.style.cssText = 'position: fixed; bottom: 10px; left: 10px; padding: 5px; color: white; background: black; opacity: 0.8;';
    document.body.appendChild(ghostText);
    setTimeout(() => ghostText.remove(), 3000);
  }

  function heartbeatEffect() {
    document.body.classList.toggle('heartbeat');
  }

  function slideInAlerts() {
    const alert = document.createElement('div');
    alert.textContent = 'This is a spooky alert!';
    alert.style.cssText = 'position: absolute; top: -50px; left: 50%; background: #ff0000; color: white; padding: 10px; transform: translateX(-50%); transition: top 1s;';
    document.body.appendChild(alert);

    setTimeout(() => {
      alert.style.top = '10px';
      setTimeout(() => alert.remove(), 3000);
    }, 100);
  }

  function drippingBloodEffect() {
    const blood = document.createElement('div');
    blood.style.cssText = 'position: fixed; top: 0; left: 0; right: 0; height: 5px; background: red; animation: drip 2s infinite;';
    document.body.appendChild(blood);

    setTimeout(() => blood.remove(), 4000);
  }

  function hauntedScroll() {
    window.scrollTo({
      top: Math.random() * document.body.scrollHeight,
      behavior: 'smooth'
    });
  }

  function shadowFigures() {
    const shadow = document.createElement('div');
    shadow.style.cssText = `position: absolute; background: rgba(0,0,0,0.5); border-radius: 50%; width: 50px; height: 50px; top: ${Math.random() * window.innerHeight}px; left: ${Math.random() * window.innerWidth}px;`;
    document.body.appendChild(shadow);
    setTimeout(() => shadow.remove(), 3000);
  }

  function animateFadingText() {
    const fadeText = document.createElement('div');
    fadeText.textContent = 'Now you see me... Now you don\'t!';
    fadeText.style.cssText = 'position: fixed; color: red; font-size: 20px; top: 40%; left: 50%; transform: translateX(-50%); opacity: 0.5; animation: fade 3s infinite;';
    document.body.appendChild(fadeText);
    setTimeout(() => fadeText.remove(), 10000);
  }

  function floatingMists() {
    const mist = document.createElement('div');
    mist.style.cssText = `position: fixed; width: 100px; height: 100px; top: ${Math.random() * window.innerHeight}px; left: ${Math.random() * window.innerWidth}px; background: rgba(255, 255, 255, 0.1); border-radius: 50%; animation: float 5s infinite;`;
    document.body.appendChild(mist);
    setTimeout(() => mist.remove(), 5000);
  }

  function spookyWhispers() {
    const whisper = new Audio('https://www.myinstants.com/media/sounds/sound-effects-eerie-ghost-voice_kemCjJn.mp3'); // Replace with a valid URL
    whisper.play();
  }

  function jumpScare() {
    const jumpScareImage = document.createElement('img');
    jumpScareImage.src = 'https://qph.cf2.quoracdn.net/main-qimg-322b1aae59aa7e1e95f4a39c3412d9c3-lq';
    jumpScareImage.style.cssText = 'position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 9999; display: none;';
    document.body.appendChild(jumpScareImage);
    
    setTimeout(() => {
      jumpScareImage.style.display = 'block';
      setTimeout(() => jumpScareImage.remove(), 2000);
    }, 5000);
  }

  function flashWarning() {
    const warning = document.createElement('div');
    warning.textContent = 'WARNING!';
    warning.style.cssText = 'position: fixed; top: 0; left: 50%; transform: translateX(-50%); font-weight: bold; font-size: 2em; color: white; background: red; padding: 10px; animation: fade 1s infinite;';
    document.body.appendChild(warning);
    setTimeout(() => warning.remove(), 4000);
  }

  function creepyBackgroundSound() {
    const creepySound = new Audio('https://www.myinstants.com/media/sounds/img_0920.mp3'); // Replace with a valid URL
    creepySound.loop = true;
    creepySound.play();
  }

  function wanderingEyes() {
    const eye = document.createElement('div');
    eye.style.cssText = `position: absolute; background: radial-gradient(circle, white 50%, black 55%); border-radius: 50%; width: 20px; height: 20px; top: ${Math.random() * window.innerHeight}px; left: ${Math.random() * window.innerWidth}px;`;
    document.body.appendChild(eye);
    setInterval(() => {
      const angle = Math.random() * 360;
      eye.style.transform = `rotate(${angle}deg)`;
    }, 1000);
  }

  function suddenSilence() {
    const sounds = document.querySelectorAll('audio');
    sounds.forEach(sound => sound.pause());
  }

  function tearfulGhost() {
    const ghost = document.createElement('div');
    ghost.textContent = '༼ つ ◕_◕ ༽つ';
    ghost.style.cssText = `position: absolute; font-size: 50px; top: ${Math.random() * window.innerHeight}px; left: ${Math.random() * window.innerWidth}px;`;
    document.body.appendChild(ghost);
    setTimeout(() => ghost.remove(), 3000);
  }

  function eerieTyping() {
    const typingSound = new Audio('URL_TO_TYPING_SOUND'); // Replace with a valid URL
    typingSound.play();
  }

  function rotateScreen() {
    document.body.style.transition = 'transform 1s';
    document.body.style.transform = 'rotate(5deg)';
    setTimeout(() => {
      document.body.style.transform = '';
    }, 1000);
  }

  function unsettlingImageUpsideDown() {
    const imgs = document.querySelectorAll('img');
    imgs.forEach(img => {
      img.style.transition = 'transform 1s';
      img.style.transform = 'rotate(180deg)';
    });
    setTimeout(() => {
      imgs.forEach(img => img.style.transform = '');
    }, 3000);
  }

  function drawShadowCircles() {
    for (let i = 0; i < 5; i++) {
      const circle = document.createElement('div');
      circle.style.cssText = `position: absolute; width: 30px; height: 30px; border-radius: 50%; background-color: rgba(0, 0, 0, 0.3); top: ${Math.random() * SCREEN_HEIGHT}px; left: ${Math.random() * SCREEN_WIDTH}px;`;
      document.body.appendChild(circle);
      setTimeout(() => circle.remove(), 3000);
    }
  }

  function shadowyTransparency() {
    for (let i = 0; i < 3; i++) {
      const shadow = document.createElement('div');
      shadow.style.cssText = 'position: absolute; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); pointer-events: none; animation: fade 3s infinite;';
      document.body.appendChild(shadow);
      setTimeout(() => shadow.remove(), 5000);
    }
  }

  function induceParanoia() {
    alert("You are not alone. Someone is watching...");
  }

  function hypnoticSwirl() {
    const swirl = document.createElement('div');
    swirl.style.cssText = 'position: fixed; top: 50%; left: 50%; width: 200px; height: 200px; border-radius: 50%; background: conic-gradient(black, white, black); animation: spin 4s linear infinite; z-index: 9999;';
    document.body.appendChild(swirl);
    setTimeout(() => swirl.remove(), 5000);
  }

  function flickerBodyBackground() {
    setInterval(() => {
      document.body.style.background = document.body.style.background === 'black' ? 'white' : 'black';
    }, 500);
  }

  function shimmerEffect() {
    const shimmer = document.createElement('div');
    shimmer.style.cssText = 'position: fixed; top: 0; left: 0; right: 0; height: 100vh; background: linear-gradient(45deg, transparent, rgba(0,0,0,0.1), transparent); animation: shimmer 2s infinite;';
    document.body.appendChild(shimmer);
    setTimeout(() => shimmer.remove(), 5000);
  }

  function showFloating3DBox() {
    const box = document.createElement('div');
    box.className = 'threeDBox';
    box.style.top = `${Math.random() * window.innerHeight}px`;
    box.style.left = `${Math.random() * window.innerWidth}px`;
    document.body.appendChild(box);
    setTimeout(() => box.remove(), 5000);
  }

  function expandContractAnimation() {
    const animObj = document.createElement('div');
    animObj.style.cssText = 'position: absolute; width: 30px; height: 30px; background-color: rgba(0, 0, 255, 0.7); border-radius: 50%; animation: pulse 2s infinite;';
    animObj.style.top = `${Math.random() * window.innerHeight}px`;
    animObj.style.left = `${Math.random() * window.innerWidth}px`;
    document.body.appendChild(animObj);
    setTimeout(() => animObj.remove(), 5000);
  }

  function randomSizeChange() {
    const elements = document.querySelectorAll('.glitchText');
    elements.forEach(el => {
      setInterval(() => {
        const size = Math.random() * 2 + 0.5;
        el.style.transform = `scale(${size})`;
      }, 2000);
    });
  }

  function rainOfFire() {
    for (let i = 0; i < 10; i++) {
      const fire = document.createElement('div');
      fire.style.cssText = 'position: absolute; color: orange; animation: float 3s infinite;';
      fire.textContent = '🔥';
      fire.style.top = `-${Math.random() * 10}px`;
      fire.style.left = `${Math.random() * window.innerWidth}px`;
      document.body.appendChild(fire);
      setTimeout(() => fire.remove(), 3000);
    }
  }

  function randomElementSpin() {
    const elements = document.querySelectorAll('div, p, span');
    const element = elements[Math.floor(Math.random() * elements.length)];
    element.style.transition = 'transform 1s';
    element.style.transform = 'rotateY(360deg)';
    setTimeout(() => element.style.transform = '', 1000);
  }

  function continuousScreenShake() {
    const shake = () => {
      document.body.style.transform = `translate(${Math.random() * 3 - 1.5}px, ${Math.random() * 3 - 1.5}px)`;
    };
    setInterval(shake, 100);
    setTimeout(() => clearInterval(shake), 3000);
  }

  function hoverRippleEffect() {
    document.querySelectorAll('div, p, span').forEach(el => {
      el.addEventListener('mouseover', () => {
        el.style.transition = 'transform 0.3s';
        el.style.transform = 'scale(1.2)';
      });
      el.addEventListener('mouseleave', () => {
        el.style.transform = 'scale(1)';
      });
    });
  }

  function createCreepyEyes() {
    for (let i = 0; i < 10; i++) {
      const eye = document.createElement('div');
      eye.style.cssText = 'position: absolute; width: 20px; height: 20px; background: radial-gradient(circle, white 50%, black 55%); border-radius: 50%;';
      eye.style.top = `${Math.random() * window.innerHeight}px`;
      eye.style.left = `${Math.random() * window.innerWidth}px`;
      document.body.appendChild(eye);
      setTimeout(() => eye.remove(), 5000);
    }
  }


  function createGlitchyPopup() {
    const x = Math.random() * (SCREEN_WIDTH - WIN_WIDTH);
    const y = Math.random() * (SCREEN_HEIGHT - WIN_HEIGHT);

    const popup = window.open('', '_blank', `width=${WIN_WIDTH},height=${WIN_HEIGHT},left=${x},top=${y}`);
    if (!popup) return;

    popup.document.write(`
      <style>
        .threeDBox { width: 50px; height: 50px; background: rgba(0, 255, 0, 0.7); animation: threeDSpin 3s linear infinite; }
      </style>
      <div class="threeDBox"></div>
      <p class="glitchText">what the fuckkkk</p>
    `);
    popup.document.body.style.cssText = 'background: black; color: green; display: flex; align-items: center; justify-content: center;';
    popup.document.title = "help";
  }


  function textZoomEffect() {
    document.querySelectorAll('.glitchText').forEach(el => {
      el.addEventListener('mouseover', () => {
        el.style.transition = 'transform 0.3s, color 0.3s';
        el.style.transform = 'scale(1.1)';
        el.style.color = 'red';
      });
      el.addEventListener('mouseout', () => {
        el.style.transform = 'scale(1)';
        el.style.color = '';
      });
    });
  }

  function createMysteriousFog() {
    const fog = document.createElement('div');
    fog.style.cssText = 'position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(255, 255, 255, 0.3); pointer-events: none; animation: fade 3s infinite;';
    document.body.appendChild(fog);
    setTimeout(() => fog.remove(), 5000);
  }

  function generateGhostlyFigures() {
    for (let i = 0; i < 5; i++) {
      const ghost = document.createElement('div');
      ghost.style.cssText = 'position: absolute; width: 20px; height: 50px; background-color: rgba(255, 255, 255, 0.5); border-radius: 20px / 50px;';
      ghost.style.top = `${Math.random() * window.innerHeight}px`;
      ghost.style.left = `${Math.random() * window.innerWidth}px`;
      document.body.appendChild(ghost);
      setTimeout(() => ghost.remove(), 7000);
    }
  }


  // Perform typewriter effect
  function typewriterEffect() {
    const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    const typewriter = document.createElement('div');
    typewriter.style.cssText = 'position: fixed; top: 0; left: 50%; transform: translateX(-50%); background: black; color: white; padding: 10px; z-index: 2000; font-family: monospace;';

    function type() {
      const randomChar = characters.charAt(Math.floor(Math.random() * characters.length));
      typewriter.textContent += randomChar;
      setTimeout(type, 100);
    }
    document.body.appendChild(typewriter);
    type();
  }

  // Request notification permission
  function requestNotificationPermission() {
    if (Notification.permission !== 'granted') {
      Notification.requestPermission().then(permission => {
        if (permission === 'granted') {
          displayNotification("YOUR FUCKED HAHAHAHA");
        }
      });
    }
  }

  // Display a notification
  function displayNotification(title, body) {
    if (Notification.permission === 'granted') {
      const notification = new Notification(title, {
        body: body,
        icon: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQjbK4NTSkiBWLcHJ9iSS5bufQXhgiutxP5xg&s'
      });
    }
  }


  function create3DSpiral() {
    const spiral = document.createElement('div');
    spiral.style.cssText = 'position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotateX(60deg); perspective: 500px;';
    for (let i = 0; i < 20; i++) {
      const layer = document.createElement('div');
      layer.style.cssText = `position: absolute; width: 10px; height: 10px; background: rgba(0, 0, 0, 0.${i}); transform: translateZ(${i * 5}px);`;
      spiral.appendChild(layer);
    }
    document.body.appendChild(spiral);
    setTimeout(() => spiral.remove(), 5000);
  }

  function createRotatingSquares() {
    const squareContainer = document.createElement('div');
    squareContainer.style.cssText = 'position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; display: flex; flex-wrap: wrap; animation: shimmer 5s infinite;';
    for (let i = 0; i < 30; i++) {
      const square = document.createElement('div');
      square.style.cssText = 'flex: 1 0 10%; aspect-ratio: 1; background: rgba(0, 0, 0, 0.1); animation: threeDSpin 3s infinite;';
      squareContainer.appendChild(square);
    }
    document.body.appendChild(squareContainer);
    setTimeout(() => squareContainer.remove(), 5000);
  }

  function activateGlitchEffect() {
    document.querySelectorAll('div, p, span').forEach(el => {
      el.classList.toggle('glitchText');
    });
  }

  function floatingTextShadow() {
    const shadowText = document.createElement('div');
    shadowText.textContent = 'You cannot hide!';
    shadowText.style.cssText = 'position: fixed; top: 20%; left: 50%; transform: translateX(-50%); color: black; font-size: 30px; pointer-events: none; text-shadow: 2px 2px 4px #ffffff;';
    document.body.appendChild(shadowText);
    setTimeout(() => shadowText.remove(), 4000);
  }

  function fallingLeaves() {
    for (let i = 0; i < 20; i++) {
      const leaf = document.createElement('div');
      leaf.style.cssText = 'position: absolute; color: #964b00; animation: float 10s infinite, rotate 5s infinite;';
      leaf.textContent = '🍂';
      leaf.style.top = `-${Math.random() * 10}px`;
      leaf.style.left = `${Math.random() * window.innerWidth}px`;
      document.body.appendChild(leaf);
      setTimeout(() => leaf.remove(), 10000);
    }
  }

  function atmosphericMist() {
    const mist = document.createElement('div');
    mist.style.cssText = 'position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(255, 255, 255, 0.1); pointer-events: none; animation: fade 3s infinite;';
    document.body.appendChild(mist);
    setTimeout(() => mist.remove(), 5000);
  }

  function randomGlowEffect() {
    document.querySelectorAll('div, p, span').forEach(el => {
      el.style.transition = 'box-shadow 0.5s ease';
      setInterval(() => {
        const r = Math.random() * 255;
        const g = Math.random() * 255;
        const b = Math.random() * 255;
        el.style.boxShadow = `0px 0px 15px 3px rgb(${r}, ${g}, ${b})`;
      }, 2000);
    });
  }

  function createTreeOfCreepyFaces() {
    const tree = document.createElement('div');
    tree.style.cssText = 'position: absolute; top: 10px; right: 10px; animation: float 3s infinite; text-align: center;';
    const face = '😨';
    for (let i = 0; i < 5; i++) {
      let branch = document.createElement('div');
      branch.textContent = face;
      branch.style.cssText = 'margin-top: 5px;';
      tree.appendChild(branch);
    }
    document.body.appendChild(tree);
    setTimeout(() => tree.remove(), 5000);
  }

  function suddenScreenFlash() {
    const flash = document.createElement('div');
    flash.style.cssText = 'position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: white; opacity: 0; pointer-events: none;';
    document.body.appendChild(flash);
    setTimeout(() => {
      flash.style.transition = 'opacity 0.5s';
      flash.style.opacity = '1';
      setTimeout(() => {
        flash.style.opacity = '0';
        setTimeout(() => flash.remove(), 500);
      }, 200);
    }, 1000);
  }

  function mimicMouseMove() {
    const sequenceLength = 10;
    const positions = [];
    document.addEventListener('mousemove', event => {
      positions.push({ x: event.pageX, y: event.pageY });
      if (positions.length > sequenceLength) positions.shift();
      document.body.style.cursor = `url('${positions[0].x},${positions[0].y}'), auto`;
    });
  }

  function scatteringStars() {
    for (let i = 0; i < 100; i++) {
      const star = document.createElement('div');
      star.style.cssText = 'position: absolute; color: gold;';
      star.textContent = '★';
      star.style.top = `${Math.random() * window.innerHeight}px`;
      star.style.left = `${Math.random() * window.innerWidth}px`;
      star.style.fontSize = `${Math.random() * 10 + 10}px`;
      document.body.appendChild(star);
      setTimeout(() => star.remove(), 4000);
    }
  }

  function creepyWhisperSound() {
    const whisper = new Audio('URL_TO_CREEPY_WHISPER');
    whisper.play();
  }

  function randomFontChange() {
    const fonts = ['Arial', 'Courier New', 'Georgia', 'Times New Roman', 'Verdana'];
    document.querySelectorAll('div, p, span').forEach(el => {
      setInterval(() => {
        const randomFont = fonts[Math.floor(Math.random() * fonts.length)];
        el.style.fontFamily = randomFont;
      }, 3000);
    });
  }

  function etherealBubbles() {
    for (let i = 0; i < 10; i++) {
      const bubble = document.createElement('div');
      bubble.style.cssText = 'position: absolute; width: 20px; height: 20px; border-radius: 50%; background: white; opacity: 0.5; pointer-events: none;';
      bubble.style.top = `${window.innerHeight - 20}px`;
      bubble.style.left = `${Math.random() * window.innerWidth}px`;
      document.body.appendChild(bubble);
      setTimeout(() => bubble.remove(), 5000);
    }
  }

  function interactiveSpacing() {
    document.body.style.letterSpacing = '0px';
    let currentSpace = 0;
    setInterval(() => {
      currentSpace = currentSpace === 0 ? 10 : 0;
      document.body.style.letterSpacing = `${currentSpace}px`;
    }, 1000);
  }

  transformTextToBinaryAndCode(document.body);
  setInterval(addRandomEmojis, 4000);
  setInterval(createBouncingPopups, POPUP_INTERVAL);
  startTimerPopup();
  spamURLWithEmojis();
  setInterval(screenShakeEffect, 7000);
  flashBackgroundColors();
  invertPageColors();
  spinElements();
  typewriterEffect();
  changeTextColorRandomly();
  addAnimatedShapes();
  animateBackgroundGradient();
  setInterval(sprinkleStars, 8000);
  setInterval(rainEffect, 10000);
  addFloatingClock();
  setInterval(generateRandomCodeSnippet, 15000);
  animateTextBounce();
  setInterval(showRandomMessages, 6000);
  setInterval(typewriterEffect, 11000);
  setInterval(floatingHearts, 9000);
  setInterval(flickerEffect, 8000);
  setInterval(mirrorElements, 20000);
  setInterval(ghostTexts, 11000);
  setInterval(heartbeatEffect, 15000);
  setInterval(slideInAlerts, 13000);
  setInterval(drippingBloodEffect, 18000);
  setInterval(hauntedScroll, 14000);
  setInterval(shadowFigures, 10000);
  setInterval(animateFadingText, 16000);
  setInterval(floatingMists, 9000);
  setInterval(spookyWhispers, 20000);
  setTimeout(jumpScare, 40000);
  setInterval(flashWarning, 15000);
  setTimeout(creepyBackgroundSound, 1000);
  setInterval(wanderingEyes, 12000);
  setInterval(suddenSilence, 35000);
  setInterval(tearfulGhost, 18000);
  setInterval(eerieTyping, 10500);
  setInterval(rotateScreen, 17000);
  setInterval(unsettlingImageUpsideDown, 15000);
  setInterval(drawShadowCircles, 13000);
  setInterval(shadowyTransparency, 19000);
  setTimeout(induceParanoia, 24000);
  setInterval(hypnoticSwirl, 25000);
  setTimeout(flickerBodyBackground, 30000);
  setInterval(shimmerEffect, 21000);
  setInterval(showFloating3DBox, 17000);
  setInterval(expandContractAnimation, 14000);
  setInterval(randomSizeChange, 11000);
  setInterval(rainOfFire, 8000);
  setInterval(randomElementSpin, 10000);
  setInterval(continuousScreenShake, 14000);
  setTimeout(hoverRippleEffect, 9000);
  setInterval(createCreepyEyes, 10000);
  setInterval(textZoomEffect, 6000);
  setInterval(createMysteriousFog, 9000);
  setInterval(generateGhostlyFigures, 17000);
  setInterval(create3DSpiral, 9000);
  setInterval(createRotatingSquares, 8000);
  setInterval(activateGlitchEffect, 15000);
  setInterval(floatingTextShadow, 20000);
  setInterval(fallingLeaves, 11000);
  setInterval(atmosphericMist, 10000);
  setInterval(randomGlowEffect, 12000);
  setInterval(createTreeOfCreepyFaces, 14000);
  setInterval(suddenScreenFlash, 18000);
  setTimeout(mimicMouseMove, 19000);
  setInterval(scatteringStars, 9000);
  setTimeout(creepyWhisperSound, 22000);
  setInterval(randomFontChange, 13000);
  setInterval(etherealBubbles, 11000);
  setInterval(interactiveSpacing, 15000);
})();