<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Darvk</title>
    <link rel="shortcut icon" type="image/png" href="https://clipart-library.com/images/rTjrbKygc.png">
    <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Varela+Round&display=swap">
    <style>
        body {
            font-family: 'Varela Round', sans-serif;
            margin: 0;
            padding: 0;
            color: #ffffff;
            line-height: 1.6;
            position: relative;
            overflow: hidden;
            background: url('https://giffiles.alphacoders.com/483/48368.gif') no-repeat center center fixed;
            background-size: cover;
        }

        header {
            background-color: rgba(10, 17, 36, 0);
            color: #000000;
            padding: 10px;
            text-align: center;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        header h1 {
            font-size: 24px;
        }

        header img.logo {
            width: 120px; /* Ensure the logo is a reasonable size */
            height: auto; /* Maintain aspect ratio */
            margin-right: 10px; /* Space between logo and title */
        }
        
        .container, button {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .container:hover, button:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
        }

        #killButton {
            display: none;
            background-color: #e4243751;
            color: #ffffff;
            border: none;
            padding: 10px 20px;
            font-size: 16px;
            cursor: pointer;
            border-radius: 5px;
            transition: background-color 0.3s ease;
        }

        .logo {
            width: 120px;
            height: fit-content;
            border-radius: 59%;
            margin-right: 10px;
        }

        #killExtensionText {
            display: none;
            margin-top: 20px;
            color: #ffffff;
            font-size: 18px;
            text-align: center;
            background: rgba(10, 17, 36, 0);
            padding: 20px;
            border-radius: 59px;
        }

        .welcome-message {
            background-color: rgba(0, 0, 0, 0.7); /* Semi-transparent background */
            color: #ffffff; /* White text color */
            padding: 15px 20px; /* Padding for spacing */
            border-radius: 8px; /* Rounded corners */
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Subtle shadow */
            position: fixed; /* Fixed position */
            top: 20px; /* Distance from the top */
            left: 50%; /* Center horizontally */
            transform: translateX(-50%); /* Center alignment */
            z-index: 1000; /* Ensure it appears above other content */
            font-size: 18px; /* Font size */
            transition: opacity 0.5s ease; /* Smooth transition for appearance */
            opacity: 0; /* Start as invisible */
        }

        .welcome-message.show {
            opacity: 1; /* Fully visible when shown */
        }

        .container {
            max-width: 800px;
            margin: 50px auto;
            padding: 20px;
            text-align: center;
            background: rgba(10, 17, 36, 0);
            border-radius: 59px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
        }

        button {
            background-color: #351b6054;
            color: #ffffff;
            border: none;
            cursor: pointer;
            padding: 10px 20px;
            border-radius: 5px;
            font-size: 16px;
            margin: 10px auto;
            transition: background-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
        }

        button:hover {
            background-color: #0a1124;
            transform: translateY(-5px);
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
        }

        input[type="text"], input[type="password"], select {
            font-family: 'Varela Round', sans-serif;
            margin: 10px auto;
            padding: 12px;
            font-size: 15px;
            border-radius: 5px;
            border: 1px solid rgba(10, 17, 36, 0);
            width: 100%;
            transition: border-color 0.3s ease;
        }

        input:focus, select:focus {
            border-color: #4b6b77;
            outline: none;
        }

        .modal {
            display: flex; /* Ensure it uses flexbox for centering */
            position: fixed; /* Fixed position to cover the entire viewport */
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(10, 17, 36, 0.8); /* Semi-transparent background */
            justify-content: center; /* Center the content */
            align-items: center; /* Center the content */
            z-index: 9999; /* Ensure it is on top of other content */
            visibility: hidden; /* Initially hidden */
            opacity: 0; /* Initially transparent */
            transition: visibility 0s, opacity 0.5s linear; /* Smooth transition */
        }

        .modal-content {
            padding: 30px;
            border-radius: 20px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
            color: white;
            text-align: center;
        }

        #killButton:hover {
            background-color: #0a1124;
        }

        header img.logo {
            width: 120px; /* Ensure the logo is a reasonable size */
            height: auto; /* Maintain aspect ratio */
            margin-right: 10px; /* Space between logo and title */
        }

        .overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.8);
            display: none;
            justify-content: center;
            align-items: center;
            z-index: 9999;
            color: #ffffff;
            font-size: 24px;
            flex-direction: column;
            text-align: center;
        }

        html, body {
            height: 100%; /* Ensure the html and body take up the full height */
            margin: 0; /* Remove default margin */
            padding: 0; /* Remove default padding */
        }
        textarea {
            width: 100%;
            height: 100px;
            margin-top: 10px;
            background-color: rgba(255, 255, 255, 0.1);
            color: white;
            border: 1px solid #61dafb;
            border-radius: 5px;
        }

        .spinner {
            border: 6px solid rgba(0, 0, 0, 0.3);
            border-top: 6px solid #4b6b77;
            border-radius: 59%;
            width: 40px;
            height: 40px;
            animation: spin 1s linear infinite;
            margin-bottom: 20px;
        }

        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        footer {
            background-color: rgba(10, 17, 36, 0);
            color: #ffffff;
            text-align: center;
            padding: 15px;
            position: fixed;
            bottom: 0;
            width: 100%;
        }

        footer a {
            color: #cbcbcb;
            text-decoration: none;
        }

        footer a:hover {
            text-decoration: underline;
        }

        .modal.show {
            visibility: visible; /* Show the modal */
            opacity: 1; /* Fully opaque */
        }

        .background-media {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: -1;
            object-fit: cover;
        }
    </style>
</head>
<body>
    <header>
        <img src="https://clipart-library.com/images/rTjrbKygc.png" alt="Logo" class="logo">
        <h1>DarvkV4</h1>
    </header>

    <div id="welcomeMessage" style="display: none; color: white; text-align: center; font-size: 20px;"></div>

    <div class="modal" id="loginModal">
        <div class="modal-content">
            <h2>Login to Darvk</h2>
            <input type="text" id="usernameInput" placeholder="Username">
            <input type="password" id="passwordInput" placeholder="Password">
            <button onclick="checkLogin()">Login</button>
        </div>
    </div>

    <div class="container" id="mainContent" style="display:none;">
        <p>DarvkV4 is an external tool made by Anonymous, it works as of December 2024.</p>
        <label for="iframeSelect" id="labelForIframeSelect">Select extension:</label>
        <select id="iframeSelect"></select>
        <button onclick="warning();" id="hangButton">Freeze Extension</button>
        <button onclick="openCrashPopup();" id="crashButton">Code Executor</button>
        <button id="killButton" onclick="openExtensionPopup();">Kill Extension!</button>
        <button id="tutcrash">Crash Google Classroom (Version 90 ONLY!)</button>
        <button id="openGoogleButton">Bypassed websites</button>
        <button id="openallgg">Open all websites (Can bypass GG)</button>
        <button id="openWebsiteButton">Run javascript on selected sites</button>

        <script>
        document.getElementById('openGoogleButton').addEventListener('click', function() {
            // Prompt the user to select a website
            var choice = prompt("Which website do you want to open?\n1. Anura (Best)\n2. Aluu (Good)\n3. EvilTester (Worst)\n\nPlease choose (Anura, Aluu, or EvilTester)");
            var proxyUrl;

            // Determine the URL based on user input
            switch (choice) {
                case 'Anura':
                    proxyUrl = "https://anura.pro/";
                    break;
                case 'Aluu':
                    proxyUrl = "https://aluu.xyz/";
                    break;
                case 'EvilTester':
                    proxyUrl = "https://eviltester.github.io/TestingApp/apps/iframe-search/iframe-search.html";
                    break;
                default:
                    alert("Invalid choice. Please select a valid option.");
                    return; // Exit the function if the input is invalid
            }

            // Open the selected URL in a new popup window
            var popup = window.open("about:blank", "_blank", "width=800,height=600");
            popup.document.write(`
                <html>
                    <head>
                        <title>Loaded Website</title>
                        <style>
                            body {
                                margin: 0;
                                padding: 0;
                                background: url('https://giffiles.alphacoders.com/483/48368.gif') no-repeat center center fixed;
                                background-size: cover;
                            }
                            #websiteFrame {
                                width: 100vw;
                                height: 100vh;
                                border: none;
                            }
                        </style>
                    </head>
                    <body>
                        <iframe id="websiteFrame" src="${proxyUrl}"></iframe>
                    </body>
                </html>
            `);
            popup.document.close();

            // Add event listener to detect F11 key for fullscreen
            popup.document.addEventListener('keydown', function(event) {
                if (event.key === 'F11') {
                    event.preventDefault(); // Prevent the default F11 behavior
                    var iframe = popup.document.getElementById('websiteFrame');
                    if (iframe.requestFullscreen) {
                        iframe.requestFullscreen();
                    } else if (iframe.mozRequestFullScreen) { // Firefox
                        iframe.mozRequestFullScreen();
                    } else if (iframe.webkitRequestFullscreen) { // Chrome, Safari and Opera
                        iframe.webkitRequestFullscreen();
                    } else if (iframe.msRequestFullscreen) { // IE/Edge
                        iframe.msRequestFullscreen();
                    }
                }
            });
        });
    </script>

        <script>
            document.getElementById('openWebsiteButton').addEventListener('click', function() {
                // Prompt the user to select a website
                var choice = prompt("Which website do you want to open?\n1. Anura (Best)\n2. Aluu (Good)\n3. EvilTester (Worst)\n\nPlease choose (Anura, Aluu, or EvilTester)");
                var proxyUrl;
    
                // Determine the URL based on user input
                switch (choice) {
                    case 'Anura':
                        proxyUrl = "https://anura.pro/";
                        break;
                    case 'Aluu':
                        proxyUrl = "https://aluu.xyz/";
                        break;
                    case 'EvilTester':
                        proxyUrl = "https://eviltester.github.io/TestingApp/apps/iframe-search/iframe-search.html";
                        break;
                    default:
                        alert("Invalid choice. Please select a valid option.");
                        return; // Exit the function if the input is invalid
                }
    
                // Open the selected URL in a new popup window
                var popup = window.open("about:blank", "_blank", "width=800,height=600");
                popup.document.write(`
                    <html>
                        <head>
                            <title>Loaded Website</title>
                            <style>
                                body {
                                    background: url('https://giffiles.alphacoders.com/483/48368.gif') no-repeat center center fixed;
                                    background-size: cover;
                                    color: white;
                                    font-family: 'Arial', sans-serif;
                                }
                                #websiteFrame {
                                    width: 100%;
                                    height: 90%;
                                    border: none;
                                }
                                textarea {
                                    width: 100%;
                                    height: 100px;
                                    margin-top: 10px;
                                    background-color: rgba(255, 255, 255, 0.1);
                                    color: white;
                                    border: 1px solid #61dafb;
                                    border-radius: 5px;
                                }
                                button {
                                    background-color: #351b6054;
                                    color: #ffffff;
                                    border: none;
                                    cursor: pointer;
                                    padding: 10px 20px;
                                    border-radius: 5px;
                                    font-size: 16px;
                                    margin: 10px auto;
                                    transition: background-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
                                }
                                button:hover {
                                    background-color: #0a1124;
                                    transform: translateY(-5px);
                                    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
                                }
                            </style>
                        </head>
                        <body>
                            <iframe id="websiteFrame" src="${proxyUrl}"></iframe>
                            <textarea id="jsInput" placeholder="Enter JavaScript code here..."></textarea>
                            <button id="executeJsButton">Execute JavaScript</button>
                            <button id="fullscreenButton">Toggle Fullscreen</button>
                        </body>
                    </html>
                `);
                popup.document.close();
    
                // Add event listener to the button to execute JavaScript
                popup.document.getElementById('executeJsButton').addEventListener('click', function() {
                    var jsCode = popup.document.getElementById('jsInput').value;
                    if (jsCode) {
                        var iframe = popup.document.getElementById('websiteFrame');
                        // Execute JavaScript in the iframe
                        try {
                            iframe.contentWindow.eval(jsCode);
                        } catch (e) {
                            alert("Error executing JavaScript: " + e.message);
                        }
                    }
                });
    
                // Add event listener to toggle fullscreen
                popup.document.getElementById('fullscreenButton').addEventListener('click', function() {
                    var iframe = popup.document.getElementById('websiteFrame');
                    if (iframe.requestFullscreen) {
                        iframe.requestFullscreen();
                    } else if (iframe.mozRequestFullScreen) { // Firefox
                        iframe.mozRequestFullScreen();
                    } else if (iframe.webkitRequestFullscreen) { // Chrome, Safari and Opera
                        iframe.webkitRequestFullscreen();
                    } else if (iframe.msRequestFullscreen) { // IE/Edge
                        iframe.msRequestFullscreen();
                    }
                });
            });
        
            document.getElementById('openallgg').addEventListener('click', function() {
            // Prompt the user to select a website
            proxyUrl = "https://eviltester.github.io/TestingApp/apps/iframe-search/iframe-search.html";
            var popup = window.open("about:blank", "_blank", "width=800,height=600");
            popup.document.write(`
                <html>
                    <head>
                        <title>Loaded Website</title>
                        <style>
                            body {
                                margin: 0;
                                padding: 0;
                                background-size: cover;
                            }
                            #websiteFrame {
                                width: 100vw;
                                height: 100vh;
                                border: none;
                            }
                        </style>
                    </head>
                    <body>
                        <iframe id="websiteFrame" src="${proxyUrl}"></iframe>
                    </body>
                </html>
            `);
            popup.document.close();

            // Add event listener to detect F11 key for fullscreen
            popup.document.addEventListener('keydown', function(event) {
                if (event.key === 'F11') {
                    event.preventDefault(); // Prevent the default F11 behavior
                    var iframe = popup.document.getElementById('websiteFrame');
                    if (iframe.requestFullscreen) {
                        iframe.requestFullscreen();
                    } else if (iframe.mozRequestFullScreen) { // Firefox
                        iframe.mozRequestFullScreen();
                    } else if (iframe.webkitRequestFullscreen) { // Chrome, Safari and Opera
                        iframe.webkitRequestFullscreen();
                    } else if (iframe.msRequestFullscreen) { // IE/Edge
                        iframe.msRequestFullscreen();
                    }
                }
            });
        });

            document.getElementById('openallgg').addEventListener('click', function() {
            // Prompt the user to select a website
            proxyUrl = "https://aluu.xyz/";
            var popup = window.open("about:blank", "_blank", "width=800,height=600");
            popup.document.write(`
                <html>
                    <head>
                        <title>Loaded Website</title>
                        <style>
                            body {
                                margin: 0;
                                padding: 0;
                                background-size: cover;
                            }
                            #websiteFrame {
                                width: 100vw;
                                height: 100vh;
                                border: none;
                            }
                        </style>
                    </head>
                    <body>
                        <iframe id="websiteFrame" src="${proxyUrl}"></iframe>
                    </body>
                </html>
            `);
            popup.document.close();

            // Add event listener to detect F11 key for fullscreen
            popup.document.addEventListener('keydown', function(event) {
                if (event.key === 'F11') {
                    event.preventDefault(); // Prevent the default F11 behavior
                    var iframe = popup.document.getElementById('websiteFrame');
                    if (iframe.requestFullscreen) {
                        iframe.requestFullscreen();
                    } else if (iframe.mozRequestFullScreen) { // Firefox
                        iframe.mozRequestFullScreen();
                    } else if (iframe.webkitRequestFullscreen) { // Chrome, Safari and Opera
                        iframe.webkitRequestFullscreen();
                    } else if (iframe.msRequestFullscreen) { // IE/Edge
                        iframe.msRequestFullscreen();
                    }
                }
            });
        });

            document.getElementById('openallgg').addEventListener('click', function() {
            // Prompt the user to select a website
            proxyUrl = "https://anura.pro/";
            var popup = window.open("about:blank", "_blank", "width=800,height=600");
            popup.document.write(`
                <html>
                    <head>
                        <title>Loaded Website</title>
                        <style>
                            body {
                                margin: 0;
                                padding: 0;
                                background-size: cover;
                            }
                            #websiteFrame {
                                width: 100vw;
                                height: 100vh;
                                border: none;
                            }
                        </style>
                    </head>
                    <body>
                        <iframe id="websiteFrame" src="${proxyUrl}"></iframe>
                    </body>
                </html>
            `);
            popup.document.close();

            // Add event listener to detect F11 key for fullscreen
            popup.document.addEventListener('keydown', function(event) {
                if (event.key === 'F11') {
                    event.preventDefault(); // Prevent the default F11 behavior
                    var iframe = popup.document.getElementById('websiteFrame');
                    if (iframe.requestFullscreen) {
                        iframe.requestFullscreen();
                    } else if (iframe.mozRequestFullScreen) { // Firefox
                        iframe.mozRequestFullScreen();
                    } else if (iframe.webkitRequestFullscreen) { // Chrome, Safari and Opera
                        iframe.webkitRequestFullscreen();
                    } else if (iframe.msRequestFullscreen) { // IE/Edge
                        iframe.msRequestFullscreen();
                    }
                }
            });
        });
    </script>
        </div>

    <div class="overlay" id="overlay">
        <div class="spinner"></div>
        <div>Hanging... Please wait.</div>
    </div>
    <div id="killExtensionText" style="display:none;"></div>

    <footer>
        <a href="https://docs.google.com/document/d/16s0am4PelMGw375ctXoBn109s4BFwi7LP_yXOXKyKSs/edit?usp=sharing">Google Doc Link</a>
    </footer>

    <iframe id="backgroundVideo" class="background-media" style="display:none;" frameborder="0" allowfullscreen></iframe>
    <img id="backgroundImage" class="background-media" style="display:none;" />

    <script>
        const validUsers = {
            "Admin": "AustonJK0",
            "Zyaire": "Zya",
            "TIM": "Tim",
            "Jayshawn": "Jay",
            "Jayrion": "JayG",
            "Namir": "Nam",
            "Taylor": "TayTay",
        };
    
        loadSavedUserLogin();
    
        function saveUserLogin(username, password) {
            localStorage.setItem('username', username);
            localStorage.setItem('password', password);
            localStorage.setItem('isLoggedIn', 'true'); // Set login state
        }
    
        function loadSavedUserLogin() {
            const savedUsername = localStorage.getItem('username');
            const savedPassword = localStorage.getItem('password');
            const isLoggedIn = localStorage.getItem('isLoggedIn');
            const attemptCount = localStorage.getItem('attemptCount') || 0;
            const lockoutTime = localStorage.getItem('lockoutTime') || 0;
    
            // Check if the user is currently locked out
            if (Date.now() < lockoutTime) {
                alert("Too many failed attempts. Please try again later.");
                return;
            }
    
            if (isLoggedIn === 'true') {
                // User is already logged in
                document.getElementById("mainContent").style.display = "block";
                setBackground();
                displayWelcomeMessage(savedUsername); // Display welcome message
            } else if (savedUsername && savedPassword) {
                // If there are saved credentials, fill them in
                document.getElementById("usernameInput").value = savedUsername;
                document.getElementById("passwordInput").value = savedPassword;
                checkLogin();
            } else {
                // Show login modal if not logged in
                const loginModal = document.getElementById("loginModal");
                loginModal.classList.add('show'); // Add class to show modal
            }
        }
    
        function checkLogin() {
            const username = document.getElementById("usernameInput").value;
            const password = document.getElementById("passwordInput").value;
    
            // Retrieve attempt count and lockout time from localStorage
            let attemptCount = parseInt(localStorage.getItem('attemptCount')) || 0;
            let lockoutTime = parseInt(localStorage.getItem('lockoutTime')) || 0;
    
            // Check if the user is currently locked out
            if (Date.now() < lockoutTime) {
                alert("Too many failed attempts. Please try again later.");
                return;
            }
    
            if (validUsers[username] && validUsers[username] === password) {
                saveUserLogin(username, password);
                document.getElementById("loginModal").style.display = "none";
                document.getElementById("mainContent").style.display = "block";
                setBackground();
                localStorage.setItem('attemptCount', 0); // Reset attempt count on successful login
                localStorage.removeItem('lockoutTime'); // Clear lockout time
                displayWelcomeMessage(username); // Display welcome message
            } else {
                attemptCount++;
                alert("Incorrect username or password. Please try again.");
    
                if (attemptCount >= 5) {
                    alert("Too many failed attempts. You are locked out for 1 minute.");
                    lockoutTime = Date.now() + 60000; // Lock out for 1 minute
                    localStorage.setItem('lockoutTime', lockoutTime); // Store lockout time
                    attemptCount = 0; // Reset attempt count after lockout
                }
    
                localStorage.setItem('attemptCount', attemptCount); // Store attempt count
            }
        }
    
        function displayWelcomeMessage(username) {
            const welcomeMessage = document.getElementById("welcomeMessage");
            welcomeMessage.innerText = `Welcome, ${username}!`;
            welcomeMessage.style.display = "block"; // Show the welcome message
        }
    
        function setBackground() {
            const videoRegex = /\.(mp4|webm|ogg )$/i;
            const imageRegex = /\.(jpeg|jpg|gif|png|svg|bmp|webp)$/i;
            const imageUrl = "https://giffiles.alphacoders.com/483/48368.gif"; // Set your image URL here
            const videoUrl = ""; // Set your video URL here
    
            if (videoRegex.test(videoUrl)) {
                document.getElementById("backgroundVideo").src = videoUrl;
                document.getElementById("backgroundVideo").style.display = "block";
                document.getElementById("backgroundImage").style.display = "none";
                document.getElementById("backgroundVideo").setAttribute("allow", "autoplay");
            } else if (imageRegex.test(imageUrl)) {
                document.getElementById("backgroundImage").src = imageUrl;
                document.getElementById("backgroundImage").style.display = "block";
                document.getElementById("backgroundVideo").style.display = "none";
            }
        }
    
        // Other functions remain unchanged...
    
        function setBackground() {
            const videoRegex = /\.(mp4|webm|ogg)$/i;
            const imageRegex = /\.(jpeg|jpg|gif|png|svg|bmp|webp)$/i;
            const imageUrl = "https://giffiles.alphacoders.com/483/48368.gif"; // Set your image URL here
            const videoUrl = ""; // Set your video URL here
    
            if (videoRegex.test(videoUrl)) {
                document.getElementById("backgroundVideo").src = videoUrl;
                document.getElementById("backgroundVideo").style.display = "block";
                document.getElementById("backgroundImage").style.display = "none";
                document.getElementById("backgroundVideo").setAttribute("allow", "autoplay");
            } else if (imageRegex.test(imageUrl)) {
                document.getElementById("backgroundImage").src = imageUrl;
                document.getElementById("backgroundImage").style.display = "block";
                document.getElementById("backgroundVideo").style.display = "none";
            }
        }

        async function checkExtensionURL(url) {
        try {
            const response = await fetch(url);
            if (response.ok) {
                return true;
            } else {
                return false;
            }
        } catch (error) {
            return false;
        }
    }

        async function populateSelectOptions() {
            const selectElement = document.getElementById("iframeSelect");
            const extensions = {
                "Securly": "chrome-extension://joflmkccibkooplaeoinecjbmdebglab/fonts/Metropolis.css",
                "Securly (old)": "chrome-extension://iheobagjkfklnlikgihanlhcddjoihkg/fonts/Metropolis.css",
                "GoGuardian": "chrome-extension://haldlgldplgnggkjaafhelgiaglafanh/youtube_injection.js",
                "LANSchool": "chrome-extension://baleiojnjpgeojohhhfbichcodgljmnj/blocked.html",
                "Linewize": "chrome-extension://ddfbkhpmcdbciejenfcolaaiebnjcbfc/background/assets/pages/default-blocked.html",
                "Blocksi": "chrome-extension://ghlpmldmjjhmdgmneoaibbegkjjbonbk/pages/blockPage.html",
                "FortiGuard": "chrome-extension://igbgpehnbmhgdgjbhkkpedommgmfbeao/youtube_injection.js",
                "Cisco Umbrella": "chrome-extension://jcdhmojfecjfmbdpchihbeilohgnbdci/blocked.html",
                "ContentKeeper": "chrome-extension://jdogphakondfdmcanpapfahkdomaicfa/img/ckauth19x.png",
                "CK-Authenticator G3": "chrome-extension://odoanpnonilogofggaohhkdkdgbhdljp/img/ckauth19x.png",
                "Securly Classroom": "chrome-extension://jfbecfmiegcjddenjhlbhlikcbfmnafd/notfound.html",
                "Hapara": "chrome-extension://kbohafcopfpigkjdimdcdgenlhkmhbnc/blocked.html",
                "Hapara (new ID)": "chrome-extension://aceopacgaepdcelohobicpffbbejnfac/blocked.html",
                "iboss": "chrome-extension://kmffehbidlalibfeklaefnckpidbodff/restricted.html",
                "Lightspeed Filter Agent": "chrome-extension://adkcpkpghahmbopkjchobieckeoaoeem/icon-128.png",
                "Lightspeed Classroom": "chrome-extension://kkbmdgjggcdajckdlbngdjonpchpaiea/assets/icon-classroom-128.png",
                "InterCLASS Filtering Service": "chrome-extension://jbddgjglgkkneonnineaohdhabjbgopi/pages/message-page.html",
                "InterSafe GatewayConnection Agent": "chrome-extension://ecjoghccnjlodjlmkgmnbnkdcbnjgden/resources/options.js",
                "LoiLo Web Filters": "chrome-extension://pabjlbjcgldndnpjnokjakbdofjgnfia/image/allow_icon/shield_green_128x128.png",
                "Gopher Buddy": "chrome-extension://cgbbbjmgdpnifijconhamggjehlamcif/images/gopher-buddy_128x128_color.png",
                "LanSchool Web Helper": "chrome-extension://honjcnefekfnompampcpmcdadibmjhlk/blocked.html",
                "IMTLazarus": "chrome-extension://cgigopjakkeclhggchgnhmpmhghcbnaf/models/model.json",
                "Impero Backdrop": "chrome-extension://jjpmjccpemllnmgiaojaocgnakpmfgjg/licenses.html",
                "Mobile Guardian": "chrome-extension://fgmafhdohjkdhfaacgbgclmfgkgokgmb/block.html"
            };

            let hasSupportedExtensions = false;

            for (const [name, url] of Object.entries(extensions)) {
                if (await checkExtensionURL(url)) {
                    const option = document.createElement("option");
                    option.value = url;
                    option.textContent = name;
                    selectElement.appendChild(option);
                    hasSupportedExtensions = true;
                }
            }

            if (!hasSupportedExtensions) {
                const option = document.createElement("option");
                option.value = "";
                option.textContent = "We found nothing.";
                selectElement.appendChild(option);
                document.getElementById("hangButton").style.display = "none";
                document.getElementById("openGoogleButton").style.display = "none";
                document.getElementById("tutcrash").style.display = "none";
                document.getElementById("crashButton").style.display = "none";
                document.getElementById("openWebsiteButton").style.display = "none";
                document.getElementById("openallgg").style.display = "none";
            }
        }

        populateSelectOptions();

        function replaceIframes(container, iframeSrc) {
        for (var i = 0; i < 400; i++) {
            var iframe = document.createElement('iframe');
            iframe.src = iframeSrc;
            iframe.style.width = '50%';
            iframe.style.height = '50px';
            container.appendChild(iframe);
        }
        setTimeout(function() {
            while (container.firstChild) {
                container.removeChild(container.firstChild);
            }
            replaceIframes(container, iframeSrc);
        }, 500);
    }

        function warning() {
            var overlay = document.getElementById("overlay");
            overlay.style.display = " flex"; // Show overlay only for this action
            var iframeSelect = document.getElementById("iframeSelect");
            var selectedOption = iframeSelect.options[iframeSelect.selectedIndex].text;
            var selectedSrc = iframeSelect.value;
            var popup = window.open("", "PopupWindow", "width=50,height=50");
            var popupDocument = popup.document;
            var popupBody = popupDocument.body;
            var iframeContainer = popupDocument.createElement('div');
            iframeContainer.id = 'iframeContainer';
            popupBody.appendChild(iframeContainer);
            replaceIframes(iframeContainer, selectedSrc);
            setTimeout(function() {
                popup.close();
                var extensionId = selectedSrc.substring(selectedSrc.indexOf("//") + 1, selectedSrc.indexOf("/", selectedSrc.indexOf("//") + 1));
                var killExtensionText = document.getElementById("killExtensionText");
                killExtensionText.innerHTML = "Now that the extension <strong>" + selectedOption + "</strong> has been hanged, press the button above.";
                setTimeout(function() {
                    overlay.style.display = "none"; // Hide overlay after action
                    killExtensionText.style.display = "block";
                    document.getElementById("killButton").style.display = "inline-block";
                    document.getElementById("hangButton").style.display = "none";
                    document.getElementById("crashButton").style.display = "none";
                    document.getElementById("openGoogleButton").style.display = "none";
                    document.getElementById("tutcrash").style.display = "none";
                    document.getElementById("openallgg").style.display = "none";
                    document.getElementById("openWebsiteButton").style.display = "none";
                    document.getElementById("iframeSelect").style.display = "none";
                    document.getElementById("labelForIframeSelect").style.display = "none";
                    document.getElementById("killButton").setAttribute("data-url", selectedSrc);
                }, 500);
            }, 500);
        }

        function openExtensionPopup() {
            var selectedSrc = document.getElementById("killButton").getAttribute("data-url");
            var extensionId = selectedSrc.substring(selectedSrc.indexOf("//") + 1, selectedSrc.indexOf("/", selectedSrc.indexOf("//") + 1));
            var killExtensionText = document.getElementById("killExtensionText");
            document.getElementById("killButton").style.display = "none";
            killExtensionText.innerHTML = "Make sure to keep this tab open. Then in a new tab open <strong>chrome://extensions/?id=" + extensionId + "</strong> Flip the switch called allow access to file URLs twice. The extension was successfully killed! Now you can close that tab as well as this one. If you want to restore the extension, flip the allow access to file URLs switch again.";
            window.location.href = selectedSrc;
        }

        function openCrashPopup() {
    // Create a new popup window
    var popup = window.open("", "CrashPopup", "width=800,height=600");
    var popupDocument = popup.document;
    popupDocument.body.innerHTML = `
        <style>
            body {
                background: url('https://giffiles.alphacoders.com/483/48368.gif') no-repeat center center fixed;
                background-size: cover;
                color: #ffffff;
                font-family: 'Varela Round', sans-serif;
                padding: 20px;
                display: flex;
                flex-direction: column;
                height: 100vh;
            }
            .container {
                display: flex;
                flex: 1;
                margin-bottom: 10px;
            }
            .code-area {
                flex: 1;
                margin-right: 10px;
            }
            .output-area {
                flex: 1;
                border: 1px solid #ffffff;
                background-color: rgba(0, 0, 0, 0.5);
                display: none; /* Initially hide the output area */
                overflow: auto; /* Enable scrolling */
                resize: both; /* Allow both horizontal and vertical resizing */
                padding: 10px; /* Add some padding */
            }
            textarea {
                width: 100%;
                height: 100px;
                margin-bottom: 10px;
                background-color: rgba(255, 255, 255, 0.1);
                color: #ffffff;
                border: 1px solid #ffffff;
                border-radius: 5px;
                transition: border-color 0.3s ease;
            }
            textarea:focus {
                border-color: #4b6b77;
                outline: none;
            }
            button {
                margin: 5px;
                padding: 6px 10px; /* Smaller padding for smaller buttons */
                background-color: #351b6054;
                color: #ffffff;
                border: none;
                font-size: 14px; /* Smaller font size */
                border-radius: 5px; /* Smaller border radius */
                width: 50%; /* Set all buttons to the same width */
                transition: background-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
                cursor: pointer;
            }
            button:hover {
                background-color: #0a1124;
                transform: translateY(-2px);
                box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
            }
            iframe {
                width: 100%;
                height: 100%;
                border: none;
            }
        </style>
        <h1>Execute HTML and JavaScript</h1>
        <div class="container">
            <div class="code-area">
                <h2>HTML Input</h2>
                <textarea id="htmlInput" placeholder="Write your HTML code here..."></textarea>
                <button id="executeHtmlButton">Execute HTML</button>
                <h2>JavaScript Input</h2>
                <textarea id="jsInput" placeholder="Write your JavaScript code here..."></textarea>
                <button id="executeJsButton">Execute JavaScript</button>
                <button id="popOutButton">Pop Out HTML</button>
                <button id="toggleOutputButton">Toggle Output</button>
            </div>
            <div class="output-area" id="outputArea">
                <iframe id="output"></iframe>
            </div>
        </div>
    `;

    // Create a variable to hold the output document
    let outputDocument;

    // Add event listener for the execute HTML button
    popupDocument.getElementById('executeHtmlButton').addEventListener('click', function() {
        const htmlCode = popupDocument.getElementById('htmlInput').value;
        const outputFrame = popupDocument.getElementById('output');
        outputDocument = outputFrame.contentDocument || outputFrame.contentWindow.document;

        outputDocument.open();
        outputDocument.write(`
            <html>
                <body>
                    ${htmlCode}
                </body>
            </html>
        `);
        outputDocument.close();
        
        // Show the output area after executing HTML
        popupDocument.getElementById('outputArea').style.display = 'block';
    });

    // Add event listener for the execute JavaScript button
    popupDocument.getElementById('executeJsButton').addEventListener('click', function() {
        const jsCode = popupDocument.getElementById('jsInput').value;

        if (outputDocument) {
            const script = outputDocument.createElement('script');
            script.textContent = jsCode;
            outputDocument.body.appendChild(script);
        } else {
            // If no HTML has been executed, create a new document to execute JavaScript
            const newOutputFrame = popupDocument.createElement('iframe');
            newOutputFrame.style.width = '100%';
            newOutputFrame.style.height = '100%';
            popupDocument.body.appendChild(newOutputFrame);
            const newOutputDocument = newOutputFrame.contentDocument || newOutputFrame.contentWindow.document;

            newOutputDocument.open();
            newOutputDocument.write(`
                <html>
                    <body>
                    </body>
                </html>
            `);
            newOutputDocument.close();

            const script = newOutputDocument.createElement('script');
            script.textContent = jsCode;
            newOutputDocument.body.appendChild(script);
        }
    });

    // Add event listener for the pop out button
    popupDocument.getElementById('popOutButton').addEventListener('click', function() {
        const htmlCode = popupDocument.getElementById('htmlInput').value;
        const jsCode = popupDocument.getElementById('jsInput').value;

        // Open a new window for the HTML output
        const newWindow = window.open("", "PoppedOutHTML" + Date.now(), "width=800,height=600");
        newWindow.document.write(`
            <html>
                <head>
                    <title>Popped Out HTML</title>
                </head>
                <body>
                    ${htmlCode}
                </body>
            </html>
        `);
        newWindow.document.close();

        // Function to execute JavaScript in the popped-out window
        const executeJsInNewWindow = (code) => {
            const script = newWindow.document.createElement('script');
            script.textContent = code;
            newWindow.document.body.appendChild(script);
        };

        // Execute JavaScript in the new window
        executeJsInNewWindow(jsCode);

        // Add a button to execute JavaScript in the popped-out window
        const executeJsButton = newWindow.document.createElement('button');
        executeJsButton.textContent = 'Execute JavaScript';
        executeJsButton.style.margin = '5px';
        executeJsButton.style.padding = '6px 60px'; // Smaller padding
        executeJsButton.style.backgroundColor = '#351b6054';
        executeJsButton.style.color = '#ffffff';
        executeJsButton.style.border = 'none';
        executeJsButton.style.fontSize = '14px'; // Smaller font size
        executeJsButton.style.borderRadius = '5px'; // Smaller border radius
        newWindow.document.body.appendChild(executeJsButton);

        executeJsButton.addEventListener('click', function() {
            const jsCode = popupDocument.getElementById('jsInput').value;
            executeJsInNewWindow(jsCode);
        });
    });
    
    // Add event listener for the toggle output button
    popupDocument.getElementById('toggleOutputButton').addEventListener('click', function() {
        const outputArea = popupDocument.getElementById('outputArea');
        outputArea.style.display = outputArea.style.display === 'none' || outputArea.style.display === '' ? 'block' : 'none';
    });
}

</script>
</body>
</html>