1var DetectAb = function (callback, extended) { 2 const bait = document.createElement('div'); 3 bait.innerHTML = ' '; 4 bait.className = 'ad-wrapper ad-box'; 5 bait.setAttribute('aria-hidden', 'true'); 6 bait.style.position = 'fixed'; 7 bait.style.top = '200%'; 8 document.body.appendChild(bait); 9 window.setTimeout(() => { 10 if (!!bait && (bait.offsetHeight === 0 || window.getComputedStyle(bait)?.display === 'none')) { 11 callback(true, 1); 12 } else { 13 if (extended) { 14 fetch('https://www3.doubleclick.net', { 15 method: 'HEAD', 16 mode: 'no-cors', 17 cache: 'no-store', 18 }).catch(() => { 19 }).then((r) => { 20 r ? callback(false, 0) : callback(true, 2); 21 }); 22 } else { 23 callback(false, 0) 24 } 25 } 26 bait.remove(); 27 }, 200); 28}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.