[Premium] Faucet Monitor

Fully automated support for HCaptcha, ReCaptcha, and Antibot measures with a user-friendly interface on https://coinfinity.top/faucetlist for site management and settings. Updated weekly for optimal performance.

目前為 2024-03-12 提交的版本,檢視 最新版本

// ==UserScript==
// @name         [Premium] Faucet Monitor
// @namespace    https://greasyfork.org/users/1162863
// @version      4.0
// @description
// @author       Andrewblood
// @icon         https://coinfinity.top/favicon.ico

// @match        *://*.coinfinity.top/faucetlist*

// @match        *://*.faucetpay.io/*
// @match        *://*.autofaucet.dutchycorp.space/*
// @match        *://*.freebitco.in/*
// @match        *://*.rollercoin.com/*
// @match        *://*.coinpayu.com/*
// @match        *://*.firefaucet.win/*

// @match        *://*.freebitcoin.io/*
// @match        *://*.freebinancecoin.com/*
// @match        *://*.free-doge.com/*
// @match        *://*.freetether.com/*
// @match        *://*.freecardano.com/*
// @match        *://*.freedash.io/*
// @match        *://*.freeethereum.com/*
// @match        *://*.freebfg.com/*
// @match        *://*.freebittorrent.com/*
// @match        *://*.freepancake.com/*
// @match        *://*.freematic.com/*
// @match        *://*.freeshibainu.com/*
// @match        *://*.coinfaucet.io/*
// @match        *://*.freenem.com/*
// @match        *://*.freeusdcoin.com/*
// @match        *://*.free-tron.com/*
// @match        *://*.freesteam.io/*
// @match        *://*.freeneo.io/*
// @match        *://*.free-ltc.com/*
// @match        *://*.freecryptom.com/*

// @grant        GM_addStyle
// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_listValues
// @grant        GM_deleteValue
// @grant        window.close
// @grant        window.focus

// @antifeature  referral-link     Referral-Link is in this Script integrated.

// @license      Copyright Andrewblood
// @description Fully automated support for HCaptcha, ReCaptcha, and Antibot measures with a user-friendly interface on https://coinfinity.top/faucetlist for site management and settings. Updated weekly for optimal performance.
// ==/UserScript==

(function() {
    'use strict';

    var monitorurls = [
        { name: 'Faucetpay - Dayli Reward', url: 'https://faucetpay.io' },
        { name: 'Freebitco.in - Faucet Roll/Auto choose 1000% BTC Bonus/WoF Spin', url: 'https://freebitco.in' },
        { name: 'Dutchycorp - DUTCHY Roll/Coin Roll/PTC Wall/Surf Ads/Shortlink Wall', url: 'https://autofaucet.dutchycorp.space' },
        { name: 'Firefaucet - Dayli Bonus/Faucet Roll/Level Rewards/Dayli Tasks/Shortlinks/PTC (with captcha solver 70% success rate)', url: 'https://firefaucet.win' },
        { name: 'Coinpayu - Framed Ads and Frameless Ads (new tabs manual close by hand)', url: 'https://www.coinpayu.com' },
        { name: 'Rollercoin - Marketplace buyer (buy automatic under the choosen price)', url: 'https://rollercoin.com' },
    ];

    var referralLinks = {
        "https://faucetpay.io/": "https://faucetpay.io/?r=2922788",
        "https://freebitco.in/signup/?op=s": "https://freebitco.in/signup/?op=s&r=3595810",
        "https://autofaucet.dutchycorp.space/signup.php": "https://autofaucet.dutchycorp.space/signup.php?r=Andrewblood",
        "https://www.coinpayu.com/": "https://www.coinpayu.com/?r=Andrewblood",
        "https://rollercoin.com/": "https://rollercoin.com/?r=llfv26zk",
        "https://rollercoin.com/sign-up": "https://rollercoin.com/sign-up?r=llfv26zk",
        "https://earnsolana.xyz/": "https://earnsolana.xyz/?r=8455",
        "https://freebitcoin.io/": "https://freebitcoin.io/?ref=804096",
        "https://freebinancecoin.com/": "https://freebinancecoin.com/?ref=418938",
        "https://free-doge.com/": "https://free-doge.com/?ref=334834",
        "https://freeusdcoin.com/": "https://freeusdcoin.com/?ref=237334",
        "https://freecryptom.com/": "https://freecryptom.com/?ref=145077",
        "https://free-ltc.com/": "https://free-ltc.com/?ref=278353",
        "https://freedash.io/": "https://freedash.io/?ref=241665",
        "https://freeneo.io/": "https://freeneo.io/?ref=172683",
        "https://freecardano.com/": "https://freecardano.com/?ref=495783",
        "https://freebfg.com/": "https://freebfg.com/?ref=34816",
        "https://freepancake.com/": "https://freepancake.com/?ref=63758",
        "https://freebittorrent.com/": "https://freebittorrent.com/?ref=33463",
        "https://coinfaucet.io/": "https://coinfaucet.io/?ref=966105",
        "https://freematic.com/": "https://freematic.com/?ref=102515",
        "https://freetether.com/": "https://freetether.com/?ref=353801",
        "https://freesteam.io/": "https://freesteam.io/?ref=190554",
        "https://freenem.com/": "https://freenem.com/?ref=367461",
        "https://freeshibainu.com/": "https://freeshibainu.com/?ref=206136",
        "https://free-tron.com/": "https://free-tron.com/?ref=526291",
        "https://freeethereum.com/": "https://freeethereum.com/?ref=430971"
    };

    if (referralLinks[window.location.href] && window.location.href !== referralLinks[window.location.href]) {
        window.location.replace(referralLinks[window.location.href]);
    }

    if (window.location.href.includes("firefaucet.win/register")) {
        function checkAndRedirect() {
            var referByCookie = getCookie("refer_by");

            if (referByCookie !== null && referByCookie === "79539") {
                console.log("Cookie 'refer_by' mit dem richtigen Wert gefunden.");
            } else {
                console.log("Cookie 'refer_by' nicht gefunden oder hat den falschen Wert. Weiterleitung...");

                window.location.href = "https://firefaucet.win/ref/79539";
            }
        }

        function getCookie(name) {
            var value = "; " + document.cookie;
            var parts = value.split("; " + name + "=");
            if (parts.length == 2) return parts.pop().split(";").shift();
        }

        checkAndRedirect();
    }

    GM_addStyle(`
            .faucetmonitor-button {
                position: fixed;
                bottom: 20px;
                left: calc(30%);
                transform: translateX(50%);
                padding: 10px;
                background: blue;
                color: white;
                border: none;
                border-radius: 5px;
                cursor: pointer;
                z-index: 9999;
            }

            .faucetmonitor-overlay {
                position: fixed;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                background: rgba(0, 0, 0, 0.7);
                z-index: 9998;
                display: flex;
                align-items: center;
                justify-content: center;
            }
			.faucetmonitor-overlay-content table {
				margin: 0 auto;
			}
			.faucetmonitor-overlay-content {
				width: 95%;
				height: 80%;
				background: white;
				padding: 20px;
				overflow: auto;
				text-align: center;
			}
			.additional-faucetmonitor-overlay-content {
				padding-top: 50px;
				overflow: auto;
				text-align: center;
			}
        `);


    var FaucetMonitorStatus = document.createElement('div');
    document.body.appendChild(FaucetMonitorStatus);
    FaucetMonitorStatus.classList.add('faucetmonitor-status');
    GM_addStyle(`
                .faucetmonitor-status {
                position: fixed;
                font-size: 20px !important;
                top: 50px;
                right: 10px;
                z-index: 9999; }
                `);
    function setFaucetMonitorStatus(html, color) {
        if (color === 'green') {
            FaucetMonitorStatus.style.color = 'green';
        } else if (color === 'red') {
            FaucetMonitorStatus.style.color = 'red';
        } else {
            FaucetMonitorStatus.style.color = 'black';
        }
        FaucetMonitorStatus.innerHTML = html;
    }
    setFaucetMonitorStatus('<p><b>[Premium] Faucet Monitor</b> is running.</p>', 'green');





    var storedUrls = GM_getValue('storedUrls', []) || [];
    if (window.location.href.includes('coinfinity.top/faucetlist')) {
        var isFaucetMonitorOverlayOpened = false;
        var FaucetMonitorButton = createFaucetMonitorButton('Faucet Monitor');

        function createFaucetMonitorButton(text) {
            var FaucetMonitorButton = document.createElement('button');
            FaucetMonitorButton.innerHTML = text;
            FaucetMonitorButton.classList.add('faucetmonitor-button');
            FaucetMonitorButton.addEventListener('click', function() {
                if (!isFaucetMonitorOverlayOpened) {
                    openFaucetMonitorOverlay();
                    isFaucetMonitorOverlayOpened = true;
                }
            });
            return FaucetMonitorButton;
        }

        function openFaucetMonitorOverlay() {
            var FaucetMonitorOverlay = createFaucetMonitorOverlay();
            var FaucetMonitorOverlayContent = createFaucetMonitorOverlayContent();
            FaucetMonitorOverlay.appendChild(FaucetMonitorOverlayContent);
            document.body.appendChild(FaucetMonitorOverlay);
            FaucetMonitorOverlay.addEventListener('click', function(event) {
                if (event.target === FaucetMonitorOverlay) {
                    FaucetMonitorOverlay.remove();
                    isFaucetMonitorOverlayOpened = false;
                }
            });
        }

        function createFaucetMonitorOverlay() {
            var FaucetMonitorOverlay = document.createElement('div');
            FaucetMonitorOverlay.classList.add('faucetmonitor-overlay');
            return FaucetMonitorOverlay;
        }

        function createFaucetMonitorOverlayContent() {
            var FaucetMonitorTableContent = '<h2>Faucet Monitor</h2><table><tr><th>Connect</th><th>Name</th><th>Active</th></tr>';

            monitorurls.forEach(function(item) {
                var isActive = GM_getValue(item.url, false);
                var checkboxId = 'active-' + item.url;
                FaucetMonitorTableContent += '<tr><td><a href="' + item.url + '" target="_blank">Connect</a></td><td>' + item.name + '</td><td><input type="checkbox" id="' + checkboxId + '"' + (isActive ? ' checked' : '') + '></td></tr>';
            });
            FaucetMonitorTableContent += '</table>';

            var FaucetMonitorOverlayContent = document.createElement('div');
            FaucetMonitorOverlayContent.classList.add('faucetmonitor-overlay-content');
            FaucetMonitorOverlayContent.innerHTML = FaucetMonitorTableContent;
            document.body.appendChild(FaucetMonitorOverlayContent);

            monitorurls.forEach(function(item) {
                var checkboxId = 'active-' + item.url;
                var checkbox = document.getElementById(checkboxId);
                checkbox.addEventListener('change', function() {
                    GM_setValue(item.url, checkbox.checked);
                    setFaucetMonitorStatus('<p><b>[Premium] Faucet Monitor:</b> Faucet activity changed.</p>', 'green');
                });
            });

            var additionalFaucetMonitorContent = document.createElement('div');
            additionalFaucetMonitorContent.classList.add('additional-faucetmonitor-overlay-content');
            additionalFaucetMonitorContent.innerHTML = (`
    <h2>General Information</h2>
    <p>
        Each website has its own functions, and you can activate and deactivate it as desired.
        When it is deactivated in the interface, it will not be executed on that page.
    </p>
    <p>
        You must be logged in on each webpage to function correctly when activated.
    </p>
    <p>
        As I use a different script, this script automatically close the pages after they have fulfilled their functions.
        This is because the other script reopens the pages automatically. Because of that,
        I prefer not to integrate the functionality for automatically reopening the websites.
    </p>
        <p>
        To automatically fill in Captchas, the script requires specific extensions or scripts.
        Please install these to ensure the script functions properly.
    </p>

    <p><strong>Privacy Policy</strong></p>
    <p>
        This script stores user data locally within TamperMonkey and is exclusively used for script functionality.
        It is not shared with the script creator or third parties.
    </p>

    <p><strong>Support</strong></p>
    <p>
        If you have any questions or need assistance, don't hesitate to reach out the creator and supporter,
        <a href="https://greasyfork.org/users/1162863" target="_blank">Andrewblood</a>.
    </p>
`);
            FaucetMonitorOverlayContent.appendChild(additionalFaucetMonitorContent);

            return FaucetMonitorOverlayContent;
        }

        document.body.appendChild(FaucetMonitorButton);

    }





        var currentURL = new URL(window.location.href).origin;
    // Freebitco.in
    if (GM_getValue(currentURL) && window.location.href.includes("freebitco.in")) {
        function isCaptchaChecked() {
            return hcaptcha && hcaptcha.getResponse().length !== 0;
        }

        if(window.location.href === ("https://freebitco.in/") || window.location.href === ("https://freebitco.in/?op=home") || window.location.href === ("https://freebitco.in/#")) {
            setTimeout(function() {

                if (document.querySelector("#free_play_form_button").style.display == "none"){
                    console.log("Wait for next Roll.");
                    setTimeout(function() {
                        window.close();
                    }, 1000*30);
                }
                else
                {
                    // click WoF
                    if (document.querySelector("#free_wof_spins_msg")){
                        console.log("Make the WoF Spins.");
                        window.open('https://freebitco.in/static/html/wof/wof-premium.html', '_blank');
                    }
                    console.log("Let's look for Bonus");
                    document.querySelector("body > div.large-12.fixed > div > nav > section > ul > li:nth-child(8) > a").click();
                    document.querySelector("#rewards_tab > div.row.reward_category_container_main_div > div > div:nth-child(4) > div.reward_category_name").click();
                    setTimeout(function() {
                        var yourrwp = parseFloat(document.querySelector("#rewards_tab > div:nth-child(2) > div > div.reward_table_box.br_0_0_5_5.user_reward_points.font_bold").innerText.replace(/,/, ''))
                        console.log("Your current Reward Points are:");
                        console.log(yourrwp);
                        var bonuscost = parseFloat(document.querySelector("#fp_bonus_rewards > div:nth-child(2) > div:nth-child(2) > div.large-6.small-12.columns > div").innerText.replace(/,/, ''))
                        console.log("The Price for 1000% BTC-Bonus is:");
                        console.log(bonuscost);
                        if (yourrwp > bonuscost){
                            document.querySelector("#fp_bonus_rewards > div:nth-child(2) > div:nth-child(2) > div:nth-child(3) > button").click();
                        }
                        else
                        {
                            console.log("Your balance is too low to buy.");
                        }
                        document.querySelector("#free_play_link_li > a").click();
                    }, 1000*5);

                    // Make the Roll
                    setTimeout(function() {
                        if (document.querySelector("#anchor")){
                            console.log("Wait for Captcha and.....");

                            if (isCaptchaChecked()) {
                                document.querySelector("#free_play_form_button").click();
                                setTimeout(function() {
                                    window.close();
                                }, 1000*30);
                            }
                        }
                        else
                        {
                            document.querySelector("#free_play_form_button").click();
                            setTimeout(function() {
                                window.close();
                            }, 1000*10);
                        }
                    }, 1000*10);
                }
            }, 1000*5);
        }

        if (window.location.href.includes("https://freebitco.in/static/html/wof/wof-premium.html")) {
            setTimeout(function() {
                document.querySelector("#wofc-section > div > div.wofc-spins > p > button:nth-child(2)").click();
            }, 1000*10);
            setTimeout(function() {
                window.close();
            }, 1000*30);
        }
    }





    // Dutchycorp
    if (GM_getValue(currentURL) && window.location.href.includes("dutchycorp.space")) {
        function isCaptchaChecked() {
            return grecaptcha && grecaptcha.getResponse().length !== 0;
        }

        function visibleCheck(elm) {
            if (!elm.offsetHeight && !elm.offsetWidth) { return false; }
            if (getComputedStyle(elm).visibility === 'hidden') { return false; }
            return true;
        }

        if (window.location.href.indexOf('login') === -1 && window.location.href.indexOf('register') === -1) {

            var isRecaptchaEnabled = GM_getValue('recaptchaStatus');

            if (isRecaptchaEnabled) {
                runScript();
            } else {
                if (window.location.href !== 'https://autofaucet.dutchycorp.space/account.php') {
                    window.location.href = 'https://autofaucet.dutchycorp.space/account.php';
                } else {
                    document.querySelector("#methods > form > font > form:nth-child(16) > div > input").click();
                    var selectElement = document.querySelector('select[name="captcha"]');

                    if (selectElement) {
                        var options = selectElement.options;
                        for (var i = 0; i < options.length; i++) {
                            if (options[i].value === '3') {
                                options[i].selected = true;
                                var event = new Event('change');
                                selectElement.dispatchEvent(event);
                                break;
                            }
                        }
                    }
                    var updateButton = document.querySelector('button[name="change-captcha"]');
                    updateButton.click();
                    GM_setValue('recaptchaStatus', 'enabled');
                    window.location.replace("https://autofaucet.dutchycorp.space/dashboard.php");
                }
            }

            function runScript() {
                setTimeout(function(){
                    location.reload();
                }, 180000);

                if (window.location.href == "https://autofaucet.dutchycorp.space/dashboard.php") {
                    window.location.replace("https://autofaucet.dutchycorp.space/roll.php");
                }

                if (window.location.href.includes("https://autofaucet.dutchycorp.space/roll.php")) {
                    if (!document.querySelector("#timer")) {
                        setInterval(function() {
                            if (isCaptchaChecked()) {
                                if (document.querySelector(".boost-btn.unlockbutton")) {
                                    document.querySelector(".boost-btn.unlockbutton").click();
                                }
                                if (visibleCheck(document.querySelector("#claim_boosted"))) {
                                    document.querySelector("#claim_boosted").click();
                                }
                            }
                        }, 5000);
                    } else {
                        setTimeout(function() {
                            window.location.replace("https://autofaucet.dutchycorp.space/coin_roll.php");
                        }, 5000);
                    }
                }

                if (window.location.href.includes("https://autofaucet.dutchycorp.space/coin_roll.php")) {
                    if (!document.querySelector("#timer")) {
                        setInterval(function() {
                            if (isCaptchaChecked()) {
                                if (document.querySelector(".boost-btn.unlockbutton")) {
                                    document.querySelector(".boost-btn.unlockbutton").click();
                                }
                                if (visibleCheck(document.querySelector("#claim_boosted"))) {
                                    document.querySelector("#claim_boosted").click();
                                }
                            }
                        }, 5000);
                    } else {
                        setTimeout(function() {
                            window.location.replace("https://autofaucet.dutchycorp.space/ptc/wall.php");
                        }, 5000);
                    }
                }

                if (window.location.href.includes("https://autofaucet.dutchycorp.space/ptc/wall.php")) {
                    var wallLink = document.querySelectorAll(".col.s10.m6.l4 a[name='claim']");
                    if (wallLink.length >= 1) {
                        wallLink[0].style.backgroundColor = "red";
                        let match = wallLink[0].onmousedown.toString().match(/'href', '(.+)'/);
                        let hrefValue = match[1];
                        setTimeout(function() {
                            window.location.replace("https://autofaucet.dutchycorp.space" + hrefValue);
                        }, 5000);
                    } else {
                        setTimeout(function() {
                            window.location.replace("https://autofaucet.dutchycorp.space/ptc/");
                        }, 5000);
                    }
                }

                if (window.location.href.includes("https://autofaucet.dutchycorp.space/ptc/view")) {
                    setInterval(function() {
                        if (document.querySelector("#sec").innerText === 'Payout in  0 seconds') {
                            document.getElementsByClassName("g-recaptcha bordeaux-btn btn-small waves-effect waves-red")[0].click();
                            setTimeout(function() {
                                console.log("Wait for Captcha");
                            }, 30000);
                        } else {
                            console.log("Wait on timer.");
                        }
                    }, 5000);
                }

                if (window.location.href === "https://autofaucet.dutchycorp.space/ptc/") {
                    setInterval(function() {
                        if (document.querySelector("body > div.col.s12 > div.row > div.col.s12.m12.l10 > div:nth-child(1) > div.row > center > h4") && document.querySelector("body > div.col.s12 > div.row > div.col.s12.m12.l10 > div:nth-child(1) > div.row > center > h4").innerText === ' All Available Ads Watched') {
                            window.location.replace("https://autofaucet.dutchycorp.space/shortlinks-wall.php");
                        }
                        else if (visibleCheck(document.getElementsByClassName("g-recaptcha gradient-btn btn-small waves-effect waves-purple")[0])) {
                            document.getElementsByClassName("g-recaptcha gradient-btn btn-small waves-effect waves-purple")[0].click();
                        }
                        else {
                            console.log("Wait on timer.");

                        }
                    }, 5000);
                }


                if (window.location.href.includes("autofaucet.dutchycorp.space/shortlinks-wall")) {
                    window.addEventListener('load', function() {
                        setTimeout(function() {

                            var elements = document.querySelectorAll('p');
                            elements.forEach(function(element) {
                                if (element.outerText === "Ouo" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=74")
                                }
                                else if (element.outerText === "Link1s" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=55")
                                }
                                else if (element.outerText === "Tox" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=7")
                                }
                                else if (element.outerText === "DS8 " ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=69")
                                }
                                else if (element.outerText === "DS Pr" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=3")
                                }
                                else if (element.outerText === "DS Smart" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=90")
                                }
                                else if (element.outerText === "ShrkEarn " ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=78")
                                }
                                else if (element.outerText === "1sNet" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=61")
                                }
                                else if (element.outerText === "FC " ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=36")
                                }
                                else if (element.outerText === "Cuty" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=67")
                                }
                                else if (element.outerText === "Pkr" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=58")
                                }
                                else if (element.outerText === "CLK" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=47")
                                }
                                else if (element.outerText === "Tmearn" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=98")
                                }
                                else if (element.outerText === "LinkRex" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=65")
                                }
                                else if (element.outerText === "1Bit " ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=53")
                                }
                                else if (element.outerText === "Mitly" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=10")
                                }
                                else if (element.outerText === "ShrinkMe" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=5")
                                }
                                else if (element.outerText === "InsFly" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=2")
                                }
                                else if (element.outerText === "Usa" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=25")
                                }
                                else if (element.outerText === "Mgnet " ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=33")
                                }
                                else if (element.outerText === "Clock" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=54")
                                }
                                else if (element.outerText === "Clicksfly" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=")
                                }
                                else if (element.outerText === "Bird " ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=20")
                                }
                                else if (element.outerText === "Owlink " ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=75")
                                }
                                else if (element.outerText === "Illink" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=71")
                                }
                                else if (element.outerText === "Shrk" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=62")
                                }
                                else if (element.outerText === "LinkHives" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=81")
                                }
                                else if (element.outerText === "UrlHives" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=43")
                                }
                                //else if (element.outerText === "Faho" ) {
                                //    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=87")
                                //}
                                else if (element.outerText === "CutLink" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=99")
                                }
                                else if (element.outerText === 'Oii' ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=73")
                                }
                                else if (element.outerText === "Clik.pw" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=29")
                                }
                                else if (element.outerText === "Exe.io" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=11")
                                }
                                else if (element.outerText === "Namai" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=27")
                                }
                                else if (element.outerText === "NamaiNet" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=46")
                                }
                                else if (element.outerText === "Kiddy" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=41")
                                }
                                else if (element.outerText === "ATG" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=26")
                                }
                                else if (element.outerText === "UrlCut" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=89")
                                }
                                //else if (element.outerText === "ClicksFly" ) {
                                //  window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=")
                                //}
                                else if (element.outerText === "C2G" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=63")
                                }
                                else if (element.outerText === "Bitad" ) {
                                    window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=85")
                                }
                                else if (element.outerText === "Hate" ) {
                                  window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=50")
                                }
                                //else if (element.outerText === "" ) {
                                //  window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=")
                                //}
                                //else if (element.outerText === "" ) {
                                //  window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=")
                                //}
                                //else if (element.outerText === "" ) {
                                //  window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=")
                                //}
                                //else if (element.outerText === "" ) {
                                //  window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=")
                                //}
                                //else if (element.outerText === "" ) {
                                //  window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=")
                                //}
                                //else if (element.outerText === "" ) {
                                //  window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=")
                                //}
                                //else if (element.outerText === "" ) {
                                //  window.location.replace("https://autofaucet.dutchycorp.space/extend_claim_count_wall_nu_link_per_click_version.php?username=Andrewblood&id=")
                                //}
                                //else {
                                //   console.log('All Shortlinks viewed.');
                                //}
                            });

                        }, 1000*3);
                    });

                }

            }
        }
    }





    // Firefaucet
    if (GM_getValue(currentURL) && window.location.href.includes("firefaucet.win")) {

        setTimeout(function() {

            if (window.location.href === "https://firefaucet.win/") {
                const dailyBonus = document.querySelector(".col.s12.m12.l6 > div > center:nth-child(1) > div:nth-child(7) > div:nth-child(3) > a");
                const dailyBonusDisabled = document.querySelector("#disabled");
                const faucet = document.querySelector("#faucet_btn");
                const taskButton = document.querySelector(".dashboard-action-btns > a:nth-child(6)");
                const taskValue = document.querySelector("#data__tasks_available_to_collect");
                const ptc = document.querySelector("#ptc-btn");
                const shortlinks = document.querySelector(".dashboard-action-btns > a:nth-child(1)");
                const reward = document.querySelector(".level-reward-section > div:nth-child(2) > a");

                if (dailyBonus) {
                    dailyBonus.click();
                } else if (faucet && !faucet.innerText.includes('s')) {
                    faucet.click();
                } else if (reward && reward.innerText.includes('Claim')) {
                    reward.click();
                } else if (taskButton && taskValue.innerText > 0) {
                    taskButton.click();
                } else if (ptc && !ptc.innerText.includes('0')) {
                    ptc.click();
                } else {
                    shortlinks.click();
                }
            }

            if (window.location.href === "https://firefaucet.win/daily/") {
                const continuebutton = document.querySelector(".col.s12.m12.l6 > div > center > a > button")

                if (continuebutton) {
                    continuebutton.click();
                }

                const selectturnstile = document.querySelector("#select-turnstile");
                const selectrecaptcha = document.querySelector("#select-recaptcha");
                const selecthcaptcha = document.querySelector("#select-hcaptcha");


                if (selectturnstile) {
                    selectturnstile.click();
                } else if (selectrecaptcha) {
                    selectrecaptcha.click();
                } else if (selecthcaptcha) {
                    selecthcaptcha.click();
                }

                setInterval(function() {
                    const turnstileElement = document.querySelector("#captcha-turnstile");
                    const recaptchaElement = document.querySelector("#recaptcha");
                    const hcaptchaElement = document.querySelector("#captcha-hcaptcha");

                    const turnstileResponse = document.querySelector('[name="cf-turnstile-response"]');
                    const recaptchaResponse = document.querySelector("#g-recaptcha-response");
                    const hcaptchaResponse = document.querySelector('[name="h-captcha-response"]');

                    const daylibonus = document.querySelector("body > div.row > div.col.s12.m12.l6 > div > center > form > button");

                    if (turnstileElement && turnstileElement.offsetParent !== null && turnstileResponse.value.length > 0) {
                        daylibonus.click();
                    }
                    else if (recaptchaElement && recaptchaElement.offsetParent !== null && recaptchaResponse.value.length > 0) {
                        daylibonus.click();
                    }
                    else if (hcaptchaElement && hcaptchaElement.offsetParent !== null && hcaptchaResponse.value.length > 0) {
                        daylibonus.click();
                    }
                    else {
                        console.log("Wait for Captcha")
                    }
                }, 3000);
            }

            if (window.location.href.includes("firefaucet.win/levels")) {
                const collect = document.querySelector(".z-depth-1 > table > tbody > tr:nth-child(1) > th:nth-child(4) > a")

                if (collect && collect.innerText.includes("Collect")) {
                    collect.click();
                }
                else {
                    window.location.replace("https://firefaucet.win/");
                }
            }




            if (window.location.href === "https://firefaucet.win/faucet/") {
                const reward = document.querySelector("#get_reward_button")
                const selectturnstile = document.querySelector("#select-turnstile");
                const selecthcaptcha = document.querySelector("#select-hcaptcha");
                const selectrecaptcha = document.querySelector("#select-recaptcha");


                if (!selectturnstile && !selecthcaptcha && !selectrecaptcha) {
                    reward.click();
                }

                if (selectturnstile) {
                    selectturnstile.click()
                } else if (selectrecaptcha) {
                    selectrecaptcha.click();
                } else if (selecthcaptcha) {
                    selecthcaptcha.click();
                }

                setInterval(function() {
                    const turnstileElement = document.querySelector("#captcha-turnstile");
                    const recaptchaElement = document.querySelector("#captcha-recaptcha");
                    const hcaptchaElement = document.querySelector("#captcha-hcaptcha")

                    const turnstileResponse = document.querySelector('input[name="cf-turnstile-response"]');
                    const recaptchaResponse = document.querySelector("#g-recaptcha-response");
                    const hcaptchaResponse = document.querySelector('[name="h-captcha-response"]');

                    if (turnstileElement && turnstileElement.offsetParent !== null && turnstileResponse.value.length > 0) {
                        reward.click();
                    }
                    else if (recaptchaElement && recaptchaElement.offsetParent !== null && recaptchaResponse.value.length > 0) {
                        reward.click();
                    }
                    else if (hcaptchaElement && hcaptchaElement.offsetParent !== null && hcaptchaResponse.value.length > 0) {
                        reward.click();
                    }
                    else {
                        console.log("Wait for Captcha")
                    }
                }, 3000);
            }

            if (window.location.href === "https://firefaucet.win/ptc/" || window.location.href === "https://firefaucet.win/ptc/#!") {
                const allviewed = document.querySelector(".card-panel > center:nth-child(11) > i")
                const allviewed2 = document.querySelector(".card-panel > center:nth-child(9) > i")
                const viewadvert = document.querySelector(".row > div:nth-child(1) > div > div:nth-child(3) > a")
                const sucessmessage = document.querySelector(".success_msg.hoverable")

                if (viewadvert) {
                    viewadvert.click();
                }
                else {
                    window.location.replace("https://firefaucet.win/");
                }
            }

            if (window.location.href.includes("https://firefaucet.win/tasks")) {
                var elements = document.getElementsByClassName("bi bi-clipboard-check f-14");

                function clickElementsWithDelay(index) {
                    if (index < elements.length) {
                        elements[index].click();
                        setTimeout(function() {
                            clickElementsWithDelay(index + 1);
                        }, 3000);
                    } else {
                        window.location.replace("https://firefaucet.win/");
                    }
                }
                clickElementsWithDelay(0);
            }

            if (window.location.href.includes("firefaucet.win/shortlinks")) {
                window.focus();
                setTimeout(function() {

                    let helpers = {
                        typer: function(inputElm, value) {
                            let lastValue = inputElm.value;
                            inputElm.value = value;
                            let event = new Event('input', { bubbles: true });
                            event.simulated = true;
                            let tracker = inputElm._valueTracker;
                            if (tracker) {
                                tracker.setValue(lastValue);
                            }
                            inputElm.dispatchEvent(event);
                        },

                        triggerMouseEvent: function(elm, eventType) {
                            let clickEvent = document.createEvent('MouseEvents');
                            clickEvent.initEvent(eventType, true, true);
                            elm.dispatchEvent(clickEvent);
                        },

                        alternativeClick: function(elm) {
                            helpers.triggerMouseEvent(elm, "mouseover");
                            helpers.triggerMouseEvent(elm, "mousedown");
                            helpers.triggerMouseEvent(elm, "mouseup");
                            helpers.triggerMouseEvent(elm, "click");
                        }
                    };

                    function getRandomNumber(min, max) {
                        return Math.floor(Math.random() * (max - min) + min);
                    }

                    function randomDisplayNumber() {
                        var screenWidth = window.innerWidth;
                        var screenHeight = window.innerHeight;

                        var randomX = getRandomNumber(0, screenWidth);
                        var randomY = getRandomNumber(0, screenHeight);

                        return { x: randomX, y: randomY };
                    }

                    function moveMouseTo(x, y) {
                        var event = new MouseEvent('mousemove', {
                            bubbles: true,
                            cancelable: true,
                            view: document.defaultView,
                            clientX: x,
                            clientY: y
                        });
                        document.dispatchEvent(event);
                    }

                    function selectLinks(selectorPrefix, startIndex) {
                        let links = [];
                        for (let i = startIndex; i < startIndex + 10; i++) {
                            let link = document.querySelector(`body > div.row > div.col.s12.m12.l8 > div > div:nth-child(6) > div.sl-views-section > form:nth-child(${i}) button[type='submit']`);
                            links.push(link);
                        }
                        return links;
                    }

                    function clickFirstValidLink(links) {
                        for (let i = 0; i < links.length; i++) {
                            let link = links[i];
                            if (link && link.innerText.includes(i + 1)) {
                                var randomPosition = randomDisplayNumber();
                                moveMouseTo(randomPosition.x, randomPosition.y);
                                helpers.alternativeClick(link);
                                window.close();
                                return;
                            }
                        }
                        window.close();
                    }

                    // Hauptcode
                    let links = selectLinks("body > div.row > div.col.s12.m12.l8 > div > div:nth-child(6) > div.sl-views-section > form:nth-child(1) button[type='submit']", 1);

                    // Überprüfe das Element mit der Klasse "success_msg hoverable"
                    let successMsg = document.querySelector(".success_msg.hoverable");

                    if (!successMsg) {
                        // Wenn das Element nicht vorhanden ist, wähle Links aus einer anderen Position
                        links = selectLinks("body > div.row > div.col.s12.m12.l8 > div > div:nth-child(5) > div.sl-views-section > form:nth-child(1) button[type='submit']", 1);
                    }

                    setTimeout(function () {
                        clickFirstValidLink(links);
                    }, 3000);

                }, 3000);
            }

            if(window.location.href.includes("firefaucet.win/visitx/")){
                window.location.replace("https://firefaucet.win/shortlinks");
            }

            if (window.location.href.includes("https://firefaucet.win/viewptc")) {
                setInterval(function () {
                    if (document.querySelector("#description > input.captcha-input").value.length > 0 && document.querySelector("#submit-button > i").offsetHeight > 1){
                        document.querySelector("#submit-button > i").click();
                        setTimeout(function() {
                            window.close();
                        }, 200);
                    } else {
                        console.log("Wait on timer/captcha.");
                    }
                }, 1000);
            }
        }, 5000);
    }





    // Coinpayu
    if (GM_getValue(currentURL) && window.location.href.includes("coinpayu.com")) {

        setTimeout(function() {
            const navDashbord = document.querySelector("#navbarCollapse > ul.mt-2.mt-md-0.nav.navbar-nav.navbar-right.padding-nav.index-nav-right > li > a")
            if(window.location.href.includes("https://www.coinpayu.com/?r=Andrewblood") && (navDashbord) && (navDashbord).innerText === ('Dashboard')){
                window.location.replace("https://www.coinpayu.com/dashboard/ads_active")
            }
        }, 3000);

        if(window.location.href.includes("coinpayu.com/dashboard/ads_active")){
            setTimeout(function() {
                var elements = document.querySelectorAll('.clearfix.ags-list-box:not(.gray-all.clearfix.ags-list-box)');
                if (elements.length > 0) {
                    var firstElement = elements[0].querySelector('.text-overflow.ags-description > span');
                    var timeElement = elements[0].querySelector('.ags-detail-time span');
                    var url = elements[0].querySelector('.text-overflow.ags-description').getAttribute('title');
                    var time = parseInt(timeElement.textContent);

                    console.log("URL:", url);
                    console.log("Time:", time);

                    if (firstElement) {
                        firstElement.click();
                        // Wait for the alert-div.alert-green element to appear, then reload the page
                        var interval = setInterval(function() {
                            var alertElement = document.querySelector(".alert-div.alert-green");
                            if (alertElement) {
                                clearInterval(interval);
                                window.focus();
                                window.location.reload();
                            }
                        }, 1000); // Check every 1 second
                    }
                }
                else {
                    window.location.replace("https://www.coinpayu.com/dashboard/ads_surf");
                }
            }, 5000); // 5000 milliseconds = 5 seconds
        }

        if(window.location.href.includes("coinpayu.com/dashboard/ads_surf")){
            setTimeout(function() {
                var elements = document.querySelectorAll('.clearfix.ags-list-box:not(.gray-all.clearfix.ags-list-box)');
                if (elements.length > 0) {
                    var firstElement = elements[0].querySelector('.text-overflow.ags-description > span');
                    var timeElement = elements[0].querySelector('.ags-detail-time span');
                    var url = elements[0].querySelector('.text-overflow.ags-description').getAttribute('title');
                    var time = parseInt(timeElement.textContent);

                    console.log("URL:", url);
                    console.log("Time:", time);

                    if (firstElement) {
                        firstElement.click();
                        window.focus();
                        // Wait for the alert-div.alert-green element to appear, then reload the page
                        var interval = setInterval(function() {
                            var alertElement = document.querySelector(".alert-div.alert-green");
                            if (alertElement) {
                                clearInterval(interval);
                                window.location.reload();
                            }
                        }, 1000); // Check every 1 second
                    }
                }
                else {
                    window.close();
                }
            }, 5000); // 5000 milliseconds = 5 seconds
        }
    }





    // Rollercoin
    if (GM_getValue(currentURL) && window.location.href.includes("rollercoin.com")) {
        var button = document.createElement('button');
        button.innerHTML = 'Show Saved Marketplace Products';

        GM_addStyle(`
        .show-saved-products-button {
            position: fixed;
            bottom: 10px;
            left: 250px;
            z-index: 9999;
            padding: 5px 10px;
            background-color: #007bff;
            color: #fff;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            font-size: 12px;
        }

        .rollercoinoverlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.5);
            z-index: 9998;
            display: none;
            color: black;
        }

        .rollercoinoverlay-content {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background-color: #fff;
            padding: 20px;
            border-radius: 5px;
            color: black;
        }
        .saved-products-table {
            width: 100%;
            border-collapse: collapse;
        }
        .saved-products-table th, .saved-products-table td {
            border: 1px solid #ddd;
            padding: 8px;
            text-align: left;
        }
        .saved-products-table th {
            background-color: #f2f2f2;
        }
    `);

        button.classList.add('show-saved-products-button');

        document.body.appendChild(button);

        var rollercoinoverlay = document.createElement('div');
        rollercoinoverlay.classList.add('rollercoinoverlay');
        var rollercoinoverlayContent = document.createElement('div');
        rollercoinoverlayContent.classList.add('rollercoinoverlay-content');
        rollercoinoverlay.appendChild(rollercoinoverlayContent);
        document.body.appendChild(rollercoinoverlay);

        button.addEventListener('click', function() {
            updateOverlayContent();
            rollercoinoverlay.style.display = 'block';
        });

        rollercoinoverlay.addEventListener('click', function() {
            rollercoinoverlay.style.display = 'none';
        });

        function updateOverlayContent() {
            var savedProducts = GM_listValues().map(function(key) {
                return {url: key, data: GM_getValue(key)};
            });

            var tableHTML = '<h2>Saved Marketplace Products</h2><table class="saved-products-table">';
            tableHTML += '<tr><th>Connect</th><th>Product Name</th><th>Saved Buy Price</th></tr>';

            savedProducts.forEach(function(product) {
                if (product.url.includes("rollercoin.com/marketplace/buy")) {
                    tableHTML += '<tr>';
                    tableHTML += '<td><a href="' + product.url + '">Connect</a></td>';
                    tableHTML += '<td>' + product.data.itemText + '</td>';
                    tableHTML += '<td>' + product.data.buyPrice + ' RLT</td>';
                    tableHTML += '</tr>';
                }
            });

            tableHTML += '</table>';

            rollercoinoverlayContent.innerHTML = tableHTML;
        }

        let overlayCreated = false;
        let itemPrice = '';

        function createOverlay() {
            if (overlayCreated) return;

            GM_addStyle(`
            #customOverlay {
                position: fixed;
                bottom: 50px;
                left: 20px;
                width: 350px;
                background-color: rgba(255, 255, 255, 0.9);
                border: 1px solid #ccc;
                z-index: 9999;
                padding: 5px;
                overflow: auto;
                text-align: left;
            }
            #customOverlay h2 {
                font-size: 20px;
                color: black;
                text-align: center;
            }
            #customOverlay table {
                width: 100%;
            }
            #customOverlay table tr {
                border-bottom: 1px solid #ccc;
            }
            #customOverlay table tr:last-child {
                border-bottom: none;
            }
            #customOverlay table td {
                padding: 8px;
                font-size: 16px;
                color: black;
            }
            #customOverlay p {
                font-size: 16px;
                color: black;
                margin: 5px 0;
                text-align: center;
            }
            #customOverlay input {
                width: 80%;
                margin: 0 auto;
                display: block;
            }
            #customOverlay button {
                width: 80%;
                margin: 10px auto;
                display: block;
                padding: 8px;
                border-radius: 4px;
                cursor: pointer;
            }
            #startButton {
                background-color: #4CAF50;
                color: white;
                border: none;
            }
            #stopButton {
                background-color: #f44336;
                color: white;
                border: none;
            }
        `);

            const currentURL = window.location.href;
            const savedData = GM_getValue(currentURL);

            const overlay = document.createElement('div');
            overlay.id = 'customOverlay';
            overlay.innerHTML = `
            <h2>Marketplace buyer</h2>
            <table>
                <tr>
                    <td>Product Name</td>
                    <td id="itemText"></td>
                </tr>
                <tr>
                    <td>Current Buy Price</td>
                    <td id="itemPrice"></td>
                </tr>
                <tr>
                    <td>Saved Buy Price</td>
                    <td id="buyPriceDisplay">${savedData ? savedData.buyPrice + ' RLT' : 'Not Saved'}</td>
                </tr>
            </table>
            <input type="text" id="buyPriceInput" placeholder="Enter New Buy Price">
            <button id="saveButton">Save</button>
            <button id="startButton">Start Automatic Buy</button>
            <button id="stopButton" style="display: none;">Stop Automatic Buy</button>
        `;
            document.body.appendChild(overlay);

            overlayCreated = true;

            const buyPriceInput = document.getElementById('buyPriceInput');
            buyPriceInput.addEventListener('click', function (event) {
                if (buyPriceInput.value === '' && itemPrice) {
                    const cleanItemPrice = itemPrice.replace(" RLT", "");
                    buyPriceInput.value = cleanItemPrice;
                }
            });

            const saveButton = document.getElementById('saveButton');
            saveButton.addEventListener('click', function (event) {
                const itemText = document.getElementById('itemText').textContent;
                const buyPrice = document.getElementById('buyPriceInput').value;

                let savedData = GM_getValue(currentURL);

                if (savedData) {
                    savedData.buyPrice = buyPrice;
                    GM_setValue(currentURL, savedData);
                    alert(`Buy Price updated for URL: ${currentURL}\nItem Text: ${itemText}\nNew Buy Price: ${buyPrice} RLT`);
                    window.location.reload()
                } else {
                    savedData = { itemText, buyPrice };
                    GM_setValue(currentURL, savedData);
                    alert(`New data saved for URL: ${currentURL}\nItem Text: ${itemText}\nBuy Price: ${buyPrice} RLT`);
                    window.location.reload()
                }

                document.getElementById('buyPriceDisplay').textContent = buyPrice + ' RLT';
            });

            const startButton = document.getElementById('startButton');
            const stopButton = document.getElementById('stopButton');

            let buyPrice = '';
            let intervalId;

            if (savedData && savedData.intervalRunning) {
                startButton.style.display = 'none';
                stopButton.style.display = 'block';

                setTimeout(function() {
                    window.location.reload();
                }, 1000*60*5);

                intervalId = setInterval(checkPrice, 500);
            }

            startButton.addEventListener('click', function (event) {
                startButton.style.display = 'none';
                stopButton.style.display = 'block';

                setTimeout(function() {
                    window.location.reload();
                }, 1000*60*5);

                GM_setValue(currentURL, { ...savedData, intervalRunning: true });
                intervalId = setInterval(checkPrice, 500);
            });

            stopButton.addEventListener('click', function (event) {
                startButton.style.display = 'block';
                stopButton.style.display = 'none';

                GM_setValue(currentURL, { ...savedData, intervalRunning: false });
                clearInterval(intervalId);
            });

            function checkPrice() {
                const itemPriceElement = document.querySelector(".input-price-wrapper > p.item-price");
                const itemPrice = itemPriceElement ? parseFloat(itemPriceElement.innerText.replace(" RLT", "")) : 0;

                const currentURL = window.location.href;
                const savedData = GM_getValue(currentURL);
                const buyPrice = parseFloat(savedData.buyPrice);

                if (itemPrice === 0) return;

                if (buyPrice > itemPrice) {
                    document.querySelector(".item-info-buy-wrapper.col-12.col-lg-4 > button").click();

                    const intervalId = setInterval(function () {
                        const overlayButton = document.querySelector(".modal.fade.show > div > div > div > div > button.roller-button.default.cyan");
                        if (overlayButton && overlayButton.offsetParent !== null) {
                            overlayButton.click();
                            clearInterval(intervalId);
                            window.location.reload();
                        }
                    }, 500);
                }
            }
        }

        setInterval(function () {
            if (window.location.href.match(/^https?:\/\/[^/]+\/marketplace\/buy\//)) {
                createOverlay();

                const itemTitle = document.querySelector(".col-12.col-lg-9 > div > h4");
                const itemText = itemTitle ? itemTitle.innerText : '';
                const itemPriceElement = document.querySelector(".input-price-wrapper > p.item-price");
                itemPrice = itemPriceElement ? itemPriceElement.innerText : '';

                document.getElementById('itemText').textContent = itemText;
                document.getElementById('itemPrice').textContent = itemPrice;
            } else if (!window.location.href.match(/^https?:\/\/[^/]+\/marketplace\/buy\//) && overlayCreated) {
                const existingOverlay = document.getElementById('customOverlay');
                if (existingOverlay) {
                    const stopButton = document.querySelector("#stopButton");
                    if (stopButton.style.display === 'block') {
                        stopButton.click();
                    }
                    existingOverlay.remove();
                    overlayCreated = false;
                }
            }
        }, 500);
    }





    // Faucetpay
    if (GM_getValue(currentURL) && window.location.href.includes("faucetpay.io")) {

        if (window.location.href.includes("faucetpay.io/page/user-admin/linked-addresses")){

            // Create a button to trigger the script
            const buttonHTML = '<button id="startScriptButton">Save Wallet Addresses</button>';
            document.body.insertAdjacentHTML('beforeend', buttonHTML);

            // Add some basic styling to the button
            GM_addStyle(`
        #startScriptButton {
            position: fixed;
            bottom: 40px;
            left: calc(50% - 100px); /* Half the button width for centering */
            padding: 10px 20px;
            background-color: #007bff;
            color: #fff;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            z-index: 9999;
        }
    `);

            function startAddressCollection() {
                const tableRows = document.querySelectorAll('.style_rowWrapper__3zn_i');

                const storedAddresses = GM_getValue('coinAddresses') || {};

                tableRows.forEach(row => {
                    const coinName = row.querySelector('span:nth-child(3) img').alt;
                    const walletAddress = row.querySelector('span:nth-child(2)').textContent.trim();

                    if (!storedAddresses.hasOwnProperty(coinName)) {
                        storedAddresses[coinName] = [walletAddress];
                    } else {
                        if (!Array.isArray(storedAddresses[coinName])) {
                            storedAddresses[coinName] = [];
                        }

                        if (!storedAddresses[coinName].includes(walletAddress)) {
                            storedAddresses[coinName].push(walletAddress);
                        }
                    }
                });

                // Save updated addresses
                GM_setValue('coinAddresses', storedAddresses);

                // Display updated addresses in console
                alert('Coin addresses saved!');
                console.log('Coin addresses saved:\n', storedAddresses);
            }

            // Add event listener to the button
            document.getElementById('startScriptButton').addEventListener('click', startAddressCollection);

        }



        function clickUserDashboardLink() {
            var userDashboardLink = document.querySelector('a[href="/page/user-admin"]');

            if (userDashboardLink && userDashboardLink.offsetParent !== null) {
                userDashboardLink.click();
                clearInterval(checkInterval1);
            }
        }

        var checkInterval1 = setInterval(clickUserDashboardLink, 3000);
    }





})();