var Shadowbox=function(){
    var ua=navigator.userAgent.toLowerCase(),S={
        version:"3.0b",
        adapter:null,
        current:-1,
        gallery:[],
        cache:[],
        content:null,
        dimensions:null,
        plugins:null,
        path:"",
        options:{
            adapter:null,
            animate:true,
            animateFade:true,
            autoplayMovies:true,
            autoDimensions:false,
            continuous:false,
            counterLimit:10,
            counterType:"default",
            displayCounter:true,
            displayNav:true,
            ease:function(x){
                return 1+Math.pow(x-1,3)
                },
            enableKeys:true,
            errors:{
                fla:{
                    name:"Flash",
                    url:"http://www.adobe.com/products/flashplayer/"
                },
                qt:{
                    name:"QuickTime",
                    url:"http://www.apple.com/quicktime/download/"
                },
                wmp:{
                    name:"Windows Media Player",
                    url:"http://www.microsoft.com/windows/windowsmedia/"
                },
                f4m:{
                    name:"Flip4Mac",
                    url:"http://www.flip4mac.com/wmv_download.htm"
                }
            },
        ext:{
            img:["png","jpg","jpeg","gif","bmp"],
            swf:["swf"],
            flv:["flv"],
            qt:["dv","mov","moov","movie","mp4"],
            wmp:["asf","wm","wmv"],
            qtwmp:["avi","mpg","mpeg"],
            iframe:["asp","aspx","cgi","cfm","htm","html","jsp","pl","php","php3","php4","php5","phtml","rb","rhtml","shtml","txt","vbs"]
            },
        fadeDuration:0.35,
        flashParams:{
            bgcolor:"#000000",
            allowFullScreen:true
        },
        flashVars:{},
        flashVersion:"9.0.115",
        handleOversize:"resize",
        handleUnsupported:"link",
        initialHeight:160,
        initialWidth:320,
        language:"en",
        modal:false,
        onChange:null,
        onClose:null,
        onFinish:null,
        onOpen:null,
        overlayColor:"#000",
        overlayOpacity:0.8,
        players:["img"],
        resizeDuration:0.35,
        showOverlay:true,
        showMovieControls:true,
        skipSetup:false,
        slideshowDelay:0,
        viewportPadding:20
    },
    client:{
        isIE:ua.indexOf("msie")>-1,
        isIE6:ua.indexOf("msie 6")>-1,
        isIE7:ua.indexOf("msie 7")>-1,
        isGecko:ua.indexOf("gecko")>-1&&ua.indexOf("safari")==-1,
        isWebkit:ua.indexOf("applewebkit/")>-1,
        isWindows:ua.indexOf("windows")>-1||ua.indexOf("win32")>-1,
        isMac:ua.indexOf("macintosh")>-1||ua.indexOf("mac os x")>-1,
        isLinux:ua.indexOf("linux")>-1
        },
    regex:{
        domain:/:\/\/(.*?)[:\/]/,
        inline:/#(.+)$/,
        rel:/^(light|shadow)box/i,
        gallery:/^(light|shadow)box\[(.*?)\]/i,
        unsupported:/^unsupported-(\w+)/,
        param:/\s*([a-z_]*?)\s*=\s*(.+)\s*/
    },
    libraries:{
        Prototype:"prototype",
        jQuery:"jquery",
        MooTools:"mootools",
        YAHOO:"yui",
        dojo:"dojo",
        Ext:"ext"
    },
    applyOptions:function(opts){
        if(opts){
            default_options=apply({},S.options);
            apply(S.options,opts)
            }
        },
buildCacheObj:function(link,opts){
    var href=link.href,obj={
        el:link,
        title:link.getAttribute("title"),
        options:apply({},opts||{}),
        content:href
    };

    each(["player","title","height","width","gallery"],function(o){
        if(typeof obj.options[o]!="undefined"){
            obj[o]=obj.options[o];
            delete obj.options[o]
        }
    });
if(!obj.player){
    obj.player=getPlayer(href)
    }
    var rel=link.getAttribute("rel");
if(rel){
    var m=rel.match(S.regex.gallery);
    if(m){
        obj.gallery=escape(m[2])
        }
        each(rel.split(";"),function(p){
        m=p.match(S.regex.param);
        if(m){
            if(m[1]=="options"){
                eval("apply(obj.options,"+m[2]+")")
                }else{
                obj[m[1]]=m[2]
                }
            }
    })
}
return obj
},
change:function(n){
    if(!S.gallery){
        return
    }
    if(!S.gallery[n]){
        if(!S.options.continuous){
            return
        }else{
            n=n<0?S.gallery.length-1:0
            }
        }
    S.current=n;
if(typeof slide_timer=="number"){
    clearTimeout(slide_timer);
    slide_timer=null;
    slide_delay=slide_start=0
    }
    if(S.options.onChange){
    S.options.onChange()
    }
    loadContent()
},
clearCache:function(){
    each(S.cache,function(obj){
        if(obj.el){
            S.lib.removeEvent(obj.el,"click",handleClick)
            }
        });
S.cache=[]
},
close:function(){
    if(!active){
        return
    }
    active=false;
    listenKeys(false);
    if(S.content){
        S.content.remove();
        S.content=null
        }
        if(typeof slide_timer=="number"){
        clearTimeout(slide_timer)
        }
        slide_timer=null;
    slide_delay=0;
    if(S.options.onClose){
        S.options.onClose()
        }
        S.skin.onClose();
    S.revertOptions();
    each(v_cache,function(c){
        c[0].style.visibility=c[1]
        })
    },
contentId:function(){
    return content_id
    },
getCounter:function(){
    var len=S.gallery.length;
    if(S.options.counterType=="skip"){
        var c=[],i=0,end=len,limit=parseInt(S.options.counterLimit)||0;
        if(limit<len&&limit>2){
            var h=Math.floor(limit/2);
            i=S.current-h;
            if(i<0){
                i+=len
                }
                end=S.current+(limit-h);
            if(end>len){
                end-=len
                }
            }while(i!=end){
        if(i==len){
            i=0
            }
            c.push(i++)
        }
    }else{
    var c=(S.current+1)+" "+S.lang.of+" "+len
    }
    return c
},
getCurrent:function(){
    return S.current>-1?S.gallery[S.current]:null
    },
hasNext:function(){
    return S.gallery.length>1&&(S.current!=S.gallery.length-1||S.options.continuous)
    },
init:function(opts){
    if(initialized){
        return
    }
    initialized=true;
    opts=opts||{};

    init_options=opts;
    if(opts){
        apply(S.options,opts)
        }
        for(var e in S.options.ext){
        S.regex[e]=new RegExp(".("+S.options.ext[e].join("|")+")s*$","i")
        }
        if(!S.path){
        var path_re=/(.+)shadowbox\.js/i,path;
        each(document.getElementsByTagName("script"),function(s){
            if((path=path_re.exec(s.src))!=null){
                S.path=path[1];
                return false
                }
            })
    }
    if(S.options.adapter){
    S.adapter=S.options.adapter
    }else{
    for(var lib in S.libraries){
        if(typeof window[lib]!="undefined"){
            S.adapter=S.libraries[lib];
            break
        }
    }
    if(!S.adapter){
    S.adapter="base"
    }
}

if(!S.lang){
    U.include(S.path+"languages/shadowbox-"+S.options.language+".js")
    }
    each(S.options.players,function(p){
    if((p=="swf"||p=="flv")&&typeof window.swfobject=="undefined"){
        U.include(S.path+"libraries/swfobject/swfobject.js")
        }
        if(!S[p]){
        U.include(S.path+"players/shadowbox-"+p+".js")
        }
    });
if(!S.lib){
    U.include(S.path+"adapters/shadowbox-"+S.adapter+".js")
    }
},
isActive:function(){
    return active
    },
isPaused:function(){
    return slide_timer=="paused"
    },
load:function(){
    if(S.skin.options){
        apply(S.options,S.skin.options);
        apply(S.options,init_options)
        }
        var markup=S.skin.markup.replace(/\{(\w+)\}/g,function(m,p){
        return S.lang[p]
        });
    S.lib.append(document.body,markup);
    if(S.skin.init){
        S.skin.init()
        }
        var id;
    S.lib.addEvent(window,"resize",function(){
        if(id){
            clearTimeout(id);
            id=null
            }
            if(active){
            id=setTimeout(function(){
                if(S.skin.onWindowResize){
                    S.skin.onWindowResize()
                    }
                    var c=S.content;
                if(c&&c.onWindowResize){
                    c.onWindowResize()
                    }
                },50)
        }
    });
if(!S.options.skipSetup){
    S.setup()
    }
},
next:function(){
    S.change(S.current+1)
    },
open:function(obj){
    if(U.isLink(obj)){
        obj=S.buildCacheObj(obj)
        }
        if(obj.constructor==Array){
        S.gallery=obj;
        S.current=0
        }else{
        if(!obj.gallery){
            S.gallery=[obj];
            S.current=0
            }else{
            S.current=null;
            S.gallery=[];
            each(S.cache,function(c){
                if(c.gallery&&c.gallery==obj.gallery){
                    if(S.current==null&&c.content==obj.content&&c.title==obj.title){
                        S.current=S.gallery.length
                        }
                        S.gallery.push(c)
                    }
                });
        if(S.current==null){
            S.gallery.unshift(obj);
            S.current=0
            }
        }
}
obj=S.getCurrent();
if(obj.options){
    S.revertOptions();
    S.applyOptions(obj.options)
    }
    var g,r,m,s,a,oe=S.options.errors,msg,el;
for(var i=0;i<S.gallery.length;++i){
    g=S.gallery[i]=apply({},S.gallery[i]);
    r=false;
    if(g.player=="unsupported"){
        r=true
        }else{
        if(m=S.regex.unsupported.exec(g.player)){
            if(S.options.handleUnsupported=="link"){
                g.player="html";
                switch(m[1]){
                    case"qtwmp":
                        s="either";
                        a=[oe.qt.url,oe.qt.name,oe.wmp.url,oe.wmp.name];
                        break;
                    case"qtf4m":
                        s="shared";
                        a=[oe.qt.url,oe.qt.name,oe.f4m.url,oe.f4m.name];
                        break;
                    default:
                        s="single";
                        if(m[1]=="swf"||m[1]=="flv"){
                        m[1]="fla"
                        }
                        a=[oe[m[1]].url,oe[m[1]].name]
                    }
                    msg=S.lang.errors[s].replace(/\{(\d+)\}/g,function(m,n){
                    return a[n]
                    });
                g.content='<div class="sb-message">'+msg+"</div>"
                }else{
                r=true
                }
            }else{
        if(g.player=="inline"){
            m=S.regex.inline.exec(g.content);
            if(m){
                var el=U.get(m[1]);
                if(el){
                    g.content=el.innerHTML
                    }else{
                    throw"Cannot find element with id "+m[1]
                    }
                }else{
            throw"Cannot find element id for inline content"
            }
        }else{
    if(g.player=="swf"||g.player=="flv"){
        var version=g.options.flashVersion||S.options.flashVersion;
        if(!swfobject.hasFlashPlayerVersion(version)){
            g.width=310;
            g.height=177
            }
        }
}
}
}
if(r){
    S.gallery.splice(i,1);
    if(i<S.current){
        --S.current
        }else{
        if(i==S.current){
            S.current=i>0?i-1:i
            }
        }
    --i
}
}
if(S.gallery.length){
    if(!active){
        if(typeof S.options.onOpen=="function"){
            S.options.onOpen(obj)
            }
            v_cache=[];
        each(["select","object","embed"],function(tag){
            each(document.getElementsByTagName(tag),function(el){
                v_cache.push([el,S.lib.getStyle(el,"visibility")]);
                el.style.visibility="hidden"
                })
            });
        var h=S.options.autoDimensions&&"height" in obj?obj.height:S.options.initialHeight;
        var w=S.options.autoDimensions&&"width" in obj?obj.width:S.options.initialWidth;
        S.skin.onOpen(h,w,loadContent)
        }else{
        loadContent()
        }
        active=true
    }
},
pause:function(){
    if(typeof slide_timer!="number"){
        return
    }
    var time=new Date().getTime();
    slide_delay=Math.max(0,slide_delay-(time-slide_start));
    if(slide_delay){
        clearTimeout(slide_timer);
        slide_timer="paused";
        if(S.skin.onPause){
            S.skin.onPause()
            }
        }
},
play:function(){
    if(!S.hasNext()){
        return
    }
    if(!slide_delay){
        slide_delay=S.options.slideshowDelay*1000
        }
        if(slide_delay){
        slide_start=new Date().getTime();
        slide_timer=setTimeout(function(){
            slide_delay=slide_start=0;
            S.next()
            },slide_delay);
        if(S.skin.onPlay){
            S.skin.onPlay()
            }
        }
},
previous:function(){
    S.change(S.current-1)
    },
revertOptions:function(){
    apply(S.options,default_options)
    },
setDimensions:function(height,width,max_h,max_w,tb,lr,resizable){
    var h=height=parseInt(height),w=width=parseInt(width),pad=parseInt(S.options.viewportPadding)||0;
    var extra_h=2*pad+tb;
    if(h+extra_h>=max_h){
        h=max_h-extra_h
        }
        var extra_w=2*pad+lr;
    if(w+extra_w>=max_w){
        w=max_w-extra_w
        }
        var resize_h=height,resize_w=width,change_h=(height-h)/height,change_w=(width-w)/width,oversized=(change_h>0||change_w>0);
    if(resizable&&oversized&&S.options.handleOversize=="resize"){
        if(change_h>change_w){
            w=Math.round((width/height)*h)
            }else{
            if(change_w>change_h){
                h=Math.round((height/width)*w)
                }
            }
        resize_w=w;
    resize_h=h
    }
    S.dimensions={
    height:h+tb,
    width:w+lr,
    inner_h:h,
    inner_w:w,
    top:(max_h-(h+extra_h))/2+pad,
    left:(max_w-(w+extra_w))/2+pad,
    oversized:oversized,
    resize_h:resize_h,
    resize_w:resize_w
};

return S.dimensions
},
setup:function(links,opts){
    if(!links){
        var links=[],rel;
        each(document.getElementsByTagName("a"),function(a){
            rel=a.getAttribute("rel");
            if(rel&&S.regex.rel.test(rel)){
                links.push(a)
                }
            })
    }else{
    if(!links.length){
        links=[links]
        }
    }
each(links,function(link){
    if(typeof link.shadowboxCacheKey=="undefined"){
        link.shadowboxCacheKey=S.cache.length;
        S.lib.addEvent(link,"click",handleClick)
        }
        S.cache[link.shadowboxCacheKey]=S.buildCacheObj(link,opts)
    })
}
},U=S.util={
    animate:function(el,p,to,d,cb){
        var from=parseFloat(S.lib.getStyle(el,p));
        if(isNaN(from)){
            from=0
            }
            var delta=to-from;
        if(delta==0){
            if(cb){
                cb()
                }
                return
        }
        var op=p=="opacity";
        function fn(ease){
            var to=from+ease*delta;
            if(op){
                U.setOpacity(el,to)
                }else{
                el.style[p]=to+"px"
                }
            }
        if(!d||(!op&&!S.options.animate)||(op&&!S.options.animateFade)){
        fn(1);
        if(cb){
            cb()
            }
            return
    }
    d*=1000;
    var begin=new Date().getTime(),end=begin+d,time,timer=setInterval(function(){
        time=new Date().getTime();
        if(time>=end){
            clearInterval(timer);
            fn(1);
            if(cb){
                cb()
                }
            }else{
        fn(S.options.ease((time-begin)/d))
        }
    },10)
},
apply:function(o,e){
    for(var p in e){
        o[p]=e[p]
        }
        return o
    },
clearOpacity:function(el){
    var s=el.style;
    if(window.ActiveXObject){
        if(typeof s.filter=="string"&&(/alpha/i).test(s.filter)){
            s.filter=s.filter.replace(/[\w\.]*alpha\(.*?\);?/i,"")
            }
        }else{
    s.opacity=""
    }
},
each:function(obj,fn,scope){
    for(var i=0,len=obj.length;i<len;++i){
        if(fn.call(scope||obj[i],obj[i],i,obj)===false){
            return
        }
    }
    },
get:function(id){
    return document.getElementById(id)
    },
include:function(){
    var includes={};

    return function(file){
        if(includes[file]){
            return
        }
        includes[file]=true;
        document.write('<script type="text/javascript" src="'+file+'"><\/script>')
        }
    }(),
isLink:function(obj){
    if(!obj||!obj.tagName){
        return false
        }
        var up=obj.tagName.toUpperCase();
    return up=="A"||up=="AREA"
    },
removeChildren:function(el){
    while(el.firstChild){
        el.removeChild(el.firstChild)
        }
    },
setOpacity:function(el,o){
    var s=el.style;
    if(window.ActiveXObject){
        s.zoom=1;
        s.filter=(s.filter||"").replace(/\s*alpha\([^\)]*\)/gi,"")+(o==1?"":" alpha(opacity="+(o*100)+")")
        }else{
        s.opacity=o
        }
    }
},apply=U.apply,each=U.each,init_options,initialized=false,default_options={},content_id="sb-content",active=false,slide_timer,slide_start,slide_delay=0,v_cache=[];
if(navigator.plugins&&navigator.plugins.length){
    var names=[];
    each(navigator.plugins,function(p){
        names.push(p.name)
        });
    names=names.join();
    var detectPlugin=function(n){
        return names.indexOf(n)>-1
        };

    var f4m=detectPlugin("Flip4Mac");
    S.plugins={
        fla:detectPlugin("Shockwave Flash"),
        qt:detectPlugin("QuickTime"),
        wmp:!f4m&&detectPlugin("Windows Media"),
        f4m:f4m
    }
}else{
    function detectPlugin(n){
        try{
            var axo=new ActiveXObject(n)
            }catch(e){}
        return !!axo
        }
        S.plugins={
        fla:detectPlugin("ShockwaveFlash.ShockwaveFlash"),
        qt:detectPlugin("QuickTime.QuickTime"),
        wmp:detectPlugin("wmplayer.ocx"),
        f4m:false
    }
}
function getPlayer(url){
    var re=S.regex,p=S.plugins,m=url.match(re.domain),d=m&&document.domain==m[1];
    if(url.indexOf("#")>-1&&d){
        return"inline"
        }
        var q=url.indexOf("?");
    if(q>-1){
        url=url.substring(0,q)
        }
        if(re.img.test(url)){
        return"img"
        }
        if(re.swf.test(url)){
        return p.fla?"swf":"unsupported-swf"
        }
        if(re.flv.test(url)){
        return p.fla?"flv":"unsupported-flv"
        }
        if(re.qt.test(url)){
        return p.qt?"qt":"unsupported-qt"
        }
        if(re.wmp.test(url)){
        if(p.wmp){
            return"wmp"
            }
            if(p.f4m){
            return"qt"
            }
            if(S.client.isMac){
            return p.qt?"unsupported-f4m":"unsupported-qtf4m"
            }
            return"unsupported-wmp"
        }
        if(re.qtwmp.test(url)){
        if(p.qt){
            return"qt"
            }
            if(p.wmp){
            return"wmp"
            }
            return S.client.isMac?"unsupported-qt":"unsupported-qtwmp"
        }
        if(!d||re.iframe.test(url)){
        return"iframe"
        }
        return"unsupported"
    }
    function handleClick(e){
    var link;
    if(U.isLink(this)){
        link=this
        }else{
        link=S.lib.getTarget(e);
        while(!U.isLink(link)&&link.parentNode){
            link=link.parentNode
            }
        }
    if(link){
    var key=link.shadowboxCacheKey;
    if(typeof key!="undefined"&&typeof S.cache[key]!="undefined"){
        link=S.cache[key]
        }
        S.open(link);
    if(S.gallery.length){
        S.lib.preventDefault(e)
        }
    }
}
function listenKeys(on){
    if(!S.options.enableKeys){
        return
    }
    S.lib[(on?"add":"remove")+"Event"](document,"keydown",handleKey)
    }
    function handleKey(e){
    var code=S.lib.keyCode(e);
    S.lib.preventDefault(e);
    switch(code){
        case 81:case 88:case 27:
            S.close();
            break;
        case 37:
            S.previous();
            break;
        case 39:
            S.next();
            break;
        case 32:
            S[(typeof slide_timer=="number"?"pause":"play")]()
            }
        }
function loadContent(){
    var obj=S.getCurrent();
    if(!obj){
        return
    }
    var p=obj.player=="inline"?"html":obj.player;
    if(typeof S[p]!="function"){
        throw"Unknown player: "+p
        }
        var change=false;
    if(S.content){
        S.content.remove();
        change=true;
        S.revertOptions();
        if(obj.options){
            S.applyOptions(obj.options)
            }
        }
    U.removeChildren(S.skin.bodyEl());
S.content=new S[p](obj);
listenKeys(false);
S.skin.onLoad(S.content,change,function(){
    if(!S.content){
        return
    }
    if(typeof S.content.ready!="undefined"){
        var id=setInterval(function(){
            if(S.content){
                if(S.content.ready){
                    clearInterval(id);
                    id=null;
                    S.skin.onReady(contentReady)
                    }
                }else{
            clearInterval(id);
            id=null
            }
        },100)
}else{
    S.skin.onReady(contentReady)
    }
});
if(S.gallery.length>1){
    var next=S.gallery[S.current+1]||S.gallery[0];
    if(next.player=="img"){
        var a=new Image();
        a.src=next.content
        }
        var prev=S.gallery[S.current-1]||S.gallery[S.gallery.length-1];
    if(prev.player=="img"){
        var b=new Image();
        b.src=prev.content
        }
    }
}
function contentReady(){
    if(!S.content){
        return
    }
    S.content.append(S.skin.bodyEl(),content_id,S.dimensions);
    S.skin.onFinish(finishContent)
    }
    function finishContent(){
    if(!S.content){
        return
    }
    if(S.content.onLoad){
        S.content.onLoad()
        }
        if(S.options.onFinish){
        S.options.onFinish()
        }
        if(!S.isPaused()){
        S.play()
        }
        listenKeys(true)
    }
    return S
}();
Shadowbox.skin=function(){
    var e=Shadowbox,d=e.util,o=false,k=["sb-nav-close","sb-nav-next","sb-nav-play","sb-nav-pause","sb-nav-previous"];
    function l(){
        d.get("sb-container").style.top=document.documentElement.scrollTop+"px"
        }
        function g(p){
        var q=d.get("sb-overlay"),r=d.get("sb-container"),t=d.get("sb-wrapper");
        if(p){
            if(e.client.isIE6){
                l();
                e.lib.addEvent(window,"scroll",l)
                }
                if(e.options.showOverlay){
                o=true;
                q.style.backgroundColor=e.options.overlayColor;
                d.setOpacity(q,0);
                if(!e.options.modal){
                    e.lib.addEvent(q,"click",e.close)
                    }
                    t.style.display="none"
                }
                r.style.visibility="visible";
            if(o){
                var s=parseFloat(e.options.overlayOpacity);
                d.animate(q,"opacity",s,e.options.fadeDuration,p)
                }else{
                p()
                }
            }else{
        if(e.client.isIE6){
            e.lib.removeEvent(window,"scroll",l)
            }
            e.lib.removeEvent(q,"click",e.close);
        if(o){
            t.style.display="none";
            d.animate(q,"opacity",0,e.options.fadeDuration,function(){
                r.style.display="";
                t.style.display="";
                d.clearOpacity(q)
                })
            }else{
            r.style.visibility="hidden"
            }
        }
}
function b(r,p){
    var q=d.get("sb-nav-"+r);
    if(q){
        q.style.display=p?"":"none"
        }
    }
function i(r,q){
    var t=d.get("sb-loading"),v=e.getCurrent().player,u=(v=="img"||v=="html");
    if(r){
        function s(){
            d.clearOpacity(t);
            if(q){
                q()
                }
            }
        d.setOpacity(t,0);
    t.style.display="";
    if(u){
        d.animate(t,"opacity",1,e.options.fadeDuration,s)
        }else{
        s()
        }
    }else{
    function s(){
        t.style.display="none";
        d.clearOpacity(t);
        if(q){
            q()
            }
        }
    if(u){
    d.animate(t,"opacity",0,e.options.fadeDuration,s)
    }else{
    s()
    }
}
}
function a(s){
    var u=e.getCurrent();
    d.get("sb-title-inner").innerHTML=u.title||"";
    var x,r,t,y,q;
    if(e.options.displayNav){
        x=true;
        var w=e.gallery.length;
        if(w>1){
            if(e.options.continuous){
                r=q=true
                }else{
                r=(w-1)>e.current;
                q=e.current>0
                }
            }
        if(e.options.slideshowDelay>0&&e.hasNext()){
        y=!e.isPaused();
        t=!y
        }
    }else{
    x=r=t=y=q=false
    }
    b("close",x);
b("next",r);
b("play",t);
b("pause",y);
b("previous",q);
var x="";
if(e.options.displayCounter&&e.gallery.length>1){
    var v=e.getCounter();
    if(typeof v=="string"){
        x=v
        }else{
        d.each(v,function(p){
            x+='<a onclick="Shadowbox.change('+p+');"';
            if(p==e.current){
                x+=' class="sb-counter-current"'
                }
                x+=">"+(p+1)+"</a>"
            })
        }
    }
d.get("sb-counter").innerHTML=x;
s()
}
function h(r,q){
    var w=d.get("sb-wrapper"),z=d.get("sb-title"),s=d.get("sb-info"),p=d.get("sb-title-inner"),x=d.get("sb-info-inner"),y=parseInt(e.lib.getStyle(p,"height"))||0,v=parseInt(e.lib.getStyle(x,"height"))||0;
    function u(){
        p.style.visibility=x.style.visibility="hidden";
        a(q)
        }
        if(r){
        d.animate(z,"height",0,0.35);
        d.animate(s,"height",0,0.35);
        d.animate(w,"paddingTop",y,0.35);
        d.animate(w,"paddingBottom",v,0.35,u)
        }else{
        z.style.height=s.style.height="0px";
        w.style.paddingTop=y+"px";
        w.style.paddingBottom=v+"px";
        u()
        }
    }
function j(r){
    var q=d.get("sb-wrapper"),u=d.get("sb-title"),s=d.get("sb-info"),x=d.get("sb-title-inner"),w=d.get("sb-info-inner"),v=parseInt(e.lib.getStyle(x,"height"))||0,p=parseInt(e.lib.getStyle(w,"height"))||0;
    x.style.visibility=w.style.visibility="";
    if(x.innerHTML!=""){
        d.animate(u,"height",v,0.35);
        d.animate(q,"paddingTop",0,0.35)
        }
        d.animate(s,"height",p,0.35);
    d.animate(q,"paddingBottom",0,0.35,r)
    }
    function c(q,x,w,p){
    var y=d.get("sb-body"),v=d.get("sb-wrapper"),u=parseInt(q),r=parseInt(x);
    if(w){
        d.animate(y,"height",u,e.options.resizeDuration);
        d.animate(v,"top",r,e.options.resizeDuration,p)
        }else{
        y.style.height=u+"px";
        v.style.top=r+"px";
        if(p){
            p()
            }
        }
}
function f(u,x,v,p){
    var t=d.get("sb-wrapper"),r=parseInt(u),q=parseInt(x);
    if(v){
        d.animate(t,"width",r,e.options.resizeDuration);
        d.animate(t,"left",q,e.options.resizeDuration,p)
        }else{
        t.style.width=r+"px";
        t.style.left=q+"px";
        if(p){
            p()
            }
        }
}
function n(p){
    var r=e.content;
    if(!r){
        return
    }
    var q=m(r.height,r.width,r.resizable);
    switch(e.options.animSequence){
        case"hw":
            c(q.inner_h,q.top,true,function(){
            f(q.width,q.left,true,p)
            });
        break;
        case"wh":
            f(q.width,q.left,true,function(){
            c(q.inner_h,q.top,true,p)
            });
        break;
        default:
            f(q.width,q.left,true);
            c(q.inner_h,q.top,true,p)
            }
        }
function m(p,s,r){
    var q=d.get("sb-body-inner");
    sw=d.get("sb-wrapper"),so=d.get("sb-overlay"),tb=sw.offsetHeight-q.offsetHeight,lr=sw.offsetWidth-q.offsetWidth,max_h=so.offsetHeight,max_w=so.offsetWidth;
    return e.setDimensions(p,s,max_h,max_w,tb,lr,r)
    }
    return{
    markup:'<div id="sb-container"><div id="sb-overlay"></div><div id="sb-wrapper"><div id="sb-title"><div id="sb-title-inner"></div></div><div id="sb-body"><div id="sb-body-inner"></div><div id="sb-loading"><a onclick="Shadowbox.close()">{cancel}</a></div></div><div id="sb-info"><div id="sb-info-inner"><div id="sb-counter"></div><div id="sb-nav"><a id="sb-nav-close" title="{close}" onclick="Shadowbox.close()"></a><a id="sb-nav-next" title="{next}" onclick="Shadowbox.next()"></a><a id="sb-nav-play" title="{play}" onclick="Shadowbox.play()"></a><a id="sb-nav-pause" title="{pause}" onclick="Shadowbox.pause()"></a><a id="sb-nav-previous" title="{previous}" onclick="Shadowbox.previous()"></a></div><div style="clear:both"></div></div></div></div></div>',
    options:{
        animSequence:"sync"
    },
    init:function(){
        if(e.client.isIE6){
            d.get("sb-body").style.zoom=1;
            var r,p,q=/url\("(.*\.png)"\)/;
            d.each(k,function(s){
                r=d.get(s);
                p=e.lib.getStyle(r,"backgroundImage").match(q);
                if(p){
                    r.style.backgroundImage="none";
                    r.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true,src="+p[1]+",sizingMethod=scale);"
                    }
                })
        }
    },
bodyEl:function(){
    return d.get("sb-body-inner")
    },
onOpen:function(r,q,p){
    d.get("sb-container").style.display="block";
    var s=m(r,q);
    c(s.inner_h,s.top,false);
    f(s.width,s.left,false);
    g(p)
    },
onLoad:function(q,r,p){
    i(true);
    h(r,function(){
        if(!q){
            return
        }
        if(!r){
            d.get("sb-wrapper").style.display=""
            }
            p()
        })
    },
onReady:function(p){
    n(function(){
        j(p)
        })
    },
onFinish:function(p){
    i(false,p)
    },
onClose:function(){
    g(false)
    },
onPlay:function(){
    b("play",false);
    b("pause",true)
    },
onPause:function(){
    b("pause",false);
    b("play",true)
    },
onWindowResize:function(){
    var r=e.content;
    if(!r){
        return
    }
    var q=m(r.height,r.width,r.resizable);
    f(q.width,q.left,false);
    c(q.inner_h,q.top,false);
    var p=d.get(e.contentId());
    if(p){
        if(r.resizable&&e.options.handleOversize=="resize"){
            p.height=q.resize_h;
            p.width=q.resize_w
            }
        }
}
}
}();
