/* Cycle */
(function($){
    var ver="2.9995";
    if($.support==undefined){
        $.support={
            opacity:!($.browser.msie)
            }
        }
    function debug(s){
    $.fn.cycle.debug&&log(s)
    }
    function log(){
    window.console&&console.log&&console.log("[cycle] "+Array.prototype.join.call(arguments," "))
    }
    $.expr[":"].paused=function(el){
    return el.cyclePause
    };
    
$.fn.cycle=function(options,arg2){
    var o={
        s:this.selector,
        c:this.context
        };
        
    if(this.length===0&&options!="stop"){
        if(!$.isReady&&o.s){
            log("DOM not ready, queuing slideshow");
            $(function(){
                $(o.s,o.c).cycle(options,arg2)
                });
            return this
            }
            log("terminating; zero elements found by selector"+($.isReady?"":" (DOM not ready)"));
        return this
        }
        return this.each(function(){
        var opts=handleArguments(this,options,arg2);
        if(opts===false){
            return
        }
        opts.updateActivePagerLink=opts.updateActivePagerLink||$.fn.cycle.updateActivePagerLink;
        if(this.cycleTimeout){
            clearTimeout(this.cycleTimeout)
            }
            this.cycleTimeout=this.cyclePause=0;
        var $cont=$(this);
        var $slides=opts.slideExpr?$(opts.slideExpr,this):$cont.children();
        var els=$slides.get();
        var opts2=buildOptions($cont,$slides,els,opts,o);
        if(opts2===false){
            return
        }
        if(els.length<2){
            log("terminating; too few slides: "+els.length);
            return
        }
        var startTime=opts2.continuous?10:getTimeout(els[opts2.currSlide],els[opts2.nextSlide],opts2,!opts2.backwards);
        if(startTime){
            startTime+=(opts2.delay||0);
            if(startTime<10){
                startTime=10
                }
                debug("first timeout: "+startTime);
            this.cycleTimeout=setTimeout(function(){
                go(els,opts2,0,!opts.backwards)
                },startTime)
            }
        })
};

function triggerPause(cont,byHover,onPager){
    var opts=$(cont).data("cycle.opts");
    var paused=!!cont.cyclePause;
    if(paused&&opts.paused){
        opts.paused(cont,opts,byHover,onPager)
        }else{
        if(!paused&&opts.resumed){
            opts.resumed(cont,opts,byHover,onPager)
            }
        }
}
function handleArguments(cont,options,arg2){
    if(cont.cycleStop==undefined){
        cont.cycleStop=0
        }
        if(options===undefined||options===null){
        options={}
    }
    if(options.constructor==String){
    switch(options){
        case"destroy":case"stop":
            var opts=$(cont).data("cycle.opts");
            if(!opts){
            return false
            }
            cont.cycleStop++;
        if(cont.cycleTimeout){
            clearTimeout(cont.cycleTimeout)
            }
            cont.cycleTimeout=0;
        opts.elements&&$(opts.elements).stop();
            $(cont).removeData("cycle.opts");
            if(options=="destroy"){
            destroy(opts)
            }
            return false;
        case"toggle":
            cont.cyclePause=(cont.cyclePause===1)?0:1;
            checkInstantResume(cont.cyclePause,arg2,cont);
            triggerPause(cont);
            return false;
        case"pause":
            cont.cyclePause=1;
            triggerPause(cont);
            return false;
        case"resume":
            cont.cyclePause=0;
            checkInstantResume(false,arg2,cont);
            triggerPause(cont);
            return false;
        case"prev":case"next":
            var opts=$(cont).data("cycle.opts");
            if(!opts){
            log('options not found, "prev/next" ignored');
            return false
            }
            $.fn.cycle[options](opts);
            return false;
        default:
            options={
            fx:options
        }
        }
        return options
}else{
    if(options.constructor==Number){
        var num=options;
        options=$(cont).data("cycle.opts");
        if(!options){
            log("options not found, can not advance slide");
            return false
            }
            if(num<0||num>=options.elements.length){
            log("invalid slide index: "+num);
            return false
            }
            options.nextSlide=num;
        if(cont.cycleTimeout){
            clearTimeout(cont.cycleTimeout);
            cont.cycleTimeout=0
            }
            if(typeof arg2=="string"){
            options.oneTimeFx=arg2
            }
            go(options.elements,options,1,num>=options.currSlide);
        return false
        }
    }
return options;
function checkInstantResume(isPaused,arg2,cont){
    if(!isPaused&&arg2===true){
        var options=$(cont).data("cycle.opts");
        if(!options){
            log("options not found, can not resume");
            return false
            }
            if(cont.cycleTimeout){
            clearTimeout(cont.cycleTimeout);
            cont.cycleTimeout=0
            }
            go(options.elements,options,1,!options.backwards)
        }
    }
}
function removeFilter(el,opts){
    if(!$.support.opacity&&opts.cleartype&&el.style.filter){
        try{
            el.style.removeAttribute("filter")
            }catch(smother){}
    }
}
function destroy(opts){
    if(opts.next){
        $(opts.next).unbind(opts.prevNextEvent)
        }
        if(opts.prev){
        $(opts.prev).unbind(opts.prevNextEvent)
        }
        if(opts.pager||opts.pagerAnchorBuilder){
        $.each(opts.pagerAnchors||[],function(){
            this.unbind().remove()
            })
        }
        opts.pagerAnchors=null;
    if(opts.destroy){
        opts.destroy(opts)
        }
    }
function buildOptions($cont,$slides,els,options,o){
    var opts=$.extend({},$.fn.cycle.defaults,options||{},$.metadata?$cont.metadata():$.meta?$cont.data():{});
    var meta=$.isFunction($cont.data)?$cont.data(opts.metaAttr):null;
    if(meta){
        opts=$.extend(opts,meta)
        }
        if(opts.autostop){
        opts.countdown=opts.autostopCount||els.length
        }
        var cont=$cont[0];
    $cont.data("cycle.opts",opts);
    opts.$cont=$cont;
    opts.stopCount=cont.cycleStop;
    opts.elements=els;
    opts.before=opts.before?[opts.before]:[];
    opts.after=opts.after?[opts.after]:[];
    if(!$.support.opacity&&opts.cleartype){
        opts.after.push(function(){
            removeFilter(this,opts)
            })
        }
        if(opts.continuous){
        opts.after.push(function(){
            go(els,opts,0,!opts.backwards)
            })
        }
        saveOriginalOpts(opts);
    if(!$.support.opacity&&opts.cleartype&&!opts.cleartypeNoBg){
        clearTypeFix($slides)
        }
        if($cont.css("position")=="static"){
        $cont.css("position","relative")
        }
        if(opts.width){
        $cont.width(opts.width)
        }
        if(opts.height&&opts.height!="auto"){
        $cont.height(opts.height)
        }
        if(opts.startingSlide){
        opts.startingSlide=parseInt(opts.startingSlide,10)
        }else{
        if(opts.backwards){
            opts.startingSlide=els.length-1
            }
        }
    if(opts.random){
    opts.randomMap=[];
    for(var i=0;i<els.length;i++){
        opts.randomMap.push(i)
        }
        opts.randomMap.sort(function(a,b){
        return Math.random()-0.5
        });
    opts.randomIndex=1;
    opts.startingSlide=opts.randomMap[1]
    }else{
    if(opts.startingSlide>=els.length){
        opts.startingSlide=0
        }
    }
opts.currSlide=opts.startingSlide||0;
var first=opts.startingSlide;
$slides.css({
    position:"absolute",
    top:0,
    left:0
}).hide().each(function(i){
    var z;
    if(opts.backwards){
        z=first?i<=first?els.length+(i-first):first-i:els.length-i
        }else{
        z=first?i>=first?els.length-(i-first):first-i:els.length-i
        }
        $(this).css("z-index",z)
    });
$(els[first]).css("opacity",1).show();
removeFilter(els[first],opts);
if(opts.fit){
    if(!opts.aspect){
        if(opts.width){
            $slides.width(opts.width)
            }
            if(opts.height&&opts.height!="auto"){
            $slides.height(opts.height)
            }
        }else{
    $slides.each(function(){
        var $slide=$(this);
        var ratio=(opts.aspect===true)?$slide.width()/$slide.height():opts.aspect;
        if(opts.width&&$slide.width()!=opts.width){
            $slide.width(opts.width);
            $slide.height(opts.width/ratio)
            }
            if(opts.height&&$slide.height()<opts.height){
            $slide.height(opts.height);
            $slide.width(opts.height*ratio)
            }
        })
}
}
if(opts.center&&((!opts.fit)||opts.aspect)){
    $slides.each(function(){
        var $slide=$(this);
        $slide.css({
            "margin-left":opts.width?((opts.width-$slide.width())/2)+"px":0,
            "margin-top":opts.height?((opts.height-$slide.height())/2)+"px":0
            })
        })
    }
    if(opts.center&&!opts.fit&&!opts.slideResize){
    $slides.each(function(){
        var $slide=$(this);
        $slide.css({
            "margin-left":opts.width?((opts.width-$slide.width())/2)+"px":0,
            "margin-top":opts.height?((opts.height-$slide.height())/2)+"px":0
            })
        })
    }
    var reshape=opts.containerResize&&!$cont.innerHeight();
if(reshape){
    var maxw=0,maxh=0;
    for(var j=0;j<els.length;j++){
        var $e=$(els[j]),e=$e[0],w=$e.outerWidth(),h=$e.outerHeight();
        if(!w){
            w=e.offsetWidth||e.width||$e.attr("width")
            }
            if(!h){
            h=e.offsetHeight||e.height||$e.attr("height")
            }
            maxw=w>maxw?w:maxw;
        maxh=h>maxh?h:maxh
        }
        if(maxw>0&&maxh>0){
        $cont.css({
            width:maxw+"px",
            height:maxh+"px"
            })
        }
    }
var pauseFlag=false;
if(opts.pause){
    $cont.hover(function(){
        pauseFlag=true;
        this.cyclePause++;
        triggerPause(cont,true)
        },function(){
        pauseFlag&&this.cyclePause--;
        triggerPause(cont,true)
        })
    }
    if(supportMultiTransitions(opts)===false){
    return false
    }
    var requeue=false;
options.requeueAttempts=options.requeueAttempts||0;
$slides.each(function(){
    var $el=$(this);
    this.cycleH=(opts.fit&&opts.height)?opts.height:($el.height()||this.offsetHeight||this.height||$el.attr("height")||0);
    this.cycleW=(opts.fit&&opts.width)?opts.width:($el.width()||this.offsetWidth||this.width||$el.attr("width")||0);
    if($el.is("img")){
        var loadingIE=($.browser.msie&&this.cycleW==28&&this.cycleH==30&&!this.complete);
        var loadingFF=($.browser.mozilla&&this.cycleW==34&&this.cycleH==19&&!this.complete);
        var loadingOp=($.browser.opera&&((this.cycleW==42&&this.cycleH==19)||(this.cycleW==37&&this.cycleH==17))&&!this.complete);
        var loadingOther=(this.cycleH==0&&this.cycleW==0&&!this.complete);
        if(loadingIE||loadingFF||loadingOp||loadingOther){
            if(o.s&&opts.requeueOnImageNotLoaded&&++options.requeueAttempts<100){
                log(options.requeueAttempts," - img slide not loaded, requeuing slideshow: ",this.src,this.cycleW,this.cycleH);
                setTimeout(function(){
                    $(o.s,o.c).cycle(options)
                    },opts.requeueTimeout);
                requeue=true;
                return false
                }else{
                log("could not determine size of image: "+this.src,this.cycleW,this.cycleH)
                }
            }
    }
return true
});
if(requeue){
    return false
    }
    opts.cssBefore=opts.cssBefore||{};

opts.cssAfter=opts.cssAfter||{};

opts.cssFirst=opts.cssFirst||{};

opts.animIn=opts.animIn||{};

opts.animOut=opts.animOut||{};

$slides.not(":eq("+first+")").css(opts.cssBefore);
$($slides[first]).css(opts.cssFirst);
if(opts.timeout){
    opts.timeout=parseInt(opts.timeout,10);
    if(opts.speed.constructor==String){
        opts.speed=$.fx.speeds[opts.speed]||parseInt(opts.speed,10)
        }
        if(!opts.sync){
        opts.speed=opts.speed/2
        }
        var buffer=opts.fx=="none"?0:opts.fx=="shuffle"?500:250;
    while((opts.timeout-opts.speed)<buffer){
        opts.timeout+=opts.speed
        }
    }
if(opts.easing){
    opts.easeIn=opts.easeOut=opts.easing
    }
    if(!opts.speedIn){
    opts.speedIn=opts.speed
    }
    if(!opts.speedOut){
    opts.speedOut=opts.speed
    }
    opts.slideCount=els.length;
opts.currSlide=opts.lastSlide=first;
if(opts.random){
    if(++opts.randomIndex==els.length){
        opts.randomIndex=0
        }
        opts.nextSlide=opts.randomMap[opts.randomIndex]
    }else{
    if(opts.backwards){
        opts.nextSlide=opts.startingSlide==0?(els.length-1):opts.startingSlide-1
        }
        else{
        opts.nextSlide=opts.startingSlide>=(els.length-1)?0:opts.startingSlide+1
        }
    }
if(!opts.multiFx){
    var init=$.fn.cycle.transitions[opts.fx];
    if($.isFunction(init)){
        init($cont,$slides,opts)
        }else{
        if(opts.fx!="custom"&&!opts.multiFx){
            log("unknown transition: "+opts.fx,"; slideshow terminating");
            return false
            }
        }
}
var e0=$slides[first];
if(!opts.skipInitializationCallbacks){
    if(opts.before.length){
        opts.before[0].apply(e0,[e0,e0,opts,true])
        }
        if(opts.after.length){
        opts.after[0].apply(e0,[e0,e0,opts,true])
        }
    }
if(opts.next){
    $(opts.next).bind(opts.prevNextEvent,function(){
        return advance(opts,1)
        })
    }
    if(opts.prev){
    $(opts.prev).bind(opts.prevNextEvent,function(){
        return advance(opts,0)
        })
    }
    if(opts.pager||opts.pagerAnchorBuilder){
    buildPager(els,opts)
    }
    exposeAddSlide(opts,els);
return opts
}
function saveOriginalOpts(opts){
    opts.original={
        before:[],
        after:[]
    };
    
    opts.original.cssBefore=$.extend({},opts.cssBefore);
    opts.original.cssAfter=$.extend({},opts.cssAfter);
    opts.original.animIn=$.extend({},opts.animIn);
    opts.original.animOut=$.extend({},opts.animOut);
    $.each(opts.before,function(){
        opts.original.before.push(this)
        });
    $.each(opts.after,function(){
        opts.original.after.push(this)
        })
    }
    function supportMultiTransitions(opts){
    var i,tx,txs=$.fn.cycle.transitions;
    if(opts.fx.indexOf(",")>0){
        opts.multiFx=true;
        opts.fxs=opts.fx.replace(/\s*/g,"").split(",");
        for(i=0;i<opts.fxs.length;i++){
            var fx=opts.fxs[i];
            tx=txs[fx];
            if(!tx||!txs.hasOwnProperty(fx)||!$.isFunction(tx)){
                log("discarding unknown transition: ",fx);
                opts.fxs.splice(i,1);
                i--
            }
        }
        if(!opts.fxs.length){
        log("No valid transitions named; slideshow terminating.");
        return false
        }
    }else{
    if(opts.fx=="all"){
        opts.multiFx=true;
        opts.fxs=[];
        for(p in txs){
            tx=txs[p];
            if(txs.hasOwnProperty(p)&&$.isFunction(tx)){
                opts.fxs.push(p)
                }
            }
        }
    }
if(opts.multiFx&&opts.randomizeEffects){
    var r1=Math.floor(Math.random()*20)+30;
    for(i=0;i<r1;i++){
        var r2=Math.floor(Math.random()*opts.fxs.length);
        opts.fxs.push(opts.fxs.splice(r2,1)[0])
        }
        debug("randomized fx sequence: ",opts.fxs)
    }
    return true
}
function exposeAddSlide(opts,els){
    opts.addSlide=function(newSlide,prepend){
        var $s=$(newSlide),s=$s[0];
        if(!opts.autostopCount){
            opts.countdown++
        }
        els[prepend?"unshift":"push"](s);
        if(opts.els){
            opts.els[prepend?"unshift":"push"](s)
            }
            opts.slideCount=els.length;
        $s.css("position","absolute");
        $s[prepend?"prependTo":"appendTo"](opts.$cont);
        if(prepend){
            opts.currSlide++;
            opts.nextSlide++
        }
        if(!$.support.opacity&&opts.cleartype&&!opts.cleartypeNoBg){
            clearTypeFix($s)
            }
            if(opts.fit&&opts.width){
            $s.width(opts.width)
            }
            if(opts.fit&&opts.height&&opts.height!="auto"){
            $s.height(opts.height)
            }
            s.cycleH=(opts.fit&&opts.height)?opts.height:$s.height();
        s.cycleW=(opts.fit&&opts.width)?opts.width:$s.width();
        $s.css(opts.cssBefore);
        if(opts.pager||opts.pagerAnchorBuilder){
            $.fn.cycle.createPagerAnchor(els.length-1,s,$(opts.pager),els,opts)
            }
            if($.isFunction(opts.onAddSlide)){
            opts.onAddSlide($s)
            }
            else{
            $s.hide()
            }
        }
}
$.fn.cycle.resetState=function(opts,fx){
    fx=fx||opts.fx;
    opts.before=[];
    opts.after=[];
    opts.cssBefore=$.extend({},opts.original.cssBefore);
    opts.cssAfter=$.extend({},opts.original.cssAfter);
    opts.animIn=$.extend({},opts.original.animIn);
    opts.animOut=$.extend({},opts.original.animOut);
    opts.fxFn=null;
    $.each(opts.original.before,function(){
        opts.before.push(this)
        });
    $.each(opts.original.after,function(){
        opts.after.push(this)
        });
    var init=$.fn.cycle.transitions[fx];
    if($.isFunction(init)){
        init(opts.$cont,$(opts.elements),opts)
        }
    };

function go(els,opts,manual,fwd){
    if(manual&&opts.busy&&opts.manualTrump){
        debug("manualTrump in go(), stopping active transition");
        $(els).stop(true,true);
        opts.busy=0
        }
        if(opts.busy){
        debug("transition active, ignoring new tx request");
        return
    }
    var p=opts.$cont[0],curr=els[opts.currSlide],next=els[opts.nextSlide];
    if(p.cycleStop!=opts.stopCount||p.cycleTimeout===0&&!manual){
        return
    }
    if(!manual&&!p.cyclePause&&!opts.bounce&&((opts.autostop&&(--opts.countdown<=0))||(opts.nowrap&&!opts.random&&opts.nextSlide<opts.currSlide))){
        if(opts.end){
            opts.end(opts)
            }
            return
    }
    var changed=false;
    if((manual||!p.cyclePause)&&(opts.nextSlide!=opts.currSlide)){
        changed=true;
        var fx=opts.fx;
        curr.cycleH=curr.cycleH||$(curr).height();
        curr.cycleW=curr.cycleW||$(curr).width();
        next.cycleH=next.cycleH||$(next).height();
        next.cycleW=next.cycleW||$(next).width();
        if(opts.multiFx){
            if(fwd&&(opts.lastFx==undefined||++opts.lastFx>=opts.fxs.length)){
                opts.lastFx=0
                }else{
                if(!fwd&&(opts.lastFx==undefined||--opts.lastFx<0)){
                    opts.lastFx=opts.fxs.length-1
                    }
                }
            fx=opts.fxs[opts.lastFx]
        }
        if(opts.oneTimeFx){
        fx=opts.oneTimeFx;
        opts.oneTimeFx=null
        }
        $.fn.cycle.resetState(opts,fx);
    if(opts.before.length){
        $.each(opts.before,function(i,o){
            if(p.cycleStop!=opts.stopCount){
                return
            }
            o.apply(next,[curr,next,opts,fwd])
            })
        }
        var after=function(){
        opts.busy=0;
        $.each(opts.after,function(i,o){
            if(p.cycleStop!=opts.stopCount){
                return
            }
            o.apply(next,[curr,next,opts,fwd])
            })
        };
        
    debug("tx firing("+fx+"); currSlide: "+opts.currSlide+"; nextSlide: "+opts.nextSlide);
    opts.busy=1;
    if(opts.fxFn){
        opts.fxFn(curr,next,opts,after,fwd,manual&&opts.fastOnEvent)
        }else{
        if($.isFunction($.fn.cycle[opts.fx])){
            $.fn.cycle[opts.fx](curr,next,opts,after,fwd,manual&&opts.fastOnEvent)
            }
            else{
            $.fn.cycle.custom(curr,next,opts,after,fwd,manual&&opts.fastOnEvent)
            }
        }
}
if(changed||opts.nextSlide==opts.currSlide){
    opts.lastSlide=opts.currSlide;
    if(opts.random){
        opts.currSlide=opts.nextSlide;
        if(++opts.randomIndex==els.length){
            opts.randomIndex=0
            }
            opts.nextSlide=opts.randomMap[opts.randomIndex];
        if(opts.nextSlide==opts.currSlide){
            opts.nextSlide=(opts.currSlide==opts.slideCount-1)?0:opts.currSlide+1
            }
        }else{
    if(opts.backwards){
        var roll=(opts.nextSlide-1)<0;
        if(roll&&opts.bounce){
            opts.backwards=!opts.backwards;
            opts.nextSlide=1;
            opts.currSlide=0
            }else{
            opts.nextSlide=roll?(els.length-1):opts.nextSlide-1;
            opts.currSlide=roll?0:opts.nextSlide+1
            }
        }else{
    var roll=(opts.nextSlide+1)==els.length;
    if(roll&&opts.bounce){
        opts.backwards=!opts.backwards;
        opts.nextSlide=els.length-2;
        opts.currSlide=els.length-1
        }else{
        opts.nextSlide=roll?0:opts.nextSlide+1;
        opts.currSlide=roll?els.length-1:opts.nextSlide-1
        }
    }
}
}
if(changed&&opts.pager){
    opts.updateActivePagerLink(opts.pager,opts.currSlide,opts.activePagerClass)
    }
    var ms=0;
if(opts.timeout&&!opts.continuous){
    ms=getTimeout(els[opts.currSlide],els[opts.nextSlide],opts,fwd)
    }else{
    if(opts.continuous&&p.cyclePause){
        ms=10
        }
    }
if(ms>0){
    p.cycleTimeout=setTimeout(function(){
        go(els,opts,0,!opts.backwards)
        },ms)
    }
}
$.fn.cycle.updateActivePagerLink=function(pager,currSlide,clsName){
    $(pager).each(function(){
        $(this).children().removeClass(clsName).eq(currSlide).addClass(clsName)
        })
    };
    
function getTimeout(curr,next,opts,fwd){
    if(opts.timeoutFn){
        var t=opts.timeoutFn.call(curr,curr,next,opts,fwd);
        while(opts.fx!="none"&&(t-opts.speed)<250){
            t+=opts.speed
            }
            debug("calculated timeout: "+t+"; speed: "+opts.speed);
        if(t!==false){
            return t
            }
        }
    return opts.timeout
}
$.fn.cycle.next=function(opts){
    advance(opts,1)
    };
    
$.fn.cycle.prev=function(opts){
    advance(opts,0)
    };
    
function advance(opts,moveForward){
    var val=moveForward?1:-1;
    var els=opts.elements;
    var p=opts.$cont[0],timeout=p.cycleTimeout;
    if(timeout){
        clearTimeout(timeout);
        p.cycleTimeout=0
        }
        if(opts.random&&val<0){
        opts.randomIndex--;
        if(--opts.randomIndex==-2){
            opts.randomIndex=els.length-2
            }else{
            if(opts.randomIndex==-1){
                opts.randomIndex=els.length-1
                }
            }
        opts.nextSlide=opts.randomMap[opts.randomIndex]
    }else{
    if(opts.random){
        opts.nextSlide=opts.randomMap[opts.randomIndex]
        }else{
        opts.nextSlide=opts.currSlide+val;
        if(opts.nextSlide<0){
            if(opts.nowrap){
                return false
                }
                opts.nextSlide=els.length-1
            }else{
            if(opts.nextSlide>=els.length){
                if(opts.nowrap){
                    return false
                    }
                    opts.nextSlide=0
                }
            }
    }
}
var cb=opts.onPrevNextEvent||opts.prevNextClick;
if($.isFunction(cb)){
    cb(val>0,opts.nextSlide,els[opts.nextSlide])
    }
    go(els,opts,1,moveForward);
return false
}
function buildPager(els,opts){
    var $p=$(opts.pager);
    $.each(els,function(i,o){
        $.fn.cycle.createPagerAnchor(i,o,$p,els,opts)
        });
    opts.updateActivePagerLink(opts.pager,opts.startingSlide,opts.activePagerClass)
    }
    $.fn.cycle.createPagerAnchor=function(i,el,$p,els,opts){
    var a;
    if($.isFunction(opts.pagerAnchorBuilder)){
        a=opts.pagerAnchorBuilder(i,el);
        debug("pagerAnchorBuilder("+i+", el) returned: "+a)
        }else{
        a='<a href="#">'+(i+1)+"</a>"
        }
        if(!a){
        return
    }
    var $a=$(a);
    if($a.parents("body").length===0){
        var arr=[];
        if($p.length>1){
            $p.each(function(){
                var $clone=$a.clone(true);
                $(this).append($clone);
                arr.push($clone[0])
                });
            $a=$(arr)
            }else{
            $a.appendTo($p)
            }
        }
    opts.pagerAnchors=opts.pagerAnchors||[];
opts.pagerAnchors.push($a);
var pagerFn=function(e){
    e.preventDefault();
    opts.nextSlide=i;
    var p=opts.$cont[0],timeout=p.cycleTimeout;
    if(timeout){
        clearTimeout(timeout);
        p.cycleTimeout=0
        }
        var cb=opts.onPagerEvent||opts.pagerClick;
    if($.isFunction(cb)){
        cb(opts.nextSlide,els[opts.nextSlide])
        }
        go(els,opts,1,opts.currSlide<i)
    };
    
if(/mouseenter|mouseover/i.test(opts.pagerEvent)){
    $a.hover(pagerFn,function(){})
    }
    else{
    $a.bind(opts.pagerEvent,pagerFn)
    }
    if(!/^click/.test(opts.pagerEvent)&&!opts.allowPagerClickBubble){
    $a.bind("click.cycle",function(){
        return false
        })
    }
    var cont=opts.$cont[0];
var pauseFlag=false;
if(opts.pauseOnPagerHover){
    $a.hover(function(){
        pauseFlag=true;
        cont.cyclePause++;
        triggerPause(cont,true,true)
        },function(){
        pauseFlag&&cont.cyclePause--;
        triggerPause(cont,true,true)
        })
    }
};

$.fn.cycle.hopsFromLast=function(opts,fwd){
    var hops,l=opts.lastSlide,c=opts.currSlide;
    if(fwd){
        hops=c>l?c-l:opts.slideCount-l
        }else{
        hops=c<l?l-c:l+opts.slideCount-c
        }
        return hops
    };
    
function clearTypeFix($slides){
    debug("applying clearType background-color hack");
    function hex(s){
        s=parseInt(s,10).toString(16);
        return s.length<2?"0"+s:s
        }
        function getBg(e){
        for(;e&&e.nodeName.toLowerCase()!="html";e=e.parentNode){
            var v=$.css(e,"background-color");
            if(v&&v.indexOf("rgb")>=0){
                var rgb=v.match(/\d+/g);
                return"#"+hex(rgb[0])+hex(rgb[1])+hex(rgb[2])
                }
                if(v&&v!="transparent"){
                return v
                }
            }
        return"#ffffff"
    }
    $slides.each(function(){
    $(this).css("background-color",getBg(this))
    })
}
$.fn.cycle.commonReset=function(curr,next,opts,w,h,rev){
    $(opts.elements).not(curr).hide();
    if(typeof opts.cssBefore.opacity=="undefined"){
        opts.cssBefore.opacity=1
        }
        opts.cssBefore.display="block";
    if(opts.slideResize&&w!==false&&next.cycleW>0){
        opts.cssBefore.width=next.cycleW
        }
        if(opts.slideResize&&h!==false&&next.cycleH>0){
        opts.cssBefore.height=next.cycleH
        }
        opts.cssAfter=opts.cssAfter||{};
    
    opts.cssAfter.display="none";
    $(curr).css("zIndex",opts.slideCount+(rev===true?1:0));
    $(next).css("zIndex",opts.slideCount+(rev===true?0:1))
    };
    
$.fn.cycle.custom=function(curr,next,opts,cb,fwd,speedOverride){
    var $l=$(curr),$n=$(next);
    var speedIn=opts.speedIn,speedOut=opts.speedOut,easeIn=opts.easeIn,easeOut=opts.easeOut;
    $n.css(opts.cssBefore);
    if(speedOverride){
        if(typeof speedOverride=="number"){
            speedIn=speedOut=speedOverride
            }else{
            speedIn=speedOut=1
            }
            easeIn=easeOut=null
        }
        var fn=function(){
        $n.animate(opts.animIn,speedIn,easeIn,function(){
            cb()
            })
        };
        
    $l.animate(opts.animOut,speedOut,easeOut,function(){
        $l.css(opts.cssAfter);
        if(!opts.sync){
            fn()
            }
        });
if(opts.sync){
    fn()
    }
};

$.fn.cycle.transitions={
    fade:function($cont,$slides,opts){
        $slides.not(":eq("+opts.currSlide+")").css("opacity",0);
        opts.before.push(function(curr,next,opts){
            $.fn.cycle.commonReset(curr,next,opts);
            opts.cssBefore.opacity=0
            });
        opts.animIn={
            opacity:1
        };
        
        opts.animOut={
            opacity:0
        };
        
        opts.cssBefore={
            top:0,
            left:0
        }
    }
};

$.fn.cycle.ver=function(){
    return ver
    };
    
$.fn.cycle.defaults={
    activePagerClass:"activeSlide",
    after:null,
    allowPagerClickBubble:false,
    animIn:null,
    animOut:null,
    aspect:false,
    autostop:0,
    autostopCount:0,
    backwards:false,
    before:null,
    center:null,
    cleartype:!$.support.opacity,
    cleartypeNoBg:false,
    containerResize:1,
    continuous:0,
    cssAfter:null,
    cssBefore:null,
    delay:0,
    easeIn:null,
    easeOut:null,
    easing:null,
    end:null,
    fastOnEvent:0,
    fit:0,
    fx:"fade",
    fxFn:null,
    height:"auto",
    manualTrump:true,
    metaAttr:"cycle",
    next:null,
    nowrap:0,
    onPagerEvent:null,
    onPrevNextEvent:null,
    pager:null,
    pagerAnchorBuilder:null,
    pagerEvent:"click.cycle",
    pause:0,
    pauseOnPagerHover:0,
    prev:null,
    prevNextEvent:"click.cycle",
    random:0,
    randomizeEffects:1,
    requeueOnImageNotLoaded:true,
    requeueTimeout:250,
    rev:0,
    shuffle:null,
    skipInitializationCallbacks:false,
    slideExpr:null,
    slideResize:1,
    speed:1000,
    speedIn:null,
    speedOut:null,
    startingSlide:0,
    sync:1,
    timeout:4000,
    timeoutFn:null,
    updateActivePagerLink:null,
    width:null
}
})(jQuery);

/* Cycle Transition */
(function($){
    $.fn.cycle.transitions.none=function($cont,$slides,opts){
        opts.fxFn=function(curr,next,opts,after){
            $(next).show();
            $(curr).hide();
            after()
            }
        };
    
$.fn.cycle.transitions.fadeout=function($cont,$slides,opts){
    $slides.not(":eq("+opts.currSlide+")").css({
        display:"block",
        opacity:1
    });
    opts.before.push(function(curr,next,opts,w,h,rev){
        $(curr).css("zIndex",opts.slideCount+(!rev===true?1:0));
        $(next).css("zIndex",opts.slideCount+(!rev===true?0:1))
        });
    opts.animIn.opacity=1;
    opts.animOut.opacity=0;
    opts.cssBefore.opacity=1;
    opts.cssBefore.display="block";
    opts.cssAfter.zIndex=0
    };
    
$.fn.cycle.transitions.scrollUp=function($cont,$slides,opts){
    $cont.css("overflow","hidden");
    opts.before.push($.fn.cycle.commonReset);
    var h=$cont.height();
    opts.cssBefore.top=h;
    opts.cssBefore.left=0;
    opts.cssFirst.top=0;
    opts.animIn.top=0;
    opts.animOut.top=-h
    };
    
$.fn.cycle.transitions.scrollDown=function($cont,$slides,opts){
    $cont.css("overflow","hidden");
    opts.before.push($.fn.cycle.commonReset);
    var h=$cont.height();
    opts.cssFirst.top=0;
    opts.cssBefore.top=-h;
    opts.cssBefore.left=0;
    opts.animIn.top=0;
    opts.animOut.top=h
    };
    
$.fn.cycle.transitions.scrollLeft=function($cont,$slides,opts){
    $cont.css("overflow","hidden");
    opts.before.push($.fn.cycle.commonReset);
    var w=$cont.width();
    opts.cssFirst.left=0;
    opts.cssBefore.left=w;
    opts.cssBefore.top=0;
    opts.animIn.left=0;
    opts.animOut.left=0-w
    };
    
$.fn.cycle.transitions.scrollRight=function($cont,$slides,opts){
    $cont.css("overflow","hidden");
    opts.before.push($.fn.cycle.commonReset);
    var w=$cont.width();
    opts.cssFirst.left=0;
    opts.cssBefore.left=-w;
    opts.cssBefore.top=0;
    opts.animIn.left=0;
    opts.animOut.left=w
    };
    
$.fn.cycle.transitions.scrollHorz=function($cont,$slides,opts){
    $cont.css("overflow","hidden").width();
    opts.before.push(function(curr,next,opts,fwd){
        if(opts.rev){
            fwd=!fwd
            }
            $.fn.cycle.commonReset(curr,next,opts);
        opts.cssBefore.left=fwd?(next.cycleW-1):(1-next.cycleW);
        opts.animOut.left=fwd?-curr.cycleW:curr.cycleW
        });
    opts.cssFirst.left=0;
    opts.cssBefore.top=0;
    opts.animIn.left=0;
    opts.animOut.top=0
    };
    
$.fn.cycle.transitions.scrollVert=function($cont,$slides,opts){
    $cont.css("overflow","hidden");
    opts.before.push(function(curr,next,opts,fwd){
        if(opts.rev){
            fwd=!fwd
            }
            $.fn.cycle.commonReset(curr,next,opts);
        opts.cssBefore.top=fwd?(1-next.cycleH):(next.cycleH-1);
        opts.animOut.top=fwd?curr.cycleH:-curr.cycleH
        });
    opts.cssFirst.top=0;
    opts.cssBefore.left=0;
    opts.animIn.top=0;
    opts.animOut.left=0
    };
    
$.fn.cycle.transitions.slideX=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $(opts.elements).not(curr).hide();
        $.fn.cycle.commonReset(curr,next,opts,false,true);
        opts.animIn.width=next.cycleW
        });
    opts.cssBefore.left=0;
    opts.cssBefore.top=0;
    opts.cssBefore.width=0;
    opts.animIn.width="show";
    opts.animOut.width=0
    };
    
$.fn.cycle.transitions.slideY=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $(opts.elements).not(curr).hide();
        $.fn.cycle.commonReset(curr,next,opts,true,false);
        opts.animIn.height=next.cycleH
        });
    opts.cssBefore.left=0;
    opts.cssBefore.top=0;
    opts.cssBefore.height=0;
    opts.animIn.height="show";
    opts.animOut.height=0
    };
    
$.fn.cycle.transitions.shuffle=function($cont,$slides,opts){
    var i,w=$cont.css("overflow","visible").width();
    $slides.css({
        left:0,
        top:0
    });
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,true,true,true)
        });
    if(!opts.speedAdjusted){
        opts.speed=opts.speed/2;
        opts.speedAdjusted=true
        }
        opts.random=0;
    opts.shuffle=opts.shuffle||{
        left:-w,
        top:15
    };
    
    opts.els=[];
    for(i=0;i<$slides.length;i++){
        opts.els.push($slides[i])
        }
        for(i=0;i<opts.currSlide;i++){
        opts.els.push(opts.els.shift())
        }
        opts.fxFn=function(curr,next,opts,cb,fwd){
        if(opts.rev){
            fwd=!fwd
            }
            var $el=fwd?$(curr):$(next);
        $(next).css(opts.cssBefore);
        var count=opts.slideCount;
        $el.animate(opts.shuffle,opts.speedIn,opts.easeIn,function(){
            var hops=$.fn.cycle.hopsFromLast(opts,fwd);
            for(var k=0;k<hops;k++){
                fwd?opts.els.push(opts.els.shift()):opts.els.unshift(opts.els.pop())
                }
                if(fwd){
                for(var i=0,len=opts.els.length;i<len;i++){
                    $(opts.els[i]).css("z-index",len-i+count)
                    }
                }else{
            var z=$(curr).css("z-index");
            $el.css("z-index",parseInt(z,10)+1+count)
            }
            $el.animate({
            left:0,
            top:0
        },opts.speedOut,opts.easeOut,function(){
            $(fwd?this:curr).hide();
            if(cb){
                cb()
                }
            })
        })
};

$.extend(opts.cssBefore,{
    display:"block",
    opacity:1,
    top:0,
    left:0
})
};

$.fn.cycle.transitions.turnUp=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,true,false);
        opts.cssBefore.top=next.cycleH;
        opts.animIn.height=next.cycleH;
        opts.animOut.width=next.cycleW
        });
    opts.cssFirst.top=0;
    opts.cssBefore.left=0;
    opts.cssBefore.height=0;
    opts.animIn.top=0;
    opts.animOut.height=0
    };
    
$.fn.cycle.transitions.turnDown=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,true,false);
        opts.animIn.height=next.cycleH;
        opts.animOut.top=curr.cycleH
        });
    opts.cssFirst.top=0;
    opts.cssBefore.left=0;
    opts.cssBefore.top=0;
    opts.cssBefore.height=0;
    opts.animOut.height=0
    };
    
$.fn.cycle.transitions.turnLeft=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,false,true);
        opts.cssBefore.left=next.cycleW;
        opts.animIn.width=next.cycleW
        });
    opts.cssBefore.top=0;
    opts.cssBefore.width=0;
    opts.animIn.left=0;
    opts.animOut.width=0
    };
    
$.fn.cycle.transitions.turnRight=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,false,true);
        opts.animIn.width=next.cycleW;
        opts.animOut.left=curr.cycleW
        });
    $.extend(opts.cssBefore,{
        top:0,
        left:0,
        width:0
    });
    opts.animIn.left=0;
    opts.animOut.width=0
    };
    
$.fn.cycle.transitions.zoom=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,false,false,true);
        opts.cssBefore.top=next.cycleH/2;
        opts.cssBefore.left=next.cycleW/2;
        $.extend(opts.animIn,{
            top:0,
            left:0,
            width:next.cycleW,
            height:next.cycleH
            });
        $.extend(opts.animOut,{
            width:0,
            height:0,
            top:curr.cycleH/2,
            left:curr.cycleW/2
            })
        });
    opts.cssFirst.top=0;
    opts.cssFirst.left=0;
    opts.cssBefore.width=0;
    opts.cssBefore.height=0
    };
    
$.fn.cycle.transitions.fadeZoom=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,false,false);
        opts.cssBefore.left=next.cycleW/2;
        opts.cssBefore.top=next.cycleH/2;
        $.extend(opts.animIn,{
            top:0,
            left:0,
            width:next.cycleW,
            height:next.cycleH
            })
        });
    opts.cssBefore.width=0;
    opts.cssBefore.height=0;
    opts.animOut.opacity=0
    };
    
$.fn.cycle.transitions.blindX=function($cont,$slides,opts){
    var w=$cont.css("overflow","hidden").width();
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts);
        opts.animIn.width=next.cycleW;
        opts.animOut.left=curr.cycleW
        });
    opts.cssBefore.left=w;
    opts.cssBefore.top=0;
    opts.animIn.left=0;
    opts.animOut.left=w
    };
    
$.fn.cycle.transitions.blindY=function($cont,$slides,opts){
    var h=$cont.css("overflow","hidden").height();
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts);
        opts.animIn.height=next.cycleH;
        opts.animOut.top=curr.cycleH
        });
    opts.cssBefore.top=h;
    opts.cssBefore.left=0;
    opts.animIn.top=0;
    opts.animOut.top=h
    };
    
$.fn.cycle.transitions.blindZ=function($cont,$slides,opts){
    var h=$cont.css("overflow","hidden").height();
    var w=$cont.width();
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts);
        opts.animIn.height=next.cycleH;
        opts.animOut.top=curr.cycleH
        });
    opts.cssBefore.top=h;
    opts.cssBefore.left=w;
    opts.animIn.top=0;
    opts.animIn.left=0;
    opts.animOut.top=h;
    opts.animOut.left=w
    };
    
$.fn.cycle.transitions.growX=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,false,true);
        opts.cssBefore.left=this.cycleW/2;
        opts.animIn.left=0;
        opts.animIn.width=this.cycleW;
        opts.animOut.left=0
        });
    opts.cssBefore.top=0;
    opts.cssBefore.width=0
    };
    
$.fn.cycle.transitions.growY=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,true,false);
        opts.cssBefore.top=this.cycleH/2;
        opts.animIn.top=0;
        opts.animIn.height=this.cycleH;
        opts.animOut.top=0
        });
    opts.cssBefore.height=0;
    opts.cssBefore.left=0
    };
    
$.fn.cycle.transitions.curtainX=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,false,true,true);
        opts.cssBefore.left=next.cycleW/2;
        opts.animIn.left=0;
        opts.animIn.width=this.cycleW;
        opts.animOut.left=curr.cycleW/2;
        opts.animOut.width=0
        });
    opts.cssBefore.top=0;
    opts.cssBefore.width=0
    };
    
$.fn.cycle.transitions.curtainY=function($cont,$slides,opts){
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,true,false,true);
        opts.cssBefore.top=next.cycleH/2;
        opts.animIn.top=0;
        opts.animIn.height=next.cycleH;
        opts.animOut.top=curr.cycleH/2;
        opts.animOut.height=0
        });
    opts.cssBefore.height=0;
    opts.cssBefore.left=0
    };
    
$.fn.cycle.transitions.cover=function($cont,$slides,opts){
    var d=opts.direction||"left";
    var w=$cont.css("overflow","hidden").width();
    var h=$cont.height();
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts);
        if(d=="right"){
            opts.cssBefore.left=-w
            }else{
            if(d=="up"){
                opts.cssBefore.top=h
                }else{
                if(d=="down"){
                    opts.cssBefore.top=-h
                    }else{
                    opts.cssBefore.left=w
                    }
                }
        }
    });
opts.animIn.left=0;
opts.animIn.top=0;
opts.cssBefore.top=0;
opts.cssBefore.left=0
};

$.fn.cycle.transitions.uncover=function($cont,$slides,opts){
    var d=opts.direction||"left";
    var w=$cont.css("overflow","hidden").width();
    var h=$cont.height();
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,true,true,true);
        if(d=="right"){
            opts.animOut.left=w
            }else{
            if(d=="up"){
                opts.animOut.top=-h
                }else{
                if(d=="down"){
                    opts.animOut.top=h
                    }else{
                    opts.animOut.left=-w
                    }
                }
        }
    });
opts.animIn.left=0;
opts.animIn.top=0;
opts.cssBefore.top=0;
opts.cssBefore.left=0
};

$.fn.cycle.transitions.toss=function($cont,$slides,opts){
    var w=$cont.css("overflow","visible").width();
    var h=$cont.height();
    opts.before.push(function(curr,next,opts){
        $.fn.cycle.commonReset(curr,next,opts,true,true,true);
        if(!opts.animOut.left&&!opts.animOut.top){
            $.extend(opts.animOut,{
                left:w*2,
                top:-h/2,
                opacity:0
            })
            }else{
            opts.animOut.opacity=0
            }
        });
opts.cssBefore.left=0;
opts.cssBefore.top=0;
opts.animIn.left=0
};

$.fn.cycle.transitions.wipe=function($cont,$slides,opts){
    var w=$cont.css("overflow","hidden").width();
    var h=$cont.height();
    opts.cssBefore=opts.cssBefore||{};
    
    var clip;
    if(opts.clip){
        if(/l2r/.test(opts.clip)){
            clip="rect(0px 0px "+h+"px 0px)"
            }else{
            if(/r2l/.test(opts.clip)){
                clip="rect(0px "+w+"px "+h+"px "+w+"px)"
                }else{
                if(/t2b/.test(opts.clip)){
                    clip="rect(0px "+w+"px 0px 0px)"
                    }else{
                    if(/b2t/.test(opts.clip)){
                        clip="rect("+h+"px "+w+"px "+h+"px 0px)"
                        }else{
                        if(/zoom/.test(opts.clip)){
                            var top=parseInt(h/2,10);
                            var left=parseInt(w/2,10);
                            clip="rect("+top+"px "+left+"px "+top+"px "+left+"px)"
                            }
                        }
                }
        }
}
}
opts.cssBefore.clip=opts.cssBefore.clip||clip||"rect(0px 0px 0px 0px)";
var d=opts.cssBefore.clip.match(/(\d+)/g);
var t=parseInt(d[0],10),r=parseInt(d[1],10),b=parseInt(d[2],10),l=parseInt(d[3],10);
opts.before.push(function(curr,next,opts){
    if(curr==next){
        return
    }
    var $curr=$(curr),$next=$(next);
    $.fn.cycle.commonReset(curr,next,opts,true,true,false);
    opts.cssAfter.display="block";
    var step=1,count=parseInt((opts.speedIn/13),10)-1;
    (function f(){
        var tt=t?t-parseInt(step*(t/count),10):0;
        var ll=l?l-parseInt(step*(l/count),10):0;
        var bb=b<h?b+parseInt(step*((h-b)/count||1),10):h;
        var rr=r<w?r+parseInt(step*((w-r)/count||1),10):w;
        $next.css({
            clip:"rect("+tt+"px "+rr+"px "+bb+"px "+ll+"px)"
            });
        (step++<=count)?setTimeout(f,13):$curr.css("display","none")
        })()
    });
$.extend(opts.cssBefore,{
    display:"block",
    opacity:1,
    top:0,
    left:0
});
opts.animIn={
    left:0
};

opts.animOut={
    left:0
}
}
})(jQuery);



/* placeholder */
(function($){$.support.placeholder=("placeholder" in document.createElement("input"));var defaults={withPlaceholderClass:"placeholder"};$.fn.enablePlaceholder=function(options){var settings=$.extend({},defaults,options);var showPlaceholder=function(input,placeholder){return input.val(placeholder).addClass(settings.withPlaceholderClass).data("hasPlaceholder",true)};var clearPlaceholder=function(input,placeholder){if(input.data("hasPlaceholder")){return input.val("").removeClass(settings.withPlaceholderClass).data("hasPlaceholder",false)}};return this.each(function(){var input=$(this);var placeholder=input.attr("title");if(placeholder!=""){if(input.val()==""||input.val()==placeholder){showPlaceholder(input,placeholder)}input.bind("focus keydown paste",function(){clearPlaceholder(input,placeholder)});input.bind("blur",function(){if(input.val()==""){showPlaceholder(input,input.attr("title"))}});input.parents("form").first().submit(function(){clearPlaceholder(input,placeholder);return true})}})}})(jQuery);


