1function cyrb53(str, seed = 0) { 2 let h1 = 0xdeadbeef ^ seed, 3 h2 = 0x41c6ce57 ^ seed; 4 for (let i = 0, ch; i < str.length; i++) { 5 ch = str.charCodeAt(i); 6 h1 = Math.imul(h1 ^ ch, 2654435761); 7 h2 = Math.imul(h2 ^ ch, 1597334677); 8 } 9 h1 = Math.imul(h1 ^ h1 >>> 16, 2246822507) ^ Math.imul(h2 ^ h2 >>> 13, 3266489909); 10 h2 = Math.imul(h2 ^ h2 >>> 16, 2246822507) ^ Math.imul(h1 ^ h1 >>> 13, 3266489909); 11 return 4294967296 * (2097151 & h2) + (h1 >>> 0); 12} 13 14function crearHash(clientIP) { 15 let validityInterval = Math.round(new Date() / 1000 / 3600 / 24 / 4); 16 let usrID = $('#inpt_usuarioID').val(); 17 let clientIDSource = clientIP + ";" + window.location.host + ";" + navigator.userAgent + ";" + navigator.language + ";" + usrID + ";" + validityInterval; 18 let clientIDHashed = cyrb53(clientIDSource).toString(16); 19 return clientIDHashed; 20} 21 22function lanzarAnalytics(googleId, clientHash) { 23 24 (function (w, d, s, l, i) { 25 26 let f = d.getElementsByTagName(s)[0], 27 j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 28 'https://www.googletagmanager.com/gtag/js?id=' + i + dl; f.parentNode.insertBefore(j, f); 29 })(window, document, 'script', 'dataLayer', googleId); 30 31 window.dataLayer = window.dataLayer || []; 32 33 function gtag() { dataLayer.push(arguments); } 34 gtag('consent', 'default', { 35 'ad_storage': 'denied', 36 'analytics_storage': 'denied' 37 }); 38 gtag('js', new Date()); 39 gtag('config', googleId); 40}
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.