

/* PicLens Lite: version 1.3.1 (14221)
 * Copyright (c) 2008 Cooliris, Inc.  All Rights Reserved.
 * 
 * The JavaScript part of PicLens Lite (i.e., this file) is BSD licensed (see: http://lite.piclens.com/bsdlicense)
 * This launcher includes and interacts with SWFObject (MIT), BrowserDetect (BSD Compatible), and Lytebox (CC Attribution 3.0).
 * 
 * There are two versions of this JS: 
 * http://lite.piclens.com/current/piclens.js				full commented file 		(~39KB)
 * http://lite.piclens.com/current/piclens_optimized.js		lighter deployment file		(~21KB)
 */
var PicLensLite = {
	// PUBLIC API

	// PicLens Lite can be deployed in one of two ways:
	// 1) include http://lite.piclens.com/current/piclens.js in the <head> of your webpage
	// 2) download the zip file and deploy it on your own website (unzip it anywhere, and point to the JS file in the <head> of your page)
	//    see: http://lite.piclens.com/releases/current.zip
	// 
	// For example: the directory layout looks like:
	//	 lite.piclens.com/current/ contains the SWF, JS, and image files
	//					 /lytebox/ contains slideshow support for browsers w/o Flash
	// 
	// Pointing to the JS directly will configure Lite relative to that URL.
	// Alternatively, you can customize the URLs with PicLensLite.setLiteURLs
	
	// 1) Call PicLensLite.start() to launch the default feed (specified in the head)
	// 2) Call PicLensLite.start({feedUrl:'http://myWebsite.com/myFeed.rss', ...}) to launch a specific feed
	//	Option 2 supports the following named arguments:
	//		feedUrl  : String  // is the URL to the specific Media RSS feed you want to launch
	//		feedData : String  // is the Media RSS feed itself (do not use feedUrl if you want to programmatically generate & pass in the feed text)
	//		guid	 : String  // starts from the item in the feed that is tagged w/ this unique id
	//		maxScale : Number  // normally, images fill the stage; 0 -> never scale up; any other positive number S --> scale up to S times the original size of the photo (but never bigger than the stage)
	//		loadFeedInFlash : Boolean // if true, we ask Flash to load the feed, instead of AJAX (expert option)
	//		loop	 : Boolean // if true, we turn looping on by default
	//		paused	 : Boolean // if true, we start the slideshow in paused mode
	// To enable smoothing for images. a crossdomain.xml file is required at the root of your image server.
	// Lite detects this crossdomain.xml and applies smoothing automatically.
	start : function (namedArgs) {
		this.determineBrowserParams();
		clearTimeout(this.REMOVE_TIMER_ID);
		clearTimeout(this.AUTO_CLOSE_TIMER_ID);
		this.ARGS = {}; // clear out previous args

		// handle named arguments
		if (typeof namedArgs !== "undefined" && namedArgs !== null) {
			this.ARGS = namedArgs;

			// if feedUrl is specified, it launches immediately
			if (namedArgs.feedUrl) {
				this.THE_FEED_URL = namedArgs.feedUrl;
				if (this.checkForPluginAndLaunchIfPossible(namedArgs.feedUrl, namedArgs.guid)) {
					return;
				}
				if (namedArgs.loadFeedInFlash) {
					// read up on flash crossdomain.xml if you choose this option
					// Flash can only load feeds from servers hosting a crossdomain.xml
					// pass the URL as a FlashVar, and load the contents via a GET request
					this.showFlashUI("");
				} else {
					// load the contents of the URL via AJAX, and launch the Flash UI afterward....
					this.loadViaXHR(namedArgs.feedUrl);
				}
			}
			// pass in the feed XML directly through Javascript
			// use feedUrl OR feedData, but not both!
			if (typeof namedArgs.feedData !== 'undefined') {
				this.showFlashUI(namedArgs.feedData);
			}
			
		} else {
			// find the feed from the header, since none was specified
			// build list of XML feeds
			var feeds = this.indexFeeds();
			if (feeds.length !== 0) { // view the first feed, if available
				var feed = feeds[0];
				this.THE_FEED_URL = feed.url;
				if (this.checkForPluginAndLaunchIfPossible(feed.url)) {
					return;
				}
				this.loadViaXHR(feed.url);
			}
		}
	},
	// check if the slideshow is currently running
	isRunning : function () {
		return this.LITE_IS_RUNNING;
	},
	// check if the browser plug-in is installed
	hasClient : function () {
		return this.hasCooliris();
	},
	// call this before starting lite. we currently support a single custom button
	// the icon is a 24x24 PNG
	// we will perform a GET request of a provided URL (w/ the item's GUID) when the user clicks
	// http://yourwebserver.com/buttonURL?itemGUID=guidVal
	addCustomButton : function (buttonRESTUrl, buttonLabel, buttonIcon) {
		this.CUSTOM_BUTTON = {targetURL: buttonRESTUrl, labelText: buttonLabel, iconImage: buttonIcon};
	},
	// OPTIONAL: provide callbacks to be notified in certain situations. Call this BEFORE PicLensLite.start(...)
	// 	onNoPlugins():Boolean
	//		is called when the user invokes Lite but does not have PicLens / Flash installed
	// 	onExit(itemUID):void
	//		is called when the user exits from Lite
	//		we provide the item's GUID if it exists, and the item's content URL otherwise
	//		itemUID is undefined if the user exited before Lite launched, or if the user did not have Flash
	setCallbacks : function (args) {
		if (args.onNoPlugins) {
			this.ON_NO_PLUGINS = args.onNoPlugins;
		}
		if (args.onExit) {
			this.ON_EXIT = args.onExit;
		}
	},
	// OPTIONAL: customize the location of resources. Call this BEFORE PicLensLite.start(...)
	// Normally, we locate the PicLensLite files relative to the JS file 
	// To use this function, pass in an object with the following named arguments:
	// args = {
	//		lite	: other paths can be determined from this (make sure it ends in a slash)
	//		swf		: the URL of the SWF file					1
	//		button	: image allowing users to download piclens	1
	//		lbox	: where to find lytebox						1
	//		lboxcss	: the CSS file								2
	//		lboxjs	: the JS file								2
	// }
	// 1: Can be determined from args.lite
	// 2: Can be determined from args.lbox or args.lite
	setLiteURLs : function (args) {
		if (!this.LITE_URL) {
			if (args.swf) {
				this.LITE_URL = args.swf;
			} else if (args.lite) {
				this.LITE_URL = args.lite + "PicLensLite.swf";
			} // if both lite & swf aren't set, it won't work
		}
		if (!this.BUTTON_URL) {
			if (args.button) {
				this.BUTTON_URL = args.button;
			} else if (args.lite) {
				this.BUTTON_URL = args.lite + "NoFlash.jpg";
			}
		}

		var lboxUrl = "";
		if (args.lbox) {
			lboxUrl = args.lbox;
		} else if (args.lite) {
			lboxUrl = args.lite + "../lytebox/";
		}
		
		if (!this.LBOX_CSS_URL) {
			if (args.lboxcss) {
				this.LBOX_CSS_URL = args.lboxcss;
			} else if (lboxUrl != "") {
				this.LBOX_CSS_URL = lboxUrl + "lytebox.css";
			}
		}

		if (!this.LBOX_JS_URL) {
			if (args.lboxjs) {
				this.LBOX_JS_URL = args.lboxjs;
			} else if (lboxUrl != "") {
				this.LBOX_JS_URL = lboxUrl + "lytebox.js";
			}
		}
	},



	//////////////////////////////////////////////////////////////////////////////////////////////////////////
	// The PRIVATE API is below
	// DO NOT USE these functions/variables directly; they WILL change in future releases
	// Email us to request changes to the public API
	ARGS			: {},
	DEBUG_NOCLIENT	: false,	// if true, we will NEVER launch the PicLens Client (for testing Lite)
	DEBUG_NOFLASH	: false,	// if true, we will assume the user does not have Flash (for testing Lite)
	HPAD			: 60,		// horizontal padding
	VPAD			: 20,		// vertical padding
	LITE_BG_DIV		: null,		// the grey/black background overlay
	LITE_FG_DIV		: null,		// the foreground div that contains the flash component
	LITE_URL		: null,		// the location of PicLensLite.SWF
	BUTTON_URL		: null,		// image to display if the user doesn't have flash
	LBOX_CSS_URL	: null,		// where to find lytebox css/js files
	LBOX_JS_URL		: null,
	LBOX_COUNT		: 0,		// try to start lytebox, but if it doesn't exist after a few tries, give up...
	SHOW_LBOX		: false,	// if true, skip flash altogether
	OS_WIN			: false,	// OS Detect
	OS_MAC			: false,	// sadly, sometimes we have to do something different depending on our Browser/OS/Configuration
	BROWSER_FFX		: false,	// Browser Detect
	BROWSER_SAF		: false,
	BROWSER_IE		: false,
	BROWSER_IE6		: false,
	OLD_B_MARGIN	: null,
	OLD_B_OVERFLOW	: null,
	OLD_B_HEIGHT	: null,
	OLD_H_OVERFLOW	: null,
	OLD_H_HEIGHT	: null,
	THE_FEED		: "",			// the feed text
	THE_FEED_URL	: "",			// the feed url
	LITE_IS_RUNNING		: false,	// use isRunning()
	piclensIsRunning_	: false,	// maintain compatibility with the Wordpress Plugin for a few iterations...
	FLASH_ID_1		: "pllflash1",	// outer
	FLASH_ID_2		: "pllflash2",	// inner
	FLASH_VER		: null,			// the version of Flash we're running 
	FLASH_URL		: "http://www.adobe.com/go/getflashplayer",
	PL_URL			: "http://download.piclens.com/partner/",   // downloads PL immediately
	PLC				: null,			// PicLens Client
	LEARN_PL_URL	: "http://affiliate.piclens.com/partner/",  // landing page to read about / download PL
	FONT			: "font-family: Lucida Grande, Myriad Pro, Verdana, Helvetica, Arial, sans-serif;",
	KEY_HANDLERS	: "",	// save the old key handlers, if any
	ON_NO_PLUGINS	: null, // callback
	ON_EXIT			: null, // callback
	AUTO_CLOSE_TIMER_ID		: 0,	// 
	REMOVE_TIMER_ID			: 0,	// the timer for removing the children...
	RESIZE_TIMER_IE6		: null,	// every second, autoresizes the UI
	RESIZE_HANDLER_EXISTS	: false,// add a handler to detect user resize events in safari
	CUSTOM_BUTTON			: null,	// add an action to the UI

	addKeyHandlers : function() {
		var self = this;
		if (typeof document.onkeydown !== 'undefined') { // save & later restore key handlers...
			this.KEY_HANDLERS = document.onkeydown;
		}
		document.onkeydown = function(e) {
			var keycode;
			if (typeof e === "undefined" || e === null) { // ie
				keycode = window.event.keyCode;
			} else { // mozilla
				keycode = e.which;
			}
			var val=self.handleKeyPress(keycode);
			if (typeof e != "undefined" && e != null) {
				e.returnValue = val;
			}
			return val;
		};
	},
	addMouseHandlers : function() {
		if (window.addEventListener) {		// Firefox/Opera
			window.addEventListener("DOMMouseScroll", this.handleMouseWheel, false);
		} else if (document.attachEvent) {	// IE
			document.attachEvent("onmousewheel", this.handleMouseWheel);
		}
		// must be outside of the if-else
        window.onmousewheel = document.onmousewheel = this.handleMouseWheel; // Safari & Others
	},
	// call this at the last possible moment (especially for Win/Firefox)
	appendElementsToDocument : function() { 
		if (this.BROWSER_FFX && this.OS_MAC) {	// avoid redraw bug by not showing the background
			this.LITE_BG_DIV.style.display = "none";
		}
		document.body.appendChild(this.LITE_BG_DIV);
		document.body.appendChild(this.LITE_FG_DIV);
	},
	autoResize : function() { // for the IE6 auto resize
		if (!this.isRunning()) {
			// unregister the timer
			clearInterval(this.RESIZE_TIMER_IE6);
			return;
		}
		
		// resize the BG and FG divs
		var size = this.getPageSize();
		var bg = this.LITE_BG_DIV;
		if (bg) {
			bg.style.height = size.h + 'px';
			bg.style.width  = size.w + 'px';
		}
		if (this.LITE_FG_DIV) {
			var fgs = this.LITE_FG_DIV.style;
			this.resizeToPaddedBox(fgs);
			this.resizeToFitPaddedBox(fgs, size);
			this.resizeFlashToFitPaddedBox();
		}
	},
	checkForPluginAndLaunchIfPossible : function (url, guid) {
		// if we have the correct version of piclens, pass it onto the client and do not use LITE
		if (this.hasCooliris()) {
			if (typeof(guid) != "undefined") {
				this.PLC.launch(url,'uid',guid);
			} else {
				this.PLC.launch(url,'','');
			}

			return true; // launched!
		}
		return false;
	},
	createBackgroundOverlay : function () {
		// create a background that covers the page
		var bg = document.createElement('div');
		this.LITE_BG_DIV = bg;
		bg.id = "lite_bg_div";
		
		var bgs = bg.style;
		bgs.position = 'fixed';

		// stick to the sides when the window resizes
		bgs.width = bgs.height = "100%";

		if (this.BROWSER_IE6) {
			var b = document.body;
			var bs = b.currentStyle;
			var de = document.documentElement;
			var ds = de.currentStyle;
			
			// save previous document styles
			this.OLD_B_MARGIN = bs.margin;
			this.OLD_B_OVERFLOW = bs.overflow;
			this.OLD_B_HEIGHT = bs.height;
			this.OLD_H_OVERFLOW = ds.overflow;
			this.OLD_H_HEIGHT = ds.height;
			this.OLD_SCROLL_Y = de.scrollTop;
			
			// simulate position:fixed...
			b.style.margin = "0";
			b.style.overflow = "auto";
			b.style.height = "100%";
			de.style.overflow = "auto";
			de.style.height = "100%";

			bgs.position = 'absolute';
			var page = this.getPageSize();
			bgs.height = page.h + 'px';
			bgs.width  = page.w + 'px';
		}
		
		bgs.left = bgs.right = bgs.top = bgs.bottom = '0';
		bgs.backgroundColor = '#000';
		bgs.zIndex = 1000;
		bgs.opacity = '0.5';
		bgs.filter = 'alpha(opacity=50)';		// IE7

		var self = this;
		bg.onclick = function () {
			self.exitPicLensLite();
		};
	},
	createForegroundFlashComponent : function () { // configure the box
		var fg = document.createElement('div');
		this.LITE_FG_DIV = fg;
		fg.id = "lite_fg_div";

		var fgs = fg.style;
		fgs.backgroundColor = '#000';
		fgs.position = 'fixed';
		fgs.border = '2px solid #555';
		fgs.zIndex = 1001;	   // above the bg

		this.resizeToPaddedBox(fgs);

		if (this.BROWSER_IE6) {
			fgs.position = 'absolute';
			this.resizeToFitPaddedBox(fgs);
		}
	},
	// this just removes the HTML elements
	// we call this from Flash (thus, we need to allow the function to return before removing the children)
	closeFlashUI : function (itemID) {
		var doc = document;
		
		// remove the keyboard & mouse handlers...
		doc.onkeydown = this.KEY_HANDLERS;
		window.onmousewheel = doc.onmousewheel = "";
		if (window.removeEventListener) {
			window.removeEventListener("DOMMouseScroll", this.handleMouseWheel, false);
		}
		if (doc.detachEvent) { // IE/Opera
			doc.detachEvent("onmousewheel", this.handleMouseWheel);
		}

		// hide the div now; remove them later
		this.LITE_BG_DIV.style.display = this.LITE_FG_DIV.style.display = 'none';
		this.REMOVE_TIMER_ID = setTimeout(function (){PicLensLite.removeChildren();}, 150); // 0.15s

		if (this.BROWSER_IE6) { // restore styles
			var b = document.body;
			var de = document.documentElement;
			b.style.margin = this.OLD_B_MARGIN;
			b.style.overflow = this.OLD_B_OVERFLOW;
			b.style.height = this.OLD_B_HEIGHT;
			de.style.overflow = this.OLD_H_OVERFLOW;
			de.style.height = this.OLD_H_HEIGHT;
			window.scrollTo(0, this.OLD_SCROLL_Y);
		}

		if (this.ON_EXIT !== null) {
			this.ON_EXIT(itemID); // call on exit
		}
		this.setRunningFlag(false);
	},
	// for handling cross-browser quirks...
	determineBrowserParams : function () {
		// BrowserDetect {.OS, .browser, .version} e.g., "Mac Firefox 2" and "Windows Explorer 7"
		var os = BrowserDetect.OS;
		var b = BrowserDetect.browser;
		this.OS_MAC = (os == "Mac");
		this.OS_WIN = (os == "Windows");
		this.BROWSER_FFX = (b == "Firefox");
		this.BROWSER_SAF = (b == "Safari");
		this.BROWSER_IE = (b == "Explorer");
		this.BROWSER_IE6 = (this.BROWSER_IE && BrowserDetect.version == "6");
		this.FLASH_VER = swfobjlite.getFlashPlayerVersion(); // what version of Flash is the browser running?
	},
	// we should tell Flash we are exiting when this is called...
	// this should only be called when the user clicks outside of the flash component
	// all other exits are handled through Flash
	exitPicLensLite : function () {
		var fl = this.getFlash();
		if (fl !== null && fl.fl_exitPicLensLite) {	// binding exists
			// tell flash that we are quitting
			fl.fl_exitPicLensLite();
			// close after .5 seconds, if nothing happened
			// TODO: make sure this doesn't crash any browsers
			// TODO: Check the Return Value to Fire this Timer?
			this.AUTO_CLOSE_TIMER_ID = setTimeout(function (){ if (PicLensLite.isRunning()) { PicLensLite.closeFlashUI();}}, 500); // 0.5s
		} else {
			// if it's not running already, we just remove the DIVs (flash isn't defined)
			this.closeFlashUI();
		}
	},
	// a website should include the absolute URL of the piclens.js in its header
	// This function looks for the script tag and extracts the ROOT_URL
	// <script type="text/javascript" src="ROOT_URL/piclens.js"></script>
	// we assume the SWF and JPEG/PNG/GIF files are relative to this ROOT_URL...
	findScriptLocation : function () {
		var scriptTags = document.getElementsByTagName("script");
		for (var i = 0; i != scriptTags.length; ++i) {
			var script = scriptTags[i];
			var type = script.getAttribute("type");
			if (type == "text/javascript") {
				var src = script.getAttribute("src");
				if (src === null) {
					continue;
				}
				var index = src.indexOf("piclens.js"); 
				if (index != -1) {
					this.setLiteURLs({lite:src.substring(0,index)});
					return;
				} else {
					index = src.indexOf("piclens_optimized.js");
					if (index != -1) {
						this.setLiteURLs({lite:src.substring(0,index)});
						return;
					}
				}
			}
		}
	},
	// returns an object describing the page size of the browser window
	getPageSize : function () {
		var xScroll, yScroll, winW, winH;
		var doc = document;
		var body = doc.body;
		var html;
		if (window.innerHeight && window.scrollMaxY) {
			xScroll = doc.scrollWidth;
			yScroll = (this.isFrame ? parent.innerHeight : self.innerHeight) + (this.isFrame ? parent.scrollMaxY : self.scrollMaxY);
		} else if (body.scrollHeight > body.offsetHeight){
			xScroll = body.scrollWidth;
			yScroll = body.scrollHeight;
		} else {
			html = doc.getElementsByTagName("html").item(0);
			xScroll = html.offsetWidth;
			yScroll = html.offsetHeight;
			xScroll = (xScroll < body.offsetWidth) ? body.offsetWidth : xScroll;
			yScroll = (yScroll < body.offsetHeight) ? body.offsetHeight : yScroll;
		}
		var docElement = doc.documentElement;
		if (self.innerHeight) {
			winW = (this.isFrame) ? parent.innerWidth : self.innerWidth;
			winH = (this.isFrame) ? parent.innerHeight : self.innerHeight;
		} else if (docElement && docElement.clientHeight) {
			winW = docElement.clientWidth;
			winH = docElement.clientHeight;
		} else if (body) {
			html = doc.getElementsByTagName("html").item(0);
			winW = html.clientWidth;
			winH = html.clientHeight;
			winW = (winW == 0) ? body.clientWidth : winW;
			winH = (winH == 0) ? body.clientHeight : winH;
		}
		var pageHeight = (yScroll < winH) ? winH : yScroll;
		var pageWidth = (xScroll < winW) ? winW : xScroll;
		return {pw:pageWidth, ph:pageHeight, w:winW, h:winH}; // pw and ph are the larger pair. use w and h.
	},
	getElementsFromXMLFeed : function () {
		var xmlDoc;
		if (window.ActiveXObject) { // IE
		  	xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		  	xmlDoc.async=false;
		  	xmlDoc.loadXML(PicLensLite.THE_FEED);
		} else { // Mozilla, Firefox, Opera, etc.
			var parser = new DOMParser();
			xmlDoc = parser.parseFromString(PicLensLite.THE_FEED, "text/xml");
		}
		var elements = xmlDoc.getElementsByTagName('*');
		return elements;
	},
	getBasicSlideShowHTML : function () {
		if (!this.LBOX_JS_URL || !this.LBOX_CSS_URL) {
			return "";
		}
		
		// make sure the lytebox JS is included
		var head = document.getElementsByTagName('head').item(0);

		// add the script tag
		var script  = document.createElement('script');
		script.src  = this.LBOX_JS_URL;
		script.type = 'text/javascript';
		head.appendChild(script);
		
		// add the lytebox CSS too
		var link = document.createElement('link');
		link.rel = "stylesheet";
		link.href = this.LBOX_CSS_URL;
		link.type = "text/css";
		link.media = "screen";
		head.appendChild(link);

		// find all image URLs from the feed.
		var xmlElements = this.getElementsFromXMLFeed();

		var i;
		var hiddenURLs = "";
		for (i = 0; i < xmlElements.length; i++) {
			if (xmlElements[i].nodeName == "media:content") {	// what about the namespace?
				var url = xmlElements[i].getAttribute("url");
				if (url.indexOf(".flv") == -1) {				// images only... avoid FLV files
					hiddenURLs += '<a id="lboxImage" href="' + url + '" rel="lytebox[lite]"></a> ';
				}
			}
		}
		// rel="lytebox[lite]"
		var basicSlideShow = "<div id='lightbox_images' align='center' style='display: none; padding-top:10px; color:#FFFFFF; font-size:.8em; " +this.FONT+ " color:#999999;'>";
		basicSlideShow +=  '( Alternatively, <a onclick="javascript:PicLensLite.invokeLytebox();return false;" href="#" style="color:#656588">click here for a basic slideshow</a>. )';
		basicSlideShow += hiddenURLs;
		basicSlideShow += "</div><br/>";

		return basicSlideShow;
	},
	generateAlternativeContent : function () {
		var altContentHTML = '<div id="altContent" style="text-align:center; margin: 0 0 0 0; padding: 0 0 0 0; background-color: #000; min-width:860px;">';
		altContentHTML += '<div align="center" style="width: 100%; padding-top:60px; '+this.FONT+'">';

		var v = this.FLASH_VER;
		var flashMessage;
		if (v.major > 0) { // has some version of Flash
			flashMessage = "update your Flash Player from version "+ v.major + '.' + v.minor + '.' + v.release + " to version 9.0.28 or newer";
		} else {
			flashMessage = "install the most recent Flash Player";
		}
		
		var basicSlideShow = "";
		if (this.THE_FEED !== "") {   // do this if we've loaded the feed in AJAX
			basicSlideShow = this.getBasicSlideShowHTML();
		}
		
		var downloadPL = this.PL_URL;
		var learnPL = this.LEARN_PL_URL;
		var pid = this.ARGS.pid;
		if (pid) {
			downloadPL += pid + "/";
			learnPL += pid + "/";
		} else {
			var x = "000000000001/";
			downloadPL += x;
			learnPL += x;
		}
		
		if (this.SHOW_LBOX) {
			// don't show the image, because we will invoke lytebox immediately
		} else {
			var sp = "<span style='padding-left:25px; color:#C6C6C6; font-size:";
			altContentHTML += 
				"<div style='padding:10px;'>" + 
					sp+"1.5em; font-weight: bold; " +this.FONT+ "'>You're clicks away from going full screen!</span><br/>" + 
					sp+".9em; padding-bottom: 15px; " +this.FONT+ "'>You must get the <a href='"+downloadPL+"' style='color:#656588'>Cooliris</a> browser plugin, or "+flashMessage+".</span>" +
				"</div>";
			if (!this.BUTTON_URL) {
				altContentHTML +=
				'<a href="' + downloadPL + '" style="color:#ACD">Get Cooliris Now!</a>';
			} else {
				var area = '<area shape="rect" coords=';
				altContentHTML +=
				'<img src="'+this.BUTTON_URL+'" alt="" border="0" usemap="#Map">' + 
				'<map name="Map" id="Map">' + 
					area+'"0,0,33,33" href="#" onclick="javascript:PicLensLite.closeFlashUI();" />' +
					area+'"35,35,325,325" href="' + downloadPL +'" />' +
					area+'"593,209,825,301" href="' + this.FLASH_URL +'" />' +
					area+'"327,148,448,178" href="' + learnPL +'" />' +
				'</map>';
			}
		}

		altContentHTML += '</div>';
		altContentHTML += basicSlideShow;
		altContentHTML += '<div align="center" style="color:#666666; font-size:11px; '+this.FONT+'">&copy; 2008 Cooliris, Inc. All trademarks are property of their respective holders.<br/><br/><br/></div>';
		altContentHTML += '</div>';
		return altContentHTML;		
	},
	generateFlashVars : function () {
		var fv = '';
		var args = this.ARGS;
		if (typeof args.guid !== 'undefined') {
			fv += "&startItemGUID=" + args.guid;
		}
		if (args.loadFeedInFlash) {
			fv += "&feedURL=" + encodeURIComponent(this.THE_FEED_URL);	// may need crossdomain.xml to allow loading of feed
		}
		if (args.paused) {
			fv += "&paused=" + args.paused;
		}
		if (args.loop) {
			fv += "&loop=" + args.loop;
		}
		if (args.delay) { // seconds: from 1-10
			fv += "&delay=" + args.delay;
		}
		if (args.pid) {
			fv += "&pid=" + args.pid;
		}
		if (typeof args.maxScale != 'undefined') {	// allow 0
			fv += "&maxScale=" + args.maxScale;
		}
		if (typeof args.overlayToolbars != 'undefined') {
			fv += "&overlayToolbars=" + args.overlayToolbars;
		}
		var cb = this.CUSTOM_BUTTON;
		if (cb != null) {
			fv += "&cButtonURL=" + encodeURIComponent(cb.targetURL);
			if (cb.labelText != null) {
				fv += "&cButtonLabel=" + encodeURIComponent(cb.labelText);
			}
			if (cb.iconImage != null) {
				fv += "&cButtonIcon=" + encodeURIComponent(cb.iconImage);
			}
		}
		fv += "&swfURL="+encodeURIComponent(this.LITE_URL);
		fv = fv.substring(1); // kill the first &
		return fv;
	},
	// does the right thing for each browser
	// returns the Flash object, so we can communicate with it over the ExternalInterface
	getFlash : function () {
		// we should determine which one to pass back depending on Browser/OS configuration
		if (this.BROWSER_SAF || this.BROWSER_IE) {
			return document.getElementById(this.FLASH_ID_1); // outer <object>
		} else {
			return document.getElementById(this.FLASH_ID_2); // inner <object>
		}
	},
	getWindowSize : function () { // inner size
		var docElement = document.documentElement;
		var docBody = document.body;
		var w = 0, h = 0;
		if (typeof(window.innerWidth) == 'number') {
			// not IE
			w = window.innerWidth;
			h = window.innerHeight;
		} else if (docElement && (docElement.clientWidth || docElement.clientHeight)) {
			// IE 6+ in 'standards compliant mode'
			w = docElement.clientWidth;
			h = docElement.clientHeight;
		} else if (docBody && (docBody.clientWidth || docBody.clientHeight)) {
			// IE 4 compatible
			w = docBody.clientWidth;
			h = docBody.clientHeight;
		}
		return {w:w, h:h};
	},
	handleKeyPress : function (code) {
		if (!this.isRunning()) { return true; }
		var fl = this.getFlash();
		if (fl != null && fl.fl_keyPressed) {
			fl.fl_keyPressed(code); // forward to Flash
		} else {
			if (code == 27) { // ESC to close
				this.closeFlashUI();
				return false;
			}
		}
		if (code == 9 || code == 13) { // trap tab, enter
			return false;
		}
		return true; // allow the browser to process the key
	},
	handleMouseWheel : function (e) {
		// e.wheelDelta
		// Safari/Windows (MouseWheel Up is +120; Down is -120)
		var delta = 0;
		if (!e) {
			e = window.event;
		}
		if (e.wheelDelta) { // IE/Opera
			delta = e.wheelDelta/120;
			if (window.opera) {
				delta = -delta;
			}
		} else if (e.detail) { // Firefox/Moz
			var d = e.detail;
			// on mac, don't divide by 3...
			if (Math.abs(d) < 3) {
				delta = -d;
			} else {
				delta = -d/3;
			}
		}
		if (delta) {
			// don't send abs values < 1; otherwise, you can only scroll next
			PicLensLite.sendMouseScrollToFlash(delta);		
		}
		if (e.preventDefault) {
			e.preventDefault();
		}
		e.returnValue = false;
		return false;
	},
	hasPicLensClient : function () { // DEPRECATED! Use hasClient()
		return this.hasCooliris();
	},
	// check if Cooliris Client is available
	hasCooliris : function () {
		// a flag to turn off the client
		if (this.DEBUG_NOCLIENT) {
			return false;
		}
		
		// check if the bridge has already been defined
		var clientExists = false;
		if (this.PLC) {
			clientExists = true;
		} else if (window.piclens && window.piclens.launch) {
			this.PLC = window.piclens;
			clientExists = true;
		} else { // if not, try to define it here...
			var context = null;
			if (typeof PicLensContext != 'undefined') { // Firefox
				context = new PicLensContext();
			} else {									
				try { 
					context = new ActiveXObject("PicLens.Context"); // IE
				} catch (e) {
					if (navigator.mimeTypes['application/x-cooliris']) { // Safari
						context = document.createElement('object');
						context.style.height="0px";
						context.style.width="0px";
						context.type = 'application/x-cooliris';
						document.documentElement.appendChild(context);
					} else {
						context = null;
					}
				}
			}
			
			this.PLC = context;
			if (this.PLC) {
				clientExists = true;
			}
		}
		
		if (clientExists) { // check the version number
			if (this.BROWSER_SAF) { // for Safari, we just return true (the first v. was 1.8)
				return true;
			}
				
			var version;
			try { version = this.PLC.version; } catch (e) { return false; }
						
			var parts = version.split('.'); // minimum ver. is: 1.6.0.824
			if (parts[0] > 1) {			    // a ver. 2.X product
				return true;
			} else if (parts[0] == 1) {	    // a 1.X product
				if (parts[1] > 6) {		    // a 1.7.X product
					return true;
				} else if (parts[1] == 6) { // a 1.6 product
					if (parts[2] > 0) {	    // a 1.6.1.X product
						return true;
					} else if (parts[2] == 0) {
						if (parts[3] >= 824) { // 1.6.0.824 or newer...
							return true;
						}
					}
				}
			}
			return false; // a 0.X product
		} else {
			return false;
		}
	},
	invokeLytebox : function () {
		this.SHOW_LBOX = true; // user has specified that she wants to use the basic slideshow
		myLytebox.start(document.getElementById("lboxImage"), false, false);
		this.closeFlashUI();
	},
	showLyteboxLink : function () {
		myLytebox.updateLyteboxItems();
		myLytebox.doAnimations = false;
		var lboxImages = document.getElementById('lightbox_images');
		if (lboxImages != null) {
			lboxImages.style.display = "block";
			if (this.SHOW_LBOX && this.getFlash()==null) { // the user has clicked on lbox once, so we assume it going forward
				this.invokeLytebox();
			}
		}
	},
	startLytebox : function () { // allows us to include lytebox, unmodified
		if (typeof myLytebox != "undefined") {
			this.showLyteboxLink();
		} else {
			if (typeof initLytebox != "undefined") {
				initLytebox();
				this.showLyteboxLink();
			} else {
				if (this.LBOX_COUNT >= 4) {
					return; // give up after 600 ms
				}
				setTimeout(function (){PicLensLite.startLytebox();}, 150); // try again in 150 ms
				this.LBOX_COUNT++;
			}
		}
	},
	injectFlashPlayer : function () {
		var fg = this.LITE_FG_DIV;
		
		// determine the width and height of the flash component
		var flashWInner;
		var flashHInner;
		flashWInner = flashHInner = '100%';
		if (this.BROWSER_IE6) {
			flashWInner = flashHInner = '0';
		}
		
		var flashVars = this.generateFlashVars();
		var altContentHTML = this.generateAlternativeContent(); // non-flash content

		if (this.meetsReqs()) {
			var par = '<param name=';
			fg.innerHTML = 
				'<object id="'+ this.FLASH_ID_1 +'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%">' + // SAF & IE
					par+'"movie" value="' + this.LITE_URL + '" />' +
					par+'"quality" value="high"/> ' +
					par+'"bgcolor" value="#000000"/> ' +
					par+'"allowScriptAccess" value="always"/> ' +
					par+'"FlashVars" value="' + flashVars + '"/> ' +
					par+'"allowFullScreen" value="true"/> ' +
					par+'"wmode" value="window"/> ' +
					par+'"scale" value="noscale"/> ' +
						'<object type="application/x-shockwave-flash" data="' + this.LITE_URL + '" width="'+flashWInner+'" height="'+flashHInner+'" ' + // NOT IE
							'quality="high" ' +
							'bgcolor="#000000" id="'+ this.FLASH_ID_2 + '" ' + 
							'quality="high" ' +
							'FlashVars="' + flashVars + '" ' +
							'allowFullScreen="true" ' +
							'scale="noscale" ' + 
							'wmode="window" ' +
							'allowScriptAccess="always">' +
							altContentHTML + // IE
						'</object>'+ // NOT IE
				'</object>';
		} else {
			if (this.ON_NO_PLUGINS) {
				this.ON_NO_PLUGINS(); // callback instead of showing NoFlash.jpg
			} else {
				fg.innerHTML = altContentHTML;
				fg.style.minWidth = "860px";
				fg.style.minHeight = "550px";
			}
		}
		
		if (this.BROWSER_SAF) {
			this.resizeUI(); // fixes layout 
		}
	},
	// find the RSS feeds on this page, and return an array
	indexFeeds : function () {
		var linkTags = document.getElementsByTagName("link");
		var feeds = [];
		for (var i = 0; i != linkTags.length; ++i) {
			var link = linkTags[i], type = link.getAttribute("type");
			if (type == "application/rss+xml" || type == "text/xml") {
				feeds.push({ title: link.getAttribute("title"), url: link.getAttribute("href") });
			}
		}
		return feeds;
	},
	// once we get the response text, we launch flash
	loadViaXHR : function (url) {
		var self = this;
		var request = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");
		try {
			request.open("GET", url, true);
			request.onreadystatechange = function () {
				if (request.readyState == 4) {
					if ((request.status == 200 || request.status == 0)) { // 0 -> File System Testing
						if (request.responseText) {
							// at this point, we have the text
							self.showFlashUI(request.responseText);
						}
					} else {
						if (console) {console.log("PicLens Lite could not load the RSS Feed: " + url);}
					}
				}
			};
			request.send("");
		} catch (err) { // probably a crossdomain issue, so ask flash to try loading
			this.ARGS.loadFeedInFlash = true;
			this.showFlashUI("");
		}
	},
	meetsReqs : function () {
		if (this.DEBUG_NOFLASH) {
			return false;
		}
		// if IE7 and Flash detect returns v0, we show the Flash
		var ie7FlashDetectionWorkaround = (this.FLASH_VER.major == 0) && this.BROWSER_IE;
		var hasFlash = swfobjlite.hasFlashPlayerVersion("9.0.28");
		return hasFlash || ie7FlashDetectionWorkaround;
	},
	removeChildren : function () {
		this.REMOVE_TIMER_ID = 0;
		// remove the divs after a timeout
		if (this.LITE_BG_DIV !== null) {
			document.body.removeChild(this.LITE_BG_DIV);
			this.LITE_BG_DIV = null;
		}
		if (this.LITE_FG_DIV !== null) {
			document.body.removeChild(this.LITE_FG_DIV);
			this.LITE_FG_DIV = null;
		}
	},
	resizeFlashToFitPaddedBox : function () {
		var flash = this.getFlash();
		if (flash) {
			var size = this.getPageSize();
			var w = size.w - this.HPAD * 2;
			var h = size.h - this.VPAD * 2;
			flash.style.width = w; flash.style.height = h;
			flash.width = w; flash.height = h;
		}
	},
	resizeToFitPaddedBox : function (s, size) {
		if (typeof size == 'undefined') {
			size = this.getPageSize();
		}
		s.width = (size.w - this.HPAD * 2) + 'px';
		s.height = (size.h - this.VPAD * 2) + 'px';
	},
	resizeToPaddedBox : function (s) {
		s.left = s.right = this.HPAD + 'px';
		s.top = s.bottom = this.VPAD + 'px';
	},
	resizeUI : function () { // resize handler for Safari
		if (this.LITE_FG_DIV) {
			var fgs = this.LITE_FG_DIV.style;
			this.resizeToPaddedBox(fgs);
			this.resizeToFitPaddedBox(fgs);
			this.resizeFlashToFitPaddedBox();
		}
	},
	setRunningFlag : function (flag) {
		this.LITE_IS_RUNNING = flag;
		this.piclensIsRunning_ = flag;
	},
	setResizeHandler : function () { // for safari
		if (!this.RESIZE_HANDLER_EXISTS && this.BROWSER_SAF) {
			var self = this;
			window.addEventListener('resize', function () { self.resizeUI(); }, false);
			this.RESIZE_HANDLER_EXISTS = true;
		}
	},
	setResizeTimer : function () { // only do it for IE6...
		if (this.BROWSER_IE6) {
			this.RESIZE_TIMER_IE6 = setInterval(function () { PicLensLite.autoResize(); }, 1000);
		}
	},
	showFlashUI : function (feedText) {
		this.THE_FEED = feedText; // is "" if we are loading the feed in Flash
		this.findScriptLocation();
		this.createBackgroundOverlay();
		this.createForegroundFlashComponent();
		if (this.BROWSER_IE) {
			this.appendElementsToDocument();
		}
		this.injectFlashPlayer();
		if (!this.BROWSER_IE) {
			// Win Firefox needs this to be last
			// Other Browsers are OK with this
			this.appendElementsToDocument(); 
		}
		this.addKeyHandlers();
		this.addMouseHandlers();
		this.setRunningFlag(true);
		this.setResizeTimer();
		this.setResizeHandler();
		this.startLytebox();
	},
	sendMouseScrollToFlash : function (delta) {
		if (!this.isRunning()) { return; }
		var fl = this.getFlash();
		if (fl != null && fl.fl_mouseMoved) {
			fl.fl_mouseMoved(delta);
		}
	}
	// don't end the last function with a comma; it messes up IE7
};




/* SWFObject v2.0 <http://code.google.com/p/swfobject/> / Copyright 2007 Geoff Stearns, Michael Williams, and Bobby van der Sluis / MIT License */
var swfobjlite = function() {
	var UNDEF = "undefined",
		OBJECT = "object",
		SHOCKWAVE_FLASH = "Shockwave Flash",
		SHOCKWAVE_FLASH_AX = "ShockwaveFlash.ShockwaveFlash",
		win = window,
		doc = document,
		nav = navigator;
	
	var ua = function() {
		var w3cdom = typeof doc.getElementById != UNDEF && typeof doc.getElementsByTagName != UNDEF && typeof doc.createElement != UNDEF && typeof doc.appendChild != UNDEF
					&& typeof doc.replaceChild != UNDEF && typeof doc.removeChild != UNDEF && typeof doc.cloneNode != UNDEF,
			playerVersion = [0,0,0],
			d = null;
		if (typeof nav.plugins != UNDEF && typeof nav.plugins[SHOCKWAVE_FLASH] == OBJECT) {
			d = nav.plugins[SHOCKWAVE_FLASH].description;
			if (d) {
				d = d.replace(/^.*\s+(\S+\s+\S+$)/, "$1");
				playerVersion[0] = parseInt(d.replace(/^(.*)\..*$/, "$1"), 10);
				playerVersion[1] = parseInt(d.replace(/^.*\.(.*)\s.*$/, "$1"), 10);
				playerVersion[2] = /r/.test(d) ? parseInt(d.replace(/^.*r(.*)$/, "$1"), 10) : 0;
			}
		}
		else if (typeof win.ActiveXObject != UNDEF) {
			var a = null, fp6Crash = false;
			try {
				a = new ActiveXObject(SHOCKWAVE_FLASH_AX + ".7");
			}
			catch(e) {
				try { 
					a = new ActiveXObject(SHOCKWAVE_FLASH_AX + ".6");
					playerVersion = [6,0,21];
					a.AllowScriptAccess = "always";  // Introduced in fp6.0.47
				}
				catch(e) {
					if (playerVersion[0] == 6) {
						fp6Crash = true;
					}
				}
				if (!fp6Crash) {
					try {
						a = new ActiveXObject(SHOCKWAVE_FLASH_AX);
					}
					catch(e) {}
				}
			}
			if (!fp6Crash && a) { // a will return null when ActiveX is disabled
				try {
					d = a.GetVariable("$version");  // Will crash fp6.0.21/23/29
					if (d) {
						d = d.split(" ")[1].split(",");
						playerVersion = [parseInt(d[0], 10), parseInt(d[1], 10), parseInt(d[2], 10)];
					}
				}
				catch(e) {}
			}
		}
		var u = nav.userAgent.toLowerCase(),
			p = nav.platform.toLowerCase(),
			webkit = /webkit/.test(u) ? parseFloat(u.replace(/^.*webkit\/(\d+(\.\d+)?).*$/, "$1")) : false, // returns either the webkit version or false if not webkit
			ie = false,
			windows = p ? /win/.test(p) : /win/.test(u),
			mac = p ? /mac/.test(p) : /mac/.test(u);
		/*@cc_on
			ie = true;
			@if (@_win32)
				windows = true;
			@elif (@_mac)
				mac = true;
			@end
		@*/
		return { w3cdom:w3cdom, pv:playerVersion, webkit:webkit, ie:ie, win:windows, mac:mac };
	}();

	return { // PUBLIC API
		hasFlashPlayerVersion : function(rv) {
			var pv = ua.pv, v = rv.split(".");
			v[0] = parseInt(v[0], 10);
			v[1] = parseInt(v[1], 10);
			v[2] = parseInt(v[2], 10);
			return (pv[0] > v[0] || (pv[0] == v[0] && pv[1] > v[1]) || (pv[0] == v[0] && pv[1] == v[1] && pv[2] >= v[2])) ? true : false;
		},
		getFlashPlayerVersion: function() {
			return { major:ua.pv[0], minor:ua.pv[1], release:ua.pv[2] };
		}
	};
}();




	
/* BrowserDetect: http://www.quirksmode.org/js/detect.html */
var BrowserDetect={
	init:function() { this.browser = this.searchString(this.dataBrowser) || "Unknown Browser"; this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "Unknown Version"; this.OS = this.searchString(this.dataOS) || "Unknown OS"; },
	searchString:function(data) { for (var i=0;i<data.length;i++)	{ var dataString = data[i].string; var dataProp = data[i].prop; this.versionSearchString = data[i].versionSearch || data[i].identity; if (dataString) { if (dataString.indexOf(data[i].subString) != -1) {return data[i].identity;} } else if (dataProp) { return data[i].identity; } } },
	searchVersion:function(dataString) { var index = dataString.indexOf(this.versionSearchString); if (index == -1) {return;} return parseFloat(dataString.substring(index+this.versionSearchString.length+1)); },
	dataBrowser:[
		{ string: navigator.userAgent, subString: "OmniWeb", versionSearch: "OmniWeb/", identity: "OmniWeb" },
		{ string: navigator.vendor, subString: "Apple", identity: "Safari" },
		{ prop: window.opera, identity: "Opera" },
		{ string: navigator.vendor, subString: "iCab", identity: "iCab" },
		{ string: navigator.vendor, subString: "KDE", identity: "Konqueror" },
		{ string: navigator.userAgent, subString: "Firefox", identity: "Firefox" },
		{ string: navigator.vendor, subString: "Camino", identity: "Camino" },
		{ string: navigator.userAgent, subString: "Netscape", identity: "Netscape" }, // newer Netscapes (6+)
		{ string: navigator.userAgent, subString: "MSIE", identity: "Explorer", versionSearch: "MSIE" },
		{ string: navigator.userAgent, subString: "Gecko", identity: "Mozilla", versionSearch: "rv" },
		{ string: navigator.userAgent, subString: "Mozilla", identity: "Netscape", versionSearch: "Mozilla" } // older Netscapes (4-)
	],
	dataOS:[{ string: navigator.platform, subString: "Win", identity: "Windows" }, { string: navigator.platform, subString: "Mac", identity: "Mac" }, { string: navigator.platform, subString: "Linux", identity: "Linux" } ]
};
BrowserDetect.init();

/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
if(typeof YAHOO=="undefined"||!YAHOO){var YAHOO={};}YAHOO.namespace=function(){var A=arguments,E=null,C,B,D;for(C=0;C<A.length;C=C+1){D=A[C].split(".");E=YAHOO;for(B=(D[0]=="YAHOO")?1:0;B<D.length;B=B+1){E[D[B]]=E[D[B]]||{};E=E[D[B]];}}return E;};YAHOO.log=function(D,A,C){var B=YAHOO.widget.Logger;if(B&&B.log){return B.log(D,A,C);}else{return false;}};YAHOO.register=function(A,E,D){var I=YAHOO.env.modules;if(!I[A]){I[A]={versions:[],builds:[]};}var B=I[A],H=D.version,G=D.build,F=YAHOO.env.listeners;B.name=A;B.version=H;B.build=G;B.versions.push(H);B.builds.push(G);B.mainClass=E;for(var C=0;C<F.length;C=C+1){F[C](B);}if(E){E.VERSION=H;E.BUILD=G;}else{YAHOO.log("mainClass is undefined for module "+A,"warn");}};YAHOO.env=YAHOO.env||{modules:[],listeners:[]};YAHOO.env.getVersion=function(A){return YAHOO.env.modules[A]||null;};YAHOO.env.ua=function(){var C={ie:0,opera:0,gecko:0,webkit:0,mobile:null};var B=navigator.userAgent,A;if((/KHTML/).test(B)){C.webkit=1;}A=B.match(/AppleWebKit\/([^\s]*)/);if(A&&A[1]){C.webkit=parseFloat(A[1]);if(/ Mobile\//.test(B)){C.mobile="Apple";}else{A=B.match(/NokiaN[^\/]*/);if(A){C.mobile=A[0];}}}if(!C.webkit){A=B.match(/Opera[\s\/]([^\s]*)/);if(A&&A[1]){C.opera=parseFloat(A[1]);A=B.match(/Opera Mini[^;]*/);if(A){C.mobile=A[0];}}else{A=B.match(/MSIE\s([^;]*)/);if(A&&A[1]){C.ie=parseFloat(A[1]);}else{A=B.match(/Gecko\/([^\s]*)/);if(A){C.gecko=1;A=B.match(/rv:([^\s\)]*)/);if(A&&A[1]){C.gecko=parseFloat(A[1]);}}}}}return C;}();(function(){YAHOO.namespace("util","widget","example");if("undefined"!==typeof YAHOO_config){var B=YAHOO_config.listener,A=YAHOO.env.listeners,D=true,C;if(B){for(C=0;C<A.length;C=C+1){if(A[C]==B){D=false;break;}}if(D){A.push(B);}}}})();YAHOO.lang=YAHOO.lang||{isArray:function(B){if(B){var A=YAHOO.lang;return A.isNumber(B.length)&&A.isFunction(B.splice);}return false;},isBoolean:function(A){return typeof A==="boolean";},isFunction:function(A){return typeof A==="function";},isNull:function(A){return A===null;},isNumber:function(A){return typeof A==="number"&&isFinite(A);},isObject:function(A){return(A&&(typeof A==="object"||YAHOO.lang.isFunction(A)))||false;},isString:function(A){return typeof A==="string";},isUndefined:function(A){return typeof A==="undefined";},hasOwnProperty:function(A,B){if(Object.prototype.hasOwnProperty){return A.hasOwnProperty(B);}return !YAHOO.lang.isUndefined(A[B])&&A.constructor.prototype[B]!==A[B];},_IEEnumFix:function(C,B){if(YAHOO.env.ua.ie){var E=["toString","valueOf"],A;for(A=0;A<E.length;A=A+1){var F=E[A],D=B[F];if(YAHOO.lang.isFunction(D)&&D!=Object.prototype[F]){C[F]=D;}}}},extend:function(D,E,C){if(!E||!D){throw new Error("YAHOO.lang.extend failed, please check that all dependencies are included.");}var B=function(){};B.prototype=E.prototype;D.prototype=new B();D.prototype.constructor=D;D.superclass=E.prototype;if(E.prototype.constructor==Object.prototype.constructor){E.prototype.constructor=E;}if(C){for(var A in C){D.prototype[A]=C[A];}YAHOO.lang._IEEnumFix(D.prototype,C);}},augmentObject:function(E,D){if(!D||!E){throw new Error("Absorb failed, verify dependencies.");}var A=arguments,C,F,B=A[2];if(B&&B!==true){for(C=2;C<A.length;C=C+1){E[A[C]]=D[A[C]];}}else{for(F in D){if(B||!E[F]){E[F]=D[F];}}YAHOO.lang._IEEnumFix(E,D);}},augmentProto:function(D,C){if(!C||!D){throw new Error("Augment failed, verify dependencies.");}var A=[D.prototype,C.prototype];for(var B=2;B<arguments.length;B=B+1){A.push(arguments[B]);}YAHOO.lang.augmentObject.apply(this,A);},dump:function(A,G){var C=YAHOO.lang,D,F,I=[],J="{...}",B="f(){...}",H=", ",E=" => ";if(!C.isObject(A)){return A+"";}else{if(A instanceof Date||("nodeType" in A&&"tagName" in A)){return A;}else{if(C.isFunction(A)){return B;}}}G=(C.isNumber(G))?G:3;if(C.isArray(A)){I.push("[");for(D=0,F=A.length;D<F;D=D+1){if(C.isObject(A[D])){I.push((G>0)?C.dump(A[D],G-1):J);}else{I.push(A[D]);}I.push(H);}if(I.length>1){I.pop();}I.push("]");}else{I.push("{");for(D in A){if(C.hasOwnProperty(A,D)){I.push(D+E);if(C.isObject(A[D])){I.push((G>0)?C.dump(A[D],G-1):J);}else{I.push(A[D]);}I.push(H);}}if(I.length>1){I.pop();}I.push("}");}return I.join("");},substitute:function(Q,B,J){var G,F,E,M,N,P,D=YAHOO.lang,L=[],C,H="dump",K=" ",A="{",O="}";for(;;){G=Q.lastIndexOf(A);if(G<0){break;}F=Q.indexOf(O,G);if(G+1>=F){break;}C=Q.substring(G+1,F);M=C;P=null;E=M.indexOf(K);if(E>-1){P=M.substring(E+1);M=M.substring(0,E);}N=B[M];if(J){N=J(M,N,P);}if(D.isObject(N)){if(D.isArray(N)){N=D.dump(N,parseInt(P,10));}else{P=P||"";var I=P.indexOf(H);if(I>-1){P=P.substring(4);}if(N.toString===Object.prototype.toString||I>-1){N=D.dump(N,parseInt(P,10));}else{N=N.toString();}}}else{if(!D.isString(N)&&!D.isNumber(N)){N="~-"+L.length+"-~";L[L.length]=C;}}Q=Q.substring(0,G)+N+Q.substring(F+1);}for(G=L.length-1;G>=0;G=G-1){Q=Q.replace(new RegExp("~-"+G+"-~"),"{"+L[G]+"}","g");}return Q;},trim:function(A){try{return A.replace(/^\s+|\s+$/g,"");}catch(B){return A;}},merge:function(){var D={},B=arguments;for(var C=0,A=B.length;C<A;C=C+1){YAHOO.lang.augmentObject(D,B[C],true);}return D;},later:function(H,B,I,D,E){H=H||0;B=B||{};var C=I,G=D,F,A;if(YAHOO.lang.isString(I)){C=B[I];}if(!C){throw new TypeError("method undefined");}if(!YAHOO.lang.isArray(G)){G=[D];}F=function(){C.apply(B,G);};A=(E)?setInterval(F,H):setTimeout(F,H);return{interval:E,cancel:function(){if(this.interval){clearInterval(A);}else{clearTimeout(A);}}};},isValue:function(B){var A=YAHOO.lang;return(A.isObject(B)||A.isString(B)||A.isNumber(B)||A.isBoolean(B));}};YAHOO.util.Lang=YAHOO.lang;YAHOO.lang.augment=YAHOO.lang.augmentProto;YAHOO.augment=YAHOO.lang.augmentProto;YAHOO.extend=YAHOO.lang.extend;YAHOO.register("yahoo",YAHOO,{version:"2.5.0",build:"897"});(function(){var B=YAHOO.util,K,I,J={},F={},M=window.document;YAHOO.env._id_counter=YAHOO.env._id_counter||0;var C=YAHOO.env.ua.opera,L=YAHOO.env.ua.webkit,A=YAHOO.env.ua.gecko,G=YAHOO.env.ua.ie;var E={HYPHEN:/(-[a-z])/i,ROOT_TAG:/^body|html$/i};var N=function(P){if(!E.HYPHEN.test(P)){return P;}if(J[P]){return J[P];}var Q=P;while(E.HYPHEN.exec(Q)){Q=Q.replace(RegExp.$1,RegExp.$1.substr(1).toUpperCase());}J[P]=Q;return Q;};var O=function(Q){var P=F[Q];if(!P){P=new RegExp("(?:^|\\s+)"+Q+"(?:\\s+|$)");F[Q]=P;}return P;};if(M.defaultView&&M.defaultView.getComputedStyle){K=function(P,S){var R=null;if(S=="float"){S="cssFloat";}var Q=M.defaultView.getComputedStyle(P,"");if(Q){R=Q[N(S)];}return P.style[S]||R;};}else{if(M.documentElement.currentStyle&&G){K=function(P,R){switch(N(R)){case"opacity":var T=100;try{T=P.filters["DXImageTransform.Microsoft.Alpha"].opacity;}catch(S){try{T=P.filters("alpha").opacity;}catch(S){}}return T/100;case"float":R="styleFloat";default:var Q=P.currentStyle?P.currentStyle[R]:null;return(P.style[R]||Q);}};}else{K=function(P,Q){return P.style[Q];};}}if(G){I=function(P,Q,R){switch(Q){case"opacity":if(YAHOO.lang.isString(P.style.filter)){P.style.filter="alpha(opacity="+R*100+")";if(!P.currentStyle||!P.currentStyle.hasLayout){P.style.zoom=1;}}break;case"float":Q="styleFloat";default:P.style[Q]=R;}};}else{I=function(P,Q,R){if(Q=="float"){Q="cssFloat";}P.style[Q]=R;};}var D=function(P,Q){return P&&P.nodeType==1&&(!Q||Q(P));};YAHOO.util.Dom={get:function(R){if(R&&(R.nodeType||R.item)){return R;}if(YAHOO.lang.isString(R)||!R){return M.getElementById(R);}if(R.length!==undefined){var S=[];for(var Q=0,P=R.length;Q<P;++Q){S[S.length]=B.Dom.get(R[Q]);}return S;}return R;},getStyle:function(P,R){R=N(R);var Q=function(S){return K(S,R);};return B.Dom.batch(P,Q,B.Dom,true);},setStyle:function(P,R,S){R=N(R);var Q=function(T){I(T,R,S);};B.Dom.batch(P,Q,B.Dom,true);},getXY:function(P){var Q=function(R){if((R.parentNode===null||R.offsetParent===null||this.getStyle(R,"display")=="none")&&R!=R.ownerDocument.body){return false;}return H(R);};return B.Dom.batch(P,Q,B.Dom,true);},getX:function(P){var Q=function(R){return B.Dom.getXY(R)[0];};return B.Dom.batch(P,Q,B.Dom,true);},getY:function(P){var Q=function(R){return B.Dom.getXY(R)[1];};return B.Dom.batch(P,Q,B.Dom,true);},setXY:function(P,S,R){var Q=function(V){var U=this.getStyle(V,"position");if(U=="static"){this.setStyle(V,"position","relative");U="relative";}var X=this.getXY(V);if(X===false){return false;}var W=[parseInt(this.getStyle(V,"left"),10),parseInt(this.getStyle(V,"top"),10)];if(isNaN(W[0])){W[0]=(U=="relative")?0:V.offsetLeft;}if(isNaN(W[1])){W[1]=(U=="relative")?0:V.offsetTop;}if(S[0]!==null){V.style.left=S[0]-X[0]+W[0]+"px";}if(S[1]!==null){V.style.top=S[1]-X[1]+W[1]+"px";}if(!R){var T=this.getXY(V);if((S[0]!==null&&T[0]!=S[0])||(S[1]!==null&&T[1]!=S[1])){this.setXY(V,S,true);}}};B.Dom.batch(P,Q,B.Dom,true);},setX:function(Q,P){B.Dom.setXY(Q,[P,null]);},setY:function(P,Q){B.Dom.setXY(P,[null,Q]);},getRegion:function(P){var Q=function(R){if((R.parentNode===null||R.offsetParent===null||this.getStyle(R,"display")=="none")&&R!=M.body){return false;}var S=B.Region.getRegion(R);return S;};return B.Dom.batch(P,Q,B.Dom,true);},getClientWidth:function(){return B.Dom.getViewportWidth();},getClientHeight:function(){return B.Dom.getViewportHeight();},getElementsByClassName:function(T,X,U,V){X=X||"*";U=(U)?B.Dom.get(U):null||M;if(!U){return[];}var Q=[],P=U.getElementsByTagName(X),W=O(T);for(var R=0,S=P.length;R<S;++R){if(W.test(P[R].className)){Q[Q.length]=P[R];if(V){V.call(P[R],P[R]);}}}return Q;},hasClass:function(R,Q){var P=O(Q);var S=function(T){return P.test(T.className);};return B.Dom.batch(R,S,B.Dom,true);},addClass:function(Q,P){var R=function(S){if(this.hasClass(S,P)){return false;}S.className=YAHOO.lang.trim([S.className,P].join(" "));return true;};return B.Dom.batch(Q,R,B.Dom,true);},removeClass:function(R,Q){var P=O(Q);var S=function(T){if(!Q||!this.hasClass(T,Q)){return false;}var U=T.className;T.className=U.replace(P," ");if(this.hasClass(T,Q)){this.removeClass(T,Q);}T.className=YAHOO.lang.trim(T.className);return true;};return B.Dom.batch(R,S,B.Dom,true);},replaceClass:function(S,Q,P){if(!P||Q===P){return false;}var R=O(Q);var T=function(U){if(!this.hasClass(U,Q)){this.addClass(U,P);return true;}U.className=U.className.replace(R," "+P+" ");if(this.hasClass(U,Q)){this.replaceClass(U,Q,P);}U.className=YAHOO.lang.trim(U.className);return true;};return B.Dom.batch(S,T,B.Dom,true);},generateId:function(P,R){R=R||"yui-gen";var Q=function(S){if(S&&S.id){return S.id;}var T=R+YAHOO.env._id_counter++;if(S){S.id=T;}return T;};return B.Dom.batch(P,Q,B.Dom,true)||Q.apply(B.Dom,arguments);},isAncestor:function(P,Q){P=B.Dom.get(P);Q=B.Dom.get(Q);if(!P||!Q){return false;}if(P.contains&&Q.nodeType&&!L){return P.contains(Q);}else{if(P.compareDocumentPosition&&Q.nodeType){return !!(P.compareDocumentPosition(Q)&16);}else{if(Q.nodeType){return !!this.getAncestorBy(Q,function(R){return R==P;});}}}return false;},inDocument:function(P){return this.isAncestor(M.documentElement,P);},getElementsBy:function(W,Q,R,T){Q=Q||"*";R=(R)?B.Dom.get(R):null||M;if(!R){return[];}var S=[],V=R.getElementsByTagName(Q);for(var U=0,P=V.length;U<P;++U){if(W(V[U])){S[S.length]=V[U];if(T){T(V[U]);}}}return S;},batch:function(T,W,V,R){T=(T&&(T.tagName||T.item))?T:B.Dom.get(T);if(!T||!W){return false;}var S=(R)?V:window;if(T.tagName||T.length===undefined){return W.call(S,T,V);}var U=[];for(var Q=0,P=T.length;Q<P;++Q){U[U.length]=W.call(S,T[Q],V);}return U;},getDocumentHeight:function(){var Q=(M.compatMode!="CSS1Compat")?M.body.scrollHeight:M.documentElement.scrollHeight;var P=Math.max(Q,B.Dom.getViewportHeight());return P;},getDocumentWidth:function(){var Q=(M.compatMode!="CSS1Compat")?M.body.scrollWidth:M.documentElement.scrollWidth;var P=Math.max(Q,B.Dom.getViewportWidth());return P;},getViewportHeight:function(){var P=self.innerHeight;var Q=M.compatMode;if((Q||G)&&!C){P=(Q=="CSS1Compat")?M.documentElement.clientHeight:M.body.clientHeight;
}return P;},getViewportWidth:function(){var P=self.innerWidth;var Q=M.compatMode;if(Q||G){P=(Q=="CSS1Compat")?M.documentElement.clientWidth:M.body.clientWidth;}return P;},getAncestorBy:function(P,Q){while(P=P.parentNode){if(D(P,Q)){return P;}}return null;},getAncestorByClassName:function(Q,P){Q=B.Dom.get(Q);if(!Q){return null;}var R=function(S){return B.Dom.hasClass(S,P);};return B.Dom.getAncestorBy(Q,R);},getAncestorByTagName:function(Q,P){Q=B.Dom.get(Q);if(!Q){return null;}var R=function(S){return S.tagName&&S.tagName.toUpperCase()==P.toUpperCase();};return B.Dom.getAncestorBy(Q,R);},getPreviousSiblingBy:function(P,Q){while(P){P=P.previousSibling;if(D(P,Q)){return P;}}return null;},getPreviousSibling:function(P){P=B.Dom.get(P);if(!P){return null;}return B.Dom.getPreviousSiblingBy(P);},getNextSiblingBy:function(P,Q){while(P){P=P.nextSibling;if(D(P,Q)){return P;}}return null;},getNextSibling:function(P){P=B.Dom.get(P);if(!P){return null;}return B.Dom.getNextSiblingBy(P);},getFirstChildBy:function(P,R){var Q=(D(P.firstChild,R))?P.firstChild:null;return Q||B.Dom.getNextSiblingBy(P.firstChild,R);},getFirstChild:function(P,Q){P=B.Dom.get(P);if(!P){return null;}return B.Dom.getFirstChildBy(P);},getLastChildBy:function(P,R){if(!P){return null;}var Q=(D(P.lastChild,R))?P.lastChild:null;return Q||B.Dom.getPreviousSiblingBy(P.lastChild,R);},getLastChild:function(P){P=B.Dom.get(P);return B.Dom.getLastChildBy(P);},getChildrenBy:function(Q,S){var R=B.Dom.getFirstChildBy(Q,S);var P=R?[R]:[];B.Dom.getNextSiblingBy(R,function(T){if(!S||S(T)){P[P.length]=T;}return false;});return P;},getChildren:function(P){P=B.Dom.get(P);if(!P){}return B.Dom.getChildrenBy(P);},getDocumentScrollLeft:function(P){P=P||M;return Math.max(P.documentElement.scrollLeft,P.body.scrollLeft);},getDocumentScrollTop:function(P){P=P||M;return Math.max(P.documentElement.scrollTop,P.body.scrollTop);},insertBefore:function(Q,P){Q=B.Dom.get(Q);P=B.Dom.get(P);if(!Q||!P||!P.parentNode){return null;}return P.parentNode.insertBefore(Q,P);},insertAfter:function(Q,P){Q=B.Dom.get(Q);P=B.Dom.get(P);if(!Q||!P||!P.parentNode){return null;}if(P.nextSibling){return P.parentNode.insertBefore(Q,P.nextSibling);}else{return P.parentNode.appendChild(Q);}},getClientRegion:function(){var R=B.Dom.getDocumentScrollTop(),Q=B.Dom.getDocumentScrollLeft(),S=B.Dom.getViewportWidth()+Q,P=B.Dom.getViewportHeight()+R;return new B.Region(R,S,P,Q);}};var H=function(){if(M.documentElement.getBoundingClientRect){return function(Q){var R=Q.getBoundingClientRect();var P=Q.ownerDocument;return[R.left+B.Dom.getDocumentScrollLeft(P),R.top+B.Dom.getDocumentScrollTop(P)];};}else{return function(R){var S=[R.offsetLeft,R.offsetTop];var Q=R.offsetParent;var P=(L&&B.Dom.getStyle(R,"position")=="absolute"&&R.offsetParent==R.ownerDocument.body);if(Q!=R){while(Q){S[0]+=Q.offsetLeft;S[1]+=Q.offsetTop;if(!P&&L&&B.Dom.getStyle(Q,"position")=="absolute"){P=true;}Q=Q.offsetParent;}}if(P){S[0]-=R.ownerDocument.body.offsetLeft;S[1]-=R.ownerDocument.body.offsetTop;}Q=R.parentNode;while(Q.tagName&&!E.ROOT_TAG.test(Q.tagName)){if(B.Dom.getStyle(Q,"display").search(/^inline|table-row.*$/i)){S[0]-=Q.scrollLeft;S[1]-=Q.scrollTop;}Q=Q.parentNode;}return S;};}}();})();YAHOO.util.Region=function(C,D,A,B){this.top=C;this[1]=C;this.right=D;this.bottom=A;this.left=B;this[0]=B;};YAHOO.util.Region.prototype.contains=function(A){return(A.left>=this.left&&A.right<=this.right&&A.top>=this.top&&A.bottom<=this.bottom);};YAHOO.util.Region.prototype.getArea=function(){return((this.bottom-this.top)*(this.right-this.left));};YAHOO.util.Region.prototype.intersect=function(E){var C=Math.max(this.top,E.top);var D=Math.min(this.right,E.right);var A=Math.min(this.bottom,E.bottom);var B=Math.max(this.left,E.left);if(A>=C&&D>=B){return new YAHOO.util.Region(C,D,A,B);}else{return null;}};YAHOO.util.Region.prototype.union=function(E){var C=Math.min(this.top,E.top);var D=Math.max(this.right,E.right);var A=Math.max(this.bottom,E.bottom);var B=Math.min(this.left,E.left);return new YAHOO.util.Region(C,D,A,B);};YAHOO.util.Region.prototype.toString=function(){return("Region {"+"top: "+this.top+", right: "+this.right+", bottom: "+this.bottom+", left: "+this.left+"}");};YAHOO.util.Region.getRegion=function(D){var F=YAHOO.util.Dom.getXY(D);var C=F[1];var E=F[0]+D.offsetWidth;var A=F[1]+D.offsetHeight;var B=F[0];return new YAHOO.util.Region(C,E,A,B);};YAHOO.util.Point=function(A,B){if(YAHOO.lang.isArray(A)){B=A[1];A=A[0];}this.x=this.right=this.left=this[0]=A;this.y=this.top=this.bottom=this[1]=B;};YAHOO.util.Point.prototype=new YAHOO.util.Region();YAHOO.register("dom",YAHOO.util.Dom,{version:"2.5.0",build:"897"});YAHOO.util.CustomEvent=function(D,B,C,A){this.type=D;this.scope=B||window;this.silent=C;this.signature=A||YAHOO.util.CustomEvent.LIST;this.subscribers=[];if(!this.silent){}var E="_YUICEOnSubscribe";if(D!==E){this.subscribeEvent=new YAHOO.util.CustomEvent(E,this,true);}this.lastError=null;};YAHOO.util.CustomEvent.LIST=0;YAHOO.util.CustomEvent.FLAT=1;YAHOO.util.CustomEvent.prototype={subscribe:function(B,C,A){if(!B){throw new Error("Invalid callback for subscriber to '"+this.type+"'");}if(this.subscribeEvent){this.subscribeEvent.fire(B,C,A);}this.subscribers.push(new YAHOO.util.Subscriber(B,C,A));},unsubscribe:function(D,F){if(!D){return this.unsubscribeAll();}var E=false;for(var B=0,A=this.subscribers.length;B<A;++B){var C=this.subscribers[B];if(C&&C.contains(D,F)){this._delete(B);E=true;}}return E;},fire:function(){var D=this.subscribers.length;if(!D&&this.silent){return true;}var H=[],F=true,C,I=false;for(C=0;C<arguments.length;++C){H.push(arguments[C]);}if(!this.silent){}for(C=0;C<D;++C){var L=this.subscribers[C];if(!L){I=true;}else{if(!this.silent){}var K=L.getScope(this.scope);if(this.signature==YAHOO.util.CustomEvent.FLAT){var A=null;if(H.length>0){A=H[0];}try{F=L.fn.call(K,A,L.obj);}catch(E){this.lastError=E;}}else{try{F=L.fn.call(K,this.type,H,L.obj);}catch(G){this.lastError=G;}}if(false===F){if(!this.silent){}return false;}}}if(I){var J=[],B=this.subscribers;for(C=0,D=B.length;C<D;C=C+1){J.push(B[C]);}this.subscribers=J;}return true;},unsubscribeAll:function(){for(var B=0,A=this.subscribers.length;B<A;++B){this._delete(A-1-B);}this.subscribers=[];return B;},_delete:function(A){var B=this.subscribers[A];if(B){delete B.fn;delete B.obj;}this.subscribers[A]=null;},toString:function(){return"CustomEvent: "+"'"+this.type+"', "+"scope: "+this.scope;}};YAHOO.util.Subscriber=function(B,C,A){this.fn=B;this.obj=YAHOO.lang.isUndefined(C)?null:C;this.override=A;};YAHOO.util.Subscriber.prototype.getScope=function(A){if(this.override){if(this.override===true){return this.obj;}else{return this.override;}}return A;};YAHOO.util.Subscriber.prototype.contains=function(A,B){if(B){return(this.fn==A&&this.obj==B);}else{return(this.fn==A);}};YAHOO.util.Subscriber.prototype.toString=function(){return"Subscriber { obj: "+this.obj+", override: "+(this.override||"no")+" }";};if(!YAHOO.util.Event){YAHOO.util.Event=function(){var H=false;var I=[];var J=[];var G=[];var E=[];var C=0;var F=[];var B=[];var A=0;var D={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9};return{POLL_RETRYS:2000,POLL_INTERVAL:20,EL:0,TYPE:1,FN:2,WFN:3,UNLOAD_OBJ:3,ADJ_SCOPE:4,OBJ:5,OVERRIDE:6,lastError:null,isSafari:YAHOO.env.ua.webkit,webkit:YAHOO.env.ua.webkit,isIE:YAHOO.env.ua.ie,_interval:null,_dri:null,DOMReady:false,startInterval:function(){if(!this._interval){var K=this;var L=function(){K._tryPreloadAttach();};this._interval=setInterval(L,this.POLL_INTERVAL);}},onAvailable:function(P,M,Q,O,N){var K=(YAHOO.lang.isString(P))?[P]:P;for(var L=0;L<K.length;L=L+1){F.push({id:K[L],fn:M,obj:Q,override:O,checkReady:N});}C=this.POLL_RETRYS;this.startInterval();},onContentReady:function(M,K,N,L){this.onAvailable(M,K,N,L,true);},onDOMReady:function(K,M,L){if(this.DOMReady){setTimeout(function(){var N=window;if(L){if(L===true){N=M;}else{N=L;}}K.call(N,"DOMReady",[],M);},0);}else{this.DOMReadyEvent.subscribe(K,M,L);}},addListener:function(M,K,V,Q,L){if(!V||!V.call){return false;}if(this._isValidCollection(M)){var W=true;for(var R=0,T=M.length;R<T;++R){W=this.on(M[R],K,V,Q,L)&&W;}return W;}else{if(YAHOO.lang.isString(M)){var P=this.getEl(M);if(P){M=P;}else{this.onAvailable(M,function(){YAHOO.util.Event.on(M,K,V,Q,L);});return true;}}}if(!M){return false;}if("unload"==K&&Q!==this){J[J.length]=[M,K,V,Q,L];return true;}var Y=M;if(L){if(L===true){Y=Q;}else{Y=L;}}var N=function(Z){return V.call(Y,YAHOO.util.Event.getEvent(Z,M),Q);};var X=[M,K,V,N,Y,Q,L];var S=I.length;I[S]=X;if(this.useLegacyEvent(M,K)){var O=this.getLegacyIndex(M,K);if(O==-1||M!=G[O][0]){O=G.length;B[M.id+K]=O;G[O]=[M,K,M["on"+K]];E[O]=[];M["on"+K]=function(Z){YAHOO.util.Event.fireLegacyEvent(YAHOO.util.Event.getEvent(Z),O);};}E[O].push(X);}else{try{this._simpleAdd(M,K,N,false);}catch(U){this.lastError=U;this.removeListener(M,K,V);return false;}}return true;},fireLegacyEvent:function(O,M){var Q=true,K,S,R,T,P;S=E[M];for(var L=0,N=S.length;L<N;++L){R=S[L];if(R&&R[this.WFN]){T=R[this.ADJ_SCOPE];P=R[this.WFN].call(T,O);Q=(Q&&P);}}K=G[M];if(K&&K[2]){K[2](O);}return Q;},getLegacyIndex:function(L,M){var K=this.generateId(L)+M;if(typeof B[K]=="undefined"){return -1;}else{return B[K];}},useLegacyEvent:function(L,M){if(this.webkit&&("click"==M||"dblclick"==M)){var K=parseInt(this.webkit,10);if(!isNaN(K)&&K<418){return true;}}return false;},removeListener:function(L,K,T){var O,R,V;if(typeof L=="string"){L=this.getEl(L);}else{if(this._isValidCollection(L)){var U=true;for(O=0,R=L.length;O<R;++O){U=(this.removeListener(L[O],K,T)&&U);}return U;}}if(!T||!T.call){return this.purgeElement(L,false,K);}if("unload"==K){for(O=0,R=J.length;O<R;O++){V=J[O];if(V&&V[0]==L&&V[1]==K&&V[2]==T){J[O]=null;return true;}}return false;}var P=null;var Q=arguments[3];if("undefined"===typeof Q){Q=this._getCacheIndex(L,K,T);}if(Q>=0){P=I[Q];}if(!L||!P){return false;}if(this.useLegacyEvent(L,K)){var N=this.getLegacyIndex(L,K);var M=E[N];if(M){for(O=0,R=M.length;O<R;++O){V=M[O];if(V&&V[this.EL]==L&&V[this.TYPE]==K&&V[this.FN]==T){M[O]=null;break;}}}}else{try{this._simpleRemove(L,K,P[this.WFN],false);}catch(S){this.lastError=S;return false;}}delete I[Q][this.WFN];delete I[Q][this.FN];I[Q]=null;return true;},getTarget:function(M,L){var K=M.target||M.srcElement;return this.resolveTextNode(K);},resolveTextNode:function(L){try{if(L&&3==L.nodeType){return L.parentNode;}}catch(K){}return L;},getPageX:function(L){var K=L.pageX;if(!K&&0!==K){K=L.clientX||0;if(this.isIE){K+=this._getScrollLeft();}}return K;},getPageY:function(K){var L=K.pageY;if(!L&&0!==L){L=K.clientY||0;if(this.isIE){L+=this._getScrollTop();}}return L;
},getXY:function(K){return[this.getPageX(K),this.getPageY(K)];},getRelatedTarget:function(L){var K=L.relatedTarget;if(!K){if(L.type=="mouseout"){K=L.toElement;}else{if(L.type=="mouseover"){K=L.fromElement;}}}return this.resolveTextNode(K);},getTime:function(M){if(!M.time){var L=new Date().getTime();try{M.time=L;}catch(K){this.lastError=K;return L;}}return M.time;},stopEvent:function(K){this.stopPropagation(K);this.preventDefault(K);},stopPropagation:function(K){if(K.stopPropagation){K.stopPropagation();}else{K.cancelBubble=true;}},preventDefault:function(K){if(K.preventDefault){K.preventDefault();}else{K.returnValue=false;}},getEvent:function(M,K){var L=M||window.event;if(!L){var N=this.getEvent.caller;while(N){L=N.arguments[0];if(L&&Event==L.constructor){break;}N=N.caller;}}return L;},getCharCode:function(L){var K=L.keyCode||L.charCode||0;if(YAHOO.env.ua.webkit&&(K in D)){K=D[K];}return K;},_getCacheIndex:function(O,P,N){for(var M=0,L=I.length;M<L;++M){var K=I[M];if(K&&K[this.FN]==N&&K[this.EL]==O&&K[this.TYPE]==P){return M;}}return -1;},generateId:function(K){var L=K.id;if(!L){L="yuievtautoid-"+A;++A;K.id=L;}return L;},_isValidCollection:function(L){try{return(L&&typeof L!=="string"&&L.length&&!L.tagName&&!L.alert&&typeof L[0]!=="undefined");}catch(K){return false;}},elCache:{},getEl:function(K){return(typeof K==="string")?document.getElementById(K):K;},clearCache:function(){},DOMReadyEvent:new YAHOO.util.CustomEvent("DOMReady",this),_load:function(L){if(!H){H=true;var K=YAHOO.util.Event;K._ready();K._tryPreloadAttach();}},_ready:function(L){var K=YAHOO.util.Event;if(!K.DOMReady){K.DOMReady=true;K.DOMReadyEvent.fire();K._simpleRemove(document,"DOMContentLoaded",K._ready);}},_tryPreloadAttach:function(){if(this.locked){return false;}if(this.isIE){if(!this.DOMReady){this.startInterval();return false;}}this.locked=true;var P=!H;if(!P){P=(C>0);}var O=[];var Q=function(S,T){var R=S;if(T.override){if(T.override===true){R=T.obj;}else{R=T.override;}}T.fn.call(R,T.obj);};var L,K,N,M;for(L=0,K=F.length;L<K;++L){N=F[L];if(N&&!N.checkReady){M=this.getEl(N.id);if(M){Q(M,N);F[L]=null;}else{O.push(N);}}}for(L=0,K=F.length;L<K;++L){N=F[L];if(N&&N.checkReady){M=this.getEl(N.id);if(M){if(H||M.nextSibling){Q(M,N);F[L]=null;}}else{O.push(N);}}}C=(O.length===0)?0:C-1;if(P){this.startInterval();}else{clearInterval(this._interval);this._interval=null;}this.locked=false;return true;},purgeElement:function(O,P,R){var M=(YAHOO.lang.isString(O))?this.getEl(O):O;var Q=this.getListeners(M,R),N,K;if(Q){for(N=0,K=Q.length;N<K;++N){var L=Q[N];this.removeListener(M,L.type,L.fn,L.index);}}if(P&&M&&M.childNodes){for(N=0,K=M.childNodes.length;N<K;++N){this.purgeElement(M.childNodes[N],P,R);}}},getListeners:function(M,K){var P=[],L;if(!K){L=[I,J];}else{if(K==="unload"){L=[J];}else{L=[I];}}var R=(YAHOO.lang.isString(M))?this.getEl(M):M;for(var O=0;O<L.length;O=O+1){var T=L[O];if(T&&T.length>0){for(var Q=0,S=T.length;Q<S;++Q){var N=T[Q];if(N&&N[this.EL]===R&&(!K||K===N[this.TYPE])){P.push({type:N[this.TYPE],fn:N[this.FN],obj:N[this.OBJ],adjust:N[this.OVERRIDE],scope:N[this.ADJ_SCOPE],index:Q});}}}}return(P.length)?P:null;},_unload:function(R){var Q=YAHOO.util.Event,O,N,L,K,M;for(O=0,K=J.length;O<K;++O){L=J[O];if(L){var P=window;if(L[Q.ADJ_SCOPE]){if(L[Q.ADJ_SCOPE]===true){P=L[Q.UNLOAD_OBJ];}else{P=L[Q.ADJ_SCOPE];}}L[Q.FN].call(P,Q.getEvent(R,L[Q.EL]),L[Q.UNLOAD_OBJ]);J[O]=null;L=null;P=null;}}J=null;if(I&&I.length>0){N=I.length;while(N){M=N-1;L=I[M];if(L){Q.removeListener(L[Q.EL],L[Q.TYPE],L[Q.FN],M);}N--;}L=null;}G=null;Q._simpleRemove(window,"unload",Q._unload);},_getScrollLeft:function(){return this._getScroll()[1];},_getScrollTop:function(){return this._getScroll()[0];},_getScroll:function(){var K=document.documentElement,L=document.body;if(K&&(K.scrollTop||K.scrollLeft)){return[K.scrollTop,K.scrollLeft];}else{if(L){return[L.scrollTop,L.scrollLeft];}else{return[0,0];}}},regCE:function(){},_simpleAdd:function(){if(window.addEventListener){return function(M,N,L,K){M.addEventListener(N,L,(K));};}else{if(window.attachEvent){return function(M,N,L,K){M.attachEvent("on"+N,L);};}else{return function(){};}}}(),_simpleRemove:function(){if(window.removeEventListener){return function(M,N,L,K){M.removeEventListener(N,L,(K));};}else{if(window.detachEvent){return function(L,M,K){L.detachEvent("on"+M,K);};}else{return function(){};}}}()};}();(function(){var EU=YAHOO.util.Event;EU.on=EU.addListener;
/* DOMReady: based on work by: Dean Edwards/John Resig/Matthias Miller */
if(EU.isIE){YAHOO.util.Event.onDOMReady(YAHOO.util.Event._tryPreloadAttach,YAHOO.util.Event,true);EU._dri=setInterval(function(){var n=document.createElement("p");try{n.doScroll("left");clearInterval(EU._dri);EU._dri=null;EU._ready();n=null;}catch(ex){n=null;}},EU.POLL_INTERVAL);}else{if(EU.webkit&&EU.webkit<525){EU._dri=setInterval(function(){var rs=document.readyState;if("loaded"==rs||"complete"==rs){clearInterval(EU._dri);EU._dri=null;EU._ready();}},EU.POLL_INTERVAL);}else{EU._simpleAdd(document,"DOMContentLoaded",EU._ready);}}EU._simpleAdd(window,"load",EU._load);EU._simpleAdd(window,"unload",EU._unload);EU._tryPreloadAttach();})();}YAHOO.util.EventProvider=function(){};YAHOO.util.EventProvider.prototype={__yui_events:null,__yui_subscribers:null,subscribe:function(A,C,F,E){this.__yui_events=this.__yui_events||{};var D=this.__yui_events[A];if(D){D.subscribe(C,F,E);}else{this.__yui_subscribers=this.__yui_subscribers||{};var B=this.__yui_subscribers;if(!B[A]){B[A]=[];}B[A].push({fn:C,obj:F,override:E});}},unsubscribe:function(C,E,G){this.__yui_events=this.__yui_events||{};var A=this.__yui_events;if(C){var F=A[C];if(F){return F.unsubscribe(E,G);}}else{var B=true;for(var D in A){if(YAHOO.lang.hasOwnProperty(A,D)){B=B&&A[D].unsubscribe(E,G);}}return B;}return false;},unsubscribeAll:function(A){return this.unsubscribe(A);},createEvent:function(G,D){this.__yui_events=this.__yui_events||{};var A=D||{};var I=this.__yui_events;if(I[G]){}else{var H=A.scope||this;var E=(A.silent);
var B=new YAHOO.util.CustomEvent(G,H,E,YAHOO.util.CustomEvent.FLAT);I[G]=B;if(A.onSubscribeCallback){B.subscribeEvent.subscribe(A.onSubscribeCallback);}this.__yui_subscribers=this.__yui_subscribers||{};var F=this.__yui_subscribers[G];if(F){for(var C=0;C<F.length;++C){B.subscribe(F[C].fn,F[C].obj,F[C].override);}}}return I[G];},fireEvent:function(E,D,A,C){this.__yui_events=this.__yui_events||{};var G=this.__yui_events[E];if(!G){return null;}var B=[];for(var F=1;F<arguments.length;++F){B.push(arguments[F]);}return G.fire.apply(G,B);},hasEvent:function(A){if(this.__yui_events){if(this.__yui_events[A]){return true;}}return false;}};YAHOO.util.KeyListener=function(A,F,B,C){if(!A){}else{if(!F){}else{if(!B){}}}if(!C){C=YAHOO.util.KeyListener.KEYDOWN;}var D=new YAHOO.util.CustomEvent("keyPressed");this.enabledEvent=new YAHOO.util.CustomEvent("enabled");this.disabledEvent=new YAHOO.util.CustomEvent("disabled");if(typeof A=="string"){A=document.getElementById(A);}if(typeof B=="function"){D.subscribe(B);}else{D.subscribe(B.fn,B.scope,B.correctScope);}function E(J,I){if(!F.shift){F.shift=false;}if(!F.alt){F.alt=false;}if(!F.ctrl){F.ctrl=false;}if(J.shiftKey==F.shift&&J.altKey==F.alt&&J.ctrlKey==F.ctrl){var G;if(F.keys instanceof Array){for(var H=0;H<F.keys.length;H++){G=F.keys[H];if(G==J.charCode){D.fire(J.charCode,J);break;}else{if(G==J.keyCode){D.fire(J.keyCode,J);break;}}}}else{G=F.keys;if(G==J.charCode){D.fire(J.charCode,J);}else{if(G==J.keyCode){D.fire(J.keyCode,J);}}}}}this.enable=function(){if(!this.enabled){YAHOO.util.Event.addListener(A,C,E);this.enabledEvent.fire(F);}this.enabled=true;};this.disable=function(){if(this.enabled){YAHOO.util.Event.removeListener(A,C,E);this.disabledEvent.fire(F);}this.enabled=false;};this.toString=function(){return"KeyListener ["+F.keys+"] "+A.tagName+(A.id?"["+A.id+"]":"");};};YAHOO.util.KeyListener.KEYDOWN="keydown";YAHOO.util.KeyListener.KEYUP="keyup";YAHOO.util.KeyListener.KEY={ALT:18,BACK_SPACE:8,CAPS_LOCK:20,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,META:224,NUM_LOCK:144,PAGE_DOWN:34,PAGE_UP:33,PAUSE:19,PRINTSCREEN:44,RIGHT:39,SCROLL_LOCK:145,SHIFT:16,SPACE:32,TAB:9,UP:38};YAHOO.register("event",YAHOO.util.Event,{version:"2.5.0",build:"897"});YAHOO.register("yahoo-dom-event", YAHOO, {version: "2.5.0", build: "897"});


/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
YAHOO.util.Attribute=function(B,A){if(A){this.owner=A;this.configure(B,true);}};YAHOO.util.Attribute.prototype={name:undefined,value:null,owner:null,readOnly:false,writeOnce:false,_initialConfig:null,_written:false,method:null,validator:null,getValue:function(){return this.value;},setValue:function(F,B){var E;var A=this.owner;var C=this.name;var D={type:C,prevValue:this.getValue(),newValue:F};if(this.readOnly||(this.writeOnce&&this._written)){return false;}if(this.validator&&!this.validator.call(A,F)){return false;}if(!B){E=A.fireBeforeChangeEvent(D);if(E===false){return false;}}if(this.method){this.method.call(A,F);}this.value=F;this._written=true;D.type=C;if(!B){this.owner.fireChangeEvent(D);}return true;},configure:function(B,C){B=B||{};this._written=false;this._initialConfig=this._initialConfig||{};for(var A in B){if(A&&YAHOO.lang.hasOwnProperty(B,A)){this[A]=B[A];if(C){this._initialConfig[A]=B[A];}}}},resetValue:function(){return this.setValue(this._initialConfig.value);},resetConfig:function(){this.configure(this._initialConfig);},refresh:function(A){this.setValue(this.value,A);}};(function(){var A=YAHOO.util.Lang;YAHOO.util.AttributeProvider=function(){};YAHOO.util.AttributeProvider.prototype={_configs:null,get:function(C){this._configs=this._configs||{};var B=this._configs[C];if(!B){return undefined;}return B.value;},set:function(D,E,B){this._configs=this._configs||{};var C=this._configs[D];if(!C){return false;}return C.setValue(E,B);},getAttributeKeys:function(){this._configs=this._configs;var D=[];var B;for(var C in this._configs){B=this._configs[C];if(A.hasOwnProperty(this._configs,C)&&!A.isUndefined(B)){D[D.length]=C;}}return D;},setAttributes:function(D,B){for(var C in D){if(A.hasOwnProperty(D,C)){this.set(C,D[C],B);}}},resetValue:function(C,B){this._configs=this._configs||{};if(this._configs[C]){this.set(C,this._configs[C]._initialConfig.value,B);return true;}return false;},refresh:function(E,C){this._configs=this._configs;E=((A.isString(E))?[E]:E)||this.getAttributeKeys();for(var D=0,B=E.length;D<B;++D){if(this._configs[E[D]]&&!A.isUndefined(this._configs[E[D]].value)&&!A.isNull(this._configs[E[D]].value)){this._configs[E[D]].refresh(C);}}},register:function(B,C){this.setAttributeConfig(B,C);},getAttributeConfig:function(C){this._configs=this._configs||{};var B=this._configs[C]||{};var D={};for(C in B){if(A.hasOwnProperty(B,C)){D[C]=B[C];}}return D;},setAttributeConfig:function(B,C,D){this._configs=this._configs||{};C=C||{};if(!this._configs[B]){C.name=B;this._configs[B]=this.createAttribute(C);}else{this._configs[B].configure(C,D);}},configureAttribute:function(B,C,D){this.setAttributeConfig(B,C,D);},resetAttributeConfig:function(B){this._configs=this._configs||{};this._configs[B].resetConfig();},subscribe:function(B,C){this._events=this._events||{};if(!(B in this._events)){this._events[B]=this.createEvent(B);}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments);},on:function(){this.subscribe.apply(this,arguments);},addListener:function(){this.subscribe.apply(this,arguments);},fireBeforeChangeEvent:function(C){var B="before";B+=C.type.charAt(0).toUpperCase()+C.type.substr(1)+"Change";C.type=B;return this.fireEvent(C.type,C);},fireChangeEvent:function(B){B.type+="Change";return this.fireEvent(B.type,B);},createAttribute:function(B){return new YAHOO.util.Attribute(B,this);}};YAHOO.augment(YAHOO.util.AttributeProvider,YAHOO.util.EventProvider);})();(function(){var D=YAHOO.util.Dom,F=YAHOO.util.AttributeProvider;YAHOO.util.Element=function(G,H){if(arguments.length){this.init(G,H);}};YAHOO.util.Element.prototype={DOM_EVENTS:null,appendChild:function(G){G=G.get?G.get("element"):G;this.get("element").appendChild(G);},getElementsByTagName:function(G){return this.get("element").getElementsByTagName(G);},hasChildNodes:function(){return this.get("element").hasChildNodes();},insertBefore:function(G,H){G=G.get?G.get("element"):G;H=(H&&H.get)?H.get("element"):H;this.get("element").insertBefore(G,H);},removeChild:function(G){G=G.get?G.get("element"):G;this.get("element").removeChild(G);return true;},replaceChild:function(G,H){G=G.get?G.get("element"):G;H=H.get?H.get("element"):H;return this.get("element").replaceChild(G,H);},initAttributes:function(G){},addListener:function(K,J,L,I){var H=this.get("element");I=I||this;H=this.get("id")||H;var G=this;if(!this._events[K]){if(this.DOM_EVENTS[K]){YAHOO.util.Event.addListener(H,K,function(M){if(M.srcElement&&!M.target){M.target=M.srcElement;}G.fireEvent(K,M);},L,I);}this.createEvent(K,this);}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments);},on:function(){this.addListener.apply(this,arguments);},subscribe:function(){this.addListener.apply(this,arguments);},removeListener:function(H,G){this.unsubscribe.apply(this,arguments);},addClass:function(G){D.addClass(this.get("element"),G);},getElementsByClassName:function(H,G){return D.getElementsByClassName(H,G,this.get("element"));},hasClass:function(G){return D.hasClass(this.get("element"),G);},removeClass:function(G){return D.removeClass(this.get("element"),G);},replaceClass:function(H,G){return D.replaceClass(this.get("element"),H,G);},setStyle:function(I,H){var G=this.get("element");if(!G){return this._queue[this._queue.length]=["setStyle",arguments];}return D.setStyle(G,I,H);},getStyle:function(G){return D.getStyle(this.get("element"),G);},fireQueue:function(){var H=this._queue;for(var I=0,G=H.length;I<G;++I){this[H[I][0]].apply(this,H[I][1]);}},appendTo:function(H,I){H=(H.get)?H.get("element"):D.get(H);this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:H});I=(I&&I.get)?I.get("element"):D.get(I);var G=this.get("element");if(!G){return false;}if(!H){return false;}if(G.parent!=H){if(I){H.insertBefore(G,I);}else{H.appendChild(G);}}this.fireEvent("appendTo",{type:"appendTo",target:H});},get:function(G){var I=this._configs||{};var H=I.element;if(H&&!I[G]&&!YAHOO.lang.isUndefined(H.value[G])){return H.value[G];}return F.prototype.get.call(this,G);},setAttributes:function(L,H){var K=this.get("element");
for(var J in L){if(!this._configs[J]&&!YAHOO.lang.isUndefined(K[J])){this.setAttributeConfig(J);}}for(var I=0,G=this._configOrder.length;I<G;++I){if(L[this._configOrder[I]]!==undefined){this.set(this._configOrder[I],L[this._configOrder[I]],H);}}},set:function(H,J,G){var I=this.get("element");if(!I){this._queue[this._queue.length]=["set",arguments];if(this._configs[H]){this._configs[H].value=J;}return ;}if(!this._configs[H]&&!YAHOO.lang.isUndefined(I[H])){C.call(this,H);}return F.prototype.set.apply(this,arguments);},setAttributeConfig:function(G,I,J){var H=this.get("element");if(H&&!this._configs[G]&&!YAHOO.lang.isUndefined(H[G])){C.call(this,G,I);}else{F.prototype.setAttributeConfig.apply(this,arguments);}this._configOrder.push(G);},getAttributeKeys:function(){var H=this.get("element");var I=F.prototype.getAttributeKeys.call(this);for(var G in H){if(!this._configs[G]){I[G]=I[G]||H[G];}}return I;},createEvent:function(H,G){this._events[H]=true;F.prototype.createEvent.apply(this,arguments);},init:function(H,G){A.apply(this,arguments);}};var A=function(H,G){this._queue=this._queue||[];this._events=this._events||{};this._configs=this._configs||{};this._configOrder=[];G=G||{};G.element=G.element||H||null;this.DOM_EVENTS={"click":true,"dblclick":true,"keydown":true,"keypress":true,"keyup":true,"mousedown":true,"mousemove":true,"mouseout":true,"mouseover":true,"mouseup":true,"focus":true,"blur":true,"submit":true};var I=false;if(YAHOO.lang.isString(H)){C.call(this,"id",{value:G.element});}if(D.get(H)){I=true;E.call(this,G);B.call(this,G);}YAHOO.util.Event.onAvailable(G.element,function(){if(!I){E.call(this,G);}this.fireEvent("available",{type:"available",target:G.element});},this,true);YAHOO.util.Event.onContentReady(G.element,function(){if(!I){B.call(this,G);}this.fireEvent("contentReady",{type:"contentReady",target:G.element});},this,true);};var E=function(G){this.setAttributeConfig("element",{value:D.get(G.element),readOnly:true});};var B=function(G){this.initAttributes(G);this.setAttributes(G,true);this.fireQueue();};var C=function(G,I){var H=this.get("element");I=I||{};I.name=G;I.method=I.method||function(J){H[G]=J;};I.value=I.value||H[G];this._configs[G]=new YAHOO.util.Attribute(I,this);};YAHOO.augment(YAHOO.util.Element,F);})();YAHOO.register("element",YAHOO.util.Element,{version:"2.5.0",build:"897"});

/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
YAHOO.util.Connect={_msxml_progid:["Microsoft.XMLHTTP","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP"],_http_headers:{},_has_http_headers:false,_use_default_post_header:true,_default_post_header:"application/x-www-form-urlencoded; charset=UTF-8",_default_form_header:"application/x-www-form-urlencoded",_use_default_xhr_header:true,_default_xhr_header:"XMLHttpRequest",_has_default_headers:true,_default_headers:{},_isFormSubmit:false,_isFileUpload:false,_formNode:null,_sFormData:null,_poll:{},_timeOut:{},_polling_interval:50,_transaction_id:0,_submitElementValue:null,_hasSubmitListener:(function(){if(YAHOO.util.Event){YAHOO.util.Event.addListener(document,"click",function(B){var A=YAHOO.util.Event.getTarget(B);if(A.nodeName.toLowerCase()=="input"&&(A.type&&A.type.toLowerCase()=="submit")){YAHOO.util.Connect._submitElementValue=encodeURIComponent(A.name)+"="+encodeURIComponent(A.value);}});return true;}return false;})(),startEvent:new YAHOO.util.CustomEvent("start"),completeEvent:new YAHOO.util.CustomEvent("complete"),successEvent:new YAHOO.util.CustomEvent("success"),failureEvent:new YAHOO.util.CustomEvent("failure"),uploadEvent:new YAHOO.util.CustomEvent("upload"),abortEvent:new YAHOO.util.CustomEvent("abort"),_customEvents:{onStart:["startEvent","start"],onComplete:["completeEvent","complete"],onSuccess:["successEvent","success"],onFailure:["failureEvent","failure"],onUpload:["uploadEvent","upload"],onAbort:["abortEvent","abort"]},setProgId:function(A){this._msxml_progid.unshift(A);},setDefaultPostHeader:function(A){if(typeof A=="string"){this._default_post_header=A;}else{if(typeof A=="boolean"){this._use_default_post_header=A;}}},setDefaultXhrHeader:function(A){if(typeof A=="string"){this._default_xhr_header=A;}else{this._use_default_xhr_header=A;}},setPollingInterval:function(A){if(typeof A=="number"&&isFinite(A)){this._polling_interval=A;}},createXhrObject:function(E){var D,A;try{A=new XMLHttpRequest();D={conn:A,tId:E};}catch(C){for(var B=0;B<this._msxml_progid.length;++B){try{A=new ActiveXObject(this._msxml_progid[B]);D={conn:A,tId:E};break;}catch(C){}}}finally{return D;}},getConnectionObject:function(A){var C;var D=this._transaction_id;try{if(!A){C=this.createXhrObject(D);}else{C={};C.tId=D;C.isUpload=true;}if(C){this._transaction_id++;}}catch(B){}finally{return C;}},asyncRequest:function(F,C,E,A){var D=(this._isFileUpload)?this.getConnectionObject(true):this.getConnectionObject();var B=(E&&E.argument)?E.argument:null;if(!D){return null;}else{if(E&&E.customevents){this.initCustomEvents(D,E);}if(this._isFormSubmit){if(this._isFileUpload){this.uploadFile(D,E,C,A);return D;}if(F.toUpperCase()=="GET"){if(this._sFormData.length!==0){C+=((C.indexOf("?")==-1)?"?":"&")+this._sFormData;}}else{if(F.toUpperCase()=="POST"){A=A?this._sFormData+"&"+A:this._sFormData;}}}if(F.toUpperCase()=="GET"&&(E&&E.cache===false)){C+=((C.indexOf("?")==-1)?"?":"&")+"rnd="+new Date().valueOf().toString();}D.conn.open(F,C,true);if(this._use_default_xhr_header){if(!this._default_headers["X-Requested-With"]){this.initHeader("X-Requested-With",this._default_xhr_header,true);}}if((F.toUpperCase()=="POST"&&this._use_default_post_header)&&this._isFormSubmit===false){this.initHeader("Content-Type",this._default_post_header);}if(this._has_default_headers||this._has_http_headers){this.setHeader(D);}this.handleReadyState(D,E);D.conn.send(A||"");if(this._isFormSubmit===true){this.resetFormState();}this.startEvent.fire(D,B);if(D.startEvent){D.startEvent.fire(D,B);}return D;}},initCustomEvents:function(A,C){for(var B in C.customevents){if(this._customEvents[B][0]){A[this._customEvents[B][0]]=new YAHOO.util.CustomEvent(this._customEvents[B][1],(C.scope)?C.scope:null);A[this._customEvents[B][0]].subscribe(C.customevents[B]);}}},handleReadyState:function(C,D){var B=this;var A=(D&&D.argument)?D.argument:null;if(D&&D.timeout){this._timeOut[C.tId]=window.setTimeout(function(){B.abort(C,D,true);},D.timeout);}this._poll[C.tId]=window.setInterval(function(){if(C.conn&&C.conn.readyState===4){window.clearInterval(B._poll[C.tId]);delete B._poll[C.tId];if(D&&D.timeout){window.clearTimeout(B._timeOut[C.tId]);delete B._timeOut[C.tId];}B.completeEvent.fire(C,A);if(C.completeEvent){C.completeEvent.fire(C,A);}B.handleTransactionResponse(C,D);}},this._polling_interval);},handleTransactionResponse:function(F,G,A){var D,C;var B=(G&&G.argument)?G.argument:null;try{if(F.conn.status!==undefined&&F.conn.status!==0){D=F.conn.status;}else{D=13030;}}catch(E){D=13030;}if(D>=200&&D<300||D===1223){C=this.createResponseObject(F,B);if(G&&G.success){if(!G.scope){G.success(C);}else{G.success.apply(G.scope,[C]);}}this.successEvent.fire(C);if(F.successEvent){F.successEvent.fire(C);}}else{switch(D){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:C=this.createExceptionObject(F.tId,B,(A?A:false));if(G&&G.failure){if(!G.scope){G.failure(C);}else{G.failure.apply(G.scope,[C]);}}break;default:C=this.createResponseObject(F,B);if(G&&G.failure){if(!G.scope){G.failure(C);}else{G.failure.apply(G.scope,[C]);}}}this.failureEvent.fire(C);if(F.failureEvent){F.failureEvent.fire(C);}}this.releaseObject(F);C=null;},createResponseObject:function(A,G){var D={};var I={};try{var C=A.conn.getAllResponseHeaders();var F=C.split("\n");for(var E=0;E<F.length;E++){var B=F[E].indexOf(":");if(B!=-1){I[F[E].substring(0,B)]=F[E].substring(B+2);}}}catch(H){}D.tId=A.tId;D.status=(A.conn.status==1223)?204:A.conn.status;D.statusText=(A.conn.status==1223)?"No Content":A.conn.statusText;D.getResponseHeader=I;D.getAllResponseHeaders=C;D.responseText=A.conn.responseText;D.responseXML=A.conn.responseXML;if(G){D.argument=G;}return D;},createExceptionObject:function(H,D,A){var F=0;var G="communication failure";var C=-1;var B="transaction aborted";var E={};E.tId=H;if(A){E.status=C;E.statusText=B;}else{E.status=F;E.statusText=G;}if(D){E.argument=D;}return E;},initHeader:function(A,D,C){var B=(C)?this._default_headers:this._http_headers;B[A]=D;if(C){this._has_default_headers=true;}else{this._has_http_headers=true;
}},setHeader:function(A){if(this._has_default_headers){for(var B in this._default_headers){if(YAHOO.lang.hasOwnProperty(this._default_headers,B)){A.conn.setRequestHeader(B,this._default_headers[B]);}}}if(this._has_http_headers){for(var B in this._http_headers){if(YAHOO.lang.hasOwnProperty(this._http_headers,B)){A.conn.setRequestHeader(B,this._http_headers[B]);}}delete this._http_headers;this._http_headers={};this._has_http_headers=false;}},resetDefaultHeaders:function(){delete this._default_headers;this._default_headers={};this._has_default_headers=false;},setForm:function(K,E,B){this.resetFormState();var J;if(typeof K=="string"){J=(document.getElementById(K)||document.forms[K]);}else{if(typeof K=="object"){J=K;}else{return ;}}if(E){var F=this.createFrame((window.location.href.toLowerCase().indexOf("https")===0||B)?true:false);this._isFormSubmit=true;this._isFileUpload=true;this._formNode=J;return ;}var A,I,G,L;var H=false;for(var D=0;D<J.elements.length;D++){A=J.elements[D];L=A.disabled;I=A.name;G=A.value;if(!L&&I){switch(A.type){case"select-one":case"select-multiple":for(var C=0;C<A.options.length;C++){if(A.options[C].selected){if(window.ActiveXObject){this._sFormData+=encodeURIComponent(I)+"="+encodeURIComponent(A.options[C].attributes["value"].specified?A.options[C].value:A.options[C].text)+"&";}else{this._sFormData+=encodeURIComponent(I)+"="+encodeURIComponent(A.options[C].hasAttribute("value")?A.options[C].value:A.options[C].text)+"&";}}}break;case"radio":case"checkbox":if(A.checked){this._sFormData+=encodeURIComponent(I)+"="+encodeURIComponent(G)+"&";}break;case"file":case undefined:case"reset":case"button":break;case"submit":if(H===false){if(this._hasSubmitListener&&this._submitElementValue){this._sFormData+=this._submitElementValue+"&";}else{this._sFormData+=encodeURIComponent(I)+"="+encodeURIComponent(G)+"&";}H=true;}break;default:this._sFormData+=encodeURIComponent(I)+"="+encodeURIComponent(G)+"&";}}}this._isFormSubmit=true;this._sFormData=this._sFormData.substr(0,this._sFormData.length-1);this.initHeader("Content-Type",this._default_form_header);return this._sFormData;},resetFormState:function(){this._isFormSubmit=false;this._isFileUpload=false;this._formNode=null;this._sFormData="";},createFrame:function(A){var B="yuiIO"+this._transaction_id;var C;if(window.ActiveXObject){C=document.createElement("<iframe id=\""+B+"\" name=\""+B+"\" />");if(typeof A=="boolean"){C.src="javascript:false";}}else{C=document.createElement("iframe");C.id=B;C.name=B;}C.style.position="absolute";C.style.top="-1000px";C.style.left="-1000px";document.body.appendChild(C);},appendPostData:function(A){var D=[];var B=A.split("&");for(var C=0;C<B.length;C++){var E=B[C].indexOf("=");if(E!=-1){D[C]=document.createElement("input");D[C].type="hidden";D[C].name=B[C].substring(0,E);D[C].value=B[C].substring(E+1);this._formNode.appendChild(D[C]);}}return D;},uploadFile:function(D,M,E,C){var N=this;var H="yuiIO"+D.tId;var I="multipart/form-data";var K=document.getElementById(H);var J=(M&&M.argument)?M.argument:null;var B={action:this._formNode.getAttribute("action"),method:this._formNode.getAttribute("method"),target:this._formNode.getAttribute("target")};this._formNode.setAttribute("action",E);this._formNode.setAttribute("method","POST");this._formNode.setAttribute("target",H);if(this._formNode.encoding){this._formNode.setAttribute("encoding",I);}else{this._formNode.setAttribute("enctype",I);}if(C){var L=this.appendPostData(C);}this._formNode.submit();this.startEvent.fire(D,J);if(D.startEvent){D.startEvent.fire(D,J);}if(M&&M.timeout){this._timeOut[D.tId]=window.setTimeout(function(){N.abort(D,M,true);},M.timeout);}if(L&&L.length>0){for(var G=0;G<L.length;G++){this._formNode.removeChild(L[G]);}}for(var A in B){if(YAHOO.lang.hasOwnProperty(B,A)){if(B[A]){this._formNode.setAttribute(A,B[A]);}else{this._formNode.removeAttribute(A);}}}this.resetFormState();var F=function(){if(M&&M.timeout){window.clearTimeout(N._timeOut[D.tId]);delete N._timeOut[D.tId];}N.completeEvent.fire(D,J);if(D.completeEvent){D.completeEvent.fire(D,J);}var P={};P.tId=D.tId;P.argument=M.argument;try{P.responseText=K.contentWindow.document.body?K.contentWindow.document.body.innerHTML:K.contentWindow.document.documentElement.textContent;P.responseXML=K.contentWindow.document.XMLDocument?K.contentWindow.document.XMLDocument:K.contentWindow.document;}catch(O){}if(M&&M.upload){if(!M.scope){M.upload(P);}else{M.upload.apply(M.scope,[P]);}}N.uploadEvent.fire(P);if(D.uploadEvent){D.uploadEvent.fire(P);}YAHOO.util.Event.removeListener(K,"load",F);setTimeout(function(){document.body.removeChild(K);N.releaseObject(D);},100);};YAHOO.util.Event.addListener(K,"load",F);},abort:function(E,G,A){var D;var B=(G&&G.argument)?G.argument:null;if(E&&E.conn){if(this.isCallInProgress(E)){E.conn.abort();window.clearInterval(this._poll[E.tId]);delete this._poll[E.tId];if(A){window.clearTimeout(this._timeOut[E.tId]);delete this._timeOut[E.tId];}D=true;}}else{if(E&&E.isUpload===true){var C="yuiIO"+E.tId;var F=document.getElementById(C);if(F){YAHOO.util.Event.removeListener(F,"load");document.body.removeChild(F);if(A){window.clearTimeout(this._timeOut[E.tId]);delete this._timeOut[E.tId];}D=true;}}else{D=false;}}if(D===true){this.abortEvent.fire(E,B);if(E.abortEvent){E.abortEvent.fire(E,B);}this.handleTransactionResponse(E,G,true);}return D;},isCallInProgress:function(B){if(B&&B.conn){return B.conn.readyState!==4&&B.conn.readyState!==0;}else{if(B&&B.isUpload===true){var A="yuiIO"+B.tId;return document.getElementById(A)?true:false;}else{return false;}}},releaseObject:function(A){if(A&&A.conn){A.conn=null;A=null;}}};YAHOO.register("connection",YAHOO.util.Connect,{version:"2.5.0",build:"897"});

/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
(function(){YAHOO.widget.TabView=function(K,J){J=J||{};if(arguments.length==1&&!YAHOO.lang.isString(K)&&!K.nodeName){J=K;K=J.element||null;}if(!K&&!J.element){K=I.call(this,J);}YAHOO.widget.TabView.superclass.constructor.call(this,K,J);};YAHOO.extend(YAHOO.widget.TabView,YAHOO.util.Element);var F=YAHOO.widget.TabView.prototype;var E=YAHOO.util.Dom;var H=YAHOO.util.Event;var D=YAHOO.widget.Tab;F.CLASSNAME="yui-navset";F.TAB_PARENT_CLASSNAME="yui-nav";F.CONTENT_PARENT_CLASSNAME="yui-content";F._tabParent=null;F._contentParent=null;F.addTab=function(M,O){var P=this.get("tabs");if(!P){this._queue[this._queue.length]=["addTab",arguments];return false;}O=(O===undefined)?P.length:O;var R=this.getTab(O);var T=this;var L=this.get("element");var S=this._tabParent;var Q=this._contentParent;var J=M.get("element");var K=M.get("contentEl");if(R){S.insertBefore(J,R.get("element"));}else{S.appendChild(J);}if(K&&!E.isAncestor(Q,K)){Q.appendChild(K);}if(!M.get("active")){M.set("contentVisible",false,true);}else{this.set("activeTab",M,true);}var N=function(V){YAHOO.util.Event.preventDefault(V);var U=false;if(this==T.get("activeTab")){U=true;}T.set("activeTab",this,U);};M.addListener(M.get("activationEvent"),N);M.addListener("activationEventChange",function(U){if(U.prevValue!=U.newValue){M.removeListener(U.prevValue,N);M.addListener(U.newValue,N);}});P.splice(O,0,M);};F.DOMEventHandler=function(P){var K=this.get("element");var Q=YAHOO.util.Event.getTarget(P);var S=this._tabParent;if(E.isAncestor(S,Q)){var L;var M=null;var J;var R=this.get("tabs");for(var N=0,O=R.length;N<O;N++){L=R[N].get("element");J=R[N].get("contentEl");if(Q==L||E.isAncestor(L,Q)){M=R[N];break;}}if(M){M.fireEvent(P.type,P);}}};F.getTab=function(J){return this.get("tabs")[J];};F.getTabIndex=function(N){var K=null;var M=this.get("tabs");for(var L=0,J=M.length;L<J;++L){if(N==M[L]){K=L;break;}}return K;};F.removeTab=function(M){var L=this.get("tabs").length;var K=this.getTabIndex(M);var J=K+1;if(M==this.get("activeTab")){if(L>1){if(K+1==L){this.set("activeIndex",K-1);}else{this.set("activeIndex",K+1);}}}this._tabParent.removeChild(M.get("element"));this._contentParent.removeChild(M.get("contentEl"));this._configs.tabs.value.splice(K,1);};F.toString=function(){var J=this.get("id")||this.get("tagName");return"TabView "+J;};F.contentTransition=function(K,J){K.set("contentVisible",true);J.set("contentVisible",false);};F.initAttributes=function(J){YAHOO.widget.TabView.superclass.initAttributes.call(this,J);if(!J.orientation){J.orientation="top";}var L=this.get("element");if(!YAHOO.util.Dom.hasClass(L,this.CLASSNAME)){YAHOO.util.Dom.addClass(L,this.CLASSNAME);}this.setAttributeConfig("tabs",{value:[],readOnly:true});this._tabParent=this.getElementsByClassName(this.TAB_PARENT_CLASSNAME,"ul")[0]||G.call(this);this._contentParent=this.getElementsByClassName(this.CONTENT_PARENT_CLASSNAME,"div")[0]||C.call(this);this.setAttributeConfig("orientation",{value:J.orientation,method:function(M){var N=this.get("orientation");this.addClass("yui-navset-"+M);if(N!=M){this.removeClass("yui-navset-"+N);}switch(M){case"bottom":this.appendChild(this._tabParent);break;}}});this.setAttributeConfig("activeIndex",{value:J.activeIndex,method:function(M){this.set("activeTab",this.getTab(M));},validator:function(M){return !this.getTab(M).get("disabled");}});this.setAttributeConfig("activeTab",{value:J.activeTab,method:function(N){var M=this.get("activeTab");if(N){N.set("active",true);this._configs["activeIndex"].value=this.getTabIndex(N);}if(M&&M!=N){M.set("active",false);}if(M&&N!=M){this.contentTransition(N,M);}else{if(N){N.set("contentVisible",true);}}},validator:function(M){return !M.get("disabled");}});if(this._tabParent){B.call(this);}this.DOM_EVENTS.submit=false;this.DOM_EVENTS.focus=false;this.DOM_EVENTS.blur=false;for(var K in this.DOM_EVENTS){if(YAHOO.lang.hasOwnProperty(this.DOM_EVENTS,K)){this.addListener.call(this,K,this.DOMEventHandler);}}};var B=function(){var Q,L,P;var O=this.get("element");var N=A(this._tabParent);var K=A(this._contentParent);for(var M=0,J=N.length;M<J;++M){L={};if(K[M]){L.contentEl=K[M];}Q=new YAHOO.widget.Tab(N[M],L);this.addTab(Q);if(Q.hasClass(Q.ACTIVE_CLASSNAME)){this._configs.activeTab.value=Q;this._configs.activeIndex.value=this.getTabIndex(Q);}}};var I=function(J){var K=document.createElement("div");if(this.CLASSNAME){K.className=this.CLASSNAME;}return K;};var G=function(J){var K=document.createElement("ul");if(this.TAB_PARENT_CLASSNAME){K.className=this.TAB_PARENT_CLASSNAME;}this.get("element").appendChild(K);return K;};var C=function(J){var K=document.createElement("div");if(this.CONTENT_PARENT_CLASSNAME){K.className=this.CONTENT_PARENT_CLASSNAME;}this.get("element").appendChild(K);return K;};var A=function(M){var K=[];var N=M.childNodes;for(var L=0,J=N.length;L<J;++L){if(N[L].nodeType==1){K[K.length]=N[L];}}return K;};})();(function(){var E=YAHOO.util.Dom,J=YAHOO.util.Event;var B=function(L,K){K=K||{};if(arguments.length==1&&!YAHOO.lang.isString(L)&&!L.nodeName){K=L;L=K.element;}if(!L&&!K.element){L=H.call(this,K);}this.loadHandler={success:function(M){this.set("content",M.responseText);},failure:function(M){}};B.superclass.constructor.call(this,L,K);this.DOM_EVENTS={};};YAHOO.extend(B,YAHOO.util.Element);var F=B.prototype;F.LABEL_TAGNAME="em";F.ACTIVE_CLASSNAME="selected";F.ACTIVE_TITLE="active";F.DISABLED_CLASSNAME="disabled";F.LOADING_CLASSNAME="loading";F.dataConnection=null;F.loadHandler=null;F._loading=false;F.toString=function(){var K=this.get("element");var L=K.id||K.tagName;return"Tab "+L;};F.initAttributes=function(K){K=K||{};B.superclass.initAttributes.call(this,K);var M=this.get("element");this.setAttributeConfig("activationEvent",{value:K.activationEvent||"click"});this.setAttributeConfig("labelEl",{value:K.labelEl||G.call(this),method:function(N){var O=this.get("labelEl");if(O){if(O==N){return false;}this.replaceChild(N,O);}else{if(M.firstChild){this.insertBefore(N,M.firstChild);}else{this.appendChild(N);}}}});this.setAttributeConfig("label",{value:K.label||D.call(this),method:function(O){var N=this.get("labelEl");
if(!N){this.set("labelEl",I.call(this));}C.call(this,O);}});this.setAttributeConfig("contentEl",{value:K.contentEl||document.createElement("div"),method:function(N){var O=this.get("contentEl");if(O){if(O==N){return false;}this.replaceChild(N,O);}}});this.setAttributeConfig("content",{value:K.content,method:function(N){this.get("contentEl").innerHTML=N;}});var L=false;this.setAttributeConfig("dataSrc",{value:K.dataSrc});this.setAttributeConfig("cacheData",{value:K.cacheData||false,validator:YAHOO.lang.isBoolean});this.setAttributeConfig("loadMethod",{value:K.loadMethod||"GET",validator:YAHOO.lang.isString});this.setAttributeConfig("dataLoaded",{value:false,validator:YAHOO.lang.isBoolean,writeOnce:true});this.setAttributeConfig("dataTimeout",{value:K.dataTimeout||null,validator:YAHOO.lang.isNumber});this.setAttributeConfig("active",{value:K.active||this.hasClass(this.ACTIVE_CLASSNAME),method:function(N){if(N===true){this.addClass(this.ACTIVE_CLASSNAME);this.set("title",this.ACTIVE_TITLE);}else{this.removeClass(this.ACTIVE_CLASSNAME);this.set("title","");}},validator:function(N){return YAHOO.lang.isBoolean(N)&&!this.get("disabled");}});this.setAttributeConfig("disabled",{value:K.disabled||this.hasClass(this.DISABLED_CLASSNAME),method:function(N){if(N===true){E.addClass(this.get("element"),this.DISABLED_CLASSNAME);}else{E.removeClass(this.get("element"),this.DISABLED_CLASSNAME);}},validator:YAHOO.lang.isBoolean});this.setAttributeConfig("href",{value:K.href||this.getElementsByTagName("a")[0].getAttribute("href",2)||"#",method:function(N){this.getElementsByTagName("a")[0].href=N;},validator:YAHOO.lang.isString});this.setAttributeConfig("contentVisible",{value:K.contentVisible,method:function(N){if(N){this.get("contentEl").style.display="block";if(this.get("dataSrc")){if(!this._loading&&!(this.get("dataLoaded")&&this.get("cacheData"))){A.call(this);}}}else{this.get("contentEl").style.display="none";}},validator:YAHOO.lang.isBoolean});};var H=function(K){var O=document.createElement("li");var L=document.createElement("a");L.href=K.href||"#";O.appendChild(L);var N=K.label||null;var M=K.labelEl||null;if(M){if(!N){N=D.call(this,M);}}else{M=I.call(this);}L.appendChild(M);return O;};var G=function(){return this.getElementsByTagName(this.LABEL_TAGNAME)[0];};var I=function(){var K=document.createElement(this.LABEL_TAGNAME);return K;};var C=function(K){var L=this.get("labelEl");L.innerHTML=K;};var D=function(){var K,L=this.get("labelEl");if(!L){return undefined;}return L.innerHTML;};var A=function(){if(!YAHOO.util.Connect){return false;}E.addClass(this.get("contentEl").parentNode,this.LOADING_CLASSNAME);this._loading=true;this.dataConnection=YAHOO.util.Connect.asyncRequest(this.get("loadMethod"),this.get("dataSrc"),{success:function(K){this.loadHandler.success.call(this,K);this.set("dataLoaded",true);this.dataConnection=null;E.removeClass(this.get("contentEl").parentNode,this.LOADING_CLASSNAME);this._loading=false;},failure:function(K){this.loadHandler.failure.call(this,K);this.dataConnection=null;E.removeClass(this.get("contentEl").parentNode,this.LOADING_CLASSNAME);this._loading=false;},scope:this,timeout:this.get("dataTimeout")});};YAHOO.widget.Tab=B;})();YAHOO.register("tabview",YAHOO.widget.TabView,{version:"2.5.0",build:"897"});

/*!
 * Copyright (c) 2010 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;

	};

})());
/*

Cufon.replace('.main_menu li ul li a', {  color: submain_menu_a, hover: { color: submain_menu_a_hover}});
Cufon.replace('.main_menu li a', {  color: main_menu_a, hover: { color: main_menu_a_hover}});


Cufon.replace('.main_menu li ul li a, .main_menu li a, .intro_text, .custom_title ,.some_title, h1, h2, h3, h4, h5, h6, #cufon_ul ul li, .hot_news');
*/

/*!
 * The following copyright notice may not be removed under any circumstances.
 * 
 * Copyright:
 * Copyright 1990-2001 Bitstream Inc. All rights reserved.
 */
Cufon.registerFont({"w":180,"face":{"font-family":"Futura Bk BT","font-weight":400,"font-stretch":"normal","units-per-em":"360","panose-1":"2 11 5 2 2 2 4 2 3 3","ascent":"274","descent":"-86","x-height":"7","bbox":"-60 -347.036 396 85","underline-thickness":"20.5664","underline-position":"-29.0039","unicode-range":"U+0020-U+F002"},"glyphs":{" ":{"w":106},"!":{"d":"58,7v-12,0,-21,-9,-21,-21v0,-12,9,-21,21,-21v11,0,20,10,20,21v0,11,-9,21,-20,21xm44,-58r0,-205r28,0r0,205r-28,0","w":114},"\"":{"d":"87,-252r0,97r-21,0r0,-97r21,0xm37,-252r0,97r-20,0r0,-97r20,0","w":103},"#":{"d":"171,-152r-46,0r-17,48r46,0xm162,-256r-29,83r46,0r29,-83r25,0r-29,83r54,0r-7,21r-55,0r-16,48r58,0r-8,22r-58,0r-29,82r-26,0r30,-82r-47,0r-30,82r-25,0r30,-82r-57,0r8,-22r56,0r17,-48r-60,0r7,-21r61,0r29,-83r26,0","w":276},"$":{"d":"30,-200v0,-39,27,-61,64,-64r0,-18r14,0r0,18v30,3,50,16,61,39r-26,16v-7,-15,-17,-26,-35,-29r0,84v43,16,72,34,72,83v0,44,-30,75,-72,78r0,26r-14,0r0,-26v-41,-2,-64,-24,-72,-61r26,-15v5,27,19,46,46,49r0,-106v-37,-14,-64,-32,-64,-74xm94,-238v-28,2,-43,36,-26,60v5,7,14,13,26,18r0,-78xm108,-20v37,-2,52,-49,32,-79v-6,-8,-17,-15,-32,-21r0,100","w":212},"%":{"d":"205,-126v37,0,53,28,53,66v0,38,-17,67,-53,67v-36,0,-53,-29,-53,-67v0,-38,16,-66,53,-66xm205,-108v-38,0,-37,97,0,97v37,0,38,-97,0,-97xm63,-242v-37,0,-38,97,0,97v21,0,27,-22,27,-48v0,-27,-5,-49,-27,-49xm63,-260v36,0,53,29,53,67v0,38,-16,66,-53,66v-37,0,-53,-28,-53,-66v0,-38,17,-67,53,-67xm48,7r148,-267r21,0r-147,267r-22,0","w":266},"&":{"d":"54,-95v-28,42,20,93,68,66v10,-5,20,-12,31,-22r-63,-75v-13,9,-31,22,-36,31xm106,-230v-29,-2,-39,35,-21,54r16,18v34,-6,53,-69,5,-72xm223,-89v-10,15,-20,28,-33,40r42,49r-38,0r-24,-30v-38,51,-160,47,-155,-38v2,-40,27,-61,59,-79v-12,-15,-28,-29,-27,-55v0,-32,26,-54,59,-54v34,0,61,21,59,54v-2,34,-21,47,-47,65r56,67v11,-11,20,-26,30,-40","w":240},"'":{"d":"37,-252r0,97r-20,0r0,-97r20,0","w":53},"(":{"d":"90,-261v-48,84,-50,248,0,330r-19,10v-54,-89,-57,-261,0,-349","w":103},")":{"d":"33,-270v55,88,55,260,0,349r-19,-10v50,-82,48,-246,0,-330","w":103},"*":{"d":"27,-158r-9,-15r39,-23r-39,-23r9,-15r40,23r-1,-46r18,0r0,45r38,-22r9,16r-39,22r39,22r-9,16r-38,-22r0,44r-18,0r0,-45","w":149},"+":{"d":"160,-215r0,97r95,0r0,21r-95,0r0,97r-20,0r0,-97r-95,0r0,-21r95,0r0,-97r20,0","w":299},",":{"d":"21,51r34,-96r30,11r-44,93","w":106},"-":{"d":"25,-94r82,0r0,28r-82,0r0,-28","w":131,"k":{"\u0111":-7,"\u0153":-7,"\u0152":-13,"\u00f8":-7,"\u00d8":-13,"\u00c6":-10,"x":6,"s":-7,"q":-7,"o":-7,"e":-7,"d":-7,"c":-7,"Y":28,"X":13,"W":20,"V":21,"T":33,"S":-7,"Q":-13,"O":-13,"J":-20,"G":-13,"C":-7}},".":{"d":"53,3v-11,0,-21,-9,-21,-20v0,-12,9,-21,21,-21v12,0,21,9,21,21v0,11,-10,20,-21,20","w":106},"\/":{"d":"126,-263r24,0r-126,296r-24,0","w":150},"0":{"d":"195,-127v0,73,-25,134,-88,134v-63,0,-90,-62,-90,-134v0,-71,26,-133,89,-133v64,0,89,59,89,133xm49,-127v0,56,12,109,57,109v46,0,58,-51,58,-108v0,-59,-11,-109,-58,-109v-45,0,-57,53,-57,108","w":212},"1":{"d":"98,0r0,-228r-52,0r17,-27r65,0r0,255r-30,0","w":212},"2":{"d":"103,-260v70,0,100,65,66,122v-17,29,-63,78,-91,109r97,0r0,29r-155,0v36,-45,133,-144,133,-187v0,-27,-23,-45,-51,-45v-33,0,-51,21,-50,56r-29,0v-3,-53,28,-84,80,-84","w":212},"3":{"d":"98,7v-47,0,-80,-24,-78,-72r31,0v-1,29,19,45,48,45v34,0,53,-17,53,-49v0,-39,-25,-54,-65,-50r0,-25v38,2,62,-11,62,-46v0,-27,-18,-45,-46,-44v-30,0,-46,14,-48,43r-31,0v3,-44,32,-69,80,-69v45,-1,77,25,77,68v0,32,-19,55,-46,61v30,5,50,28,49,63v0,48,-35,76,-86,75","w":212},"4":{"d":"128,0r0,-55r-120,0r138,-205r13,0r0,180r30,0r0,25r-30,0r0,55r-31,0xm128,-80r0,-113r-75,113r75,0","w":212},"5":{"d":"156,-85v4,-63,-81,-78,-119,-43r-5,-2r30,-125r113,0r0,26r-92,0r-16,67v56,-28,128,8,122,74v11,93,-127,128,-172,57r21,-25v10,22,28,36,57,36v38,0,59,-27,61,-65","w":212},"6":{"d":"104,-132v-31,-1,-51,25,-51,57v0,34,21,56,53,56v32,0,53,-23,53,-56v0,-35,-21,-57,-55,-57xm100,7v-49,0,-79,-35,-79,-84v0,-51,77,-144,109,-191r26,15r-83,108v49,-35,117,4,117,67v0,53,-36,85,-90,85","w":212},"7":{"d":"41,-3r109,-225r-119,0r0,-27r163,0r-128,265","w":212},"8":{"d":"152,-194v0,-26,-18,-43,-45,-43v-27,0,-46,16,-46,43v0,27,18,42,45,42v29,0,46,-15,46,-42xm52,-70v0,33,20,52,54,52v34,0,54,-19,54,-52v1,-34,-21,-53,-54,-53v-33,0,-54,21,-54,53xm20,-68v1,-37,22,-59,53,-68v-78,-24,-43,-132,34,-124v81,-11,104,107,33,124v31,9,53,31,53,68v0,48,-35,76,-86,75v-50,0,-88,-26,-87,-75","w":212},"9":{"d":"106,-121v30,1,52,-25,52,-57v0,-34,-21,-57,-53,-57v-32,0,-53,23,-53,57v0,35,20,57,54,57xm111,-260v48,0,79,36,78,84v0,50,-76,143,-108,190r-27,-14r83,-108v-49,32,-117,-6,-117,-67v0,-53,37,-85,91,-85","w":212},":":{"d":"58,-115v-12,0,-21,-9,-21,-21v0,-12,10,-21,21,-21v11,0,20,10,20,21v0,11,-9,21,-20,21xm58,3v-12,0,-21,-9,-21,-21v0,-11,10,-20,21,-20v11,0,20,9,20,20v0,11,-9,21,-20,21","w":114},";":{"d":"71,-115v-12,0,-21,-9,-21,-21v0,-12,10,-21,21,-21v11,0,21,9,21,21v0,12,-9,21,-21,21xm23,51r34,-96r29,11r-43,93","w":114},"<":{"d":"253,-179r-175,72r175,71r0,23r-207,-85r0,-18r207,-85r0,22","w":299},"=":{"d":"255,-84r0,21r-210,0r0,-21r210,0xm255,-151r0,20r-210,0r0,-20r210,0","w":299},">":{"d":"253,-116r0,18r-207,85r0,-23r176,-71r-176,-72r0,-22","w":299},"?":{"d":"93,-81v20,0,27,-15,27,-36r27,0v2,39,-18,62,-55,62v-32,0,-51,-20,-51,-52v0,-51,81,-66,84,-103v1,-16,-14,-27,-31,-27v-21,0,-34,14,-33,37r-29,0v-2,-39,24,-63,61,-63v37,-1,62,20,62,56v0,50,-86,64,-86,104v0,14,10,22,24,22xm90,7v-12,0,-21,-9,-21,-21v0,-12,9,-21,21,-21v12,0,20,10,21,21v0,12,-9,21,-21,21","w":187},"@":{"d":"43,-90v-7,128,167,151,248,90r8,12v-31,22,-67,39,-116,38v-97,-2,-163,-48,-163,-142v0,-104,72,-164,176,-164v83,0,144,40,144,119v0,66,-34,111,-97,116v-23,2,-37,-9,-35,-32v-10,18,-26,31,-52,32v-37,0,-51,-22,-55,-59v-7,-70,90,-134,126,-68r10,-22r20,0r-27,114v0,10,7,17,19,16v46,-5,68,-46,69,-95v2,-65,-55,-105,-125,-103v-92,3,-145,56,-150,148xm125,-78v0,40,42,50,67,27v20,-17,21,-48,30,-75v-4,-19,-16,-33,-37,-33v-37,0,-60,41,-60,81","w":360},"A":{"d":"112,-200r-41,95r82,0xm112,-268r117,268r-33,0r-33,-79r-101,0r-33,79r-33,0","w":225,"k":{"\u201e":-7,"\u201a":-7,"\u2019":43,"\u2018":46,"\u201d":43,"\u201c":46,"\u0152":6,"\u00d8":6,"Y":20,"W":6,"V":6,"U":6,"T":20,"Q":6,"O":6,"G":6,"C":6,";":-7,":":-7,".":-11,",":-11}},"B":{"d":"187,-73v0,75,-72,77,-156,73r0,-257v76,-3,145,-3,144,67v0,29,-16,46,-38,54v30,4,50,29,50,63xm154,-73v0,-48,-42,-50,-93,-48r0,94v51,1,93,2,93,-46xm144,-186v0,-47,-36,-45,-83,-45r0,86v44,0,83,3,83,-41","w":202,"k":{"\u201e":6,"\u201a":6,"\u2019":6,"\u201d":6,"Y":6,"W":6,"V":6,".":10,"-":-10,",":10}},"C":{"d":"155,-263v36,-1,61,12,85,27r0,40v-22,-23,-47,-39,-86,-39v-63,0,-99,44,-103,107v-6,105,137,140,189,66r0,41v-23,16,-51,29,-87,28v-81,-3,-134,-54,-134,-134v0,-83,52,-133,136,-136","w":261,"k":{"\u2019":-10,"\u201d":-10,";":-7,":":-7,"-":-8}},"D":{"d":"210,-129v0,-84,-49,-107,-148,-100r0,200v98,6,148,-15,148,-100xm242,-128v5,114,-85,137,-211,128r0,-257r49,0v114,-7,158,34,162,129","w":261,"k":{"\u201e":33,"\u201a":33,"\u2019":6,"\u2018":6,"\u201d":6,"\u201c":6,"\u00c5":6,"Y":6,"W":6,"V":6,"A":6,".":21,"-":-11,",":21}},"E":{"d":"31,0r0,-257r136,0r0,28r-105,0r0,73r105,0r0,29r-105,0r0,99r105,0r0,28r-136,0","w":187,"k":{";":-7,":":-7,".":-7,"-":-7,",":-7}},"F":{"d":"31,0r0,-257r136,0r0,28r-105,0r0,73r105,0r0,29r-105,0r0,127r-31,0","w":182,"k":{"\u201e":73,"\u201a":73,"\u203a":-7,"\u2019":-7,"\u201d":-7,"\u0153":13,"\u00bb":-7,"\u00ab":13,"\u00f8":13,"\u00e6":6,"\u00c5":20,"u":6,"r":6,"o":13,"i":6,"e":6,"a":6,"A":20,";":15,":":15,".":71,"-":18,",":71}},"G":{"d":"52,-126v0,86,102,138,165,82v17,-16,27,-36,29,-61r-74,0r0,-28r107,0v3,87,-46,140,-129,140v-83,0,-124,-53,-131,-133v-12,-135,177,-183,242,-83r-25,20v-16,-28,-42,-46,-83,-46v-60,-1,-101,46,-101,109","w":293,"k":{"\u2019":16,"\u201d":16,"Y":6,"T":6,";":-7,":":-7,".":10,"-":-8,",":10}},"H":{"d":"31,0r0,-257r31,0r0,99r136,0r0,-99r31,0r0,257r-31,0r0,-129r-136,0r0,129r-31,0","w":259,"k":{".":6,",":6}},"I":{"d":"31,0r0,-257r31,0r0,257r-31,0","w":93},"J":{"d":"55,-21v24,0,25,-19,25,-51r0,-185r31,0r0,200v10,69,-79,82,-111,38r20,-20v11,11,18,18,35,18","w":139,"k":{"\u201e":20,"\u201a":20,"\u2019":6,"\u201d":6,";":11,":":11,".":18,",":18}},"K":{"d":"31,0r0,-257r30,0r0,114r108,-114r37,0r-111,115r122,142r-40,0r-116,-139r0,139r-30,0","w":212,"k":{"\u201e":-11,"\u201a":-11,"\u2019":8,"\u2018":13,"\u201d":8,"\u201c":13,"\u0153":6,"\u0152":13,"\u00ab":10,"\u00f8":6,"\u00e6":6,"\u00d8":13,"y":13,"u":6,"o":6,"e":6,"a":6,"Y":13,"W":13,"U":6,"T":13,"O":13,"C":13,";":-7,":":-7,".":-7,"-":11,",":-7}},"L":{"d":"31,0r0,-257r31,0r0,228r97,0r0,29r-128,0","w":164,"k":{"\u2019":48,"\u2018":60,"\u201d":48,"\u201c":60,"\u0153":6,"\u0152":13,"\u00f8":6,"\u00e6":6,"\u00d8":13,"y":13,"u":6,"o":6,"e":6,"a":6,"Y":26,"W":20,"V":20,"U":6,"T":20,"O":13,";":-7,":":-7,".":-7,"-":6,",":-7}},"M":{"d":"151,10r-80,-185r-33,175r-29,0r52,-268r90,213r90,-213r52,268r-30,0r-33,-175","w":301,"k":{"\u2018":6,"\u201c":6}},"N":{"d":"31,0r0,-268r188,206r0,-195r29,0r0,267r-188,-203r0,193r-29,0","w":278,"k":{"\u201e":13,"\u201a":13,"\u2018":6,"\u201c":6,";":10,":":10,".":16,",":16}},"O":{"d":"51,-128v0,63,42,106,106,106v63,0,105,-43,105,-106v0,-63,-42,-107,-105,-107v-64,0,-106,43,-106,107xm157,-263v81,0,137,53,137,135v0,82,-56,135,-137,135v-81,0,-138,-53,-138,-135v0,-82,56,-135,138,-135","w":313,"k":{"\u201e":20,"\u201a":20,"\u2019":6,"\u201d":6,"\u00c5":6,"Y":13,"X":6,"V":6,"T":20,"A":6,";":-7,":":-7,".":15,"-":-10,",":15}},"P":{"d":"176,-187v-1,61,-44,77,-115,72r0,115r-30,0r0,-257v77,-3,147,-3,145,70xm143,-185v0,-43,-33,-44,-82,-44r0,86v48,0,83,1,82,-42","w":182,"k":{"\u201e":86,"\u201a":86,"\u203a":6,"\u2019":-8,"\u2018":-7,"\u201d":-8,"\u201c":-7,"\u0153":20,"\u00bb":6,"\u00ab":20,"\u00f8":20,"\u00e6":20,"\u00c5":20,"s":6,"r":6,"o":20,"n":6,"e":20,"a":20,"A":20,";":16,":":16,".":86,"-":34,",":86}},"Q":{"d":"52,-128v-3,80,79,127,152,93r-53,-57r38,0r38,41v20,-16,35,-41,34,-76v-1,-67,-43,-107,-104,-107v-63,0,-103,42,-105,106xm294,-128v1,46,-19,78,-46,100r49,53r-37,0r-35,-37v-91,48,-211,-11,-206,-116v5,-81,56,-135,138,-135v83,0,134,52,137,135","w":313,"k":{";":-7,":":-7,"-":-10}},"R":{"d":"175,-187v0,45,-27,66,-75,64r98,123r-39,0r-94,-123r-4,0r0,123r-30,0r0,-257r60,0v58,-3,84,21,84,70xm144,-187v0,-47,-36,-45,-83,-45r0,87v46,0,83,2,83,-42","w":192,"k":{"\u2019":6,"\u2018":6,"\u201d":6,"\u201c":6,"Y":6,"-":10}},"S":{"d":"136,-208v-11,-38,-83,-41,-83,7v0,69,122,41,122,129v0,69,-82,100,-133,63v-14,-10,-23,-25,-28,-44r28,-14v2,60,105,62,102,0v-4,-76,-122,-48,-122,-133v0,-69,116,-87,139,-25","w":185,"k":{";":-7,":":-7,".":6,"-":-11,",":6}},"T":{"d":"76,0r0,-228r-73,0r0,-29r176,0r0,29r-72,0r0,228r-31,0","w":182,"k":{"\u201e":40,"\u201a":40,"\u203a":20,"\u0153":43,"\u0152":20,"\u00bb":20,"\u00ab":33,"\u00f8":43,"\u00e6":43,"\u00d8":20,"\u00c5":26,"y":43,"w":43,"u":36,"s":43,"r":36,"o":43,"e":43,"c":43,"a":43,"O":20,"C":13,"A":26,";":23,":":23,".":46,"-":33,",":46}},"U":{"d":"130,7v-67,0,-101,-35,-100,-104r0,-160r31,0r0,160v0,51,19,75,69,75v49,0,68,-24,68,-75r0,-160r31,0r0,160v1,70,-32,104,-99,104","w":259,"k":{"\u201e":26,"\u201a":26,"\u00ab":13,"\u00c5":6,"A":6,";":11,":":11,".":21,"-":10,",":21}},"V":{"d":"104,10r-108,-267r33,0r75,197r76,-197r33,0","w":208,"k":{"\u201e":60,"\u201a":60,"\u203a":20,"\u2019":-10,"\u201d":-10,"\u0153":20,"\u0152":6,"\u00bb":20,"\u00ab":40,"\u00f8":20,"\u00e6":20,"\u00d8":6,"\u00c5":6,"y":10,"u":20,"o":20,"e":20,"a":20,"O":6,"A":6,";":24,":":24,".":60,"-":29,",":60}},"W":{"d":"-2,-257r33,0r65,189r68,-200r69,200r65,-189r33,0r-99,267r-68,-199r-67,199","w":328,"k":{"\u201e":60,"\u201a":60,"\u203a":20,"\u2019":-7,"\u201d":-7,"\u0153":20,"\u00bb":20,"\u00ab":33,"\u00f8":20,"\u00e6":20,"\u00c5":6,"y":6,"u":13,"r":13,"o":20,"e":20,"a":20,"A":6,";":21,":":21,".":44,"-":21,",":44}},"X":{"d":"-2,0r79,-137r-74,-120r37,0r55,98r53,-98r35,0r-73,123r82,134r-36,0r-63,-111r-60,111r-35,0","w":190,"k":{"\u201e":-20,"\u201a":-20,"\u2018":13,"\u201c":13,"\u0152":6,"\u00ab":20,"\u00d8":6,"O":6,"C":6,";":6,":":6,".":-7,"-":18,",":-7}},"Y":{"d":"88,0r0,-118r-88,-139r36,0r67,111r67,-111r35,0r-87,139r0,118r-30,0","w":205,"k":{"\u201e":46,"\u201a":46,"\u203a":26,"\u0153":40,"\u0152":13,"\u00bb":26,"\u00ab":40,"\u00f8":40,"\u00e6":40,"\u00d8":13,"\u00c5":20,"u":38,"o":40,"i":6,"e":40,"a":40,"O":13,"C":6,"A":20,";":38,":":38,".":48,"-":43,",":48}},"Z":{"d":"-2,0r145,-229r-118,0r0,-28r170,0r-143,228r137,0r0,29r-191,0","w":203,"k":{"\u2018":6,"\u201c":6,";":-7,":":-7,".":-7,"-":6,",":-7}},"[":{"d":"58,49r32,0r0,23r-57,0r0,-335r57,0r0,24r-32,0r0,288","w":103},"\\":{"d":"126,33r-126,-296r24,0r126,296r-24,0","w":150},"]":{"d":"46,49r0,-288r-32,0r0,-24r56,0r0,335r-56,0r0,-23r32,0","w":103},"^":{"d":"194,-256r91,98r-27,0r-78,-77r-78,77r-28,0r92,-98r28,0","w":360},"_":{"d":"180,64r0,21r-180,0r0,-21r180,0"},"`":{"d":"115,-186r-21,0r-50,-61r35,0"},"a":{"d":"99,-21v34,0,52,-23,52,-58v1,-34,-20,-61,-53,-60v-35,0,-53,23,-53,58v0,36,18,60,54,60xm91,-167v29,0,49,14,59,36r0,-30r28,0r0,161r-27,0r0,-29v-11,21,-30,35,-58,36v-47,0,-77,-38,-77,-87v0,-49,28,-87,75,-87","w":204,"k":{"\u2019":13,"\u2018":20,"\u201d":13,"\u201c":20}},"b":{"d":"109,-139v-33,-1,-55,25,-55,59v0,35,20,60,54,60v34,-1,53,-26,53,-63v0,-34,-19,-56,-52,-56xm113,7v-27,-1,-48,-16,-59,-36r0,29r-26,0r0,-272r27,0r0,141v11,-22,29,-36,59,-36v47,0,76,38,76,87v0,49,-30,87,-77,87","w":205,"k":{"\u201e":6,"\u201a":6,"\u2019":13,"\u2018":20,"\u201d":13,"\u201c":20,"-":-7}},"c":{"d":"44,-78v0,56,72,74,108,40r0,32v-57,33,-137,0,-137,-73v0,-71,73,-108,134,-77r0,30v-39,-29,-105,-9,-105,48","w":161},"d":{"d":"97,-20v34,0,54,-24,54,-60v0,-34,-21,-60,-54,-59v-33,0,-52,22,-52,56v0,37,18,62,52,63xm92,-167v29,0,48,14,58,36r0,-141r28,0r0,272r-27,0r0,-29v-10,21,-30,35,-58,36v-47,0,-77,-38,-77,-87v0,-49,29,-87,76,-87","w":205},"e":{"d":"142,-99v1,-41,-54,-57,-82,-32v-9,8,-15,19,-16,32r98,0xm94,-167v51,0,81,37,78,91v-41,2,-91,-4,-128,2v-1,33,22,59,54,58v26,-1,41,-15,52,-35r21,14v-14,27,-38,43,-75,44v-49,1,-82,-38,-82,-88v0,-48,32,-87,80,-86","w":185,"k":{"-":-7}},"f":{"d":"105,-244v-29,-12,-42,-3,-42,40r0,43r42,0r0,23r-42,0r0,138r-28,0r0,-138r-31,0r0,-23r31,0v2,-55,-11,-115,47,-115v9,0,16,2,23,4r0,28","w":104,"k":{"\u201e":20,"\u201a":20,"\u2019":-25,"\u2018":-32,"\u201d":-25,"\u201c":-32,".":13,",":13}},"g":{"d":"99,-21v33,0,52,-24,52,-59v1,-34,-20,-61,-53,-60v-35,0,-53,23,-53,58v0,36,18,62,54,61xm16,-81v0,-83,104,-117,134,-50r0,-30r28,0r0,158v12,83,-85,98,-137,65v-15,-10,-20,-28,-21,-48r30,0v0,28,19,40,48,40v48,0,57,-32,53,-85v-11,20,-29,36,-58,36v-48,1,-77,-37,-77,-86","w":205,"k":{".":6,"-":6,",":6}},"h":{"d":"104,-143v-64,0,-47,81,-49,143r-27,0r0,-272r27,0r0,136v13,-19,30,-30,59,-31v37,0,60,21,60,57r0,110r-28,0v-5,-57,21,-143,-42,-143","w":200,"k":{"\u2019":20,"\u2018":20,"\u201d":20,"\u201c":20}},"i":{"d":"43,-218v-11,0,-20,-9,-20,-20v0,-11,8,-21,20,-20v11,0,20,9,20,20v0,11,-9,20,-20,20xm30,0r0,-161r27,0r0,161r-27,0","w":87,"k":{"\u2018":6,"\u201c":6}},"j":{"d":"43,-218v-11,0,-20,-9,-20,-20v0,-11,8,-21,20,-20v11,0,20,9,20,20v0,11,-9,20,-20,20xm30,78r0,-239r27,0r0,239r-27,0","w":87,"k":{"\u2019":6,"\u201d":6}},"k":{"d":"28,0r0,-272r28,0r0,184r78,-73r36,0r-80,74r88,87r-39,0r-83,-85r0,85r-28,0","w":177,"k":{"\u201e":-7,"\u201a":-7,"\u2019":-13,"\u201d":-13,"-":15}},"l":{"d":"30,0r0,-272r28,0r0,272r-28,0","w":87},"m":{"d":"222,-167v78,-4,54,96,57,167r-27,0v-5,-55,21,-143,-40,-143v-61,0,-42,82,-45,143r-27,0v-5,-55,21,-143,-40,-143v-62,0,-42,82,-45,143r-27,0r0,-161r27,0r0,25v18,-39,95,-41,110,2v12,-20,28,-32,57,-33","w":305,"k":{"\u2019":20,"\u2018":20,"\u201d":20,"\u201c":20}},"n":{"d":"104,-143v-64,0,-47,81,-49,143r-27,0r0,-161r27,0r0,25v13,-19,30,-30,59,-31v37,0,60,21,60,57r0,110r-28,0v-5,-57,21,-143,-42,-143","w":200,"k":{"\u2019":20,"\u2018":20,"\u201d":20,"\u201c":20}},"o":{"d":"103,-141v-32,0,-59,28,-59,61v0,33,27,61,59,61v32,0,57,-28,57,-61v0,-33,-25,-61,-57,-61xm103,7v-52,0,-88,-35,-88,-87v0,-52,35,-87,88,-87v51,0,87,34,87,87v0,53,-37,87,-87,87","w":204,"k":{"\u2018":13,"\u201c":13,"-":-7}},"p":{"d":"109,-140v-34,0,-54,24,-54,60v0,34,22,60,54,60v33,0,52,-23,52,-57v0,-37,-18,-62,-52,-63xm190,-80v0,83,-104,118,-135,51r0,107r-27,0r0,-239r26,0r0,30v11,-21,31,-35,59,-36v47,-1,77,38,77,87","w":205,"k":{"\u201e":13,"\u201a":13,"\u2019":20,"\u2018":13,"\u201d":20,"\u201c":13,"-":-7}},"q":{"d":"97,-20v32,0,54,-26,54,-60v0,-36,-20,-60,-54,-60v-34,1,-52,26,-52,63v0,35,18,57,52,57xm93,-167v28,1,47,15,58,36r0,-30r27,0r0,239r-28,0r0,-107v-10,22,-29,36,-58,36v-47,0,-76,-36,-76,-87v0,-49,30,-88,77,-87","w":205,"k":{"\u201e":-7,"\u201a":-7}},"r":{"d":"116,-138v-69,-23,-62,69,-60,138r-28,0r0,-161r25,0r0,34v13,-29,35,-45,73,-36","w":126,"k":{"\u201e":34,"\u201a":34,"\u2019":-15,"\u201d":-15,"\u00ab":6,".":36,"-":13,",":36}},"s":{"d":"133,-44v3,63,-102,65,-122,17r24,-16v8,39,93,28,65,-13v-27,-16,-91,-34,-83,-62v-3,-57,97,-65,114,-17r-22,14v-6,-27,-63,-33,-64,1v7,34,96,24,88,76","w":146,"k":{"\u2018":13,"\u201c":13,"-":-7}},"t":{"d":"32,-138r-29,0r0,-23r29,0r0,-65r28,0r0,65r30,0r0,23r-30,0r0,138r-28,0r0,-138","w":93,"k":{"\u201e":6,"\u201a":6,"\u2019":-10,"\u2018":-7,"\u201d":-10,"\u201c":-7,"-":8}},"u":{"d":"98,7v-85,4,-74,-87,-73,-168r29,0v5,57,-20,141,45,141v65,0,40,-84,45,-141r28,0r0,94v-1,49,-26,72,-74,74","w":196,"k":{"\u2019":13,"\u201d":13}},"v":{"d":"81,10r-80,-171r31,0r49,112r48,-112r31,0","w":161,"k":{"\u201e":41,"\u201a":41,"\u2019":-20,"\u2018":-17,"\u201d":-20,"\u201c":-17,".":28,",":28}},"w":{"d":"127,-167r48,116r43,-110r31,0r-71,171r-53,-123r-53,123r-72,-171r31,0r42,110r49,-116r5,0","w":249,"k":{"\u201e":28,"\u201a":28,"\u2019":-20,"\u2018":-10,"\u201d":-20,"\u201c":-10,".":26,"-":-7,",":26}},"x":{"d":"0,0r62,-83r-60,-78r34,0r42,58r42,-58r34,0r-60,78r62,83r-34,0r-44,-62r-44,62r-34,0","w":155,"k":{"-":11}},"y":{"d":"22,78r43,-94r-63,-145r32,0r47,116r49,-116r30,0r-107,239r-31,0","w":158,"k":{"\u201e":46,"\u201a":46,"\u2019":-20,"\u2018":-20,"\u201d":-20,"\u201c":-20,".":31,"-":6,",":31}},"z":{"d":"5,0r93,-137r-87,0r0,-24r135,0r-92,137r91,0r0,24r-140,0","w":155},"{":{"d":"81,-153v0,-67,-1,-116,70,-107r0,23v-85,-22,-6,135,-79,144v41,6,35,53,35,101v0,37,8,44,44,43r0,22v-50,1,-70,-11,-70,-64v0,-49,8,-99,-51,-91r0,-22v38,1,51,-11,51,-49"},"|":{"d":"101,-275r0,360r-22,0r0,-360r22,0"},"}":{"d":"29,-260v50,0,72,10,70,65v-2,50,-6,98,51,91r0,22v-56,-8,-53,40,-51,91v2,55,-19,65,-70,64r0,-22v87,20,5,-135,79,-144v-41,-7,-35,-54,-35,-102v0,-36,-9,-44,-44,-43r0,-22"},"~":{"d":"201,-105v28,0,46,-12,68,-28r0,23v-20,14,-39,24,-68,25v-33,1,-76,-26,-102,-24v-29,2,-46,12,-68,28r0,-23v20,-15,40,-25,68,-26v33,-1,74,25,102,25","w":299},"\u00c4":{"d":"112,-200r-41,95r82,0xm112,-268r117,268r-33,0r-33,-79r-101,0r-33,79r-33,0xm145,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm81,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":225},"\u00c5":{"d":"113,-327v-12,0,-22,10,-22,22v0,12,9,23,22,22v12,0,22,-10,22,-22v0,-12,-11,-21,-22,-22xm113,-262v-23,0,-43,-20,-43,-43v0,-23,19,-42,43,-42v23,-1,43,19,42,42v0,24,-19,43,-42,43xm111,-257r4,0r114,257r-33,0r-33,-79r-101,0r-33,79r-33,0xm112,-200r-41,95r82,0","w":225,"k":{"\u201e":-7,"\u201a":-7,"\u2019":43,"\u2018":46,"\u201d":43,"\u201c":46,"Y":20,"W":6,"V":6,"U":6,"T":20,"Q":6,"O":6,"G":6,"C":6,";":-7,":":-7,".":-11,",":-11}},"\u00c7":{"d":"155,-263v36,-1,61,12,85,27r0,40v-22,-23,-47,-39,-86,-39v-63,0,-99,44,-103,107v-6,105,137,140,189,66r0,41v-23,16,-51,29,-87,28v-81,-3,-134,-54,-134,-134v0,-83,52,-133,136,-136xm197,50v0,41,-58,36,-89,25r0,-18v21,3,62,18,65,-7v2,-15,-16,-15,-33,-15r0,-35r13,0r0,18v26,-1,44,8,44,32","w":261},"\u00c9":{"d":"31,0r0,-257r136,0r0,28r-105,0r0,73r105,0r0,29r-105,0r0,99r105,0r0,28r-136,0xm75,-283r36,-61r35,0r-50,61r-21,0","w":187},"\u00d1":{"d":"31,0r0,-268r188,206r0,-195r29,0r0,267r-188,-203r0,193r-29,0xm122,-327v22,0,46,19,54,-5r16,0v-4,38,-38,41,-72,29v-9,0,-13,5,-16,12r-16,0v3,-21,13,-35,34,-36","w":278},"\u00d6":{"d":"51,-128v0,63,42,106,106,106v63,0,105,-43,105,-106v0,-63,-42,-107,-105,-107v-64,0,-106,43,-106,107xm157,-263v81,0,137,53,137,135v0,82,-56,135,-137,135v-81,0,-138,-53,-138,-135v0,-82,56,-135,138,-135xm189,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm125,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":313},"\u00dc":{"d":"130,7v-67,0,-101,-35,-100,-104r0,-160r31,0r0,160v0,51,19,75,69,75v49,0,68,-24,68,-75r0,-160r31,0r0,160v1,70,-32,104,-99,104xm162,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm98,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":259},"\u00e1":{"d":"99,-21v34,0,52,-23,52,-58v1,-34,-20,-61,-53,-60v-35,0,-53,23,-53,58v0,36,18,60,54,60xm91,-167v29,0,49,14,59,36r0,-30r28,0r0,161r-27,0r0,-29v-11,21,-30,35,-58,36v-47,0,-77,-38,-77,-87v0,-49,28,-87,75,-87xm78,-186r36,-61r35,0r-50,61r-21,0","w":204},"\u00e0":{"d":"99,-21v34,0,52,-23,52,-58v1,-34,-20,-61,-53,-60v-35,0,-53,23,-53,58v0,36,18,60,54,60xm91,-167v29,0,49,14,59,36r0,-30r28,0r0,161r-27,0r0,-29v-11,21,-30,35,-58,36v-47,0,-77,-38,-77,-87v0,-49,28,-87,75,-87xm128,-186r-21,0r-50,-61r35,0","w":204},"\u00e2":{"d":"99,-21v34,0,52,-23,52,-58v1,-34,-20,-61,-53,-60v-35,0,-53,23,-53,58v0,36,18,60,54,60xm91,-167v29,0,49,14,59,36r0,-30r28,0r0,161r-27,0r0,-29v-11,21,-30,35,-58,36v-47,0,-77,-38,-77,-87v0,-49,28,-87,75,-87xm51,-186r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":204},"\u00e4":{"d":"99,-21v34,0,52,-23,52,-58v1,-34,-20,-61,-53,-60v-35,0,-53,23,-53,58v0,36,18,60,54,60xm91,-167v29,0,49,14,59,36r0,-30r28,0r0,161r-27,0r0,-29v-11,21,-30,35,-58,36v-47,0,-77,-38,-77,-87v0,-49,28,-87,75,-87xm135,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm71,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":204},"\u00e3":{"d":"99,-21v34,0,52,-23,52,-58v1,-34,-20,-61,-53,-60v-35,0,-53,23,-53,58v0,36,18,60,54,60xm91,-167v29,0,49,14,59,36r0,-30r28,0r0,161r-27,0r0,-29v-11,21,-30,35,-58,36v-47,0,-77,-38,-77,-87v0,-49,28,-87,75,-87xm85,-230v22,0,46,19,54,-5r16,0v-4,38,-38,41,-72,29v-9,0,-13,5,-16,12r-16,0v3,-21,13,-35,34,-36","w":204},"\u00e5":{"d":"91,-167v29,0,49,14,59,36r0,-30r28,0r0,161r-27,0r0,-29v-11,21,-30,35,-58,36v-47,0,-77,-38,-77,-87v0,-49,28,-87,75,-87xm99,-21v34,0,52,-23,52,-58v1,-34,-20,-61,-53,-60v-35,0,-53,23,-53,58v0,36,18,60,54,60xm97,-243v-11,0,-21,10,-21,22v0,12,9,22,21,22v13,0,23,-10,23,-22v0,-12,-11,-22,-23,-22xm97,-178v-23,0,-42,-19,-42,-42v0,-23,19,-42,42,-42v23,0,42,19,42,42v0,23,-19,42,-42,42","w":204,"k":{"\u2019":13,"\u2018":20,"\u201d":13,"\u201c":20}},"\u00e7":{"d":"44,-78v0,56,72,74,108,40r0,32v-57,33,-137,0,-137,-73v0,-71,73,-108,134,-77r0,30v-39,-29,-105,-9,-105,48xm138,50v0,41,-58,36,-89,25r0,-18v21,3,62,18,65,-7v2,-15,-16,-15,-33,-15r0,-35r13,0r0,18v26,-1,44,8,44,32","w":161},"\u00e9":{"d":"142,-99v1,-41,-54,-57,-82,-32v-9,8,-15,19,-16,32r98,0xm94,-167v51,0,81,37,78,91v-41,2,-91,-4,-128,2v-1,33,22,59,54,58v26,-1,41,-15,52,-35r21,14v-14,27,-38,43,-75,44v-49,1,-82,-38,-82,-88v0,-48,32,-87,80,-86xm67,-186r36,-61r35,0r-50,61r-21,0","w":185},"\u00e8":{"d":"142,-99v1,-41,-54,-57,-82,-32v-9,8,-15,19,-16,32r98,0xm94,-167v51,0,81,37,78,91v-41,2,-91,-4,-128,2v-1,33,22,59,54,58v26,-1,41,-15,52,-35r21,14v-14,27,-38,43,-75,44v-49,1,-82,-38,-82,-88v0,-48,32,-87,80,-86xm117,-186r-21,0r-50,-61r35,0","w":185},"\u00ea":{"d":"142,-99v1,-41,-54,-57,-82,-32v-9,8,-15,19,-16,32r98,0xm94,-167v51,0,81,37,78,91v-41,2,-91,-4,-128,2v-1,33,22,59,54,58v26,-1,41,-15,52,-35r21,14v-14,27,-38,43,-75,44v-49,1,-82,-38,-82,-88v0,-48,32,-87,80,-86xm40,-186r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":185},"\u00eb":{"d":"142,-99v1,-41,-54,-57,-82,-32v-9,8,-15,19,-16,32r98,0xm94,-167v51,0,81,37,78,91v-41,2,-91,-4,-128,2v-1,33,22,59,54,58v26,-1,41,-15,52,-35r21,14v-14,27,-38,43,-75,44v-49,1,-82,-38,-82,-88v0,-48,32,-87,80,-86xm124,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm60,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":185},"\u00ed":{"d":"30,0r0,-161r27,0r0,161r-27,0xm19,-186r36,-61r35,0r-50,61r-21,0","w":87},"\u00ec":{"d":"30,0r0,-161r27,0r0,161r-27,0xm69,-186r-21,0r-50,-61r35,0","w":87},"\u00ee":{"d":"30,0r0,-161r27,0r0,161r-27,0xm-8,-186r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":87},"\u00ef":{"d":"30,0r0,-161r27,0r0,161r-27,0xm76,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm12,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":87},"\u00f1":{"d":"104,-143v-64,0,-47,81,-49,143r-27,0r0,-161r27,0r0,25v13,-19,30,-30,59,-31v37,0,60,21,60,57r0,110r-28,0v-5,-57,21,-143,-42,-143xm84,-230v22,0,46,19,54,-5r16,0v-4,38,-38,41,-72,29v-9,0,-13,5,-16,12r-16,0v3,-21,13,-35,34,-36","w":200},"\u00f3":{"d":"103,-141v-32,0,-59,28,-59,61v0,33,27,61,59,61v32,0,57,-28,57,-61v0,-33,-25,-61,-57,-61xm103,7v-52,0,-88,-35,-88,-87v0,-52,35,-87,88,-87v51,0,87,34,87,87v0,53,-37,87,-87,87xm78,-186r36,-61r35,0r-50,61r-21,0","w":204},"\u00f2":{"d":"103,-141v-32,0,-59,28,-59,61v0,33,27,61,59,61v32,0,57,-28,57,-61v0,-33,-25,-61,-57,-61xm103,7v-52,0,-88,-35,-88,-87v0,-52,35,-87,88,-87v51,0,87,34,87,87v0,53,-37,87,-87,87xm128,-186r-21,0r-50,-61r35,0","w":204},"\u00f4":{"d":"103,-141v-32,0,-59,28,-59,61v0,33,27,61,59,61v32,0,57,-28,57,-61v0,-33,-25,-61,-57,-61xm103,7v-52,0,-88,-35,-88,-87v0,-52,35,-87,88,-87v51,0,87,34,87,87v0,53,-37,87,-87,87xm51,-186r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":204},"\u00f6":{"d":"103,-141v-32,0,-59,28,-59,61v0,33,27,61,59,61v32,0,57,-28,57,-61v0,-33,-25,-61,-57,-61xm103,7v-52,0,-88,-35,-88,-87v0,-52,35,-87,88,-87v51,0,87,34,87,87v0,53,-37,87,-87,87xm135,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm71,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":204},"\u00f5":{"d":"103,-141v-32,0,-59,28,-59,61v0,33,27,61,59,61v32,0,57,-28,57,-61v0,-33,-25,-61,-57,-61xm103,7v-52,0,-88,-35,-88,-87v0,-52,35,-87,88,-87v51,0,87,34,87,87v0,53,-37,87,-87,87xm85,-230v22,0,46,19,54,-5r16,0v-4,38,-38,41,-72,29v-9,0,-13,5,-16,12r-16,0v3,-21,13,-35,34,-36","w":204},"\u00fa":{"d":"98,7v-85,4,-74,-87,-73,-168r29,0v5,57,-20,141,45,141v65,0,40,-84,45,-141r28,0r0,94v-1,49,-26,72,-74,74xm74,-186r36,-61r35,0r-50,61r-21,0","w":196},"\u00f9":{"d":"98,7v-85,4,-74,-87,-73,-168r29,0v5,57,-20,141,45,141v65,0,40,-84,45,-141r28,0r0,94v-1,49,-26,72,-74,74xm124,-186r-21,0r-50,-61r35,0","w":196},"\u00fb":{"d":"98,7v-85,4,-74,-87,-73,-168r29,0v5,57,-20,141,45,141v65,0,40,-84,45,-141r28,0r0,94v-1,49,-26,72,-74,74xm47,-186r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":196},"\u00fc":{"d":"98,7v-85,4,-74,-87,-73,-168r29,0v5,57,-20,141,45,141v65,0,40,-84,45,-141r28,0r0,94v-1,49,-26,72,-74,74xm131,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm67,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":196},"\u2020":{"d":"80,78r0,-212r-64,0r0,-25r64,0r0,-98r29,0r0,98r64,0r0,25r-64,0r0,212r-29,0","w":188},"\u00b0":{"d":"59,-170v19,0,36,-17,36,-36v0,-19,-17,-35,-36,-35v-19,0,-35,16,-35,35v0,19,16,36,35,36xm10,-206v0,-27,23,-50,49,-50v27,0,50,23,50,50v0,26,-24,50,-50,50v-26,0,-49,-23,-49,-50","w":118},"\u00a2":{"d":"107,-189v-44,0,-64,65,-36,98v9,11,21,17,36,19r0,-117xm121,-215v20,0,34,4,49,10r0,30v-14,-9,-29,-12,-49,-15r0,118v21,-2,37,-8,49,-17r0,30v-13,8,-28,13,-49,13r0,36r-14,0r0,-37v-44,-2,-79,-36,-79,-82v0,-49,34,-81,79,-86r0,-28r14,0r0,28","w":212},"\u00a3":{"d":"147,7v-43,0,-90,-45,-112,0r-20,-16v11,-17,23,-29,44,-32v10,-17,11,-47,-1,-63r-41,0r0,-20r32,0v-35,-60,-6,-138,68,-136v48,1,77,30,79,78r-29,7v-2,-35,-17,-59,-52,-60v-57,-2,-58,73,-34,111r67,0r0,20r-60,0v13,20,-1,51,-10,63v16,-3,57,20,69,19v16,0,23,-10,31,-22r23,16v-12,20,-26,35,-54,35","w":212},"\u00a7":{"d":"50,-93v0,24,22,43,45,43v23,0,44,-19,44,-43v0,-24,-21,-43,-44,-43v-24,0,-45,19,-45,43xm92,80v-38,-3,-67,-24,-65,-64r30,0v1,23,12,37,36,37v33,0,49,-35,29,-53v-30,-28,-102,-30,-102,-91v0,-33,20,-60,49,-64v-24,-9,-39,-23,-40,-52v0,-36,28,-57,67,-56v41,0,62,20,61,62r-27,0v0,-23,-13,-37,-36,-37v-35,0,-46,44,-19,58v40,21,98,29,96,87v-1,36,-20,53,-50,62v63,18,41,117,-29,111","w":188},"\u2022":{"d":"106,-82v-28,0,-52,-24,-52,-52v0,-28,24,-52,52,-52v28,0,52,24,52,52v0,28,-24,52,-52,52","w":212},"\u00b6":{"d":"13,-199v-1,-69,83,-63,154,-61r0,14r-22,0r0,246r-17,0r0,-246r-32,0r0,246r-17,0r0,-137v-38,-1,-66,-24,-66,-62"},"\u00df":{"d":"99,-249v-36,1,-42,25,-42,68r0,181r-27,0r0,-139r-23,0r0,-23r23,0v-5,-65,7,-114,69,-114v70,0,96,105,32,121v39,3,58,33,59,76v2,59,-48,97,-107,81r0,-27v40,16,76,-7,76,-54v0,-44,-27,-65,-71,-60r0,-26v32,2,51,-11,51,-40v1,-28,-13,-44,-40,-44","w":206,"k":{"\u2018":6,"\u201c":6,"-":-13}},"\u00ae":{"d":"189,-161v0,-31,-35,-26,-66,-26r0,51v30,-1,66,5,66,-25xm215,-163v0,22,-15,37,-35,40r33,67r-27,0r-31,-64r-32,0r0,64r-24,0r0,-147v50,1,116,-10,116,40xm149,-14v68,0,115,-45,115,-113v0,-68,-44,-114,-114,-114v-70,0,-114,47,-114,114v0,66,46,113,113,113xm21,-127v0,-77,52,-130,129,-130v78,0,129,53,129,130v0,77,-53,129,-129,129v-76,0,-129,-53,-129,-129","w":299},"\u00a9":{"d":"82,-127v0,-62,61,-102,110,-67v11,9,17,20,18,34r-23,0v-3,-18,-17,-29,-37,-29v-31,0,-43,27,-43,62v0,33,14,59,43,60v22,1,36,-13,39,-32r23,0v-3,30,-29,51,-63,51v-44,0,-67,-34,-67,-79xm150,-14v67,0,114,-46,114,-113v0,-67,-44,-114,-114,-114v-69,0,-114,47,-114,114v0,67,47,113,114,113xm21,-127v0,-77,52,-130,129,-130v78,0,129,52,129,130v0,77,-53,129,-129,129v-77,0,-129,-53,-129,-129","w":299},"\u2122":{"d":"167,-256r28,71r26,-71r23,0r0,94r-14,0r0,-81r-30,81r-10,0r-32,-81r0,81r-14,0r0,-94r23,0xm122,-256r0,12r-30,0r0,82r-17,0r0,-82r-30,0r0,-12r77,0","w":299},"\u00b4":{"d":"65,-186r36,-61r35,0r-50,61r-21,0"},"\u00a8":{"d":"122,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm58,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20"},"\u2260":{"d":"228,-195r-34,44r61,0r0,20r-74,0r-37,48r111,0r0,20r-124,0r-45,56r-15,-13r34,-43r-60,0r0,-20r73,0r38,-48r-111,0r0,-20r123,0r45,-56","w":299},"\u00c6":{"d":"-4,0r109,-257r135,0r5,27r-114,0r32,75r112,0r5,28r-105,0r42,99r107,0r5,28r-133,0r-33,-79r-101,0r-33,79r-33,0xm71,-105r82,0r-41,-100","w":310,"k":{"\u2019":16,"\u201d":16,";":-7,":":-7,".":-7,"-":-7,",":-7}},"\u00d8":{"d":"221,-213v-77,-60,-204,16,-163,123v5,12,11,23,19,32xm157,-22v90,4,136,-111,79,-177r-144,155v16,12,38,21,65,22xm294,-128v4,114,-138,171,-222,105r-29,32r-15,-15r29,-30v-22,-21,-38,-52,-38,-92v0,-82,56,-135,138,-135v36,0,63,11,85,29r28,-30r14,14r-27,29v23,21,36,52,37,93","w":313,"k":{"\u201e":20,"\u201a":20,"\u2019":6,"\u201d":6,"Y":13,"X":6,"V":6,"T":20,"A":6,";":-7,":":-7,".":15,"-":-10,",":15}},"\u221e":{"d":"249,-110v0,-37,-41,-59,-65,-31v-8,8,-16,23,-25,43v13,44,90,44,90,-12xm52,-106v0,38,39,59,64,32v8,-8,16,-22,25,-43v-13,-43,-89,-45,-89,11xm92,-175v30,0,42,21,56,47v13,-25,25,-46,56,-47v33,-1,56,32,56,67v0,37,-20,67,-52,67v-30,0,-41,-19,-56,-46v-14,26,-26,45,-56,47v-33,2,-56,-32,-56,-67v0,-37,19,-68,52,-68","w":299},"\u00b1":{"d":"255,-28r0,21r-210,0r0,-21r210,0xm160,-207r0,60r95,0r0,21r-95,0r0,60r-20,0r0,-60r-95,0r0,-21r95,0r0,-60r20,0","w":299},"\u2264":{"d":"254,-26r0,20r-208,0r0,-20r208,0xm254,-188r-172,57r172,57r0,22r-208,-70r0,-18r208,-70r0,22","w":299},"\u2265":{"d":"254,-26r0,20r-208,0r0,-20r208,0xm254,-140r0,18r-208,70r0,-22r172,-57r-172,-57r0,-22","w":299},"\u00a5":{"d":"91,0r0,-111r-87,0r0,-21r77,0r-15,-25r-62,0r0,-21r48,0r-48,-77r33,0r70,114r69,-114r32,0r-48,77r49,0r0,21r-62,0r-16,25r78,0r0,21r-88,0r0,111r-30,0","w":212},"\u00b5":{"d":"125,-23v-14,31,-82,36,-97,2r-20,96r-28,0r56,-263r28,0v-8,44,-22,81,-25,129v-3,43,54,52,75,22v25,-34,30,-103,43,-151r28,0r-33,156v-1,11,10,14,19,11v-3,12,0,26,-21,24v-17,-2,-23,-9,-25,-26","w":198},"\u2202":{"d":"86,-140v27,0,39,13,47,34v4,-37,13,-102,-22,-108v-11,-2,-30,23,-40,22v-6,1,-14,-6,-13,-12v0,-17,22,-28,41,-27v45,1,66,47,66,99v0,65,-29,134,-85,136v-35,1,-59,-29,-59,-66v0,-40,26,-79,65,-78xm80,-5v32,-1,45,-43,45,-80v0,-25,-8,-43,-31,-43v-31,0,-45,42,-45,81v0,25,8,42,31,42","w":183},"\u2211":{"d":"9,-259r218,0r0,29r-174,0r121,131r-126,139r182,0r0,29r-227,0r0,-24r130,-143r-124,-134r0,-27","w":236},"\u220f":{"d":"28,-259r212,0r0,328r-35,0r0,-298r-142,0r0,298r-35,0r0,-328","w":268},"\u03c0":{"d":"-3,-140v7,-34,17,-48,56,-48r152,0r-5,25r-32,0r-25,123v-3,21,19,22,36,17v-2,7,-2,17,-6,23v-95,17,-42,-99,-33,-163r-61,0r-34,163r-28,0r35,-163v-19,-2,-27,6,-29,23r-26,0","w":208},"\u222b":{"d":"28,21v19,-1,17,20,25,26v12,0,17,-39,20,-117v3,-97,-4,-192,69,-202v30,-5,41,44,9,44v-18,0,-17,-18,-24,-27v-12,0,-16,38,-21,112v-6,82,14,196,-69,208v-32,5,-39,-42,-9,-44","w":179},"\u00aa":{"d":"19,-117r107,0r0,20r-107,0r0,-20xm10,-201v-9,-58,74,-83,102,-41r0,-17r23,0r0,115r-23,0r0,-16v-29,39,-110,16,-102,-41xm112,-201v0,-23,-16,-42,-39,-42v-24,0,-39,16,-38,41v0,25,14,42,39,42v24,0,39,-16,38,-41","w":153},"\u00ba":{"d":"20,-117r114,0r0,21r-114,0r0,-21xm119,-201v0,-22,-19,-41,-42,-41v-23,0,-42,19,-42,41v0,22,19,41,42,41v23,0,42,-19,42,-41xm10,-201v0,-35,31,-62,67,-62v36,0,67,28,67,62v0,34,-32,62,-67,62v-35,0,-67,-27,-67,-62","w":153},"\u03a9":{"d":"257,-137v-2,52,-24,82,-56,110r58,0r0,27r-104,0r0,-26v40,-22,69,-60,70,-115v1,-55,-34,-98,-87,-98v-53,0,-88,43,-87,98v1,55,30,93,70,115r0,26r-103,0r0,-27r58,0v-33,-27,-55,-57,-56,-109v-1,-74,47,-130,118,-130v71,0,121,56,119,129","w":276},"\u00e6":{"d":"80,-84v-26,0,-43,11,-43,35v0,22,17,32,41,32v25,0,45,-11,45,-33v0,-24,-17,-34,-43,-34xm23,-156v38,-17,106,-17,115,25v9,-23,31,-36,62,-36v51,0,81,37,78,91r-128,0v0,33,22,60,54,60v26,0,42,-16,52,-35r21,14v-18,52,-119,60,-142,8v-11,21,-33,35,-64,36v-37,0,-60,-23,-62,-58v-3,-56,75,-70,112,-41v12,-55,-61,-63,-98,-39r0,-25xm248,-99v1,-42,-55,-57,-83,-31v-9,8,-14,18,-15,31r98,0","w":292,"k":{"-":-7}},"\u00f8":{"d":"190,-81v5,72,-93,115,-144,68r-21,21r-12,-14r21,-20v-45,-50,-3,-140,69,-140v23,0,39,7,53,18r21,-20r13,12r-20,21v13,13,18,30,20,54xm66,-32v45,42,127,-24,84,-83xm137,-128v-44,-41,-123,23,-83,82","w":204,"k":{"\u2018":13,"\u201c":13,"-":-7}},"\u00bf":{"d":"98,-263v12,0,21,9,21,21v0,12,-10,21,-21,21v-11,0,-21,-9,-21,-21v0,-12,9,-21,21,-21xm94,-175v-21,-1,-26,15,-26,36r-27,0v-2,-39,17,-62,54,-62v32,0,50,19,52,51v3,50,-80,67,-84,104v-1,17,14,27,31,26v22,0,33,-14,33,-37r28,0v2,39,-24,64,-61,64v-37,0,-61,-21,-62,-57v-2,-49,81,-63,86,-103v1,-12,-11,-23,-24,-22","w":187},"\u00a1":{"d":"58,-222v-12,0,-21,-9,-21,-21v0,-11,10,-20,21,-20v11,0,20,9,20,20v0,11,-9,21,-20,21xm44,-198r28,0r0,205r-28,0r0,-205","w":114},"\u00ac":{"d":"255,-151r0,88r-20,0r0,-67r-190,0r0,-21r210,0","w":299},"\u221a":{"d":"226,-290r0,15r-21,0r-104,282r-9,0r-57,-157r-21,8r-4,-12r46,-16r47,128r91,-248r32,0","w":226},"\u0192":{"d":"168,-229v-39,-21,-43,26,-46,64r34,0r-3,23r-34,0v-10,63,-10,161,-34,204v-9,16,-33,21,-55,15r5,-24v28,6,33,-12,38,-56r16,-139r-29,0r3,-23r28,0v3,-56,18,-115,80,-89","w":212},"\u2248":{"d":"201,-75v30,-1,44,-12,68,-28r0,23v-22,15,-39,24,-68,26v-20,1,-81,-25,-102,-24v-30,2,-44,12,-68,28r0,-23v20,-15,40,-24,68,-26v22,-2,82,26,102,24xm201,-137v30,-1,44,-11,68,-27r0,23v-20,15,-39,23,-68,25v-21,1,-81,-25,-102,-24v-30,2,-44,12,-68,28r0,-23v20,-15,40,-24,68,-26v22,-2,82,26,102,24","w":299},"\u2206":{"d":"197,-28r-78,-200r-78,200r156,0xm137,-259r103,259r-241,0r103,-259r35,0","w":238},"\u00ab":{"d":"120,-9r-44,-71r42,-71r19,12r-36,59r36,59xm56,-9r-44,-71r43,-71r18,12r-36,59r36,59","w":149,"k":{"\u00c6":-27,"Y":26,"W":20,"V":20,"T":20,"J":-7}},"\u00bb":{"d":"29,-9r-17,-12r36,-59r-36,-59r19,-12r42,71xm93,-9r-17,-12r36,-59r-36,-59r19,-12r42,71","w":149,"k":{"Y":40,"X":20,"W":33,"V":40,"U":13,"T":33,"J":-13}},"\u2026":{"d":"60,3v-11,0,-21,-9,-21,-20v0,-12,9,-21,21,-21v12,0,21,9,21,21v0,11,-10,20,-21,20xm180,3v-11,0,-21,-9,-21,-20v0,-12,9,-21,21,-21v12,0,21,9,21,21v0,11,-10,20,-21,20xm300,3v-11,0,-21,-9,-21,-20v0,-12,9,-21,21,-21v12,0,21,9,21,21v0,11,-10,20,-21,20","w":360},"\u00a0":{"w":212},"\u00c0":{"d":"112,-200r-41,95r82,0xm112,-268r117,268r-33,0r-33,-79r-101,0r-33,79r-33,0xm138,-283r-21,0r-50,-61r35,0","w":225},"\u00c3":{"d":"112,-200r-41,95r82,0xm112,-268r117,268r-33,0r-33,-79r-101,0r-33,79r-33,0xm95,-327v22,0,46,19,54,-5r16,0v-4,38,-38,41,-72,29v-9,0,-13,5,-16,12r-16,0v3,-21,13,-35,34,-36","w":225},"\u00d5":{"d":"51,-128v0,63,42,106,106,106v63,0,105,-43,105,-106v0,-63,-42,-107,-105,-107v-64,0,-106,43,-106,107xm157,-263v81,0,137,53,137,135v0,82,-56,135,-137,135v-81,0,-138,-53,-138,-135v0,-82,56,-135,138,-135xm139,-327v22,0,46,19,54,-5r16,0v-4,38,-38,41,-72,29v-9,0,-13,5,-16,12r-16,0v3,-21,13,-35,34,-36","w":313},"\u0152":{"d":"157,-234v-63,0,-105,41,-105,105v0,62,41,105,105,105v63,0,105,-42,105,-105v0,-62,-43,-105,-105,-105xm160,-263v49,0,78,21,102,51r0,-45r134,0r0,28r-105,0r0,73r105,0r0,29r-105,0r0,99r105,0r0,28r-134,0r0,-45v-24,30,-55,51,-103,51v-85,0,-140,-54,-140,-135v0,-81,57,-134,141,-134","w":415,"k":{";":-7,":":-7,".":-7,"-":-7,",":-7}},"\u0153":{"d":"287,-99v2,-41,-54,-57,-82,-32v-9,8,-15,19,-16,32r98,0xm316,-37v-18,53,-119,59,-143,8v-11,20,-40,37,-70,36v-53,-2,-87,-35,-88,-87v-1,-48,40,-89,90,-87v33,1,52,15,68,36v13,-21,33,-36,66,-36v50,0,79,37,77,91v-41,2,-90,-4,-127,2v-1,33,22,59,54,58v26,-1,40,-15,51,-35xm103,-141v-32,0,-59,28,-59,61v0,33,27,61,59,61v32,0,57,-28,57,-61v0,-33,-25,-61,-57,-61","w":330,"k":{"-":-7}},"\u2013":{"d":"0,-90r180,0r0,20r-180,0r0,-20"},"\u2014":{"d":"0,-70r0,-20r360,0r0,20r-360,0","w":360},"\u201c":{"d":"142,-255r-34,96r-30,-11r44,-93xm78,-255r-33,96r-30,-11r43,-93","w":156,"k":{"\u0111":13,"\u0142":-7,"\uf002":-10,"\uf001":-10,"\u0152":15,"\u00d8":15,"\u00c6":56,"\u00c5":48,"v":-10,"r":20,"q":13,"l":-7,"k":-7,"h":-7,"g":13,"f":-10,"d":13,"b":-17,"Y":-11,"X":-11,"W":-8,"V":-10,"T":-7,"Q":6,"O":15,"J":48,"A":48}},"\u201d":{"d":"78,-168r33,-95r31,10r-44,94xm15,-168r34,-95r29,10r-43,94","w":156},"\u2018":{"d":"85,-255r-33,96r-31,-11r44,-93","w":106,"k":{"\u0111":13,"\u0142":-7,"\uf002":-10,"\uf001":-10,"\u0152":15,"\u00d8":15,"\u00c6":56,"\u00c5":48,"v":-10,"r":20,"q":13,"l":-7,"k":-7,"h":-7,"g":13,"f":-10,"d":13,"b":-17,"Y":-11,"X":-11,"W":-8,"V":-10,"T":-7,"Q":6,"O":15,"J":48,"A":48}},"\u2019":{"d":"21,-168r34,-95r30,10r-44,94","w":106},"\u00f7":{"d":"130,-44v0,-11,9,-20,20,-20v11,0,20,9,20,20v0,11,-9,20,-20,20v-11,0,-20,-9,-20,-20xm255,-118r0,21r-210,0r0,-21r210,0xm130,-171v0,-11,9,-20,20,-20v11,0,20,9,20,20v0,11,-9,21,-20,21v-11,0,-20,-10,-20,-21","w":299},"\u25ca":{"d":"89,-248r-68,144r68,145r68,-145xm89,-291r88,187r-88,188r-88,-188","w":177},"\u00ff":{"d":"22,78r43,-94r-63,-145r32,0r47,116r49,-116r30,0r-107,239r-31,0xm111,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm47,-195v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":158},"\u0178":{"d":"88,0r0,-118r-88,-139r36,0r67,111r67,-111r35,0r-87,139r0,118r-30,0xm135,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm71,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":205},"\u2215":{"d":"-60,7r158,-267r22,0r-158,267r-22,0","w":60},"\u00a4":{"d":"135,-20v30,0,46,-13,64,-30r-1,34v-17,13,-38,22,-64,23v-59,0,-97,-47,-104,-103r-29,0r4,-18v7,-1,20,3,23,-2v-2,-11,0,-15,0,-26r-27,0r4,-18r26,0v3,-80,107,-133,167,-75r0,34v-22,-33,-77,-44,-109,-12v-13,14,-22,31,-26,53r109,0r-6,18r-106,0v-1,10,-1,19,0,28r98,0r-6,18r-90,0v4,40,33,75,73,76","w":212},"\u2039":{"d":"56,-9r-44,-71r43,-71r18,12r-36,59r36,59","w":85,"k":{"\u00c6":-27,"Y":26,"W":20,"V":20,"T":20,"J":-7}},"\u203a":{"d":"29,-9r-17,-12r36,-59r-36,-59r19,-12r42,71","w":85},"\uf001":{"d":"145,-218v-11,0,-20,-9,-20,-20v0,-11,8,-21,20,-20v11,0,21,9,21,20v0,11,-10,20,-21,20xm132,0r0,-161r27,0r0,161r-27,0xm105,-244v-29,-12,-42,-3,-42,40r0,43r42,0r0,23r-42,0r0,138r-28,0r0,-138r-31,0r0,-23r31,0v2,-55,-11,-115,47,-115v9,0,16,2,23,4r0,28","w":188,"k":{"\u2018":6,"\u201c":6}},"\uf002":{"d":"132,-272r27,0r0,272r-27,0r0,-272xm105,-244v-29,-12,-42,-3,-42,40r0,43r42,0r0,23r-42,0r0,138r-28,0r0,-138r-31,0r0,-23r31,0v2,-55,-11,-115,47,-115v9,0,16,2,23,4r0,28","w":188},"\u2021":{"d":"80,78r0,-88r-64,0r0,-26r64,0r0,-121r-64,0r0,-26r64,0r0,-74r30,0r0,74r63,0r0,26r-63,0r0,121r63,0r0,26r-63,0r0,88r-30,0","w":188},"\u00b7":{"d":"53,-106v-12,0,-21,-9,-21,-21v0,-12,9,-21,21,-21v12,0,21,9,21,21v0,12,-9,21,-21,21","w":106},"\u201a":{"d":"21,51r34,-96r30,11r-44,93","w":106,"k":{"\uf002":-7,"\uf001":-7,"\u0152":20,"\u00d8":20,"\u00c6":-40,"\u00df":-7,"\u00c5":-13,"w":15,"v":15,"u":6,"t":13,"j":-8,"f":-7,"Y":40,"X":-15,"W":51,"V":60,"U":33,"T":36,"Q":20,"O":20,"J":-7,"G":13,"C":20,"A":-13}},"\u201e":{"d":"78,51r33,-96r31,11r-44,93xm15,51r34,-96r29,11r-43,93","w":156,"k":{"\uf002":-7,"\uf001":-7,"\u0152":20,"\u00d8":20,"\u00c6":-40,"\u00df":-7,"\u00c5":-13,"w":15,"v":15,"u":6,"t":13,"j":-8,"f":-7,"Y":40,"X":-15,"W":51,"V":60,"U":33,"T":36,"Q":20,"O":20,"J":-7,"G":13,"C":20,"A":-13}},"\u2030":{"d":"329,-108v-37,1,-35,96,0,97v37,0,39,-98,0,-97xm329,-126v37,0,53,28,53,66v0,38,-17,67,-53,67v-36,0,-52,-29,-52,-67v0,-38,16,-66,52,-66xm205,-126v37,0,53,28,53,66v0,38,-17,67,-53,67v-36,0,-53,-29,-53,-67v0,-38,16,-66,53,-66xm205,-108v-38,0,-37,97,0,97v37,0,38,-97,0,-97xm63,-242v-37,0,-38,97,0,97v21,0,27,-22,27,-48v0,-27,-5,-49,-27,-49xm63,-260v36,0,53,29,53,67v0,38,-16,66,-53,66v-37,0,-53,-28,-53,-66v0,-38,17,-67,53,-67xm48,7r148,-267r21,0r-147,267r-22,0","w":390},"\u00c2":{"d":"112,-200r-41,95r82,0xm112,-268r117,268r-33,0r-33,-79r-101,0r-33,79r-33,0xm61,-283r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":225},"\u00ca":{"d":"31,0r0,-257r136,0r0,28r-105,0r0,73r105,0r0,29r-105,0r0,99r105,0r0,28r-136,0xm48,-283r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":187},"\u00c1":{"d":"112,-200r-41,95r82,0xm112,-268r117,268r-33,0r-33,-79r-101,0r-33,79r-33,0xm88,-283r36,-61r35,0r-50,61r-21,0","w":225},"\u00cb":{"d":"31,0r0,-257r136,0r0,28r-105,0r0,73r105,0r0,29r-105,0r0,99r105,0r0,28r-136,0xm132,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm68,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":187},"\u00c8":{"d":"31,0r0,-257r136,0r0,28r-105,0r0,73r105,0r0,29r-105,0r0,99r105,0r0,28r-136,0xm125,-283r-21,0r-50,-61r35,0","w":187},"\u00cd":{"d":"31,0r0,-257r31,0r0,257r-31,0xm22,-283r36,-61r35,0r-50,61r-21,0","w":93},"\u00ce":{"d":"31,0r0,-257r31,0r0,257r-31,0xm-5,-283r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":93},"\u00cf":{"d":"31,0r0,-257r31,0r0,257r-31,0xm79,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20xm15,-292v-11,0,-20,-9,-20,-20v-1,-10,10,-20,20,-20v10,0,21,10,20,20v0,11,-9,20,-20,20","w":93},"\u00cc":{"d":"31,0r0,-257r31,0r0,257r-31,0xm72,-283r-21,0r-50,-61r35,0","w":93},"\u00d3":{"d":"51,-128v0,63,42,106,106,106v63,0,105,-43,105,-106v0,-63,-42,-107,-105,-107v-64,0,-106,43,-106,107xm157,-263v81,0,137,53,137,135v0,82,-56,135,-137,135v-81,0,-138,-53,-138,-135v0,-82,56,-135,138,-135xm132,-283r36,-61r35,0r-50,61r-21,0","w":313},"\u00d4":{"d":"51,-128v0,63,42,106,106,106v63,0,105,-43,105,-106v0,-63,-42,-107,-105,-107v-64,0,-106,43,-106,107xm157,-263v81,0,137,53,137,135v0,82,-56,135,-137,135v-81,0,-138,-53,-138,-135v0,-82,56,-135,138,-135xm105,-283r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":313},"\uf000":{"d":"205,-284v6,37,-31,78,-58,68v-2,-36,27,-63,58,-68xm224,-130v0,31,18,49,41,59v-21,43,-30,70,-72,77v-9,1,-35,-13,-45,-11v-9,-2,-37,13,-45,11v-54,-12,-79,-76,-83,-136v-3,-49,32,-86,79,-86v13,0,39,12,49,12v20,-7,58,-21,83,-6v10,6,19,12,28,22v-20,14,-35,28,-35,58","w":284},"\u00d2":{"d":"51,-128v0,63,42,106,106,106v63,0,105,-43,105,-106v0,-63,-42,-107,-105,-107v-64,0,-106,43,-106,107xm157,-263v81,0,137,53,137,135v0,82,-56,135,-137,135v-81,0,-138,-53,-138,-135v0,-82,56,-135,138,-135xm182,-283r-21,0r-50,-61r35,0","w":313},"\u00da":{"d":"130,7v-67,0,-101,-35,-100,-104r0,-160r31,0r0,160v0,51,19,75,69,75v49,0,68,-24,68,-75r0,-160r31,0r0,160v1,70,-32,104,-99,104xm105,-283r36,-61r35,0r-50,61r-21,0","w":259},"\u00db":{"d":"130,7v-67,0,-101,-35,-100,-104r0,-160r31,0r0,160v0,51,19,75,69,75v49,0,68,-24,68,-75r0,-160r31,0r0,160v1,70,-32,104,-99,104xm78,-283r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0","w":259},"\u00d9":{"d":"130,7v-67,0,-101,-35,-100,-104r0,-160r31,0r0,160v0,51,19,75,69,75v49,0,68,-24,68,-75r0,-160r31,0r0,160v1,70,-32,104,-99,104xm155,-283r-21,0r-50,-61r35,0","w":259},"\u0131":{"d":"30,0r0,-161r27,0r0,161r-27,0","w":87},"\u02c6":{"d":"38,-186r35,-61r34,0r35,61r-22,0r-30,-40r-31,40r-21,0"},"\u02dc":{"d":"72,-230v22,0,46,19,54,-5r16,0v-4,38,-38,41,-72,29v-9,0,-13,5,-16,12r-16,0v3,-21,13,-35,34,-36"},"\u00af":{"d":"43,-203r0,-24r94,0r0,24r-94,0"},"\u02d8":{"d":"141,-233v3,46,-56,56,-87,35v-9,-6,-13,-19,-15,-35r19,0v0,27,64,32,64,0r19,0"},"\u02d9":{"d":"90,-194v-12,0,-21,-9,-21,-21v1,-11,9,-21,21,-21v11,1,21,9,21,21v0,12,-9,21,-21,21"},"\u02da":{"d":"90,-251v-13,0,-24,11,-24,24v0,13,11,24,24,24v13,0,24,-11,24,-24v0,-13,-12,-24,-24,-24xm90,-183v-23,0,-44,-21,-44,-44v0,-24,21,-45,44,-45v24,0,45,21,45,45v0,23,-22,44,-45,44"},"\u00b8":{"d":"134,50v0,41,-58,36,-89,25r0,-18v21,3,62,18,65,-7v2,-15,-16,-15,-33,-15r0,-35r13,0r0,18v26,-1,44,8,44,32"},"\u02dd":{"d":"100,-186r29,-61r31,0r-43,61r-17,0xm55,-186r24,-61r31,0r-38,61r-17,0"},"\u02db":{"d":"57,48v2,-23,14,-34,32,-48r15,0v-12,11,-23,20,-24,39v-1,16,16,14,31,14r0,25v-29,1,-55,-2,-54,-30"},"\u02c7":{"d":"38,-247r21,0r31,40r30,-40r22,0r-35,61r-34,0"},"\u0141":{"d":"32,0r0,-108r-30,21r-15,-21r45,-32r0,-117r31,0r0,100r44,-31r16,21r-60,42r0,96r97,0r0,29r-128,0","w":165,"k":{"\u2019":48,"\u2018":60,"\u201d":48,"\u201c":60,"y":13,"u":6,"o":6,"e":6,"a":6,"Y":26,"W":20,"V":20,"U":6,"T":20,"O":13,";":-7,":":-7,".":-7,"-":6,",":-7}},"\u0142":{"d":"32,0r0,-104r-24,16r-12,-18r36,-26r0,-140r28,0r0,122r24,-17r13,19r-37,26r0,122r-28,0","w":92},"\u0160":{"d":"136,-208v-11,-38,-83,-41,-83,7v0,69,122,41,122,129v0,69,-82,100,-133,63v-14,-10,-23,-25,-28,-44r28,-14v2,60,105,62,102,0v-4,-76,-122,-48,-122,-133v0,-69,116,-87,139,-25xm40,-344r21,0r31,40r30,-40r22,0r-35,61r-34,0","w":185},"\u0161":{"d":"133,-44v3,63,-102,65,-122,17r24,-16v8,39,93,28,65,-13v-27,-16,-91,-34,-83,-62v-3,-57,97,-65,114,-17r-22,14v-6,-27,-63,-33,-64,1v7,34,96,24,88,76xm21,-247r21,0r31,40r30,-40r22,0r-35,61r-34,0","w":146},"\u017d":{"d":"-2,0r145,-229r-118,0r0,-28r170,0r-143,228r137,0r0,29r-191,0xm50,-344r21,0r31,40r30,-40r22,0r-35,61r-34,0","w":203},"\u017e":{"d":"5,0r93,-137r-87,0r0,-24r135,0r-92,137r91,0r0,24r-140,0xm26,-247r21,0r31,40r30,-40r22,0r-35,61r-34,0","w":155},"\u00a6":{"d":"101,-72r0,134r-22,0r0,-134r22,0xm101,-252r0,134r-22,0r0,-134r22,0"},"\u00d0":{"d":"244,-128v0,113,-84,137,-212,128r0,-130r-32,0r0,-27r32,0r0,-100r50,0v114,-7,162,35,162,129xm211,-129v0,-85,-49,-107,-148,-100r0,72r70,0r0,27r-70,0r0,101v99,7,148,-15,148,-100","w":262,"k":{"\u201e":33,"\u201a":33,"\u2019":6,"\u2018":6,"\u201d":6,"\u201c":6,"Y":6,"W":6,"V":6,"A":6,".":21,"-":-11,",":21}},"\u00f0":{"d":"103,-131v-31,0,-59,26,-59,56v0,30,28,55,59,55v31,0,57,-25,57,-55v0,-30,-27,-56,-57,-56xm15,-75v-4,-73,98,-106,145,-55v-10,-33,-30,-57,-54,-80r-57,26r-11,-18r50,-23v-13,-11,-27,-20,-42,-28r13,-19v20,11,37,22,54,36r60,-28r11,18r-54,26v33,36,59,71,60,130v1,57,-32,97,-87,97v-52,0,-85,-32,-88,-82","w":204},"\u00dd":{"d":"88,0r0,-118r-88,-139r36,0r67,111r67,-111r35,0r-87,139r0,118r-30,0xm78,-283r36,-61r35,0r-50,61r-21,0","w":205},"\u00fd":{"d":"22,78r43,-94r-63,-145r32,0r47,116r49,-116r30,0r-107,239r-31,0xm54,-186r36,-61r35,0r-50,61r-21,0","w":158},"\u00de":{"d":"143,-132v0,-45,-33,-45,-82,-45r0,86v47,-1,82,2,82,-41xm176,-134v0,61,-44,76,-115,71r0,63r-30,0r0,-257r30,0r0,52v71,-5,115,10,115,71"},"\u00fe":{"d":"109,-140v-32,0,-54,22,-54,58v0,37,20,62,54,62v33,0,52,-23,52,-57v0,-37,-18,-63,-52,-63xm190,-80v0,83,-104,118,-135,51r0,107r-27,0r0,-350r27,0r0,141v9,-21,29,-35,58,-36v47,0,77,38,77,87","w":206},"\u2212":{"d":"255,-118r0,21r-210,0r0,-21r210,0","w":299},"\u00d7":{"d":"151,-122r83,-83r15,14r-84,84r84,83r-15,15r-83,-84r-84,84r-14,-15r83,-83r-83,-84r14,-14","w":299},"\u00b9":{"d":"65,-101r0,-137r-35,0r11,-16r44,0r0,153r-20,0","w":140},"\u00b2":{"d":"68,-257v45,-3,66,38,43,73v-11,16,-41,47,-59,65r63,0r0,18r-102,0v23,-27,87,-87,88,-112v1,-17,-15,-28,-34,-27v-22,0,-33,12,-33,33r-19,0v-1,-34,19,-48,53,-50","w":140},"\u00b3":{"d":"65,-97v-30,0,-53,-14,-52,-43v6,1,16,-2,21,1v-1,17,14,26,32,26v22,0,34,-10,34,-30v0,-23,-17,-31,-42,-30v1,-6,-4,-17,5,-15v21,0,34,-8,35,-27v0,-17,-13,-27,-30,-27v-18,0,-32,9,-32,26r-20,0v2,-27,23,-38,53,-41v54,-5,69,69,20,77v19,2,33,17,33,38v0,30,-24,45,-57,45","w":140},"\u00bc":{"d":"275,0r0,-31r-76,0r87,-114r8,0r0,100r19,0r0,14r-19,0r0,31r-19,0xm275,-45r0,-63r-48,63r48,0xm74,7r158,-267r22,0r-158,267r-22,0xm62,-111r0,-128r-33,0r11,-15r41,0r0,143r-19,0","w":328},"\u00bd":{"d":"259,-145v42,0,63,34,41,67v-11,16,-39,45,-57,62r62,0r0,16r-98,0v23,-25,83,-81,84,-105v0,-15,-16,-26,-33,-25v-20,0,-31,10,-31,31r-19,0v-1,-31,20,-46,51,-46xm74,7r158,-267r22,0r-158,267r-22,0xm62,-111r0,-128r-33,0r11,-15r41,0r0,143r-19,0","w":328},"\u00be":{"d":"275,0r0,-31r-76,0r87,-114r8,0r0,100r19,0r0,14r-19,0r0,31r-19,0xm275,-45r0,-63r-48,63r48,0xm74,7r158,-267r22,0r-158,267r-22,0xm62,-107v-27,0,-50,-14,-49,-41v6,1,17,-3,19,2v-1,16,14,24,30,24v21,1,34,-9,34,-28v0,-21,-17,-29,-41,-28v1,-5,-3,-16,5,-14v20,0,34,-8,34,-26v0,-16,-12,-24,-29,-24v-18,0,-30,8,-31,24r-19,0v2,-27,21,-39,51,-39v50,0,66,65,19,72v18,3,32,15,31,36v0,28,-24,43,-54,42","w":327},"\u20a3":{"d":"31,0r0,-257r136,0r0,28r-105,0r0,73r105,0r0,29r-105,0r0,127r-31,0xm298,-138v-69,-23,-62,69,-60,138r-28,0r0,-161r25,0r0,34v13,-29,35,-45,73,-36","w":308},"\u011e":{"d":"52,-126v0,86,102,138,165,82v17,-16,27,-36,29,-61r-74,0r0,-28r107,0v3,87,-46,140,-129,140v-83,0,-124,-53,-131,-133v-12,-135,177,-183,242,-83r-25,20v-16,-28,-42,-46,-83,-46v-60,-1,-101,46,-101,109xm198,-330v3,46,-56,56,-87,35v-9,-6,-13,-19,-15,-35r19,0v0,27,64,32,64,0r19,0","w":293},"\u011f":{"d":"99,-21v33,0,52,-24,52,-59v1,-34,-20,-61,-53,-60v-35,0,-53,23,-53,58v0,36,18,62,54,61xm16,-81v0,-83,104,-117,134,-50r0,-30r28,0r0,158v12,83,-85,98,-137,65v-15,-10,-20,-28,-21,-48r30,0v0,28,19,40,48,40v48,0,57,-32,53,-85v-11,20,-29,36,-58,36v-48,1,-77,-37,-77,-86xm154,-233v3,46,-56,56,-87,35v-9,-6,-13,-19,-15,-35r19,0v0,27,64,32,64,0r19,0","w":205},"\u0130":{"d":"31,0r0,-257r31,0r0,257r-31,0xm47,-291v-12,0,-21,-9,-21,-21v1,-11,9,-21,21,-21v11,1,21,9,21,21v0,12,-9,21,-21,21","w":93},"\u015e":{"d":"136,-208v-11,-38,-83,-41,-83,7v0,69,122,41,122,129v0,69,-82,100,-133,63v-14,-10,-23,-25,-28,-44r28,-14v2,60,105,62,102,0v-4,-76,-122,-48,-122,-133v0,-69,116,-87,139,-25xm136,50v0,41,-58,36,-89,25r0,-18v21,3,62,18,65,-7v2,-15,-16,-15,-33,-15r0,-35r13,0r0,18v26,-1,44,8,44,32","w":185},"\u015f":{"d":"133,-44v3,63,-102,65,-122,17r24,-16v8,39,93,28,65,-13v-27,-16,-91,-34,-83,-62v-3,-57,97,-65,114,-17r-22,14v-6,-27,-63,-33,-64,1v7,34,96,24,88,76xm117,50v0,41,-58,36,-89,25r0,-18v21,3,62,18,65,-7v2,-15,-16,-15,-33,-15r0,-35r13,0r0,18v26,-1,44,8,44,32","w":146},"\u0106":{"d":"155,-263v36,-1,61,12,85,27r0,40v-22,-23,-47,-39,-86,-39v-63,0,-99,44,-103,107v-6,105,137,140,189,66r0,41v-23,16,-51,29,-87,28v-81,-3,-134,-54,-134,-134v0,-83,52,-133,136,-136xm128,-283r36,-61r35,0r-50,61r-21,0","w":261},"\u0107":{"d":"44,-78v0,56,72,74,108,40r0,32v-57,33,-137,0,-137,-73v0,-71,73,-108,134,-77r0,30v-39,-29,-105,-9,-105,48xm72,-186r36,-61r35,0r-50,61r-21,0","w":161},"\u010c":{"d":"155,-263v36,-1,61,12,85,27r0,40v-22,-23,-47,-39,-86,-39v-63,0,-99,44,-103,107v-6,105,137,140,189,66r0,41v-23,16,-51,29,-87,28v-81,-3,-134,-54,-134,-134v0,-83,52,-133,136,-136xm101,-344r21,0r31,40r30,-40r22,0r-35,61r-34,0","w":261},"\u010d":{"d":"44,-78v0,56,72,74,108,40r0,32v-57,33,-137,0,-137,-73v0,-71,73,-108,134,-77r0,30v-39,-29,-105,-9,-105,48xm45,-247r21,0r31,40r30,-40r22,0r-35,61r-34,0","w":161},"\u0111":{"d":"97,-20v34,0,54,-24,54,-60v0,-34,-21,-60,-54,-59v-33,0,-52,22,-52,56v0,37,18,62,52,63xm92,-167v29,0,48,14,58,36r0,-74r-63,0r0,-22r63,0r0,-45r28,0r0,45r30,0r0,22r-30,0r0,205r-27,0r0,-29v-10,21,-30,35,-58,36v-47,0,-77,-38,-77,-87v0,-49,29,-87,76,-87","w":208},"\u00ad":{"d":"25,-94r82,0r0,28r-82,0r0,-28","w":131},"\u2219":{"d":"53,-106v-12,0,-21,-9,-21,-21v0,-12,9,-21,21,-21v12,0,21,9,21,21v0,12,-9,21,-21,21","w":106},"\u20ac":{"d":"135,-20v30,0,46,-13,64,-30r-1,34v-17,13,-38,22,-64,23v-59,0,-97,-47,-104,-103r-29,0r4,-18v7,-1,20,3,23,-2v-2,-11,0,-15,0,-26r-27,0r4,-18r26,0v3,-80,107,-133,167,-75r0,34v-22,-33,-77,-44,-109,-12v-13,14,-22,31,-26,53r109,0r-6,18r-106,0v-1,10,-1,19,0,28r98,0r-6,18r-90,0v4,40,33,75,73,76","w":212}}});


if(jQuery('ul#subpage-lftmenu').size() > 0)
{
    jQuery('ul#subpage-lftmenu').find('li.slm-parent-li').each(function(){
        jQuery(this).bind("click", function(){
            if(jQuery(this).hasClass("current"))
                return;
            if(jQuery('ul#subpage-lftmenu li.current ul.sub-ul').css("display") != "none")
                jQuery('ul#subpage-lftmenu li.current ul.sub-ul').animate({height: "toggle"}, 600);
            jQuery('ul#subpage-lftmenu li.current').removeClass("current");
            jQuery(this).addClass("current");
            if(jQuery(this).find('ul.sub-ul').css("display") == "none")
                jQuery(this).find('ul.sub-ul').animate({height: "toggle"}, 600);
            return false;
        });
    });
}


