/*!
 * Copyright (c) 2011 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;
		},

		strict: (function() {
			var doctype;
			// no doctype (doesn't always catch it though.. IE I'm looking at you)
			if (document.compatMode == 'BackCompat') return false;
			// WebKit, Gecko, Opera, IE9+
			doctype = document.doctype;
			if (doctype) {
				return !/frameset|transitional/i.test(doctype.publicId);
			}
			// IE<9, firstChild is the doctype even if there's an XML declaration
			doctype = document.firstChild;
			if (doctype.nodeType != 8 || /^DOCTYPE.+(transitional|frameset)/i.test(doctype.data)) {
				return false;
			}
			return true;
		})()

	};

	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(/(?:^|\s)./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, simple) {
				if (simple) return text.replace(wsStart, '').replace(wsEnd, ''); // @fixme too simple
				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');

		var checkTypes = {
			'': 1,
			'text/css': 1
		};

		function isContainerReady(el) {
			if (!checkTypes[el.type.toLowerCase()]) return true;
			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 = (function(glyphs) {
			var key, fallbacks = {
				'\u2011': '\u002d',
				'\u00ad': '\u2011'
			};
			for (key in fallbacks) {
				if (!hasOwnProperty(fallbacks, key)) continue;
				if (!glyphs[key]) glyphs[key] = glyphs[fallbacks[key]];
			}
			return 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;
		}

		// mouseover/mouseout (standards) mode
		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');
		}

		// mouseenter/mouseleave (probably ie) mode
		function onEnterLeave(e) {
			if (!e) e = window.event;
			// ie model, we don't have access to "this", but
			// mouseenter/leave doesn't bubble so it's fine.
			trigger(e.target || e.srcElement, 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;
				if (hoverState) {
					options = merge(options, options.hover);
					options._mediatorMode = 1;
				}
				api.replace(el, 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);
			}
		};

		this.detach = function(el) {
			if (el.onmouseenter === undefined) {
				removeEvent(el, 'mouseover', onOverOut);
				removeEvent(el, 'mouseout', onOverOut);
			}
			else {
				removeEvent(el, 'mouseenter', onEnterLeave);
				removeEvent(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) {
			// we don't really need "this" right now, saves code
			el.attachEvent('on' + type, listener);
		}
	}

	function attach(el, options) {
		if (options._mediatorMode) return el;
		var storage = sharedStorage.get(el);
		var oldOptions = storage.options;
		if (oldOptions) {
			if (oldOptions === options) return el;
			if (oldOptions.hover) hoverHandler.detach(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 removeEvent(el, type, listener) {
		if (el.removeEventListener) {
			el.removeEventListener(type, listener, false);
		}
		else if (el.detachEvent) {
			el.detachEvent('on' + type, listener);
		}
	}

	function replaceElement(el, options) {
		var name = el.nodeName.toLowerCase();
		if (options.ignore[name]) return;
		if (options.ignoreClass && options.ignoreClass.test(el.className)) return;
		if (options.onBeforeReplace) options.onBeforeReplace(el, options);
		var replace = !options.textless[name], simple = (options.trim === 'simple');
		var style = CSS.getStyle(attach(el, options)).extend(options);
		// may cause issues if the element contains other elements
		// with larger fontSize, however such cases are rare and can
		// be fixed by using a more specific selector
		if (parseFloat(style.get('fontSize')) === 0) return;
		var font = getFont(el, style), node, type, next, anchor, text, lastElement;
		var isShy = options.softHyphens, anyShy = false, pos, shy, reShy = /\u00ad/g;
		var modifyText = options.modifyText;
		if (!font) return;
		for (node = el.firstChild; node; node = next) {
			type = node.nodeType;
			next = node.nextSibling;
			if (replace && type == 3) {
				if (isShy && el.nodeName.toLowerCase() != TAG_SHY) {
					pos = node.data.indexOf('\u00ad');
					if (pos >= 0) {
						node.splitText(pos);
						next = node.nextSibling;
						next.deleteData(0, 1);
						shy = document.createElement(TAG_SHY);
						shy.appendChild(document.createTextNode('\u00ad'));
						el.insertBefore(shy, next);
						next = shy;
						anyShy = true;
					}
				}
				// 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) {
				text = anchor.data;
				if (!isShy) text = text.replace(reShy, '');
				text = CSS.whiteSpace(text, style, anchor, lastElement, simple);
				// modify text only on the first replace
				if (modifyText) text = modifyText(text, anchor, el, options);
				el.replaceChild(process(font, text, 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;
			}
		}
		if (isShy && anyShy) {
			updateShy(el);
			if (!trackingShy) addEvent(window, 'resize', updateShyOnResize);
			trackingShy = true;
		}
		if (options.onAfterReplace) options.onAfterReplace(el, options);
	}

	function updateShy(context) {
		var shys, shy, parent, glue, newGlue, next, prev, i;
		shys = context.getElementsByTagName(TAG_SHY);
		// unfortunately there doesn't seem to be any easy
		// way to avoid having to loop through the shys twice.
		for (i = 0; shy = shys[i]; ++i) {
			shy.className = C_SHY_DISABLED;
			glue = parent = shy.parentNode;
			if (glue.nodeName.toLowerCase() != TAG_GLUE) {
				newGlue = document.createElement(TAG_GLUE);
				newGlue.appendChild(shy.previousSibling);
				parent.insertBefore(newGlue, shy);
				newGlue.appendChild(shy);
			}
			else {
				// get rid of double glue (edge case fix)
				glue = glue.parentNode;
				if (glue.nodeName.toLowerCase() == TAG_GLUE) {
					parent = glue.parentNode;
					while (glue.firstChild) {
						parent.insertBefore(glue.firstChild, glue);
					}
					parent.removeChild(glue);
				}
			}
		}
		for (i = 0; shy = shys[i]; ++i) {
			shy.className = '';
			glue = shy.parentNode;
			parent = glue.parentNode;
			next = glue.nextSibling || parent.nextSibling;
			// make sure we're comparing same types
			prev = (next.nodeName.toLowerCase() == TAG_GLUE) ? glue : shy.previousSibling;
			if (prev.offsetTop >= next.offsetTop) {
				shy.className = C_SHY_DISABLED;
				if (prev.offsetTop < next.offsetTop) {
					// we have an annoying edge case, double the glue
					newGlue = document.createElement(TAG_GLUE);
					parent.insertBefore(newGlue, glue);
					newGlue.appendChild(glue);
					newGlue.appendChild(next);
				}
			}
		}
	}

	function updateShyOnResize() {
		if (ignoreResize) return; // needed for IE
		CSS.addClass(DOM.root(), C_VIEWPORT_RESIZING);
		clearTimeout(shyTimer);
		shyTimer = setTimeout(function() {
			ignoreResize = true;
			CSS.removeClass(DOM.root(), C_VIEWPORT_RESIZING);
			updateShy(document);
			ignoreResize = false;
		}, 100);
	}

	var HAS_BROKEN_REGEXP = ' '.split(/\s+/).length == 0;
	var TAG_GLUE = 'cufonglue';
	var TAG_SHY = 'cufonshy';
	var C_SHY_DISABLED = 'cufon-shy-disabled';
	var C_VIEWPORT_RESIZING = 'cufon-viewport-resizing';

	var sharedStorage = new Storage();
	var hoverHandler = new HoverHandler();
	var replaceHistory = new ReplaceHistory();
	var initialized = false;
	var trackingShy = false;
	var shyTimer;
	var ignoreResize = false;

	var engines = {}, fonts = {}, defaultOptions = {
		autoDetect: false,
		engine: null,
		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
		},
		ignoreClass: null,
		modifyText: null,
		onAfterReplace: null,
		onBeforeReplace: null,
		printable: true,
		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
		softHyphens: true,
		textless: {
			dl: 1,
			html: 1,
			ol: 1,
			table: 1,
			tbody: 1,
			thead: 1,
			tfoot: 1,
			tr: 1,
			ul: 1
		},
		textShadow: 'none',
		trim: 'advanced'
	};

	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.ignoreClass == 'string') {
			options.ignoreClass = new RegExp('(?:^|\\s)(?:' + options.ignoreClass.replace(/\s+/g, '|') + ')(?:\\s|$)');
		}
		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 (typeof elements == 'string') {
			if (!ignoreHistory) replaceHistory.add(elements, arguments);
			elements = [ elements ];
		}
		else if (elements.nodeType) 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('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;text-align:left;}' +
			'cufonshy.cufon-shy-disabled,.cufon-viewport-resizing cufonshy{display:none;}' +
			'cufonglue{white-space:nowrap;display:inline-block;}' +
			'.cufon-viewport-resizing cufonglue{white-space:normal;}' +
			'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.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-align:left;text-indent:-10000in;}' +
			(HAS_INLINE_BLOCK
				? 'cufon canvas{position:relative;}'
				: 'cufon canvas{position:absolute;}') +
			'cufonshy.cufon-shy-disabled,.cufon-viewport-resizing cufonshy{display:none;}' +
			'cufonglue{white-space:nowrap;display:inline-block;}' +
			'.cufon-viewport-resizing cufonglue{white-space:normal;}' +
		'}' +
		'@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;
		var pixelRatio = window.devicePixelRatio || 1;
		if (pixelRatio != 1) {
			canvas.width = canvasWidth * pixelRatio;
			canvas.height = canvasHeight * pixelRatio;
			g.scale(pixelRatio, pixelRatio);
		}

		// 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();
					// the following moveTo is for Opera 9.2. if we don't
					// do this, it won't forget the previous path which
					// results in garbled text.
					g.moveTo(0, 0);
					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.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}}});

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');
