1const animationDuration=2e3,frameDuration=1e3/60,totalFrames=Math.round(2e3/frameDuration),easeOutQuad=e=>e*(2-e),animateCountUp=e=>{let t=0,n=e.innerHTML,r=n.indexOf(".")>0,a=parseFloat(n),o=setInterval(()=>{t++;let n=easeOutQuad(t/totalFrames),i=Math.round(a*n);i=r?parseFloat(a*n).toFixed(1):Math.round(a*n),parseFloat(e.innerHTML)!==i&&(e.innerHTML=i),t===totalFrames&&clearInterval(o)},frameDuration)},runAnimations=()=>{let e=document.querySelectorAll(".countup");e.forEach(animateCountUp)},observer=new IntersectionObserver(e=>{e.forEach(e=>{if(e.isIntersecting){runAnimations();return}})});observer.observe(document.querySelector(".statistic"));
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.