1!function(root,factory){"function"==typeof define&&define.amd?define(factory):"object"==typeof exports?module.exports=factory(require,exports,module):root.CountUp=factory()}(this,function(require,exports,module){return function(target,startVal,endVal,decimals,duration,options){var self=this;if(self.version=function(){return"1.9.3"},self.options={useEasing:!0,useGrouping:!0,separator:",",decimal:".",easingFn:function(t,b,c,d){return c*(1-Math.pow(2,-10*t/d))*1024/1023+b},formattingFn:function(num){var x,x1,x2,x3,i,len,neg=num<0;if(num=Math.abs(num).toFixed(self.decimals),x=(num+="").split("."),x1=x[0],x2=1<x.length?self.options.decimal+x[1]:"",self.options.useGrouping){for(x3="",i=0,len=x1.length;i<len;++i)0!==i&&i%3==0&&(x3=self.options.separator+x3),x3=x1[len-i-1]+x3;x1=x3}self.options.numerals.length&&(x1=x1.replace(/[0-9]/g,function(w){return self.options.numerals[+w]}),x2=x2.replace(/[0-9]/g,function(w){return self.options.numerals[+w]}));return(neg?"-":"")+self.options.prefix+x1+x2+self.options.suffix},prefix:"",suffix:"",numerals:[]},options&&"object"==typeof options)for(var key in self.options)options.hasOwnProperty(key)&&null!==options[key]&&(self.options[key]=options[key]);""===self.options.separator?self.options.useGrouping=!1:self.options.separator=""+self.options.separator;for(var lastTime=0,vendors=["webkit","moz","ms","o"],x=0;x<vendors.length&&!window.requestAnimationFrame;++x)window.requestAnimationFrame=window[vendors[x]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[vendors[x]+"CancelAnimationFrame"]||window[vendors[x]+"CancelRequestAnimationFrame"];function ensureNumber(n){return"number"==typeof n&&!isNaN(n)}window.requestAnimationFrame||(window.requestAnimationFrame=function(callback,element){var currTime=(new Date).getTime(),timeToCall=Math.max(0,16-(currTime-lastTime)),id=window.setTimeout(function(){callback(currTime+timeToCall)},timeToCall);return lastTime=currTime+timeToCall,id}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(id){clearTimeout(id)}),self.initialize=function(){return!!self.initialized||(self.error="",self.d="string"==typeof target?document.getElementById(target):target,self.d?(self.startVal=Number(startVal),self.endVal=Number(endVal),ensureNumber(self.startVal)&&ensureNumber(self.endVal)?(self.decimals=Math.max(0,decimals||0),self.dec=Math.pow(10,self.decimals),self.duration=1e3*Number(duration)||2e3,self.countDown=self.startVal>self.endVal,self.frameVal=self.startVal,self.initialized=!0):(self.error="[CountUp] startVal ("+startVal+") or endVal ("+endVal+") is not a number",!1)):!(self.error="[CountUp] target is null or undefined"))},self.printValue=function(value){var result=self.options.formattingFn(value);"INPUT"===self.d.tagName?this.d.value=result:"text"===self.d.tagName||"tspan"===self.d.tagName?this.d.textContent=result:this.d.innerHTML=result},self.count=function(timestamp){self.startTime||(self.startTime=timestamp);var progress=(self.timestamp=timestamp)-self.startTime;self.remaining=self.duration-progress,self.options.useEasing?self.countDown?self.frameVal=self.startVal-self.options.easingFn(progress,0,self.startVal-self.endVal,self.duration):self.frameVal=self.options.easingFn(progress,self.startVal,self.endVal-self.startVal,self.duration):self.countDown?self.frameVal=self.startVal-(self.startVal-self.endVal)*(progress/self.duration):self.frameVal=self.startVal+(self.endVal-self.startVal)*(progress/self.duration),self.countDown?self.frameVal=self.frameVal<self.endVal?self.endVal:self.frameVal:self.frameVal=self.frameVal>self.endVal?self.endVal:self.frameVal,self.frameVal=Math.round(self.frameVal*self.dec)/self.dec,self.printValue(self.frameVal),progress<self.duration?self.rAF=requestAnimationFrame(self.count):self.callback&&self.callback()},self.start=function(callback){self.initialize()&&(self.callback=callback,self.rAF=requestAnimationFrame(self.count))},self.pauseResume=function(){self.paused?(self.paused=!1,delete self.startTime,self.duration=self.remaining,self.startVal=self.frameVal,requestAnimationFrame(self.count)):(self.paused=!0,cancelAnimationFrame(self.rAF))},self.reset=function(){self.paused=!1,delete self.startTime,self.initialized=!1,self.initialize()&&(cancelAnimationFrame(self.rAF),self.printValue(self.startVal))},self.update=function(newEndVal){self.initialize()&&(ensureNumber(newEndVal=Number(newEndVal))?(self.error="",newEndVal!==self.frameVal&&(cancelAnimationFrame(self.rAF),self.paused=!1,delete self.startTime,self.startVal=self.frameVal,self.endVal=newEndVal,self.countDown=self.startVal>self.endVal,self.rAF=requestAnimationFrame(self.count))):self.error="[CountUp] update(
1) - new endVal is not a number: "+newEndVal)},self.initialize()&&self.printValue(self.startVal)}});
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.