(function () { // 1) Basic bot filter (extend if you like) function isBot() { return /(bot|crawl|spider|google|bing|slurp|yandex|facebook|linkedin|pinterest|preview|whatsapp|discord|telegram|headless|puppeteer)/i .test(navigator.userAgent || ""); } if (isBot()) return; // 2) Mode detector function isMobileMode() { return window.matchMedia("(max-width: 767px)").matches || /Mobi|Android|iPhone|iPad|iPod/i.test(navigator.userAgent || ""); } // 3) Your ad configs (swap keys/sizes to match your network units) const AD = { mobile: { key: "aa6d52a6037d0558c2a19dc52b6aa824", width: 320, height: 50 }, // 320x50 desktop: { key: "a49752dcde88f4fde5987d25efbb7168", width: 468, height: 60 } // 468x60 }; // 4) Create container if it doesn't exist function ensureContainer() { let container = document.getElementById("ad-container"); if (!container) { container = document.createElement("div"); container.id = "ad-container"; container.style.display = "none"; document.body.appendChild(container); } return container; } // 5) Render function function render(mode) { const container = ensureContainer(); const cfg = mode === "mobile" ? AD.mobile : AD.desktop; // Set global atOptions for ad network window.atOptions = { key: cfg.key, format: "iframe", height: cfg.height, width: cfg.width, params: {} }; // Clear previous ad/script then inject container.innerHTML = ""; container.style.display = "block"; const s = document.createElement("script"); s.src = `//selfportraitproved.com/${cfg.key}/invoke.js`; s.async = true; container.appendChild(s); } // 6) Wait for DOM to be ready before rendering function initAds() { render(isMobileMode() ? "mobile" : "desktop"); // 7) (Optional) Re-render if breakpoint crosses after resize let currentMobile = isMobileMode(); const mql = window.matchMedia("(max-width: 767px)"); if (mql.addEventListener) { mql.addEventListener("change", (e) => { const nowMobile = e.matches; if (nowMobile !== currentMobile) { currentMobile = nowMobile; render(currentMobile ? "mobile" : "desktop"); } }); } else if (mql.addListener) { // older browsers mql.addListener((e) => { const nowMobile = e.matches; if (nowMobile !== currentMobile) { currentMobile = nowMobile; render(currentMobile ? "mobile" : "desktop"); } }); } } // 8) Execute when DOM is ready if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", initAds); } else { initAds(); } })();

Does Michael C. Hall Have Kids?

When it comes to the personal life of Michael C. Hall, the acclaimed actor known for his roles in "Dexter" and "Six Feet Under," many fans are curious about one...