1// Yandex.Metrika â counter 108509791
vendor: 375 bytes, lines 1-7
1 2(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; 3m[i].l=1*new Date(); 4for(var j=0;j<document.scripts.length;j++){if(document.scripts[j].src===r){return;}} 5k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)} 6)(window,document,'script','https://mc.yandex.ru/metrika/tag.js','ym'); 7ym(
7108509791
vendor: 83 bytes, lines 7-9
7,'init',{clickmap:true,trackLinks:true,accurateTrackBounce:true,webvisor:true}); 8 9
10// ============================================================ 11// Market-Place / MPSU ads for bmw-wiki.vercel.app 12// Articles only: horizontal after 1st, 5th, and 9th paragraphs, corner sticker 13(function () { 14 var MPSU_SCRIPT_SRC = 'https://statika.mpsuadv.ru/scripts/11322.js'; 15 16 function isArticlePage() { 17 if (!document.body) return false; 18 if (document.body.classList.contains('home')) return false; 19 if (document.body.classList.contains('category')) return false; 20 if (document.body.classList.contains('archive')) return false; 21 return !!document.querySelector('article, .article-body'); 22 } 23 24 function getArticleRoot() { 25 return document.querySelector('article') || document.querySelector('.article-body'); 26 } 27 28 function isUnsafeAdParent(node, root) { 29 while (node && node !== root && node !== document.body) { 30 if (node.matches && node.matches('ol, ul, li, blockquote, table, thead, tbody, tr, td, th, figure, figcaption, aside, details, summary, pre, code')) return true; 31 if (node.matches && node.matches('.important, .note, .warning, .alert, .callout, .highlight, .tip, .info, .notice, .attention, .danger, .success, .faq, .steps, .pros-cons, .toc, .contents')) return true; 32 if (node.className && typeof node.className === 'string' && /(important|note|warning|alert|callout|highlight|tip|info|notice|attention|danger|success|faq|steps|pros-cons|toc|contents)/i.test(node.className)) return true; 33 node = node.parentElement; 34 } 35 return false; 36 } 37 38 function getSafeParagraphs(root) { 39 if (!root) return []; 40 return Array.prototype.filter.call(root.querySelectorAll('p'), function (paragraph) { 41 if (!paragraph || !paragraph.parentElement) return false; 42 if (isUnsafeAdParent(paragraph.parentElement, root)) return false; 43 return paragraph.textContent && paragraph.textContent.replace(/\s+/g, '').length >= 40; 44 }); 45 } 46 47 function loadMpsuScript() { 48 var existingScript = document.querySelector('script[src="' + MPSU_SCRIPT_SRC + '"]'); 49 if (existingScript) return; 50 var script = document.createElement('script'); 51 script.async = true; 52 script.src = MPSU_SCRIPT_SRC; 53 document.head.appendChild(script); 54 } 55 56 function startWidget(widgetId) { 57 window.mpsuStart = window.mpsuStart || []; 58 window.mpsuStart.push(widgetId); 59 } 60 61 function createWidget(widgetId) { 62 if (document.getElementById('mp_custom_' + widgetId)) return null; 63 var block = document.createElement('div'); 64 block.id = 'mp_custom_' + widgetId; 65 return block; 66 } 67 68 function insertAfterParagraph(widgetId, paragraphNumber) { 69 var root = getArticleRoot(); 70 if (!root) return; 71 var paragraphs = getSafeParagraphs(root); 72 var target = paragraphs[paragraphNumber - 1]; 73 if (!target || !target.parentNode) return; 74 var block = createWidget(widgetId); 75 if (!block) return; 76 target.parentNode.insertBefore(block, target.nextSibling); 77 startWidget(widgetId); 78 } 79 80 function appendFloating(widgetId) { 81 var block = createWidget(widgetId); 82 if (!block) return; 83 document.body.appendChild(block); 84 startWidget(widgetId); 85 } 86 87 function initMpsuAds() { 88 if (!isArticlePage()) return; 89 loadMpsuScript(); 90 // Rotator Static ZBT bmw-wiki.vercel.app horizontal 1 ?39143 91 insertAfterParagraph(39143, 1); 92 // Rotator Static ZBT bmw-wiki.vercel.app horizontal 2 ?39144 93 insertAfterParagraph(39144, 5); 94 // Rotator Static ZBT bmw-wiki.vercel.app horizontal 3 ?40466 95 insertAfterParagraph(40466, 9); 96 // Rotator Recom V bmw-wiki.vercel.app corner sticker ?40396 97 appendFloating(40396); 98 } 99 100 if (document.readyState === 'loading') { 101 document.addEventListener('DOMContentLoaded', initMpsuAds); 102 } else { 103 initMpsuAds(); 104 } 105})(); 106 107
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.