document.addEventListener("DOMContentLoaded",()=>{let e=900,t="";const o=document.querySelector("#free-image-wrapper");if(!o)return;o.style.width=e+"px",o.style.textAlign="center",o.style.marginLeft="30px",o.style.marginTop="25px",o.style.marginBottom="20px";const n=document.getElementsByTagName("script");let r="";for(const e of n)if(e.src.includes("keep-free.js")){r=e.src;break}if(r){const o=new URL(r).searchParams,n=o.get("width");n&&(e=n);const a=o.get("donate");a&&(t=a)}let a="/donate/";""!==t&&(a+="?"+t);let s=Math.floor(11*Math.random());s<1&&(s=1);const l=["Help us keep this free!","Support our free service","Consider donating to keep this free!","Your contribution helps keep us running!","Support free access for everyone!","Join Our Supporters","Support Us","Make a Contribution","Give Today","Contribute to Our Mission","Power Our Progress","Be Part of the Solution","Keep Us Growing","Help Us Stay Free","Join Our Giving Circle","Fuel the Future","Keep It Free for All","Invest in Innovation","Help Us Keep Improving","Support Continuous Development","Every Dollar Counts","Buy Us a Coffee","Keep the Code Flowing","Fund the Next Big Feature","Support Our Mission for Free Software","Act Now - Help Us Grow","Limited-Time Impact Opportunity","Help Us Reach Our Goal","Help Us Keep Building","Support Our Developers","Keep Us Coding","Help Us Maintain This Software","Join Us in Keeping This Software Free","Fuel the Future of Free Software","Keep the Software You Love Free","Help Sustain Our Free Tools","Show Your Support-We're Grateful","Thanks for Keeping Us Going","Your Support = Better Software","Buy Us a Coffee (or 10) to Keep Coding","Fund Our Next Update","Sponsor Our Work Today","Double Your Impact Today"],i=l[Math.floor(Math.random()*l.length)],c=document.createElement("div");c.style.paddingTop="25px";const d=document.createElement("a");d.target="_blank",d.href=a;const p=document.createElement("img");p.id="freeImage",p.src="proxy.php?url=https%3A%2F%2Frjlsoftware.com%2Fimages%2Fkeepfree%2Fkeep-free"+s+".webp",p.width=e,p.alt=i,p.title=i;const u=["rgba(255, 87, 51, 1.0)","rgba(51, 255, 87, 1.0)","rgba(51, 87, 255, 1.0)","rgba(255, 51, 161, 1.0)","rgba(241, 196, 15, 1.0)","rgba(155, 89, 182, 1.0)","rgba(26, 188, 156, 1.0)","rgba(231, 76, 60, 1.0)"],h=Math.floor(Math.random()*u.length);p.style.boxShadow=`0 0 25px 12px ${u[h]}`,p.style.borderRadius="85px",d.appendChild(p),c.appendChild(d);const g=document.createElement("a");g.href=a,g.target="_blank",g.style.textDecoration="none",g.title=i;const m=document.createElement("h3");m.textContent=i,m.style.color="#182EFA",m.style.marginBottom="7px",m.style.fontSize="larger",m.style.display="inline",m.style.margin="0",m.style.padding="0",g.appendChild(m),d.appendChild(p),c.appendChild(d),o.appendChild(g),o.appendChild(c)}),document.addEventListener("DOMContentLoaded",()=>{const e=document.querySelector(".nav-dropdown");if(!e)return;const t=e.querySelector(".nav-dropdown-toggle");t&&(t.addEventListener("click",t=>{t.preventDefault(),e.classList.toggle("open")}),document.addEventListener("click",t=>{e.contains(t.target)||e.classList.remove("open")}))}),document.addEventListener("DOMContentLoaded",()=>{const e=document.querySelectorAll(".share-link");if(e.length){const t=document.querySelector('link[rel="canonical"]'),o=encodeURIComponent(t?t.href:window.location.href),n=encodeURIComponent(document.title);e.forEach(e=>{const t=e.getAttribute("data-share-url");t&&(e.href=t.replace("{URL}",o).replace("{TITLE}",n))})}}),document.addEventListener("DOMContentLoaded",()=>{const e=new URLSearchParams(window.location.search).get("q");if(!e||e.trim().length<2)return;const t=e.trim(),o=t.toLowerCase().split(/\s+/).filter(e=>e.length>=2);if(0===o.length)return;const n=document.querySelector(".sp-section")||document.body,r=document.createTreeWalker(n,NodeFilter.SHOW_TEXT,{acceptNode:e=>{const t=e.parentNode;if(!t)return NodeFilter.FILTER_REJECT;const o=t.tagName;return"SCRIPT"===o||"STYLE"===o||"MARK"===o||"TEXTAREA"===o||"INPUT"===o?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}}),a=[];let s;for(;s=r.nextNode();){const e=s.nodeValue.toLowerCase();for(let t=0;t{const e=document.querySelector("mark.sp-search-highlight");e&&e.scrollIntoView({behavior:"smooth",block:"center"})},300);const l=document.querySelector(".sp-header")||n;if(l){const e=document.createElement("div");e.className="sp-search-highlight-banner";const o=window.location.pathname,n="/search/?q="+encodeURIComponent(t);e.innerHTML=' Showing highlights for "'+i(t)+'" - Clear highlights | Back to search',l.parentNode.insertBefore(e,l)}function i(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""")}function c(e,t){const o=e.nodeValue,n=o.toLowerCase(),r=e.parentNode,a=document.createDocumentFragment();let s=0;const l=[];for(let e=0;ee.start-t.start);const i=[l[0]];for(let e=1;es&&a.appendChild(document.createTextNode(o.substring(s,i[e].start)));const t=document.createElement("mark");t.className="sp-search-highlight",t.textContent=o.substring(i[e].start,i[e].end),a.appendChild(t),s=i[e].end}s