/* PLUGINS INCLUDED:
 *
 * hoverIntent r5
 * Cycle 2.75
 * jQuery validation 1.6
 * Superfish v1.4.8
 * CurvyCorners 2.0.4
 * Cufon
 * Cufon register font (Aller)
 *
 */
 
 
 // JavaScript Document

/**
* hoverIntent is similar to jQuery's built-in "hover" function except that
* instead of firing the onMouseOver event immediately, hoverIntent checks
* to see if the user's mouse has slowed down (beneath the sensitivity
* threshold) before firing the onMouseOver event.
* 
* hoverIntent r5 // 2007.03.27 // jQuery 1.1.2+
* <http://cherne.net/brian/resources/jquery.hoverIntent.html>
* 
* hoverIntent is currently available for use in all personal or commercial 
* projects under both MIT and GPL licenses. This means that you can choose 
* the license that best suits your project, and use it accordingly.
* 
* // basic usage (just like .hover) receives onMouseOver and onMouseOut functions
* $("ul li").hoverIntent( showNav , hideNav );
* 
* // advanced usage receives configuration object only
* $("ul li").hoverIntent({
*	sensitivity: 7, // number = sensitivity threshold (must be 1 or higher)
*	interval: 100,   // number = milliseconds of polling interval
*	over: showNav,  // function = onMouseOver callback (required)
*	timeout: 0,   // number = milliseconds delay before onMouseOut function call
*	out: hideNav    // function = onMouseOut callback (required)
* });
* 
* @param  f  onMouseOver function || An object with configuration options
* @param  g  onMouseOut function  || Nothing (use configuration options object)
* @author    Brian Cherne <brian@cherne.net>
*/
(function($) {
	$.fn.hoverIntent = function(f,g) {
		// default configuration options
		var cfg = {
			sensitivity: 7,
			interval: 100,
			timeout: 0
		};
		// override configuration options with user supplied object
		cfg = $.extend(cfg, g ? { over: f, out: g } : f );

		// instantiate variables
		// cX, cY = current X and Y position of mouse, updated by mousemove event
		// pX, pY = previous X and Y position of mouse, set by mouseover and polling interval
		var cX, cY, pX, pY;

		// A private function for getting mouse position
		var track = function(ev) {
			cX = ev.pageX;
			cY = ev.pageY;
		};

		// A private function for comparing current and previous mouse position
		var compare = function(ev,ob) {
			ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
			// compare mouse positions to see if they've crossed the threshold
			if ( ( Math.abs(pX-cX) + Math.abs(pY-cY) ) < cfg.sensitivity ) {
				$(ob).unbind("mousemove",track);
				// set hoverIntent state to true (so mouseOut can be called)
				ob.hoverIntent_s = 1;
				return cfg.over.apply(ob,[ev]);
			} else {
				// set previous coordinates for next time
				pX = cX; pY = cY;
				// use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs)
				ob.hoverIntent_t = setTimeout( function(){compare(ev, ob);} , cfg.interval );
			}
		};

		// A private function for delaying the mouseOut function
		var delay = function(ev,ob) {
			ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
			ob.hoverIntent_s = 0;
			return cfg.out.apply(ob,[ev]);
		};

		// A private function for handling mouse 'hovering'
		var handleHover = function(e) {
			// next three lines copied from jQuery.hover, ignore children onMouseOver/onMouseOut
			var p = (e.type == "mouseover" ? e.fromElement : e.toElement) || e.relatedTarget;
			while ( p && p != this ) { try { p = p.parentNode; } catch(e) { p = this; } }
			if ( p == this ) { return false; }

			// copy objects to be passed into t (required for event object to be passed in IE)
			var ev = jQuery.extend({},e);
			var ob = this;

			// cancel hoverIntent timer if it exists
			if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); }

			// else e.type == "onmouseover"
			if (e.type == "mouseover") {
				// set "previous" X and Y position based on initial entry point
				pX = ev.pageX; pY = ev.pageY;
				// update "current" X and Y position based on mousemove
				$(ob).bind("mousemove",track);
				// start polling interval (self-calling timeout) to compare mouse coordinates over time
				if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = setTimeout( function(){compare(ev,ob);} , cfg.interval );}

			// else e.type == "onmouseout"
			} else {
				// unbind expensive mousemove event
				$(ob).unbind("mousemove",track);
				// if hoverIntent state is true, then call the mouseOut function after the specified delay
				if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = setTimeout( function(){delay(ev,ob);} , cfg.timeout );}
			}
		};

		// bind the function to the two event listeners
		return this.mouseover(handleHover).mouseout(handleHover);
	};
})(jQuery);
 
 
 
/*!
 * jQuery Cycle Plugin (with Transition Definitions)
 * Examples and documentation at: http://jquery.malsup.com/cycle/
 * Copyright (c) 2007-2009 M. Alsup
 * Version: 2.73 (04-NOV-2009)
 * 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
 *
 * Originally based on the work of:
 *	1) Matt Oakes
 *	2) Torsten Baldes (http://medienfreunde.com/lab/innerfade/)
 *	3) Benjamin Sterling (http://www.benjaminsterling.com/experiments/jqShuffle/)
 */
;(function($) {

var ver = '2.73';

// 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,' '));
	//$('body').append('<div>'+Array.prototype.join.call(arguments,' ')+'</div>');
};

// the options arg can be...
//   a number  - indicates an immediate transition should occur to the given slide index
//   a string  - 'stop', 'pause', 'resume', 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 conjunction with a options == '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;

		// 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 'stop':
			cont.cycleStop++; // callbacks look for change
			if (cont.cycleTimeout)
				clearTimeout(cont.cycleTimeout);
			cont.cycleTimeout = 0;
			$(cont).removeData('cycle.opts');
			return false;
		case 'pause':
			cont.cyclePause = 1;
			return false;
		case 'resume':
			cont.cyclePause = 0;
			if (arg2 === true) { // resume now!
				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);
			}
			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 removeFilter(el, opts) {
	if (!$.support.opacity && opts.cleartype && el.style.filter) {
		try { el.style.removeAttribute('filter'); }
		catch(smother) {} // handle old opera versions
	}
};

// 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 = 0;
		opts.startingSlide = opts.randomMap[0];
	}
	else if (opts.startingSlide >= els.length)
		opts.startingSlide = 0; // catch bogus input
	opts.currSlide = opts.startingSlide = 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;
			if (!h) h = e.offsetHeight;
			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.cycleW = (opts.fit && opts.width) ? opts.width : $el.width();

		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;
		while((opts.timeout - opts.speed) < 250) // 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) {
		opts.nextSlide = opts.currSlide;
		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)
		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)
			$.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
		$(els).stop(true,true);
		opts.busy = false;
	}
	// don't begin another timeout-based transition if there is one active
	if (opts.busy)
		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
	if (manual || !p.cyclePause) {
		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]);
			});
		};

		if (opts.nextSlide != opts.currSlide) {
			// get ready to perform the transition
			opts.busy = 1;
			if (opts.fxFn) // fx function provided?
				opts.fxFn(curr, next, opts, after, fwd);
			else if ($.isFunction($.fn.cycle[opts.fx])) // fx plugin ?
				$.fn.cycle[opts.fx](curr, next, opts, after);
			else
				$.fn.cycle.custom(curr, next, opts, after, manual && opts.fastOnEvent);
		}

		// 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];
		}
		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 (opts.pager)
			$.fn.cycle.updateActivePagerLink(opts.pager, opts.currSlide);
	}

	// stage the next transtion
	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) {
	$(pager).each(function() {
		$(this).find('a').removeClass('activeSlide').filter('a:eq('+currSlide+')').addClass('activeSlide');
	});
};

// 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) {
		if (++opts.randomIndex == els.length)
			opts.randomIndex = 0;
		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;
		}
	}

	if ($.isFunction(opts.prevNextClick))
		opts.prevNextClick(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);
	});
   $.fn.cycle.updateActivePagerLink(opts.pager, opts.startingSlide);
};

$.fn.cycle.createPagerAnchor = function(i, el, $p, els, opts) {
	var a;
	if ($.isFunction(opts.pagerAnchorBuilder))
		a = opts.pagerAnchorBuilder(i,el);
	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);
		}
	}

	$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;
		}
		if ($.isFunction(opts.pagerClick))
			opts.pagerClick(opts.nextSlide, els[opts.nextSlide]);
		go(els,opts,1,opts.currSlide < i); // trigger the trans
		return false;
	});
	
	if (opts.pagerEvent != 'click')
		$a.click(function(){return false;}); // supress 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) {
	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, 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 click trigger for next slide
	prev:		   null,  // selector for element to use as click trigger for previous slide
	prevNextClick: null,  // callback fn for prev/next clicks:	function(isNext, zeroBasedSlideIndex, slideElement)
	prevNextEvent:'click',// event which drives the manual transition to the previous or next slide
	pager:		   null,  // selector for element to use as pager container
	pagerClick:	   null,  // callback fn for pager clicks:	function(zeroBasedSlideIndex, slideElement)
	pagerEvent:	  'click', // name of event which drives the pager navigation
	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
};

})(jQuery);


/*!
 * jQuery Cycle Plugin Transition Definitions
 * This script is a plugin for the jQuery Cycle Plugin
 * Examples and documentation at: http://malsup.com/jquery/cycle/
 * Copyright (c) 2007-2008 M. Alsup
 * Version:	 2.72
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 */
(function($) {

//
// These functions define one-time slide initialization for the named
// transitions. To save file size feel free to remove any of these that you
// don't need.
//
$.fn.cycle.transitions.none = function($cont, $slides, opts) {
	opts.fxFn = function(curr,next,opts,after){
		$(next).show();
		$(curr).hide();
		after();
	};
}

// scrollUp/Down/Left/Right
$.fn.cycle.transitions.scrollUp = function($cont, $slides, opts) {
	$cont.css('overflow','hidden');
	opts.before.push($.fn.cycle.commonReset);
	var h = $cont.height();
	opts.cssBefore ={ top: h, left: 0 };
	opts.cssFirst = { top: 0 };
	opts.animIn	  = { top: 0 };
	opts.animOut  = { top: -h };
};
$.fn.cycle.transitions.scrollDown = function($cont, $slides, opts) {
	$cont.css('overflow','hidden');
	opts.before.push($.fn.cycle.commonReset);
	var h = $cont.height();
	opts.cssFirst = { top: 0 };
	opts.cssBefore= { top: -h, left: 0 };
	opts.animIn	  = { top: 0 };
	opts.animOut  = { top: h };
};
$.fn.cycle.transitions.scrollLeft = function($cont, $slides, opts) {
	$cont.css('overflow','hidden');
	opts.before.push($.fn.cycle.commonReset);
	var w = $cont.width();
	opts.cssFirst = { left: 0 };
	opts.cssBefore= { left: w, top: 0 };
	opts.animIn	  = { left: 0 };
	opts.animOut  = { left: 0-w };
};
$.fn.cycle.transitions.scrollRight = function($cont, $slides, opts) {
	$cont.css('overflow','hidden');
	opts.before.push($.fn.cycle.commonReset);
	var w = $cont.width();
	opts.cssFirst = { left: 0 };
	opts.cssBefore= { left: -w, top: 0 };
	opts.animIn	  = { left: 0 };
	opts.animOut  = { left: w };
};
$.fn.cycle.transitions.scrollHorz = function($cont, $slides, opts) {
	$cont.css('overflow','hidden').width();
	opts.before.push(function(curr, next, opts, fwd) {
		$.fn.cycle.commonReset(curr,next,opts);
		opts.cssBefore.left = fwd ? (next.cycleW-1) : (1-next.cycleW);
		opts.animOut.left = fwd ? -curr.cycleW : curr.cycleW;
	});
	opts.cssFirst = { left: 0 };
	opts.cssBefore= { top: 0 };
	opts.animIn   = { left: 0 };
	opts.animOut  = { top: 0 };
};
$.fn.cycle.transitions.scrollVert = function($cont, $slides, opts) {
	$cont.css('overflow','hidden');
	opts.before.push(function(curr, next, opts, fwd) {
		$.fn.cycle.commonReset(curr,next,opts);
		opts.cssBefore.top = fwd ? (1-next.cycleH) : (next.cycleH-1);
		opts.animOut.top = fwd ? curr.cycleH : -curr.cycleH;
	});
	opts.cssFirst = { top: 0 };
	opts.cssBefore= { left: 0 };
	opts.animIn   = { top: 0 };
	opts.animOut  = { left: 0 };
};

// slideX/slideY
$.fn.cycle.transitions.slideX = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$(opts.elements).not(curr).hide();
		$.fn.cycle.commonReset(curr,next,opts,false,true);
		opts.animIn.width = next.cycleW;
	});
	opts.cssBefore = { left: 0, top: 0, width: 0 };
	opts.animIn	 = { width: 'show' };
	opts.animOut = { width: 0 };
};
$.fn.cycle.transitions.slideY = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$(opts.elements).not(curr).hide();
		$.fn.cycle.commonReset(curr,next,opts,true,false);
		opts.animIn.height = next.cycleH;
	});
	opts.cssBefore = { left: 0, top: 0, height: 0 };
	opts.animIn	 = { height: 'show' };
	opts.animOut = { height: 0 };
};

// shuffle
$.fn.cycle.transitions.shuffle = function($cont, $slides, opts) {
	var i, w = $cont.css('overflow', 'visible').width();
	$slides.css({left: 0, top: 0});
	opts.before.push(function(curr,next,opts) {
		$.fn.cycle.commonReset(curr,next,opts,true,true,true);
	});
	// only adjust speed once!
	if (!opts.speedAdjusted) {
		opts.speed = opts.speed / 2; // shuffle has 2 transitions
		opts.speedAdjusted = true;
	}
	opts.random = 0;
	opts.shuffle = opts.shuffle || {left:-w, top:15};
	opts.els = [];
	for (i=0; i < $slides.length; i++)
		opts.els.push($slides[i]);

	for (i=0; i < opts.currSlide; i++)
		opts.els.push(opts.els.shift());

	// custom transition fn (hat tip to Benjamin Sterling for this bit of sweetness!)
	opts.fxFn = function(curr, next, opts, cb, fwd) {
		var $el = fwd ? $(curr) : $(next);
		$(next).css(opts.cssBefore);
		var count = opts.slideCount;
		$el.animate(opts.shuffle, opts.speedIn, opts.easeIn, function() {
			var hops = $.fn.cycle.hopsFromLast(opts, fwd);
			for (var k=0; k < hops; k++)
				fwd ? opts.els.push(opts.els.shift()) : opts.els.unshift(opts.els.pop());
			if (fwd) {
				for (var i=0, len=opts.els.length; i < len; i++)
					$(opts.els[i]).css('z-index', len-i+count);
			}
			else {
				var z = $(curr).css('z-index');
				$el.css('z-index', parseInt(z)+1+count);
			}
			$el.animate({left:0, top:0}, opts.speedOut, opts.easeOut, function() {
				$(fwd ? this : curr).hide();
				if (cb) cb();
			});
		});
	};
	opts.cssBefore = { display: 'block', opacity: 1, top: 0, left: 0 };
};

// turnUp/Down/Left/Right
$.fn.cycle.transitions.turnUp = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,true,false);
		opts.cssBefore.top = next.cycleH;
		opts.animIn.height = next.cycleH;
	});
	opts.cssFirst  = { top: 0 };
	opts.cssBefore = { left: 0, height: 0 };
	opts.animIn	   = { top: 0 };
	opts.animOut   = { height: 0 };
};
$.fn.cycle.transitions.turnDown = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,true,false);
		opts.animIn.height = next.cycleH;
		opts.animOut.top   = curr.cycleH;
	});
	opts.cssFirst  = { top: 0 };
	opts.cssBefore = { left: 0, top: 0, height: 0 };
	opts.animOut   = { height: 0 };
};
$.fn.cycle.transitions.turnLeft = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,false,true);
		opts.cssBefore.left = next.cycleW;
		opts.animIn.width = next.cycleW;
	});
	opts.cssBefore = { top: 0, width: 0  };
	opts.animIn	   = { left: 0 };
	opts.animOut   = { width: 0 };
};
$.fn.cycle.transitions.turnRight = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,false,true);
		opts.animIn.width = next.cycleW;
		opts.animOut.left = curr.cycleW;
	});
	opts.cssBefore = { top: 0, left: 0, width: 0 };
	opts.animIn	   = { left: 0 };
	opts.animOut   = { width: 0 };
};

// zoom
$.fn.cycle.transitions.zoom = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,false,false,true);
		opts.cssBefore.top = next.cycleH/2;
		opts.cssBefore.left = next.cycleW/2;
		opts.animIn	   = { top: 0, left: 0, width: next.cycleW, height: next.cycleH };
		opts.animOut   = { width: 0, height: 0, top: curr.cycleH/2, left: curr.cycleW/2 };
	});
	opts.cssFirst = { top:0, left: 0 };
	opts.cssBefore = { width: 0, height: 0 };
};

// fadeZoom
$.fn.cycle.transitions.fadeZoom = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,false,false);
		opts.cssBefore.left = next.cycleW/2;
		opts.cssBefore.top = next.cycleH/2;
		opts.animIn	= { top: 0, left: 0, width: next.cycleW, height: next.cycleH };
	});
	opts.cssBefore = { width: 0, height: 0 };
	opts.animOut  = { opacity: 0 };
};

// blindX
$.fn.cycle.transitions.blindX = function($cont, $slides, opts) {
	var w = $cont.css('overflow','hidden').width();
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts);
		opts.animIn.width = next.cycleW;
		opts.animOut.left   = curr.cycleW;
	});
	opts.cssBefore = { left: w, top: 0 };
	opts.animIn = { left: 0 };
	opts.animOut  = { left: w };
};
// blindY
$.fn.cycle.transitions.blindY = function($cont, $slides, opts) {
	var h = $cont.css('overflow','hidden').height();
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts);
		opts.animIn.height = next.cycleH;
		opts.animOut.top   = curr.cycleH;
	});
	opts.cssBefore = { top: h, left: 0 };
	opts.animIn = { top: 0 };
	opts.animOut  = { top: h };
};
// blindZ
$.fn.cycle.transitions.blindZ = function($cont, $slides, opts) {
	var h = $cont.css('overflow','hidden').height();
	var w = $cont.width();
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts);
		opts.animIn.height = next.cycleH;
		opts.animOut.top   = curr.cycleH;
	});
	opts.cssBefore = { top: h, left: w };
	opts.animIn = { top: 0, left: 0 };
	opts.animOut  = { top: h, left: w };
};

// growX - grow horizontally from centered 0 width
$.fn.cycle.transitions.growX = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,false,true);
		opts.cssBefore.left = this.cycleW/2;
		opts.animIn = { left: 0, width: this.cycleW };
		opts.animOut = { left: 0 };
	});
	opts.cssBefore = { width: 0, top: 0 };
};
// growY - grow vertically from centered 0 height
$.fn.cycle.transitions.growY = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,true,false);
		opts.cssBefore.top = this.cycleH/2;
		opts.animIn = { top: 0, height: this.cycleH };
		opts.animOut = { top: 0 };
	});
	opts.cssBefore = { height: 0, left: 0 };
};

// curtainX - squeeze in both edges horizontally
$.fn.cycle.transitions.curtainX = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,false,true,true);
		opts.cssBefore.left = next.cycleW/2;
		opts.animIn = { left: 0, width: this.cycleW };
		opts.animOut = { left: curr.cycleW/2, width: 0 };
	});
	opts.cssBefore = { top: 0, width: 0 };
};
// curtainY - squeeze in both edges vertically
$.fn.cycle.transitions.curtainY = function($cont, $slides, opts) {
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,true,false,true);
		opts.cssBefore.top = next.cycleH/2;
		opts.animIn = { top: 0, height: next.cycleH };
		opts.animOut = { top: curr.cycleH/2, height: 0 };
	});
	opts.cssBefore = { left: 0, height: 0 };
};

// cover - curr slide covered by next slide
$.fn.cycle.transitions.cover = function($cont, $slides, opts) {
	var d = opts.direction || 'left';
	var w = $cont.css('overflow','hidden').width();
	var h = $cont.height();
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts);
		if (d == 'right')
			opts.cssBefore.left = -w;
		else if (d == 'up')
			opts.cssBefore.top = h;
		else if (d == 'down')
			opts.cssBefore.top = -h;
		else
			opts.cssBefore.left = w;
	});
	opts.animIn = { left: 0, top: 0};
	opts.animOut = { opacity: 1 };
	opts.cssBefore = { top: 0, left: 0 };
};

// uncover - curr slide moves off next slide
$.fn.cycle.transitions.uncover = function($cont, $slides, opts) {
	var d = opts.direction || 'left';
	var w = $cont.css('overflow','hidden').width();
	var h = $cont.height();
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,true,true,true);
		if (d == 'right')
			opts.animOut.left = w;
		else if (d == 'up')
			opts.animOut.top = -h;
		else if (d == 'down')
			opts.animOut.top = h;
		else
			opts.animOut.left = -w;
	});
	opts.animIn = { left: 0, top: 0 };
	opts.animOut = { opacity: 1 };
	opts.cssBefore = { top: 0, left: 0 };
};

// toss - move top slide and fade away
$.fn.cycle.transitions.toss = function($cont, $slides, opts) {
	var w = $cont.css('overflow','visible').width();
	var h = $cont.height();
	opts.before.push(function(curr, next, opts) {
		$.fn.cycle.commonReset(curr,next,opts,true,true,true);
		// provide default toss settings if animOut not provided
		if (!opts.animOut.left && !opts.animOut.top)
			opts.animOut = { left: w*2, top: -h/2, opacity: 0 };
		else
			opts.animOut.opacity = 0;
	});
	opts.cssBefore = { left: 0, top: 0 };
	opts.animIn = { left: 0 };
};

// wipe - clip animation
$.fn.cycle.transitions.wipe = function($cont, $slides, opts) {
	var w = $cont.css('overflow','hidden').width();
	var h = $cont.height();
	opts.cssBefore = opts.cssBefore || {};
	var clip;
	if (opts.clip) {
		if (/l2r/.test(opts.clip))
			clip = 'rect(0px 0px '+h+'px 0px)';
		else if (/r2l/.test(opts.clip))
			clip = 'rect(0px '+w+'px '+h+'px '+w+'px)';
		else if (/t2b/.test(opts.clip))
			clip = 'rect(0px '+w+'px 0px 0px)';
		else if (/b2t/.test(opts.clip))
			clip = 'rect('+h+'px '+w+'px '+h+'px 0px)';
		else if (/zoom/.test(opts.clip)) {
			var top = parseInt(h/2);
			var left = parseInt(w/2);
			clip = 'rect('+top+'px '+left+'px '+top+'px '+left+'px)';
		}
	}

	opts.cssBefore.clip = opts.cssBefore.clip || clip || 'rect(0px 0px 0px 0px)';

	var d = opts.cssBefore.clip.match(/(\d+)/g);
	var t = parseInt(d[0]), r = parseInt(d[1]), b = parseInt(d[2]), l = parseInt(d[3]);

	opts.before.push(function(curr, next, opts) {
		if (curr == next) return;
		var $curr = $(curr), $next = $(next);
		$.fn.cycle.commonReset(curr,next,opts,true,true,false);
		opts.cssAfter.display = 'block';

		var step = 1, count = parseInt((opts.speedIn / 13)) - 1;
		(function f() {
			var tt = t ? t - parseInt(step * (t/count)) : 0;
			var ll = l ? l - parseInt(step * (l/count)) : 0;
			var bb = b < h ? b + parseInt(step * ((h-b)/count || 1)) : h;
			var rr = r < w ? r + parseInt(step * ((w-r)/count || 1)) : w;
			$next.css({ clip: 'rect('+tt+'px '+rr+'px '+bb+'px '+ll+'px)' });
			(step++ <= count) ? setTimeout(f, 13) : $curr.css('display', 'none');
		})();
	});
	opts.cssBefore = { display: 'block', opacity: 1, top: 0, left: 0 };
	opts.animIn	   = { left: 0 };
	opts.animOut   = { left: 0 };
};

})(jQuery);

/*
 * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
 *
 * Uses the built in easing capabilities added In jQuery 1.1
 * to offer multiple easing options
 *
 * TERMS OF USE - jQuery Easing
 * 
 * Open source under the BSD License. 
 * 
 * Copyright å© 2008 George McGinley Smith
 * All rights reserved.
 * 
 * Redistribution and use in source and binary forms, with or without modification, 
 * are permitted provided that the following conditions are met:
 * 
 * Redistributions of source code must retain the above copyright notice, this list of 
 * conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright notice, this list 
 * of conditions and the following disclaimer in the documentation and/or other materials 
 * provided with the distribution.
 * 
 * Neither the name of the author nor the names of contributors may be used to endorse 
 * or promote products derived from this software without specific prior written permission.
 * 
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
 *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
 * OF THE POSSIBILITY OF SUCH DAMAGE. 
 *
*/

// t: current time, b: begInnIng value, c: change In value, d: duration
jQuery.easing['jswing'] = jQuery.easing['swing'];

jQuery.extend( jQuery.easing,
{
	def: 'easeOutQuad',
	swing: function (x, t, b, c, d) {
		//alert(jQuery.easing.default);
		return jQuery.easing[jQuery.easing.def](x, t, b, c, d);
	},
	easeInQuad: function (x, t, b, c, d) {
		return c*(t/=d)*t + b;
	},
	easeOutQuad: function (x, t, b, c, d) {
		return -c *(t/=d)*(t-2) + b;
	},
	easeInOutQuad: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return c/2*t*t + b;
		return -c/2 * ((--t)*(t-2) - 1) + b;
	},
	easeInCubic: function (x, t, b, c, d) {
		return c*(t/=d)*t*t + b;
	},
	easeOutCubic: function (x, t, b, c, d) {
		return c*((t=t/d-1)*t*t + 1) + b;
	},
	easeInOutCubic: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return c/2*t*t*t + b;
		return c/2*((t-=2)*t*t + 2) + b;
	},
	easeInQuart: function (x, t, b, c, d) {
		return c*(t/=d)*t*t*t + b;
	},
	easeOutQuart: function (x, t, b, c, d) {
		return -c * ((t=t/d-1)*t*t*t - 1) + b;
	},
	easeInOutQuart: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
		return -c/2 * ((t-=2)*t*t*t - 2) + b;
	},
	easeInQuint: function (x, t, b, c, d) {
		return c*(t/=d)*t*t*t*t + b;
	},
	easeOutQuint: function (x, t, b, c, d) {
		return c*((t=t/d-1)*t*t*t*t + 1) + b;
	},
	easeInOutQuint: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
		return c/2*((t-=2)*t*t*t*t + 2) + b;
	},
	easeInSine: function (x, t, b, c, d) {
		return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
	},
	easeOutSine: function (x, t, b, c, d) {
		return c * Math.sin(t/d * (Math.PI/2)) + b;
	},
	easeInOutSine: function (x, t, b, c, d) {
		return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
	},
	easeInExpo: function (x, t, b, c, d) {
		return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
	},
	easeOutExpo: function (x, t, b, c, d) {
		return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
	},
	easeInOutExpo: function (x, t, b, c, d) {
		if (t==0) return b;
		if (t==d) return b+c;
		if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
		return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
	},
	easeInCirc: function (x, t, b, c, d) {
		return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
	},
	easeOutCirc: function (x, t, b, c, d) {
		return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
	},
	easeInOutCirc: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
		return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
	},
	easeInElastic: 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;
	},
	easeOutElastic: 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;
	},
	easeInOutElastic: 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;
	},
	easeInBack: function (x, t, b, c, d, s) {
		if (s == undefined) s = 1.70158;
		return c*(t/=d)*t*((s+1)*t - s) + b;
	},
	easeOutBack: function (x, t, b, c, d, s) {
		if (s == undefined) s = 1.70158;
		return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
	},
	easeInOutBack: function (x, t, b, c, d, s) {
		if (s == undefined) 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;
	},
	easeInBounce: function (x, t, b, c, d) {
		return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b;
	},
	easeOutBounce: 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;
		}
	},
	easeInOutBounce: function (x, t, b, c, d) {
		if (t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
		return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
	}
});

/*
 *
 * TERMS OF USE - EASING EQUATIONS
 * 
 * Open source under the BSD License. 
 * 
 * Copyright å© 2001 Robert Penner
 * All rights reserved.
 * 
 * Redistribution and use in source and binary forms, with or without modification, 
 * are permitted provided that the following conditions are met:
 * 
 * Redistributions of source code must retain the above copyright notice, this list of 
 * conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright notice, this list 
 * of conditions and the following disclaimer in the documentation and/or other materials 
 * provided with the distribution.
 * 
 * Neither the name of the author nor the names of contributors may be used to endorse 
 * or promote products derived from this software without specific prior written permission.
 * 
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
 *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
 * OF THE POSSIBILITY OF SUCH DAMAGE. 
 *
 */




/*
 * jQuery validation plug-in 1.6
 *
 * http://bassistance.de/jquery-plugins/jquery-plugin-validation/
 * http://docs.jquery.com/Plugins/Validation
 *
 * Copyright (c) 2006 - 2008 J?rn Zaefferer
 *
 * $Id: jquery.validate.js 6403 2009-06-17 14:27:16Z joern.zaefferer $
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(7($){$.H($.2O,{1d:7(d){l(!6.F){d&&d.24&&2Y.1H&&1H.52("3v 3o, 4N\'t 1d, 67 3v");8}p c=$.17(6[0],\'v\');l(c){8 c}c=2e $.v(d,6[0]);$.17(6[0],\'v\',c);l(c.q.3u){6.3r("1B, 3j").1n(".4G").3b(7(){c.3a=w});l(c.q.35){6.3r("1B, 3j").1n(":23").3b(7(){c.1V=6})}6.23(7(b){l(c.q.24)b.5N();7 2m(){l(c.q.35){l(c.1V){p a=$("<1B 1A=\'5v\'/>").1p("u",c.1V.u).2M(c.1V.Z).51(c.U)}c.q.35.11(c,c.U);l(c.1V){a.3A()}8 I}8 w}l(c.3a){c.3a=I;8 2m()}l(c.M()){l(c.1a){c.1l=w;8 I}8 2m()}16{c.2h();8 I}})}8 c},J:7(){l($(6[0]).2Z(\'M\')){8 6.1d().M()}16{p b=w;p a=$(6[0].M).1d();6.P(7(){b&=a.L(6)});8 b}},4F:7(c){p d={},$L=6;$.P(c.1O(/\\s/),7(a,b){d[b]=$L.1p(b);$L.6c(b)});8 d},1f:7(h,k){p f=6[0];l(h){p i=$.17(f.M,\'v\').q;p d=i.1f;p c=$.v.2D(f);22(h){1b"1e":$.H(c,$.v.1N(k));d[f.u]=c;l(k.G)i.G[f.u]=$.H(i.G[f.u],k.G);2K;1b"3A":l(!k){S d[f.u];8 c}p e={};$.P(k.1O(/\\s/),7(a,b){e[b]=c[b];S c[b]});8 e}}p g=$.v.42($.H({},$.v.3Y(f),$.v.3W(f),$.v.3U(f),$.v.2D(f)),f);l(g.14){p j=g.14;S g.14;g=$.H({14:j},g)}8 g}});$.H($.5s[":"],{5p:7(a){8!$.1q(""+a.Z)},5i:7(a){8!!$.1q(""+a.Z)},5f:7(a){8!a.4l}});$.v=7(b,a){6.q=$.H({},$.v.33,b);6.U=a;6.3I()};$.v.W=7(c,b){l(T.F==1)8 7(){p a=$.3D(T);a.4V(c);8 $.v.W.1Q(6,a)};l(T.F>2&&b.29!=3x){b=$.3D(T).4R(1)}l(b.29!=3x){b=[b]}$.P(b,7(i,n){c=c.1P(2e 3s("\\\\{"+i+"\\\\}","g"),n)});8 c};$.H($.v,{33:{G:{},2d:{},1f:{},19:"3p",26:"J",2C:"4Q",2h:w,3l:$([]),2A:$([]),3u:w,3i:[],3Q:I,4O:7(a){6.3e=a;l(6.q.4M&&!6.4J){6.q.1L&&6.q.1L.11(6,a,6.q.19,6.q.26);6.1K(a).2y()}},4E:7(a){l(!6.1D(a)&&(a.u V 6.1c||!6.K(a))){6.L(a)}},6b:7(a){l(a.u V 6.1c||a==6.4y){6.L(a)}},69:7(a){l(a.u V 6.1c)6.L(a);16 l(a.4v.u V 6.1c)6.L(a.4v)},38:7(a,c,b){$(a).1Y(c).2w(b)},1L:7(a,c,b){$(a).2w(c).1Y(b)}},65:7(a){$.H($.v.33,a)},G:{14:"61 4q 2Z 14.",1r:"N 2L 6 4q.",1I:"N O a J 1I 60.",1v:"N O a J 5X.",1u:"N O a J 1u.",2q:"N O a J 1u (5R).",1s:"N O a J 1s.",1U:"N O 5P 1U.",2c:"N O a J 5O 5M 1s.",2n:"N O 47 5I Z 5H.",44:"N O a Z 5C a J 5B.",18:$.v.W("N O 3X 5y 2X {0} 2W."),1z:$.v.W("N O 5x 5w {0} 2W."),2j:$.v.W("N O a Z 3V {0} 45 {1} 2W 5q."),2i:$.v.W("N O a Z 3V {0} 45 {1}."),1x:$.v.W("N O a Z 5k 2X 3L 3K 48 {0}."),1F:$.v.W("N O a Z 5d 2X 3L 3K 48 {0}.")},3J:I,5b:{3I:7(){6.2r=$(6.q.2A);6.4i=6.2r.F&&6.2r||$(6.U);6.2s=$(6.q.3l).1e(6.q.2A);6.1c={};6.55={};6.1a=0;6.1i={};6.1g={};6.21();p f=(6.2d={});$.P(6.q.2d,7(d,c){$.P(c.1O(/\\s/),7(a,b){f[b]=d})});p e=6.q.1f;$.P(e,7(b,a){e[b]=$.v.1N(a)});7 1C(a){p b=$.17(6[0].M,"v");b.q["4A"+a.1A]&&b.q["4A"+a.1A].11(b,6[0])}$(6.U).1C("3F 3E 4W",":3C, :4U, :4T, 2b, 4S",1C).1C("3b",":3B, :3z, 2b, 3y",1C);l(6.q.3w)$(6.U).2J("1g-M.1d",6.q.3w)},M:7(){6.3t();$.H(6.1c,6.1w);6.1g=$.H({},6.1w);l(!6.J())$(6.U).2H("1g-M",[6]);6.1m();8 6.J()},3t:7(){6.2G();Q(p i=0,13=(6.27=6.13());13[i];i++){6.28(13[i])}8 6.J()},L:7(a){a=6.2F(a);6.4y=a;6.2E(a);6.27=$(a);p b=6.28(a);l(b){S 6.1g[a.u]}16{6.1g[a.u]=w}l(!6.3q()){6.12=6.12.1e(6.2s)}6.1m();8 b},1m:7(b){l(b){$.H(6.1w,b);6.R=[];Q(p c V b){6.R.2a({1j:b[c],L:6.2f(c)[0]})}6.1k=$.3n(6.1k,7(a){8!(a.u V b)})}6.q.1m?6.q.1m.11(6,6.1w,6.R):6.3m()},2B:7(){l($.2O.2B)$(6.U).2B();6.1c={};6.2G();6.2T();6.13().2w(6.q.19)},3q:7(){8 6.2g(6.1g)},2g:7(a){p b=0;Q(p i V a)b++;8 b},2T:7(){6.2P(6.12).2y()},J:7(){8 6.3N()==0},3N:7(){8 6.R.F},2h:7(){l(6.q.2h){3O{$(6.3h()||6.R.F&&6.R[0].L||[]).1n(":4P").3g()}3f(e){}}},3h:7(){p a=6.3e;8 a&&$.3n(6.R,7(n){8 n.L.u==a.u}).F==1&&a},13:7(){p a=6,2U={};8 $([]).1e(6.U.13).1n(":1B").1R(":23, :21, :4L, [4K]").1R(6.q.3i).1n(7(){!6.u&&a.q.24&&2Y.1H&&1H.3p("%o 4I 3X u 4H",6);l(6.u V 2U||!a.2g($(6).1f()))8 I;2U[6.u]=w;8 w})},2F:7(a){8 $(a)[0]},2z:7(){8 $(6.q.2C+"."+6.q.19,6.4i)},21:7(){6.1k=[];6.R=[];6.1w={};6.1o=$([]);6.12=$([]);6.27=$([])},2G:7(){6.21();6.12=6.2z().1e(6.2s)},2E:7(a){6.21();6.12=6.1K(a)},28:7(d){d=6.2F(d);l(6.1D(d)){d=6.2f(d.u)[0]}p a=$(d).1f();p c=I;Q(Y V a){p b={Y:Y,2l:a[Y]};3O{p f=$.v.1T[Y].11(6,d.Z.1P(/\\r/g,""),d,b.2l);l(f=="1S-1Z"){c=w;4D}c=I;l(f=="1i"){6.12=6.12.1R(6.1K(d));8}l(!f){6.3c(d,b);8 I}}3f(e){6.q.24&&2Y.1H&&1H.4C("6g 6f 6e 6d L "+d.4z+", 28 47 \'"+b.Y+"\' Y",e);6a e;}}l(c)8;l(6.2g(a))6.1k.2a(d);8 w},4x:7(a,b){l(!$.1y)8;p c=6.q.39?$(a).1y()[6.q.39]:$(a).1y();8 c&&c.G&&c.G[b]},4w:7(a,b){p m=6.q.G[a];8 m&&(m.29==4u?m:m[b])},4t:7(){Q(p i=0;i<T.F;i++){l(T[i]!==20)8 T[i]}8 20},2x:7(a,b){8 6.4t(6.4w(a.u,b),6.4x(a,b),!6.q.3Q&&a.68||20,$.v.G[b],"<4s>66: 64 1j 63 Q "+a.u+"</4s>")},3c:7(b,a){p c=6.2x(b,a.Y),36=/\\$?\\{(\\d+)\\}/g;l(1h c=="7"){c=c.11(6,a.2l,b)}16 l(36.15(c)){c=2v.W(c.1P(36,\'{$1}\'),a.2l)}6.R.2a({1j:c,L:b});6.1w[b.u]=c;6.1c[b.u]=c},2P:7(a){l(6.q.2u)a=a.1e(a.4p(6.q.2u));8 a},3m:7(){Q(p i=0;6.R[i];i++){p a=6.R[i];6.q.38&&6.q.38.11(6,a.L,6.q.19,6.q.26);6.34(a.L,a.1j)}l(6.R.F){6.1o=6.1o.1e(6.2s)}l(6.q.1G){Q(p i=0;6.1k[i];i++){6.34(6.1k[i])}}l(6.q.1L){Q(p i=0,13=6.4o();13[i];i++){6.q.1L.11(6,13[i],6.q.19,6.q.26)}}6.12=6.12.1R(6.1o);6.2T();6.2P(6.1o).4n()},4o:7(){8 6.27.1R(6.4m())},4m:7(){8 $(6.R).3d(7(){8 6.L})},34:7(a,c){p b=6.1K(a);l(b.F){b.2w().1Y(6.q.19);b.1p("4k")&&b.4j(c)}16{b=$("<"+6.q.2C+"/>").1p({"Q":6.32(a),4k:w}).1Y(6.q.19).4j(c||"");l(6.q.2u){b=b.2y().4n().5Z("<"+6.q.2u+"/>").4p()}l(!6.2r.5Y(b).F)6.q.4h?6.q.4h(b,$(a)):b.5W(a)}l(!c&&6.q.1G){b.3C("");1h 6.q.1G=="1t"?b.1Y(6.q.1G):6.q.1G(b)}6.1o=6.1o.1e(b)},1K:7(a){p b=6.32(a);8 6.2z().1n(7(){8 $(6).1p(\'Q\')==b})},32:7(a){8 6.2d[a.u]||(6.1D(a)?a.u:a.4z||a.u)},1D:7(a){8/3B|3z/i.15(a.1A)},2f:7(d){p c=6.U;8 $(5V.5U(d)).3d(7(a,b){8 b.M==c&&b.u==d&&b||4g})},1M:7(a,b){22(b.4f.3k()){1b\'2b\':8 $("3y:3o",b).F;1b\'1B\':l(6.1D(b))8 6.2f(b.u).1n(\':4l\').F}8 a.F},4e:7(b,a){8 6.2I[1h b]?6.2I[1h b](b,a):w},2I:{"5Q":7(b,a){8 b},"1t":7(b,a){8!!$(b,a.M).F},"7":7(b,a){8 b(a)}},K:7(a){8!$.v.1T.14.11(6,$.1q(a.Z),a)&&"1S-1Z"},4d:7(a){l(!6.1i[a.u]){6.1a++;6.1i[a.u]=w}},4c:7(a,b){6.1a--;l(6.1a<0)6.1a=0;S 6.1i[a.u];l(b&&6.1a==0&&6.1l&&6.M()){$(6.U).23();6.1l=I}16 l(!b&&6.1a==0&&6.1l){$(6.U).2H("1g-M",[6]);6.1l=I}},2o:7(a){8 $.17(a,"2o")||$.17(a,"2o",{31:4g,J:w,1j:6.2x(a,"1r")})}},1J:{14:{14:w},1I:{1I:w},1v:{1v:w},1u:{1u:w},2q:{2q:w},4b:{4b:w},1s:{1s:w},4a:{4a:w},1U:{1U:w},2c:{2c:w}},49:7(a,b){a.29==4u?6.1J[a]=b:$.H(6.1J,a)},3W:7(b){p a={};p c=$(b).1p(\'5L\');c&&$.P(c.1O(\' \'),7(){l(6 V $.v.1J){$.H(a,$.v.1J[6])}});8 a},3U:7(c){p a={};p d=$(c);Q(Y V $.v.1T){p b=d.1p(Y);l(b){a[Y]=b}}l(a.18&&/-1|5K|5J/.15(a.18)){S a.18}8 a},3Y:7(a){l(!$.1y)8{};p b=$.17(a.M,\'v\').q.39;8 b?$(a).1y()[b]:$(a).1y()},2D:7(b){p a={};p c=$.17(b.M,\'v\');l(c.q.1f){a=$.v.1N(c.q.1f[b.u])||{}}8 a},42:7(d,e){$.P(d,7(c,b){l(b===I){S d[c];8}l(b.30||b.2t){p a=w;22(1h b.2t){1b"1t":a=!!$(b.2t,e.M).F;2K;1b"7":a=b.2t.11(e,e);2K}l(a){d[c]=b.30!==20?b.30:w}16{S d[c]}}});$.P(d,7(a,b){d[a]=$.46(b)?b(e):b});$.P([\'1z\',\'18\',\'1F\',\'1x\'],7(){l(d[6]){d[6]=2Q(d[6])}});$.P([\'2j\',\'2i\'],7(){l(d[6]){d[6]=[2Q(d[6][0]),2Q(d[6][1])]}});l($.v.3J){l(d.1F&&d.1x){d.2i=[d.1F,d.1x];S d.1F;S d.1x}l(d.1z&&d.18){d.2j=[d.1z,d.18];S d.1z;S d.18}}l(d.G){S d.G}8 d},1N:7(a){l(1h a=="1t"){p b={};$.P(a.1O(/\\s/),7(){b[6]=w});a=b}8 a},5G:7(c,a,b){$.v.1T[c]=a;$.v.G[c]=b!=20?b:$.v.G[c];l(a.F<3){$.v.49(c,$.v.1N(c))}},1T:{14:7(c,d,a){l(!6.4e(a,d))8"1S-1Z";22(d.4f.3k()){1b\'2b\':p b=$(d).2M();8 b&&b.F>0;1b\'1B\':l(6.1D(d))8 6.1M(c,d)>0;5F:8 $.1q(c).F>0}},1r:7(f,h,j){l(6.K(h))8"1S-1Z";p g=6.2o(h);l(!6.q.G[h.u])6.q.G[h.u]={};g.43=6.q.G[h.u].1r;6.q.G[h.u].1r=g.1j;j=1h j=="1t"&&{1v:j}||j;l(g.31!==f){g.31=f;p k=6;6.4d(h);p i={};i[h.u]=f;$.2R($.H(w,{1v:j,41:"2S",40:"1d"+h.u,5A:"5z",17:i,1G:7(d){k.q.G[h.u].1r=g.43;p b=d===w;l(b){p e=k.1l;k.2E(h);k.1l=e;k.1k.2a(h);k.1m()}16{p a={};p c=(g.1j=d||k.2x(h,"1r"));a[h.u]=$.46(c)?c(f):c;k.1m(a)}g.J=b;k.4c(h,b)}},j));8"1i"}16 l(6.1i[h.u]){8"1i"}8 g.J},1z:7(b,c,a){8 6.K(c)||6.1M($.1q(b),c)>=a},18:7(b,c,a){8 6.K(c)||6.1M($.1q(b),c)<=a},2j:7(b,d,a){p c=6.1M($.1q(b),d);8 6.K(d)||(c>=a[0]&&c<=a[1])},1F:7(b,c,a){8 6.K(c)||b>=a},1x:7(b,c,a){8 6.K(c)||b<=a},2i:7(b,c,a){8 6.K(c)||(b>=a[0]&&b<=a[1])},1I:7(a,b){8 6.K(b)||/^((([a-z]|\\d|[!#\\$%&\'\\*\\+\\-\\/=\\?\\^X`{\\|}~]|[\\y-\\x\\E-\\C\\A-\\B])+(\\.([a-z]|\\d|[!#\\$%&\'\\*\\+\\-\\/=\\?\\^X`{\\|}~]|[\\y-\\x\\E-\\C\\A-\\B])+)*)|((\\3T)((((\\2k|\\1X)*(\\2V\\3S))?(\\2k|\\1X)+)?(([\\3R-\\5u\\3P\\3M\\5t-\\5r\\3Z]|\\5D|[\\5E-\\5o]|[\\5n-\\5m]|[\\y-\\x\\E-\\C\\A-\\B])|(\\\\([\\3R-\\1X\\3P\\3M\\2V-\\3Z]|[\\y-\\x\\E-\\C\\A-\\B]))))*(((\\2k|\\1X)*(\\2V\\3S))?(\\2k|\\1X)+)?(\\3T)))@((([a-z]|\\d|[\\y-\\x\\E-\\C\\A-\\B])|(([a-z]|\\d|[\\y-\\x\\E-\\C\\A-\\B])([a-z]|\\d|-|\\.|X|~|[\\y-\\x\\E-\\C\\A-\\B])*([a-z]|\\d|[\\y-\\x\\E-\\C\\A-\\B])))\\.)+(([a-z]|[\\y-\\x\\E-\\C\\A-\\B])|(([a-z]|[\\y-\\x\\E-\\C\\A-\\B])([a-z]|\\d|-|\\.|X|~|[\\y-\\x\\E-\\C\\A-\\B])*([a-z]|[\\y-\\x\\E-\\C\\A-\\B])))\\.?$/i.15(a)},1v:7(a,b){8 6.K(b)||/^(5l?|5j):\\/\\/(((([a-z]|\\d|-|\\.|X|~|[\\y-\\x\\E-\\C\\A-\\B])|(%[\\1W-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:)*@)?(((\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5]))|((([a-z]|\\d|[\\y-\\x\\E-\\C\\A-\\B])|(([a-z]|\\d|[\\y-\\x\\E-\\C\\A-\\B])([a-z]|\\d|-|\\.|X|~|[\\y-\\x\\E-\\C\\A-\\B])*([a-z]|\\d|[\\y-\\x\\E-\\C\\A-\\B])))\\.)+(([a-z]|[\\y-\\x\\E-\\C\\A-\\B])|(([a-z]|[\\y-\\x\\E-\\C\\A-\\B])([a-z]|\\d|-|\\.|X|~|[\\y-\\x\\E-\\C\\A-\\B])*([a-z]|[\\y-\\x\\E-\\C\\A-\\B])))\\.?)(:\\d*)?)(\\/((([a-z]|\\d|-|\\.|X|~|[\\y-\\x\\E-\\C\\A-\\B])|(%[\\1W-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)+(\\/(([a-z]|\\d|-|\\.|X|~|[\\y-\\x\\E-\\C\\A-\\B])|(%[\\1W-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)*)*)?)?(\\?((([a-z]|\\d|-|\\.|X|~|[\\y-\\x\\E-\\C\\A-\\B])|(%[\\1W-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)|[\\5h-\\5g]|\\/|\\?)*)?(\\#((([a-z]|\\d|-|\\.|X|~|[\\y-\\x\\E-\\C\\A-\\B])|(%[\\1W-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)|\\/|\\?)*)?$/i.15(a)},1u:7(a,b){8 6.K(b)||!/5e|5S/.15(2e 5T(a))},2q:7(a,b){8 6.K(b)||/^\\d{4}[\\/-]\\d{1,2}[\\/-]\\d{1,2}$/.15(a)},1s:7(a,b){8 6.K(b)||/^-?(?:\\d+|\\d{1,3}(?:,\\d{3})+)(?:\\.\\d+)?$/.15(a)},1U:7(a,b){8 6.K(b)||/^\\d+$/.15(a)},2c:7(b,e){l(6.K(e))8"1S-1Z";l(/[^0-9-]+/.15(b))8 I;p a=0,d=0,2p=I;b=b.1P(/\\D/g,"");Q(p n=b.F-1;n>=0;n--){p c=b.5c(n);p d=5a(c,10);l(2p){l((d*=2)>9)d-=9}a+=d;2p=!2p}8(a%10)==0},44:7(b,c,a){a=1h a=="1t"?a.1P(/,/g,\'|\'):"59|58?g|57";8 6.K(c)||b.62(2e 3s(".("+a+")$","i"))},2n:7(c,d,a){p b=$(a).56(".1d-2n").2J("4B.1d-2n",7(){$(d).J()});8 c==b.2M()}}});$.W=$.v.W})(2v);(7($){p c=$.2R;p d={};$.2R=7(a){a=$.H(a,$.H({},$.54,a));p b=a.40;l(a.41=="2S"){l(d[b]){d[b].2S()}8(d[b]=c.1Q(6,T))}8 c.1Q(6,T)}})(2v);(7($){$.P({3g:\'3F\',4B:\'3E\'},7(b,a){$.1E.37[a]={53:7(){l($.3H.4r)8 I;6.50(b,$.1E.37[a].2N,w)},4Z:7(){l($.3H.4r)8 I;6.4Y(b,$.1E.37[a].2N,w)},2N:7(e){T[0]=$.1E.2L(e);T[0].1A=a;8 $.1E.2m.1Q(6,T)}}});$.H($.2O,{1C:7(d,e,c){8 6.2J(d,7(a){p b=$(a.3G);l(b.2Z(e)){8 c.1Q(b,T)}})},4X:7(a,b){8 6.2H(a,[$.1E.2L({1A:a,3G:b})])}})})(2v);',62,389,'||||||this|function|return|||||||||||||if||||var|settings||||name|validator|true|uD7FF|u00A0||uFDF0|uFFEF|uFDCF||uF900|length|messages|extend|false|valid|optional|element|form|Please|enter|each|for|errorList|delete|arguments|currentForm|in|format|_|method|value||call|toHide|elements|required|test|else|data|maxlength|errorClass|pendingRequest|case|submitted|validate|add|rules|invalid|typeof|pending|message|successList|formSubmitted|showErrors|filter|toShow|attr|trim|remote|number|string|date|url|errorMap|max|metadata|minlength|type|input|delegate|checkable|event|min|success|console|email|classRuleSettings|errorsFor|unhighlight|getLength|normalizeRule|split|replace|apply|not|dependency|methods|digits|submitButton|da|x09|addClass|mismatch|undefined|reset|switch|submit|debug||validClass|currentElements|check|constructor|push|select|creditcard|groups|new|findByName|objectLength|focusInvalid|range|rangelength|x20|parameters|handle|equalTo|previousValue|bEven|dateISO|labelContainer|containers|depends|wrapper|jQuery|removeClass|defaultMessage|hide|errors|errorLabelContainer|resetForm|errorElement|staticRules|prepareElement|clean|prepareForm|triggerHandler|dependTypes|bind|break|fix|val|handler|fn|addWrapper|Number|ajax|abort|hideErrors|rulesCache|x0d|characters|than|window|is|param|old|idOrName|defaults|showLabel|submitHandler|theregex|special|highlight|meta|cancelSubmit|click|formatAndAdd|map|lastActive|catch|focus|findLastActive|ignore|button|toLowerCase|errorContainer|defaultShowErrors|grep|selected|error|numberOfInvalids|find|RegExp|checkForm|onsubmit|nothing|invalidHandler|Array|option|checkbox|remove|radio|text|makeArray|focusout|focusin|target|browser|init|autoCreateRanges|equal|or|x0c|size|try|x0b|ignoreTitle|x01|x0a|x22|attributeRules|between|classRules|no|metadataRules|x7f|port|mode|normalizeRules|originalMessage|accept|and|isFunction|the|to|addClassRules|numberDE|dateDE|stopRequest|startRequest|depend|nodeName|null|errorPlacement|errorContext|html|generated|checked|invalidElements|show|validElements|parent|field|msie|strong|findDefined|String|parentNode|customMessage|customMetaMessage|lastElement|id|on|blur|log|continue|onfocusout|removeAttrs|cancel|assigned|has|blockFocusCleanup|disabled|image|focusCleanup|can|onfocusin|visible|label|slice|textarea|file|password|unshift|keyup|triggerEvent|removeEventListener|teardown|addEventListener|appendTo|warn|setup|ajaxSettings|valueCache|unbind|gif|jpe|png|parseInt|prototype|charAt|greater|Invalid|unchecked|uF8FF|uE000|filled|ftp|less|https|x7e|x5d|x5b|blank|long|x1f|expr|x0e|x08|hidden|least|at|more|json|dataType|extension|with|x21|x23|default|addMethod|again|same|524288|2147483647|class|card|preventDefault|credit|only|boolean|ISO|NaN|Date|getElementsByName|document|insertAfter|URL|append|wrap|address|This|match|defined|No|setDefaults|Warning|returning|title|onclick|throw|onkeyup|removeAttr|checking|when|occured|exception'.split('|'),0,{}))


// JavaScript Document

/*
 * Superfish v1.4.8 - jQuery menu widget
 * Copyright (c) 2008 Joel Birch
 *
 * Dual licensed under the MIT and GPL licenses:
 * 	http://www.opensource.org/licenses/mit-license.php
 * 	http://www.gnu.org/licenses/gpl.html
 *
 * CHANGELOG: http://users.tpg.com.au/j_birch/plugins/superfish/changelog.txt
 */

;(function($){
	$.fn.superfish = function(op){

		var sf = $.fn.superfish,
			c = sf.c,
			$arrow = $(['<span class="',c.arrowClass,'"> &#187;</span>'].join('')),
			over = function(){
				var $$ = $(this), menu = getMenu($$);
				clearTimeout(menu.sfTimer);
				$$.showSuperfishUl().siblings().hideSuperfishUl();
			},
			out = function(){
				var $$ = $(this), menu = getMenu($$), o = sf.op;
				clearTimeout(menu.sfTimer);
				menu.sfTimer=setTimeout(function(){
					o.retainPath=($.inArray($$[0],o.$path)>-1);
					$$.hideSuperfishUl();
					if (o.$path.length && $$.parents(['li.',o.hoverClass].join('')).length<1){over.call(o.$path);}
				},o.delay);	
			},
			getMenu = function($menu){
				var menu = $menu.parents(['ul.',c.menuClass,':first'].join(''))[0];
				sf.op = sf.o[menu.serial];
				return menu;
			},
			addArrow = function($a){ $a.addClass(c.anchorClass).append($arrow.clone()); };
			
		return this.each(function() {
			var s = this.serial = sf.o.length;
			var o = $.extend({},sf.defaults,op);
			o.$path = $('li.'+o.pathClass,this).slice(0,o.pathLevels).each(function(){
				$(this).addClass([o.hoverClass,c.bcClass].join(' '))
					.filter('li:has(ul)').removeClass(o.pathClass);
			});
			sf.o[s] = sf.op = o;
			
			$('li:has(ul)',this)[($.fn.hoverIntent && !o.disableHI) ? 'hoverIntent' : 'hover'](over,out).each(function() {
				if (o.autoArrows) addArrow( $('>a:first-child',this) );
			})
			.not('.'+c.bcClass)
				.hideSuperfishUl();
			
			var $a = $('a',this);
			$a.each(function(i){
				var $li = $a.eq(i).parents('li');
				$a.eq(i).focus(function(){over.call($li);}).blur(function(){out.call($li);});
			});
			o.onInit.call(this);
			
		}).each(function() {
			var menuClasses = [c.menuClass];
			if (sf.op.dropShadows  && !($.browser.msie && $.browser.version < 7)) menuClasses.push(c.shadowClass);
			$(this).addClass(menuClasses.join(' '));
		});
	};

	var sf = $.fn.superfish;
	sf.o = [];
	sf.op = {};
	sf.IE7fix = function(){
		var o = sf.op;
		if ($.browser.msie && $.browser.version > 6 && o.dropShadows && o.animation.opacity!=undefined)
			this.toggleClass(sf.c.shadowClass+'-off');
		};
	sf.c = {
		bcClass     : 'sf-breadcrumb',
		menuClass   : 'sf-js-enabled',
		anchorClass : 'sf-with-ul',
		arrowClass  : 'sf-sub-indicator',
		shadowClass : 'sf-shadow'
	};
	sf.defaults = {
		hoverClass	: 'sfHover',
		pathClass	: 'overideThisToUse',
		pathLevels	: 1,
		delay		: 800,
		animation	: {opacity:'show'},
		speed		: 'normal',
		autoArrows	: true,
		dropShadows : true,
		disableHI	: false,		// true disables hoverIntent detection
		onInit		: function(){}, // callback functions
		onBeforeShow: function(){},
		onShow		: function(){},
		onHide		: function(){}
	};
	$.fn.extend({
		hideSuperfishUl : function(){
			var o = sf.op,
				not = (o.retainPath===true) ? o.$path : '';
			o.retainPath = false;
			var $ul = $(['li.',o.hoverClass].join(''),this).add(this).not(not).removeClass(o.hoverClass)
					.find('>ul').hide().css('visibility','hidden');
			o.onHide.call($ul);
			return this;
		},
		showSuperfishUl : function(){
			var o = sf.op,
				sh = sf.c.shadowClass+'-off',
				$ul = this.addClass(o.hoverClass)
					.find('>ul:hidden').css('visibility','visible');
			sf.IE7fix.call($ul);
			o.onBeforeShow.call($ul);
			$ul.animate(o.animation,o.speed,function(){ sf.IE7fix.call($ul); o.onShow.call($ul); });
			return this;
		}
	});

})(jQuery);

//CURVY CORNERS
function browserdetect(){var A=navigator.userAgent.toLowerCase();this.isIE=A.indexOf("msie")>-1;this.ieVer=this.isIE?/msie\s(\d\.\d)/.exec(A)[1]:0;this.isMoz=A.indexOf("firefox")!=-1;this.isSafari=A.indexOf("safari")!=-1;this.quirksMode=this.isIE&&(!document.compatMode||document.compatMode.indexOf("BackCompat")>-1);this.isOp="opera" in window;this.isWebKit=A.indexOf("webkit")!=-1;if(this.isIE){this.get_style=function(D,F){if(!(F in D.currentStyle)){return""}var C=/^([\d.]+)(\w*)/.exec(D.currentStyle[F]);if(!C){return D.currentStyle[F]}if(C[1]==0){return"0"}if(C[2]&&C[2]!=="px"){var B=D.style.left;var E=D.runtimeStyle.left;D.runtimeStyle.left=D.currentStyle.left;D.style.left=C[1]+C[2];C[0]=D.style.pixelLeft;D.style.left=B;D.runtimeStyle.left=E}return C[0]}}else{this.get_style=function(B,C){C=C.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();return document.defaultView.getComputedStyle(B,"").getPropertyValue(C)}}}var curvyBrowser=new browserdetect;if(curvyBrowser.isIE){try{document.execCommand("BackgroundImageCache",false,true)}catch(e){}}function curvyCnrSpec(A){this.selectorText=A;this.tlR=this.trR=this.blR=this.brR=0;this.tlu=this.tru=this.blu=this.bru="";this.antiAlias=true}curvyCnrSpec.prototype.setcorner=function(B,C,A,D){if(!B){this.tlR=this.trR=this.blR=this.brR=parseInt(A);this.tlu=this.tru=this.blu=this.bru=D}else{propname=B.charAt(0)+C.charAt(0);this[propname+"R"]=parseInt(A);this[propname+"u"]=D}};curvyCnrSpec.prototype.get=function(D){if(/^(t|b)(l|r)(R|u)$/.test(D)){return this[D]}if(/^(t|b)(l|r)Ru$/.test(D)){var C=D.charAt(0)+D.charAt(1);return this[C+"R"]+this[C+"u"]}if(/^(t|b)Ru?$/.test(D)){var B=D.charAt(0);B+=this[B+"lR"]>this[B+"rR"]?"l":"r";var A=this[B+"R"];if(D.length===3&&D.charAt(2)==="u"){A+=this[B="u"]}return A}throw new Error("Don't recognize property "+D)};curvyCnrSpec.prototype.radiusdiff=function(A){if(A!=="t"&&A!=="b"){throw new Error("Param must be 't' or 'b'")}return Math.abs(this[A+"lR"]-this[A+"rR"])};curvyCnrSpec.prototype.setfrom=function(A){this.tlu=this.tru=this.blu=this.bru="px";if("tl" in A){this.tlR=A.tl.radius}if("tr" in A){this.trR=A.tr.radius}if("bl" in A){this.blR=A.bl.radius}if("br" in A){this.brR=A.br.radius}if("antiAlias" in A){this.antiAlias=A.antiAlias}};curvyCnrSpec.prototype.cloneOn=function(G){var E=["tl","tr","bl","br"];var H=0;var C,A;for(C in E){if(!isNaN(C)){A=this[E[C]+"u"];if(A!==""&&A!=="px"){H=new curvyCnrSpec;break}}}if(!H){H=this}else{var B,D,F=curvyBrowser.get_style(G,"left");for(C in E){if(!isNaN(C)){B=E[C];A=this[B+"u"];D=this[B+"R"];if(A!=="px"){var F=G.style.left;G.style.left=D+A;D=G.style.pixelLeft;G.style.left=F}H[B+"R"]=D;H[B+"u"]="px"}}G.style.left=F}return H};curvyCnrSpec.prototype.radiusSum=function(A){if(A!=="t"&&A!=="b"){throw new Error("Param must be 't' or 'b'")}return this[A+"lR"]+this[A+"rR"]};curvyCnrSpec.prototype.radiusCount=function(A){var B=0;if(this[A+"lR"]){++B}if(this[A+"rR"]){++B}return B};curvyCnrSpec.prototype.cornerNames=function(){var A=[];if(this.tlR){A.push("tl")}if(this.trR){A.push("tr")}if(this.blR){A.push("bl")}if(this.brR){A.push("br")}return A};function operasheet(C){var A=document.styleSheets.item(C).ownerNode.text;A=A.replace(/\/\*(\n|\r|.)*?\*\//g,"");var D=new RegExp("^s*([\\w.#][-\\w.#, ]+)[\\n\\s]*\\{([^}]+border-((top|bottom)-(left|right)-)?radius[^}]*)\\}","mg");var G;this.rules=[];while((G=D.exec(A))!==null){var F=new RegExp("(..)border-((top|bottom)-(left|right)-)?radius:\\s*([\\d.]+)(in|em|px|ex|pt)","g");var E,B=new curvyCnrSpec(G[1]);while((E=F.exec(G[2]))!==null){if(E[1]!=="z-"){B.setcorner(E[3],E[4],E[5],E[6])}}this.rules.push(B)}}operasheet.contains_border_radius=function(A){return/border-((top|bottom)-(left|right)-)?radius/.test(document.styleSheets.item(A).ownerNode.text)};function curvyCorners(){var G,D,E,B,J;if(typeof arguments[0]!=="object"){throw curvyCorners.newError("First parameter of curvyCorners() must be an object.")}if(arguments[0] instanceof curvyCnrSpec){B=arguments[0];if(!B.selectorText&&typeof arguments[1]==="string"){B.selectorText=arguments[1]}}else{if(typeof arguments[1]!=="object"&&typeof arguments[1]!=="string"){throw curvyCorners.newError("Second parameter of curvyCorners() must be an object or a class name.")}D=arguments[1];if(typeof D!=="string"){D=""}if(D!==""&&D.charAt(0)!=="."&&"autoPad" in arguments[0]){D="."+D}B=new curvyCnrSpec(D);B.setfrom(arguments[0])}if(B.selectorText){J=0;var I=B.selectorText.replace(/\s+$/,"").split(/,\s*/);E=new Array;function A(M){var L=M.split("#");return(L.length===2?"#":"")+L.pop()}for(G=0;G<I.length;++G){var K=A(I[G]);var H=K.split(" ");switch(K.charAt(0)){case"#":D=H.length===1?K:H[0];D=document.getElementById(D.substr(1));if(D===null){curvyCorners.alert("No object with ID "+K+" exists yet.\nCall curvyCorners(settings, obj) when it is created.")}else{if(H.length===1){E.push(D)}else{E=E.concat(curvyCorners.getElementsByClass(H[1],D))}}break;default:if(H.length===1){E=E.concat(curvyCorners.getElementsByClass(K))}else{var C=curvyCorners.getElementsByClass(H[0]);for(D=0;D<C.length;++D){E=E.concat(curvyCorners.getElementsByClass(H[1],C))}}}}}else{J=1;E=arguments}for(G=J,D=E.length;G<D;++G){if(E[G]&&(!("IEborderRadius" in E[G].style)||E[G].style.IEborderRadius!="set")){if(E[G].className&&E[G].className.indexOf("curvyRedraw")!==-1){if(typeof curvyCorners.redrawList==="undefined"){curvyCorners.redrawList=new Array}curvyCorners.redrawList.push({node:E[G],spec:B,copy:E[G].cloneNode(false)})}E[G].style.IEborderRadius="set";var F=new curvyObject(B,E[G]);F.applyCorners()}}}curvyCorners.prototype.applyCornersToAll=function(){curvyCorners.alert("This function is now redundant. Just call curvyCorners(). See documentation.")};curvyCorners.redraw=function(){if(!curvyBrowser.isOp&&!curvyBrowser.isIE){return}if(!curvyCorners.redrawList){throw curvyCorners.newError("curvyCorners.redraw() has nothing to redraw.")}var E=curvyCorners.bock_redraw;curvyCorners.block_redraw=true;for(var A in curvyCorners.redrawList){if(isNaN(A)){continue}var D=curvyCorners.redrawList[A];if(!D.node.clientWidth){continue}var B=D.copy.cloneNode(false);for(var C=D.node.firstChild;C!=null;C=C.nextSibling){if(C.className==="autoPadDiv"){break}}if(!C){curvyCorners.alert("Couldn't find autoPad DIV");break}D.node.parentNode.replaceChild(B,D.node);while(C.firstChild){B.appendChild(C.removeChild(C.firstChild))}D=new curvyObject(D.spec,D.node=B);D.applyCorners()}curvyCorners.block_redraw=E};curvyCorners.adjust=function(obj,prop,newval){if(curvyBrowser.isOp||curvyBrowser.isIE){if(!curvyCorners.redrawList){throw curvyCorners.newError("curvyCorners.adjust() has nothing to adjust.")}var i,j=curvyCorners.redrawList.length;for(i=0;i<j;++i){if(curvyCorners.redrawList[i].node===obj){break}}if(i===j){throw curvyCorners.newError("Object not redrawable")}obj=curvyCorners.redrawList[i].copy}if(prop.indexOf(".")===-1){obj[prop]=newval}else{eval("obj."+prop+"='"+newval+"'")}};curvyCorners.handleWinResize=function(){if(!curvyCorners.block_redraw){curvyCorners.redraw()}};curvyCorners.setWinResize=function(A){curvyCorners.block_redraw=!A};curvyCorners.newError=function(A){return new Error("curvyCorners Error:\n"+A)};curvyCorners.alert=function(A){if(typeof curvyCornersVerbose==="undefined"||curvyCornersVerbose){alert(A)}};function curvyObject(){var U;this.box=arguments[1];this.settings=arguments[0];this.topContainer=this.bottomContainer=this.shell=U=null;var K=this.box.clientWidth;if(!K&&curvyBrowser.isIE){this.box.style.zoom=1;K=this.box.clientWidth}if(!K){if(!this.box.parentNode){throw this.newError("box has no parent!")}for(U=this.box;;U=U.parentNode){if(!U||U.tagName==="BODY"){this.applyCorners=function(){};curvyCorners.alert(this.errmsg("zero-width box with no accountable parent","warning"));return}if(U.style.display==="none"){break}}U.style.display="block";K=this.box.clientWidth}if(arguments[0] instanceof curvyCnrSpec){this.spec=arguments[0].cloneOn(this.box)}else{this.spec=new curvyCnrSpec("");this.spec.setfrom(this.settings)}var b=curvyBrowser.get_style(this.box,"borderTopWidth");var J=curvyBrowser.get_style(this.box,"borderBottomWidth");var D=curvyBrowser.get_style(this.box,"borderLeftWidth");var B=curvyBrowser.get_style(this.box,"borderRightWidth");var I=curvyBrowser.get_style(this.box,"borderTopColor");var G=curvyBrowser.get_style(this.box,"borderBottomColor");var A=curvyBrowser.get_style(this.box,"borderLeftColor");var E=curvyBrowser.get_style(this.box,"backgroundColor");var C=curvyBrowser.get_style(this.box,"backgroundImage");var Y=curvyBrowser.get_style(this.box,"backgroundRepeat");if(this.box.currentStyle&&this.box.currentStyle.backgroundPositionX){var R=curvyBrowser.get_style(this.box,"backgroundPositionX");var P=curvyBrowser.get_style(this.box,"backgroundPositionY")}else{var R=curvyBrowser.get_style(this.box,"backgroundPosition");R=R.split(" ");var P=R[1];R=R[0]}var O=curvyBrowser.get_style(this.box,"position");var Z=curvyBrowser.get_style(this.box,"paddingTop");var c=curvyBrowser.get_style(this.box,"paddingBottom");var Q=curvyBrowser.get_style(this.box,"paddingLeft");var a=curvyBrowser.get_style(this.box,"paddingRight");var S=curvyBrowser.get_style(this.box,"border");filter=curvyBrowser.ieVer>7?curvyBrowser.get_style(this.box,"filter"):null;var H=this.spec.get("tR");var M=this.spec.get("bR");var W=function(f){if(typeof f==="number"){return f}if(typeof f!=="string"){throw new Error("unexpected styleToNPx type "+typeof f)}var d=/^[-\d.]([a-z]+)$/.exec(f);if(d&&d[1]!="px"){throw new Error("Unexpected unit "+d[1])}if(isNaN(f=parseInt(f))){f=0}return f};var T=function(d){return d<=0?"0":d+"px"};try{this.borderWidth=W(b);this.borderWidthB=W(J);this.borderWidthL=W(D);this.borderWidthR=W(B);this.boxColour=curvyObject.format_colour(E);this.topPadding=W(Z);this.bottomPadding=W(c);this.leftPadding=W(Q);this.rightPadding=W(a);this.boxWidth=K;this.boxHeight=this.box.clientHeight;this.borderColour=curvyObject.format_colour(I);this.borderColourB=curvyObject.format_colour(G);this.borderColourL=curvyObject.format_colour(A);this.borderString=this.borderWidth+"px solid "+this.borderColour;this.borderStringB=this.borderWidthB+"px solid "+this.borderColourB;this.backgroundImage=((C!="none")?C:"");this.backgroundRepeat=Y}catch(X){throw this.newError("getMessage" in X?X.getMessage():X.message)}var F=this.boxHeight;var V=K;if(curvyBrowser.isOp){R=W(R);P=W(P);if(R){var N=V+this.borderWidthL+this.borderWidthR;if(R>N){R=N}R=(N/R*100)+"%"}if(P){var N=F+this.borderWidth+this.borderWidthB;if(P>N){P=N}P=(N/P*100)+"%"}}if(curvyBrowser.quirksMode){}else{this.boxWidth-=this.leftPadding+this.rightPadding;this.boxHeight-=this.topPadding+this.bottomPadding}this.contentContainer=document.createElement("div");if(filter){this.contentContainer.style.filter=filter}while(this.box.firstChild){this.contentContainer.appendChild(this.box.removeChild(this.box.firstChild))}if(O!="absolute"){this.box.style.position="relative"}this.box.style.padding="0";this.box.style.border=this.box.style.backgroundImage="none";this.box.style.backgroundColor="transparent";this.box.style.width=(V+this.borderWidthL+this.borderWidthR)+"px";this.box.style.height=(F+this.borderWidth+this.borderWidthB)+"px";var L=document.createElement("div");L.style.position="absolute";if(filter){L.style.filter=filter}if(curvyBrowser.quirksMode){L.style.width=(V+this.borderWidthL+this.borderWidthR)+"px"}else{L.style.width=V+"px"}L.style.height=T(F+this.borderWidth+this.borderWidthB-H-M);L.style.padding="0";L.style.top=H+"px";L.style.left="0";if(this.borderWidthL){L.style.borderLeft=this.borderWidthL+"px solid "+this.borderColourL}if(this.borderWidth&&!H){L.style.borderTop=this.borderWidth+"px solid "+this.borderColour}if(this.borderWidthR){L.style.borderRight=this.borderWidthR+"px solid "+this.borderColourL}if(this.borderWidthB&&!M){L.style.borderBottom=this.borderWidthB+"px solid "+this.borderColourB}L.style.backgroundColor=E;L.style.backgroundImage=this.backgroundImage;L.style.backgroundRepeat=this.backgroundRepeat;this.shell=this.box.appendChild(L);K=curvyBrowser.get_style(this.shell,"width");if(K===""||K==="auto"||K.indexOf("%")!==-1){throw this.newError("Shell width is "+K)}this.boxWidth=(K!=""&&K!="auto"&&K.indexOf("%")==-1)?parseInt(K):this.shell.clientWidth;this.applyCorners=function(){if(this.backgroundObject){var w=function(AO,i,t){if(AO===0){return 0}var k;if(AO==="right"||AO==="bottom"){return t-i}if(AO==="center"){return(t-i)/2}if(AO.indexOf("%")>0){return(t-i)*100/parseInt(AO)}return W(AO)};this.backgroundPosX=w(R,this.backgroundObject.width,V);this.backgroundPosY=w(P,this.backgroundObject.height,F)}else{if(this.backgroundImage){this.backgroundPosX=W(R);this.backgroundPosY=W(P)}}if(H){v=document.createElement("div");v.style.width=this.boxWidth+"px";v.style.fontSize="1px";v.style.overflow="hidden";v.style.position="absolute";v.style.paddingLeft=this.borderWidth+"px";v.style.paddingRight=this.borderWidth+"px";v.style.height=H+"px";v.style.top=-H+"px";v.style.left=-this.borderWidthL+"px";this.topContainer=this.shell.appendChild(v)}if(M){var v=document.createElement("div");v.style.width=this.boxWidth+"px";v.style.fontSize="1px";v.style.overflow="hidden";v.style.position="absolute";v.style.paddingLeft=this.borderWidthB+"px";v.style.paddingRight=this.borderWidthB+"px";v.style.height=M+"px";v.style.bottom=-M+"px";v.style.left=-this.borderWidthL+"px";this.bottomContainer=this.shell.appendChild(v)}var AG=this.spec.cornerNames();for(var AK in AG){if(!isNaN(AK)){var AC=AG[AK];var AD=this.spec[AC+"R"];var AE,AH,j,AF;if(AC=="tr"||AC=="tl"){AE=this.borderWidth;AH=this.borderColour;AF=this.borderWidth}else{AE=this.borderWidthB;AH=this.borderColourB;AF=this.borderWidthB}j=AD-AF;var u=document.createElement("div");u.style.height=this.spec.get(AC+"Ru");u.style.width=this.spec.get(AC+"Ru");u.style.position="absolute";u.style.fontSize="1px";u.style.overflow="hidden";var r,q,p;var n=filter?parseInt(/alpha\(opacity.(\d+)\)/.exec(filter)[1]):100;for(r=0;r<AD;++r){var m=(r+1>=j)?-1:Math.floor(Math.sqrt(Math.pow(j,2)-Math.pow(r+1,2)))-1;if(j!=AD){var h=(r>=j)?-1:Math.ceil(Math.sqrt(Math.pow(j,2)-Math.pow(r,2)));var f=(r+1>=AD)?-1:Math.floor(Math.sqrt(Math.pow(AD,2)-Math.pow((r+1),2)))-1}var d=(r>=AD)?-1:Math.ceil(Math.sqrt(Math.pow(AD,2)-Math.pow(r,2)));if(m>-1){this.drawPixel(r,0,this.boxColour,n,(m+1),u,true,AD)}if(j!=AD){if(this.spec.antiAlias){for(q=m+1;q<h;++q){if(this.backgroundImage!=""){var g=curvyObject.pixelFraction(r,q,j)*100;this.drawPixel(r,q,AH,n,1,u,g>=30,AD)}else{if(this.boxColour!=="transparent"){var AB=curvyObject.BlendColour(this.boxColour,AH,curvyObject.pixelFraction(r,q,j));this.drawPixel(r,q,AB,n,1,u,false,AD)}else{this.drawPixel(r,q,AH,n>>1,1,u,false,AD)}}}if(f>=h){if(h==-1){h=0}this.drawPixel(r,h,AH,n,(f-h+1),u,false,0)}p=AH;q=f}else{if(f>m){this.drawPixel(r,(m+1),AH,n,(f-m),u,false,0)}}}else{p=this.boxColour;q=m}if(this.spec.antiAlias){while(++q<d){this.drawPixel(r,q,p,(curvyObject.pixelFraction(r,q,AD)*n),1,u,AF<=0,AD)}}}for(var y=0,AJ=u.childNodes.length;y<AJ;++y){var s=u.childNodes[y];var AI=parseInt(s.style.top);var AM=parseInt(s.style.left);var AN=parseInt(s.style.height);if(AC=="tl"||AC=="bl"){s.style.left=(AD-AM-1)+"px"}if(AC=="tr"||AC=="tl"){s.style.top=(AD-AN-AI)+"px"}s.style.backgroundRepeat=this.backgroundRepeat;if(this.backgroundImage){switch(AC){case"tr":s.style.backgroundPosition=(this.backgroundPosX-this.borderWidthL+AD-V-AM)+"px "+(this.backgroundPosY+AN+AI+this.borderWidth-AD)+"px";break;case"tl":s.style.backgroundPosition=(this.backgroundPosX-AD+AM+this.borderWidthL)+"px "+(this.backgroundPosY-AD+AN+AI+this.borderWidth)+"px";break;case"bl":s.style.backgroundPosition=(this.backgroundPosX-AD+AM+1+this.borderWidthL)+"px "+(this.backgroundPosY-F-this.borderWidth+(curvyBrowser.quirksMode?AI:-AI)+AD)+"px";break;case"br":if(curvyBrowser.quirksMode){s.style.backgroundPosition=(this.backgroundPosX+this.borderWidthL-V+AD-AM)+"px "+(this.backgroundPosY-F-this.borderWidth+AI+AD)+"px"}else{s.style.backgroundPosition=(this.backgroundPosX-this.borderWidthL-V+AD-AM)+"px "+(this.backgroundPosY-F-this.borderWidth+AD-AI)+"px"}}}}switch(AC){case"tl":u.style.top=u.style.left="0";this.topContainer.appendChild(u);break;case"tr":u.style.top=u.style.right="0";this.topContainer.appendChild(u);break;case"bl":u.style.bottom=u.style.left="0";this.bottomContainer.appendChild(u);break;case"br":u.style.bottom=u.style.right="0";this.bottomContainer.appendChild(u)}}}var x={t:this.spec.radiusdiff("t"),b:this.spec.radiusdiff("b")};for(z in x){if(typeof z==="function"){continue}if(!this.spec.get(z+"R")){continue}if(x[z]){if(this.backgroundImage&&this.spec.radiusSum(z)!==x[z]){curvyCorners.alert(this.errmsg("Not supported: unequal non-zero top/bottom radii with background image"))}var AL=(this.spec[z+"lR"]<this.spec[z+"rR"])?z+"l":z+"r";var l=document.createElement("div");l.style.height=x[z]+"px";l.style.width=this.spec.get(AL+"Ru");l.style.position="absolute";l.style.fontSize="1px";l.style.overflow="hidden";l.style.backgroundColor=this.boxColour;switch(AL){case"tl":l.style.bottom=l.style.left="0";l.style.borderLeft=this.borderString;this.topContainer.appendChild(l);break;case"tr":l.style.bottom=l.style.right="0";l.style.borderRight=this.borderString;this.topContainer.appendChild(l);break;case"bl":l.style.top=l.style.left="0";l.style.borderLeft=this.borderStringB;this.bottomContainer.appendChild(l);break;case"br":l.style.top=l.style.right="0";l.style.borderRight=this.borderStringB;this.bottomContainer.appendChild(l)}}var o=document.createElement("div");if(filter){o.style.filter=filter}o.style.position="relative";o.style.fontSize="1px";o.style.overflow="hidden";o.style.width=this.fillerWidth(z);o.style.backgroundColor=this.boxColour;o.style.backgroundImage=this.backgroundImage;o.style.backgroundRepeat=this.backgroundRepeat;switch(z){case"t":if(this.topContainer){if(curvyBrowser.quirksMode){o.style.height=100+H+"px"}else{o.style.height=100+H-this.borderWidth+"px"}o.style.marginLeft=this.spec.tlR?(this.spec.tlR-this.borderWidthL)+"px":"0";o.style.borderTop=this.borderString;if(this.backgroundImage){var AA=this.spec.tlR?(this.backgroundPosX-(H-this.borderWidthL))+"px ":"0 ";o.style.backgroundPosition=AA+this.backgroundPosY+"px";this.shell.style.backgroundPosition=this.backgroundPosX+"px "+(this.backgroundPosY-H+this.borderWidthL)+"px"}this.topContainer.appendChild(o)}break;case"b":if(this.bottomContainer){if(curvyBrowser.quirksMode){o.style.height=M+"px"}else{o.style.height=M-this.borderWidthB+"px"}o.style.marginLeft=this.spec.blR?(this.spec.blR-this.borderWidthL)+"px":"0";o.style.borderBottom=this.borderStringB;if(this.backgroundImage){var AA=this.spec.blR?(this.backgroundPosX+this.borderWidthL-M)+"px ":this.backgroundPosX+"px ";o.style.backgroundPosition=AA+(this.backgroundPosY-F-this.borderWidth+M)+"px"}this.bottomContainer.appendChild(o)}}}this.contentContainer.style.position="absolute";this.contentContainer.className="autoPadDiv";this.contentContainer.style.left=this.borderWidthL+"px";this.contentContainer.style.paddingTop=this.topPadding+"px";this.contentContainer.style.top=this.borderWidth+"px";this.contentContainer.style.paddingLeft=this.leftPadding+"px";this.contentContainer.style.paddingRight=this.rightPadding+"px";z=V;if(!curvyBrowser.quirksMode){z-=this.leftPadding+this.rightPadding}this.contentContainer.style.width=z+"px";this.contentContainer.style.textAlign=curvyBrowser.get_style(this.box,"textAlign");this.box.style.textAlign="left";this.box.appendChild(this.contentContainer);if(U){U.style.display="none"}};if(this.backgroundImage){R=this.backgroundCheck(R);P=this.backgroundCheck(P);if(this.backgroundObject){this.backgroundObject.holdingElement=this;this.dispatch=this.applyCorners;this.applyCorners=function(){if(this.backgroundObject.complete){this.dispatch()}else{this.backgroundObject.onload=new Function("curvyObject.dispatch(this.holdingElement);")}}}}}curvyObject.prototype.backgroundCheck=function(B){if(B==="top"||B==="left"||parseInt(B)===0){return 0}if(!(/^[-\d.]+px$/.test(B))&&!this.backgroundObject){this.backgroundObject=new Image;var A=function(D){var C=/url\("?([^'"]+)"?\)/.exec(D);return(C?C[1]:D)};this.backgroundObject.src=A(this.backgroundImage)}return B};curvyObject.dispatch=function(A){if("dispatch" in A){A.dispatch()}else{throw A.newError("No dispatch function")}};curvyObject.prototype.drawPixel=function(J,G,A,F,H,I,C,E){var B=document.createElement("div");B.style.height=H+"px";B.style.width="1px";B.style.position="absolute";B.style.fontSize="1px";B.style.overflow="hidden";var D=this.spec.get("tR");B.style.backgroundColor=A;if(C&&this.backgroundImage!=""){B.style.backgroundImage=this.backgroundImage;B.style.backgroundPosition="-"+(this.boxWidth-(E-J)+this.borderWidth)+"px -"+((this.boxHeight+D+G)-this.borderWidth)+"px"}if(F!=100){curvyObject.setOpacity(B,F)}B.style.top=G+"px";B.style.left=J+"px";I.appendChild(B)};curvyObject.prototype.fillerWidth=function(A){var B=curvyBrowser.quirksMode?0:this.spec.radiusCount(A)*this.borderWidthL;return(this.boxWidth-this.spec.radiusSum(A)+B)+"px"};curvyObject.prototype.errmsg=function(C,D){var B="\ntag: "+this.box.tagName;if(this.box.id){B+="\nid: "+this.box.id}if(this.box.className){B+="\nclass: "+this.box.className}var A;if((A=this.box.parentNode)===null){B+="\n(box has no parent)"}else{B+="\nParent tag: "+A.tagName;if(A.id){B+="\nParent ID: "+A.id}if(A.className){B+="\nParent class: "+A.className}}if(D===undefined){D="warning"}return"curvyObject "+D+":\n"+C+B};curvyObject.prototype.newError=function(A){return new Error(this.errmsg(A,"exception"))};curvyObject.IntToHex=function(B){var A=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"];return A[B>>>4]+""+A[B&15]};curvyObject.BlendColour=function(L,J,G){if(L==="transparent"||J==="transparent"){throw this.newError("Cannot blend with transparent")}if(L.charAt(0)!=="#"){L=curvyObject.format_colour(L)}if(J.charAt(0)!=="#"){J=curvyObject.format_colour(J)}var D=parseInt(L.substr(1,2),16);var K=parseInt(L.substr(3,2),16);var F=parseInt(L.substr(5,2),16);var C=parseInt(J.substr(1,2),16);var I=parseInt(J.substr(3,2),16);var E=parseInt(J.substr(5,2),16);if(G>1||G<0){G=1}var H=Math.round((D*G)+(C*(1-G)));if(H>255){H=255}if(H<0){H=0}var B=Math.round((K*G)+(I*(1-G)));if(B>255){B=255}if(B<0){B=0}var A=Math.round((F*G)+(E*(1-G)));if(A>255){A=255}if(A<0){A=0}return"#"+curvyObject.IntToHex(H)+curvyObject.IntToHex(B)+curvyObject.IntToHex(A)};curvyObject.pixelFraction=function(H,G,A){var J;var E=A*A;var B=new Array(2);var F=new Array(2);var I=0;var C="";var D=Math.sqrt(E-Math.pow(H,2));if(D>=G&&D<(G+1)){C="Left";B[I]=0;F[I]=D-G;++I}D=Math.sqrt(E-Math.pow(G+1,2));if(D>=H&&D<(H+1)){C+="Top";B[I]=D-H;F[I]=1;++I}D=Math.sqrt(E-Math.pow(H+1,2));if(D>=G&&D<(G+1)){C+="Right";B[I]=1;F[I]=D-G;++I}D=Math.sqrt(E-Math.pow(G,2));if(D>=H&&D<(H+1)){C+="Bottom";B[I]=D-H;F[I]=0}switch(C){case"LeftRight":J=Math.min(F[0],F[1])+((Math.max(F[0],F[1])-Math.min(F[0],F[1]))/2);break;case"TopRight":J=1-(((1-B[0])*(1-F[1]))/2);break;case"TopBottom":J=Math.min(B[0],B[1])+((Math.max(B[0],B[1])-Math.min(B[0],B[1]))/2);break;case"LeftBottom":J=F[0]*B[1]/2;break;default:J=1}return J};curvyObject.rgb2Array=function(A){var B=A.substring(4,A.indexOf(")"));return B.split(", ")};curvyObject.rgb2Hex=function(B){try{var C=curvyObject.rgb2Array(B);var G=parseInt(C[0]);var E=parseInt(C[1]);var A=parseInt(C[2]);var D="#"+curvyObject.IntToHex(G)+curvyObject.IntToHex(E)+curvyObject.IntToHex(A)}catch(F){var H="getMessage" in F?F.getMessage():F.message;throw new Error("Error ("+H+") converting RGB value to Hex in rgb2Hex")}return D};curvyObject.setOpacity=function(F,C){C=(C==100)?99.999:C;if(curvyBrowser.isSafari&&F.tagName!="IFRAME"){var B=curvyObject.rgb2Array(F.style.backgroundColor);var E=parseInt(B[0]);var D=parseInt(B[1]);var A=parseInt(B[2]);F.style.backgroundColor="rgba("+E+", "+D+", "+A+", "+C/100+")"}else{if(typeof F.style.opacity!=="undefined"){F.style.opacity=C/100}else{if(typeof F.style.MozOpacity!=="undefined"){F.style.MozOpacity=C/100}else{if(typeof F.style.filter!="undefined"){F.style.filter="alpha(opacity="+C+")"}else{if(typeof F.style.KHTMLOpacity!="undefined"){F.style.KHTMLOpacity=C/100}}}}}};function addEvent(D,C,B,A){if(D.addEventListener){D.addEventListener(C,B,A);return true}if(D.attachEvent){return D.attachEvent("on"+C,B)}D["on"+C]=B;return false}curvyObject.getComputedColour=function(E){var F=document.createElement("DIV");F.style.backgroundColor=E;document.body.appendChild(F);if(window.getComputedStyle){var D=document.defaultView.getComputedStyle(F,null).getPropertyValue("background-color");F.parentNode.removeChild(F);if(D.substr(0,3)==="rgb"){D=curvyObject.rgb2Hex(D)}return D}else{var A=document.body.createTextRange();A.moveToElementText(F);A.execCommand("ForeColor",false,E);var B=A.queryCommandValue("ForeColor");var C="rgb("+(B&255)+", "+((B&65280)>>8)+", "+((B&16711680)>>16)+")";F.parentNode.removeChild(F);A=null;return curvyObject.rgb2Hex(C)}};curvyObject.format_colour=function(A){if(A!=""&&A!="transparent"){if(A.substr(0,3)==="rgb"){A=curvyObject.rgb2Hex(A)}else{if(A.charAt(0)!=="#"){A=curvyObject.getComputedColour(A)}else{if(A.length===4){A="#"+A.charAt(1)+A.charAt(1)+A.charAt(2)+A.charAt(2)+A.charAt(3)+A.charAt(3)}}}}return A};curvyCorners.getElementsByClass=function(H,F){var E=new Array;if(F===undefined){F=document}H=H.split(".");var A="*";if(H.length===1){A=H[0];H=false}else{if(H[0]){A=H[0]}H=H[1]}var D,C,B;if(A.charAt(0)==="#"){C=document.getElementById(A.substr(1));if(C){E.push(C)}}else{C=F.getElementsByTagName(A);B=C.length;if(H){var G=new RegExp("(^|\\s)"+H+"(\\s|$)");for(D=0;D<B;++D){if(G.test(C[D].className)){E.push(C[D])}}}else{for(D=0;D<B;++D){E.push(C[D])}}}return E};if(curvyBrowser.isMoz||curvyBrowser.isWebKit){var curvyCornersNoAutoScan=true}else{curvyCorners.scanStyles=function(){function B(F){var G=/^[\d.]+(\w+)$/.exec(F);return G[1]}var E,D,C;if(curvyBrowser.isIE){function A(L){var J=L.style;if(curvyBrowser.ieVer>6){var H=J["-webkit-border-radius"]||0;var K=J["-webkit-border-top-right-radius"]||0;var F=J["-webkit-border-top-left-radius"]||0;var G=J["-webkit-border-bottom-right-radius"]||0;var M=J["-webkit-border-bottom-left-radius"]||0}else{var H=J["webkit-border-radius"]||0;var K=J["webkit-border-top-right-radius"]||0;var F=J["webkit-border-top-left-radius"]||0;var G=J["webkit-border-bottom-right-radius"]||0;var M=J["webkit-border-bottom-left-radius"]||0}if(H||F||K||G||M){var I=new curvyCnrSpec(L.selectorText);if(H){I.setcorner(null,null,parseInt(H),B(H))}else{if(K){I.setcorner("t","r",parseInt(K),B(K))}if(F){I.setcorner("t","l",parseInt(F),B(F))}if(M){I.setcorner("b","l",parseInt(M),B(M))}if(G){I.setcorner("b","r",parseInt(G),B(G))}}curvyCorners(I)}}for(E=0;E<document.styleSheets.length;++E){if(document.styleSheets[E].imports){for(D=0;D<document.styleSheets[E].imports.length;++D){for(C=0;C<document.styleSheets[E].imports[D].rules.length;++C){A(document.styleSheets[E].imports[D].rules[C])}}}for(D=0;D<document.styleSheets[E].rules.length;++D){A(document.styleSheets[E].rules[D])}}}else{if(curvyBrowser.isOp){for(E=0;E<document.styleSheets.length;++E){if(operasheet.contains_border_radius(E)){C=new operasheet(E);for(D in C.rules){if(!isNaN(D)){curvyCorners(C.rules[D])}}}}}else{curvyCorners.alert("Scanstyles does nothing in Webkit/Firefox")}}};curvyCorners.init=function(){if(arguments.callee.done){return}arguments.callee.done=true;if(curvyBrowser.isWebKit&&curvyCorners.init.timer){clearInterval(curvyCorners.init.timer);curvyCorners.init.timer=null}curvyCorners.scanStyles()}}if(typeof curvyCornersNoAutoScan==="undefined"||curvyCornersNoAutoScan===false){if(curvyBrowser.isOp){document.addEventListener("DOMContentLoaded",curvyCorners.init,false)}else{addEvent(window,"load",curvyCorners.init,false)}};

/*!
 * Copyright (c) 2009 Simo Kinnunen.
 * Licensed under the MIT license.
 *
 * @version ${Version}
 */

var Cufon = (function() {

	var api = function() {
		return api.replace.apply(null, arguments);
	};

	var DOM = api.DOM = {

		ready: (function() {

			var complete = false, readyStatus = { loaded: 1, complete: 1 };

			var queue = [], perform = function() {
				if (complete) return;
				complete = true;
				for (var fn; fn = queue.shift(); fn());
			};

			// Gecko, Opera, WebKit r26101+

			if (document.addEventListener) {
				document.addEventListener('DOMContentLoaded', perform, false);
				window.addEventListener('pageshow', perform, false); // For cached Gecko pages
			}

			// Old WebKit, Internet Explorer

			if (!window.opera && document.readyState) (function() {
				readyStatus[document.readyState] ? perform() : setTimeout(arguments.callee, 10);
			})();

			// Internet Explorer

			if (document.readyState && document.createStyleSheet) (function() {
				try {
					document.body.doScroll('left');
					perform();
				}
				catch (e) {
					setTimeout(arguments.callee, 1);
				}
			})();

			addEvent(window, 'load', perform); // Fallback

			return function(listener) {
				if (!arguments.length) perform();
				else complete ? listener() : queue.push(listener);
			};

		})(),

		root: function() {
			return document.documentElement || document.body;
		}

	};

	var CSS = api.CSS = {

		Size: function(value, base) {

			this.value = parseFloat(value);
			this.unit = String(value).match(/[a-z%]*$/)[0] || 'px';

			this.convert = function(value) {
				return value / base * this.value;
			};

			this.convertFrom = function(value) {
				return value / this.value * base;
			};

			this.toString = function() {
				return this.value + this.unit;
			};

		},

		addClass: function(el, className) {
			var current = el.className;
			el.className = current + (current && ' ') + className;
			return el;
		},

		color: cached(function(value) {
			var parsed = {};
			parsed.color = value.replace(/^rgba\((.*?),\s*([\d.]+)\)/, function($0, $1, $2) {
				parsed.opacity = parseFloat($2);
				return 'rgb(' + $1 + ')';
			});
			return parsed;
		}),

		// has no direct CSS equivalent.
		// @see http://msdn.microsoft.com/en-us/library/system.windows.fontstretches.aspx
		fontStretch: cached(function(value) {
			if (typeof value == 'number') return value;
			if (/%$/.test(value)) return parseFloat(value) / 100;
			return {
				'ultra-condensed': 0.5,
				'extra-condensed': 0.625,
				condensed: 0.75,
				'semi-condensed': 0.875,
				'semi-expanded': 1.125,
				expanded: 1.25,
				'extra-expanded': 1.5,
				'ultra-expanded': 2
			}[value] || 1;
		}),

		getStyle: function(el) {
			var view = document.defaultView;
			if (view && view.getComputedStyle) return new Style(view.getComputedStyle(el, null));
			if (el.currentStyle) return new Style(el.currentStyle);
			return new Style(el.style);
		},

		gradient: cached(function(value) {
			var gradient = {
				id: value,
				type: value.match(/^-([a-z]+)-gradient\(/)[1],
				stops: []
			}, colors = value.substr(value.indexOf('(')).match(/([\d.]+=)?(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)/ig);
			for (var i = 0, l = colors.length, stop; i < l; ++i) {
				stop = colors[i].split('=', 2).reverse();
				gradient.stops.push([ stop[1] || i / (l - 1), stop[0] ]);
			}
			return gradient;
		}),

		quotedList: cached(function(value) {
			// doesn't work properly with empty quoted strings (""), but
			// it's not worth the extra code.
			var list = [], re = /\s*((["'])([\s\S]*?[^\\])\2|[^,]+)\s*/g, match;
			while (match = re.exec(value)) list.push(match[3] || match[1]);
			return list;
		}),

		recognizesMedia: cached(function(media) {
			var el = document.createElement('style'), sheet, container, supported;
			el.type = 'text/css';
			el.media = media;
			try { // this is cached anyway
				el.appendChild(document.createTextNode('/**/'));
			} catch (e) {}
			container = elementsByTagName('head')[0];
			container.insertBefore(el, container.firstChild);
			sheet = (el.sheet || el.styleSheet);
			supported = sheet && !sheet.disabled;
			container.removeChild(el);
			return supported;
		}),

		removeClass: function(el, className) {
			var re = RegExp('(?:^|\\s+)' + className +  '(?=\\s|$)', 'g');
			el.className = el.className.replace(re, '');
			return el;
		},

		supports: function(property, value) {
			var checker = document.createElement('span').style;
			if (checker[property] === undefined) return false;
			checker[property] = value;
			return checker[property] === value;
		},

		textAlign: function(word, style, position, wordCount) {
			if (style.get('textAlign') == 'right') {
				if (position > 0) word = ' ' + word;
			}
			else if (position < wordCount - 1) word += ' ';
			return word;
		},

		textShadow: cached(function(value) {
			if (value == 'none') return null;
			var shadows = [], currentShadow = {}, result, offCount = 0;
			var re = /(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)|(-?[\d.]+[a-z%]*)|,/ig;
			while (result = re.exec(value)) {
				if (result[0] == ',') {
					shadows.push(currentShadow);
					currentShadow = {};
					offCount = 0;
				}
				else if (result[1]) {
					currentShadow.color = result[1];
				}
				else {
					currentShadow[[ 'offX', 'offY', 'blur' ][offCount++]] = result[2];
				}
			}
			shadows.push(currentShadow);
			return shadows;
		}),

		textTransform: (function() {
			var map = {
				uppercase: function(s) {
					return s.toUpperCase();
				},
				lowercase: function(s) {
					return s.toLowerCase();
				},
				capitalize: function(s) {
					return s.replace(/\b./g, function($0) {
						return $0.toUpperCase();
					});
				}
			};
			return function(text, style) {
				var transform = map[style.get('textTransform')];
				return transform ? transform(text) : text;
			};
		})(),

		whiteSpace: (function() {
			var ignore = {
				inline: 1,
				'inline-block': 1,
				'run-in': 1
			};
			var wsStart = /^\s+/, wsEnd = /\s+$/;
			return function(text, style, node, previousElement) {
				if (previousElement) {
					if (previousElement.nodeName.toLowerCase() == 'br') {
						text = text.replace(wsStart, '');
					}
				}
				if (ignore[style.get('display')]) return text;
				if (!node.previousSibling) text = text.replace(wsStart, '');
				if (!node.nextSibling) text = text.replace(wsEnd, '');
				return text;
			};
		})()

	};

	CSS.ready = (function() {

		// don't do anything in Safari 2 (it doesn't recognize any media type)
		var complete = !CSS.recognizesMedia('all'), hasLayout = false;

		var queue = [], perform = function() {
			complete = true;
			for (var fn; fn = queue.shift(); fn());
		};

		var links = elementsByTagName('link'), styles = elementsByTagName('style');

		function isContainerReady(el) {
			return el.disabled || isSheetReady(el.sheet, el.media || 'screen');
		}

		function isSheetReady(sheet, media) {
			// in Opera sheet.disabled is true when it's still loading,
			// even though link.disabled is false. they stay in sync if
			// set manually.
			if (!CSS.recognizesMedia(media || 'all')) return true;
			if (!sheet || sheet.disabled) return false;
			try {
				var rules = sheet.cssRules, rule;
				if (rules) {
					// needed for Safari 3 and Chrome 1.0.
					// in standards-conforming browsers cssRules contains @-rules.
					// Chrome 1.0 weirdness: rules[<number larger than .length - 1>]
					// returns the last rule, so a for loop is the only option.
					search: for (var i = 0, l = rules.length; rule = rules[i], i < l; ++i) {
						switch (rule.type) {
							case 2: // @charset
								break;
							case 3: // @import
								if (!isSheetReady(rule.styleSheet, rule.media.mediaText)) return false;
								break;
							default:
								// only @charset can precede @import
								break search;
						}
					}
				}
			}
			catch (e) {} // probably a style sheet from another domain
			return true;
		}

		function allStylesLoaded() {
			// Internet Explorer's style sheet model, there's no need to do anything
			if (document.createStyleSheet) return true;
			// standards-compliant browsers
			var el, i;
			for (i = 0; el = links[i]; ++i) {
				if (el.rel.toLowerCase() == 'stylesheet' && !isContainerReady(el)) return false;
			}
			for (i = 0; el = styles[i]; ++i) {
				if (!isContainerReady(el)) return false;
			}
			return true;
		}

		DOM.ready(function() {
			// getComputedStyle returns null in Gecko if used in an iframe with display: none
			if (!hasLayout) hasLayout = CSS.getStyle(document.body).isUsable();
			if (complete || (hasLayout && allStylesLoaded())) perform();
			else setTimeout(arguments.callee, 10);
		});

		return function(listener) {
			if (complete) listener();
			else queue.push(listener);
		};

	})();

	function Font(data) {

		var face = this.face = data.face, wordSeparators = {
			'\u0020': 1,
			'\u00a0': 1,
			'\u3000': 1
		};

		this.glyphs = data.glyphs;
		this.w = data.w;
		this.baseSize = parseInt(face['units-per-em'], 10);

		this.family = face['font-family'].toLowerCase();
		this.weight = face['font-weight'];
		this.style = face['font-style'] || 'normal';

		this.viewBox = (function () {
			var parts = face.bbox.split(/\s+/);
			var box = {
				minX: parseInt(parts[0], 10),
				minY: parseInt(parts[1], 10),
				maxX: parseInt(parts[2], 10),
				maxY: parseInt(parts[3], 10)
			};
			box.width = box.maxX - box.minX;
			box.height = box.maxY - box.minY;
			box.toString = function() {
				return [ this.minX, this.minY, this.width, this.height ].join(' ');
			};
			return box;
		})();

		this.ascent = -parseInt(face.ascent, 10);
		this.descent = -parseInt(face.descent, 10);

		this.height = -this.ascent + this.descent;

		this.spacing = function(chars, letterSpacing, wordSpacing) {
			var glyphs = this.glyphs, glyph,
				kerning, k,
				jumps = [],
				width = 0, w,
				i = -1, j = -1, chr;
			while (chr = chars[++i]) {
				glyph = glyphs[chr] || this.missingGlyph;
				if (!glyph) continue;
				if (kerning) {
					width -= k = kerning[chr] || 0;
					jumps[j] -= k;
				}
				w = glyph.w;
				if (isNaN(w)) w = +this.w; // may have been a String in old fonts
				if (w > 0) {
					w += letterSpacing;
					if (wordSeparators[chr]) w += wordSpacing;
				}
				width += jumps[++j] = ~~w; // get rid of decimals
				kerning = glyph.k;
			}
			jumps.total = width;
			return jumps;
		};

	}

	function FontFamily() {

		var styles = {}, mapping = {
			oblique: 'italic',
			italic: 'oblique'
		};

		this.add = function(font) {
			(styles[font.style] || (styles[font.style] = {}))[font.weight] = font;
		};

		this.get = function(style, weight) {
			var weights = styles[style] || styles[mapping[style]]
				|| styles.normal || styles.italic || styles.oblique;
			if (!weights) return null;
			// we don't have to worry about "bolder" and "lighter"
			// because IE's currentStyle returns a numeric value for it,
			// and other browsers use the computed value anyway
			weight = {
				normal: 400,
				bold: 700
			}[weight] || parseInt(weight, 10);
			if (weights[weight]) return weights[weight];
			// http://www.w3.org/TR/CSS21/fonts.html#propdef-font-weight
			// Gecko uses x99/x01 for lighter/bolder
			var up = {
				1: 1,
				99: 0
			}[weight % 100], alts = [], min, max;
			if (up === undefined) up = weight > 400;
			if (weight == 500) weight = 400;
			for (var alt in weights) {
				if (!hasOwnProperty(weights, alt)) continue;
				alt = parseInt(alt, 10);
				if (!min || alt < min) min = alt;
				if (!max || alt > max) max = alt;
				alts.push(alt);
			}
			if (weight < min) weight = min;
			if (weight > max) weight = max;
			alts.sort(function(a, b) {
				return (up
					? (a >= weight && b >= weight) ? a < b : a > b
					: (a <= weight && b <= weight) ? a > b : a < b) ? -1 : 1;
			});
			return weights[alts[0]];
		};

	}

	function HoverHandler() {

		function contains(node, anotherNode) {
			try {
				if (node.contains) return node.contains(anotherNode);
				return node.compareDocumentPosition(anotherNode) & 16;
			}
			catch(e) {} // probably a XUL element such as a scrollbar
			return false;
		}

		function onOverOut(e) {
			var related = e.relatedTarget;
			// there might be no relatedTarget if the element is right next
			// to the window frame
			if (related && contains(this, related)) return;
			trigger(this, e.type == 'mouseover');
		}

		function onEnterLeave(e) {
			trigger(this, e.type == 'mouseenter');
		}

		function trigger(el, hoverState) {
			// A timeout is needed so that the event can actually "happen"
			// before replace is triggered. This ensures that styles are up
			// to date.
			setTimeout(function() {
				var options = sharedStorage.get(el).options;
				api.replace(el, hoverState ? merge(options, options.hover) : options, true);
			}, 10);
		}

		this.attach = function(el) {
			if (el.onmouseenter === undefined) {
				addEvent(el, 'mouseover', onOverOut);
				addEvent(el, 'mouseout', onOverOut);
			}
			else {
				addEvent(el, 'mouseenter', onEnterLeave);
				addEvent(el, 'mouseleave', onEnterLeave);
			}
		};

	}

	function ReplaceHistory() {

		var list = [], map = {};

		function filter(keys) {
			var values = [], key;
			for (var i = 0; key = keys[i]; ++i) values[i] = list[map[key]];
			return values;
		}

		this.add = function(key, args) {
			map[key] = list.push(args) - 1;
		};

		this.repeat = function() {
			var snapshot = arguments.length ? filter(arguments) : list, args;
			for (var i = 0; args = snapshot[i++];) api.replace(args[0], args[1], true);
		};

	}

	function Storage() {

		var map = {}, at = 0;

		function identify(el) {
			return el.cufid || (el.cufid = ++at);
		}

		this.get = function(el) {
			var id = identify(el);
			return map[id] || (map[id] = {});
		};

	}

	function Style(style) {

		var custom = {}, sizes = {};

		this.extend = function(styles) {
			for (var property in styles) {
				if (hasOwnProperty(styles, property)) custom[property] = styles[property];
			}
			return this;
		};

		this.get = function(property) {
			return custom[property] != undefined ? custom[property] : style[property];
		};

		this.getSize = function(property, base) {
			return sizes[property] || (sizes[property] = new CSS.Size(this.get(property), base));
		};

		this.isUsable = function() {
			return !!style;
		};

	}

	function addEvent(el, type, listener) {
		if (el.addEventListener) {
			el.addEventListener(type, listener, false);
		}
		else if (el.attachEvent) {
			el.attachEvent('on' + type, function() {
				return listener.call(el, window.event);
			});
		}
	}

	function attach(el, options) {
		var storage = sharedStorage.get(el);
		if (storage.options) return el;
		if (options.hover && options.hoverables[el.nodeName.toLowerCase()]) {
			hoverHandler.attach(el);
		}
		storage.options = options;
		return el;
	}

	function cached(fun) {
		var cache = {};
		return function(key) {
			if (!hasOwnProperty(cache, key)) cache[key] = fun.apply(null, arguments);
			return cache[key];
		};
	}

	function getFont(el, style) {
		var families = CSS.quotedList(style.get('fontFamily').toLowerCase()), family;
		for (var i = 0; family = families[i]; ++i) {
			if (fonts[family]) return fonts[family].get(style.get('fontStyle'), style.get('fontWeight'));
		}
		return null;
	}

	function elementsByTagName(query) {
		return document.getElementsByTagName(query);
	}

	function hasOwnProperty(obj, property) {
		return obj.hasOwnProperty(property);
	}

	function merge() {
		var merged = {}, arg, key;
		for (var i = 0, l = arguments.length; arg = arguments[i], i < l; ++i) {
			for (key in arg) {
				if (hasOwnProperty(arg, key)) merged[key] = arg[key];
			}
		}
		return merged;
	}

	function process(font, text, style, options, node, el) {
		var fragment = document.createDocumentFragment(), processed;
		if (text === '') return fragment;
		var separate = options.separate;
		var parts = text.split(separators[separate]), needsAligning = (separate == 'words');
		if (needsAligning && HAS_BROKEN_REGEXP) {
			// @todo figure out a better way to do this
			if (/^\s/.test(text)) parts.unshift('');
			if (/\s$/.test(text)) parts.push('');
		}
		for (var i = 0, l = parts.length; i < l; ++i) {
			processed = engines[options.engine](font,
				needsAligning ? CSS.textAlign(parts[i], style, i, l) : parts[i],
				style, options, node, el, i < l - 1);
			if (processed) fragment.appendChild(processed);
		}
		return fragment;
	}

	function replaceElement(el, options) {
		var name = el.nodeName.toLowerCase();
		if (options.ignore[name]) return;
		var replace = !options.textless[name];
		var style = CSS.getStyle(attach(el, options)).extend(options);
		var font = getFont(el, style), node, type, next, anchor, text, lastElement;
		if (!font) return;
		for (node = el.firstChild; node; node = next) {
			type = node.nodeType;
			next = node.nextSibling;
			if (replace && type == 3) {
				// Node.normalize() is broken in IE 6, 7, 8
				if (anchor) {
					anchor.appendData(node.data);
					el.removeChild(node);
				}
				else anchor = node;
				if (next) continue;
			}
			if (anchor) {
				el.replaceChild(process(font,
					CSS.whiteSpace(anchor.data, style, anchor, lastElement),
					style, options, node, el), anchor);
				anchor = null;
			}
			if (type == 1) {
				if (node.firstChild) {
					if (node.nodeName.toLowerCase() == 'cufon') {
						engines[options.engine](font, null, style, options, node, el);
					}
					else arguments.callee(node, options);
				}
				lastElement = node;
			}
		}
	}

	var HAS_BROKEN_REGEXP = ' '.split(/\s+/).length == 0;

	var sharedStorage = new Storage();
	var hoverHandler = new HoverHandler();
	var replaceHistory = new ReplaceHistory();
	var initialized = false;

	var engines = {}, fonts = {}, defaultOptions = {
		autoDetect: false,
		engine: null,
		//fontScale: 1,
		//fontScaling: false,
		forceHitArea: false,
		hover: false,
		hoverables: {
			a: true
		},
		ignore: {
			applet: 1,
			canvas: 1,
			col: 1,
			colgroup: 1,
			head: 1,
			iframe: 1,
			map: 1,
			noscript: 1,
			optgroup: 1,
			option: 1,
			script: 1,
			select: 1,
			style: 1,
			textarea: 1,
			title: 1,
			pre: 1
		},
		printable: true,
		//rotation: 0,
		//selectable: false,
		selector: (
				window.Sizzle
			||	(window.jQuery && function(query) { return jQuery(query); }) // avoid noConflict issues
			||	(window.dojo && dojo.query)
			||	(window.glow && glow.dom && glow.dom.get)
			||	(window.Ext && Ext.query)
			||	(window.YAHOO && YAHOO.util && YAHOO.util.Selector && YAHOO.util.Selector.query)
			||	(window.$$ && function(query) { return $$(query); })
			||	(window.$ && function(query) { return $(query); })
			||	(document.querySelectorAll && function(query) { return document.querySelectorAll(query); })
			||	elementsByTagName
		),
		separate: 'words', // 'none' and 'characters' are also accepted
		textless: {
			dl: 1,
			html: 1,
			ol: 1,
			table: 1,
			tbody: 1,
			thead: 1,
			tfoot: 1,
			tr: 1,
			ul: 1
		},
		textShadow: 'none'
	};

	var separators = {
		// The first pattern may cause unicode characters above
		// code point 255 to be removed in Safari 3.0. Luckily enough
		// Safari 3.0 does not include non-breaking spaces in \s, so
		// we can just use a simple alternative pattern.
		words: /\s/.test('\u00a0') ? /[^\S\u00a0]+/ : /\s+/,
		characters: '',
		none: /^/
	};

	api.now = function() {
		DOM.ready();
		return api;
	};

	api.refresh = function() {
		replaceHistory.repeat.apply(replaceHistory, arguments);
		return api;
	};

	api.registerEngine = function(id, engine) {
		if (!engine) return api;
		engines[id] = engine;
		return api.set('engine', id);
	};

	api.registerFont = function(data) {
		if (!data) return api;
		var font = new Font(data), family = font.family;
		if (!fonts[family]) fonts[family] = new FontFamily();
		fonts[family].add(font);
		return api.set('fontFamily', '"' + family + '"');
	};

	api.replace = function(elements, options, ignoreHistory) {
		options = merge(defaultOptions, options);
		if (!options.engine) return api; // there's no browser support so we'll just stop here
		if (!initialized) {
			CSS.addClass(DOM.root(), 'cufon-active cufon-loading');
			CSS.ready(function() {
				// fires before any replace() calls, but it doesn't really matter
				CSS.addClass(CSS.removeClass(DOM.root(), 'cufon-loading'), 'cufon-ready');
			});
			initialized = true;
		}
		if (options.hover) options.forceHitArea = true;
		if (options.autoDetect) delete options.fontFamily;
		if (typeof options.textShadow == 'string') {
			options.textShadow = CSS.textShadow(options.textShadow);
		}
		if (typeof options.color == 'string' && /^-/.test(options.color)) {
			options.textGradient = CSS.gradient(options.color);
		}
		else delete options.textGradient;
		if (!ignoreHistory) replaceHistory.add(elements, arguments);
		if (elements.nodeType || typeof elements == 'string') elements = [ elements ];
		CSS.ready(function() {
			for (var i = 0, l = elements.length; i < l; ++i) {
				var el = elements[i];
				if (typeof el == 'string') api.replace(options.selector(el), options, true);
				else replaceElement(el, options);
			}
		});
		return api;
	};

	api.set = function(option, value) {
		defaultOptions[option] = value;
		return api;
	};

	return api;

})();

Cufon.registerEngine('canvas', (function() {

	// Safari 2 doesn't support .apply() on native methods

	var check = document.createElement('canvas');
	if (!check || !check.getContext || !check.getContext.apply) return;
	check = null;

	var HAS_INLINE_BLOCK = Cufon.CSS.supports('display', 'inline-block');

	// Firefox 2 w/ non-strict doctype (almost standards mode)
	var HAS_BROKEN_LINEHEIGHT = !HAS_INLINE_BLOCK && (document.compatMode == 'BackCompat' || /frameset|transitional/i.test(document.doctype.publicId));

	var styleSheet = document.createElement('style');
	styleSheet.type = 'text/css';
	styleSheet.appendChild(document.createTextNode((
		'cufon{text-indent:0;}' +
		'@media screen,projection{' +
			'cufon{display:inline;display:inline-block;position:relative;vertical-align:middle;' +
			(HAS_BROKEN_LINEHEIGHT
				? ''
				: 'font-size:1px;line-height:1px;') +
			'}cufon cufontext{display:-moz-inline-box;display:inline-block;width:0;height:0;text-indent:-10000in;}' +
			(HAS_INLINE_BLOCK
				? 'cufon canvas{position:relative;}'
				: 'cufon canvas{position:absolute;}') +
		'}' +
		'@media print{' +
			'cufon{padding:0;}' + // Firefox 2
			'cufon canvas{display:none;}' +
		'}'
	).replace(/;/g, '!important;')));
	document.getElementsByTagName('head')[0].appendChild(styleSheet);

	function generateFromVML(path, context) {
		var atX = 0, atY = 0;
		var code = [], re = /([mrvxe])([^a-z]*)/g, match;
		generate: for (var i = 0; match = re.exec(path); ++i) {
			var c = match[2].split(',');
			switch (match[1]) {
				case 'v':
					code[i] = { m: 'bezierCurveTo', a: [ atX + ~~c[0], atY + ~~c[1], atX + ~~c[2], atY + ~~c[3], atX += ~~c[4], atY += ~~c[5] ] };
					break;
				case 'r':
					code[i] = { m: 'lineTo', a: [ atX += ~~c[0], atY += ~~c[1] ] };
					break;
				case 'm':
					code[i] = { m: 'moveTo', a: [ atX = ~~c[0], atY = ~~c[1] ] };
					break;
				case 'x':
					code[i] = { m: 'closePath' };
					break;
				case 'e':
					break generate;
			}
			context[code[i].m].apply(context, code[i].a);
		}
		return code;
	}

	function interpret(code, context) {
		for (var i = 0, l = code.length; i < l; ++i) {
			var line = code[i];
			context[line.m].apply(context, line.a);
		}
	}

	return function(font, text, style, options, node, el) {

		var redraw = (text === null);

		if (redraw) text = node.getAttribute('alt');

		var viewBox = font.viewBox;

		var size = style.getSize('fontSize', font.baseSize);

		var expandTop = 0, expandRight = 0, expandBottom = 0, expandLeft = 0;
		var shadows = options.textShadow, shadowOffsets = [];
		if (shadows) {
			for (var i = shadows.length; i--;) {
				var shadow = shadows[i];
				var x = size.convertFrom(parseFloat(shadow.offX));
				var y = size.convertFrom(parseFloat(shadow.offY));
				shadowOffsets[i] = [ x, y ];
				if (y < expandTop) expandTop = y;
				if (x > expandRight) expandRight = x;
				if (y > expandBottom) expandBottom = y;
				if (x < expandLeft) expandLeft = x;
			}
		}

		var chars = Cufon.CSS.textTransform(text, style).split('');

		var jumps = font.spacing(chars,
			~~size.convertFrom(parseFloat(style.get('letterSpacing')) || 0),
			~~size.convertFrom(parseFloat(style.get('wordSpacing')) || 0)
		);

		if (!jumps.length) return null; // there's nothing to render

		var width = jumps.total;

		expandRight += viewBox.width - jumps[jumps.length - 1];
		expandLeft += viewBox.minX;

		var wrapper, canvas;

		if (redraw) {
			wrapper = node;
			canvas = node.firstChild;
		}
		else {
			wrapper = document.createElement('cufon');
			wrapper.className = 'cufon cufon-canvas';
			wrapper.setAttribute('alt', text);

			canvas = document.createElement('canvas');
			wrapper.appendChild(canvas);

			if (options.printable) {
				var print = document.createElement('cufontext');
				print.appendChild(document.createTextNode(text));
				wrapper.appendChild(print);
			}
		}

		var wStyle = wrapper.style;
		var cStyle = canvas.style;

		var height = size.convert(viewBox.height);
		var roundedHeight = Math.ceil(height);
		var roundingFactor = roundedHeight / height;
		var stretchFactor = roundingFactor * Cufon.CSS.fontStretch(style.get('fontStretch'));
		var stretchedWidth = width * stretchFactor;

		var canvasWidth = Math.ceil(size.convert(stretchedWidth + expandRight - expandLeft));
		var canvasHeight = Math.ceil(size.convert(viewBox.height - expandTop + expandBottom));

		canvas.width = canvasWidth;
		canvas.height = canvasHeight;

		// needed for WebKit and full page zoom
		cStyle.width = canvasWidth + 'px';
		cStyle.height = canvasHeight + 'px';

		// minY has no part in canvas.height
		expandTop += viewBox.minY;

		cStyle.top = Math.round(size.convert(expandTop - font.ascent)) + 'px';
		cStyle.left = Math.round(size.convert(expandLeft)) + 'px';

		var wrapperWidth = Math.max(Math.ceil(size.convert(stretchedWidth)), 0) + 'px';

		if (HAS_INLINE_BLOCK) {
			wStyle.width = wrapperWidth;
			wStyle.height = size.convert(font.height) + 'px';
		}
		else {
			wStyle.paddingLeft = wrapperWidth;
			wStyle.paddingBottom = (size.convert(font.height) - 1) + 'px';
		}

		var g = canvas.getContext('2d'), scale = height / viewBox.height;

		// proper horizontal scaling is performed later
		g.scale(scale, scale * roundingFactor);
		g.translate(-expandLeft, -expandTop);
		g.save();

		function renderText() {
			var glyphs = font.glyphs, glyph, i = -1, j = -1, chr;
			g.scale(stretchFactor, 1);
			while (chr = chars[++i]) {
				var glyph = glyphs[chars[i]] || font.missingGlyph;
				if (!glyph) continue;
				if (glyph.d) {
					g.beginPath();
					if (glyph.code) interpret(glyph.code, g);
					else glyph.code = generateFromVML('m' + glyph.d, g);
					g.fill();
				}
				g.translate(jumps[++j], 0);
			}
			g.restore();
		}

		if (shadows) {
			for (var i = shadows.length; i--;) {
				var shadow = shadows[i];
				g.save();
				g.fillStyle = shadow.color;
				g.translate.apply(g, shadowOffsets[i]);
				renderText();
			}
		}

		var gradient = options.textGradient;
		if (gradient) {
			var stops = gradient.stops, fill = g.createLinearGradient(0, viewBox.minY, 0, viewBox.maxY);
			for (var i = 0, l = stops.length; i < l; ++i) {
				fill.addColorStop.apply(fill, stops[i]);
			}
			g.fillStyle = fill;
		}
		else g.fillStyle = style.get('color');

		renderText();

		return wrapper;

	};

})());

Cufon.registerEngine('vml', (function() {

	var ns = document.namespaces;
	if (!ns) return;
	ns.add('cvml', 'urn:schemas-microsoft-com:vml');
	ns = null;

	var check = document.createElement('cvml:shape');
	check.style.behavior = 'url(#default#VML)';
	if (!check.coordsize) return; // VML isn't supported
	check = null;

	var HAS_BROKEN_LINEHEIGHT = (document.documentMode || 0) < 8;

	document.write(('<style type="text/css">' +
		'cufoncanvas{text-indent:0;}' +
		'@media screen{' +
			'cvml\\:shape,cvml\\:rect,cvml\\:fill,cvml\\:shadow{behavior:url(#default#VML);display:block;antialias:true;position:absolute;}' +
			'cufoncanvas{position:absolute;text-align:left;}' +
			'cufon{display:inline-block;position:relative;vertical-align:' +
			(HAS_BROKEN_LINEHEIGHT
				? 'middle'
				: 'text-bottom') +
			';}' +
			'cufon cufontext{position:absolute;left:-10000in;font-size:1px;}' +
			'a cufon{cursor:pointer}' + // ignore !important here
		'}' +
		'@media print{' +
			'cufon cufoncanvas{display:none;}' +
		'}' +
	'</style>').replace(/;/g, '!important;'));

	function getFontSizeInPixels(el, value) {
		return getSizeInPixels(el, /(?:em|ex|%)$|^[a-z-]+$/i.test(value) ? '1em' : value);
	}

	// Original by Dead Edwards.
	// Combined with getFontSizeInPixels it also works with relative units.
	function getSizeInPixels(el, value) {
		if (!isNaN(value) || /px$/i.test(value)) return parseFloat(value);
		var style = el.style.left, runtimeStyle = el.runtimeStyle.left;
		el.runtimeStyle.left = el.currentStyle.left;
		el.style.left = value.replace('%', 'em');
		var result = el.style.pixelLeft;
		el.style.left = style;
		el.runtimeStyle.left = runtimeStyle;
		return result;
	}

	function getSpacingValue(el, style, size, property) {
		var key = 'computed' + property, value = style[key];
		if (isNaN(value)) {
			value = style.get(property);
			style[key] = value = (value == 'normal') ? 0 : ~~size.convertFrom(getSizeInPixels(el, value));
		}
		return value;
	}

	var fills = {};

	function gradientFill(gradient) {
		var id = gradient.id;
		if (!fills[id]) {
			var stops = gradient.stops, fill = document.createElement('cvml:fill'), colors = [];
			fill.type = 'gradient';
			fill.angle = 180;
			fill.focus = '0';
			fill.method = 'none';
			fill.color = stops[0][1];
			for (var j = 1, k = stops.length - 1; j < k; ++j) {
				colors.push(stops[j][0] * 100 + '% ' + stops[j][1]);
			}
			fill.colors = colors.join(',');
			fill.color2 = stops[k][1];
			fills[id] = fill;
		}
		return fills[id];
	}

	return function(font, text, style, options, node, el, hasNext) {

		var redraw = (text === null);

		if (redraw) text = node.alt;

		var viewBox = font.viewBox;

		var size = style.computedFontSize || (style.computedFontSize = new Cufon.CSS.Size(getFontSizeInPixels(el, style.get('fontSize')) + 'px', font.baseSize));

		var wrapper, canvas;

		if (redraw) {
			wrapper = node;
			canvas = node.firstChild;
		}
		else {
			wrapper = document.createElement('cufon');
			wrapper.className = 'cufon cufon-vml';
			wrapper.alt = text;

			canvas = document.createElement('cufoncanvas');
			wrapper.appendChild(canvas);

			if (options.printable) {
				var print = document.createElement('cufontext');
				print.appendChild(document.createTextNode(text));
				wrapper.appendChild(print);
			}

			// ie6, for some reason, has trouble rendering the last VML element in the document.
			// we can work around this by injecting a dummy element where needed.
			// @todo find a better solution
			if (!hasNext) wrapper.appendChild(document.createElement('cvml:shape'));
		}

		var wStyle = wrapper.style;
		var cStyle = canvas.style;

		var height = size.convert(viewBox.height), roundedHeight = Math.ceil(height);
		var roundingFactor = roundedHeight / height;
		var stretchFactor = roundingFactor * Cufon.CSS.fontStretch(style.get('fontStretch'));
		var minX = viewBox.minX, minY = viewBox.minY;

		cStyle.height = roundedHeight;
		cStyle.top = Math.round(size.convert(minY - font.ascent));
		cStyle.left = Math.round(size.convert(minX));

		wStyle.height = size.convert(font.height) + 'px';

		var color = style.get('color');
		var chars = Cufon.CSS.textTransform(text, style).split('');

		var jumps = font.spacing(chars,
			getSpacingValue(el, style, size, 'letterSpacing'),
			getSpacingValue(el, style, size, 'wordSpacing')
		);

		if (!jumps.length) return null;

		var width = jumps.total;
		var fullWidth = -minX + width + (viewBox.width - jumps[jumps.length - 1]);

		var shapeWidth = size.convert(fullWidth * stretchFactor), roundedShapeWidth = Math.round(shapeWidth);

		var coordSize = fullWidth + ',' + viewBox.height, coordOrigin;
		var stretch = 'r' + coordSize + 'ns';

		var fill = options.textGradient && gradientFill(options.textGradient);

		var glyphs = font.glyphs, offsetX = 0;
		var shadows = options.textShadow;
		var i = -1, j = 0, chr;

		while (chr = chars[++i]) {

			var glyph = glyphs[chars[i]] || font.missingGlyph, shape;
			if (!glyph) continue;

			if (redraw) {
				// some glyphs may be missing so we can't use i
				shape = canvas.childNodes[j];
				while (shape.firstChild) shape.removeChild(shape.firstChild); // shadow, fill
			}
			else {
				shape = document.createElement('cvml:shape');
				canvas.appendChild(shape);
			}

			shape.stroked = 'f';
			shape.coordsize = coordSize;
			shape.coordorigin = coordOrigin = (minX - offsetX) + ',' + minY;
			shape.path = (glyph.d ? 'm' + glyph.d + 'xe' : '') + 'm' + coordOrigin + stretch;
			shape.fillcolor = color;

			if (fill) shape.appendChild(fill.cloneNode(false));

			// it's important to not set top/left or IE8 will grind to a halt
			var sStyle = shape.style;
			sStyle.width = roundedShapeWidth;
			sStyle.height = roundedHeight;

			if (shadows) {
				// due to the limitations of the VML shadow element there
				// can only be two visible shadows. opacity is shared
				// for all shadows.
				var shadow1 = shadows[0], shadow2 = shadows[1];
				var color1 = Cufon.CSS.color(shadow1.color), color2;
				var shadow = document.createElement('cvml:shadow');
				shadow.on = 't';
				shadow.color = color1.color;
				shadow.offset = shadow1.offX + ',' + shadow1.offY;
				if (shadow2) {
					color2 = Cufon.CSS.color(shadow2.color);
					shadow.type = 'double';
					shadow.color2 = color2.color;
					shadow.offset2 = shadow2.offX + ',' + shadow2.offY;
				}
				shadow.opacity = color1.opacity || (color2 && color2.opacity) || 1;
				shape.appendChild(shadow);
			}

			offsetX += jumps[j++];
		}

		// addresses flickering issues on :hover

		var cover = shape.nextSibling, coverFill, vStyle;

		if (options.forceHitArea) {

			if (!cover) {
				cover = document.createElement('cvml:rect');
				cover.stroked = 'f';
				cover.className = 'cufon-vml-cover';
				coverFill = document.createElement('cvml:fill');
				coverFill.opacity = 0;
				cover.appendChild(coverFill);
				canvas.appendChild(cover);
			}

			vStyle = cover.style;

			vStyle.width = roundedShapeWidth;
			vStyle.height = roundedHeight;

		}
		else if (cover) canvas.removeChild(cover);

		wStyle.width = Math.max(Math.ceil(size.convert(width * stretchFactor)), 0);

		if (HAS_BROKEN_LINEHEIGHT) {

			var yAdjust = style.computedYAdjust;

			if (yAdjust === undefined) {
				var lineHeight = style.get('lineHeight');
				if (lineHeight == 'normal') lineHeight = '1em';
				else if (!isNaN(lineHeight)) lineHeight += 'em'; // no unit
				style.computedYAdjust = yAdjust = 0.5 * (getSizeInPixels(el, lineHeight) - parseFloat(wStyle.height));
			}

			if (yAdjust) {
				wStyle.marginTop = Math.ceil(yAdjust) + 'px';
				wStyle.marginBottom = yAdjust + 'px';
			}

		}

		return wrapper;

	};

})());


/*!
 * The following copyright notice may not be removed under any circumstances.
 * 
 * Copyright:
 * Typeface © (your company). 2008. All Rights Reserved
 * 
 * Description:
 * This font was created using FontCreator 5.6 from High-Logic.com
 */
Cufon.registerFont({"w":178,"face":{"font-family":"Gilles' Comic Font","font-weight":400,"font-stretch":"normal","units-per-em":"360","panose-1":"2 0 5 0 0 0 0 0 0 0","ascent":"288","descent":"-72","bbox":"-37 -353.703 792 157.044","underline-thickness":"26.3672","underline-position":"-24.9609","unicode-range":"U+0020-U+2122"},"glyphs":{" ":{"w":89},"\u00a0":{"w":89},"!":{"d":"40,-58v8,-75,-27,-204,16,-239v23,47,7,143,14,201v-6,15,0,43,-15,40v-5,4,-9,0,-15,-2xm57,-32v8,-1,13,11,13,19v-8,19,-31,13,-35,2v-6,-16,13,-24,22,-21","w":118},"\"":{"d":"34,-181v-9,-21,-11,-73,-14,-100v11,-11,33,-3,25,15v3,28,15,58,12,85v-13,8,-11,6,-23,0xm89,-195v-5,21,-32,15,-32,-7v0,-27,-5,-54,-7,-74v6,-13,33,-4,28,8v6,27,2,54,11,73","w":118},"#":{"d":"119,-80v-14,19,-19,85,-48,65v-7,-26,13,-40,19,-62v-7,1,-10,1,-16,0v-5,10,-19,51,-23,69v-2,-2,-2,6,-11,8v-8,-1,-19,-1,-18,-11v5,-26,14,-36,23,-65v-26,-1,-58,-12,-31,-32v18,1,21,6,39,7v2,0,6,-12,13,-35v-21,0,-30,-3,-42,-12v3,-41,56,14,56,-31v4,-20,17,-37,14,-58v8,-16,20,-16,30,-3v-3,33,-19,47,-22,81v3,-3,12,1,16,-1v11,-22,27,-54,30,-78v6,-13,30,-18,33,2v-9,25,-26,51,-31,76v22,0,46,-10,56,3r-2,2v10,2,4,14,-2,20v-33,4,-72,-17,-73,27v12,1,36,-6,44,-7v3,2,18,8,12,19v5,11,-13,14,-24,14v-9,-8,-31,4,-42,2xm111,-134v-4,-2,-12,1,-19,0r-11,33v22,2,23,-11,30,-33","w":234},"$":{"d":"51,-10v22,-51,-72,-38,-40,-82v9,11,24,26,42,33r1,-91v-20,1,-59,-21,-37,-45v12,-12,17,-17,31,-21v2,-21,3,-32,-1,-44v23,-20,36,7,28,32v12,-1,-2,-26,5,-32v-4,-5,0,-4,6,-9v25,-10,20,19,22,35v23,-5,58,-4,61,15v-28,7,-75,-10,-60,54v57,0,78,81,40,113v-7,0,-23,12,-33,15v8,26,-14,36,-30,22v-1,-9,4,-11,4,-18v-12,-5,-9,6,-10,15v5,1,0,10,1,10r2,-1v-9,12,-25,10,-32,-1xm79,-167v12,-2,-2,-27,3,-38v-1,-4,-6,-6,-6,-1v-1,15,1,27,3,39xm50,-195v-14,1,-15,25,-1,24v8,0,-1,-16,1,-24xm66,-165v-2,0,-2,0,-2,2v2,0,2,0,2,-2xm83,-147v-9,22,0,62,-3,89v-2,6,6,9,8,4v-3,-30,3,-68,-5,-93xm132,-133v-11,-12,-25,-14,-20,2v-1,23,3,51,0,72v39,-5,36,-56,20,-74xm100,-122r1,0r-1,0xm154,-81r0,1r0,-1xm115,-20v-1,0,-1,0,-1,1xm71,-2v-1,0,-1,0,-1,1v1,0,1,0,1,-1"},"%":{"d":"80,-122v26,-41,54,-73,77,-118v2,-11,23,-13,25,0v-46,83,-107,150,-160,232v-6,10,-22,10,-22,-3v19,-40,58,-72,79,-111v1,0,3,2,3,0r-2,0xm76,-228v47,16,7,92,-32,97v-63,8,-38,-70,-10,-89v6,-5,28,-4,28,4v-2,13,-19,8,-24,19v-12,10,-26,50,2,45v22,-3,48,-48,26,-68v-1,-6,8,-5,10,-8xm146,-216v-1,0,-1,1,-1,2v1,0,1,-1,1,-2xm156,-114v46,6,30,81,-3,92v0,2,-8,6,-23,8v-38,4,-49,-56,-18,-76v4,-9,31,-25,44,-24xm127,-33v21,4,51,-37,32,-56v0,1,-1,2,-4,4v-6,-1,-15,7,-22,0v-15,9,-29,47,-6,52","w":204},"&":{"d":"120,-3v-18,-26,-65,22,-102,-8v-36,-29,-17,-88,8,-111v-22,-56,4,-109,64,-98v44,8,35,43,16,61v-17,16,-35,23,-52,42v16,30,34,52,58,76v17,-9,21,-45,42,-36v3,19,-22,41,-27,50v16,25,45,43,51,75v-21,19,-47,-46,-58,-51xm45,-138v16,-17,53,-29,50,-53v-35,-28,-69,22,-50,53xm37,-99v-23,25,-20,64,4,72v13,11,44,4,54,-3v-17,-19,-36,-36,-51,-58v-3,-4,-5,-5,-7,-11xm198,68v0,-1,0,-1,1,-1v0,1,0,1,-1,1"},"'":{"d":"22,-266v33,-11,20,39,23,61v-3,7,0,25,-6,28v-30,20,-21,-14,-24,-35v8,-17,-11,-44,7,-54","w":60},"(":{"d":"95,-245v-31,57,-46,167,-23,221v10,23,-17,34,-18,17v-26,-82,-13,-188,24,-241v2,-9,19,-3,17,3","w":133},")":{"d":"53,-5v26,-65,34,-176,-15,-246v15,-29,32,5,40,19v12,22,21,53,19,76v10,38,0,66,2,94v-9,19,-11,45,-24,60v-6,3,-20,7,-22,-3","w":133},"*":{"d":"42,-225v-7,-17,36,-11,38,-38v6,20,23,27,43,31v-12,10,-25,24,-16,48v-18,-11,-39,-11,-54,1r3,-29v-2,-2,-10,-11,-14,-13xm75,-207r2,0r-2,0xm91,-200v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":180},"+":{"d":"103,-1v-32,-10,-3,-60,-15,-80v-33,3,-79,14,-85,-15v4,-23,40,-8,52,-12v9,4,43,6,33,-19v4,-24,-8,-60,19,-59v24,10,5,48,11,74v30,0,43,-10,60,-10v17,18,-4,43,-23,36v-20,4,-43,-8,-36,33v2,13,-2,27,4,37v-2,10,-16,14,-20,15xm46,-105v-1,0,-1,0,-1,1v1,0,1,0,1,-1"},",":{"d":"24,52v-6,-23,29,-55,16,-85v15,-19,36,-2,31,24v1,9,-13,45,-26,48v-1,7,-14,14,-21,13","w":97},"-":{"d":"112,-82v-35,-5,-92,17,-115,-4v19,-15,74,-10,102,-16v7,-1,21,13,13,20","w":117},"\u00ad":{"d":"112,-82v-35,-5,-92,17,-115,-4v19,-15,74,-10,102,-16v7,-1,21,13,13,20","w":117},".":{"d":"44,0v-14,-10,-6,-42,11,-31v13,-2,17,20,5,28v-7,-1,-8,4,-16,3","w":97},"\/":{"d":"0,-12r79,-235v5,-4,15,-7,19,2v-4,43,-66,184,-72,232v2,6,-13,18,-14,9v-5,2,-7,-3,-12,-8","w":100},"0":{"d":"178,-111v-7,73,-87,136,-153,98v-55,-78,1,-201,62,-240v12,0,20,8,15,18v47,11,82,59,76,124xm98,-232v-1,-2,-5,0,-4,2v2,0,5,1,4,-2xm129,-58v35,-30,30,-129,-13,-146v-1,-8,-20,-7,-23,-26v-41,33,-66,105,-66,164v0,41,47,50,77,29v16,-12,25,-19,25,-21"},"1":{"d":"5,-139v47,-9,85,-64,99,-110v3,-10,16,1,19,7v-13,65,-10,177,-10,231v0,12,-22,13,-28,5v6,-59,0,-119,5,-170v-23,20,-46,49,-82,50v-9,0,-10,-10,-3,-13","w":123},"2":{"d":"138,-212v-7,-47,-81,-23,-88,11v-3,15,8,42,25,49v8,4,6,10,-3,15v-45,-5,-62,-64,-28,-95v31,-29,109,-33,119,10v18,79,-70,144,-106,201v37,1,58,-17,78,-36v8,-1,11,8,9,14v-10,30,-69,54,-110,38v-19,2,-42,3,-32,-21v7,-9,22,-23,36,-8v40,-52,83,-86,102,-166v0,-4,-4,-9,-2,-12","w":167},"3":{"d":"26,-209v-4,6,-26,7,-26,-4v14,-33,57,-41,100,-36v18,8,38,29,28,56v-4,12,-15,21,-27,31v44,11,60,79,31,111r-3,0v-19,35,-95,80,-117,19v-2,-15,13,-25,19,-12v6,5,5,17,24,21v14,3,69,-40,65,-76v-3,-28,-35,-53,-59,-50v-7,-4,-23,-10,-12,-19v7,-10,13,-8,27,-8v23,0,35,-44,12,-54v-23,-3,-53,7,-62,21","w":149},"4":{"d":"40,-167v-7,16,-25,65,11,65v37,0,52,-34,50,-67v0,-2,4,-5,12,-10v38,12,6,64,20,102v-1,26,8,48,10,69v-4,14,-36,7,-30,-5r-12,-88v-26,31,-100,20,-100,-20v0,-31,19,-67,34,-95v15,-28,16,-36,36,-32v19,14,-13,28,-14,47v-8,11,-9,17,-17,34","w":141},"5":{"d":"122,-78v0,-49,-28,-65,-61,-72v-18,3,-32,18,-32,31v-9,11,-34,-1,-29,-12r9,-112v25,-18,83,-4,118,-7v13,6,11,29,-9,24v-28,-7,-52,0,-81,-4v-5,22,-9,53,-7,71v57,-32,117,16,117,76v0,56,-64,92,-118,77v-14,-8,-20,-30,-7,-39v1,4,3,0,7,2v10,31,45,24,72,3v14,-10,21,-23,21,-38","w":149},"6":{"d":"131,-83v30,38,-46,98,-95,78v-72,-69,-29,-241,59,-246v21,4,20,15,-2,17v-64,35,-75,111,-66,166v5,30,16,57,53,38v44,-22,33,-71,-11,-81v-18,5,-25,9,-31,11r0,-2v-3,5,-9,-1,-10,-5v27,-31,68,-29,85,-1v2,0,7,5,15,17v3,2,3,6,3,8xm41,-103v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":141},"7":{"d":"112,-223v-32,4,-96,23,-112,3v7,-32,69,-3,100,-22v12,3,22,-14,34,-3v9,-2,18,4,18,15v-23,14,-8,56,-15,81v16,0,55,2,33,23v-46,-12,-35,27,-39,53v10,22,-15,28,-5,58v3,12,-22,19,-27,9v-5,-53,11,-62,9,-119v-34,10,-93,-14,-43,-22v17,5,32,1,45,2v0,-26,6,-55,2,-78"},"8":{"d":"75,-162v-28,-1,-48,-43,-28,-61v0,-4,11,-14,35,-23v31,-11,59,-4,57,28v2,12,-16,43,-23,51v47,19,44,87,18,123v-16,22,-72,63,-110,29v-59,-54,7,-110,51,-147xm82,-223v-25,12,-14,39,9,43v6,-5,28,-28,19,-46v-14,-5,-15,-3,-28,3xm62,-21v47,-5,97,-98,35,-128v-50,45,-65,41,-73,97v7,16,30,33,38,31","w":157},"9":{"d":"112,-251v5,1,1,17,0,18v30,8,12,65,29,91v1,61,-8,146,-68,141v-14,-2,-40,-7,-48,-20v3,-3,3,-14,9,-13v19,10,34,13,51,14v22,-16,36,-83,25,-118v-19,18,-36,22,-68,24v-41,-7,-50,-51,-35,-88r-2,0v13,-29,66,-49,107,-49xm105,-232v-24,-6,-84,15,-80,60v6,63,74,35,77,-1v2,-24,-22,-52,3,-59xm108,-234v0,2,3,3,2,0r-2,0","w":145},":":{"d":"46,-135v-22,-6,-5,-37,9,-39v7,4,18,1,17,16v-6,19,-9,16,-26,23xm70,-29v4,18,-18,36,-34,23v-13,-19,9,-38,26,-32v4,-1,5,7,8,9","w":97},";":{"d":"68,-176v13,16,-6,41,-31,32v-19,-28,13,-44,31,-32xm25,57v-20,-4,8,-25,4,-37v6,-13,9,-42,-2,-55v-3,-14,20,-20,27,-15v24,33,-1,89,-29,107","w":97},"\u037e":{"d":"68,-176v13,16,-6,41,-31,32v-19,-28,13,-44,31,-32xm25,57v-20,-4,8,-25,4,-37v6,-13,9,-42,-2,-55v-3,-14,20,-20,27,-15v24,33,-1,89,-29,107","w":97},"<":{"d":"25,-136r43,-39v25,-21,54,-38,75,-64v18,-10,35,8,20,24v-43,24,-75,55,-116,93v24,31,69,43,106,64v2,-4,5,1,7,3v11,22,-20,36,-30,21v-32,-20,-80,-36,-108,-63v-7,0,-15,4,-15,-4v-8,4,-8,-5,-8,-12v6,-10,13,-20,26,-23xm145,-237v-1,0,-1,0,-1,1v1,0,1,0,1,-1"},"=":{"d":"20,-111v35,4,94,5,131,-4r-1,2v14,-3,14,11,12,20v-42,17,-110,7,-142,8v-16,0,-17,-21,0,-26xm164,-35v-49,-2,-106,5,-149,-3v-14,-3,-2,-19,5,-24r113,2v18,-6,46,-2,39,16v-2,5,-6,8,-8,9xm133,-60v-1,0,-1,0,-1,1v1,0,1,0,1,-1"},">":{"d":"44,-194r105,79v14,2,24,22,10,27v1,3,-6,4,-11,6v-34,14,-70,49,-110,60v-10,-1,-11,-7,-6,-15r98,-59v-31,-30,-74,-53,-106,-82v-1,-9,10,-16,20,-16xm111,-118r-2,0r2,0"},"?":{"d":"79,-114v-16,11,-11,45,2,60v0,22,-29,20,-36,1v-29,-73,55,-88,70,-145v-1,-29,-50,-41,-77,-18v-11,10,-24,46,-37,22v2,-51,97,-77,130,-37v38,48,-22,84,-52,117xm47,-62v1,1,2,3,2,0r-2,0xm80,-8v-6,11,-37,7,-28,-10v5,-10,5,-17,15,-15v8,-7,15,3,21,13v-3,7,-5,12,-8,12xm72,-34v-1,0,-1,1,-1,2v1,0,1,-1,1,-2xm54,-12v-1,0,-1,1,-1,2v1,0,1,-1,1,-2","w":149},"@":{"d":"1,-124v0,-98,89,-147,178,-126v23,6,44,31,44,45v17,24,8,106,-21,122v0,7,-24,22,-34,21v-6,2,-25,-12,-32,-11v-22,29,-67,0,-68,-27v0,-7,3,-20,9,-38v19,-26,26,-24,50,-33v14,3,30,14,24,27v4,4,-3,7,0,10v1,0,2,-2,2,0v-5,5,4,11,1,26r2,-1v-3,10,9,20,20,14v12,-7,30,-44,28,-73v-6,-81,-109,-74,-151,-28v-51,56,-10,193,66,166v31,4,66,-28,94,-38v6,27,-33,38,-54,51v2,4,-2,6,-6,6v1,-1,1,-2,0,-3v1,7,-7,6,-19,8v1,-1,3,-2,0,-2v-10,3,-18,4,-24,5v3,-1,5,1,1,2v-69,4,-110,-50,-110,-123xm152,-146v-1,0,-2,-2,-2,0r2,0xm113,-133v-12,-5,-15,18,-15,28v5,17,19,17,23,7v1,-12,-8,-26,-8,-35xm37,-81v-4,0,-2,3,0,1r0,-1xm123,-3v-1,-3,11,-3,11,-3v0,1,-3,2,-11,3xm120,-2v0,-1,0,-1,1,-1v0,1,0,1,-1,1","w":235},"A":{"d":"21,-6v-11,12,-26,-2,-20,-15v25,-66,45,-157,66,-226v10,-7,25,-5,24,7v27,76,17,160,57,222v-2,15,-24,22,-29,4r-24,-83v-24,-4,-33,2,-46,-1xm78,-196v-6,24,-18,51,-21,73r33,-1","w":149},"B":{"d":"40,25v31,27,82,-26,90,-39v18,-30,29,-81,-7,-110v-13,-10,-30,-26,-45,-19r13,130v-2,15,-26,11,-30,5r1,-6v-1,0,-4,2,-3,-1v-1,-51,-3,-106,-6,-155r-4,-63v-17,-3,-44,26,-52,0v14,-22,24,-20,50,-26v2,-12,24,-15,26,-4v36,-4,72,16,61,51v-4,13,-28,32,-35,42v43,11,93,69,71,131v-17,46,-41,72,-93,92v-32,12,-75,-15,-48,-33v1,1,8,7,11,5xm85,-237v-21,-2,-5,40,-6,53v11,-14,36,-26,24,-48v-4,2,-6,-4,-18,-5","w":175},"C":{"d":"164,-45v-25,74,-169,52,-164,-52v4,-83,37,-126,89,-152v15,-2,27,8,10,22v-26,4,-35,24,-49,40v-56,61,-11,211,82,153v3,-2,12,-12,23,-15v-1,1,-2,2,1,2v2,-3,8,-3,8,2","w":163},"D":{"d":"5,-224v-12,-7,-2,-19,11,-18r28,3v-4,-11,13,-16,23,-13v10,5,3,27,21,29v42,26,84,53,89,109v6,64,-92,148,-157,99v1,0,1,0,1,-1v-6,-1,-3,-5,-3,-7v36,0,79,10,100,-23v39,-34,34,-95,2,-123v-10,-9,-26,-27,-41,-30v6,63,-23,114,1,153v-2,18,-35,19,-37,1v-6,-60,16,-118,6,-166v-5,-11,-36,-8,-44,-13","w":174},"E":{"d":"9,-20v-2,-24,2,-63,5,-87v-9,-20,8,-50,1,-68v4,-20,1,-36,2,-47v-13,-2,-25,-19,-9,-26r130,-1v14,2,12,20,1,25v-29,0,-71,-9,-94,0r-4,97v32,15,88,-19,98,13v-19,22,-73,11,-99,13v-5,39,-17,91,40,70v22,0,73,-11,61,14v-33,14,-83,5,-114,15r2,0v-9,8,-30,-12,-20,-18","w":143},"F":{"d":"12,-227v-9,0,-18,-18,0,-24v25,-3,101,11,135,0v15,1,20,18,5,25v-36,2,-79,-3,-112,3r3,68r99,-9v11,9,8,22,-12,25v-33,-7,-65,7,-86,8r7,124v-21,16,-32,-4,-26,-33v-2,-35,1,-78,-7,-107v6,-22,-2,-62,-6,-80xm114,-240v-1,0,-1,0,-1,1v1,0,1,0,1,-1xm153,-232v-1,0,-2,-2,-2,0r2,0xm51,-155r0,2r0,-2","w":163},"G":{"d":"179,-122v-3,9,-11,6,-15,13v5,16,16,36,9,53v-17,49,-140,85,-161,22v-32,-93,16,-222,117,-214v5,2,8,3,8,4v0,18,-13,17,-25,16v-57,16,-95,94,-85,165v8,61,103,37,120,2v-1,-16,-8,-43,-18,-40v1,-2,-8,-4,-15,-7v-16,-1,-11,-17,-10,-21v0,-1,10,-7,18,-7v9,8,54,-14,57,14","w":180},"H":{"d":"36,-1v-46,6,-17,-79,-26,-125v-3,-15,-23,-19,-2,-36v-2,-34,3,-75,-6,-102v6,-23,35,-13,35,2r3,108v30,6,48,-3,69,-6v5,0,7,9,12,11v-1,-38,-3,-97,-20,-112v-1,-21,28,-15,33,-4v34,85,10,186,28,262v-2,21,-36,16,-35,-1v2,-60,-7,-88,-6,-136v-14,17,-51,16,-78,14v-7,34,3,64,2,91v-1,2,14,13,5,18v5,3,0,14,-7,11v0,4,-2,5,-7,5xm122,-27r0,2r0,-2","w":161},"I":{"d":"25,-276v11,-20,39,-8,35,17r15,210v19,37,-10,64,-28,38v-7,-82,-4,-159,-22,-265xm107,-291v11,2,14,-6,19,-3v-1,0,-1,1,-1,2v7,-5,17,6,15,14v-20,33,-60,10,-102,20v-26,-5,-62,7,-75,-13v22,-42,95,-2,144,-20xm147,-32v21,39,-29,27,-49,27v-35,0,-76,0,-108,3v-20,2,-29,-20,-7,-31v39,5,115,-3,164,1xm105,-232r0,2r0,-2","w":115},"J":{"d":"0,-243v1,-25,36,-9,57,-14v37,-8,73,-21,112,-22v15,5,9,33,-8,29v-7,-6,-38,1,-38,4v31,51,30,134,11,188v-10,28,-13,57,-48,58v-27,-9,-25,-9,-29,-28v7,-15,23,7,35,4v40,-49,42,-167,6,-218v-43,12,-68,23,-93,8xm75,-33v0,-2,3,-1,1,0r-1,0","w":176},"K":{"d":"10,-17v0,-72,6,-156,-10,-252v8,-21,30,-8,31,11r7,106v29,-31,75,-70,97,-103v9,-13,26,-10,27,6v-21,40,-54,57,-85,97r38,88v8,20,24,32,27,56v-6,4,-18,13,-24,4v-20,-28,-39,-88,-58,-123v-10,-10,-5,1,-19,12v-13,28,-4,74,0,94v0,21,-31,25,-31,4","w":163},"L":{"d":"10,-270v8,-17,33,-12,31,12v-1,18,6,42,1,57v14,58,-3,126,-6,170r103,-4v23,3,18,20,4,29v-55,-2,-85,-1,-124,6v-16,-6,-20,-16,-15,-30v21,-58,12,-176,6,-240xm18,-204v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":153},"M":{"d":"39,-244v-6,58,88,50,97,7v3,-15,4,-53,28,-37v12,24,-6,48,0,74v0,63,-8,133,0,191v-3,24,21,47,-11,51v-29,-59,-10,-193,-16,-239v-13,18,-70,21,-93,11r6,181v-12,18,-34,4,-25,-15v-9,-84,6,-170,-22,-238v16,-20,37,-1,36,14xm140,-155v-1,0,-1,1,-1,2v1,0,1,-1,1,-2xm25,-117v0,0,-2,0,-2,1v0,0,2,0,2,-1xm142,-116r0,1r0,-1","w":176},"N":{"d":"27,-266v14,23,23,68,31,104r2,-1r21,90r12,38r9,-209v-4,-33,22,-41,31,-24v-20,99,-4,182,-17,245v1,9,-11,22,-24,22v-29,-9,-42,-103,-53,-139v2,57,-9,83,-12,124v-1,16,-10,14,-23,16v-4,-62,23,-162,4,-223v-5,-19,-4,-51,15,-41v0,-1,2,-2,4,-2","w":133},"O":{"d":"106,-266v77,21,109,144,52,209v-22,41,-92,88,-129,21v-41,-75,-31,-204,40,-241v20,2,11,23,1,23v-43,43,-59,158,-17,210v13,17,9,19,24,22v99,-26,113,-195,21,-231v-6,-6,4,-9,8,-13xm156,-58v-1,0,-1,1,-1,2v1,0,1,-1,1,-2","w":189},"P":{"d":"52,-241v-12,-3,-43,36,-52,4v19,-22,13,-13,44,-31v3,-15,21,-14,27,-5v71,-10,124,14,114,83v-18,38,-58,62,-95,75v2,10,1,29,3,26v3,40,5,44,15,78v-4,19,-33,8,-30,-4v-8,-30,-12,-65,-14,-98v-15,0,-25,-16,-9,-24v3,1,6,5,8,3v-5,-38,-2,-70,-11,-107xm88,-138v35,-7,104,-70,48,-109v-22,-5,-38,-5,-51,-2v-11,26,5,69,3,111","w":187},"Q":{"d":"142,-51v37,-22,90,-114,43,-162v-5,-14,-31,-32,-43,-45v3,-15,25,-9,32,-2v30,31,55,53,55,104v0,62,-35,91,-78,132v10,33,14,56,36,79v15,7,4,25,-6,23v-32,-15,-40,-53,-53,-88v-53,21,-103,-5,-112,-43v-2,1,-3,-5,-5,-8v-25,-94,4,-171,68,-215v11,-12,45,-17,52,-2v7,4,5,31,-9,23v-9,9,-11,-10,-24,-3v-65,36,-101,167,-39,225v13,13,46,9,61,-1v-6,-21,-23,-70,-34,-91v-1,-14,14,-20,22,-15v15,20,23,63,34,89","w":229},"R":{"d":"63,-278v59,-12,108,36,71,86v-12,16,-37,29,-54,41v33,35,77,91,109,129v12,6,31,24,5,32r-10,-2v-50,-46,-74,-93,-109,-128r16,108v2,12,-17,17,-23,9v-13,-33,-16,-88,-21,-141v-5,-2,-20,-16,-6,-23v2,0,5,2,5,-1r-8,-75v-2,-2,-13,10,-26,11v-25,-12,-4,-27,16,-35v11,-2,-1,-17,21,-17v2,0,7,2,14,6xm107,-197v30,-27,5,-73,-42,-56r6,81v20,-11,32,-19,36,-25xm141,-43v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":208},"S":{"d":"0,-229v-2,-35,56,-65,74,-39v9,14,-10,33,-22,16v-30,11,-32,29,-7,53v43,42,113,84,101,163v-21,46,-133,50,-145,2v1,-7,5,-10,12,-12v14,27,26,22,65,25v93,-12,11,-110,-16,-132v-22,-18,-59,-39,-62,-76","w":149},"T":{"d":"13,-264v21,6,55,-3,75,-3v21,0,30,-26,43,-3r93,5v13,3,17,20,3,31v-30,-7,-64,-9,-93,-7r21,205v5,32,-20,49,-34,22v13,-82,-2,-159,-17,-226r-93,6v-15,-6,-10,-30,2,-30","w":237},"U":{"d":"128,-21v-58,58,-101,-27,-108,-91v-5,-46,-13,-133,-20,-181v4,-12,21,-17,29,0v3,22,-1,50,5,68v-3,28,9,64,7,86v6,32,16,105,48,114v41,-15,61,-97,35,-156v-2,-20,-16,-39,-13,-58r4,7v-1,-6,-2,-11,7,-11v6,8,9,12,10,12v20,69,50,156,-4,210","w":161},"V":{"d":"86,-67v14,-63,30,-143,24,-206v10,-17,21,-10,30,-1r-30,249v5,17,-5,29,-19,22v0,2,0,2,-2,2v-9,-5,-16,-10,-14,-22v-23,-55,-50,-185,-75,-238v-8,-16,21,-16,24,-9v24,59,47,132,62,203","w":142},"W":{"d":"0,-266v-3,-19,21,-15,28,-5r35,175v12,34,8,53,34,64v39,-64,3,-166,-7,-237v9,-16,33,-8,29,14v21,71,21,172,55,221v2,1,13,11,16,9v44,-48,28,-145,20,-205v-4,-30,-11,-22,-15,-40v4,-6,23,-15,29,3v21,67,23,139,14,196v-8,49,-39,93,-80,56v1,0,1,-1,1,-2v-13,-3,-12,-19,-24,-35v-1,34,-37,64,-65,34v-21,-24,-24,-40,-31,-74r-31,-150v-2,0,-6,-8,-8,-24xm224,-184r-2,3v1,0,2,-1,2,-3","w":243},"X":{"d":"161,-45v8,15,36,39,0,45v-32,-26,-44,-104,-66,-144r-61,132v-8,11,-24,13,-33,4v2,-4,-1,-2,-1,-10v34,-50,57,-105,83,-162v-8,-29,-22,-44,-28,-76v-2,-10,13,-11,22,-8v15,19,4,19,24,52v9,-20,25,-40,32,-59v6,-17,35,-14,31,7v-20,22,-36,56,-51,85r33,100","w":181},"Y":{"d":"21,-6v7,-48,34,-86,51,-128v-27,-6,-25,-26,-37,-55r-38,-88v6,-14,3,-10,20,-14v27,41,38,95,66,133v2,0,9,-12,16,-38v6,-20,16,-54,10,-71v3,-17,31,-18,31,4v0,104,-68,158,-88,242v9,17,-9,35,-23,22v-4,2,-5,-5,-8,-7xm28,-246v0,-4,-3,-2,-1,0r1,0xm84,-181v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":140},"Z":{"d":"29,-278r176,20v6,7,4,27,-7,25v-56,45,-107,102,-160,152r-36,50v47,-12,145,-4,188,-23v12,13,-8,30,-28,30v-64,0,-141,6,-182,24v-7,-3,-18,-11,-11,-22v47,-74,136,-147,201,-218v-40,-20,-163,14,-141,-38","w":208},"[":{"d":"30,21v9,-77,-5,-200,2,-263v1,1,4,-9,11,-9v24,40,0,111,10,151v-5,47,1,99,-4,136v-10,12,-20,-4,-19,-15xm36,-269v22,4,62,-8,86,-9v5,4,9,23,0,28v-28,-2,-42,1,-51,4v-23,-6,-40,12,-41,-12v2,-8,1,-9,6,-11xm31,44r96,-13v12,11,1,43,-10,30r0,2v-28,0,-61,8,-86,4v-3,-4,-1,-21,0,-23","w":133},"\\":{"d":"9,-248v-12,-14,7,-30,20,-29v18,7,12,35,20,43v-1,30,17,48,17,77v9,12,4,22,12,32v5,49,21,72,23,111v-16,18,-40,0,-33,-25v-5,-20,-15,-42,-14,-61","w":100},"]":{"d":"136,2v0,0,-4,7,-11,8v-25,-3,-6,-42,-14,-59r-3,-225v3,-21,24,-20,27,-7r1,-1v8,22,-4,48,3,63v-7,54,2,156,-3,221xm131,-285v-46,-9,-98,-3,-114,-8v-8,-54,51,-9,76,-18v28,5,52,-9,44,23xm15,33v-21,-38,22,-32,46,-27v36,6,53,6,70,4v9,-1,11,18,7,26v-65,6,-93,-10,-116,-3v-2,-3,-6,0,-7,0","w":133},"^":{"d":"34,-267v15,-12,30,-43,44,-59v30,0,18,12,43,32v17,27,32,24,34,47v-22,31,-41,-24,-66,-42v-15,8,-34,70,-58,37v-1,-3,1,-9,3,-15"},"_":{"d":"4,-20v32,-7,87,1,116,-7v17,1,42,-6,53,-1v15,15,-6,27,-19,23v-50,0,-104,7,-151,3v-3,-5,-2,-17,1,-18","w":180},"`":{"d":"101,-181v-20,26,-41,-29,-63,-41v-12,-16,-33,-28,-37,-48v1,-5,13,-13,19,-6v23,25,44,51,70,73v7,7,11,16,11,22","w":100},"a":{"d":"29,-22v-61,-51,-12,-157,57,-157v75,0,2,120,57,159v2,3,24,-13,31,-8v7,19,-38,39,-49,21v-7,-2,-21,-28,-23,-35v-9,23,-40,41,-65,22v-4,3,-3,-3,-8,-2xm100,-57r-3,-103v-65,-9,-110,107,-40,127v19,5,31,-17,43,-24","w":182},"b":{"d":"-6,-141v10,-11,20,-17,32,-21v-2,-41,-3,-65,-11,-97v1,-17,5,-12,17,-17v34,11,9,72,23,107v103,-22,160,78,87,135v-14,10,-47,30,-74,21v5,-8,3,-10,9,-8v30,-15,70,-32,67,-66v10,-60,-48,-69,-90,-56v1,43,-4,91,4,128v4,17,2,48,-19,32v-16,0,-9,-24,-11,-35v-8,-35,-1,-94,-3,-118v-11,5,-30,14,-31,-5xm8,-184v0,-1,-1,-3,-1,-1","w":174},"c":{"d":"85,-4v-41,6,-83,-38,-84,-87v-1,-34,33,-89,86,-91v13,-1,17,21,5,23v-23,-1,-59,31,-59,47v-17,53,33,106,83,74v10,-3,27,-18,35,-6v-6,27,-42,37,-66,40","w":151},"d":{"d":"78,1v-82,7,-92,-129,-37,-165v12,-12,50,-31,76,-22v2,-38,-8,-69,-6,-108v6,-19,27,-20,28,1r13,233v4,18,2,36,10,50v14,-4,12,9,10,18v-16,19,-44,-3,-40,-18r-6,-27v-11,16,-29,36,-48,38xm52,-30v29,19,42,-11,57,-24v30,-24,7,-70,11,-110v-60,-23,-119,81,-68,134xm74,-73v-2,-3,3,-12,3,-5v-1,3,-2,5,-3,5","w":164},"e":{"d":"-2,-87v4,-35,33,-76,74,-86v42,-32,110,32,65,66v-33,25,-68,38,-109,40v11,51,79,56,115,28v3,-2,12,-7,17,-4v-7,34,-54,42,-87,42v-39,-8,-65,-40,-69,-72v-1,-8,-4,-12,-6,-14xm111,-161v-35,-13,-90,35,-87,69v42,8,91,-12,104,-43v0,-9,-6,-18,-17,-26","w":159},"f":{"d":"82,-269v13,-15,57,-15,71,-5v11,12,32,39,10,47v-20,7,-15,-42,-38,-32v-58,4,-57,80,-56,126v22,7,54,-8,56,18v-10,17,-35,3,-55,4v0,32,8,53,6,78v12,26,-12,42,-26,21v4,-36,-6,-75,-7,-102v-39,9,-64,-36,-17,-23v29,8,13,-23,17,-43v7,-52,11,-58,39,-89","w":154},"g":{"d":"114,-64v-15,30,-65,32,-85,4v-45,-64,10,-150,79,-145v4,4,16,10,12,17v22,68,36,152,-1,199v-9,19,-43,77,-76,62v-19,-2,-48,-33,-28,-55v16,4,19,36,43,32v28,-19,55,-68,56,-114xm90,-179v-45,8,-76,90,-30,114v55,7,40,-85,30,-114","w":158},"h":{"d":"10,-127v17,-48,-4,-117,-10,-168v3,-15,31,-13,31,2v0,36,12,89,12,117v12,-15,27,-22,43,-31v22,1,41,-5,61,16v37,38,12,133,24,187v-14,8,-37,6,-31,-15v-10,-61,18,-145,-33,-166v-35,9,-47,25,-62,65v2,29,13,60,7,86v12,28,-19,46,-31,25v3,-38,-3,-72,-2,-100v1,-8,-8,-13,-9,-18","w":169},"i":{"d":"50,-206v-16,6,-36,-20,-14,-26v14,-7,28,21,14,26xm31,-182v43,22,17,119,34,172v-9,16,-37,7,-33,-10v-4,-44,-1,-90,-11,-129v0,-12,-10,-29,10,-33","w":90},"j":{"d":"23,-129v3,-10,24,-11,25,0v-2,15,-20,3,-25,0xm65,50v-6,7,-7,27,-28,26v-23,0,-18,-17,-25,-23v9,-11,13,7,25,9v29,-58,5,-125,-7,-167v42,-12,32,63,43,97v-4,19,-2,43,-10,58r2,0","w":89},"k":{"d":"21,-6r-16,-228v0,-20,-16,-38,3,-48v38,-2,17,42,28,75r-2,0v5,19,3,43,9,62v4,-10,12,-6,19,-5r47,-38v-1,-4,9,-7,17,-6v14,1,18,20,6,25v-10,4,-56,44,-54,46v16,35,29,55,45,87v1,0,7,5,17,16v-1,7,-1,22,-17,20v1,-1,2,-2,-1,-2r1,1v-32,-8,-26,-38,-46,-59v0,-2,-11,-26,-20,-38v-27,17,-1,71,-7,92v16,10,0,34,-10,29v0,2,-2,4,-2,2v1,-5,-4,-1,-6,-1v1,-1,2,-2,-1,-2v-9,1,-19,-21,-10,-28","w":143},"l":{"d":"26,-272v7,-18,32,-9,28,11r7,170v0,25,-3,54,-1,77v1,18,-25,16,-29,5v13,-97,3,-173,-5,-263","w":82},"m":{"d":"186,-107v18,-40,-33,-65,-48,-22v2,39,-2,83,4,117v-4,9,-13,15,-24,8r-1,2v-17,-9,0,-30,-16,-39r9,-74v-10,-11,-1,-12,-4,-23v-4,-17,-14,-18,-24,-15v-72,24,-32,101,-38,152v-4,2,-24,11,-26,-1v-12,1,-1,-32,-13,-36r-6,-133v6,-18,34,-11,31,9v-1,2,-2,10,3,9v23,-25,70,-35,93,-8v50,-39,107,3,90,69v-5,20,-8,40,-6,61v-8,14,-22,11,-31,1","w":217},"n":{"d":"123,-5v-1,-34,27,-147,-29,-137v-49,-9,-46,83,-50,118v8,11,-3,29,-16,23v-3,5,-9,-7,-12,-1v-16,-44,-4,-115,-16,-166v4,-13,33,-17,33,5v0,12,2,22,1,32v17,-62,112,-41,117,2v2,0,6,7,7,20v3,39,-9,73,-4,105v-7,19,-27,10,-31,-1","w":158},"o":{"d":"21,-14v-48,-59,-7,-152,59,-163v4,2,11,1,13,12v-32,16,-72,52,-61,103v0,0,-2,0,-2,1v8,2,2,21,11,24v28,39,85,-10,81,-41v-4,-33,-17,-49,-32,-68v10,-18,33,-3,39,7v15,29,42,71,5,106v-21,31,-81,48,-111,19v1,0,1,0,1,-1","w":155},"p":{"d":"37,-155v49,-14,115,10,115,64v0,59,-55,104,-100,77v-1,-23,27,-4,35,-15v25,-12,50,-75,16,-95v1,-3,-18,-11,-30,-14v-11,-3,-25,4,-34,5v2,118,-12,206,9,278v-2,7,-3,10,-7,9v-4,-3,-12,6,-19,2v-23,-33,-9,-119,-16,-148v0,-57,11,-125,-6,-170v13,-21,36,-7,37,7xm792,-149v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":177},"q":{"d":"54,-1v-89,-16,-41,-173,24,-173v26,0,34,-16,55,-4v7,61,5,132,7,185v-1,2,-6,8,-1,5v-4,47,-1,97,3,132v-4,18,-36,14,-31,-5v1,-41,-6,-89,1,-125r-1,-45v-10,16,-32,34,-57,30xm115,-78v-5,-20,-1,-51,-5,-69v-8,3,-14,-5,-20,-7v-36,19,-71,70,-47,119v35,36,51,-22,73,-32v-4,-6,2,-11,-1,-13r0,2","w":147},"r":{"d":"120,-152v-54,-8,-95,20,-82,78v-3,42,14,83,-27,73v-24,-41,-3,-109,-11,-142v4,-9,-1,-16,0,-25v14,-12,24,-13,36,5v16,-10,42,-15,61,-14v4,2,34,6,29,20v-1,4,-2,5,-6,5","w":121},"s":{"d":"98,-65v14,36,-16,70,-63,68v-17,-2,-38,-18,-33,-33v8,-1,6,-5,10,-7v8,4,14,20,27,20v23,0,41,-32,26,-51v-3,-16,-55,-49,-59,-78v1,-10,8,-7,8,-14v13,-12,67,-45,88,-17v4,17,-18,14,-25,7v-19,2,-56,22,-34,40v20,17,45,40,55,65","w":110},"t":{"d":"27,-196v9,-27,-28,-78,4,-83v20,3,14,32,20,42r2,89v22,-2,60,-17,65,5v0,9,-9,12,-15,9r1,2v-25,-1,-36,4,-53,6v-6,51,-2,86,5,123v-31,18,-32,-17,-32,-51v0,-25,0,-48,1,-72v-19,0,-42,-24,-11,-24v6,0,2,3,12,3v0,-16,3,-33,1,-49","w":118},"u":{"d":"15,-69v3,-32,-26,-96,-6,-113v46,-2,27,74,37,108v5,13,10,46,25,45v6,2,37,-38,30,-58v5,-31,-9,-80,-13,-85v5,-13,35,-13,34,4v6,20,12,57,13,85v-8,45,-24,81,-59,81v-43,0,-52,-32,-61,-67","w":132},"v":{"d":"79,-125v8,-27,18,-78,33,-74v39,10,8,23,1,58v-10,42,-16,84,-15,132v-28,31,-43,-12,-53,-43v-13,-42,-28,-71,-46,-105v0,-10,28,-18,32,-2v16,24,27,61,39,91v5,-19,4,-44,11,-57r-2,0","w":130},"w":{"d":"94,-41v-19,41,-66,21,-73,-6v-12,-42,-21,-91,-21,-132v29,-19,37,11,33,45v7,50,12,67,21,88r5,2v28,-41,12,-93,9,-137v10,-21,44,-5,33,15v7,45,8,112,33,137v0,2,3,3,8,4v30,-32,27,-123,3,-152v-1,-9,8,-7,13,-13v42,6,30,77,34,111v-5,40,-19,89,-60,79v-20,-5,-32,-22,-38,-41xm183,-184v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":194},"x":{"d":"126,-23v-9,-18,-26,-34,-36,-56v-6,6,-21,24,-43,54v-12,27,-25,25,-43,19v-15,-16,5,-25,13,-36r57,-72v-20,-58,-49,-74,-13,-85v31,-1,24,37,37,53v21,-28,32,-41,33,-41v11,-30,45,-27,47,-1v-32,35,-37,35,-63,80v13,20,27,48,47,70v2,28,-18,21,-36,15","w":177},"y":{"d":"69,58v-22,21,-94,22,-94,-18v0,-8,10,-24,18,-14v0,-1,1,-2,2,-2v12,57,76,6,85,-17v5,-6,27,-45,31,-67v-57,3,-79,-56,-83,-111v5,-6,2,-3,12,-7v26,0,20,17,20,29v0,26,27,87,51,49v14,-22,10,-43,6,-65v-1,-10,26,-21,32,-6v15,107,-28,180,-80,229","w":152},"z":{"d":"7,-20v52,-51,101,-109,148,-161r-118,7v-17,-8,-16,-18,-3,-25v44,-3,95,1,136,-7v27,-5,45,22,23,31v-33,25,-73,71,-112,116v34,-9,81,-16,117,-11v6,-5,26,-10,26,7v-15,38,-63,7,-107,20v-42,12,-61,17,-91,43v-18,1,-31,-9,-19,-20","w":214},"{":{"d":"10,-147v75,-20,-22,-145,81,-141v6,4,11,12,5,19v-67,-3,-7,84,-44,120v-11,10,12,29,0,47v3,42,2,117,50,84v5,0,9,0,9,5v-1,19,-39,29,-55,17v-38,-29,-17,-93,-32,-133r-3,1v-2,-5,-19,-12,-11,-19","w":130},"|":{"d":"97,3v-27,2,-17,-49,-18,-74r-7,-172r-7,-54v9,-17,36,-3,30,16r19,264v8,13,-7,21,-17,20v1,-1,2,-2,-1,-2"},"}":{"d":"74,-304v-10,3,-33,-15,-17,-23v24,-12,42,9,54,24v29,35,-18,101,4,131v17,2,16,23,8,27v-4,-1,-9,5,-11,15v9,29,13,47,8,72v-6,26,-33,73,-62,51v35,-26,41,-89,24,-130v7,-26,-11,-48,-2,-76v4,-13,17,-66,6,-78"},"~":{"d":"143,-156v1,30,-38,44,-57,33v-8,-1,-24,-35,-33,-10v-13,10,-26,13,-32,2v6,-27,40,-47,63,-34v-2,0,-2,0,-1,1v9,0,14,14,22,17v15,-3,23,-28,38,-9"},"\u00a1":{"d":"52,-195v-20,-3,-9,-21,2,-23v14,-3,25,16,11,19v0,4,-10,2,-13,4xm69,-151r16,212v-5,12,-25,15,-31,5v-4,-60,-2,-134,-12,-187v1,-14,-9,-42,16,-38v4,0,8,3,11,8","w":118},"\u00a2":{"d":"16,-24v-27,-48,-4,-118,55,-130v5,0,18,-11,24,-5v15,-13,12,-112,53,-86v2,38,-16,52,-23,91v18,6,43,15,36,38v-19,9,-31,-6,-45,-13v-8,33,-26,67,-27,100v17,-2,27,-11,47,-23v5,0,8,5,9,13v-8,24,-35,35,-58,34v-4,0,-6,7,-9,22v-4,19,2,58,-14,59v-8,7,-17,-2,-24,-7v6,-18,15,-61,13,-76r-1,2v-10,-6,-28,-10,-36,-19xm62,-42v6,-28,20,-56,24,-93v-39,5,-67,61,-47,95v0,3,6,6,18,9v3,0,5,-3,5,-11","w":167},"\u00a3":{"d":"77,-117v-19,5,-31,-16,-11,-23v3,-7,24,2,19,-11v5,-61,66,-124,114,-77v10,6,-2,29,-15,28v-16,-5,-8,-27,-39,-23v-26,24,-26,45,-33,80v23,-1,55,-8,59,10v-15,28,-42,8,-67,17v-6,23,-15,51,-23,66v16,18,53,39,78,14v0,0,10,-3,14,5v2,36,-56,38,-78,26v-5,1,-14,-8,-32,-18v-10,24,-59,31,-68,3v-11,-34,19,-64,46,-70v9,5,11,5,24,18v4,-15,10,-28,12,-45xm164,-234v-1,0,-1,0,-1,1v1,0,1,0,1,-1xm48,-39v-8,-11,-15,-31,-24,-18v-16,23,8,48,24,18","w":201},"\u00a4":{"d":"137,-148v-9,10,19,30,11,38v3,18,-3,33,-11,42v13,2,32,27,16,37v-18,5,-27,-7,-35,-20v-16,11,-49,12,-66,7v-11,13,-27,30,-43,15v-4,-14,13,-20,24,-30v-20,-17,-10,-55,4,-65v-15,0,-32,-34,-13,-38v1,3,2,-2,7,-2v11,-1,18,12,26,28v16,-14,42,0,54,-25v7,-7,24,-22,34,-8v0,10,-2,17,-8,21xm45,-100v-2,40,58,45,71,14v11,-28,-12,-53,-32,-44v-12,3,-35,15,-39,30"},"\u00a5":{"d":"91,-171v14,-8,30,-77,53,-91v5,-9,27,-8,24,9v-3,15,-12,12,-20,32v-10,21,-33,54,-38,85v-1,6,-9,5,-6,9v1,0,2,-2,2,0v-3,2,-5,5,-2,8v15,-1,44,-14,40,9v-4,24,-22,10,-36,18v7,14,48,-10,43,21v-24,17,-51,10,-31,58v-5,17,-26,15,-33,5v-4,-15,-4,-30,-4,-48v-19,-4,-40,8,-42,-13v6,-19,25,-14,39,-14v2,-20,-40,-1,-42,-28v5,-15,23,-16,36,-9v-5,-46,-38,-61,-55,-94v-25,-15,2,-36,14,-31r15,20v7,12,30,43,43,54","w":172},"\u00a6":{"d":"49,-128v-15,7,-24,-15,-21,-32v6,-40,-28,-98,14,-102v23,31,9,81,21,122v-2,8,-7,12,-14,12xm62,-146v-1,0,-1,1,-1,2v1,0,1,-1,1,-2xm33,-33v3,-27,-20,-83,21,-74v15,27,4,72,15,95r0,-2v2,14,-18,18,-25,15v0,-1,2,-2,0,-2v-15,2,-6,-20,-11,-32","w":94},"\u00a7":{"d":"75,-110v-32,-4,-63,-27,-57,-57v-2,-36,59,-58,80,-47v15,8,18,15,1,27v-17,-3,-33,-8,-44,3v-10,6,-9,34,1,37v30,18,81,18,83,60v11,27,-9,51,-33,59v34,9,30,56,7,65v-13,5,-24,11,-44,19v-19,-1,-21,-5,-18,-20v18,-8,77,-24,31,-42v-22,-9,-46,-27,-38,-57v-4,-18,26,-39,31,-47xm101,-88v-17,-5,-33,16,-31,34v33,9,55,-13,34,-37"},"\u00a8":{"d":"116,-255v22,11,8,45,-17,36v-18,-17,-2,-39,17,-36xm51,-212v-24,-3,-12,-42,2,-36v13,-7,26,17,15,28v-2,0,-12,5,-17,8xm56,-249v-1,0,-1,0,-1,1v1,0,1,0,1,-1xm60,-219v-1,0,-1,1,-1,2v1,0,1,-1,1,-2","w":180},"\u00a9":{"d":"79,-9v-92,-8,-67,-193,16,-205v16,-14,56,-13,72,-23v32,4,36,21,53,47v53,81,7,132,-50,173v-19,9,-65,22,-91,8xm154,-208v-68,-6,-140,85,-96,159v31,27,95,23,113,-1v31,-14,62,-75,31,-116v-12,-15,-19,-38,-35,-48xm113,-63v-58,-13,-32,-92,23,-103v19,-4,26,17,7,20v-26,4,-52,42,-26,58v19,4,36,-14,45,0v-2,21,-36,27,-49,25","w":294},"\u00aa":{"d":"38,-190v-50,0,-31,-74,5,-81r5,1v-7,-6,-41,-18,-13,-30v37,-3,58,38,66,73v-7,27,-36,37,-63,37xm38,-245v-19,17,-2,40,23,31v6,-1,12,-2,12,-9v-14,-17,-15,-17,-35,-22","w":113},"\u00ab":{"d":"134,-320v-4,30,-39,52,-40,88v-13,14,-29,-3,-24,-17v11,-33,25,-66,57,-79v3,2,6,4,7,8xm82,-287v-16,9,-20,73,-47,62v-12,-33,18,-67,36,-85v2,-6,22,-9,20,5v0,5,-3,11,-9,18","w":165},"\u00ac":{"d":"13,-122v39,5,133,-6,175,-5v17,17,-1,52,9,76v-7,16,-37,18,-35,-1v1,-14,4,-29,0,-42r-151,5v-14,-8,-14,-26,2,-33","w":207},"\u00ae":{"d":"255,-163v37,95,-68,179,-165,153v-80,-21,-86,-156,-37,-202v20,-19,39,-31,76,-30v4,4,11,5,14,10v-5,17,-24,10,-34,13v-72,14,-84,137,-31,174v32,23,93,19,118,-1v6,-5,52,-41,42,-78v-1,-25,-23,-82,-54,-92v-5,-4,-2,-12,0,-16v43,-6,57,33,71,69xm141,-107v9,14,57,29,31,53v-25,6,-29,-23,-48,-25v1,-2,-1,-5,-2,-2v10,20,-11,40,-24,24v-1,-46,-11,-78,-14,-99v-16,6,-24,-9,-14,-20v38,-20,110,8,88,50v-4,7,-10,13,-17,19xm110,-154v-4,7,5,38,16,33v19,-11,10,-26,-16,-33xm136,-17r0,3r0,-3","w":295},"\u00af":{"d":"0,-236v27,3,84,-11,125,-11v16,0,16,26,5,30r-134,8v-3,-1,-7,-5,-11,-9v0,-10,5,-16,15,-18","w":117},"\u00b0":{"d":"60,-271v42,-11,89,59,48,88v-26,31,-109,22,-102,-28v6,-40,26,-42,54,-60xm97,-213v-1,-46,-66,-43,-66,0v0,36,56,27,66,5v-2,-1,0,-3,0,-5","w":118},"\u00b1":{"d":"26,-118v-14,-17,6,-34,30,-26v1,2,12,1,14,2v7,-23,-10,-59,19,-63v31,9,5,37,9,63v24,3,69,-18,61,22v-14,14,-40,3,-63,7v-11,35,14,83,-23,83v-22,-24,0,-53,-7,-83v-18,-2,-31,-2,-40,-5xm155,-131v-2,1,-2,2,0,3r0,-3xm171,-15v6,-1,22,26,6,30v-17,13,-42,-6,-62,-1v-39,-11,-90,-6,-113,-8v-17,-12,-7,-32,13,-33v38,8,116,14,156,12"},"\u00b2":{"d":"66,-243v-8,0,-25,-8,-12,-25v41,-29,71,22,42,58v-3,5,-9,9,5,9v22,0,41,-24,52,-3v-7,29,-56,32,-78,25v-35,16,-47,-21,-13,-27r3,1v12,-22,19,-28,16,-45v-8,-1,-5,6,-15,7"},"\u00b3":{"d":"62,-238v-14,-10,1,-20,10,-23v-16,-10,-35,3,-38,-18v16,-20,86,-4,66,27v27,10,41,42,16,61v-30,5,-50,-3,-64,-18v10,-18,27,-1,45,-3v8,-10,-2,-16,-18,-22v-8,-3,-10,1,-17,-4"},"\u00b4":{"d":"24,-237v43,-18,80,-69,127,-78v7,3,12,20,4,24v-48,21,-79,62,-124,82v-8,-2,-23,-10,-14,-16v-3,-7,5,-4,7,-12","w":180},"\u00b5":{"d":"128,-174v-3,-13,19,-16,27,-6v42,51,27,165,-29,175v-26,5,-57,4,-38,36v-2,22,-25,19,-33,9v0,-31,2,-63,-6,-86v11,-31,-4,-75,-6,-106v0,-8,11,-17,20,-15v18,15,12,52,15,74v3,6,-3,80,27,69v32,-1,47,-50,46,-78v0,-23,-8,-47,-23,-72","w":207},"\u00b6":{"d":"120,-126v-58,13,-103,0,-106,-48v-3,-57,60,-75,97,-82v17,-3,42,-1,48,-1v0,3,4,3,1,1v18,-2,34,6,56,3v22,-3,26,28,6,29v-12,-2,-15,10,-30,6v3,47,-3,102,4,145v-5,17,5,48,0,62v-9,12,-41,4,-30,-16r-3,-163v1,-2,3,-32,-7,-27r0,-2v-6,7,-13,-6,-17,2r10,155v5,21,12,37,0,48v5,5,-2,11,-10,13v-5,0,-5,-3,-9,0r0,-4v-20,-32,-2,-80,-10,-121xm197,-221v-1,0,-1,1,-1,2v1,0,1,-1,1,-2xm200,-220v0,0,-2,0,-2,1v0,0,2,0,2,-1","w":239},"\u00b7":{"d":"38,-2v-21,-7,-6,-23,7,-24v9,-1,20,18,7,19v1,4,-10,4,-14,5","w":89},"\u2219":{"d":"38,-2v-21,-7,-6,-23,7,-24v9,-1,20,18,7,19v1,4,-10,4,-14,5","w":89},"\u00b8":{"d":"98,-120v20,13,5,42,-22,37v-24,-4,-9,-34,5,-36v6,1,12,-4,17,-1","w":180},"\u00b9":{"d":"17,-198v37,-4,80,-48,83,-83v7,-15,23,-18,31,-4v0,24,-9,54,-1,73v0,4,-5,15,-15,13v-22,-2,-14,-12,-20,-22v-22,25,-38,41,-69,47v-15,3,-19,-16,-9,-24"},"\u00ba":{"d":"72,-293v62,6,53,100,-10,101v-10,0,-22,-3,-31,-1v-51,-14,-19,-93,17,-94v6,-3,14,-4,24,-6xm47,-215v40,9,54,-43,24,-56v-28,-9,-61,46,-24,56","w":126},"\u00bb":{"d":"103,-170v-6,23,-36,9,-37,-10v-9,-39,-30,-49,-35,-82v1,-9,22,-22,28,-5v13,39,49,80,44,97xm89,-229v-18,-24,11,-54,24,-22v10,25,17,53,33,73v15,19,-5,34,-23,25v-2,-5,-8,-8,-6,-13v-13,-13,-17,-48,-28,-63","w":165},"\u00bc":{"d":"-2,-155v46,0,53,-27,85,-51v23,-17,13,-38,40,-45v23,6,2,33,3,41v-6,24,-15,51,-5,69v-8,19,-42,10,-35,-12v-2,-16,5,-19,2,-26v-14,15,-85,87,-104,36v4,-6,8,-10,14,-12xm121,-108v25,-26,92,-83,113,-109v5,1,9,-10,13,-5v11,-6,19,7,17,17v-18,19,-47,40,-67,59r-131,124v-6,12,-32,22,-38,1v4,-13,13,-18,25,-24v14,-16,51,-45,68,-63xm90,-172v-1,0,-1,0,-1,1v1,0,1,0,1,-1xm253,-21v-14,9,-37,31,-55,11v-31,-33,-1,-86,14,-118v12,-12,25,-11,27,2v-10,31,-38,65,-22,96v18,3,26,-39,20,-54v2,-18,28,-23,32,-5v-3,33,2,49,24,61v2,0,4,3,5,8v-4,20,-34,14,-45,-1","w":300},"\u00bd":{"d":"126,-251v0,-9,8,-25,20,-21v32,8,-2,84,10,110v-5,15,-31,14,-33,-2v-2,-17,6,-33,2,-43v-24,27,-53,65,-80,84v-14,5,-35,-14,-15,-24v28,-16,98,-98,96,-104xm54,-54r95,-96r108,-102v0,-8,30,-20,31,-2v3,5,-5,18,-15,20r-124,118v-13,4,-59,78,-81,73v-3,3,-1,0,-8,0v-5,-5,-3,-7,-6,-11xm171,-71v-3,10,-24,33,-33,14v4,-33,51,-67,81,-59v21,6,8,35,-1,47v-10,13,-25,30,-31,43v16,2,52,-18,75,-21v13,9,-2,25,-19,30v-34,10,-74,29,-95,6v10,-27,49,-51,52,-79v-7,3,-17,9,-29,19","w":345},"\u00be":{"d":"98,-258v-7,-2,-24,21,-38,12v-12,-21,30,-36,49,-32v24,5,21,36,12,51v26,1,29,58,8,68v-15,18,-73,30,-82,-4v16,-8,32,6,46,-2v18,-4,27,-33,14,-42v-21,1,-42,-12,-19,-25v9,-1,13,-18,10,-26xm155,-116v-41,28,-97,90,-135,114v-17,4,-26,-9,-13,-19v25,-21,57,-54,97,-82v1,0,3,2,3,0v10,-21,52,-44,71,-63v42,-41,85,-57,114,-88v29,0,21,16,0,32r-119,90xm178,-163v-1,0,-1,0,-1,1v1,0,1,0,1,-1xm178,-41v1,-26,3,-98,40,-92v17,20,-16,43,-10,71v-1,6,-5,24,0,26v16,-11,28,-28,24,-53v4,-16,23,-17,31,-4v-1,22,1,31,7,50v11,2,17,18,1,20v-7,6,-21,-2,-30,-8v-13,24,-65,28,-63,-10xm111,-92r0,1r0,-1","w":300},"\u00bf":{"d":"74,-225v2,-19,27,-18,33,-10v4,6,1,28,-4,20v-7,6,-27,6,-29,-10xm113,62v-46,15,-106,-5,-98,-56v5,-32,60,-88,95,-91v-1,-28,-7,-56,-16,-75v0,-6,4,-10,14,-13v35,8,23,57,33,90v19,27,-14,40,-27,23r1,-1v-3,-2,-4,-2,-8,-1v-18,11,-88,60,-51,99v42,19,74,-7,103,-25v5,4,17,-35,27,-23v12,2,3,20,5,28v-24,25,-46,35,-78,45xm134,-53v0,0,-2,0,-2,1v0,0,2,0,2,-1","w":200},"\u00c0":{"d":"83,-261v-26,9,-33,-25,-40,-42v9,-17,22,-18,33,-1v1,11,26,36,7,43xm97,-56v8,-27,-29,-33,-49,-22v-3,16,-1,38,-7,51v13,27,-26,37,-33,18v5,-63,25,-130,25,-187v0,-17,5,-48,20,-45v15,-7,35,1,27,15v24,48,25,73,40,128v-2,13,9,68,21,94v1,14,-14,15,-25,14v-9,-6,-15,-47,-19,-66xm68,-177v-4,24,-13,50,-14,72v11,-1,25,2,34,-1v-5,-25,-9,-52,-20,-71","w":148},"\u00c1":{"d":"30,-248v13,3,16,-17,32,-16v65,44,51,176,80,248v0,18,-34,20,-33,0v-8,-29,-8,-65,-19,-90v-21,4,-37,-8,-52,1v-1,31,-9,66,-5,94v-8,19,-31,16,-36,2r11,-105v-8,-19,15,-37,8,-67v2,-20,7,-39,2,-58v3,-3,7,-6,12,-9xm42,-136v23,5,38,2,48,0v-6,-30,-12,-60,-28,-80v-2,1,-20,60,-20,80xm35,-121v-2,1,-4,1,0,1r0,-1xm103,-54v-1,1,-3,1,0,1r0,-1xm78,-332v20,12,-4,54,-25,53v-28,0,-7,-32,0,-43v9,-15,15,-10,25,-10","w":148},"\u00c2":{"d":"54,-257v-22,19,-39,-6,-21,-24r33,-54v1,-4,29,-12,31,3v13,16,27,42,35,65v-4,11,-34,16,-34,0v-5,-12,-11,-30,-19,-37v-10,14,-19,29,-25,47xm2,-9v22,-62,32,-179,60,-249v0,0,19,-9,22,2v39,59,62,159,62,243v0,13,-16,15,-25,14v-16,-21,-1,-81,-17,-106v-16,2,-42,-8,-50,2v-9,38,-16,70,-20,94v-5,7,-31,16,-32,0xm74,-207r-14,73v12,-1,28,1,38,-2v-9,-23,-12,-51,-24,-71","w":145},"\u00c3":{"d":"46,-310v9,1,22,35,29,10v-1,-7,-2,-24,2,-25v24,2,20,1,26,26v-9,30,-9,29,-38,37v-14,-4,-21,-2,-32,-18v-25,14,-39,-14,-19,-30v10,-8,29,-11,32,0xm37,-225v-7,-30,32,-43,42,-24r48,208v7,15,17,28,-2,38v-38,2,-17,-47,-38,-80v4,-18,-25,-14,-34,-11v1,27,-9,54,-4,70r-3,0v14,21,-10,30,-25,27v-15,-31,6,-60,4,-100v6,-41,9,-84,12,-128xm64,-177v-5,25,-3,24,-6,51v3,2,17,5,20,0xm49,-10v0,0,-2,0,-2,1v0,0,2,0,2,-1","w":139},"\u00c4":{"d":"108,-285v-23,3,-23,-20,-4,-26v14,3,25,19,4,26xm73,-279v-18,2,-25,-11,-15,-24v7,-1,12,-6,19,-4v17,10,6,27,-4,25r0,3xm60,-106v-15,21,-20,73,-44,106v-13,1,-14,-7,-14,-14r53,-150v0,-8,17,-67,21,-83v2,-4,14,-23,25,-18v24,19,12,89,28,125v24,5,0,21,2,35v8,50,9,60,24,91v-2,19,-27,19,-30,7v-11,-33,-15,-73,-20,-102v-18,2,-33,7,-45,3xm89,-206r-21,73v15,2,22,1,33,-3v-4,-22,-5,-54,-12,-70xm126,-71r1,0r-1,0","w":166},"\u00c5":{"d":"34,-222v-33,-23,-12,-92,23,-89v23,12,51,59,24,87v19,47,33,102,39,155v4,40,20,40,1,56v-5,-1,-25,0,-19,-13v-10,-20,-10,-80,-19,-96v-25,4,-43,0,-40,26v-5,31,-6,69,-4,90v-3,5,-8,7,-14,7v0,1,2,2,0,2v-5,-1,-7,2,-12,1v-21,-22,2,-34,-4,-62xm54,-280v-10,-4,-10,9,-11,17v-3,14,17,25,21,13v0,-11,-2,-19,-10,-30xm62,-196r-12,50r28,1v0,-6,-5,-22,-16,-51xm40,-105v-1,0,-1,1,-1,2v1,0,1,-1,1,-2xm5,-19v0,0,-2,1,0,1r0,-1","w":137},"\u00c6":{"d":"19,-128v6,-29,11,-74,16,-110v4,-24,20,-6,23,-28v13,-12,24,-8,33,2v21,24,81,7,106,14v24,-1,37,-4,41,15v-23,30,-90,2,-129,8v8,30,13,45,18,82v56,8,90,-14,107,2v-3,45,-71,16,-103,32r7,72v41,1,70,-1,91,-3v13,5,7,20,1,22v-22,16,-70,5,-90,11v3,22,12,30,-13,39v0,1,0,3,-1,3v-30,-29,-4,-101,-24,-139v-25,4,-38,3,-59,4v-3,-1,-3,6,-6,11v-6,30,2,79,-19,90v-3,-6,-16,-5,-17,-13v1,1,2,2,2,-1v-5,-1,-1,-9,2,-31r8,-52v-12,-14,-11,-23,6,-30xm101,-135v-4,-40,-10,-65,-30,-102v-6,25,-30,90,-23,106v22,-1,42,1,53,-4","w":244},"\u00c7":{"d":"104,-1v6,19,49,61,8,71v0,1,-3,2,-9,2v-33,16,-89,-3,-69,-44v11,-1,14,-4,22,16v10,7,31,11,42,6v-7,-16,-18,-27,-21,-46v-48,-10,-82,-52,-75,-106v12,-97,67,-156,161,-156v13,5,10,22,2,29v-19,5,-27,-4,-45,2v-62,19,-97,76,-90,150v5,57,74,69,102,31v7,-4,19,-10,18,4v-1,17,-25,37,-46,41","w":173},"\u00c8":{"d":"54,-282v12,-25,25,-47,52,-61v39,17,-21,39,-22,66v-4,7,-22,15,-27,6xm126,-15v-31,11,-75,4,-100,15v-14,3,-29,-11,-21,-26r1,-184v5,-14,24,-41,42,-24v29,-5,104,-20,72,19v-26,1,-59,11,-82,8v-6,18,-4,56,-3,77v30,8,60,-20,60,15v-14,23,-45,12,-61,16v1,22,-1,48,2,68v35,2,70,-15,92,-5v8,1,3,15,-1,19v-1,0,-2,-2,-2,0","w":136},"\u00c9":{"d":"88,-276v-16,-1,-53,-34,-31,-46v16,-9,36,13,43,33v0,6,-4,11,-12,13xm9,-223v3,-33,52,-3,74,-13v28,5,64,-19,69,8v0,9,-19,22,-26,15v-32,7,-73,3,-93,7r2,79v30,11,62,-13,72,15v-10,30,-44,11,-73,15r0,67v36,8,66,-12,92,-13v4,4,11,5,10,15v-13,25,-63,16,-93,28v-9,-4,-29,6,-35,-5v-14,-25,9,-81,-4,-111v9,-36,-3,-64,-1,-96v0,-5,2,-9,6,-11","w":152},"\u00ca":{"d":"47,-271v-18,-14,11,-65,31,-60v15,4,41,45,7,51v-14,-13,-19,23,-38,9xm139,-45v21,12,3,30,-16,30v-28,-12,-73,8,-96,16v-38,-16,-11,-82,-19,-130v-8,-51,-29,-137,44,-122r100,-7v15,3,16,21,2,28r-122,5v-4,27,2,56,4,78v28,9,37,-6,65,-1v14,15,2,27,-22,28v-15,5,-35,2,-43,5r4,83v33,-5,71,-16,99,-13","w":166},"\u00cb":{"d":"49,-281v-17,-10,-5,-36,14,-31v15,2,15,27,-2,30v-5,1,-8,0,-12,1xm63,-309v-1,0,-2,-2,-2,0r2,0xm123,-289v0,17,-33,28,-37,4v-1,-7,4,-15,8,-13v-1,1,-3,2,0,2v12,-12,21,-4,29,7xm8,-197v-6,-18,-18,-51,12,-46v35,-3,76,0,108,-6v10,1,41,-3,37,13v6,5,-3,12,-12,16r-110,4v-13,17,1,63,3,88v20,6,36,0,48,-4v15,2,12,24,0,27v-19,18,-61,-7,-49,37v-16,54,43,37,64,30v27,-9,33,19,11,31v-32,-3,-60,12,-83,5v-43,-3,-17,-76,-20,-109","w":167},"\u00cc":{"d":"54,-269v-26,-7,-18,-25,-29,-43v0,-9,7,-20,22,-17v15,11,11,31,17,46v0,6,-3,11,-10,14xm41,-6v-12,-86,-6,-172,-15,-249v12,-16,29,-7,29,19v0,70,1,158,17,218v-5,20,-18,16,-31,12","w":115},"\u00cd":{"d":"80,-315v-15,0,-21,71,-49,47v-9,-24,12,-31,18,-54v4,-15,28,-18,30,-3v7,2,-5,8,1,10xm78,-5v-7,10,-37,3,-28,-17r-19,-188v-4,-3,-5,-13,-6,-22v33,-23,34,8,39,51v6,56,7,118,19,168v-1,5,-5,3,-5,8","w":115},"\u00ce":{"d":"47,-264v52,41,17,162,40,234r-2,0v11,15,-8,35,-20,23v-25,-25,-4,-131,-19,-179v0,-25,-25,-66,1,-78xm34,-274v-4,17,-33,18,-32,-7v10,-11,26,-46,45,-65v29,-10,29,29,38,49v-8,16,-18,13,-28,7v-1,-7,-5,-10,-6,-14v-2,-1,-5,12,-14,24v-2,4,-5,4,-3,6","w":115},"\u00cf":{"d":"9,-301v-14,-17,9,-31,22,-25v13,6,3,25,0,28v-7,2,-20,-1,-22,-3xm56,-314v-1,-14,37,-22,37,-4v0,26,-31,25,-34,8v-1,0,-3,-2,-3,-4xm68,-266v23,83,22,173,37,246v-1,16,-8,17,-19,22v-30,-17,-8,-78,-21,-119v-3,-57,-19,-104,-19,-139v0,-17,8,-17,22,-10","w":115},"\u00d0":{"d":"51,-108v-20,-10,-5,-33,17,-32v8,0,13,0,21,-2r-10,-100v-22,-11,-76,10,-81,-26v18,-26,49,6,75,-3v22,-22,34,6,64,1v15,8,79,26,88,46v17,16,34,35,34,74v0,53,-42,82,-74,118v-19,22,-83,43,-117,22v-6,-3,-23,-20,-5,-23r0,3r40,4v-11,-33,-3,-52,-9,-84v-16,5,-33,8,-43,2xm206,-100v27,-25,21,-104,-20,-118v-11,-10,-53,-34,-74,-24v5,29,3,66,12,92v11,-1,29,-6,29,8v0,23,-33,13,-25,35v8,25,2,63,13,74v23,-12,56,-50,65,-67","w":266},"\u00d1":{"d":"53,-315v-4,16,-39,9,-35,-8v14,-24,49,-47,68,-15v6,-11,23,-25,26,-5v4,37,-30,45,-49,21v-7,-4,-3,7,-10,7xm69,-329v0,0,3,5,3,2xm44,-173v2,46,14,118,25,157v-11,12,-37,7,-33,-14r-32,-211v5,-18,27,-31,34,-14v32,80,72,153,120,224v-3,-40,-16,-87,-14,-124v-10,-40,-14,-79,-21,-120v6,-18,28,-11,30,7r28,219r8,60v0,1,-2,4,-6,6v-11,-5,-21,1,-20,-19v-33,13,-35,-29,-50,-47xm161,-73v-2,0,-2,0,-2,2v2,0,2,0,2,-2","w":194},"\u00d2":{"d":"73,-258v-17,-16,10,-44,30,-52v8,0,11,2,12,8v-7,15,-17,54,-42,44xm35,-14v-78,-46,-26,-219,62,-227v18,-9,35,12,13,20v-75,6,-106,118,-69,176v17,16,47,30,70,21v66,-27,68,-132,21,-175v-3,0,-8,-6,-15,-16v2,-2,7,-5,12,-3v-1,-1,-1,-3,1,-3v63,16,79,114,53,162r2,2v-27,42,-64,62,-103,62v-7,-7,-20,-3,-47,-19xm34,-202v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":201},"\u00d3":{"d":"93,-247v-20,1,-60,-22,-36,-41v18,-6,20,9,33,16v6,7,18,17,3,25xm9,-40v-23,-83,11,-167,77,-179v8,-1,19,6,21,8v73,-39,124,80,90,154v-17,38,-69,73,-128,56v-22,-1,-53,-15,-60,-39xm110,-20v84,-4,94,-165,7,-183r-6,0v-2,23,-19,10,-30,7v-47,17,-76,144,-22,169v14,7,37,7,51,7","w":209},"\u00d4":{"d":"33,-255v5,-19,21,-62,46,-69v19,10,14,14,28,38v2,22,-28,17,-32,4v-9,31,-23,49,-42,27xm0,-89v-16,-86,36,-161,119,-164v17,6,11,9,21,21v38,24,56,78,53,140v-2,32,-38,63,-54,74v-28,20,-83,14,-104,-5v-15,-13,-29,-36,-35,-66xm108,-232v-93,9,-114,179,-23,203v105,2,92,-159,29,-192v-5,-3,-3,-8,-6,-11","w":196},"\u00d5":{"d":"77,-284v-6,10,-30,4,-26,-9v-1,-16,39,-38,47,-12v12,1,9,-40,33,-37v24,28,-18,89,-54,58xm214,-123v8,88,-68,129,-141,124v-67,-5,-83,-81,-75,-142v9,-71,39,-84,95,-100v12,-1,36,-1,33,12v63,-10,83,51,88,106xm170,-173v-9,-20,-20,-41,-48,-37v-64,-26,-97,38,-97,98v0,34,14,77,41,84v83,22,146,-64,107,-137v1,0,3,1,3,-1v-3,0,-6,-2,-6,-7","w":215},"\u00d6":{"d":"56,-263v-15,-13,-3,-23,13,-24v12,2,19,23,4,27v-3,-1,-12,-5,-17,-3xm94,-271v15,-22,50,-1,26,17v-15,0,-25,-5,-26,-17xm4,-68v-12,-77,13,-174,100,-164v64,-7,115,92,87,153v-12,26,-62,86,-102,77v-41,10,-79,-27,-85,-66xm165,-88v11,-59,-17,-116,-60,-126v-11,13,-27,1,-39,11v0,1,-6,6,-16,14v-38,56,-29,143,19,165v49,7,78,-37,96,-64","w":198},"\u00d7":{"d":"72,-88v-11,-29,-18,-43,-26,-75v0,-5,1,-7,5,-7v3,-9,28,-10,28,7v4,15,9,34,15,45v18,-15,20,-34,40,-41v7,1,27,10,17,21v-1,-1,-2,-2,-2,1v4,4,-6,7,-9,11v-9,5,-24,26,-34,37v9,24,17,47,32,62v7,21,-27,30,-32,14v-2,2,-3,-2,-4,-3v0,-11,-12,-27,-19,-43v-10,20,-16,24,-22,42v-9,11,-33,12,-32,-7v16,-18,15,-33,43,-64"},"\u00d8":{"d":"57,-153v20,-40,70,-71,113,-73v9,3,11,10,13,16v6,-2,14,-4,23,-3v21,-24,13,-34,32,-48v30,-4,28,26,11,32v-40,33,4,75,-11,129v-4,88,-69,115,-140,110v-19,7,-20,61,-48,52v-20,1,-8,-18,-2,-28v8,-15,15,-21,19,-33v-34,-15,-39,-57,-34,-99v0,-6,8,-24,24,-55xm71,-33v10,19,15,10,26,-7r93,-151v-79,-37,-160,82,-119,158xm126,-16v72,11,96,-86,82,-154r-96,156","w":283},"\u00d9":{"d":"27,-296v1,-14,29,-16,32,-1v-3,27,53,63,19,76v-22,-4,-48,-47,-51,-75xm118,-223v5,-13,27,-6,27,4v0,44,14,94,8,135v5,43,-43,82,-79,80v-34,7,-63,-29,-61,-59v-11,-43,-8,-101,-10,-154v23,-21,36,6,32,29v2,59,-8,129,28,158v91,3,58,-126,50,-186v1,-5,3,-7,5,-7","w":166},"\u00da":{"d":"44,-225v6,-38,29,-84,58,-103v9,1,17,6,15,18v-17,22,-40,58,-39,82v-6,10,-29,19,-34,3xm41,-64v3,51,73,37,79,-4v9,-65,-10,-123,-10,-178v0,-6,5,-11,14,-15v30,5,20,47,26,80v11,63,6,147,-35,166v-51,24,-96,18,-103,-46v-6,-57,1,-130,-12,-180v7,-12,31,-19,33,3v5,58,-1,122,9,174r-1,0","w":157},"\u00db":{"d":"55,-269v18,-23,20,-70,50,-82v25,7,17,34,32,51v3,22,-24,27,-33,8v0,-2,-1,-4,-3,-6v-10,14,-9,44,-27,40v-6,7,-15,-6,-19,-11xm82,-3v-89,9,-67,-159,-83,-244v-2,-11,20,-22,30,-12v11,39,1,85,10,118v3,47,7,132,65,109v8,-3,27,-20,27,-30v27,-44,16,-128,7,-183v1,-10,4,-18,15,-19v39,36,15,100,24,153v-6,40,-22,65,-40,92v-12,5,-38,22,-55,16","w":180},"\u00dc":{"d":"47,-282v-18,-11,-7,-26,14,-26v6,4,13,4,15,12v0,-4,6,-8,18,-12v7,0,7,9,12,5v7,13,-4,22,-17,21v-9,2,-11,-15,-16,-8v3,5,-9,10,-12,11v-2,-3,-7,1,-14,-3xm76,-24v83,-20,46,-153,35,-221v-2,-14,27,-26,31,-8v18,91,41,229,-41,252v-121,33,-102,-136,-100,-243v17,-19,29,0,29,24v0,45,-3,102,4,138v1,1,16,54,25,47v0,2,5,6,17,11","w":162},"\u00dd":{"d":"82,-293v1,-10,33,-33,39,-7v2,10,-16,23,-20,33v-1,21,-25,29,-35,14v-8,-13,10,-31,16,-40xm70,-3v-5,9,-35,3,-28,-15r43,-113v-27,-22,-57,-67,-84,-96v-14,-15,15,-30,23,-18v17,4,23,37,42,49v6,9,15,25,31,33r16,-69v29,-7,35,7,23,42r-61,171v5,4,-1,14,-5,16xm30,-230v-1,-2,-3,0,-3,1xm23,-213v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":143},"\u00de":{"d":"1,-168v18,-17,-18,-67,19,-67v29,0,-2,62,38,51v31,2,75,11,75,46v0,55,-53,68,-92,74v-1,26,14,43,3,58v-34,23,-34,-19,-34,-50r1,-95v0,-11,-9,-9,-10,-17xm41,-88v31,-1,68,-25,59,-52v-8,-23,-44,-23,-60,-17","w":134},"\u00df":{"d":"18,58v-34,-24,-9,-133,-15,-175v-13,-90,34,-162,110,-133v10,2,25,26,19,47v-9,34,-25,56,-43,78v52,-6,81,53,47,86v-27,26,-65,46,-103,37v0,15,2,29,4,45v-4,10,-11,15,-19,15xm59,-133v30,-30,49,-54,38,-93v-50,-31,-71,50,-65,100v5,6,20,-4,27,-7xm33,-23v40,9,76,-14,87,-46v1,-40,-61,-34,-88,-27v-1,25,-4,57,1,73","w":152},"\u00e0":{"d":"90,-247v-13,33,-2,50,8,78v-9,12,-23,6,-32,-7v-19,-28,-17,-85,15,-81v0,2,12,3,9,10xm-2,-56v4,-63,52,-97,102,-101v13,3,34,3,30,23v7,24,8,53,20,72r7,3v15,-15,25,-27,28,-3v-6,34,-50,31,-64,13v-12,26,-58,61,-88,48v-22,-8,-37,-27,-35,-55xm40,-104v-14,16,-27,82,19,83v27,-13,35,-22,45,-69v-2,-23,-5,-34,-8,-34v-15,-9,-16,-17,-40,1v-9,8,-14,14,-16,19","w":180},"\u00e1":{"d":"139,-260v0,19,-37,50,-34,73v-9,15,-32,10,-31,-5v1,-16,24,-60,52,-73v3,2,11,4,13,5xm201,-63v14,22,-25,53,-59,41r-15,-8v-26,56,-134,23,-124,-28v-2,-51,31,-103,85,-104v21,5,22,4,27,16v48,-5,8,81,41,103v18,6,22,-20,45,-20xm105,-131v-53,-31,-96,56,-62,97v15,18,53,16,60,-11v2,0,4,-8,7,-24v-1,-20,-6,-44,-5,-62","w":164},"\u00e2":{"d":"71,-250v23,-30,43,6,47,35v-3,3,5,11,6,28v-21,29,-34,-9,-40,-28v-18,26,-23,64,-53,56v-13,-27,8,-35,24,-63xm29,-2v-62,-22,-15,-142,28,-143v0,-2,8,-5,25,-6r46,8v6,21,3,19,11,50v-4,31,-4,69,27,65v16,-20,20,-16,31,-5v-11,37,-61,36,-80,11v-21,23,-58,31,-88,20xm34,-80v-9,20,-6,66,20,59v25,5,53,-12,48,-42v-7,-6,3,-59,-13,-55v-21,-28,-56,23,-55,38","w":162},"\u00e3":{"d":"145,-215v10,11,-16,54,-41,40v-22,-11,-28,-36,-32,-51v-14,7,-34,51,-50,25v0,-21,66,-87,78,-36v4,19,4,29,15,38v9,-7,12,-19,27,-20v2,0,3,1,3,4xm-1,-59v-15,-54,32,-115,86,-102v9,-6,30,2,25,15v6,28,3,63,16,84v6,-12,22,-3,19,9v0,17,-26,20,-34,12v-13,19,-33,43,-67,43v-29,0,-44,-39,-45,-61xm44,-21v62,-9,50,-84,31,-121v-41,4,-64,40,-54,84v5,23,4,35,23,37","w":145},"\u00e4":{"d":"116,-223v18,5,28,29,-2,33v-12,-3,-23,-16,-12,-28r5,1v0,-6,10,0,9,-6xm80,-207v-2,17,-32,19,-36,5v-1,-25,33,-18,36,-5xm53,-2v-89,0,-50,-143,3,-148v27,-12,49,14,65,2v36,0,21,75,16,96v-2,14,32,20,33,6v9,-2,16,-23,30,-13v5,10,-1,24,-12,30v-8,17,-59,23,-70,2v-19,9,-29,25,-65,25xm31,-46v4,36,62,17,73,-7v0,-23,-4,-53,1,-69v-19,-5,-42,-16,-54,1v-18,26,-23,42,-20,75","w":172},"\u00e5":{"d":"31,-220v2,-25,25,-37,50,-31v13,4,9,20,23,18v25,36,-20,67,-54,41v-6,-6,-12,-14,-19,-28xm83,-229v-16,-8,-38,13,-11,21v16,3,14,-6,11,-21xm50,-2v-73,-10,-56,-158,19,-157v23,6,37,-4,46,6v9,30,16,70,8,94v4,18,21,20,34,-2v1,1,2,-4,7,-5v0,1,-2,2,0,2v4,-6,13,-1,9,5v7,27,-42,53,-66,30v-8,15,-32,30,-57,27xm93,-157v-1,0,-1,0,-1,1v1,0,1,0,1,-1xm27,-88v-4,20,0,68,33,62v47,-9,28,-72,24,-108v-33,-5,-52,18,-57,46","w":162},"\u00e6":{"d":"243,-49v20,27,-30,61,-68,51v-24,-6,-50,-14,-70,-25v-42,54,-124,12,-103,-61v6,-21,21,-73,50,-76v8,-5,26,-4,35,-5v-15,-37,-53,5,-69,-21v3,-24,31,-21,46,-21v30,0,59,28,56,50v45,-47,117,-18,100,38v-6,18,-56,45,-93,33v-3,64,71,81,105,43v2,0,5,-2,11,-6xm181,-161v-12,-7,-51,25,-52,43v33,29,87,-20,52,-43xm80,-144v-47,0,-74,91,-37,122v22,4,25,-6,41,-18v14,-24,-4,-68,-4,-104xm40,-119r0,1r0,-1","w":245},"\u00e7":{"d":"56,-14v-61,-3,-65,-109,-16,-132v13,-16,82,-15,59,14v-9,6,-20,-3,-26,-5v-45,4,-50,95,-12,101v28,12,57,-15,82,-12v8,21,-25,28,-38,35v3,26,16,44,25,66v1,14,-19,23,-46,23v-26,-6,-24,-6,-31,-21v13,-15,27,7,42,0v-1,-8,-14,-7,-8,-21v-6,-14,-5,-34,-14,-45v-7,1,-14,0,-17,-3xm93,48v-1,0,-1,1,-1,2v1,0,1,-1,1,-2","w":138},"\u00e8":{"d":"92,-169v-23,27,-54,-31,-56,-39v-3,-16,-33,-44,1,-49v24,6,20,40,34,57v6,6,17,22,21,31xm110,-122v24,38,-36,66,-71,76v13,25,47,30,68,8v0,-1,5,-5,14,-11v15,-1,7,23,2,27v-31,43,-110,12,-116,-29v-12,-15,6,-53,9,-62v3,-10,34,-51,62,-43v21,6,23,19,32,34xm70,-137v-14,4,-39,44,-35,65v26,-2,53,-23,52,-38v-6,-18,-11,-27,-17,-27","w":130},"\u00e9":{"d":"84,-247v3,-16,31,-16,30,2v-13,27,-29,40,-39,73v-10,13,-28,13,-32,-6v8,-20,28,-53,41,-69xm0,-71v-9,-64,73,-125,110,-63v3,0,4,12,7,16v-11,35,-45,51,-85,54v1,16,15,41,42,39v24,-2,37,-30,61,-35v13,37,-40,65,-78,57v-28,-6,-61,-40,-57,-68xm72,-139v-22,1,-43,30,-38,50v27,2,70,-36,38,-50","w":139},"\u00ea":{"d":"96,-185v-9,19,-32,13,-33,-12v0,8,-14,37,-31,19v-13,-8,1,-20,4,-32v8,-4,6,-41,25,-42v15,-12,28,22,31,36v-1,10,5,23,4,31xm51,-204v0,0,-2,0,-2,1v1,1,2,2,2,-1xm134,-43v-13,61,-122,52,-129,-14v-6,-52,-1,-72,31,-102v57,-26,100,38,71,73v-12,15,-45,36,-71,34v-1,5,8,10,9,19v35,19,46,9,70,-19v9,-4,24,-3,17,9r2,0xm81,-128v-11,-35,-42,-7,-46,14v-3,13,-10,33,1,38v18,-2,66,-27,45,-52xm109,-35v-2,0,-4,3,-1,2","w":137},"\u00eb":{"d":"33,-200v2,-11,24,-18,27,-6v3,-2,7,3,8,7v0,12,-4,9,-10,15r0,-3v-8,8,-13,-2,-22,-4v0,-4,-3,-5,-3,-9xm73,-192v-1,-14,27,-23,34,-7v7,17,-9,21,-20,18v-9,-6,-14,-9,-14,-11xm89,-207r0,1r0,-1xm10,-123v12,-18,67,-50,89,-22v37,29,-14,97,-66,89v-1,-1,-2,-1,-3,0v2,14,23,38,42,32v32,6,37,-33,62,-40v16,9,-3,36,-11,40v-20,37,-96,26,-109,-4v-24,-19,-18,-84,-4,-95xm37,-79v28,-2,59,-30,38,-56v-25,-2,-45,21,-47,46v3,3,6,9,9,10xm66,-2v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":138},"\u00ec":{"d":"17,-194v-22,-22,11,-57,22,-26v9,24,20,43,26,68v0,8,-13,11,-21,7v-13,-19,-19,-31,-27,-49xm34,-142v8,15,18,114,24,131v-4,16,-29,16,-32,-4r-16,-119v7,-12,13,-10,24,-8","w":87},"\u00ed":{"d":"49,-260v11,-10,26,3,18,15v-15,15,-16,54,-40,54v-21,0,-10,-22,-5,-33v13,-24,22,-36,27,-36xm47,-153v9,41,12,108,27,138v-2,12,-17,19,-26,11r-1,2v-5,0,-7,-18,-13,-54r-15,-97v1,-14,28,-12,28,0","w":90},"\u00ee":{"d":"5,-230v3,-14,35,0,33,6v-6,21,-30,16,-36,2v2,-3,-2,-11,3,-8xm81,-226v1,22,-26,21,-32,2v4,-17,28,-12,32,-2xm82,-13v0,16,-27,18,-32,2v-15,-53,-14,-118,-28,-161v9,-14,28,-11,32,1v18,56,9,114,28,158","w":90},"\u00ef":{"d":"95,-188v-20,10,-27,-18,-39,-35v-14,21,-26,51,-42,67v-10,2,-24,-1,-23,-15r49,-78v28,-37,51,25,64,48v0,6,-3,10,-9,13xm55,-18v7,-46,-25,-112,-9,-146v19,-1,26,4,28,37v3,0,11,29,11,88v0,14,12,38,-12,38v-2,-1,-22,-8,-18,-17","w":90},"\u00f0":{"d":"88,-152v-15,-18,-26,-23,-38,-2v-5,3,-27,7,-25,-8v-3,-3,25,-22,4,-26v-7,-22,22,-21,36,-15v20,-14,29,-25,40,-15v0,13,-12,21,-21,30v52,27,93,85,71,149v-21,64,-161,55,-154,-33v4,-42,51,-78,87,-80xm88,-24v56,4,47,-84,17,-111v-34,1,-75,26,-78,62v-3,39,29,58,61,49","w":160},"\u00f1":{"d":"43,-38v5,16,4,36,-11,36v-2,-2,-23,-7,-15,-18v-10,-41,-19,-79,-18,-118v5,-9,11,-10,23,-7v9,16,13,5,34,-2v-33,-4,-47,-19,-55,-45v-1,-16,11,-12,21,-15v8,3,17,43,33,34v21,-24,4,-47,45,-45v19,13,18,26,22,51v-4,20,-29,6,-30,-6r-1,-3v1,3,-19,31,-30,27v-3,1,-7,4,-4,4v19,-4,29,-1,40,7v27,30,31,57,44,101v-2,14,-11,16,-18,15v-19,1,-23,-55,-25,-57v-9,-14,-11,-40,-28,-43v1,-3,-3,-2,-6,-2v-49,0,-28,66,-21,86","w":140},"\u00f2":{"d":"63,-251v-1,-11,14,-11,23,-13v14,20,40,28,44,55v-6,14,-31,7,-32,-7v-12,-8,-36,-30,-35,-35xm139,-34v-40,71,-183,17,-135,-67v25,-44,59,-50,103,-46v27,19,56,70,32,113xm98,-125v-7,-12,-18,4,-30,-1v-37,7,-69,82,-18,100v24,9,27,5,51,-6v30,-31,17,-58,-3,-93xm120,-76v-1,0,-1,1,-1,2v1,0,1,-1,1,-2","w":147},"\u00f3":{"d":"63,-200v-13,-23,32,-67,57,-58v13,18,-15,23,-26,42v-9,15,-16,22,-31,16xm132,-15v-49,35,-134,11,-133,-60v1,-62,35,-84,93,-84v9,0,26,5,23,18v32,26,65,91,17,126xm90,-137v-67,-11,-89,101,-24,113v79,15,68,-77,24,-111r0,-2","w":157},"\u00f4":{"d":"82,-259v16,15,24,42,33,62v-7,18,-32,15,-37,-12v-2,0,-3,-2,-3,-4v-13,10,-12,41,-29,48v-44,-17,15,-63,14,-88v11,-6,11,-6,22,-6xm120,-8v-86,54,-174,-77,-89,-124v12,-3,42,-20,60,-13v64,-28,85,64,52,113v-5,8,-12,16,-23,24xm34,-43v25,42,107,18,95,-55v3,-12,-18,-47,-32,-36v4,3,1,8,-4,12v-39,-12,-89,27,-63,67v-2,4,3,8,4,12","w":157},"\u00f5":{"d":"34,-186v-14,-17,13,-35,31,-34v24,1,26,40,36,13v-6,-12,9,-17,17,-15v23,21,6,52,-20,52v-11,-4,-28,-5,-35,-21v-8,0,-6,10,-15,9v-9,-1,-14,-3,-14,-4xm19,-26v-47,-57,15,-140,84,-137v16,6,16,14,10,25v28,11,37,39,43,79v-4,60,-103,74,-137,33xm97,-139v-53,-3,-106,100,-26,113v31,-3,55,-9,55,-34v0,-23,-13,-58,-36,-68v4,-3,2,-9,7,-11","w":151},"\u00f6":{"d":"11,-202v6,-11,29,-18,34,5v-6,22,-31,13,-34,-5xm111,-187v-14,-12,2,-22,17,-21v9,1,12,25,0,27v-7,-1,-15,0,-17,-6xm115,-7v-49,22,-126,-5,-113,-67v8,-41,31,-52,64,-68v13,-5,40,1,41,-5v11,-12,29,-9,42,8v13,31,18,52,19,85v1,24,-31,46,-53,47xm43,-31v39,31,120,-14,92,-68v-1,-19,-18,0,-28,-11v-7,-14,-16,-13,-30,-10v-33,8,-69,61,-34,89","w":177},"\u00f7":{"d":"82,-164v23,-2,22,33,9,34v-15,2,-28,-14,-27,-22v0,-2,6,-6,18,-12xm170,-72v-42,-10,-116,12,-169,2v-9,-2,-12,-17,-4,-21r181,-11v0,1,-2,2,0,2v0,-1,0,-2,1,-2v13,4,9,27,0,28v-4,-1,-5,0,-9,2xm99,-30v12,8,1,29,-16,26v-4,-3,-12,0,-12,-7v-4,3,-4,-4,-7,-6v3,-16,12,-22,30,-19r-1,2v3,-2,10,3,6,4"},"\u00f8":{"d":"78,-154v47,9,28,-66,66,-70v14,9,10,13,1,31v-8,17,-15,34,-20,52v28,21,29,76,10,97v-4,11,-46,53,-76,50v-5,11,-10,15,-7,22v-9,14,-29,11,-28,-4v7,-14,12,-28,-3,-36v-18,-21,-19,-71,-7,-91v2,-10,47,-46,64,-51xm44,-18v11,-17,56,-101,51,-121v-22,-1,-74,35,-74,72v0,10,11,50,23,49xm115,-116v-10,36,-33,75,-45,100v36,-14,70,-58,45,-100","w":158},"\u00f9":{"d":"42,-172v-8,-26,-35,-38,-33,-64v0,-5,6,-7,18,-7v19,18,28,42,40,64v-6,10,-16,13,-25,7xm94,-20v-29,45,-99,13,-92,-47v-4,-22,-3,-49,-4,-73v13,-15,31,-13,27,19v5,40,-6,100,33,100v30,0,15,-32,23,-70r-9,-60v6,-14,27,-7,28,2v8,23,6,101,25,125v10,-9,23,6,14,14v-9,16,-42,5,-45,-10","w":140},"\u00fa":{"d":"49,-245v27,-17,28,16,21,29v-10,9,-46,27,-52,1v6,-12,32,-21,31,-30xm55,-1v-53,-6,-57,-47,-57,-119v0,-28,7,-59,31,-44v3,51,-15,167,45,133v5,-6,9,-11,12,-18r-17,-112v8,-16,29,-4,28,14v8,35,11,103,32,119v0,0,21,-9,23,1v-4,27,-46,20,-54,4v-10,9,-32,23,-43,22","w":143},"\u00fb":{"d":"48,-230v4,-7,13,-43,32,-32v14,8,12,45,26,60v-10,27,-34,6,-38,-10v0,18,-22,49,-35,20xm30,-160v-2,51,3,128,52,133v34,-21,13,-103,12,-135v9,-21,34,-11,29,12v9,56,-2,106,33,122v3,-1,28,-28,29,-3v1,6,-16,28,-35,26v-8,1,-22,-11,-34,-24v-2,19,-49,35,-64,18v-44,-30,-45,-84,-50,-151v8,-15,24,-10,28,2xm14,-79r0,2r0,-2","w":186},"\u00fc":{"d":"58,-190v-7,10,-31,6,-27,-12v4,-17,35,-13,33,5v-1,3,-4,5,-6,7xm78,-181v-13,-7,-8,-31,10,-28v18,7,13,22,0,28v-1,-1,-8,-1,-10,0xm110,-36v-8,32,-54,48,-75,21v-31,-39,-29,-76,-36,-135v0,-4,6,-14,16,-12v23,16,11,53,19,79v11,37,13,49,33,59v35,-10,13,-62,12,-86v-10,-21,-14,-60,18,-43v21,49,19,111,74,129v6,-6,20,-8,20,10v-21,36,-62,-3,-81,-22xm56,-14v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":186},"\u00fd":{"d":"45,-193v-3,-19,32,-65,61,-81v22,9,19,17,-1,30v-23,16,-27,76,-60,51xm26,-160v-9,49,48,102,69,50v-1,-24,-11,-78,18,-66v1,-1,0,-2,2,-2v23,33,3,86,6,120v-11,62,-32,79,-67,112v-13,12,-58,33,-72,5v-4,-9,-7,-8,-8,-14v1,0,3,2,3,0v-9,-12,1,-26,12,-15v9,13,20,25,28,22v36,-13,80,-67,78,-124v-52,28,-100,-32,-99,-94v9,-13,32,-9,30,6","w":126},"\u00fe":{"d":"88,-120v46,44,-1,111,-58,106v4,14,7,36,-17,29v-23,-27,1,-86,-12,-125v-8,-23,0,-62,-2,-94v2,-18,23,-11,26,0v-2,26,-5,45,1,64v33,0,39,7,62,20xm77,-65v13,-29,-22,-47,-38,-49v-7,19,-17,69,12,69v13,10,22,-10,26,-20xm44,-36v0,-1,-2,-2,-2,0r2,0","w":107},"\u00ff":{"d":"37,-218v12,7,4,27,-12,24v-14,-6,-16,-21,-4,-24v3,-10,15,2,16,0xm56,-203v-1,-15,11,-17,22,-14v18,8,-2,32,-9,27v-8,-2,-13,-6,-13,-13xm92,-174v1,2,19,9,12,16v12,56,34,158,-7,202v-15,16,-44,42,-75,26v-15,-15,-24,-29,-18,-46v23,0,25,38,46,29v31,-14,55,-67,42,-107v-64,61,-102,-18,-93,-88v6,-11,25,-15,30,0r-2,-1v0,36,-5,73,20,87v43,-11,45,-46,28,-102v0,-10,6,-16,17,-16","w":126},"\u2013":{"d":"59,-98v37,7,100,-29,109,12v-2,13,-25,12,-30,10v0,1,2,2,0,2v-49,-4,-77,6,-112,9v-17,-5,-9,-21,-2,-28v8,-1,32,-2,35,-5","w":194},"\u2014":{"d":"-1,-81v25,-41,130,-17,183,-20r167,-10v17,5,26,21,11,31r-178,7r-160,2v-11,0,-19,-3,-23,-10","w":360},"\u2018":{"d":"58,-184v-42,3,-38,-72,-3,-81v27,-7,24,15,8,24v-12,-5,-13,12,-13,24v0,16,16,18,31,14v4,12,-6,18,-23,19xm44,-249v-1,0,-1,0,-1,1v1,0,1,0,1,-1","w":97},"\u2019":{"d":"43,-227v8,-19,-47,-29,-28,-43v25,-11,61,13,58,47v-7,18,-28,43,-52,31v-1,0,-1,-2,-1,-4v15,-15,23,-25,23,-31","w":97},"\u201c":{"d":"117,-282v13,-1,17,7,15,15v-10,10,-40,76,-6,88v-1,15,-16,9,-24,6v-28,-20,-10,-66,-4,-84v3,-9,9,-17,19,-25xm54,-173v-52,0,-10,-102,18,-107v25,1,6,20,0,28v-10,14,-18,33,-19,52v-1,16,25,1,24,16v-5,8,-13,11,-23,11","w":159},"\u201d":{"d":"40,-265v46,5,44,91,17,107v-27,2,-7,-25,-7,-45v0,-25,-11,-37,-18,-53v1,-3,4,-6,8,-9xm100,-155v14,-44,8,-67,-7,-100v5,-17,17,-11,28,-2v16,28,26,104,-14,107v-5,0,-7,-1,-7,-5","w":159},"\u2026":{"d":"118,-37v20,5,13,36,-8,36v-19,-1,-22,-32,-6,-36v6,1,12,0,14,0xm154,0v-17,-10,-4,-47,14,-33v16,-2,20,24,6,28v-2,11,-14,2,-20,5xm43,-11v-1,-22,22,-28,36,-13v-1,6,-2,9,-1,16v-8,5,-12,12,-23,10v1,0,1,0,1,-1v-7,2,-9,-8,-13,-12xm70,-28r2,0r-2,0xm58,0v-1,0,-1,1,-1,2v1,0,1,-1,1,-2","w":215},"\u2122":{"d":"130,-214v-14,-37,4,-55,28,-37v-1,4,12,18,29,20v10,-4,21,-8,16,-19v10,-10,19,6,24,-10v34,-16,34,30,31,64v-2,28,4,76,-29,60v-13,-17,8,-60,-2,-88v-22,11,-5,21,-29,29v-14,-1,-30,-16,-39,-17v-4,27,9,56,-6,71v-40,8,-24,-48,-23,-73xm-1,-236v15,-29,67,-12,103,-23v24,4,21,23,7,30r0,-2v-12,6,-22,-3,-34,1v10,34,-1,60,15,79v-4,2,-1,11,-9,12v-17,15,-33,-5,-30,-30v-5,-16,7,-65,-14,-56v-15,1,-39,4,-38,-11","w":263}}});

