/*!
 * jCarousel - Riding carousels with jQuery
 *   http://sorgalla.com/jcarousel/
 *
 * Copyright (c) 2006 Jan Sorgalla (http://sorgalla.com)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 *
 * Built on top of the jQuery library
 *   http://jquery.com
 *
 * Inspired by the "Carousel Component" by Bill Scott
 *   http://billwscott.com/carousel/
 */

(function($){$.fn.jcarousel=function(o){if(typeof o=='string'){var instance=$(this).data('jcarousel'),args=Array.prototype.slice.call(arguments,1);return instance[o].apply(instance,args);}else
return this.each(function(){$(this).data('jcarousel',new $jc(this,o));});};var defaults={vertical:false,start:1,offset:1,size:null,scroll:3,visible:null,animation:'normal',easing:'swing',auto:0,wrap:null,initCallback:null,reloadCallback:null,itemLoadCallback:null,itemFirstInCallback:null,itemFirstOutCallback:null,itemLastInCallback:null,itemLastOutCallback:null,itemVisibleInCallback:null,itemVisibleOutCallback:null,buttonNextHTML:'<div></div>',buttonPrevHTML:'<div></div>',buttonNextEvent:'click',buttonPrevEvent:'click',buttonNextCallback:null,buttonPrevCallback:null};$.jcarousel=function(e,o){this.options=$.extend({},defaults,o||{});this.locked=false;this.container=null;this.clip=null;this.list=null;this.buttonNext=null;this.buttonPrev=null;this.wh=!this.options.vertical?'width':'height';this.lt=!this.options.vertical?'left':'top';var skin='',split=e.className.split(' ');for(var i=0;i<split.length;i++){if(split[i].indexOf('jcarousel-skin')!=-1){$(e).removeClass(split[i]);skin=split[i];break;}}if(e.nodeName=='UL'||e.nodeName=='OL'){this.list=$(e);this.container=this.list.parent();if(this.container.hasClass('jcarousel-clip')){if(!this.container.parent().hasClass('jcarousel-container'))this.container=this.container.wrap('<div></div>');this.container=this.container.parent();}else if(!this.container.hasClass('jcarousel-container'))this.container=this.list.wrap('<div></div>').parent();}else{this.container=$(e);this.list=this.container.find('ul,ol').eq(0);}if(skin!=''&&this.container.parent()[0].className.indexOf('jcarousel-skin')==-1)this.container.wrap('<div class=" '+skin+'"></div>');this.clip=this.list.parent();if(!this.clip.length||!this.clip.hasClass('jcarousel-clip'))this.clip=this.list.wrap('<div></div>').parent();this.buttonNext=$('.jcarousel-next',this.container);if(this.buttonNext.size()==0&&this.options.buttonNextHTML!=null)this.buttonNext=this.clip.after(this.options.buttonNextHTML).next();this.buttonNext.addClass(this.className('jcarousel-next'));this.buttonPrev=$('.jcarousel-prev',this.container);if(this.buttonPrev.size()==0&&this.options.buttonPrevHTML!=null)this.buttonPrev=this.clip.after(this.options.buttonPrevHTML).next();this.buttonPrev.addClass(this.className('jcarousel-prev'));this.clip.addClass(this.className('jcarousel-clip')).css({overflow:'hidden',position:'relative'});this.list.addClass(this.className('jcarousel-list')).css({overflow:'hidden',position:'relative',top:0,left:0,margin:0,padding:0});this.container.addClass(this.className('jcarousel-container')).css({position:'relative'});var di=this.options.visible!=null?Math.ceil(this.clipping()/this.options.visible):null;var li=this.list.children('li');var self=this;if(li.size()>0){var wh=0,i=this.options.offset;li.each(function(){self.format(this,i++);wh+=self.dimension(this,di);});this.list.css(this.wh,wh+'px');if(!o||o.size===undefined)this.options.size=li.size();}this.container.css('display','block');this.buttonNext.css('display','block');this.buttonPrev.css('display','block');this.funcNext=function(){self.next();};this.funcPrev=function(){self.prev();};this.funcResize=function(){self.reload();};if(this.options.initCallback!=null)this.options.initCallback(this,'init');if($.browser.safari){this.buttons(false,false);$(window).bind('load.jcarousel',function(){self.setup();});}else
this.setup();};var $jc=$.jcarousel;$jc.fn=$jc.prototype={jcarousel:'0.2.4'};$jc.fn.extend=$jc.extend=$.extend;$jc.fn.extend({setup:function(){this.first=null;this.last=null;this.prevFirst=null;this.prevLast=null;this.animating=false;this.timer=null;this.tail=null;this.inTail=false;if(this.locked)return;this.list.css(this.lt,this.pos(this.options.offset)+'px');var p=this.pos(this.options.start);this.prevFirst=this.prevLast=null;this.animate(p,false);$(window).unbind('resize.jcarousel',this.funcResize).bind('resize.jcarousel',this.funcResize);},reset:function(){this.list.empty();this.list.css(this.lt,'0px');this.list.css(this.wh,'10px');if(this.options.initCallback!=null)this.options.initCallback(this,'reset');this.setup();},reload:function(){if(this.tail!=null&&this.inTail)this.list.css(this.lt,$jc.intval(this.list.css(this.lt))+this.tail);this.tail=null;this.inTail=false;if(this.options.reloadCallback!=null)this.options.reloadCallback(this);if(this.options.visible!=null){var self=this;var di=Math.ceil(this.clipping()/this.options.visible),wh=0,lt=0;$('li',this.list).each(function(i){wh+=self.dimension(this,di);if(i+1<self.first)lt=wh;});this.list.css(this.wh,wh+'px');this.list.css(this.lt,-lt+'px');}this.scroll(this.first,false);},lock:function(){this.locked=true;this.buttons();},unlock:function(){this.locked=false;this.buttons();},size:function(s){if(s!=undefined){this.options.size=s;if(!this.locked)this.buttons();}return this.options.size;},has:function(i,i2){if(i2==undefined||!i2)i2=i;if(this.options.size!==null&&i2>this.options.size)i2=this.options.size;for(var j=i;j<=i2;j++){var e=this.get(j);if(!e.length||e.hasClass('jcarousel-item-placeholder'))return false;}return true;},get:function(i){return $('.jcarousel-item-'+i,this.list);},add:function(i,s){var e=this.get(i),old=0,add=0;if(e.length==0){var c,e=this.create(i),j=$jc.intval(i);while(c=this.get(--j)){if(j<=0||c.length){j<=0?this.list.prepend(e):c.after(e);break;}}}else
old=this.dimension(e);e.removeClass(this.className('jcarousel-item-placeholder'));typeof s=='string'?e.html(s):e.empty().append(s);var di=this.options.visible!=null?Math.ceil(this.clipping()/this.options.visible):null;var wh=this.dimension(e,di)-old;if(i>0&&i<this.first)this.list.css(this.lt,$jc.intval(this.list.css(this.lt))-wh+'px');this.list.css(this.wh,$jc.intval(this.list.css(this.wh))+wh+'px');return e;},remove:function(i){var e=this.get(i);if(!e.length||(i>=this.first&&i<=this.last))return;var d=this.dimension(e);if(i<this.first)this.list.css(this.lt,$jc.intval(this.list.css(this.lt))+d+'px');e.remove();this.list.css(this.wh,$jc.intval(this.list.css(this.wh))-d+'px');},next:function(){this.stopAuto();if(this.tail!=null&&!this.inTail)this.scrollTail(false);else
this.scroll(((this.options.wrap=='both'||this.options.wrap=='last')&&this.options.size!=null&&this.last==this.options.size)?1:this.first+this.options.scroll);},prev:function(){this.stopAuto();if(this.tail!=null&&this.inTail)this.scrollTail(true);else
this.scroll(((this.options.wrap=='both'||this.options.wrap=='first')&&this.options.size!=null&&this.first==1)?this.options.size:this.first-this.options.scroll);},scrollTail:function(b){if(this.locked||this.animating||!this.tail)return;var pos=$jc.intval(this.list.css(this.lt));!b?pos-=this.tail:pos+=this.tail;this.inTail=!b;this.prevFirst=this.first;this.prevLast=this.last;this.animate(pos);},scroll:function(i,a){if(this.locked||this.animating)return;this.animate(this.pos(i),a);},pos:function(i){var pos=$jc.intval(this.list.css(this.lt));if(this.locked||this.animating)return pos;if(this.options.wrap!='circular')i=i<1?1:(this.options.size&&i>this.options.size?this.options.size:i);var back=this.first>i;var f=this.options.wrap!='circular'&&this.first<=1?1:this.first;var c=back?this.get(f):this.get(this.last);var j=back?f:f-1;var e=null,l=0,p=false,d=0,g;while(back?--j>=i:++j<i){e=this.get(j);p=!e.length;if(e.length==0){e=this.create(j).addClass(this.className('jcarousel-item-placeholder'));c[back?'before':'after'](e);if(this.first!=null&&this.options.wrap=='circular'&&this.options.size!==null&&(j<=0||j>this.options.size)){g=this.get(this.index(j));if(g.length)this.add(j,g.children().clone(true));}}c=e;d=this.dimension(e);if(p)l+=d;if(this.first!=null&&(this.options.wrap=='circular'||(j>=1&&(this.options.size==null||j<=this.options.size))))pos=back?pos+d:pos-d;}var clipping=this.clipping();var cache=[];var visible=0,j=i,v=0;var c=this.get(i-1);while(++visible){e=this.get(j);p=!e.length;if(e.length==0){e=this.create(j).addClass(this.className('jcarousel-item-placeholder'));c.length==0?this.list.prepend(e):c[back?'before':'after'](e);if(this.first!=null&&this.options.wrap=='circular'&&this.options.size!==null&&(j<=0||j>this.options.size)){g=this.get(this.index(j));if(g.length)this.add(j,g.find('>*').clone(true));}}c=e;var d=this.dimension(e);if(d==0){alert('jCarousel: No width/height set for items. This will cause an infinite loop. Aborting...');return 0;}if(this.options.wrap!='circular'&&this.options.size!==null&&j>this.options.size)cache.push(e);else if(p)l+=d;v+=d;if(v>=clipping)break;j++;}for(var x=0;x<cache.length;x++)cache[x].remove();if(l>0){this.list.css(this.wh,this.dimension(this.list)+l+'px');if(back){pos-=l;this.list.css(this.lt,$jc.intval(this.list.css(this.lt))-l+'px');}}var last=i+visible-1;if(this.options.wrap!='circular'&&this.options.size&&last>this.options.size)last=this.options.size;if(j>last){visible=0,j=last,v=0;while(++visible){var e=this.get(j--);if(!e.length)break;v+=this.dimension(e);if(v>=clipping)break;}}var first=last-visible+1;if(this.options.wrap!='circular'&&first<1)first=1;if(this.inTail&&back){pos+=this.tail;this.inTail=false;}this.tail=null;if(this.options.wrap!='circular'&&last==this.options.size&&(last-visible+1)>=1){var m=$jc.margin(this.get(last),!this.options.vertical?'marginRight':'marginBottom');if((v-m)>clipping)this.tail=v-clipping-m;}while(i-->first)pos+=this.dimension(this.get(i));this.prevFirst=this.first;this.prevLast=this.last;this.first=first;this.last=last;return pos;},animate:function(p,a){if(this.locked||this.animating)return;this.animating=true;var self=this;var scrolled=function(){self.animating=false;if(p==0)self.list.css(self.lt,0);if(self.options.wrap=='circular'||self.options.wrap=='both'||self.options.wrap=='last'||self.options.size==null||self.last<self.options.size)self.startAuto();self.buttons();self.notify('onAfterAnimation');};this.notify('onBeforeAnimation');if(!this.options.animation||a==false){this.list.css(this.lt,p+'px');scrolled();}else{var o=!this.options.vertical?{'left':p}:{'top':p};this.list.animate(o,this.options.animation,this.options.easing,scrolled);}},startAuto:function(s){if(s!=undefined)this.options.auto=s;if(this.options.auto==0)return this.stopAuto();if(this.timer!=null)return;var self=this;this.timer=setTimeout(function(){self.next();},this.options.auto*1000);},stopAuto:function(){if(this.timer==null)return;clearTimeout(this.timer);this.timer=null;},buttons:function(n,p){if(n==undefined||n==null){var n=!this.locked&&this.options.size!==0&&((this.options.wrap&&this.options.wrap!='first')||this.options.size==null||this.last<this.options.size);if(!this.locked&&(!this.options.wrap||this.options.wrap=='first')&&this.options.size!=null&&this.last>=this.options.size)n=this.tail!=null&&!this.inTail;}if(p==undefined||p==null){var p=!this.locked&&this.options.size!==0&&((this.options.wrap&&this.options.wrap!='last')||this.first>1);if(!this.locked&&(!this.options.wrap||this.options.wrap=='last')&&this.options.size!=null&&this.first==1)p=this.tail!=null&&this.inTail;}var self=this;this.buttonNext[n?'bind':'unbind'](this.options.buttonNextEvent+'.jcarousel',this.funcNext)[n?'removeClass':'addClass'](this.className('jcarousel-next-disabled')).attr('disabled',n?false:true);this.buttonPrev[p?'bind':'unbind'](this.options.buttonPrevEvent+'.jcarousel',this.funcPrev)[p?'removeClass':'addClass'](this.className('jcarousel-prev-disabled')).attr('disabled',p?false:true);if(this.buttonNext.length>0&&(this.buttonNext[0].jcarouselstate==undefined||this.buttonNext[0].jcarouselstate!=n)&&this.options.buttonNextCallback!=null){this.buttonNext.each(function(){self.options.buttonNextCallback(self,this,n);});this.buttonNext[0].jcarouselstate=n;}if(this.buttonPrev.length>0&&(this.buttonPrev[0].jcarouselstate==undefined||this.buttonPrev[0].jcarouselstate!=p)&&this.options.buttonPrevCallback!=null){this.buttonPrev.each(function(){self.options.buttonPrevCallback(self,this,p);});this.buttonPrev[0].jcarouselstate=p;}},notify:function(evt){var state=this.prevFirst==null?'init':(this.prevFirst<this.first?'next':'prev');this.callback('itemLoadCallback',evt,state);if(this.prevFirst!==this.first){this.callback('itemFirstInCallback',evt,state,this.first);this.callback('itemFirstOutCallback',evt,state,this.prevFirst);}if(this.prevLast!==this.last){this.callback('itemLastInCallback',evt,state,this.last);this.callback('itemLastOutCallback',evt,state,this.prevLast);}this.callback('itemVisibleInCallback',evt,state,this.first,this.last,this.prevFirst,this.prevLast);this.callback('itemVisibleOutCallback',evt,state,this.prevFirst,this.prevLast,this.first,this.last);},callback:function(cb,evt,state,i1,i2,i3,i4){if(this.options[cb]==undefined||(typeof this.options[cb]!='object'&&evt!='onAfterAnimation'))return;var callback=typeof this.options[cb]=='object'?this.options[cb][evt]:this.options[cb];if(!$.isFunction(callback))return;var self=this;if(i1===undefined)callback(self,state,evt);else if(i2===undefined)this.get(i1).each(function(){callback(self,this,i1,state,evt);});else{for(var i=i1;i<=i2;i++)if(i!==null&&!(i>=i3&&i<=i4))this.get(i).each(function(){callback(self,this,i,state,evt);});}},create:function(i){return this.format('<li></li>',i);},format:function(e,i){var $e=$(e).addClass(this.className('jcarousel-item')).addClass(this.className('jcarousel-item-'+i)).css({'float':'left','list-style':'none'});$e.attr('jcarouselindex',i);return $e;},className:function(c){return c+' '+c+(!this.options.vertical?'-horizontal':'-vertical');},dimension:function(e,d){var el=e.jquery!=undefined?e[0]:e;var old=!this.options.vertical?el.offsetWidth+$jc.margin(el,'marginLeft')+$jc.margin(el,'marginRight'):el.offsetHeight+$jc.margin(el,'marginTop')+$jc.margin(el,'marginBottom');if(d==undefined||old==d)return old;var w=!this.options.vertical?d-$jc.margin(el,'marginLeft')-$jc.margin(el,'marginRight'):d-$jc.margin(el,'marginTop')-$jc.margin(el,'marginBottom');$(el).css(this.wh,w+'px');return this.dimension(el);},clipping:function(){return!this.options.vertical?this.clip[0].offsetWidth-$jc.intval(this.clip.css('borderLeftWidth'))-$jc.intval(this.clip.css('borderRightWidth')):this.clip[0].offsetHeight-$jc.intval(this.clip.css('borderTopWidth'))-$jc.intval(this.clip.css('borderBottomWidth'));},index:function(i,s){if(s==undefined)s=this.options.size;return Math.round((((i-1)/s)-Math.floor((i-1)/s))*s)+1;}});$jc.extend({defaults:function(d){return $.extend(defaults,d||{});},margin:function(e,p){if(!e)return 0;var el=e.jquery!=undefined?e[0]:e;if(p=='marginRight'&&$.browser.safari){var old={'display':'block','float':'none','width':'auto'},oWidth,oWidth2;$.swap(el,old,function(){oWidth=el.offsetWidth;});old['marginRight']=0;$.swap(el,old,function(){oWidth2=el.offsetWidth;});return oWidth2-oWidth;}return $jc.intval($.css(el,p));},intval:function(v){v=parseInt(v);return isNaN(v)?0:v;}});})(jQuery);




/*
 * jQuery Easing v1.1.1 - http://gsgd.co.uk/sandbox/jquery.easing.php
 *
 * Uses the built in easing capabilities added in jQuery 1.1
 * to offer multiple easing options
 *
 * Copyright (c) 2007 George Smith
 * Licensed under the MIT License:
 *   http://www.opensource.org/licenses/mit-license.php
 */

jQuery.extend(jQuery.easing, {
	easein: function(x, t, b, c, d) {
		return c*(t/=d)*t + b; // in
	},
	easeinout: function(x, t, b, c, d) {
		if (t < d/2) return 2*c*t*t/(d*d) + b;
		var ts = t - d/2;
		return -2*c*ts*ts/(d*d) + 2*c*ts/d + c/2 + b;		
	},
	easeout: function(x, t, b, c, d) {
		return -c*t*t/(d*d) + 2*c*t/d + b;
	},
	expoin: function(x, t, b, c, d) {
		var flip = 1;
		if (c < 0) {
			flip *= -1;
			c *= -1;
		}
		return flip * (Math.exp(Math.log(c)/d * t)) + b;		
	},
	expoout: function(x, t, b, c, d) {
		var flip = 1;
		if (c < 0) {
			flip *= -1;
			c *= -1;
		}
		return flip * (-Math.exp(-Math.log(c)/d * (t-d)) + c + 1) + b;
	},
	expoinout: function(x, t, b, c, d) {
		var flip = 1;
		if (c < 0) {
			flip *= -1;
			c *= -1;
		}
		if (t < d/2) return flip * (Math.exp(Math.log(c/2)/(d/2) * t)) + b;
		return flip * (-Math.exp(-2*Math.log(c/2)/d * (t-d)) + c + 1) + b;
	},
	bouncein: function(x, t, b, c, d) {
		return c - jQuery.easing['bounceout'](x, d-t, 0, c, d) + b;
	},
	bounceout: function(x, t, b, c, d) {
		if ((t/=d) < (1/2.75)) {
			return c*(7.5625*t*t) + b;
		} else if (t < (2/2.75)) {
			return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
		} else if (t < (2.5/2.75)) {
			return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
		} else {
			return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
		}
	},
	bounceinout: function(x, t, b, c, d) {
		if (t < d/2) return jQuery.easing['bouncein'] (x, t*2, 0, c, d) * .5 + b;
		return jQuery.easing['bounceout'] (x, t*2-d,0, c, d) * .5 + c*.5 + b;
	},
	elasin: function(x, t, b, c, d) {
		var s=1.70158;var p=0;var a=c;
		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
		if (a < Math.abs(c)) { a=c; var s=p/4; }
		else var s = p/(2*Math.PI) * Math.asin (c/a);
		return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
	},
	elasout: function(x, t, b, c, d) {
		var s=1.70158;var p=0;var a=c;
		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
		if (a < Math.abs(c)) { a=c; var s=p/4; }
		else var s = p/(2*Math.PI) * Math.asin (c/a);
		return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
	},
	elasinout: function(x, t, b, c, d) {
		var s=1.70158;var p=0;var a=c;
		if (t==0) return b;  if ((t/=d/2)==2) return b+c;  if (!p) p=d*(.3*1.5);
		if (a < Math.abs(c)) { a=c; var s=p/4; }
		else var s = p/(2*Math.PI) * Math.asin (c/a);
		if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
		return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
	},
	backin: function(x, t, b, c, d) {
		var s=1.70158;
		return c*(t/=d)*t*((s+1)*t - s) + b;
	},
	backout: function(x, t, b, c, d) {
		var s=1.70158;
		return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
	},
	backinout: function(x, t, b, c, d) {
		var s=1.70158;
		if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
		return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
	}
});






/* Copyright (c) 2007 Paul Bakaus (paul.bakaus@googlemail.com) and Brandon Aaron (brandon.aaron@gmail.com || http://brandonaaron.net)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 *
 * $LastChangedDate: 2007-10-06 20:11:15 +0200 (Sa, 06 Okt 2007) $
 * $Rev: 3581 $
 *
 * Version: @VERSION
 *
 * Requires: jQuery 1.2+
 */

(function($){
	
$.dimensions = {
	version: '@VERSION'
};

// Create innerHeight, innerWidth, outerHeight and outerWidth methods
$.each( [ 'Height', 'Width' ], function(i, name){
	
	// innerHeight and innerWidth
	$.fn[ 'inner' + name ] = function() {
		if (!this[0]) return;
		
		var torl = name == 'Height' ? 'Top'    : 'Left',  // top or left
		    borr = name == 'Height' ? 'Bottom' : 'Right'; // bottom or right
		
		return num( this, name.toLowerCase() ) + num(this, 'padding' + torl) + num(this, 'padding' + borr);
	};
	
	// outerHeight and outerWidth
	$.fn[ 'outer' + name ] = function(options) {
		if (!this[0]) return;
		
		var torl = name == 'Height' ? 'Top'    : 'Left',  // top or left
		    borr = name == 'Height' ? 'Bottom' : 'Right'; // bottom or right
		
		options = $.extend({ margin: false }, options || {});
		
		return num( this, name.toLowerCase() )
				+ num(this, 'border' + torl + 'Width') + num(this, 'border' + borr + 'Width')
				+ num(this, 'padding' + torl) + num(this, 'padding' + borr)
				+ (options.margin ? (num(this, 'margin' + torl) + num(this, 'margin' + borr)) : 0);
	};
});

// Create scrollLeft and scrollTop methods
$.each( ['Left', 'Top'], function(i, name) {
	$.fn[ 'scroll' + name ] = function(val) {
		if (!this[0]) return;
		
		return val != undefined ?
		
			// Set the scroll offset
			this.each(function() {
				this == window || this == document ?
					window.scrollTo( 
						name == 'Left' ? val : $(window)[ 'scrollLeft' ](),
						name == 'Top'  ? val : $(window)[ 'scrollTop'  ]()
					) :
					this[ 'scroll' + name ] = val;
			}) :
			
			// Return the scroll offset
			this[0] == window || this[0] == document ?
				self[ (name == 'Left' ? 'pageXOffset' : 'pageYOffset') ] ||
					$.boxModel && document.documentElement[ 'scroll' + name ] ||
					document.body[ 'scroll' + name ] :
				this[0][ 'scroll' + name ];
	};
});

$.fn.extend({
	position: function() {
		var left = 0, top = 0, elem = this[0], offset, parentOffset, offsetParent, results;
		
		if (elem) {
			// Get *real* offsetParent
			offsetParent = this.offsetParent();
			
			// Get correct offsets
			offset       = this.offset();
			parentOffset = offsetParent.offset();
			
			// Subtract element margins
			offset.top  -= num(elem, 'marginTop');
			offset.left -= num(elem, 'marginLeft');
			
			// Add offsetParent borders
			parentOffset.top  += num(offsetParent, 'borderTopWidth');
			parentOffset.left += num(offsetParent, 'borderLeftWidth');
			
			// Subtract the two offsets
			results = {
				top:  offset.top  - parentOffset.top,
				left: offset.left - parentOffset.left
			};
		}
		
		return results;
	},
	
	offsetParent: function() {
		var offsetParent = this[0].offsetParent;
		while ( offsetParent && (!/^body|html$/i.test(offsetParent.tagName) && $.css(offsetParent, 'position') == 'static') )
			offsetParent = offsetParent.offsetParent;
		return $(offsetParent);
	}
});

function num(el, prop) {
	return parseInt($.css(el.jquery?el[0]:el,prop))||0;
};

})(jQuery);




/*!
 * jQuery Cycle Plugin (core)
 * Examples and documentation at: http://jquery.malsup.com/cycle/
 * Copyright (c) 2007-2010 M. Alsup
 * Version: 2.86 (05-APR-2010)
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 * Requires: jQuery v1.2.6 or later
 */
;(function($) {

var ver = '2.86';

// if $.support is not defined (pre jQuery 1.3) add what I need
if ($.support == undefined) {
	$.support = {
		opacity: !($.browser.msie)
	};
}

function debug(s) {
	if ($.fn.cycle.debug)
		log(s);
}		
function log() {
	if (window.console && window.console.log)
		window.console.log('[cycle] ' + Array.prototype.join.call(arguments,' '));
};

// the options arg can be...
//   a number  - indicates an immediate transition should occur to the given slide index
//   a string  - 'pause', 'resume', 'toggle', 'next', 'prev', 'stop', 'destroy' or the name of a transition effect (ie, 'fade', 'zoom', etc)
//   an object - properties to control the slideshow
//
// the arg2 arg can be...
//   the name of an fx (only used in conjunction with a numeric value for 'options')
//   the value true (only used in first arg == 'resume') and indicates
//	 that the resume should occur immediately (not wait for next timeout)

$.fn.cycle = function(options, arg2) {
	var o = { s: this.selector, c: this.context };

	// in 1.3+ we can fix mistakes with the ready state
	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;
		}
		// is your DOM ready?  http://docs.jquery.com/Tutorials:Introducing_$(document).ready()
		log('terminating; zero elements found by selector' + ($.isReady ? '' : ' (DOM not ready)'));
		return this;
	}

	// iterate the matched nodeset
	return this.each(function() {
		var opts = handleArguments(this, options, arg2);
		if (opts === false)
			return;

		opts.updateActivePagerLink = opts.updateActivePagerLink || $.fn.cycle.updateActivePagerLink;
		
		// stop existing slideshow for this container (if there is one)
		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();
		if (els.length < 2) {
			log('terminating; too few slides: ' + els.length);
			return;
		}

		var opts2 = buildOptions($cont, $slides, els, opts, o);
		if (opts2 === false)
			return;

		var startTime = opts2.continuous ? 10 : getTimeout(opts2.currSlide, opts2.nextSlide, opts2, !opts2.rev);

		// if it's an auto slideshow, kick it off
		if (startTime) {
			startTime += (opts2.delay || 0);
			if (startTime < 10)
				startTime = 10;
			debug('first timeout: ' + startTime);
			this.cycleTimeout = setTimeout(function(){go(els,opts2,0,!opts2.rev)}, startTime);
		}
	});
};

// process the args that were passed to the plugin fn
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++; // callbacks look for change
			if (cont.cycleTimeout)
				clearTimeout(cont.cycleTimeout);
			cont.cycleTimeout = 0;
			$(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);
			return false;
		case 'pause':
			cont.cyclePause = 1;
			return false;
		case 'resume':
			cont.cyclePause = 0;
			checkInstantResume(false, arg2, 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) {
		// go to the requested slide
		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) { // resume now!
			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, 1);
		}
	}
};

function removeFilter(el, opts) {
	if (!$.support.opacity && opts.cleartype && el.style.filter) {
		try { el.style.removeAttribute('filter'); }
		catch(smother) {} // handle old opera versions
	}
};

// unbind event handlers
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) // callback
		opts.destroy(opts);
};

// one-time initialization
function buildOptions($cont, $slides, els, options, o) {
	// support metadata plugin (v1.0 and v2.0)
	var opts = $.extend({}, $.fn.cycle.defaults, options || {}, $.metadata ? $cont.metadata() : $.meta ? $cont.data() : {});
	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] : [];
	opts.after.unshift(function(){ opts.busy=0; });

	// push some after callbacks
	if (!$.support.opacity && opts.cleartype)
		opts.after.push(function() { removeFilter(this, opts); });
	if (opts.continuous)
		opts.after.push(function() { go(els,opts,0,!opts.rev); });

	saveOriginalOpts(opts);

	// clearType corrections
	if (!$.support.opacity && opts.cleartype && !opts.cleartypeNoBg)
		clearTypeFix($slides);

	// container requires non-static position so that slides can be position within
	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);

	// if random, mix up the slide array
	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; // catch bogus input
	opts.currSlide = opts.startingSlide || 0;
	var first = opts.startingSlide;

	// set position and zIndex on all the slides
	$slides.css({position: 'absolute', top:0, left:0}).hide().each(function(i) {
		var z = first ? i >= first ? els.length - (i-first) : first-i : els.length-i;
		$(this).css('z-index', z)
	});

	// make sure first slide is visible
	$(els[first]).css('opacity',1).show(); // opacity bit needed to handle restart use case
	removeFilter(els[first], opts);

	// stretch slides
	if (opts.fit && opts.width)
		$slides.width(opts.width);
	if (opts.fit && opts.height && opts.height != 'auto')
		$slides.height(opts.height);

	// stretch container
	var reshape = opts.containerResize && !$cont.innerHeight();
	if (reshape) { // do this only if container has no size http://tinyurl.com/da2oa9
		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'});
	}

	if (opts.pause)
		$cont.hover(function(){this.cyclePause++;},function(){this.cyclePause--;});

	if (supportMultiTransitions(opts) === false)
		return false;

	// apparently a lot of people use image slideshows without height/width attributes on the images.
	// Cycle 2.50+ requires the sizing info for every slide; this block tries to deal with that.
	var requeue = false;
	options.requeueAttempts = options.requeueAttempts || 0;
	$slides.each(function() {
		// try to get height/width of each slide
		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') ) {
			// sigh..  sniffing, hacking, shrugging...  this crappy hack tries to account for what browsers do when
			// an image is being downloaded and the markup did not include sizing info (height/width attributes);
			// there seems to be some "default" sizes used in this situation
			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);
			// don't requeue for images that are still loading but have a valid size
			if (loadingIE || loadingFF || loadingOp || loadingOther) {
				if (o.s && opts.requeueOnImageNotLoaded && ++options.requeueAttempts < 100) { // track retry count so we don't loop forever
					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; // break each loop
				}
				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.animIn = opts.animIn || {};
	opts.animOut = opts.animOut || {};

	$slides.not(':eq('+first+')').css(opts.cssBefore);
	if (opts.cssFirst)
		$($slides[first]).css(opts.cssFirst);

	if (opts.timeout) {
		opts.timeout = parseInt(opts.timeout);
		// ensure that timeout and speed settings are sane
		if (opts.speed.constructor == String)
			opts.speed = $.fx.speeds[opts.speed] || parseInt(opts.speed);
		if (!opts.sync)
			opts.speed = opts.speed / 2;
		
		var buffer = opts.fx == 'shuffle' ? 500 : 250;
		while((opts.timeout - opts.speed) < buffer) // sanitize timeout
			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
		opts.nextSlide = opts.startingSlide >= (els.length-1) ? 0 : opts.startingSlide+1;

	// run transition init fn
	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;
		}
	}

	// fire artificial events
	var e0 = $slides[first];
	if (opts.before.length)
		opts.before[0].apply(e0, [e0, e0, opts, true]);
	if (opts.after.length > 1)
		opts.after[1].apply(e0, [e0, e0, opts, true]);

	if (opts.next)
		$(opts.next).bind(opts.prevNextEvent,function(){return advance(opts,opts.rev?-1:1)});
	if (opts.prev)
		$(opts.prev).bind(opts.prevNextEvent,function(){return advance(opts,opts.rev?1:-1)});
	if (opts.pager || opts.pagerAnchorBuilder)
		buildPager(els,opts);

	exposeAddSlide(opts, els);

	return opts;
};

// save off original opts so we can restore after clearing state
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;
	// look for multiple effects
	if (opts.fx.indexOf(',') > 0) {
		opts.multiFx = true;
		opts.fxs = opts.fx.replace(/\s*/g,'').split(',');
		// discard any bogus effect names
		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 we have an empty list then we threw everything away!
		if (!opts.fxs.length) {
			log('No valid transitions named; slideshow terminating.');
			return false;
		}
	}
	else if (opts.fx == 'all') {  // auto-gen the list of transitions
		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) {
		// munge the fxs array to make effect selection random
		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;
};

// provide a mechanism for adding slides after the slideshow has started
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); // shuffle needs this
		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')
			$slides.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(); // default behavior
	};
}

// reset internal state; we do this on every pass in order to support multiple effects
$.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); });

	// re-init
	var init = $.fn.cycle.transitions[fx];
	if ($.isFunction(init))
		init(opts.$cont, $(opts.elements), opts);
};

// this is the main engine fn, it handles the timeouts, callbacks and slide index mgmt
function go(els, opts, manual, fwd) {
	// opts.busy is true if we're in the middle of an animation
	if (manual && opts.busy && opts.manualTrump) {
		// let manual transitions requests trump active ones
		debug('manualTrump in go(), stopping active transition');
		$(els).stop(true,true);
		opts.busy = false;
	}
	// don't begin another timeout-based transition if there is one active
	if (opts.busy) {
		debug('transition active, ignoring new tx request');
		return;
	}

	var p = opts.$cont[0], curr = els[opts.currSlide], next = els[opts.nextSlide];

	// stop cycling if we have an outstanding stop request
	if (p.cycleStop != opts.stopCount || p.cycleTimeout === 0 && !manual)
		return;

	// check to see if we should stop cycling based on autostop options
	if (!manual && !p.cyclePause &&
		((opts.autostop && (--opts.countdown <= 0)) ||
		(opts.nowrap && !opts.random && opts.nextSlide < opts.currSlide))) {
		if (opts.end)
			opts.end(opts);
		return;
	}

	// if slideshow is paused, only transition on a manual trigger
	var changed = false;
	if ((manual || !p.cyclePause) && (opts.nextSlide != opts.currSlide)) {
		changed = true;
		var fx = opts.fx;
		// keep trying to get the slide size if we don't have it yet
		curr.cycleH = curr.cycleH || $(curr).height();
		curr.cycleW = curr.cycleW || $(curr).width();
		next.cycleH = next.cycleH || $(next).height();
		next.cycleW = next.cycleW || $(next).width();

		// support multiple transition types
		if (opts.multiFx) {
			if (opts.lastFx == undefined || ++opts.lastFx >= opts.fxs.length)
				opts.lastFx = 0;
			fx = opts.fxs[opts.lastFx];
			opts.currFx = fx;
		}

		// one-time fx overrides apply to:  $('div').cycle(3,'zoom');
		if (opts.oneTimeFx) {
			fx = opts.oneTimeFx;
			opts.oneTimeFx = null;
		}

		$.fn.cycle.resetState(opts, fx);

		// run the before callbacks
		if (opts.before.length)
			$.each(opts.before, function(i,o) {
				if (p.cycleStop != opts.stopCount) return;
				o.apply(next, [curr, next, opts, fwd]);
			});

		// stage the after callacks
		var after = function() {
			$.each(opts.after, function(i,o) {
				if (p.cycleStop != opts.stopCount) return;
				o.apply(next, [curr, next, opts, fwd]);
			});
		};

		debug('tx firing; currSlide: ' + opts.currSlide + '; nextSlide: ' + opts.nextSlide);
		
		// get ready to perform the transition
		opts.busy = 1;
		if (opts.fxFn) // fx function provided?
			opts.fxFn(curr, next, opts, after, fwd, manual && opts.fastOnEvent);
		else if ($.isFunction($.fn.cycle[opts.fx])) // fx plugin ?
			$.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) {
		// calculate the next slide
		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 { // sequence
			var roll = (opts.nextSlide + 1) == els.length;
			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);
	
	// stage the next transition
	var ms = 0;
	if (opts.timeout && !opts.continuous)
		ms = getTimeout(curr, next, opts, fwd);
	else if (opts.continuous && p.cyclePause) // continuous shows work off an after callback, not this timer logic
		ms = 10;
	if (ms > 0)
		p.cycleTimeout = setTimeout(function(){ go(els, opts, 0, !opts.rev) }, ms);
};

// invoked after transition
$.fn.cycle.updateActivePagerLink = function(pager, currSlide, clsName) {
   $(pager).each(function() {
       $(this).children().removeClass(clsName).eq(currSlide).addClass(clsName);
   });
};

// calculate timeout value for current transition
function getTimeout(curr, next, opts, fwd) {
	if (opts.timeoutFn) {
		// call user provided calc fn
		var t = opts.timeoutFn(curr,next,opts,fwd);
		while ((t - opts.speed) < 250) // sanitize timeout
			t += opts.speed;
		debug('calculated timeout: ' + t + '; speed: ' + opts.speed);
		if (t !== false)
			return t;
	}
	return opts.timeout;
};

// expose next/prev function, caller must pass in state
$.fn.cycle.next = function(opts) { advance(opts, opts.rev?-1:1); };
$.fn.cycle.prev = function(opts) { advance(opts, opts.rev?1:-1);};

// advance slide forward or back
function advance(opts, val) {
	var els = opts.elements;
	var p = opts.$cont[0], timeout = p.cycleTimeout;
	if (timeout) {
		clearTimeout(timeout);
		p.cycleTimeout = 0;
	}
	if (opts.random && val < 0) {
		// move back to the previously display slide
		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; // prevNextClick is deprecated
	if ($.isFunction(cb))
		cb(val > 0, opts.nextSlide, els[opts.nextSlide]);
	go(els, opts, 1, val>=0);
	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);
	// don't reparent if anchor is in the dom
	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);
	$a.bind(opts.pagerEvent, 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; // pagerClick is deprecated
		if ($.isFunction(cb))
			cb(opts.nextSlide, els[opts.nextSlide]);
		go(els,opts,1,opts.currSlide < i); // trigger the trans
//		return false; // <== allow bubble
	});
	
	if ( ! /^click/.test(opts.pagerEvent) && !opts.allowPagerClickBubble)
		$a.bind('click.cycle', function(){return false;}); // suppress click
	
	if (opts.pauseOnPagerHover)
		$a.hover(function() { opts.$cont[0].cyclePause++; }, function() { opts.$cont[0].cyclePause--; } );
};

// helper fn to calculate the number of slides between the current and the next
$.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;
};

// fix clearType problems in ie6 by setting an explicit bg color
// (otherwise text slides look horrible during a fade transition)
function clearTypeFix($slides) {
	debug('applying clearType background-color hack');
	function hex(s) {
		s = parseInt(s).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.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)); });
};

// reset common props before the next transition
$.fn.cycle.commonReset = function(curr,next,opts,w,h,rev) {
	$(opts.elements).not(curr).hide();
	opts.cssBefore.opacity = 1;
	opts.cssBefore.display = 'block';
	if (w !== false && next.cycleW > 0)
		opts.cssBefore.width = next.cycleW;
	if (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));
};

// the actual fn for effecting a transition
$.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, cb)};
	$l.animate(opts.animOut, speedOut, easeOut, function() {
		if (opts.cssAfter) $l.css(opts.cssAfter);
		if (!opts.sync) fn();
	});
	if (opts.sync) fn();
};

// transition definitions - only fade is defined here, transition pack defines the rest
$.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; };

// override these globally if you like (they are all optional)
$.fn.cycle.defaults = {
	fx:			  'fade', // name of transition effect (or comma separated names, ex: 'fade,scrollUp,shuffle')
	timeout:	   4000,  // milliseconds between slide transitions (0 to disable auto advance)
	timeoutFn:     null,  // callback for determining per-slide timeout value:  function(currSlideElement, nextSlideElement, options, forwardFlag)
	continuous:	   0,	  // true to start next transition immediately after current one completes
	speed:		   1000,  // speed of the transition (any valid fx speed value)
	speedIn:	   null,  // speed of the 'in' transition
	speedOut:	   null,  // speed of the 'out' transition
	next:		   null,  // selector for element to use as event trigger for next slide
	prev:		   null,  // selector for element to use as event trigger for previous slide
//	prevNextClick: null,  // @deprecated; please use onPrevNextEvent instead
	onPrevNextEvent: null,  // callback fn for prev/next events: function(isNext, zeroBasedSlideIndex, slideElement)
	prevNextEvent:'click.cycle',// event which drives the manual transition to the previous or next slide
	pager:		   null,  // selector for element to use as pager container
	//pagerClick   null,  // @deprecated; please use onPagerEvent instead
	onPagerEvent:  null,  // callback fn for pager events: function(zeroBasedSlideIndex, slideElement)
	pagerEvent:	  'click.cycle', // name of event which drives the pager navigation
	allowPagerClickBubble: false, // allows or prevents click event on pager anchors from bubbling
	pagerAnchorBuilder: null, // callback fn for building anchor links:  function(index, DOMelement)
	before:		   null,  // transition callback (scope set to element to be shown):	 function(currSlideElement, nextSlideElement, options, forwardFlag)
	after:		   null,  // transition callback (scope set to element that was shown):  function(currSlideElement, nextSlideElement, options, forwardFlag)
	end:		   null,  // callback invoked when the slideshow terminates (use with autostop or nowrap options): function(options)
	easing:		   null,  // easing method for both in and out transitions
	easeIn:		   null,  // easing for "in" transition
	easeOut:	   null,  // easing for "out" transition
	shuffle:	   null,  // coords for shuffle animation, ex: { top:15, left: 200 }
	animIn:		   null,  // properties that define how the slide animates in
	animOut:	   null,  // properties that define how the slide animates out
	cssBefore:	   null,  // properties that define the initial state of the slide before transitioning in
	cssAfter:	   null,  // properties that defined the state of the slide after transitioning out
	fxFn:		   null,  // function used to control the transition: function(currSlideElement, nextSlideElement, options, afterCalback, forwardFlag)
	height:		  'auto', // container height
	startingSlide: 0,	  // zero-based index of the first slide to be displayed
	sync:		   1,	  // true if in/out transitions should occur simultaneously
	random:		   0,	  // true for random, false for sequence (not applicable to shuffle fx)
	fit:		   0,	  // force slides to fit container
	containerResize: 1,	  // resize container to fit largest slide
	pause:		   0,	  // true to enable "pause on hover"
	pauseOnPagerHover: 0, // true to pause when hovering over pager link
	autostop:	   0,	  // true to end slideshow after X transitions (where X == slide count)
	autostopCount: 0,	  // number of transitions (optionally used with autostop to define X)
	delay:		   0,	  // additional delay (in ms) for first transition (hint: can be negative)
	slideExpr:	   null,  // expression for selecting slides (if something other than all children is required)
	cleartype:	   !$.support.opacity,  // true if clearType corrections should be applied (for IE)
	cleartypeNoBg: false, // set to true to disable extra cleartype fixing (leave false to force background color setting on slides)
	nowrap:		   0,	  // true to prevent slideshow from wrapping
	fastOnEvent:   0,	  // force fast transitions when triggered manually (via pager or prev/next); value == time in ms
	randomizeEffects: 1,  // valid when multiple effects are used; true to make the effect sequence random
	rev:		   0,	 // causes animations to transition in reverse
	manualTrump:   true,  // causes manual transition to stop an active transition instead of being ignored
	requeueOnImageNotLoaded: true, // requeue the slideshow if any image slides are not yet loaded
	requeueTimeout: 250,  // ms delay for requeue
	activePagerClass: 'activeSlide', // class name used for the active pager link
	updateActivePagerLink: null // callback fn invoked to update the active pager link (adds/removes activePagerClass style)
};

})(jQuery);





/*
 * jQuery UI Accordion 1.6
 * 
 * Copyright (c) 2007 Jörn Zaefferer
 *
 * http://docs.jquery.com/UI/Accordion
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 *
 * Revision: $Id: jquery.accordion.js 4876 2008-03-08 11:49:04Z joern.zaefferer $
 *
 */

;(function($) {
	
// If the UI scope is not available, add it
$.ui = $.ui || {};

$.fn.extend({
	accordion: function(options, data) {
		var args = Array.prototype.slice.call(arguments, 1);

		return this.each(function() {
			if (typeof options == "string") {
				var accordion = $.data(this, "ui-accordion");
				accordion[options].apply(accordion, args);
			// INIT with optional options
			} else if (!$(this).is(".ui-accordion"))
				$.data(this, "ui-accordion", new $.ui.accordion(this, options));
		});
	},
	// deprecated, use accordion("activate", index) instead
	activate: function(index) {
		return this.accordion("activate", index);
	}
});

$.ui.accordion = function(container, options) {
	
	// setup configuration
	this.options = options = $.extend({}, $.ui.accordion.defaults, options);
	this.element = container;
	
	$(container).addClass("ui-accordion");
	
	if ( options.navigation ) {
		var current = $(container).find("a").filter(options.navigationFilter);
		if ( current.length ) {
			if ( current.filter(options.header).length ) {
				options.active = current;
			} else {
				options.active = current.parent().parent().prev();
				current.addClass("current");
			}
		}
	}
	
	// calculate active if not specified, using the first header
	options.headers = $(container).find(options.header);
	options.active = findActive(options.headers, options.active);

	if ( options.fillSpace ) {
		var maxHeight = $(container).parent().height();
		options.headers.each(function() {
			maxHeight -= $(this).outerHeight();
		});
		var maxPadding = 0;
		options.headers.next().each(function() {
			maxPadding = Math.max(maxPadding, $(this).innerHeight() - $(this).height());
		}).height(maxHeight - maxPadding);
	} else if ( options.autoheight ) {
		var maxHeight = 0;
		options.headers.next().each(function() {
			maxHeight = Math.max(maxHeight, $(this).outerHeight());
		}).height(maxHeight);
	}

	options.headers
		.not(options.active || "")
		.next()
		.hide();
	options.active.parent().andSelf().addClass(options.selectedClass);
	
	if (options.event)
		$(container).bind((options.event) + ".ui-accordion", clickHandler);
};

$.ui.accordion.prototype = {
	activate: function(index) {
		// call clickHandler with custom event
		clickHandler.call(this.element, {
			target: findActive( this.options.headers, index )[0]
		});
	},
	
	enable: function() {
		this.options.disabled = false;
	},
	disable: function() {
		this.options.disabled = true;
	},
	destroy: function() {
		this.options.headers.next().css("display", "");
		if ( this.options.fillSpace || this.options.autoheight ) {
			this.options.headers.next().css("height", "");
		}
		$.removeData(this.element, "ui-accordion");
		$(this.element).removeClass("ui-accordion").unbind(".ui-accordion");
	}
}

function scopeCallback(callback, scope) {
	return function() {
		return callback.apply(scope, arguments);
	};
}

function completed(cancel) {
	// if removed while animated data can be empty
	if (!$.data(this, "ui-accordion"))
		return;
	var instance = $.data(this, "ui-accordion");
	var options = instance.options;
	options.running = cancel ? 0 : --options.running;
	if ( options.running )
		return;
	if ( options.clearStyle ) {
		options.toShow.add(options.toHide).css({
			height: "",
			overflow: ""
		});
	}
	$(this).triggerHandler("change.ui-accordion", [options.data], options.change);
}

function toggle(toShow, toHide, data, clickedActive, down) {
	var options = $.data(this, "ui-accordion").options;
	options.toShow = toShow;
	options.toHide = toHide;
	options.data = data;
	var complete = scopeCallback(completed, this);
	
	// count elements to animate
	options.running = toHide.size() == 0 ? toShow.size() : toHide.size();
	
	if ( options.animated ) {
		if ( !options.alwaysOpen && clickedActive ) {
			$.ui.accordion.animations[options.animated]({
				toShow: jQuery([]),
				toHide: toHide,
				complete: complete,
				down: down,
				autoheight: options.autoheight
			});
		} else {
			$.ui.accordion.animations[options.animated]({
				toShow: toShow,
				toHide: toHide,
				complete: complete,
				down: down,
				autoheight: options.autoheight
			});
		}
	} else {
		if ( !options.alwaysOpen && clickedActive ) {
			toShow.toggle();
		} else {
			toHide.hide();
			toShow.show();
		}
		complete(true);
	}
}

function clickHandler(event) {
	var options = $.data(this, "ui-accordion").options;
	if (options.disabled)
		return false;
	
	// called only when using activate(false) to close all parts programmatically
	if ( !event.target && !options.alwaysOpen ) {
		options.active.parent().andSelf().toggleClass(options.selectedClass);
		var toHide = options.active.next(),
			data = {
				instance: this,
				options: options,
				newHeader: jQuery([]),
				oldHeader: options.active,
				newContent: jQuery([]),
				oldContent: toHide
			},
			toShow = options.active = $([]);
		toggle.call(this, toShow, toHide, data );
		return false;
	}
	// get the click target
	var clicked = $(event.target);
	
	// due to the event delegation model, we have to check if one
	// of the parent elements is our actual header, and find that
	if ( clicked.parents(options.header).length )
		while ( !clicked.is(options.header) )
			clicked = clicked.parent();
	
	var clickedActive = clicked[0] == options.active[0];
	
	// if animations are still active, or the active header is the target, ignore click
	if (options.running || (options.alwaysOpen && clickedActive))
		return false;
	if (!clicked.is(options.header))
		return;

	// switch classes
	options.active.parent().andSelf().toggleClass(options.selectedClass);
	if ( !clickedActive ) {
		clicked.parent().andSelf().addClass(options.selectedClass);
	}

	// find elements to show and hide
	var toShow = clicked.next(),
		toHide = options.active.next(),
		//data = [clicked, options.active, toShow, toHide],
		data = {
			instance: this,
			options: options,
			newHeader: clicked,
			oldHeader: options.active,
			newContent: toShow,
			oldContent: toHide
		},
		down = options.headers.index( options.active[0] ) > options.headers.index( clicked[0] );
	
	options.active = clickedActive ? $([]) : clicked;
	toggle.call(this, toShow, toHide, data, clickedActive, down );

	return false;
};

function findActive(headers, selector) {
	return selector != undefined
		? typeof selector == "number"
			? headers.filter(":eq(" + selector + ")")
			: headers.not(headers.not(selector))
		: selector === false
			? $([])
			: headers.filter(":eq(0)");
}

$.extend($.ui.accordion, {
	defaults: {
		selectedClass: "selected",
		alwaysOpen: true,
		animated: 'slide',
		event: "click",
		header: "a",
		autoheight: true,
		running: 0,
		navigationFilter: function() {
			return this.href.toLowerCase() == location.href.toLowerCase();
		}
	},
	animations: {
		slide: function(options, additions) {
			options = $.extend({
				easing: "swing",
				duration: 300
			}, options, additions);
			if ( !options.toHide.size() ) {
				options.toShow.animate({height: "show"}, options);
				return;
			}
			var hideHeight = options.toHide.height(),
				showHeight = options.toShow.height(),
				difference = showHeight / hideHeight;
			options.toShow.css({ height: 0, overflow: 'hidden' }).show();
			options.toHide.filter(":hidden").each(options.complete).end().filter(":visible").animate({height:"hide"},{
				step: function(now) {
					var current = (hideHeight - now) * difference;
					if ($.browser.msie || $.browser.opera) {
						current = Math.ceil(current);
					}
					options.toShow.height( current );
				},
				duration: options.duration,
				easing: options.easing,
				complete: function() {
					if ( !options.autoheight ) {
						options.toShow.css("height", "auto");
					}
					options.complete();
				}
			});
		},
		bounceslide: function(options) {
			this.slide(options, {
				easing: options.down ? "bounceout" : "swing",
				duration: options.down ? 1000 : 200
			});
		},
		easeslide: function(options) {
			this.slide(options, {
				easing: "easeinout",
				duration: 700
			})
		}
	}
});

})(jQuery);






/*
 * Copyright (C) 1999-2009 Jive Software. All rights reserved.
 *
 * This software is the proprietary information of Jive Software. Use is subject to license terms.
 */

/*
* $ lightbox_me
* By: Buck Wilson
* Version : 2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*     http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/


(function($) {

    $.fn.lightbox_me = function(options) {



        return this.each(function() {

            var
                opts = $.extend({}, $.fn.lightbox_me.defaults, options),
                $overlay = $('<div class="' + opts.classPrefix + '_overlay"/>'),
                $self = $(this),
                $iframe = $('<iframe id="foo" style="z-index: ' + (opts.zIndex + 1) + '; display: none; border: none; margin: 0; padding: 0; position: absolute; width: 100%; height: 100%; top: 0; left: 0;"/>'),
                ie6 = ($.browser.msie && $.browser.version < 7);


            /*----------------------------------------------------
               DOM Building
            ---------------------------------------------------- */
            if (ie6) {
                var src = /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank';
                $iframe.attr('src', src);
                $('body').append($iframe);
            } // iframe shim for ie6, to hide select elements
            $('body').append($self).append($overlay);


            /*----------------------------------------------------
               CSS stuffs
            ---------------------------------------------------- */

            // set css of the modal'd window

            setSelfPosition();
            $self.css({left: '50%', marginLeft: ($self.outerWidth() / 2) * -1,  zIndex: (opts.zIndex + 3) });


            // set css of the overlay

            setOverlayHeight(); // pulled this into a function because it is called on window resize.
            $overlay
                    .css({ position: 'absolute', width: '100%', top: 0, left: 0, right: 0, bottom: 0, zIndex: (opts.zIndex + 2), display: 'none' })
                    .css(opts.overlayCSS);


            /*----------------------------------------------------
               Animate it in.
            ---------------------------------------------------- */

            $overlay.fadeIn(opts.overlaySpeed, function() {
                $self[opts.appearEffect](opts.lightboxSpeed, function() { setOverlayHeight(); opts.onLoad()});
            });



            /*----------------------------------------------------
               Bind Events
            ---------------------------------------------------- */

            $(window).resize(setOverlayHeight)
                     .resize(setSelfPosition)
                     .scroll(setSelfPosition)
                     .keypress(observeEscapePress);
            $self.find(opts.closeSelector).add($overlay).click(function() { closeLightbox(); return false; });
            $self.bind('close', closeLightbox);
            $self.bind('resize', setSelfPosition);

            

            /*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
              -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */


            /*----------------------------------------------------

               Private Functions
            ---------------------------------------------------- */

            /* Remove or hide all elements */
            function closeLightbox() {
                if (opts.destroyOnClose) {
                    $self.add($overlay).remove();
                } else {
                    $self.add($overlay).hide();
                }

                $iframe.remove();

                $(window).unbind('resize', setOverlayHeight);
                $(window).unbind('resize', setSelfPosition);

                opts.onClose();
            }


            /* Function to bind to the window to observe the escape key press */
            function observeEscapePress(e) {
                if(e.keyCode == 27 || (e.DOM_VK_ESCAPE == 27 && e.which==0)) closeLightbox();
            }


            /* Set the height of the overlay
                    : if the document height is taller than the window, then set the overlay height to the document height.
                    : otherwise, just set overlay height: 100%
            */
            function setOverlayHeight() {
                if ($(window).height() < $(document).height()) {
                    $overlay.css({height: $(document).height() + 'px'});
                } else {
                    $overlay.css({height: '100%'});
                    if (ie6) {$('html,body').css('height','100%'); } // ie6 hack for height: 100%; TODO: handle this in IE7
                }
            }


            /* Set the position of the modal'd window ($self)
                    : if $self is taller than the window, then make it absolutely positioned
                    : otherwise fixed
            */
            function setSelfPosition() {
                var s = $self[0].style;

                if (($self.height() + 80  >= $(window).height()) && ($self.css('position') != 'absolute' || ie6)) {
                    var topOffset = $(document).scrollTop() + 40;
                    $self.css({position: 'absolute', top: topOffset + 'px', marginTop: 0})
                    if (ie6) {
                        s.removeExpression('top');
                    }
                } else if ($self.height()+ 80  < $(window).height()) {
                    if (ie6) {
                        s.position = 'absolute';
                        if (opts.centered) {
                            s.setExpression('top', '(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"')
                            s.marginTop = 0;
                        } else {
                            var top = (opts.modalCSS && opts.modalCSS.top) ? parseInt(opts.modalCSS.top) : 0;
                            s.setExpression('top', '((blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + '+top+') + "px"')
                        }
                    } else {
                        if (opts.centered) {
                            $self.css({ position: 'fixed', top: '50%', marginTop: ($self.outerHeight() / 2) * -1})
                        } else {
                            $self.css({ position: 'fixed'}).css(opts.modalCSS);
                        }

                    }
                }
            }

        });



    };


    $.fn.lightbox_me.defaults = {

        // animation
        appearEffect: "fadeIn",
        overlaySpeed: 300,
        lightboxSpeed: "fast",

        // close
        closeSelector: ".close",
        closeClick: true,
        closeEsc: true,

        // behavior
        destroyOnClose: false,

        // callbacks
        onLoad: function() {},
        onClose: function() {},

        // style
        classPrefix: 'lb',
        zIndex: 999,
        centered: false,
        modalCSS: {top: '40px'},
        overlayCSS: {background: 'black', opacity: .6}
    }


})(jQuery);



/*
 * Copyright (c) 2009 Simo Kinnunen.
 * Licensed under the MIT license.
 */
var Cufon=(function(){var K=function(){return K.replace.apply(null,arguments)};var U=K.DOM={ready:(function(){var Z=false,b={loaded:1,complete:1};var Y=[],a=function(){if(Z){return}Z=true;for(var c;c=Y.shift();c()){}};if(document.addEventListener){document.addEventListener("DOMContentLoaded",a,false);window.addEventListener("pageshow",a,false)}if(!window.opera&&document.readyState){(function(){b[document.readyState]?a():setTimeout(arguments.callee,10)})()}if(document.readyState&&document.createStyleSheet){(function(){try{document.body.doScroll("left");a()}catch(c){setTimeout(arguments.callee,1)}})()}O(window,"load",a);return function(c){if(!arguments.length){a()}else{Z?c():Y.push(c)}}})()};var L=K.CSS={Size:function(Z,Y){this.value=parseFloat(Z);this.unit=String(Z).match(/[a-z%]*$/)[0]||"px";this.convert=function(a){return a/Y*this.value};this.convertFrom=function(a){return a/this.value*Y};this.toString=function(){return this.value+this.unit}},getStyle:function(Z){var Y=document.defaultView;if(Y&&Y.getComputedStyle){return new A(Y.getComputedStyle(Z,null))}if(Z.currentStyle){return new A(Z.currentStyle)}return new A(Z.style)},ready:(function(){var a=false;var Z=[],b=function(){a=true;for(var d;d=Z.shift();d()){}};var Y=Object.prototype.propertyIsEnumerable?F("style"):{length:0};var c=F("link");U.ready(function(){var g=0,f;for(var e=0,d=c.length;f=c[e],e<d;++e){if(!f.disabled&&f.rel.toLowerCase()=="stylesheet"){++g}}if(document.styleSheets.length>=Y.length+g){b()}else{setTimeout(arguments.callee,10)}});return function(d){if(a){d()}else{Z.push(d)}}})(),supports:function(a,Z){var Y=document.createElement("span").style;if(Y[a]===undefined){return false}Y[a]=Z;return Y[a]===Z},textAlign:function(b,a,Y,Z){if(a.get("textAlign")=="right"){if(Y>0){b=" "+b}}else{if(Y<Z-1){b+=" "}}return b},textDecoration:function(d,c){if(!c){c=this.getStyle(d)}var Z={underline:null,overline:null,"line-through":null};for(var Y=d;Y.parentNode&&Y.parentNode.nodeType==1;){var b=true;for(var a in Z){if(Z[a]){continue}if(c.get("textDecoration").indexOf(a)!=-1){Z[a]=c.get("color")}b=false}if(b){break}c=this.getStyle(Y=Y.parentNode)}return Z},textShadow:I(function(c){if(c=="none"){return null}var b=[],d={},Y,Z=0;var a=/(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)|(-?[\d.]+[a-z%]*)|,/ig;while(Y=a.exec(c)){if(Y[0]==","){b.push(d);d={},Z=0}else{if(Y[1]){d.color=Y[1]}else{d[["offX","offY","blur"][Z++]]=Y[2]}}}b.push(d);return b}),color:I(function(Z){var Y={};Y.color=Z.replace(/^rgba\((.*?),\s*([\d.]+)\)/,function(b,a,c){Y.opacity=parseFloat(c);return"rgb("+a+")"});return Y}),textTransform:function(Z,Y){return Z[{uppercase:"toUpperCase",lowercase:"toLowerCase"}[Y.get("textTransform")]||"toString"]()}};function Q(Z){var Y=this.face=Z.face;this.glyphs=Z.glyphs;this.w=Z.w;this.baseSize=parseInt(Y["units-per-em"],10);this.family=Y["font-family"].toLowerCase();this.weight=Y["font-weight"];this.style=Y["font-style"]||"normal";this.viewBox=(function(){var b=Y.bbox.split(/\s+/);var a={minX:parseInt(b[0],10),minY:parseInt(b[1],10),maxX:parseInt(b[2],10),maxY:parseInt(b[3],10)};a.width=a.maxX-a.minX,a.height=a.maxY-a.minY;a.toString=function(){return[this.minX,this.minY,this.width,this.height].join(" ")};return a})();this.ascent=-parseInt(Y.ascent,10);this.descent=-parseInt(Y.descent,10);this.height=-this.ascent+this.descent}function E(){var Z={},Y={oblique:"italic",italic:"oblique"};this.add=function(a){(Z[a.style]||(Z[a.style]={}))[a.weight]=a};this.get=function(e,f){var d=Z[e]||Z[Y[e]]||Z.normal||Z.italic||Z.oblique;if(!d){return null}f={normal:400,bold:700}[f]||parseInt(f,10);if(d[f]){return d[f]}var b={1:1,99:0}[f%100],h=[],c,a;if(b===undefined){b=f>400}if(f==500){f=400}for(var g in d){g=parseInt(g,10);if(!c||g<c){c=g}if(!a||g>a){a=g}h.push(g)}if(f<c){f=c}if(f>a){f=a}h.sort(function(j,i){return(b?(j>f&&i>f)?j<i:j>i:(j<f&&i<f)?j>i:j<i)?-1:1});return d[h[0]]}}function P(){function a(c,d){if(c.contains){return c.contains(d)}return c.compareDocumentPosition(d)&16}function Y(d){var c=d.relatedTarget;if(!c||a(this,c)){return}Z(this)}function b(c){Z(this)}function Z(c){setTimeout(function(){K.replace(c,D.get(c).options,true)},10)}this.attach=function(c){if(c.onmouseenter===undefined){O(c,"mouseover",Y);O(c,"mouseout",Y)}else{O(c,"mouseenter",b);O(c,"mouseleave",b)}}}function X(){var a={},Y=0;function Z(b){return b.cufid||(b.cufid=++Y)}this.get=function(b){var c=Z(b);return a[c]||(a[c]={})}}function A(Y){var a={},Z={};this.get=function(b){return a[b]!=undefined?a[b]:Y[b]};this.getSize=function(c,b){return Z[c]||(Z[c]=new L.Size(this.get(c),b))};this.extend=function(b){for(var c in b){a[c]=b[c]}return this}}function O(Z,Y,a){if(Z.addEventListener){Z.addEventListener(Y,a,false)}else{if(Z.attachEvent){Z.attachEvent("on"+Y,function(){return a.call(Z,window.event)})}}}function R(Z,Y){var a=D.get(Z);if(a.options){return Z}if(Y.hover&&Y.hoverables[Z.nodeName.toLowerCase()]){B.attach(Z)}a.options=Y;return Z}function I(Y){var Z={};return function(a){if(!Z.hasOwnProperty(a)){Z[a]=Y.apply(null,arguments)}return Z[a]}}function C(d,c){if(!c){c=L.getStyle(d)}var Z=c.get("fontFamily").split(/\s*,\s*/),b;for(var a=0,Y=Z.length;a<Y;++a){b=Z[a].replace(/^(["'])(.*?)\1$/,"$2").toLowerCase();if(H[b]){return H[b].get(c.get("fontStyle"),c.get("fontWeight"))}}return null}function F(Y){return document.getElementsByTagName(Y)}function G(){var Y={},b;for(var a=0,Z=arguments.length;a<Z;++a){for(b in arguments[a]){Y[b]=arguments[a][b]}}return Y}function M(b,k,Z,m,c,a){var j=m.separate;if(j=="none"){return W[m.engine].apply(null,arguments)}var h=document.createDocumentFragment(),e;var f=k.split(N[j]),Y=(j=="words");if(Y&&S){if(/^\s/.test(k)){f.unshift("")}if(/\s$/.test(k)){f.push("")}}for(var g=0,d=f.length;g<d;++g){e=W[m.engine](b,Y?L.textAlign(f[g],Z,g,d):f[g],Z,m,c,a,g<d-1);if(e){h.appendChild(e)}}return h}function J(Z,g){var a,Y,d,f;for(var b=R(Z,g).firstChild;b;b=d){d=b.nextSibling;f=false;if(b.nodeType==1){if(!b.firstChild){continue}if(!/cufon/.test(b.className)){arguments.callee(b,g);continue}else{f=true}}if(!Y){Y=L.getStyle(Z).extend(g)}if(!a){a=C(Z,Y)}if(!a){continue}if(f){W[g.engine](a,null,Y,g,b,Z);continue}var e=b.data;if(e===""){continue}var c=M(a,e,Y,g,b,Z);if(c){b.parentNode.replaceChild(c,b)}else{b.parentNode.removeChild(b)}}}var S=" ".split(/\s+/).length==0;var D=new X();var B=new P();var V=[];var W={},H={},T={enableTextDecoration:false,engine:null,hover:false,hoverables:{a:true},printable:true,selector:(window.Sizzle||(window.jQuery&&function(Y){return jQuery(Y)})||(window.dojo&&dojo.query)||(window.$$&&function(Y){return $$(Y)})||(window.$&&function(Y){return $(Y)})||(document.querySelectorAll&&function(Y){return document.querySelectorAll(Y)})||F),separate:"words",textShadow:"none"};var N={words:/\s+/,characters:""};K.now=function(){U.ready();return K};K.refresh=function(){var a=V.splice(0,V.length);for(var Z=0,Y=a.length;Z<Y;++Z){K.replace.apply(null,a[Z])}return K};K.registerEngine=function(Z,Y){if(!Y){return K}W[Z]=Y;return K.set("engine",Z)};K.registerFont=function(a){var Y=new Q(a),Z=Y.family;if(!H[Z]){H[Z]=new E()}H[Z].add(Y);return K.set("fontFamily",Z)};K.replace=function(a,Z,Y){Z=G(T,Z);if(!Z.engine){return K}if(typeof Z.textShadow=="string"){Z.textShadow=L.textShadow(Z.textShadow)}if(!Y){V.push(arguments)}if(a.nodeType||typeof a=="string"){a=[a]}L.ready(function(){for(var c=0,b=a.length;c<b;++c){var d=a[c];if(typeof d=="string"){K.replace(Z.selector(d),Z,true)}else{J(d,Z)}}});return K};K.set=function(Y,Z){T[Y]=Z;return K};return K})();Cufon.registerEngine("canvas",(function(){var B=document.createElement("canvas");if(!B||!B.getContext||!B.getContext.apply){return}B=null;var A=Cufon.CSS.supports("display","inline-block");var E=!A&&(document.compatMode=="BackCompat"||/frameset|transitional/i.test(document.doctype.publicId));var F=document.createElement("style");F.type="text/css";F.appendChild(document.createTextNode(".cufon-canvas{text-indent:0}@media screen,projection{.cufon-canvas{display:inline;display:inline-block;position:relative;vertical-align:middle"+(E?"":";font-size:1px;line-height:1px")+"}.cufon-canvas .cufon-alt{display:-moz-inline-box;display:inline-block;width:0;height:0;overflow:hidden}"+(A?".cufon-canvas canvas{position:relative}":".cufon-canvas canvas{position:absolute}")+"}@media print{.cufon-canvas{padding:0 !important}.cufon-canvas canvas{display:none}.cufon-canvas .cufon-alt{display:inline}}"));document.getElementsByTagName("head")[0].appendChild(F);function D(O,H){var M=0,L=0;var G=[],N=/([mrvxe])([^a-z]*)/g,J;generate:for(var I=0;J=N.exec(O);++I){var K=J[2].split(",");switch(J[1]){case"v":G[I]={m:"bezierCurveTo",a:[M+~~K[0],L+~~K[1],M+~~K[2],L+~~K[3],M+=~~K[4],L+=~~K[5]]};break;case"r":G[I]={m:"lineTo",a:[M+=~~K[0],L+=~~K[1]]};break;case"m":G[I]={m:"moveTo",a:[M=~~K[0],L=~~K[1]]};break;case"x":G[I]={m:"closePath"};break;case"e":break generate}H[G[I].m].apply(H,G[I].a)}return G}function C(K,J){for(var I=0,H=K.length;I<H;++I){var G=K[I];J[G.m].apply(J,G.a)}}return function(q,T,k,P,X,r){var I=(T===null);var V=q.viewBox;var J=k.getSize("fontSize",q.baseSize);var h=k.get("letterSpacing");h=(h=="normal")?0:J.convertFrom(parseInt(h,10));var W=0,j=0,f=0,R=0;var U=P.textShadow,d=[];if(U){for(var p=0,m=U.length;p<m;++p){var Z=U[p];var c=J.convertFrom(parseFloat(Z.offX));var b=J.convertFrom(parseFloat(Z.offY));d[p]=[c,b];if(b<W){W=b}if(c>j){j=c}if(b>f){f=b}if(c<R){R=c}}}var u=Cufon.CSS.textTransform(I?X.alt:T,k).split("");var G=0,S=null;for(var p=0,m=u.length;p<m;++p){var Q=q.glyphs[u[p]]||q.missingGlyph;if(!Q){continue}G+=S=Number(Q.w||q.w)+h}if(S===null){return null}j+=(V.width-S);R+=V.minX;var O,K;if(I){O=X;K=X.firstChild}else{O=document.createElement("span");O.className="cufon cufon-canvas";O.alt=T;K=document.createElement("canvas");O.appendChild(K);if(P.printable){var n=document.createElement("span");n.className="cufon-alt";n.appendChild(document.createTextNode(T));O.appendChild(n)}}var v=O.style;var a=K.style;var H=J.convert(V.height-W+f);var t=Math.ceil(H);var e=t/H;K.width=Math.ceil(J.convert(G+j-R)*e);K.height=t;W+=V.minY;a.top=Math.round(J.convert(W-q.ascent))+"px";a.left=Math.round(J.convert(R))+"px";var N=Math.ceil(J.convert(G*e))+"px";if(A){v.width=N;v.height=J.convert(q.height)+"px"}else{v.paddingLeft=N;v.paddingBottom=(J.convert(q.height)-1)+"px"}var s=K.getContext("2d"),Y=t/V.height;s.scale(Y,Y);s.translate(-R,-W);s.lineWidth=q.face["underline-thickness"];s.save();function L(i,g){s.strokeStyle=g;s.beginPath();s.moveTo(0,i);s.lineTo(G,i);s.stroke()}var M=P.enableTextDecoration?Cufon.CSS.textDecoration(r,k):{};if(M.underline){L(-q.face["underline-position"],M.underline)}if(M.overline){L(q.ascent,M.overline)}s.fillStyle=k.get("color");function o(){for(var w=0,g=u.length;w<g;++w){var x=q.glyphs[u[w]]||q.missingGlyph;if(!x){continue}s.beginPath();if(x.d){if(x.code){C(x.code,s)}else{x.code=D("m"+x.d,s)}}s.fill();s.translate(Number(x.w||q.w)+h,0)}}if(U){for(var p=0,m=U.length;p<m;++p){var Z=U[p];s.save();s.fillStyle=Z.color;s.translate.apply(s,d[p]);o();s.restore()}}o();s.restore();if(M["line-through"]){L(-q.descent,M["line-through"])}return O}})());Cufon.registerEngine("vml",(function(){if(!document.namespaces){return}if(document.namespaces.cvml==null){document.namespaces.add("cvml","urn:schemas-microsoft-com:vml")}var B=document.createElement("cvml:shape");B.style.behavior="url(#default#VML)";if(!B.coordsize){return}B=null;document.write('<style type="text/css">.cufon-vml-canvas{text-indent:0}@media screen{cvml\\:shape,cvml\\:group,cvml\\:shadow{behavior:url(#default#VML);display:block;antialias:true;position:absolute}.cufon-vml-canvas{position:absolute;text-align:left}.cufon-vml{display:inline-block;position:relative;vertical-align:middle}.cufon-vml .cufon-alt{position:absolute;left:-10000in;font-size:1px}a .cufon-vml{cursor:pointer}}@media print{.cufon-vml *{display:none}.cufon-vml .cufon-alt{display:inline}}</style>');function C(D,E){return A(D,/(?:em|ex|%)$/i.test(E)?"1em":E)}function A(G,H){if(/px$/i.test(H)){return parseFloat(H)}var F=G.style.left,E=G.runtimeStyle.left;G.runtimeStyle.left=G.currentStyle.left;G.style.left=H;var D=G.style.pixelLeft;G.style.left=F;G.runtimeStyle.left=E;return D}return function(s,V,n,S,Z,t,j){var G=(V===null);if(G){V=Z.alt}var X=s.viewBox;var H=n.computedFontSize||(n.computedFontSize=new Cufon.CSS.Size(C(t,n.get("fontSize"))+"px",s.baseSize));var h=n.computedLSpacing;if(h==undefined){h=n.get("letterSpacing");n.computedLSpacing=h=(h=="normal")?0:~~H.convertFrom(A(t,h))}var P,I;if(G){P=Z;I=Z.firstChild}else{P=document.createElement("span");P.className="cufon cufon-vml";P.alt=V;I=document.createElement("span");I.className="cufon-vml-canvas";P.appendChild(I);if(S.printable){var q=document.createElement("span");q.className="cufon-alt";q.appendChild(document.createTextNode(V));P.appendChild(q)}if(!j){P.appendChild(document.createElement("cvml:group"))}}var y=P.style;var c=I.style;var E=H.convert(X.height),v=Math.ceil(E);var g=v/E;var f=X.minX,e=X.minY;c.height=v;c.top=Math.round(H.convert(e-s.ascent));c.left=Math.round(H.convert(f));y.height=H.convert(s.height)+"px";var L=S.enableTextDecoration?Cufon.CSS.textDecoration(t,n):{};var U=n.get("color");var w=Cufon.CSS.textTransform(V,n).split("");var D=0,d=0,M=null;var T,N,W=S.textShadow;for(var r=0,p=0,o=w.length;r<o;++r){T=s.glyphs[w[r]]||s.missingGlyph;if(T){D+=M=~~(T.w||s.w)+h}}if(M===null){return null}var O=-f+D+(X.width-M);var x=H.convert(O*g),m=Math.round(x);var b=O+","+X.height,F;var Y="r"+b+"nsnf";for(r=0;r<o;++r){T=s.glyphs[w[r]]||s.missingGlyph;if(!T){continue}if(G){N=I.childNodes[p];if(N.firstChild){N.removeChild(N.firstChild)}}else{N=document.createElement("cvml:shape");I.appendChild(N)}N.stroked="f";N.coordsize=b;N.coordorigin=F=(f-d)+","+e;N.path=(T.d?"m"+T.d+"xe":"")+"m"+F+Y;N.fillcolor=U;var u=N.style;u.width=m;u.height=v;if(W){var K=W[0],J=W[1];var R=Cufon.CSS.color(K.color),Q;var a=document.createElement("cvml:shadow");a.on="t";a.color=R.color;a.offset=K.offX+","+K.offY;if(J){Q=Cufon.CSS.color(J.color);a.type="double";a.color2=Q.color;a.offset2=J.offX+","+J.offY}a.opacity=R.opacity||(Q&&Q.opacity)||1;N.appendChild(a)}d+=~~(T.w||s.w)+h;++p}y.width=Math.max(Math.ceil(H.convert(D*g)),0);return P}})());






/*!
 * The following copyright notice may not be removed under any circumstances.
 * 
 * Copyright:
 * Copyright (c) 2009 by Jos Buivenga. All rights reserved.
 * 
 * Trademark:
 * Museo Slab is a trademark of Jos Buivenga.
 * 
 * Full name:
 * MuseoSlab-500
 * 
 * Description:
 * Spaced and kerned with iKern.
 * 
 * Manufacturer:
 * Jos Buivenga
 * 
 * Designer:
 * Jos Buivenga
 * 
 * Vendor URL:
 * http://www.exljbris.com
 */
Cufon.registerFont({"w":220,"face":{"font-family":"Museo Slab 500","font-weight":400,"font-stretch":"normal","units-per-em":"360","panose-1":"2 0 0 0 0 0 0 0 0 0","ascent":"270","descent":"-90","x-height":"4","bbox":"-6 -318 357 75.737","underline-thickness":"18","underline-position":"-18","stemh":"27","stemv":"35","unicode-range":"U+0020-U+007E"},"glyphs":{" ":{"w":90},"!":{"d":"29,-70r-3,-184r36,0r-2,184r-31,0xm27,0r0,-35r36,0r0,35r-36,0","w":88},"\"":{"d":"73,-182r0,-76r28,0r0,76r-28,0xm23,-182r0,-76r27,0r0,76r-27,0","w":123,"k":{",":30,".":30,"4":4,"A":17,"J":16,"d":5,"e":5,"g":3,"c":5,"o":5,"q":4}},"#":{"d":"50,0r12,-69r-47,0r4,-26r48,0r10,-61r-46,0r4,-26r47,0r12,-72r29,0r-12,72r56,0r12,-72r30,0r-13,72r47,0r-4,26r-47,0r-11,61r47,0r-5,26r-47,0r-11,69r-30,0r12,-69r-56,0r-12,69r-29,0xm96,-95r56,0r10,-61r-55,0","w":258},"$":{"d":"15,-35r20,-25v0,0,27,27,64,27v24,0,45,-14,45,-37v0,-50,-125,-38,-125,-116v0,-33,27,-60,67,-66r0,-39r26,0r0,39v40,3,62,24,62,24r-16,28v0,0,-25,-22,-56,-22v-28,0,-47,16,-47,36v0,53,125,38,125,114v0,35,-26,65,-68,70r0,39r-26,0r0,-39v-46,-5,-71,-33,-71,-33","w":195},"%":{"d":"70,-152v-30,0,-55,-23,-55,-53v0,-29,25,-53,55,-53v30,0,55,24,55,53v0,30,-25,53,-55,53xm21,0r194,-254r34,0r-194,254r-34,0xm70,-179v15,0,26,-11,26,-26v0,-15,-11,-27,-26,-27v-15,0,-27,12,-27,27v0,15,12,26,27,26xm146,-49v0,-29,24,-53,55,-53v30,0,54,24,54,53v0,30,-24,53,-54,53v-31,0,-55,-23,-55,-53xm174,-49v0,15,12,27,27,27v15,0,26,-12,26,-27v0,-15,-11,-27,-26,-27v-15,0,-27,12,-27,27","w":270},"&":{"d":"110,4v-95,0,-125,-111,-46,-140v1,-3,-34,-11,-36,-57v-2,-52,62,-73,113,-62r-9,29v-29,-7,-67,5,-67,37v0,17,7,40,47,40r54,0r0,-35r35,0r0,35r33,0r0,30r-33,0v7,76,-22,123,-91,123xm54,-74v0,26,21,46,56,46v46,0,61,-37,56,-91v-52,-2,-112,-3,-112,45","w":243,"k":{"V":4}},"'":{"d":"23,-182r0,-76r28,0r0,76r-28,0","w":73,"k":{",":30,".":30,"4":4,"A":17,"J":16,"d":5,"e":5,"g":3,"c":5,"o":5,"q":4}},"(":{"d":"67,34v-52,-83,-59,-216,0,-299r30,0v-55,90,-52,205,0,299r-30,0","w":113},")":{"d":"16,34v53,-94,56,-209,0,-299r30,0v58,83,52,216,0,299r-30,0","w":113},"*":{"d":"58,-118r-26,-19r32,-40r-49,-14r9,-30r48,18r-3,-51r33,0r-3,51r49,-18r10,30r-50,14r32,40r-26,19r-28,-43","w":172,"k":{"A":10,"J":15}},"+":{"d":"15,-89r0,-28r81,0r0,-88r29,0r0,88r81,0r0,28r-81,0r0,89r-29,0r0,-89r-81,0","k":{"7":7,"3":4}},",":{"d":"7,45r25,-83r37,0r-34,83r-28,0","w":93,"k":{"4":5,"\"":30,"'":30}},"-":{"d":"33,-87r0,-31r105,0r0,31r-105,0","w":171,"k":{"7":8,"3":9,"2":5,"1":8,"Y":24,"A":8,"B":6,"D":6,"E":6,"F":6,"H":6,"I":6,"K":6,"L":6,"N":6,"P":6,"R":6,"M":6,"T":25,"U":5,"V":14,"W":10,"X":12,"Z":12}},".":{"d":"27,0r0,-38r38,0r0,38r-38,0","w":92,"k":{"v":7,"V":24,"4":5,"Y":12,"\"":30,"'":30,"T":12,"U":7,"W":15,"C":5,"G":5,"O":5,"Q":5,"w":4,"y":8}},"\/":{"d":"15,15r92,-283r31,0r-92,283r-31,0","w":152,"k":{"A":5}},"0":{"d":"112,4v-68,0,-90,-58,-90,-131v0,-73,22,-131,90,-131v68,0,90,58,90,131v0,73,-22,131,-90,131xm112,-28v41,0,53,-43,53,-99v0,-55,-12,-100,-53,-100v-42,0,-54,45,-54,100v0,56,12,99,54,99","w":223},"1":{"d":"18,0r0,-30r57,0r-1,-181v-4,7,-27,30,-36,38r-21,-22r60,-59r32,0r0,224r56,0r0,30r-147,0","w":172},"2":{"d":"19,0v-17,-107,124,-117,125,-184v0,-26,-19,-43,-46,-43v-33,0,-52,34,-52,34r-25,-17v0,0,22,-48,80,-48v46,0,80,29,80,73v0,82,-123,94,-124,155r103,0r0,-33r32,0r0,63r-173,0","w":210},"3":{"d":"25,-192r0,-62r155,0r0,25r-67,79v32,3,72,24,72,73v0,44,-34,81,-87,81v-52,0,-83,-34,-83,-34r19,-26v0,0,26,28,62,28v28,0,52,-20,52,-48v0,-35,-34,-52,-71,-46r-9,-19r72,-85v-24,2,-57,1,-84,1r0,33r-31,0","w":205},"4":{"d":"9,-68r0,-22r118,-164r40,0r0,157r35,0r0,29r-35,0r0,68r-35,0r0,-68r-123,0xm134,-216v-24,40,-60,80,-86,119r84,0","w":215},"5":{"d":"15,-28r19,-26v0,0,21,26,58,26v32,0,57,-23,57,-52v0,-31,-23,-52,-58,-52v-46,0,-39,21,-65,5r13,-127r131,0r0,62r-31,0r0,-33r-70,0v-1,23,-8,50,-7,71v0,0,14,-8,36,-8v53,0,88,36,88,81v0,48,-39,85,-92,85v-51,0,-79,-32,-79,-32","w":203},"6":{"d":"115,4v-55,0,-95,-47,-95,-118v0,-67,36,-144,116,-144v29,0,48,10,48,10r-11,30v0,0,-16,-9,-37,-9v-47,0,-71,44,-76,87v42,-51,139,-15,139,59v0,50,-36,85,-84,85xm58,-96v0,30,23,68,57,68v30,0,47,-22,47,-53v0,-31,-19,-54,-54,-54v-28,0,-50,18,-50,39","w":214},"7":{"d":"37,0r113,-226v-30,2,-71,0,-104,1r0,33r-32,0r0,-62r175,0r0,24r-115,230r-37,0","w":195,"k":{"4":4}},"8":{"d":"19,-72v0,-41,34,-64,41,-69v-54,-33,-33,-117,49,-117v48,0,80,26,80,66v0,35,-25,62,-30,67v66,33,34,129,-51,129v-51,0,-89,-32,-89,-76xm65,-192v0,29,33,39,67,54v4,-5,22,-25,22,-50v0,-25,-18,-40,-45,-40v-28,0,-44,16,-44,36xm55,-75v0,29,25,48,53,48v27,0,51,-18,51,-43v0,-30,-33,-38,-73,-56v-7,5,-31,23,-31,51","w":216},"9":{"d":"16,-173v0,-50,36,-85,84,-85v55,0,95,47,95,118v0,67,-36,144,-116,144v-29,0,-49,-10,-49,-10r11,-30v0,0,16,8,37,8v46,1,76,-45,77,-86v-43,48,-139,14,-139,-59xm53,-173v0,30,19,52,53,52v28,0,51,-17,51,-38v0,-30,-24,-68,-57,-68v-29,0,-47,23,-47,54","w":214},":":{"d":"35,0r0,-38r37,0r0,38r-37,0xm35,-144r0,-38r37,0r0,38r-37,0","w":107},";":{"d":"37,-144r0,-38r36,0r0,38r-36,0xm15,45r22,-83r37,0r-30,83r-29,0","w":107},"<":{"d":"21,-91r0,-23r168,-75r0,32r-129,55r129,54r0,32"},"=":{"d":"24,-122r0,-28r172,0r0,28r-172,0xm24,-54r0,-28r172,0r0,28r-172,0","k":{"7":6,"1":4}},">":{"d":"32,-16r0,-32r129,-55r-129,-54r0,-32r168,75r0,23"},"?":{"d":"53,-70v-10,-68,59,-77,61,-121v0,-20,-17,-35,-41,-35v-23,0,-41,15,-41,15r-19,-25v0,0,24,-23,63,-23v41,0,75,26,75,66v-1,66,-73,61,-64,123r-34,0xm52,0r0,-35r37,0r0,35r-37,0","w":168},"@":{"d":"15,-87v0,-74,57,-133,137,-133v107,1,87,82,88,175r26,0r0,26r-98,0v-45,0,-74,-32,-74,-68v-1,-49,50,-75,113,-67v0,-20,-22,-37,-57,-37v-58,0,-100,48,-100,105v0,56,42,103,103,103r0,28v-80,0,-138,-58,-138,-132xm129,-87v0,37,36,47,78,42r0,-85v-42,-4,-78,5,-78,43","w":283,"k":{"Y":6,"W":5,"V":6}},"A":{"d":"4,0r0,-28r24,0r81,-226r41,0r81,226r25,0r0,28r-89,0r0,-28r27,0r-19,-57r-90,0r-20,57r27,0r0,28r-88,0xm94,-113r72,0r-37,-108v-7,36,-24,74,-35,108","w":259,"k":{"Y":19,"d":2,"e":3,"g":3,"c":3,"o":3,"q":2,"\"":17,"'":17,"T":18,"U":12,"V":22,"W":17,"C":6,"G":6,"O":6,"Q":6,"w":13,"y":14,"s":1,"v":14,"*":10,"-":8,"\\":5,"b":2,"f":1,"i":1,"j":4,"l":3,"m":1,"n":1,"r":1,"p":4,"t":6,"u":6}},"B":{"d":"224,-72v0,46,-34,72,-85,72r-120,0r0,-28r32,0r0,-198r-32,0r0,-28v84,3,195,-21,195,65v0,26,-14,43,-32,55v27,8,42,33,42,62xm177,-186v0,-45,-46,-40,-90,-39r0,78v43,1,90,6,90,-39xm87,-30v50,2,101,5,101,-44v0,-49,-52,-46,-101,-44r0,88","w":244,"k":{"x":2,"p":1,"V":3,"Y":3,"A":2,"W":3,"f":1,"i":1,"j":1,"m":1,"n":1,"r":1,"h":2,"k":2,"z":1}},"C":{"d":"18,-129v0,-75,57,-129,130,-129v31,0,96,11,96,50r0,31r-33,0v9,-41,-30,-51,-62,-51v-54,0,-94,40,-94,98v0,60,41,103,96,103v26,-1,76,-8,64,-50r33,0r0,31v0,37,-64,50,-99,50v-76,0,-131,-59,-131,-133","w":267},"D":{"d":"262,-127v0,80,-50,128,-134,127r-109,0r0,-28r32,0r0,-198r-32,0r0,-28r108,0v87,-3,135,46,135,127xm224,-127v0,-78,-51,-106,-137,-98r0,195v85,8,137,-20,137,-97","w":280,"k":{"Y":7,",":5,".":5,"A":5,"B":3,"D":3,"E":3,"F":3,"H":3,"I":3,"K":3,"L":3,"N":3,"P":3,"R":3,"M":3,"U":2,"V":5,"W":4,"X":9,"b":1,"l":1,"h":4,"k":4}},"E":{"d":"19,0r0,-28r32,0r0,-198r-32,0r0,-28r184,0r0,59r-31,0r0,-30r-85,0r0,82r90,0r0,30r-90,0r0,83r91,0r0,-30r31,0r0,60r-190,0","w":227,"k":{"g":1,"c":1,"o":1,"w":4,"y":4,"v":4,"-":7,"j":3,"p":3,"t":2,"u":3}},"F":{"d":"19,0r0,-28r32,0r0,-198r-32,0r0,-28r176,0r0,60r-31,0r0,-29r-77,0r0,84r88,0r0,30r-88,0r0,81r34,0r0,28r-102,0","w":207,"k":{"x":13,"v":1,"q":6,"p":3,";":3,",":17,".":18,"A":15,"J":14,"d":6,"e":7,"g":6,"c":7,"o":7,"y":1,"s":10,"a":12,"-":4,"f":4,"i":3,"j":2,"m":4,"n":4,"r":4,"t":1,"u":3,"z":4}},"G":{"d":"18,-128v0,-75,54,-130,133,-130v45,0,97,18,97,50r0,31r-33,0v8,-41,-24,-51,-63,-51v-59,0,-97,41,-97,99v0,59,38,102,98,102v23,0,68,-7,68,-32r0,-33r-50,0r0,-28r83,0r0,71v0,39,-66,53,-104,53v-78,0,-132,-57,-132,-132","w":275,"k":{"Y":2,"A":2,"V":2,"W":2}},"H":{"d":"19,0r0,-28r32,0r0,-198r-32,0r0,-28r100,0r0,28r-32,0r0,84r132,0r0,-84r-33,0r0,-28r100,0r0,28r-31,0r0,198r31,0r0,28r-100,0r0,-28r33,0r0,-84r-132,0r0,84r32,0r0,28r-100,0","w":305,"k":{"d":5,"e":6,"g":6,"c":6,"o":6,"q":5,"C":3,"G":3,"O":3,"Q":3,"w":6,"y":6,"s":1,"v":6,"-":6,"f":1,"i":1,"j":4,"m":1,"n":1,"r":1,"p":6,"t":4,"u":6}},"I":{"d":"19,0r0,-28r32,0r0,-198r-32,0r0,-28r100,0r0,28r-32,0r0,198r32,0r0,28r-100,0","w":137,"k":{"d":5,"e":6,"g":6,"c":6,"o":6,"q":5,"C":3,"G":3,"O":3,"Q":3,"w":6,"y":6,"s":1,"v":6,"-":6,"f":1,"i":1,"j":4,"m":1,"n":1,"r":1,"p":6,"t":4,"u":6}},"J":{"d":"82,4v-40,0,-79,-29,-73,-90r35,0v-2,32,7,57,39,58v20,0,38,-12,38,-47r0,-151r-36,0r0,-28r101,0r0,28r-29,0r0,154v0,54,-38,76,-75,76","w":199,"k":{",":6,".":5,"A":8,"J":3,"d":7,"e":7,"g":7,"c":8,"o":8,"q":7,"C":2,"G":2,"O":2,"Q":2,"w":3,"y":3,"s":8,"a":7,"v":3,"-":5,"f":6,"i":5,"j":4,"m":7,"n":7,"r":7,"p":6,"t":3,"u":4,"z":7,":":3,";":3,"x":15}},"K":{"d":"19,0r0,-28r32,0r0,-198r-32,0r0,-28r95,0r0,28r-27,0r0,79r33,0r55,-79r-23,0r0,-28r86,0r0,28r-25,0r-66,92v22,20,43,68,60,97v6,10,16,9,30,9r0,28v-29,0,-50,1,-61,-19r-49,-88v-5,-13,-23,-10,-40,-10r0,89r31,0r0,28r-99,0","w":249,"k":{"d":7,"e":9,"g":10,"c":10,"o":10,"q":7,"C":9,"G":9,"O":9,"Q":9,"w":10,"y":12,"v":12,"-":11,"j":6,"p":8,"t":6,"u":8}},"L":{"d":"19,0r0,-28r32,0r0,-197r-32,0r0,-29r100,0r0,29r-32,0r0,195r89,0r0,-41r31,0r0,71r-188,0","w":217,"k":{"Y":16,"\"":22,"'":22,"T":15,"U":5,"V":23,"W":16,"w":6,"y":9,"v":8,"*":22,"-":6,"\\":4,"j":4,"l":1,"p":3,"t":4,"u":4}},"M":{"d":"14,0r0,-28r31,0r17,-198r-33,0r0,-28r72,0r72,173r71,-173r72,0r0,28r-33,0r17,198r31,0r0,28r-98,0r0,-28r31,0r-12,-152v-1,-8,3,-22,0,-21v-15,55,-44,102,-64,153r-31,0v-21,-52,-48,-97,-64,-153r-2,0v4,55,-8,117,-10,173r31,0r0,28r-98,0","w":344,"k":{"v":10,"q":3,"p":5,"V":2,"d":3,"e":4,"g":4,"c":4,"o":4,"W":2,"C":3,"G":3,"O":3,"Q":3,"w":9,"y":11,"-":6,"j":5,"t":6,"u":6}},"N":{"d":"19,0r0,-28r32,0r0,-198r-32,0r0,-28r67,0r125,182v5,7,7,19,10,18v-5,-50,-1,-117,-2,-172r-32,0r0,-28r100,0r0,28r-32,0r0,226r-35,0r-125,-182v-6,-7,-7,-20,-10,-19v5,51,1,118,2,173r33,0r0,28r-101,0","w":301,"k":{",":4,".":4,"A":4,"J":3,"d":6,"e":7,"g":7,"c":8,"o":8,"q":6,"C":2,"G":2,"O":2,"Q":2,"w":3,"y":4,"s":8,"a":7,"v":3,"-":5,"f":6,"i":5,"j":5,"m":7,"n":7,"r":7,"p":6,"t":3,"u":5,"z":7,"x":15}},"O":{"d":"17,-129v0,-73,57,-129,131,-129v73,0,131,56,131,129v0,75,-58,133,-131,133v-74,0,-131,-58,-131,-133xm54,-129v0,57,42,101,94,101v51,0,93,-44,93,-101v0,-55,-42,-98,-93,-98v-52,0,-94,43,-94,98","w":295,"k":{"Y":7,",":6,".":5,"A":6,"B":3,"D":3,"E":3,"F":3,"H":3,"I":3,"K":3,"L":3,"N":3,"P":3,"R":3,"M":3,"U":2,"V":6,"W":4,"X":9,"h":4,"k":4}},"P":{"d":"224,-175v1,69,-60,87,-137,80r0,67r32,0r0,28r-100,0r0,-28r32,0r0,-198r-32,0r0,-28r119,0v53,-2,86,30,86,79xm188,-175v0,-51,-48,-53,-101,-50r0,100v52,2,101,2,101,-50","w":235,"k":{"q":3,"X":4,"M":3,",":27,".":27,"A":15,"J":14,"d":3,"e":3,"g":2,"c":3,"o":3,"s":2,"a":3,"-":3}},"Q":{"d":"18,-129v0,-73,55,-129,130,-129v110,0,171,133,101,213r30,29r-21,22r-29,-29v-82,66,-211,1,-211,-106xm55,-129v0,80,86,130,149,82r-38,-37r21,-22r37,38v46,-61,2,-159,-76,-159v-53,0,-93,42,-93,98","w":297,"k":{"Y":7,",":6,".":5,"A":6,"B":3,"D":3,"E":3,"F":3,"H":3,"I":3,"K":3,"L":3,"N":3,"P":3,"R":3,"M":3,"U":2,"V":6,"W":4,"X":9,"h":4,"k":4}},"R":{"d":"19,-254v89,3,201,-22,201,71v0,38,-22,62,-52,72v18,17,33,52,47,75v5,9,13,8,25,8r0,28v-28,0,-46,1,-57,-19r-39,-70v-7,-19,-33,-13,-57,-14r0,75r31,0r0,28r-99,0r0,-28r32,0r0,-198r-32,0r0,-28xm184,-180v0,-48,-48,-47,-97,-45r0,93v50,2,97,3,97,-48","w":252,"k":{"Y":6,"J":2,"d":3,"e":4,"g":4,"c":4,"o":4,"q":3,"B":2,"D":2,"E":2,"F":2,"H":2,"I":2,"K":2,"L":2,"N":2,"P":2,"R":2,"T":3,"U":4,"V":6,"W":5,"C":3,"G":3,"O":3,"Q":3,"w":3,"y":4,"s":2,"a":1,"v":4,"S":2,"-":6,"b":2,"f":2,"i":2,"j":3,"l":3,"m":2,"n":2,"r":2,"p":3,"t":3,"u":3,"h":1,"k":1,"z":1}},"S":{"d":"61,-192v0,64,129,42,129,123v0,49,-40,73,-87,73v-50,0,-94,-21,-84,-80r33,0v-5,36,16,48,51,48v29,0,50,-14,50,-39v0,-65,-129,-41,-129,-123v0,-48,39,-68,82,-68v52,0,87,17,77,72r-34,0v5,-31,-13,-40,-43,-41v-25,0,-45,12,-45,35","w":208,"k":{"A":2,"V":2,"W":2,"y":1,"v":1,"f":1,"i":1,"j":2,"m":1,"n":1,"r":1,"p":2,"u":1,"z":1,"x":2}},"T":{"d":"69,0r0,-28r33,0r0,-197r-60,0r0,40r-32,0r0,-69r219,0r0,69r-32,0r0,-40r-59,0r0,197r32,0r0,28r-101,0","w":239,"k":{",":11,".":12,"A":18,"J":15,"d":12,"e":12,"g":12,"c":13,"o":13,"q":12,"s":12,"a":12,"-":25,"f":1,"i":1,"m":1,"n":1,"r":1,"z":3,"x":4}},"U":{"d":"144,4v-60,0,-101,-36,-101,-99r0,-131r-32,0r0,-28r100,0r0,28r-32,0r0,131v0,44,24,67,65,67v41,0,64,-24,64,-67r0,-131r-32,0r0,-28r100,0r0,28r-32,0r0,131v0,61,-40,100,-100,99","w":286,"k":{",":8,".":8,"A":12,"J":3,"d":8,"e":9,"g":8,"c":9,"o":9,"q":8,"C":2,"G":2,"O":2,"Q":2,"w":2,"y":3,"s":10,"a":9,"v":3,"-":5,"f":7,"i":5,"j":4,"m":7,"n":7,"r":7,"p":5,"t":3,"u":4,"z":9,":":3,";":4,"x":16}},"V":{"d":"109,0r-80,-226r-25,0r0,-28r91,0r0,28r-28,0r57,167v4,9,2,21,5,20v17,-63,42,-126,61,-187r-28,0r0,-28r91,0r0,28r-25,0r-80,226r-39,0","w":257,"k":{"x":18,"v":3,"q":21,"p":6,"j":5,"M":2,"@":5,";":7,":":7,"\/":5,",":24,".":24,"A":22,"J":15,"d":21,"e":22,"g":21,"c":23,"o":23,"C":5,"G":5,"O":5,"Q":5,"w":3,"y":3,"s":24,"a":23,"S":2,"-":14,"b":-7,"f":10,"i":7,"l":-6,"m":9,"n":9,"r":9,"t":4,"u":5,"z":12}},"W":{"d":"6,-226r0,-28r90,0r0,28r-30,0r43,185r57,-213r31,0r56,213r2,0v9,-64,29,-124,42,-185r-30,0r0,-28r90,0r0,28r-24,0r-57,226r-41,0r-50,-180v-4,-9,-1,-22,-4,-21v-14,68,-36,135,-53,201r-41,0r-57,-226r-24,0","w":363,"k":{"@":4,",":15,".":15,"A":17,"J":15,"d":15,"e":16,"g":15,"c":17,"o":17,"q":15,"M":2,"C":4,"G":4,"O":4,"Q":4,"w":3,"y":3,"s":15,"a":15,"v":3,"S":2,"-":10,"b":-5,"f":7,"i":6,"j":4,"l":-5,"m":8,"n":8,"r":8,"p":5,"t":4,"u":4,"z":10,":":6,";":6,"x":16,"\/":4}},"X":{"d":"11,0r0,-28r24,0r65,-101r-64,-97r-24,0r0,-28r89,0r0,28r-27,0r49,76r47,-76r-26,0r0,-28r86,0r0,28r-24,0r-66,101r65,97r24,0r0,28r-89,0r0,-28r27,0r-50,-77v-12,26,-32,52,-46,77r26,0r0,28r-86,0","w":240,"k":{"v":11,"q":8,"p":8,"j":6,"d":8,"e":10,"g":11,"c":11,"o":11,"C":9,"G":9,"O":9,"Q":9,"w":10,"y":11,"-":13,"t":6,"u":8}},"Y":{"d":"67,0r0,-28r32,0r0,-80r-71,-118r-24,0r0,-28r87,0r0,28r-27,0r53,90r53,-90r-26,0r0,-28r86,0r0,28r-24,0r-71,118r0,80r32,0r0,28r-100,0","w":234,"k":{"@":6,",":11,".":12,"A":19,"J":15,"d":24,"e":26,"g":25,"c":26,"o":26,"q":24,"C":7,"G":7,"O":7,"Q":7,"w":5,"y":5,"s":27,"a":25,"v":5,"S":2,"-":24,"b":-7,"f":11,"i":8,"j":6,"l":-7,"m":11,"n":11,"r":11,"p":8,"t":5,"u":7,"z":13,":":8,";":8,"x":20,"\/":4}},"Z":{"d":"19,0r0,-24r131,-189v5,-8,11,-11,11,-13v-31,2,-74,0,-108,1r0,40r-32,0r0,-69r183,0r0,23r-141,203v32,-5,78,-1,114,-2r0,-41r31,0r0,71r-189,0","w":227,"k":{"g":1,"w":8,"y":8,"v":8,"-":8,"j":4,"p":5,"t":4,"u":5,"z":1}},"[":{"d":"35,34r0,-299r59,0r0,27r-28,0r0,246r28,0r0,26r-59,0","w":111},"\\":{"d":"107,15r-92,-283r31,0r92,283r-31,0","w":152,"k":{"V":5,"Y":4,"W":4}},"]":{"d":"18,8r29,0r0,-246r-29,0r0,-27r59,0r0,299r-59,0r0,-26","w":112},"^":{"d":"25,-89r72,-165r23,0r72,165r-32,0r-52,-127r-51,127r-32,0"},"_":{"d":"4,0r193,0r0,28r-193,0r0,-28","w":200},"`":{"d":"95,-272r-45,-46r40,0r37,46r-32,0","w":179},"a":{"d":"12,-51v0,-61,77,-61,118,-61v2,-32,-15,-46,-39,-46v-29,0,-52,18,-52,18r-15,-25v0,0,28,-21,70,-21v46,0,71,24,71,70r0,81v-1,12,16,7,26,8r0,27v-32,2,-68,4,-59,-34v0,0,-16,38,-60,38v-30,0,-60,-18,-60,-55xm47,-54v0,16,12,31,33,31v33,-1,52,-33,50,-66v-26,0,-83,-3,-83,35","w":199,"k":{"Y":26,"W":17,"V":26,"T":17,"\"":5,"'":5,"U":11,"C":3,"G":3,"O":3,"Q":3,"w":4,"y":5,"v":5,"\\":4,"j":2,"l":2,"p":2,"t":3,"u":2}},"b":{"d":"31,0r0,-227r-31,0r0,-27r66,0r-1,99v0,0,17,-31,59,-31v49,0,80,38,80,95v0,58,-35,95,-83,95v-57,0,-61,-70,-57,-4r-33,0xm64,-90v0,32,17,64,52,64v28,0,52,-24,52,-65v0,-40,-21,-65,-51,-65v-27,0,-53,20,-53,66","w":219,"k":{"Y":25,"A":2,"\"":5,"'":5,"B":5,"D":5,"E":5,"F":5,"H":5,"I":5,"K":5,"L":5,"N":5,"P":5,"R":5,"M":3,"T":12,"U":8,"V":21,"W":15,"X":7,"Z":5}},"c":{"d":"14,-91v0,-56,43,-95,97,-95v35,0,82,13,71,63r-31,0v5,-26,-18,-33,-39,-33v-37,0,-62,26,-62,65v0,41,29,65,64,65v31,0,52,-18,58,-23r14,25v-8,8,-34,28,-73,28v-53,0,-99,-36,-99,-95","w":199,"k":{"Z":2,"Y":25,"W":14,"V":20,"T":13,"S":1,"B":2,"D":2,"E":2,"F":2,"H":2,"I":2,"K":2,"L":2,"N":2,"P":2,"R":2,"U":12}},"d":{"d":"15,-91v0,-58,34,-95,83,-95v43,0,54,31,57,30v-2,-18,-1,-50,-1,-71r-31,0r0,-27r66,0r0,219v0,12,16,7,26,8r0,27v-31,2,-67,3,-59,-32v0,0,-14,36,-61,36v-49,0,-80,-38,-80,-95xm51,-91v0,40,21,65,51,65v27,0,53,-20,53,-65v0,-33,-17,-65,-52,-65v-29,0,-52,24,-52,65","w":226,"k":{"Y":5,"W":5,"V":5,"T":4,"g":1,"c":1,"o":1,"U":5,"C":3,"G":3,"O":3,"Q":3,"w":2,"y":2,"v":2,"j":1,"l":3,"p":1,"t":1,"u":1}},"e":{"d":"15,-91v0,-58,39,-95,91,-95v56,1,84,44,78,98r-134,0v2,40,31,62,63,62v32,0,55,-20,55,-20r14,25v0,0,-27,25,-71,25v-57,0,-96,-41,-96,-95xm52,-110r97,0v-1,-32,-21,-49,-44,-49v-27,0,-48,18,-53,49","w":199,"k":{"Z":2,"Y":30,"X":1,"W":15,"V":24,"T":12,"A":1,"\"":3,"'":3,"B":2,"D":2,"E":2,"F":2,"H":2,"I":2,"K":2,"L":2,"N":2,"P":2,"R":2,"U":9}},"f":{"d":"17,0r0,-27r29,0r0,-128r-31,0r0,-27r31,0v0,-67,41,-81,82,-74r0,29v-23,-5,-51,2,-47,45r44,0r0,27r-44,0r0,128r33,0r0,27r-97,0","w":135,"k":{"J":3,"e":1,"c":2,"o":2}},"g":{"d":"44,34v0,0,23,12,50,12v43,0,62,-29,58,-78v-11,18,-28,30,-55,30v-50,0,-82,-40,-82,-93v0,-82,96,-122,140,-62v-10,-29,30,-26,59,-25r0,27v-10,1,-28,-4,-28,7r0,140v-1,86,-93,100,-154,68xm104,-32v25,0,48,-15,48,-63v0,-48,-24,-61,-52,-61v-31,0,-49,23,-49,60v0,38,20,64,53,64","w":225,"k":{"Z":1,"Y":9,"X":8,"W":6,"V":6,"M":5,"J":3,"A":4,"c":1,"o":1,"B":6,"D":6,"E":6,"F":6,"H":6,"I":6,"K":6,"L":6,"N":6,"P":6,"R":6,"U":5,"l":1,"h":2,"k":2}},"h":{"d":"12,0r0,-27r28,0r0,-200r-30,0r0,-27r65,0r0,109v8,-18,32,-41,68,-41v77,0,61,87,62,159r29,0r0,27r-64,0r0,-109v0,-26,-5,-45,-34,-45v-57,0,-66,63,-61,127r29,0r0,27r-92,0","w":242,"k":{"Y":26,"\"":5,"'":5,"T":18,"U":12,"V":26,"W":18,"C":4,"G":4,"O":4,"Q":4,"w":4,"y":5,"v":5,"*":3,"\\":4,"j":2,"l":2,"p":2,"t":3,"u":3}},"i":{"d":"45,-219r0,-35r37,0r0,35r-37,0xm17,0r0,-27r29,0r0,-128r-31,0r0,-27r66,0r0,155r28,0r0,27r-92,0","w":120,"k":{"Y":6,"W":6,"V":6,"T":6,"e":1,"g":2,"c":2,"o":2,"U":6,"C":4,"G":4,"O":4,"Q":4,"w":3,"y":3,"v":3,"b":1,"j":2,"l":3,"p":2,"t":2,"u":2}},"j":{"d":"40,-219r0,-35r37,0r0,35r-37,0xm-6,45v23,0,47,-1,47,-41r0,-159r-31,0r0,-27r66,0r0,187v-4,66,-47,71,-82,68r0,-28","w":106,"k":{"Z":2,"Y":3,"W":3,"V":3,"T":2,"S":2,"M":3,"A":2,"B":3,"D":3,"E":3,"F":3,"H":3,"I":3,"K":3,"L":3,"N":3,"P":3,"R":3,"U":3,"C":2,"G":2,"O":2,"Q":2,"h":1,"k":1}},"k":{"d":"12,0r0,-27r28,0r0,-200r-30,0r0,-27r65,0r0,142r27,0r36,-43r-24,0r0,-27r83,0r0,27r-24,0r-45,53v14,12,33,49,44,68v5,9,15,7,27,7r0,27v-27,-1,-45,3,-57,-17r-36,-61v-5,-10,-17,-8,-31,-8r0,59r24,0r0,27r-87,0","w":211,"k":{"Y":17,"W":13,"V":15,"T":4,"e":2,"g":2,"c":4,"o":4,"U":13,"l":3}},"l":{"d":"31,-52r0,-175r-31,0r0,-27r66,0r0,200v-1,19,8,29,29,26v-4,14,10,29,-16,29v-26,0,-48,-11,-48,-53","w":105,"k":{"Y":6,"W":6,"V":6,"T":5,"e":1,"g":1,"c":1,"o":1,"U":6,"C":4,"G":4,"O":4,"Q":4,"w":3,"y":3,"v":3,"b":1,"j":2,"l":3,"p":2,"t":2,"u":2}},"m":{"d":"17,0r0,-27r29,0r0,-121v-1,-12,-20,-5,-31,-7r0,-27v36,-2,76,-4,64,40v13,-45,109,-68,118,-2v12,-21,35,-42,66,-42v74,0,60,88,60,159r28,0r0,27r-63,0r0,-109v0,-26,-5,-46,-32,-46v-54,2,-58,68,-54,128r28,0r0,27r-63,0r0,-109v0,-24,-4,-46,-32,-46v-54,0,-57,68,-54,128r28,0r0,27r-92,0","w":360,"k":{"Y":26,"\"":5,"'":5,"T":18,"U":12,"V":26,"W":18,"C":4,"G":4,"O":4,"Q":4,"w":4,"y":5,"v":5,"*":3,"\\":4,"j":2,"l":2,"p":2,"t":3,"u":3}},"n":{"d":"17,0r0,-27r29,0r0,-120v0,-13,-19,-7,-31,-8r0,-27v36,-2,77,-4,64,40v4,-10,25,-44,71,-44v76,0,60,88,61,159r28,0r0,27r-63,0r0,-109v0,-26,-6,-45,-35,-45v-58,2,-65,63,-60,127r28,0r0,27r-92,0","w":248,"k":{"Y":26,"\"":5,"'":5,"T":18,"U":12,"V":26,"W":18,"C":4,"G":4,"O":4,"Q":4,"w":4,"y":5,"v":5,"*":3,"\\":4,"j":2,"l":2,"p":2,"t":3,"u":3}},"o":{"d":"14,-91v0,-55,45,-95,99,-95v54,0,98,40,98,95v0,55,-44,95,-98,95v-54,0,-99,-40,-99,-95xm50,-91v0,38,28,65,63,65v34,0,62,-27,62,-65v0,-38,-28,-65,-62,-65v-35,0,-63,27,-63,65","w":225,"k":{"Z":7,"Y":26,"X":10,"W":17,"V":23,"T":13,"M":4,"A":3,"\"":5,"'":5,"B":6,"D":6,"E":6,"F":6,"H":6,"I":6,"K":6,"L":6,"N":6,"P":6,"R":6,"U":9,"w":1,"y":2,"v":2,"f":1,"i":1,"j":1,"m":1,"n":1,"r":1,"p":1,"h":2,"k":2,"x":4}},"p":{"d":"12,45r29,0r0,-192v0,-13,-19,-7,-31,-8r0,-27v30,0,72,-7,63,30v0,0,15,-34,61,-34v49,0,80,38,80,95v0,58,-34,95,-82,95v-49,0,-56,-59,-56,-15r0,56r28,0r0,27r-92,0r0,-27xm75,-90v0,32,17,64,51,64v29,0,53,-24,53,-65v0,-40,-21,-65,-52,-65v-27,0,-52,20,-52,66","w":229,"k":{"Y":25,"A":2,"\"":5,"'":5,"B":5,"D":5,"E":5,"F":5,"H":5,"I":5,"K":5,"L":5,"N":5,"P":5,"R":5,"M":3,"T":12,"U":8,"V":21,"W":15,"X":7,"Z":5}},"q":{"d":"15,-91v0,-58,35,-95,83,-95v35,0,53,25,58,31r0,-27r33,0r0,227r28,0r0,27r-92,0r0,-27r29,0v-1,-24,3,-51,0,-73v0,0,-16,32,-59,32v-49,0,-80,-38,-80,-95xm51,-91v0,40,21,65,51,65v27,0,53,-19,53,-65v0,-32,-17,-65,-52,-65v-28,0,-52,24,-52,65","w":219,"k":{"Z":4,"Y":17,"X":4,"W":13,"V":15,"T":9,"S":2,"M":3,"A":2,"B":5,"D":5,"E":5,"F":5,"H":5,"I":5,"K":5,"L":5,"N":5,"P":5,"R":5,"U":8,"C":2,"G":2,"O":2,"Q":2,"j":-14,"h":1,"k":1}},"r":{"d":"18,0r0,-27r27,0r0,-120v0,-13,-19,-7,-30,-8r0,-27v38,-2,75,-5,64,45v10,-30,31,-50,67,-47r0,35v-62,-6,-71,56,-66,122r27,0r0,27r-89,0","w":152,"k":{"Y":8,"X":12,"W":5,"V":6,"M":7,"J":6,"A":7,"c":2,"o":2,"B":6,"D":6,"E":6,"F":6,"H":6,"I":6,"K":6,"L":6,"N":6,"P":6,"R":6,"U":5,"h":2,"k":2,"?":4}},"s":{"d":"57,-136v0,43,102,29,102,87v0,35,-32,53,-73,53v-41,0,-81,-15,-72,-63r31,0v-5,27,17,35,42,35v21,0,36,-9,36,-24v0,-42,-102,-30,-102,-88v0,-36,36,-50,68,-50v35,0,72,13,63,58r-31,0v3,-22,-8,-29,-32,-30v-17,0,-32,7,-32,22","w":173,"k":{"Z":1,"Y":25,"W":14,"V":21,"T":12,"A":1,"B":2,"D":2,"E":2,"F":2,"H":2,"I":2,"K":2,"L":2,"N":2,"P":2,"R":2,"U":9}},"t":{"d":"37,-67r0,-88r-31,0r0,-27r32,0r0,-50r34,0r0,50r44,0r0,27r-44,0r0,85v3,41,24,43,47,42r0,29v-37,1,-82,-1,-82,-68","w":129,"k":{"Y":13,"W":6,"V":12,"T":3,"U":6}},"u":{"d":"98,4v-72,0,-60,-89,-60,-159r-31,0r0,-27r66,0r0,109v0,25,5,46,34,46v57,0,64,-65,59,-128r-31,0r0,-27r66,0r0,147v0,12,16,7,27,8r0,27v-35,2,-70,4,-61,-39v-4,10,-24,43,-69,43","w":239,"k":{"Y":19,"W":18,"V":22,"T":12,"e":1,"g":1,"c":1,"o":1,"U":11,"C":4,"G":4,"O":4,"Q":4,"w":2,"y":3,"v":3,"b":1,"j":2,"l":3,"p":2,"t":2,"u":2}},"v":{"d":"3,-155r0,-27r82,0r0,27r-23,0r43,123v10,-41,30,-83,43,-123r-23,0r0,-27r81,0r0,27r-23,0r-59,155r-39,0r-59,-155r-23,0","w":209,"k":{"Y":5,"X":12,"W":3,"V":3,"M":10,"J":5,"?":5,",":7,".":7,"A":14,"e":1,"c":2,"o":2,"B":6,"D":6,"E":6,"F":6,"H":6,"I":6,"K":6,"L":6,"N":6,"P":6,"R":6,"U":3,"h":3,"k":3}},"w":{"d":"4,-155r0,-27r81,0r0,27r-25,0r35,123v10,-52,30,-101,43,-150r32,0r44,150v8,-41,24,-84,34,-123r-25,0r0,-27r82,0r0,27r-23,0r-47,155r-39,0r-42,-139v-12,47,-29,94,-42,139r-39,0r-47,-155r-22,0","w":308,"k":{"Y":5,"X":10,"W":3,"V":3,"M":9,"J":4,",":5,".":4,"A":13,"c":1,"o":1,"B":6,"D":6,"E":6,"F":6,"H":6,"I":6,"K":6,"L":6,"N":6,"P":6,"R":6,"U":2,"h":3,"k":3,"?":4}},"x":{"d":"13,0r0,-27r28,0r43,-67r-40,-61r-30,0r0,-27r52,0r39,65v10,-21,27,-45,39,-65r49,0r0,27r-28,0r-41,61r45,67r25,0r0,27r-47,0r-44,-71v-11,23,-29,49,-42,71r-48,0","w":205,"k":{"Y":17,"W":14,"V":15,"T":3,"e":2,"c":3,"o":3,"U":13,"l":2}},"y":{"d":"23,38v0,0,11,8,26,8v23,0,34,-24,41,-43r-64,-158r-23,0r0,-27r83,0r0,27r-24,0r45,124r45,-124r-23,0r0,-27r80,0r0,27r-23,0r-72,184v-10,47,-75,56,-103,35","w":212,"k":{"Y":5,"X":12,"W":3,"V":3,"M":11,"J":5,",":8,".":7,"A":14,"e":1,"c":2,"o":2,"B":6,"D":6,"E":6,"F":6,"H":6,"I":6,"K":6,"L":6,"N":6,"P":6,"R":6,"U":3,"h":3,"k":3,"?":5}},"z":{"d":"17,-23r111,-133v-21,2,-54,1,-78,1r0,29r-31,0r0,-56r151,0r0,23r-110,132r82,0r0,-29r30,0r0,56r-155,0r0,-23","w":189,"k":{"Y":13,"W":10,"V":12,"T":3,"U":9}},"{":{"d":"42,-28r0,-34v0,-37,-30,-40,-30,-40r0,-30v0,0,30,-3,30,-40r0,-31v4,-61,40,-62,67,-62r0,27v-16,0,-36,-1,-36,37r0,38v0,38,-30,43,-29,46v0,0,29,9,29,46r0,41v2,38,20,38,36,38r0,27v-28,0,-62,-2,-67,-63","w":121},"|":{"d":"34,57r0,-342r31,0r0,342r-31,0","w":99},"}":{"d":"12,8v16,0,36,0,36,-38r0,-41v0,-39,30,-44,29,-47v0,0,-29,-9,-29,-45r0,-38v-2,-38,-20,-37,-36,-37r0,-27v29,0,62,1,67,62r0,31v0,37,30,40,30,40r0,30v0,0,-30,3,-30,40r0,34v-4,61,-39,63,-67,63r0,-27","w":121},"~":{"d":"24,-73v0,-42,19,-61,50,-61v38,0,42,35,69,35v19,0,24,-19,24,-34r29,0v0,42,-20,61,-51,61v-38,0,-42,-35,-69,-35v-19,0,-23,19,-23,34r-29,0","w":219},"\u00a0":{"w":90}}});



// Cufon

Cufon.replace('h1');
Cufon.replace('h2');
Cufon.replace('#wlpeLogin label');
Cufon.replace('#top ul li a', {hover: true});

// Accordion

$(function () {
        $('ul.drawers').accordion({
            header: 'H3.drawer-handle',
            selectedClass: 'open'
        });
    });




/**
 * We use the initCallback callback
 * to assign functionality to the controls
 */
function mycarousel_initCallback(carousel) {
    jQuery('.jcarousel-control a').bind('click', function() {
        carousel.scroll(jQuery.jcarousel.intval(jQuery(this).text()));
        return false;
    });

    jQuery('.jcarousel-scroll select').bind('change', function() {
        carousel.options.scroll = jQuery.jcarousel.intval(this.options[this.selectedIndex].value);
        return false;
    });

    jQuery('#mycarousel-next').bind('click', function() {
        carousel.next();
        return false;
    });

    jQuery('#mycarousel-prev').bind('click', function() {
        carousel.prev();
        return false;
    });
};

// Ride the carousel...
jQuery(document).ready(function() {
    jQuery("#mycarousel").jcarousel({
        scroll: 1,
        initCallback: mycarousel_initCallback,
        // This tells jCarousel NOT to autobuild prev/next buttons
        buttonNextHTML: null,
        buttonPrevHTML: null
    });
});