(function(k){k.fn.marquee=function(l){function h(f,b,c){var a=c.behavior,d=c.width,e=c.dir,g=0;return g=a=="alternate"?f==1?b[c.widthAxis]-d*2:d:a=="slide"?f==-1?e==-1?b[c.widthAxis]:d:e==-1?b[c.widthAxis]-d*2:0:f==-1?b[c.widthAxis]:0}function m(){for(var f=i.length,b=null,c=null,a={},d=[],e=false;f--;){b=i[f];c=k(b);a=c.data("marqueeState");if(c.data("paused")!==true){b[a.axis]+=a.scrollamount*a.dir;e=a.dir==-1?b[a.axis]<=h(a.dir*-1,b,a):b[a.axis]>=h(a.dir*-1,b,a);if(a.behavior=="scroll"&&a.last==
b[a.axis]||a.behavior=="alternate"&&e&&a.last!=-1||a.behavior=="slide"&&e&&a.last!=-1){if(a.behavior=="alternate")a.dir*=-1;a.last=-1;c.trigger("stop");a.loops--;if(a.loops===0){b[a.axis]=a.behavior!="slide"?h(a.dir,b,a):h(a.dir*-1,b,a);c.trigger("end")}else{d.push(b);c.trigger("start");b[a.axis]=h(a.dir,b,a)}}else d.push(b);a.last=b[a.axis];c.data("marqueeState",a)}else d.push(b)}i=d;i.length&&setTimeout(m,25)}var i=[],n=this.length;this.each(function(f){var b=k(this),c=b.attr("width")||b.width(),
a=b.attr("height")||b.height(),d=b.after("<div "+(l?'class="'+l+'" ':"")+'style="display: block-inline; width: '+c+"px; height: "+a+'px; overflow: hidden;"><div style="float: left; white-space: nowrap;">'+b.html()+"</div></div>").next(),e=d.get(0),g=(b.attr("direction")||"left").toLowerCase(),j={dir:/down|right/.test(g)?-1:1,axis:/left|right/.test(g)?"scrollLeft":"scrollTop",widthAxis:/left|right/.test(g)?"scrollWidth":"scrollHeight",last:-1,loops:b.attr("loop")||-1,scrollamount:b.attr("scrollamount")||
this.scrollAmount||2,behavior:(b.attr("behavior")||"scroll").toLowerCase(),width:/left|right/.test(g)?c:a};if(b.attr("loop")==-1&&j.behavior=="slide")j.loops=1;b.remove();/left|right/.test(g)?d.find("> div").css("padding","0 "+c+"px"):d.find("> div").css("padding",a+"px 0");d.bind("stop",function(){d.data("paused",true)}).bind("pause",function(){d.data("paused",true)}).bind("start",function(){d.data("paused",false)}).bind("unpause",function(){d.data("paused",false)}).data("marqueeState",j);i.push(e);
e[j.axis]=h(j.dir,e,j);d.trigger("start");f+1==n&&m()});return k(i)}})(jQuery);
