!function(t){t.fn.toc=function(e){var r,o=this,n=t.extend({},jQuery.fn.toc.defaults,e),i=t(n.container),a=t(n.selectors,i),l=[],c=n.prefix+"-active",s=function(){for(var e=0,r=arguments.length;r>e;e++){var o=arguments[e],n=t(o);if(n.scrollTop()>0)return n;n.scrollTop(1);var i=n.scrollTop()>0;if(n.scrollTop(0),i)return n}return[]},f=s(n.container,"body","html"),h=function(e){if(n.smoothScrolling){e.preventDefault();var r=t(e.target).attr("href"),i=t(r);f.animate({scrollTop:i.offset().top},400,"swing",function(){location.hash=r})}t("li",o).removeClass(c),t(e.target).parent().addClass(c)},u=function(){r&&clearTimeout(r),r=setTimeout(function(){for(var e,r=t(window).scrollTop(),i=0,a=l.length;a>i;i++)if(l[i]>=r){t("li",o).removeClass(c),e=t("li:eq("+(i-1)+")",o).addClass(c),n.onHighlight(e);break}},50)};return n.highlightOnScroll&&(t(window).bind("scroll",u),u()),this.each(function(){var e=t(this),r=t("<ul/>");a.each(function(o,i){var a=t(i);l.push(a.offset().top-n.highlightOffset);var c=(t("<span/>").attr("id",n.anchorName(o,i,n.prefix)).insertBefore(a),t("<a/>").text(a.text()).attr("href","#"+n.anchorName(o,i,n.prefix)).bind("click",function(r){h(r),e.trigger("selected",t(this).attr("href"))})),s=t("<li/>").addClass(n.prefix+"-"+a[0].tagName.toLowerCase()).append(c);r.append(s)}),e.html(r)})},jQuery.fn.toc.defaults={container:"body",selectors:"h1,h2,h3",smoothScrolling:!0,prefix:"toc",onHighlighted:function(){},highlightOnScroll:!0,highlightOffset:100,anchorName:function(t,e,r){return r+t}}}(jQuery);