1!function(t){t.fn.hoodProductCarousel=function(i){return this.each(function(){var i,o=t(this).find(".iProductCarouselContainer"),r=t(this).find(".iProductCarouselList"),a=t(this).find(".iProductCarouselScrollbar"),h=t(this).find(".iProductCarouselLeftNav"),u=t(this).find(".iProductCarouselRightNav"),d=t(this).find(".scrollbar-handle"),f=0,s=t.map(t(this).find(".iProductCarouselItemContainer"),function(i,n){var o={};return o.index=n,o.left=t(i).position().left,o.right=o.left+t(i).width(),o});function l(l){var m,P;e=w(),f=r.position().left,newPosition=function(i){if(i<0)return{left:0,right:0};return c=t.map(s,function(t){if(i>=t.left&&i<=t.right)return t}),c.pop()}(-f+l*e.containerWidth),newPosition&&(n=Math.min(l<0?newPosition.right:newPosition.left,e.listWidth-e.containerWidth),f=-n,o.animate({scrollLeft:-f},400)),m=w(),P=m.leftRatio*m.containerWidth,d.width(Math.min(m.pageRatio*m.containerWidth+10,m.containerWidth)),d.animate({left:-P},400),function(){function t(){i=setTimeout(n,700)}function n(){a.animate({opacity:0},300)}a.queue("fx",[]),a.stop(),window.clearTimeout(i),a.animate({opacity:1},100,t)}(),e.maxLeft==n?u.hide():u.show(),0==n?h.hide():h.show()}function w(){return{containerWidth:o.width(),listWidth:r.width(),pageRatio:o.width()/r.width(),leftRatio:f/r.width(),maxLeft:r.width()-o.width()}}t(this).find(".iProductCarouselRightNav").click(function(){l(1)}),t(this).find(".iProductCarouselLeftNav").click(function(){l(-1)})})}}(jQuery);
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.