1"function"!=typeof Object.create&&(Object.create=function(t){function i(){}return i.prototype=t,new i}),function(t,i,n,e){"use strict";var s={init:function(n,e){this.options=t.extend({},t.fn.singlePageNav.defaults,n),this.container=e,this.$container=t(e),this.$links=this.$container.find("a"),""!==this.options.filter&&(this.$links=this.$links.filter(this.options.filter)),this.$window=t(i),this.$htmlbody=t("html, body"),this.$links.on("click.singlePageNav",t.proxy(this.handleClick,this)),this.didScroll=!1,this.checkPosition(),this.setTimer()},handleClick:function(i){var n=this,e=i.currentTarget,s=decodeURI(e.hash),o=t(s);i.preventDefault(),o.length&&(n.clearTimer(),"function"==typeof n.options.beforeStart&&n.options.beforeStart(),n.setActiveLink(e.hash),n.scrollTo(o,function(){n.options.updateHash&&history.pushState&&history.pushState(null,null,e.hash),n.setTimer(),"function"==typeof n.options.onComplete&&n.options.onComplete()}))},scrollTo:function(t,i){var n=this.getCoords(t).top,e=!1;this.$htmlbody.stop().animate({scrollTop:n},{duration:this.options.speed,easing:this.options.easing,complete:function(){"function"!=typeof i||e||i(),e=!0}})},setTimer:function(){var t=this;t.$window.on("scroll.singlePageNav",function(){t.didScroll=!0}),t.timer=setInterval(function(){t.didScroll&&(t.didScroll=!1,t.checkPosition())},250)},clearTimer:function(){clearInterval(this.timer),this.$window.off("scroll.singlePageNav"),this.didScroll=!1},checkPosition:function(){var t=this.$window.scrollTop(),i=this.getCurrentSection(t);null!==i&&this.setActiveLink(i)},getCoords:function(t){return{top:Math.round(t.offset().top)-this.options.offset}},setActiveLink:function(t){var i=this.$container.find("a[href$='"+t+"']");i.hasClass(this.options.currentClass)||(this.$links.removeClass(this.options.currentClass),i.addClass(this.options.currentClass))},getCurrentSection:function(i){var n,e,s;for(n=0;n<this.$links.length;n++)e=this.$links[n].hash,e=decodeURI(e),t(e).length&&i>=this.getCoords(t(e)).top-this.options.threshold&&(s=e);return s||(0===this.$links.length?null:this.$links[0].hash)}};t.fn.singlePageNav=function(t){return this.each(function(){Object.create(s).init(t,this)})},t.fn.singlePageNav.defaults={offset:0,threshold:120,speed:400,currentClass:"current",easing:"swing",updateHash:!1,filter:"",onComplete:!1,beforeStart:!1}}(jQuery,window,document);
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.