// JavaScript Document

//FOR THE J DOG
if (typeof(cgmirrordir) == 'undefined') {
var cgmirrordir = "";
}

function fileInputUpdate(x) {
	var target = x.parentNode.getElementsByTagName("input")[1];
	target.value = x.value;
}

//BROWSER DETECTION GLOBALS
var isLTIE8 = false;
var isIE8 = false;
var isFF = false;
var isWK = false;
var isIPHONE = false;
if(navigator.userAgent.match(/MSIE 8.0/gi) != null) {
	isIE8 = true;
}
else if(navigator.userAgent.match(/MSIE/gi) != null) {
	isLTIE8 = true;
}
else if(navigator.userAgent.match(/Firefox/gi) != null) {
	isFF = true;
}
else if(navigator.userAgent.match(/iPhone/gi) != null) {
	isIPHONE = true;
}
else if(navigator.userAgent.match(/Webkit/gi) != null) {
	isFF = true;
}


//FORUM TEXT AREA 

var oldCaret;

function forumTextareaInit(ta, ph, isChat) {
	var phantom = document.getElementById(ph);
	var textArea = document.getElementById(ta);
	var interval = 500;
	textArea.locked = false;
	textArea.onchange = runTAUpdate;
	textArea.onkeydown = runTAUpdate;
	textArea.onkeypress = runTAUpdate;
	
	function runTAUpdate() {
		var temp = this;
		if(this.locked == false) {
			this.locked = true;
			var t = setTimeout(function() {forumTAUpdate(temp, phantom, isChat)},interval);
		}
	}
	
	forumTAUpdate(textArea, phantom, isChat);
}

function forumTAUpdate(textArea, phantom, isChat) {
/*if(isChat == true)
{
CG_CHATROOM_tarea_onkeyup(); // JEREMY.
}
*/
	textArea.locked = false;
	phantom.innerHTML = textArea.value.replace(/&/gi, "&amp;").replace(/</gi, "&lt;").replace(/>/gi, "&gt;").replace(/"/gi, "&quot;") + "&nbsp;";
	//IF LOWER THAN IE 8
	if(isLTIE8 == true) {
		phantom.innerHTML = "<!--[if IE]><pre><![endif]-->" + textArea.value.replace(/\n/g, '<br/>') + "&nbsp;" + "<!--[if IE]></pre><![endif]-->";
	}
	var pHeight = phantom.offsetHeight;
	textArea.style.height = pHeight + "px";
	
	if(chatWindow && isChat == true) {
		var maxChars = 850;
		if(textArea.value.length > maxChars) {
			var str = textArea.value;
			str = str.slice(0,maxChars);
			textArea.value = str;
			forumTAUpdate(textArea,phantom,isChat);
			alert("Your post has exceeded the character limit of " + maxChars + " and has been clipped.");
		}
		chatWindow.updateMidTextHeight();
	}
}

function GetCaretPosition(control) {
	var CaretPos = 0;
	//IF IS LOWER THAN IE 8
	if(isLTIE8 == true) {
		control.focus();
		var Sel = document.selection.createRange ();
		var Sel2 = Sel.duplicate();
		Sel2.moveToElementText(control);
		var CaretPos = -1;
		while(Sel2.inRange(Sel))
		{
		Sel2.moveStart('character');
		CaretPos++;
		}
	}
	
	if (control.selectionStart || control.selectionStart == '0') {
	CaretPos = control.selectionStart;
	}
	oldCaret = CaretPos;
	return (CaretPos);
}

function setCaretPosition(ctrl, pos){
	if(ctrl.setSelectionRange)
	{
		ctrl.focus();
		ctrl.setSelectionRange(pos,pos);
	}
	else if (ctrl.createTextRange) {
		var range = ctrl.createTextRange();
		range.collapse(true);
		range.moveEnd('character', pos);
		range.moveStart('character', pos);
		range.select();
	}
}

function forumTAInsert(ta, ph, what, what2, middle_text) {
	var textArea = document.getElementById(ta);
	var phantom = document.getElementById(ph);
	var text = textArea.value;
	var caret = GetCaretPosition(textArea);
	var text1 = text.slice(0,caret);
	var text2 = text.slice(caret);
if(what2 == null || !isNaN(what2)) // catch+fix old way.
	{
what2 = "";
	}
if(middle_text == null || !isNaN(middle_text)) // catch+fix
	{
middle_text = "";
	}
//middle_text is only used when user hasn't got text highlighted, so that [list]*Item 1\n*Item 2[/list] can wrap around without the middle part "*Item 1\n*Item 2" being entered
var currenttext = textArea.value;

if(document.selection)
	{
//IE:
var selection = document.selection.createRange().text;
if(selection && selection != "")
		{
if(selection.substr(0, 3) == 'www' && what == '[URL=www.google.com]' || selection.substr(0, 4) == 'http' && what == '[URL=www.google.com]') // HANDLE URL SPECIAL CASE.
{
selection = '[URL='+selection+']Click Me[/URL]';
}
else
{
selection = what+selection+what2;
}
document.selection.createRange().text = selection;
textArea.focus();
forumTAUpdate(textArea, phantom);
return;
		}
	}
	else if (textArea.selectionEnd && (textArea.selectionEnd - textArea.selectionStart > 0))
	{

var start = textArea.selectionStart;
var end = textArea.selectionEnd;
var length = end - start;
var currenttext = textArea.value;
var before = currenttext.substr(0, start);
var selection = currenttext.substr(start, length);
var after = currenttext.substr(end);
if(selection.substr(0, 3) == 'www' && what == '[URL=www.google.com]' || selection.substr(0, 4) == 'http' && what == '[URL=www.google.com]') // HANDLE URL SPECIAL CASE.
{
selection = '[URL='+selection+']Click Me[/URL]';
}
else
{
selection = what+selection+what2;
}
textArea.value = before+selection+after;
textArea.focus();
forumTAUpdate(textArea, phantom);
		return;
	}
//simply enter into textarea if nothing is highlighted above (or if it didnt detect that something was highlighted)
var newText = text1 + what + middle_text + what2 + text2;
textArea.value = newText;
setCaretPosition(textArea, oldCaret + what.length);
forumTAUpdate(textArea, phantom);
}
//END FORUM TEXT AREA

//PAGE SELECTOR//
var currPage;
var oldPage;
function initPageSelector(id,btnid,prefix,suffix) {
	var active = false;
	var wrapper = document.getElementById(id);
	var sliderB = document.getElementById(btnid);
	var sliderWrapper = wrapper.getElementsByTagName("div")[1];
	var sliderTile = sliderB.parentNode;
	var numbersArray = wrapper.getElementsByTagName('label');
	var counter = wrapper.getElementsByTagName("div")[0];
	currPage = parseInt(numbersArray[0].innerHTML);
	var totalPages = parseInt(numbersArray[1].innerHTML.replace(/\//gi, ""));
	if(totalPages/10 < 1) {
		counter.style.width="40px";
		wrapper.style.width = "116px";
	}
	else if(totalPages/100 < 1) {
		wrapper.style.width = "136px";
	}
	else if(totalPages/1000 < 1)  {
		wrapper.style.width = "156px";
	}
	else if(totalPages/10000 < 1)  {
		wrapper.style.width = "176px";
	}
	var currPercent = Math.round((currPage / totalPages) * 100)/100;
	var buttonWidth = sliderB.offsetWidth;
	var containerWidth = sliderTile.offsetWidth;
	var containerPos = getAbsolutePos(sliderTile);
	sliderB.style.left = Math.round(containerWidth * currPercent) + "px";
	
	wrapper.onclick = function() {
		if (document.onmousemove != f_sliderMouseMove) {
			window.f_savedMouseMove = document.onmousemove;
			document.onmousemove = f_sliderMouseMove;
		}
		if (document.onmouseup != f_sliderMouseUp) {
			window.f_savedMouseUp = document.onmouseup;
			document.onmouseup = f_sliderMouseUp;
		}
	}
	
	function f_sliderMouseMove(event) {
		if(active == true) {
			if (!event && window.event) {
				event = window.event;
			}
			var leftX;
			var cursorX = event.clientX;
			if (cursorX - containerPos.x < 0) {
				leftX = 0;
			}
			else if(cursorX - containerPos.x > containerWidth) {
				leftX = containerWidth;
			}
			else {
				leftX = cursorX - containerPos.x;
			}
			sliderB.style.left = leftX + "px";
			updatePageNo(containerWidth, leftX, totalPages, numbersArray[0]);
		}
	}
	
	function f_sliderMouseUp(event) {
		if(active == true) {
			if (!event && window.event) {
				event = window.event;
			}
			window.onmousemove = function() {}
			window.open(prefix + currPage + suffix ,'_self');
			window.onmouseup = function(event) {}
		}
		active = false;
	}
	
	sliderB.onmousedown = function(event) {
		if (!event && window.event) {
			event = window.event;
		}
		else {
			event.preventDefault();
		}
		active = true;
	}
	
	slider(counter, sliderWrapper, false, true);
	
}

function updatePageNo(maxi, left, total, target) {
	var newPerc = ((left/maxi)*100)/100;
	currPage = Math.ceil(total * newPerc);
	if(currPage != oldPage) {
		if(currPage == 0) {
			target.innerHTML = 1;
			currPage = 1;
		}
		else {
			target.innerHTML = currPage;
		}
		oldPage = currPage;
		Cufon.replace(target);
	}
}

//DISABLE IE DRAG N DROP

if(isLTIE8 == true) {
	document.ondragstart = function(e) {  
		return false;  
	}  
}

//PAGE SELECTOR END//

//MODERATION LISTS

function modSearch() {
	var ul_lists = document.getElementsByTagName("ul");
	for(var i = 0; i < ul_lists.length; i++) {
		if(ul_lists[i].parentNode.getAttribute("id") == "page_mod" || ul_lists[i].parentNode.className == "post_mod" || ul_lists[i].parentNode.className == "user_mod") {
			modWrapper(ul_lists[i]);
		}
	}
}

function modWrapper(element) {
	var gtimer;
	var lists = element.parentNode.getElementsByTagName("ul");
	for(var i = 0; i < lists.length; i++) {
		var target = lists[i];
		if(target.parentNode.nodeName == "LI") {
			modChildren(target);
		}
		else {
			element.parentNode.onmouseover = function() {
				clearTimeout(gtimer);
				element.style.visibility = "visible";
			}
			element.parentNode.onmouseout = function() {
				gtimer = setTimeout(function() {element.style.visibility = "hidden"},500);
			}
		}
	}
}

function modChildren(element) {
	var intimer;
	var outtimer;
	element.parentNode.onmouseover = function() {
		clearTimeout(outtimer);
		intimer = setTimeout(function() {element.style.visibility="visible"},300);
	}
	element.parentNode.onmouseout = function() {
		clearTimeout(intimer);
		outtimer = setTimeout(function() {element.style.visibility="hidden"},300);
	}

}

//LIGHTWEIGHT ANIMATOR

function grow(trigger, target, direction) {
	
	//GET TARGETS
	var trig;
	var tar;
	
	if(typeof(trigger) == "string") {
		trig = document.getElementById(trigger);
	}
	else {
		trig = trigger;
	}
	
	if(typeof(target) == "string") {
		tar = document.getElementById(target);
	}
	else {
		tar = target;
	}
	
	clearTimeout(trig.timer);
	
	//RUN BEFORE?
	if(!tar.maxH) {
		tar.maxH = tar.offsetHeight;
		tar.curr = 0;
		tar.style.display = "block";
		tar.style.height = "0px";
		tar.style.visibility = "visible";
		tar.style.overflow = "hidden";
		alert("RUN");
	}
	else {
		trig.timer = setInterval(growAnim,50);
	}
	
	function growAnim() {
		var diff = Math.round(((tar.maxH * direction) - tar.curr) * .2);
		tar.curr += diff;
		if(diff == 0) {
			clearTimeout(trig.timer);
		}
		else {
			tar.style.height = tar.curr + "px";
		}
	}
}


//ROBUST ANIMATOR

function slider(trigger, target, triggerType, direction, delay, trigger2) {
	var tar;
	var tarHeight;
	var tarWidth;
	var io = false;
	var lockout = false;
	var overTimer;
	var outTimer;
	var gTimer;
	var rem = 0;
	
	//ACCEPT ELEMENTS AND ID STRINGS
	if(typeof(trigger) == "string") {
		trig = document.getElementById(trigger);
		trig2 = document.getElementById(trigger2);
	}
	else {
		trig = trigger;
		trig2 = trigger2;
	}
	
	this.trig = trig;
	this.trig2 = trig2;
	
	if(typeof(target) == "string") {
		tar = document.getElementById(target);
	}
	else {
		tar = target;
	}
	
	//SET VALUES
	
	tarHeight = tar.offsetHeight;
	tarWidth = tar.offsetWidth;
	
	if(direction == true) {
		tar.style.height = "0px";
	}
	else {
		tar.style.width = "0px";
	}
	
	tar.style.overflow = "hidden";
	tar.style.visibility = "hidden";

	
	//DISPATCHERS
	if(triggerType == true) {
		trig.onmouseover = function() {
			clearTimeout(gTimer); 
			if(io == false) {
				gTimer = setTimeout(function() {io = true; clearTimeout(outTimer);over(rem)},delay)
			}
		}
		trig.onmouseout = function() {
			clearTimeout(gTimer);
			if(io == true) {
				gTimer = setTimeout(function() {io = false; clearTimeout(overTimer);out(rem)},delay)
			}
		}
	}
	else {
		trigClick = function() {
			if(io == false) {
				clearTimeout(outTimer);
				over(rem);
				io = true;
			}
			else {
				clearTimeout(overTimer);
				out(rem);
				io = false;
			}
		}
		trig.onclick = trigClick;
		if(trig2 != null) {trig2.onclick = trigClick};
	}
		
	function over(rem) {
		//Prepare First Run
		if(rem == 0) {
			tar.style.visibility = "visible";
			if(direction == true) {
				var rem = tarHeight;
			}
			else {
				var rem = tarWidth;
			}
		}
		
		//Get new value
		var takeThis = rem*.5;
		if(takeThis < 1) {
			takeThis = 1;
		}
		rem -= takeThis;
		if(rem >= 0) {
			if(direction == true) {
				overTimer = setTimeout(function() {tar.style.height = (tarHeight - rem) + "px"; over(rem)},50);
			}
			else {
				overTimer = setTimeout(function() {tar.style.width = (tarWidth - rem) + "px"; over(rem)},50);
			}
		}
		else {
			if(direction == true) {
				tar.style.height = tarHeight + "px";
			}
			else {
				tar.style.width = tarWidth + "px";
			}
			tar.style.overflow = "visible";
			rem = 0;
		}
	}
	
	function out(rem) {
		//Prepare First Run
		if(rem == 0) {
			tar.style.overflow = "hidden";
			if(direction == true) {
				var rem = tarHeight;
			}
			else {
				var rem = tarWidth;
			}
		}
		
		//Get new value
		var takeThis = rem*.5;
		if(takeThis < 1) {
			takeThis = 1;
		}
		rem -= takeThis;
		if(rem >= 0) {
			if(direction == true) {
				outTimer = setTimeout(function() {tar.style.height = rem + "px"; out(rem)},50);
			}
			else {
				outTimer = setTimeout(function() {tar.style.width = rem + "px"; out(rem)},50);
			}
		}
		else {
			tar.style.visibility = "hidden";
			if(direction == true) {
				tar.style.height = "0px";
			}
			else {
				tar.style.width = "0px";
			}
			rem = 0;
		}
	}	
}

function textSlider() {
	var tables = document.getElementsByTagName("table");
	for(var i = 0; i < tables.length; i++) {
		var d = tables[i].getElementsByTagName("div");
		for(var y = 0; y < d.length; y++) {
			if(d[y].className == "title_wrapper") {
				if(d[y].checked != true) {
					var slider = d[y].getElementsByTagName("div")[0];
					var maxWidth = d[y].offsetWidth;
					var sliderWidth = slider.offsetWidth;
					
					if(sliderWidth > maxWidth) {
						d[y].mWidth = maxWidth;
						d[y].sWidth = sliderWidth;
						d[y].slider = slider;
						d[y].parentNode.style.backgroundImage = "url('" + cgmirrordir + "images/arrow_overflow.gif')";
						
						var animTimer;
						var lockoutTimer;
						d[y].onmouseover = function() {
							var savedthis = this;
							var totalWidth =savedthis.mWidth;
							var slider = savedthis.slider;
							var sliderWidth =  savedthis.sWidth;
							
							var diff = sliderWidth - totalWidth + 14;
							var offset = 0;
							var dir = true;
							animTimer = setInterval(function() {
								if(offset < diff && dir == true) {
									 offset += 5; 
									 slider.style.left = -offset + "px";
								}
								else if(offset >= diff && dir == true) {
									dir = false; 
								}
								else if(offset > -2 && dir == false){
									offset -= 5; 
									slider.style.left = -offset + "px";
								}
								else {
									dir = true; 
								}
							},100);
						}
						d[y].onmouseout = function() {
							clearTimeout(animTimer);
							clearTimeout(lockoutTimer);
							this.slider.style.left = 0 + "px";
						}
						
					}
				}
				d[y].checked = true;
			}
		}
	}
}

function alternator() {
	var tables = document.getElementsByTagName("table");
	var tables_no = tables.length;
	var lists = document.getElementsByTagName("ul");
	var lists_no = lists.length;
	var dlists = document.getElementsByTagName("dl");
	var dlists_no = dlists.length;
	
	for(var i = 0; i < tables_no; i++) {
		trAlternate(tables[i]);
	}
	
	for(var i = 0; i < lists_no; i++) {
		listAlternate(lists[i]);
	}
	
	for(var i = 0; i < dlists_no; i++) {
		listAlternate(dlists[i]);
	}
}

function listAlternate(list) {
	if(list.className.search("compact_list") != "-1") {
		if(list.nodeName.toLowerCase() == "ul") {
			var li_list = list.getElementsByTagName("li");
		}
		else if(list.nodeName.toLowerCase() == "dl") {
			var li_list = list.getElementsByTagName("dd");
		}
		var li_list_length = li_list.length;
		for(var i = 1; i < li_list_length; i++) {
			li_list[i].className = "odd";
			i++;
		}
	}
}

function trAlternate(table) {
	if(table.className.search("compact_table") != "-1" || table.className.search("fp_table") != "-1") {
		var trs = table.rows;
		for(var i = 1; i < trs.length; i++) {
			trs[i].className = "odd";
			i++;
		}
	}
}
//CUSTOM SELECT BOX

function customSelect(trigger, textarea, set) {
	var trig = document.getElementById(trigger);
	var text = document.getElementById(textarea);
	var target = trig.nextSibling;
	while(target.nodeType != 1)  {
		target = target.nextSibling;
	}
	if(set == false) {
		var title = target.firstChild;
		while(title.nodeType != 1) {
			title = title.nextSibling;
		}
		title = title.innerHTML;
		text.innerHTML = title;
	}
	else {
		var title = text.innerHTML;
	}
	var links = target.getElementsByTagName("a");
	for(var i = 0; i < links.length; i++) {
		links[i].onclick = function() {
			text.innerHTML = this.innerHTML;
			this.onmouseout = "";
		}
		links[i].onmouseover = function() {
			text.innerHTML = this.innerHTML;
		}
		links[i].onmouseout = function() {
			text.innerHTML = title;
		}
	}
	var width = target.offsetWidth;
	text.style.width = width + "px";
	target.style.width = width + 7 + "px";
	slider(trigger, target, false, true, "0", textarea);
}


//GET STYLE http://www.quirksmode.org

function getStyle(el,styleProp)
{
	var x = document.getElementById(el);
	if (x.currentStyle)
		var y = x.currentStyle[styleProp];
	else if (window.getComputedStyle)
		var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp);
	return y;
}

//GALLERY

function gallery() {
	var images = document.getElementsByName("gallery");
	var amount = images.length;
	
	//set behavior
	for(var i = 0; i < amount; i++) {
		images[i].value = i;
		images[i].onclick = function() {
			loadUI(this)
		}
	}
	
	//checkurl
	var url = location.hash;
	if(url.match("#gallery_") != null) {
		url = url.replace(/#gallery_/gi,"");
		url = parseInt(url);
		if(isNaN(url) == false && amount > 0) {
			var which = parseInt(url);
			images[which].onclick();
		}
	}
	
	function removeBlack() {
		document.body.removeChild(document.getElementById("black"));
	}
	
	//LOAD UI
	
	function loadUI(image) {
		
		var upTo = image.value;
		
		var black = document.createElement("div");
		var nav = document.createElement("div");
		var wrapper = document.createElement("div");
		var frame = document.createElement("div");
		var closeg = new Image();
		var desc = document.createElement("div");
		desc.setAttribute("id","gallerydesc");
		closeg.src = cgmirrordir + "images/buttons/gallery_close.png";
		closeg.setAttribute("id","galleryclose");
		closeg.onclick = removeBlack;
		var next = new Image();
		next.src= cgmirrordir + "images/buttons/gallery_next.png";
		next.onclick = gonext;
		next.setAttribute("id","gallerynext");
		var prev = new Image();
		prev.src= cgmirrordir + "images/buttons/gallery_prev.png";
		prev.onclick = goprev;
		prev.setAttribute("id","galleryprev");
		var title = document.createElement("label");
		title.setAttribute("id","gallerytitle");
		black.setAttribute("id", "black");
		nav.setAttribute("id","gallerynav");
		wrapper.setAttribute("id","blackwrapper");
		frame.setAttribute("id","pictureframe");
		wrapper.appendChild(frame);
		black.appendChild(wrapper);
		nav.appendChild(next);
		nav.appendChild(prev);
		nav.appendChild(closeg);
		nav.appendChild(title);
		nav.appendChild(desc);
		black.appendChild(nav);
		document.body.appendChild(black);
		
		var availHeight;
		var availWidth;
		
		if(window.innerHeight) {
			availHeight = window.innerHeight;
			availWidth = window.innerWidth;
		}
		else {
			availHeight = document.documentElement.clientHeight;
			availWidth = document.documentElement.clientWidth;
		}
				
		function update(image) {
			location.hash = "gallery_" + image.value;
			var src = image.src;
			var newsrc = image.getAttribute("title");
			title.innerHTML = image.getAttribute("alt") + " <span class='highlight'> (" + (image.value + 1) + "/" + amount + ")</span>";
			if(image.getAttribute("longdesc") == "") {
				desc.innerHTML = newsrc;
			}
			else {
				desc.innerHTML = image.getAttribute("longdesc");
			}
			Cufon.replace(title);
			var image = new Image();
			image.onload = animIn;
			image.src = newsrc;
			image.setAttribute("id","currentImage");
			image.onclick = gonext;
			wrapper.style.visibility="hidden";
			if(isLTIE8 == true) {
				wrapper.style.visibility="visible";
			}
			
			function animIn() {
				var width = image.width;
				var height = image.height;
				var ratio = width/height;
				
				if(width > availWidth - 40) {
					width = availWidth - 40;
					height = width/ratio;
					image.width = width;
					image.height = height;
				}
				
				if(height > availHeight - 100) {
					height = availHeight - 100;
					width = height*ratio;
					image.width = width;
					image.height = height;
				}
				
				var y = (availHeight/2) - (height/2);
				if(y < 65) {
					y = 65;
				}
				else if(y > 200) {
					y = 200;
				}
				var x = (availWidth/2) - (width/2);
				
				var wrapper = document.getElementById("blackwrapper");
				var frame = document.getElementById("pictureframe");
				wrapper.style.top = y + "px";
				wrapper.style.left = x + "px";
				wrapper.style.visibility="visible";
				frame.innerHTML = "";
				frame.appendChild(image);
			}
		}
		
		function gonext() {
			if(upTo+1 >= amount) {
				upTo = 0;
			}
			else {
				upTo++;
			}
			update(images[upTo]);
		}
		
		function goprev() {
			if(upTo-1 < 0) {
				upTo = amount -1;
			}
			else {
				upTo--;
			}
			update(images[upTo]);
		}
		update(image);
	}
}

function list_select(x) {
	var el = x;
	var checkbox_ar = document.getElementsByName("chk");
	for(var i = 0; i < checkbox_ar.length; i++) {
		checkbox_ar[i].checked = x.checked;
		checkbox_ar[i].onchange();
	}
}

function list_select_listen() {
	var checkbox_ar = document.getElementsByName("chk");
	for(var i = 0; i < checkbox_ar.length; i++) {
		checkbox_ar[i].original = checkbox_ar[i].parentNode.parentNode.className; 
		checkbox_ar[i].onchange = function() {
			if(this.checked == true) {
				this.parentNode.parentNode.className = this.original + " mail_selected";
			}
			else {
				this.parentNode.parentNode.className = this.original;
			}
		}
		checkbox_ar[i].onchange();
	}
}

var popup_open;
var popup_button_wrapper;
var popup_temp_content = ""; //JEREMY TEMP FIX.
var popup_temp_contentid = ""; //JEREMY TEMP FIX.
function popup(x, pWidth, posX, posY, content) {
	
	var button_w = x.offsetWidth;
	var button_h = x.offsetHeight;
	var cloned = x.cloneNode(true);
	cloned.onclick = popup_close;
	
	//CLOSE OTHERS
	popup_close();
	
	//CREATE
	var xWrap = document.createElement("div");
	xWrap.className = "popup_bwrapper";
	var button = document.createElement("div");
	button.className = "button";
	button.appendChild(cloned);
	xWrap.appendChild(button);
	popup_button_wrapper = xWrap;
	var p_wrapper = document.createElement("div");
	p_wrapper.className = "popup_wrapper";
	var p = document.createElement("div");
	p.className = "popup";
	//p.innerHTML = content;

//BEGIN JEREMY. - to reverse, comment out all this, and uncomment line above
if(document.getElementById(content).innerHTML)
	{
p.innerHTML = document.getElementById(content).innerHTML; // changed content above to be the actual ID.
	}
	else
	{
p.innerHTML="ERROR";
	}
popup_temp_content = document.getElementById(content).innerHTML;
popup_temp_contentid = content;
document.getElementById(content).innerHTML = ""; // destroy current HTML so no duplicated IDs etc, should replace once popup is closed.
//END JEREMY



	p.style.width = pWidth + "px";
	
	p_wrapper.appendChild(p);
	popup_open = p_wrapper;
	document.body.appendChild(p_wrapper);
	document.body.appendChild(xWrap);
	
	//POSITION
	var pos = getAbsolutePos(x);
	var xy = pos.y;
	var xx = pos.x;
	if(posY == "up") {
		xy -= p_wrapper.offsetHeight;
		xy += button_h;
		xy += 7;
		p_wrapper.className += " up";
		xWrap.className += " up";
		xWrap.style.top = (pos.y - 5)  + "px";
	}
	else {
		xy -= 5;
		p_wrapper.className += " down";
		xWrap.className += " down";
		xWrap.style.top = (pos.y - 10) + "px";
	}
	if(posX == "left") {
		xx -= p_wrapper.offsetWidth;
		xx -= 4;
		xWrap.className += " left";
		xWrap.style.left = pos.x + "px";
		p_wrapper.className += " left";
	}
	else {
		xx += button_w;
		xx += 5;
		xWrap.className += " right";
		xWrap.style.left = (pos.x - 10) + "px";
		p_wrapper.className += " right";
	}
	
	p_wrapper.style.left = xx + "px";
	p_wrapper.style.top = xy + "px";
	button.style.height = button_h + "px";
	
}

function popup_close() {
	if(popup_open != null) {
		document.body.removeChild(popup_open);
		document.body.removeChild(popup_button_wrapper);
		popup_open = null;
		popup_button_wrapper = null;
		if(document.getElementById(popup_temp_contentid))
		{
		document.getElementById(popup_temp_contentid).innerHTML=popup_temp_content;
		}
	}
}

//TEXTAREA CLEARER 

function textfieldClear() {
	var inputs = document.getElementsByName("input_clear");
	for(var i = 0; i < inputs.length; i++) {
		if(inputs[i].getAttribute("type") == 'text' || inputs[i].getAttribute("type") == 'password') {
			inputs[i].orig = inputs[i].value;
			inputs[i].onfocus = function() {
				if(this.value == this.orig) {
					this.value = "";
				}
			}
			inputs[i].onblur = function() {
				if(this.value == "") {
					this.value = this.orig;
				}
			}
		}
	}
}

function removeAllChildNodes(node) {
	if (node && node.hasChildNodes && node.removeChild) {
		while (node.hasChildNodes()) {
			node.removeChild(node.firstChild);
		}
	}
}

/* CG WINDOW */
function cgwindow(id,t) {
	var html = document.getElementById(id).innerHTML;
	document.getElementById(id).innerHTML=""; // clear HTML
	var black = document.createElement("div");
	black.setAttribute("id","black_w");
	var shadow = document.createElement("div");
	shadow.className = "cg_window_s";
	var win = document.createElement("div");
	win.className = "popup cg_window";
	var title = document.createElement("div");
	title.className = "title";
	var titlespan = document.createElement("span");
	titlespan.innerHTML = t;
	var closeb = document.createElement("a");
	closeb.className = "sb_button close fr";
	var content = document.createElement("div");
	content.className = "content";
	content.setAttribute("id","cgwindow_content"); // JEREMY.
	content.innerHTML = html;
	closeb.onclick = function() {
		document.body.removeChild(black);
		document.getElementById(id).innerHTML=html; // reset HTML.
	}
	title.appendChild(closeb);
	title.appendChild(titlespan);
	win.appendChild(title);
	win.appendChild(content);
	shadow.appendChild(win);
	black.appendChild(shadow);
	document.body.appendChild(black);
	
	var availHeight;
	if(window.innerHeight) {
		availHeight = window.innerHeight;
	}
	else {
		availHeight = document.documentElement.clientHeight;
	}
	var height = shadow.offsetHeight;
	
	if(height < availHeight - 100) {
		var diff = availHeight - height;
		var margin = diff/2;
		shadow.style.marginTop = margin + "px";
	}
	else {
		content.style.height = availHeight - 154 + "px";
		shadow.style.marginTop = "50px";
	}
	
}

function cE(type) {
	return document.createElement(type);
}

var ajaxPopups_ar = new Array();
var ajaxPopups_queue = new Array();
var divert = false;
function ajaxPopup(titletext,contents) {
	var gthis = this;
	this.timerActive = null;
	this.shiftOffset = 0;
	
	this.wrapper = cE("div");
	this.wrapper.className="ajaxwrapper";
	this.wrapper.order = 0;
	this.wrapper.Y = 40;
	
	this.title = cE("div");
	this.title.className = "title";
	this.title.innerHTML = titletext;
	var closebtn = cE("div");
	closebtn.className="fr";
	closebtn.innerHTML ="X";
	closebtn.onclick = function() {
		makeSmaller();
		clearTimeout(gthis.timerActive);
	}
	var anim = cE("div");
	anim.className = "anim";
	var lining = cE("div");
	lining.className = "lining";
	this.text = cE("div");
	this.text.innerHTML = contents;
		
	lining.appendChild(anim);
	this.title.appendChild(closebtn);
	lining.appendChild(this.title);
	lining.appendChild(this.text);
	this.wrapper.appendChild(lining);
	
	this.blockInit = function() {
		gthis.wrapper.style.visibility = "hidden";
		document.body.appendChild(gthis.wrapper);
		Cufon.replace(gthis.title)
		gthis.wrapper.maxWidth = gthis.wrapper.offsetWidth;
		ajaxPopups_ar.unshift(gthis.wrapper);
		gthis.wrapper.style.width = "0px";
		gthis.wrapper.currWidth = 0;
		gthis.wrapper.style.visibility="visible";
	}
	
	this.isfirst = function() {
		if(divert == false) {
			gthis.blockInit();
			if(ajaxPopups_ar.length > 1) {
				divert = true;
				shiftDown();
			}
			else {
				makeBigger();
			}
		}
		else {
			ajaxPopups_queue.push(gthis);
		}
	}
	this.isfirst();
			
	function makeBigger() {
		var newVal = gthis.wrapper.currWidth + ((gthis.wrapper.maxWidth - gthis.wrapper.currWidth)*.3);
		if(newVal < gthis.wrapper.maxWidth - 1 && newVal < gthis.wrapper.maxWidth) {
			gthis.wrapper.currWidth = newVal;
			gthis.wrapper.style.width = gthis.wrapper.currWidth + "px";
			setTimeout(function() {makeBigger()},50);
		}
		else {
			gthis.wrapper.currWidth = gthis.wrapper.maxWidth;
			gthis.wrapper.style.width = gthis.wrapper.maxWidth + "px";
		}
	}
	
	function makeSmaller() {
		var newVal = gthis.wrapper.currWidth + ((0 - gthis.wrapper.currWidth)*.3);
		if(newVal > 1) {
			gthis.wrapper.currWidth = newVal;
			gthis.wrapper.style.width = gthis.wrapper.currWidth + "px";
			setTimeout(function() {makeSmaller()},50);
		}
		else {
			gthis.wrapper.currWidth = 0;
			gthis.wrapper.style.width = "0px";
			document.body.removeChild(gthis.wrapper);
			ajaxPopups_ar.splice([gthis.wrapper.order],1);
			collapse(gthis.wrapper.order);
		}
	}
	
	function shiftDown() {
		if(gthis.shiftOffset < 8) {
			for(var i = 1; i < ajaxPopups_ar.length; i++) {
				ajaxPopups_ar[i].order = i;
				ajaxPopups_ar[i].Y += 6;
				ajaxPopups_ar[i].style.top = ajaxPopups_ar[i].Y + "px";
			}
			gthis.shiftOffset++;
			setTimeout(function() {shiftDown()},50);
		}
		else {
			makeBigger();
			gthis.shiftOffset = 0;
			divert = false;
			if(ajaxPopups_queue.length > 0) {
				var target = ajaxPopups_queue.shift();
				target.isfirst();
			}
		}
	}
	
	function collapse(start) {
		if(gthis.shiftOffset < 8) {
			for(var i = start; i < ajaxPopups_ar.length; i++) {
				ajaxPopups_ar[i].order = i;
				ajaxPopups_ar[i].Y -= 6;
				ajaxPopups_ar[i].style.top = ajaxPopups_ar[i].Y + "px";
			}
			gthis.shiftOffset++;
			setTimeout(function() {collapse(start)},50);
		}
		else {
			gthis.shiftOffset = 0;
		}
	}
		
	this.completed = function(delay) {
		if(gthis.timerActive == null) {
			gthis.wrapper.className += " completed";
			if(delay != null) {
				gthis.timerActive = setTimeout(function() {makeSmaller()}, delay);
			}
		}
	}
	
	this.failed = function(error, delay) {
		if(gthis.timerActive == null) {
			gthis.wrapper.className += " failed";
			gthis.text.innerHTML = error;
			Cufon.replace(gthis.title);
			gthis.wrapper.style.width = "auto";
			var newWidth = gthis.wrapper.offsetWidth;
			gthis.wrapper.maxWidth = newWidth;;
			gthis.wrapper.currWidth = newWidth;
			if(delay != null) {
				gthis.timerActive = setTimeout(function() {makeSmaller()}, delay);
			}
		}
	}

}

function showhide(x,target, hidden) {
	var tar = document.getElementById(target);
	if(x.clicked != true) {
		x.clicked = true;
		clearTimeout(x.timerClose);
		x.timerOpen = setTimeout(function() {
		if(hidden == true) {
			tar.style.display = "block";
		}
		else {
			tar.style.display = "block";
		}
										  },100);
	}
	else {
		x.clicked = false;
		clearTimeout(x.timerOpen);
		x.timerClose = setTimeout(function() {
		if(hidden == true) {
			tar.style.display = "none";
		}
		else {
			tar.style.display = "block";
		}
										   },100);
	}
}

function removeElement(id) {
	var el = document.getElementById(id);
	el.parentNode.removeChild(el);
}

function popup_gobottom(x) {
	var target;
	while(x.previousSibling.nodeType != 1) {
		x = x.previousSibling;
	}
	target = x.previousSibling;
	target.scrollTop = target.scrollHeight;
}

function tree(x) {
	if(!x.status && x.parentNode.className != "open tree" || x.status == "closed") {
		x.status = "closed";
	}
	else {
		x.status = "open";
	}
	showHide(x);
	function showHide(el) {
		var curr = el;
		var apply;
		var link = el.getElementsByTagName("a")[0];
		
		if(el.status == 'closed') {
			el.status = 'open';
			apply = "block";
			link.style.backgroundImage = "url(" + cgmirrordir + "images/buttons/collapse.png)";
		}
		else {
			el.status = 'closed';
			apply = "none";
			link.style.backgroundImage = "url(" + cgmirrordir + "images/buttons/expand.png)";
		}
		while(curr.nextSibling != null) {
			if(curr.nextSibling.style) {
				curr.nextSibling.style.display = apply;
			}
			curr = curr.nextSibling;
		}
	}
}

var star_ar = new Array();

function voteSlider(x,event) {
	var value;
	if(x.xcoord == null) {
		var pos = getAbsolutePos(x);
		value = event.clientX - pos.x;
		x.xcoord = pos.x;
	}
	else {
		value = event.clientX - x.xcoord;
	}
	var userStars;
	if(x.userStars == null) {
		userStars = x.getElementsByTagName("div")[1];
		x.userStars = userStars;
	}
	else {
		userStars = x.userStars;
	}
	var starCount = Math.ceil(value/7.5);
	var outOffive = starCount/2;
	var newValue = starCount * 7.5;
	userStars.style.width=newValue + "px";
	
	if(x.text == null) {
		var text = x.nextSibling;
		while(text.nodeType != 1) {
			text = text.nextSibling;
		}
		text.firstChild.innerHTML = outOffive;
		x.text = text.firstChild;
	}
	else {
		x.text.innerHTML = outOffive;
	}
		
	return outOffive;
}

function theatreStack(x,event) {
	var outOffive = voteSlider(x,event);
	
	if(x.alreadyDone == null) {
		star_ar.push(x);
	}
	x.alreadyDone = outOffive;
	voteTotal();
}

function voteTotal() {
	var totalEl = document.getElementById("theatre_yourvote").firstChild;
	var result = 0;
	
	for(var i = 0; i < 4; i++) {
		if(star_ar[i]) {
			result+=star_ar[i].alreadyDone*.25;
		}
	}
	
	totalEl.innerHTML = Math.round(result*10)/10;
}

function getChromeFrame() {
	cgwindow('chromePopup','Please upgrade your browser to view CyberGamer correctly...');
}

function dd_games(cols) {
	var root = document.getElementById("dd_games");
	var ele = root.firstChild;
	root.style.width = cols*225 + 8 + "px";
	if(cols >= 4) {
		root.style.left = "-40px";
	}
	var elements_ar = new Array();
	
	//GATHER VALID NODES
	while(ele != null) {
		if(ele.nodeType == 1) {
			elements_ar.push(ele);
		}
		ele = ele.nextSibling;
	}
	
	var els = elements_ar.length;
	var count = 0;
	var row = "";
	var rowActive = false;
	for(var i = 0; i < els; i++) {
		if(elements_ar[i].className.indexOf("game_wrapper") != -1) {
			if(rowActive == false) {
				row = cE("div");
				row.className = "row";
				root.insertBefore(row,elements_ar[i]);
				row.appendChild(elements_ar[i]);
				rowActive = true;
				count++;
			}
			else if(count < cols - 1) {
				row.appendChild(elements_ar[i]);
				count++;
			}
			else {
				row.appendChild(elements_ar[i]);
				count = 0;
				rowActive = false;
			}
		}
		else if(rowActive == true) {
			count = 0;
			rowActive = false;
		}
	}
}

/* ARTICLES */

function gebi(id) {
	return document.getElementById(id);
}

var article_page_ar = new Array();
var active_page = "";
var isAdmin;
var savedVersion;

function existingPages(x) {
	isAdmin = x;
	var root = gebi("article_page_wrppr");
	var isPage = root.firstChild;
	if(isAdmin) {
		gebi("aw_ins_page").style.display = "block";
	}
	//REMOVE FLASH OVERLAYS IF NOT ADMIN//
	if(!isAdmin) {
		var getFlash = root.getElementsByTagName("object");
		var getFlashNo = getFlash.length;
		for(var i = 0; i < getFlashNo; i++) {
			try {var start = getFlash[i].parentNode.nextSibling}catch(err) {var start = null}
			while(start.nodeType != 1 && start != null) {
				start = start.nextSibling;
			}
			if(start.className == "overlay") {
				start.style.display = "none";
			}
		}
	}
	//DIRECT LINKS AWAY
	var links = root.getElementsByTagName("a");
	var linksno = links.length;
	for(var i = 0; i < linksno; i++) {
		var url = links[i].getAttribute("href");
		var domain = document.domain;
		if(url.indexOf(domain) == -1) {
			links[i].target = "_blank";
		}
	}
	
	while(isPage != null) {
		if(isPage.nodeType == 1) {
			if(isPage.className == "article_page") {
				new articlePage(isPage);
			}
		}
		isPage = isPage.nextSibling;
	}
	articlePageList();
}

function createPage() {
	new articlePage();
	articlePageList();
	articleChangePage(article_page_ar.length - 1);
}

function articlePage(el) {
	var gthis = this;
	var pageRoot = gebi("article_page_wrppr");
	this.li = cE("li");
	this.a = cE("a");
	if(el == null) {
		this.root = cE("div");
		this.root.className = "article_page";
	}
	else {
		this.root = el;
	}
	//GET PAGE TITLE, IF NOT THERE SET
	try {var h2 = this.root.getElementsByTagName("h2")[0]}catch(err) {var h2 = null};
	if(h2 == null) {
		var h2 = cE("h2");
		h2.innerHTML = "Untitled Page";
		h2.ondblclick = function() {updateEditor(this)}
		this.root.appendChild(h2);
	}
	h2.dad = this;
	this.a.innerHTML = h2.innerHTML;
	this.a.onclick = function() {
		articleChangePage(gthis.which);
		window.scrollTo(0,175);
	}
	
	if(isAdmin == true) {
		this.up = cE("div");
		this.up.className = "toc_btn";
		this.up.setAttribute("id","toc_up");
		this.down = cE("div");
		this.down.className = "toc_btn";
		this.down.setAttribute("id","toc_down");
		this.del = cE("div");
		this.del.className = "toc_btn";
		this.del.setAttribute("id","toc_del");
		
		this.li.appendChild(this.del);
		this.li.appendChild(this.up);
		this.li.appendChild(this.down);
				
		this.up.onclick = function() {
			if(gthis.which > 0) {
				article_page_ar.splice(gthis.which,1);
				article_page_ar.splice(gthis.which-1,0,gthis);
				articlePageList();
				articleChangePage(active_page.which);
			}
		}
		this.down.onclick = function() {
			if(gthis.which < article_page_ar.length) {
				article_page_ar.splice(gthis.which,1);
				article_page_ar.splice(gthis.which+1,0,gthis);
				articlePageList();
				articleChangePage(active_page.which);
			}
		}
		this.del.onclick = function() {
			if(article_page_ar.length > 0) {
				var choice = confirm("Are you sure you want to delete Page " + (gthis.which+1) + ": " + gthis.a.innerHTML);
				if(choice == true) {
					article_page_ar.splice(gthis.which,1);
					gthis.root.parentNode.removeChild(gthis.root);
					gthis.li.parentNode.removeChild(gthis.li);
					articlePageList();
					articleChangePage(0);
					delete gthis;
				}
			}
		}
	}
	
	this.li.appendChild(this.a);
		
	article_page_ar.push(this);
}


function articlePageList() {
	var root = gebi("aw_toc");
	var pageRoot = gebi("article_page_wrppr");
	var count = article_page_ar.length;
	
	for(var i = 0; i < count; i++) {
		var myObject = article_page_ar[i];
		myObject.which = i;
		root.appendChild(myObject.li);
		pageRoot.appendChild(myObject.root);
	}
	if(count <= 1) {
		root.className += " phantom";
		var start = root.previousSibling;
		while(start.nodeType != 1) {
			start = start.previousSibling;
		}
		start.className += " phantom";
		pageRoot.getElementsByTagName("h2")[0].className += " phantom";
	}
	else {
		root.className = root.className.replace(/\s?phantom/gi,"");
		var start = root.previousSibling;
		while(start.nodeType != 1) {
			start = start.previousSibling;
		}
		start.className = start.className.replace(/\s?phantom/gi,"");
		pageRoot.getElementsByTagName("h2")[0].className = pageRoot.getElementsByTagName("h2")[0].className.replace(/\s?phantom/gi,"");
	}
}

function articleChangePage(page) {
	var pages = article_page_ar.length;
	var aNav = gebi("article_nav");
	aNav.innerHTML = "";
	for(var i = 0; i < pages; i++) {
		var myObject = article_page_ar[i];
		if(i != page) {
			myObject.root.style.display = "none";
			myObject.active = false;
			myObject.li.className = "";
		}
		else {
			active_page = myObject;
			myObject.root.style.display = "block";
			myObject.active = true;
			myObject.li.className = "active";
			//SET PAGE NUMBER IN HEADER
			if(pages > 1) {
				var pageNo = gebi("article_pageNo");
				pageNo.innerHTML = "P" + (myObject.which + 1);
				Cufon.replace(pageNo);
			}
			//SET LINKS AT BOTTOM
			if(i + 1 < pages) {
				var li = cE("li");
				var div = cE("div");
				div.innerHTML = "<span>Up next,</span> Page " + (i+2) + ": ";
				var newA = article_page_ar[i+1].a.cloneNode(true);
				newA.onclick = article_page_ar[i+1].a.onclick;
				li.className = "next";
				li.appendChild(newA);
				li.appendChild(div);
				aNav.appendChild(li);
			}
			else if(i > 0 && i < pages) {
				var li = cE("li");
				li.innerHTML = "The End";
				li.className = "fr";
				aNav.appendChild(li);
			}
			if(i > 0) {
				var li = cE("li");
				var div = cE("div");
				div.innerHTML = "<span>Go Back, </span>";
				var newA = cE("a");
				newA.innerHTML = "Page " + i;
				newA.onclick = article_page_ar[i-1].a.onclick;
				li.className = "prev";
				li.appendChild(newA);
				li.appendChild(div);
				aNav.appendChild(li);
			}
		}
	}
}

function onBrowserClose() {
	if(savedVersion != gebi("article_page_wrppr").innerHTML) {
		return "You have made unsaved changes.";
	}
}
function existingElements() {
	savedVersion = gebi("article_page_wrppr").innerHTML;
	window.onbeforeunload = onBrowserClose;
	
	var count = article_page_ar.length;
	for(var i = 0; i < count; i++) {
		var el = article_page_ar[i].root.firstChild;
		while(el != null) {
			if(el.nodeType == 1) {
				if(el.className.indexOf("article_iw") != -1) {
					var anyLinks = el.getElementsByTagName("a");
					if(anyLinks.length > 0) {
						anyLinks[0].onmouseover = function() {this.savedLink = this.getAttribute("href"); this.removeAttribute("href")};
						anyLinks[0].onmouseout = function() {this.setAttribute("href",this.savedLink)};
					}
				}
				else if(el.className.indexOf("article_embed") != -1) {
					var overlay = el.getElementsByTagName("div")[0].getElementsByTagName("div")[1];
					overlay.style.display = "block";
				}
				el.ondblclick = function() {updateEditor(this)};
			}
			el = el.nextSibling;
		}
	}
}

function Editor() {
	window.editor = this;
	this.isOpen = false;
	this.root = gebi("aw_module");
	this.ta = gebi("aw_ta");
	this.ph = gebi("aw_ph");
	this.estyleTitle = gebi("aw_title_estyle");
	this.moveTitle = gebi("aw_title_move");
	this.typeTitle = gebi("aw_title_type");
	this.specificTitle = gebi("aw_title_specific");
	this.formatTitle = gebi("aw_title_format");
	this.estyleBtns = gebi("aw_estyle_btns");
	this.moveBtns = gebi("aw_move_btns");
	this.typeBtns = gebi("aw_type_btns");
	this.specificBtns = gebi("aw_specific_btns");
	this.formatBtns = gebi("aw_format_btns");
	this.imageBtns = gebi("aw_image_btns");
	this.ins_top = gebi("aw_insertabove");
	this.btns_btm = gebi("aw_textstyle");
	this.btm = gebi("aw_btm");
	this.up = gebi("aw_taUp_btn");
	this.down = gebi("aw_taDown_btn");
	this.close_btn = gebi("aw_taClose_btn");
	this.tal = gebi("aw_tal_btn");
	this.tar = gebi("aw_tar_btn");
	this.tac = gebi("aw_tac_btn");
	this.fl = gebi("aw_fl_btn");
	this.fr = gebi("aw_fr_btn");
	this.nf = gebi("aw_nofloat_btn");
	this.list_alpha = gebi("forum_alphalist_btn");
	this.list_num = gebi("forum_numlist_btn");
	this.list_dot = gebi("forum_dotlist_btn");
	this.imgLink = gebi("aw_imgLink_btn");
	this.addItem = gebi("aw_item_btn");
	//SET SOME INVIS
	this.imageBtns.style.display = "none";
	this.addItem.style.display = "none";
	this.imgLink.style.display = "none";
	this.typeBtns.style.display = "none";
	this.typeTitle.style.display = "none";
	this.specificTitle.style.display = "none";
	this.specificBtns.style.display = "none";
	forumTextareaInit("aw_ta", "aw_ph");
	this.root.parentNode.removeChild(this.root);
	this.root.style.display = "block";
	
}

function updateEditor(el) {
	if(window.editor.isOpen == true) {
		window.editor.close_btn.onclick();
	}
	window.editor.isOpen = true;
	el.skip = true;
				
	var classes = el.className;
	var type = el.nodeName.toLowerCase();
	window.editor.root.className = type + " " + classes;

	//ELEMENT TYPE SPECIFIC
	if(type =="h2") {
		window.editor.ta.onkeyup = function() {
			el.dad.a.innerHTML = window.editor.ta.value;
		}
		window.editor.ins_top.style.visibility = "hidden";
		window.editor.btns_btm.style.visibility = "hidden";
		window.editor.btm.style.bottom = "-34px";
		window.editor.moveBtns.style.display = "none";
		window.editor.moveTitle.style.display = "none";
	}
	if(type != "div") {
		var rawText = el.innerHTML;
		var text = importText(rawText);
		window.editor.ta.value = text;
		window.editor.ph.innerHTML = text;
		if(type == "ul") {
			window.editor.typeBtns.style.display = "block";
			window.editor.typeTitle.style.display = "block";
			window.editor.specificTitle.style.display = "block";
			window.editor.specificBtns.style.display = "block";
			window.editor.addItem.style.display = "block";
			aw_applyStyle(null,"list");
		}
	}
	else {
		if(el.className.indexOf("article_iw") != -1) {
			var image = el.getElementsByTagName("img")[0];
			var src = image.src;
			window.editor.ta.value = src;
			window.editor.ph.innerHTML = src;
			window.editor.specificTitle.style.display = "block";
			window.editor.specificBtns.style.display = "block";
			window.editor.formatBtns.style.display = "none";
			window.editor.formatTitle.style.display = "none";
			window.editor.imageBtns.style.display = "block";
			aw_applyStyle(null,"image");
			
			window.editor.imgLink.style.display = "block";
			window.editor.imgLink.onclick = function() {
				if(image.parentNode.nodeName.toLowerCase() == "a") {
					var defaultPrompt = image.parentNode.getAttribute("href");
					var newLink = image.parentNode;
					newLink.isNew = false;
				}
				else {
					var defaultPrompt = "http://";
					var newLink = cE("a");
					newLink.isNew = true;
				}
				var giveURL = prompt("Where would you like your image to link to?",defaultPrompt);
				if(giveURL != "http://" && giveURL != "") {
					newLink.setAttribute("href",giveURL);
					newLink.onmouseover = function() {this.savedLink = this.getAttribute("href"); this.removeAttribute("href");}
					newLink.onmouseout = function() {this.setAttribute("href",this.savedLink)}
					if(newLink.isNew == true) {
						image.parentNode.appendChild(newLink);
						newLink.appendChild(image);
					}
				}
				else {
					newLink.parentNode.insertBefore(image,newLink);
					newLink.parentNode.removeChild(newLink);
				}
			}
		}
		else if(el.className.indexOf("ar_word") != -1) {
			var rawText = el.innerHTML;
			var text = importText(rawText);
			window.editor.ta.value = text;
			window.editor.ph.innerHTML = text;
			var word = true;
		}
		else {
			var embed = el.getElementsByTagName("div")[1];
			window.editor.ta.value = importEmbed(embed.innerHTML);
			window.editor.ph.value = embed.innerHTML.replace(/>/g,"&gt;").replace(/</g,"&lt;") + "&nbsp;";
			window.editor.btns_btm.style.visibility = "hidden";
			window.editor.btm.style.bottom = "-34px";
			window.editor.estyleBtns.style.display = "none";
			window.editor.estyleTitle.style.display = "none";
		}
	}

	aw_applyStyle(null,'align');
	
	//INSERT EDITOR
	el.parentNode.insertBefore(window.editor.root,el);
	window.editor.className = "";
	
	el.style.display = "none";
	window.editor.ta.focus();
	
	window.editor.close_btn.onclick = function() {
		if(ta.value == "" && type != "h2") {
			el.parentNode.removeChild(el);
		}
		else {
			if(type != "div") {
				el.innerHTML = exportText(ta.value);
				if(type == "h2") {
					ta.onkeyup = "";
					if(el.innerHTML == "") {
						var message = "Untitled Page";
						el.innerHTML = message;
						el.dad.a.innerHTML = message;
					}
					ins_top.style.visibility = "visible";
					moveBtns.style.display = "block";
					moveTitle.style.display = "block";
					btns_btm.style.visibility = "visible";
					btm.style.bottom = "-71px";
				}
				if(type == "ul") {
					typeBtns.style.display = "none";
					typeTitle.style.display = "none";
					specificTitle.style.display = "none";
					specificBtns.style.display = "none";
					addItem.style.display = "none";
				}
			}
			else {
				if(image != null) {
					image.src = exportText(ta.value);
					imgLink.style.display = "none";
					specificTitle.style.display = "none";
					specificBtns.style.display = "none";
					window.editor.formatBtns.style.display = "block";
					window.editor.formatTitle.style.display = "block";
					window.editor.imageBtns.style.display = "none";
				}
				else if(embed != null) {
					embed.innerHTML = exportEmbed(ta.value);
					estyleBtns.style.display = "block";
					estyleTitle.style.display = "block";
					btns_btm.style.visibility = "visible";
					btm.style.bottom = "-71px";
				}
			}
			if(word != true) {
				el.skip = false;
				el.style.display="block";
				//FIX CHROME BUG
				el.getAttribute("style");
				el.removeAttribute("style");
				el.className = root.className.replace(/(p|h3|h2|div|ul)\s\s?/gi, "");
				if(el.className == "") {
					el.removeAttribute("class");
				}
				root.parentNode.insertBefore(el,root);
			}
			else {
				convertWordDoc(el,ta.value)
			}
		}
		isOpen = false;
		root.parentNode.removeChild(root);
	}
	
	forumTAUpdate(window.editor.ta, window.editor.ph);
}

function importText(text) {
	//KEEP NAUGHTIES
	text = text.replace(/&amp;/gi, "&").replace(/&lt;/gi, "<").replace(/&gt;/gi, ">");
	
	while(text != (text = text.replace(/<(b|i|u|del|sup|sub|big|small)\b[^>]*>([\s\S]*?)<\/\1>/gi,"[$1]$2[/$1]")));
	text = text.replace(/<a\shref="(.*?)">(.*?)<\/a>/gi,"[url=$1]$2[/url]");
	text = text.replace(/<(ul)\b[^>]*>(.*?)<\/\1>/gi,"\n[dotlist]\n$2[/dotlist]")
	text = text.replace(/<(li)\b[^>]*>(.*?)<\/\1>/gi,"[item]$2[/item]\n")
	return text;
}

function exportEmbed(text) {
	var embedTemplate = '<object width="462" height="374"><param name="movie" value="REPLACEME"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><param name="wmode" value="opaque"></param><embed src="REPLACEME" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="462" height="374" wmode="opaque"></embed></object>';
	var findURL = text.match(/http:\/\/www.youtube.com\/watch\?v=[^<>\s&"]*/i);
	if(findURL != null) {
		var found = findURL[0].replace(/http:\/\/www.youtube.com\/watch\?v=([^<>\s&"]*)/gi,"$1");
		var replaceWith = "http://www.youtube.com/v/" + found;
		return embedTemplate.replace(/REPLACEME/gi, replaceWith);
	}
	else {
		return "Invalid URL";
	}
}

function importEmbed(text) {
	//KEEP NAUGHTIES
	text = text.replace(/&amp;/gi, "&").replace(/&lt;/gi, "<").replace(/&gt;/gi, ">");
	try {var found = text.match(/http:\/\/www.youtube.com\/v\/[^<>\s&"]*/i)[0]; return found.replace(/http:\/\/www.youtube.com\/v\/([^<>\s&"]*)/i,"http://www.youtube.com/watch?v=$1")}catch(err) {return "Invalid URL"}
}

function exportText(text) {
	//alert(text.charCodeAt(0));
	//STRIP NAUGHTIES
	text = text.replace(/&/gi, "&amp;").replace(/</gi, "&lt;").replace(/>/gi, "&gt;");
	
	while(text != (text = text.replace(/\[(b|i|u|del|sup|sub|big|small)\b[^\]]*\]([\s\S]*?)\[\/\1\]/gi,"<$1>$2</$1>")));
	text = text.replace(/\[url=([^\s]*?)\]([\s\S]*?)\[\/url\]/gi,'<a href="$1">$2</a>');
	text = text.replace(/\n?\[(dotlist)\b[^\]]*\]([\s\S]*?)\[\/\1\]\n?/gi,"<ul>$2</ul>")
	text = text.replace(/\n?\[(item)\b[^\]]*\]([\s\S]*?)\[\/\1\]\n?/gi,"<li>$2</li>")
	return text;
}

function aw_applyStyle(newStyle,rel) {
	var root = window.editor.root;
	var classes = root.className;
	
	//CLEAR CLASS FROM BUTTONS
	if(rel == "list") {
		var alpha = window.editor.list_alpha;
		var num = window.editor.list_num;
		var dot = window.editor.list_dot;
		alpha.className = "s_btn";
		num.className = "s_btn";
		dot.className = "s_btn";
		var regex = new RegExp("num|alpha|dot","gi");
	}
	else if(rel == "image") {
		var fl_btn = window.editor.fl;
		var fr_btn = window.editor.fr;
		var nf_btn = window.editor.nf;
		fl.className = "s_btn";
		fr.className = "s_btn";
		nf.className = "s_btn";
		var regex = new RegExp("fr|fl|nf","gi");
	}
	else {
		var tal = window.editor.tal;
		var tar = window.editor.tar;
		var tac = window.editor.tac;
		tal.className = "s_btn";
		tar.className = "s_btn";
		tac.className = "s_btn";
		var regex = new RegExp("tal|tm|tar","gi");
	}
	
	//DETERMINE TYPE
	if(newStyle != null) {
		var found = newStyle;
		if(root.className.indexOf(regex) != -1) {
			root.className = root.className.replace(regex, newStyle);
		}
		else {
			root.className += " " + found;
		}
	}
	else {
		var found = classes.match(regex);
	}
	
	//APPLY NEW CLASS
	if (rel == "list") {
		if(found == "dot") {
			dot.className += " active";
		}
		else if(found == "num") {
			num.className += " active";
		}
		else if(found == "alpha") {
			alpha.className += " active";
		}
		else {
			dot.className += " active";
		}
	}
	else if(rel == "image") {
		if(found == "nf") {
			nf.className += " active";
		}
		else if(found == "fr") {
			fr.className += " active";
		}
		else if(found == "fl") {
			fl.className += " active";
		}
		else {
			nf.className += " active";
		}
	}
	else {
		if(found == "tal") {
			tal.className += " active";
		}
		else if(found == "tar") {
			tar.className += " active";
		}
		else if(found == "tm") {
			tac.className += " active";
		}
		else {
			tal.className += " active";
		}
	}
}

function shiftElement(dir) {
	var root = window.editor.root;
	if(dir == "down") {
		var el = root.nextSibling;
	}
	else {
		var el = root.previousSibling;
	}
	var target;
	while(el != null && target == null) {
		if(el.nodeType == 1) {
			if(el.nodeType == 1 && el.skip != true && el.nodeName.toLowerCase() != "h2") {
				target = el;
			}
		}
		if(dir == "down") {
			el = el.nextSibling;
		}
		else {
			el = el.previousSibling;
		}
	}
	if(target != null) {
		if(dir == "down") {
			target.parentNode.insertBefore(target,root);
		}
		else {
			root.parentNode.insertBefore(root,target);
		}
	}
	else {
		alert("Can go no further!");
	}
}

function aw_insertElement(type,dir) {
	var module = window.editor.root;
	if(type == "p") {
		var el = cE("p");
		el.innerHTML = "New Paragraph, insert text here!";
	}
	else if(type == "ul") {
		var el = cE("ul");
		var li = cE("li");
		li.innerHTML = "New list item, insert text here!";
		el.appendChild(li);
	}
	else if(type == "img") {
		var el = cE("div");
		el.className = "article_iw tm";
		var iw = cE("div");
		iw.className = "imgwrapper";
		var border = cE("div");
		border.className = "border";
		var img = new Image();
		img.src = cgmirrordir + "images/nia_fpmypc.jpg";
		border.appendChild(img);
		iw.appendChild(border);
		el.appendChild(iw);
	}
	else if(type == "embed") {
		var el = cE("div");
		el.className = "article_embed";
		var iw = cE("div");
		iw.className = "imgwrapper";
		var overlay = cE("div");
		overlay.className = "overlay";
		overlay.style.display = "block";
		var border = cE("div");
		border.className = "border";
		border.innerHTML = "http://www.youtube.com/v/0OzWIFX8M-Y&hl=en_GB&fs=1&rel=0";
		iw.appendChild(border);
		iw.appendChild(overlay);
		el.appendChild(iw);
	}
	else if(type == "h3") {
		var el = cE("h3");
		el.innerHTML = "New Header, insert text here";
	}
	else if(type == "word") {
		var el = cE("div");
		el.className = "ar_word";
		el.innerHTML = "Copy + Paste Text Here!";
	}
	
	el.ondblclick = function() {updateEditor(this)};
	
	if(dir == 'above') {
		module.parentNode.insertBefore(el,module);
	}
	else {
		if(module.nextSibling.nextSibling != null) {
			module.parentNode.insertBefore(el,module.nextSibling.nextSibling);
		}
		else {
			module.parentNode.appendChild(el);
		}
	}
	el.ondblclick();
}

function convertWordDoc(ref,text) {
	var length = text.length;
	var el_ar = new Array();
	var inEl = false;
	var el;
	//BREAK UP
	for(var i = 0; i < length; i++) {
		if(inEl == false) {
			el = cE("p");
			inEl = true;
		}
		var char = text.charCodeAt(i);
		if(char == 10) {
			inEl = false;
			if(el.innerHTML.length > 0) {
				el_ar.push(el);
			}
		}
		else {
			el.innerHTML += text.charAt(i);
		}
	}
	//CONVERT TO LISTS
	var ar_length = el_ar.length;
	var inList = false;
	var list;
	var index = 0;
	for(var i = 0; i < ar_length; i++) {
		if(el_ar[index].innerHTML.charCodeAt(0) == 8226) {
			var li = cE("li");
			li.innerHTML = el_ar[index].innerHTML.slice(1);
			if(inList == false) {
				list = cE("ul");
				el_ar.splice(index,1,list);
				inList = true;
			}
			else {
				el_ar.splice(index,1);
				index--;
			}
			list.appendChild(li);
		}
		else {
			inList = false;
		}
		index++;
	}
	//EXPORT
	var ar_length = el_ar.length;
	for(var i = 0; i < ar_length; i++) {
		el_ar[i].ondblclick = function() {updateEditor(this)};
		ref.parentNode.insertBefore(el_ar[i],ref)
	}
	ref.parentNode.removeChild(ref);
}

function exportArticle() {
	if(window.editor.isOpen == true) {
		window.editor.close_btn.onclick();
	}
	var submitMe = new Array();
	
	//CREATE PROCESSED PAGE ARRAY
	var articlesNo = article_page_ar.length;
	for (var i = 0; i < articlesNo; i++) {
		var pageArray = new Array();
		var text = article_page_ar[i].root.innerHTML;
		text = text.replace(/<h2[^>]*?>.*?<\/h2>/gi, "");
		while(text != (text = text.replace(/<(b|i|u|del|sup|sub|big|small|div|ul|li|h2|h3|p|a|object)(\b[^>]*)>([\s\S]*?)<\/\1>/gi,"[$1$2]$3[/$1]")));
		text = text.replace(/<(param|img|embed)(\b[^>]*)>/gi, "[$1$2]");
		text = text.replace(/</g, "&lt;").replace(/>/g, "&gt;");
		//CREATE FORMATTING STRIPPED TEXT BLOCK
		var strippedText = article_page_ar[i].root.innerHTML;
			//REMOVE PAGE HEADER
		strippedText = strippedText.replace(/<h2[^>]*?>.*?<\/h2>/gi, "");
		while(strippedText != (strippedText = strippedText.replace(/<[^<>]*?>/gi,"")));
		pageArray.push(text);
		pageArray.push(strippedText);
		pageArray.push(article_page_ar[i].a.innerHTML);
		submitMe.push(pageArray);
	}
	
	//UPDATE SAVED VERSION FOR UNSAVED LEAVE CHECK
	savedVersion = gebi("article_page_wrppr").innerHTML;
	
	return submitMe;
}

/* END ARTICLES */

//THE JUSTIFYER
function justifyFloatingElements(container,elementType) {
	var container = document.getElementById(container);
	var contWidth = container.offsetWidth;
	var usedWidth = 0;
	var viableElements = new Array();
	var childNodes = container.getElementsByTagName(elementType);
	var childNodesLength = childNodes.length;

	for(var i = 0; i < childNodesLength; i++) {
		if(childNodes[i].parentNode == container) {
			usedWidth += childNodes[i].offsetWidth;
			viableElements.push(childNodes[i]);
		}
	}
	var viableElementsLength = viableElements.length;
	var availableWidth = contWidth - usedWidth;
	var spacing = Math.floor(availableWidth / viableElementsLength);
	var padding = Math.floor(spacing/2);
	var startend = Math.ceil((availableWidth % viableElementsLength)/2);
		
	for(var i = 0; i < viableElementsLength; i++) {
		if(i == 0) {
			viableElements[i].style.marginLeft = padding + startend + "px";
			viableElements[i].style.marginRight = padding + "px";
		}
		else {
			viableElements[i].style.marginLeft = padding + "px";
			viableElements[i].style.marginRight = padding + "px";
		}
	}
	
}

//HOVERING EFFECTS
var zIndexCount = 0;
function applyHoverEvents(container, elementType, justify) {
	var containerObj = document.getElementById(container);
	var elements = containerObj.getElementsByTagName("li");
	var elementsLength = elements.length;
	var viableElements = new Array();
	var timer;
	var target;
	
	if(container == "top_nav") {
		target = "div";
	}
	else {
		target = "ul";
	}
	for(i = 0; i < elementsLength; i++) {
		if(elements[i].parentNode == containerObj) {
			viableElements.push(elements[i]);
			if(elements[i].getElementsByTagName(target).length > 0) {				
				elements[i].firstChild.className += " hasDD";
				elements[i].timer;
				elements[i].onmouseover = function() {
					var savedTarget = this;
					clearTimeout(savedTarget.timer);
					savedTarget.timer = setTimeout(function() {
					if(isLTIE8 == true) {
						savedTarget.getElementsByTagName("a")[0].style.border = "1px solid";
						savedTarget.getElementsByTagName("a")[0].style.borderBottom = "0px";
					}			
					savedTarget.setAttribute("id","hover");
					savedTarget.getElementsByTagName(target)[0].style.display = "block";
					savedTarget.getElementsByTagName(target)[0].style.visibility = "visible"
					zIndexCount++;
					savedTarget.getElementsByTagName("a")[0].style.zIndex = zIndexCount+1;
					savedTarget.getElementsByTagName(target)[0].style.zIndex = zIndexCount;
					},50);
				}
				elements[i].onmouseout = function() {
					var savedTarget = this;
					clearTimeout(savedTarget.timer);
					savedTarget.timer = setTimeout(function() {
						if(isLTIE8 == true) {
							savedTarget.getElementsByTagName("a")[0].style.border = "0px";
						}	
						savedTarget.setAttribute("id","");
						savedTarget.getElementsByTagName(target)[0].style.display = "none";
						savedTarget.getElementsByTagName(target)[0].style.visibility = "hidden"
					},250);
				}
			}
		}
	}
	var viableElementsLength = viableElements.length;
	for(var i = 0; i < viableElementsLength; i++) {
		if(i < viableElementsLength/2) {
			viableElements[i].className += "left";
		}
		else {
			viableElements[i].className += "right";
		}
	}
	
	if(justify == 'justify') {
		justifyFloatingElements(container,elementType);
	}
}

//ACTIVATE NAV
function initNav(container,elementType,justify) {
	applyHoverEvents(container, elementType, justify);
}

function tooltip(x, html, maxWidth, myEvent, location) {
	
	var tt = document.createElement("div");
	tt.className = "tooltip";
	tt.innerHTML = html;
	tt.style.maxWidth = maxWidth + "px";
	var arrow = new Image();
	if(location == "bottom") {
		arrow.src = cgmirrordir + "images/tooltip_arrowbtm.gif";
		arrow.setAttribute("id", "tt_arrowbtm");
	}
	else {
		arrow.src = cgmirrordir + "images/tooltip_arrow.gif";
		arrow.setAttribute("id", "tt_arrow");
	}
	tt.appendChild(arrow);
	
	tt.style.visibility = "hidden";
	document.body.appendChild(tt);
	
	var ttHeight = tt.offsetHeight + 4;
	var ttWidth = Math.round(tt.offsetWidth/2);
	var daHeight = x.offsetHeight;
	var pos = getAbsolutePos(x);
	
	tt.style.left = myEvent.clientX - ttWidth + "px";
	if(location == "bottom") {
		tt.style.top = Math.round((pos.y + x.offsetHeight + 4)) + "px";
	}
	else {
		tt.style.top = Math.round((pos.y - ttHeight)) + "px";
	}
	
	arrow.style.left = ttWidth - 4 + "px";
	tt.style.visibility = "visible";
	
	x.onmousemove = function(event) {
		if(isLTIE8 == true) {
			tt.style.left =	window.event.clientX - ttWidth + "px";
		}
		else {
			tt.style.left = event.clientX - ttWidth + "px";
		}
	}
	
	x.onmouseout = function() {
		document.body.removeChild(tt);
		x.onmousemove = "";
	}
}

var __isIE =  navigator.appVersion.match(/MSIE/);
var __userAgent = navigator.userAgent;
var __isFireFox = __userAgent.match(/firefox/i);
var __isFireFoxOld = __isFireFox && (__userAgent.match(/firefox\/2./i) || __userAgent.match(/firefox\/1./i));
var __isFireFoxNew = __isFireFox && !__isFireFoxOld;

function __parseBorderWidth(width) {
    var res = 0;
    if (typeof(width) == "string" && width != null && width != "" ) {
        var p = width.indexOf("px");
        if (p >= 0) {
            res = parseInt(width.substring(0, p));
        }
        else {
     		//do not know how to calculate other values (such as 0.5em or 0.1cm) correctly now
    		//so just set the width to 1 pixel
            res = 1; 
        }
    }
    return res;
}


//returns border width for some element
function __getBorderWidth(element) {
	var res = new Object();
	res.left = 0; res.top = 0; res.right = 0; res.bottom = 0;
	if (window.getComputedStyle) {
		//for Firefox
		var elStyle = window.getComputedStyle(element, null);
		res.left = parseInt(elStyle.borderLeftWidth.slice(0, -2));  
		res.top = parseInt(elStyle.borderTopWidth.slice(0, -2));  
		res.right = parseInt(elStyle.borderRightWidth.slice(0, -2));  
		res.bottom = parseInt(elStyle.borderBottomWidth.slice(0, -2));  
	}
	else {
		//for other browsers
		res.left = __parseBorderWidth(element.style.borderLeftWidth);
		res.top = __parseBorderWidth(element.style.borderTopWidth);
		res.right = __parseBorderWidth(element.style.borderRightWidth);
		res.bottom = __parseBorderWidth(element.style.borderBottomWidth);
	}
	return res;
}

//returns absolute position of some element within document
function getAbsolutePos(element) {
	var res = new Object();
	res.x = 0; res.y = 0;
	if (element !== null) {
		res.x = element.offsetLeft;
		res.y = element.offsetTop;
    	
		var offsetParent = element.offsetParent;
		var parentNode = element.parentNode;
		var borderWidth = null;

		while (offsetParent != null) {
			res.x += offsetParent.offsetLeft;
			res.y += offsetParent.offsetTop;
			
			var parentTagName = offsetParent.tagName.toLowerCase();	

			if ((__isIE && parentTagName != "table") || (__isFireFoxNew && parentTagName == "td")) {		    
				borderWidth = __getBorderWidth(offsetParent);
				res.x += borderWidth.left;
				res.y += borderWidth.top;
			}
		    
			if (offsetParent != document.body && offsetParent != document.documentElement) {
				res.x -= offsetParent.scrollLeft;
				res.y -= offsetParent.scrollTop;
			}

			//next lines are necessary to support FireFox problem with offsetParent
   			if (!__isIE) {
    			while (offsetParent != parentNode && parentNode !== null) {
					res.x -= parentNode.scrollLeft;
					res.y -= parentNode.scrollTop;
					
					if (__isFireFoxOld) {
						borderWidth = kGetBorderWidth(parentNode);
						res.x += borderWidth.left;
						res.y += borderWidth.top;
					}
    				parentNode = parentNode.parentNode;
    			}    
			}

   			parentNode = offsetParent.parentNode;
    		offsetParent = offsetParent.offsetParent;
		}
	}
    return res;
}

function changetheme() {
	try {var current = document.body.className.match(/lighttheme|darktheme/)}catch(err) {var current = "darktheme"}
	if(current == "darktheme") {
		document.body.className = document.body.className.replace(/darktheme/gi, "lighttheme");
		user_save_setting("theme", "light");
		var themeAlert = new ajaxPopup("LIGHT THEME","Currently in beta.");
		themeAlert.completed(4000);
	}
	else {
		document.body.className = document.body.className.replace(/lighttheme/gi, "darktheme");
		user_save_setting("theme", "dark");
	}
	Cufon.replace('label');
}

function preInlineLoad() {
	if(isWide == true) {
		window.onresize = function() {
			uponResize();
		}
	}
	uponResize();
}

function inlineLoad() {
	moveAds();
	assignBodyMinHeight();	
	modSearch();
	gallery();
	textfieldClear();
	alternator();
	if(isLTIE8 == false) {
		textSlider();
	}
	Cufon.replace('label');
	if(isWide == true) {
		updateJustifiedNavs()
	}
	if(isLTIE8 == true) {
		try {
			ieTableFix();
		}
		catch (e){}
	}
	
}

function assignBodyMinHeight() {
	var rightCol = document.getElementById("column_right");
	var rightColHeight = rightCol.offsetHeight;
	var midCol = document.getElementById("content");
	midCol.style.minHeight = rightColHeight + "px";
}

function uponResize() {
	if(isWide == true) {
		if(window.innerWidth) {
			var innerWidth = window.innerWidth;
		}
		else {
			var innerWidth = document.documentElement.clientWidth;
		}
		if(innerWidth > 1300) {
			document.body.className += " wide";
		}
		else {
			document.body.className = document.body.className.replace(/\swide/gi,"");
		}
		clearTimeout(window.justifyTimer);
		window.justifyTimer = setTimeout(function() {updateJustifiedNavs()},200);
	}
	try {
		if(chatWindow != null && chatWindow.isOpen == true) {
			chatWindow.resizechat;
		}
	}
	catch(err) {}
	
	if(tournamentActive == true) {
		sendDetailstoFlash();
	}
}

function updateJustifiedNavs() {
	try {var topnav = document.getElementById("top_nav")}catch(err) {var topnav = null}
	try {var subnav = document.getElementById("category_nav")}catch(err) {var subnav = null}
	if(topnav != null) {
		justifyFloatingElements('top_nav','li');
	}
	if(subnav != null) {
		justifyFloatingElements('category_nav','li');
	}
}

function sponsors() {
	//LOAD XML
	var sponsorXML = new XMLHttpRequest();
	sponsorXML.open("GET",rootdir+"xml/sponsors.php?site="+globalsite,false);
	sponsorXML.send("");
	var sponsorDoc = sponsorXML.responseXML;
	
	var majorSponsor_ar = sponsorDoc.getElementsByTagName("sponsor");
	var minorSponsor_ar = sponsorDoc.getElementsByTagName("minorsponsor");
		
	//VALUES
	var majorNo = majorSponsor_ar.length;
	var minorNo = minorSponsor_ar.length;
	var majorStart = Math.floor(Math.random()*majorNo);
	var minorStart = Math.floor(Math.random()*minorNo);
	
	//SETUP SLOTS
	if(majorNo > 0) {
		document.write('<div class="header">Major Sponsors</div><div id="ms_1"></div><div id="ms_2"></div>');
		var majorSlot_ar = new Array();
		majorSlot_ar.push(document.getElementById("ms_1"));
		majorSlot_ar.push(document.getElementById("ms_2"));
	}
	if(minorNo > 0) {
		document.write('<div class="header">Event Sponsors</div><div id="es_1"></div>');
		var minorSlot_ar = new Array();
		minorSlot_ar.push(document.getElementById("es_1"));
	}
	
	//PULSE
	function sponsorPulse() {
		//INSERT MAJORS
		if(majorNo > 0) {
			for(var i = 0; i < majorSlot_ar.length; i++) {
				majorSlot_ar[i].className = "sponsor " + majorSponsor_ar[majorStart].getElementsByTagName("class")[0].childNodes[0].nodeValue;
				majorSlot_ar[i].setAttribute("title",majorSponsor_ar[majorStart].getElementsByTagName("title")[0].childNodes[0].nodeValue);
				majorSlot_ar[i].savedNumber = majorStart;
				majorSlot_ar[i].onclick = function() {
					window.open(majorSponsor_ar[this.savedNumber].getElementsByTagName("url")[0].childNodes[0].nodeValue)
				}
				if(majorStart+1 >= majorNo) {
					majorStart = 0;
				}
				else {
					majorStart++;
				}
			}
		}
		//INSERT MINORS
		if(minorNo > 0) {
			for(var i = 0; i < minorSlot_ar.length; i++) {
				minorSlot_ar[i].className = "sponsor " + minorSponsor_ar[minorStart].getElementsByTagName("class")[0].childNodes[0].nodeValue;
				minorSlot_ar[i].setAttribute("title",minorSponsor_ar[minorStart].getElementsByTagName("title")[0].childNodes[0].nodeValue);
				minorSlot_ar[i].savedNumber = minorStart;
				minorSlot_ar[i].onclick = function() {
					window.open(minorSponsor_ar[this.savedNumber].getElementsByTagName("url")[0].childNodes[0].nodeValue)
				}
				if(minorStart+1 >= minorNo) {
					minorStart = 0;
				}
				else {
					minorStart++;
				}
			}
		}
	}
	sponsorPulse();
	setInterval(function() {sponsorPulse()}, 6000);
}

function moveAds() {
	var vert_shift;
	var vert_placeholder;
	var fp_shift;
	var fp_placeholder;
	try {vert_shift = document.getElementById("vert_ad_shift")}catch(err) {vert_shift = null}
	try {vert_placeholder = document.getElementById("vert_ad_placeholder")}catch(err) {vert_placeholder = null}
	try {fp_shift = document.getElementById("fp_ad_shift")}catch(err) {fp_shift = null}
	try {fp_placeholder = document.getElementById("fp_ad_placeholder")}catch(err) {fp_placeholder = null}
	if(fp_shift && fp_placeholder != null) {
		fp_placeholder.appendChild(fp_shift);
	}
	if(vert_shift && vert_placeholder != null) {
		vert_placeholder.appendChild(vert_shift);
	}
}

//TOURNAMENT

var tournamentActive = false;

function getScrollY() {
  var scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
  }
  return scrOfY;
}

function getFlashMovie(movieName) {
  var isIE = navigator.appName.indexOf("Microsoft") != -1;
  return (isIE) ? window[movieName] : document[movieName];
}

function setTourneyHeight(height) {
	tournamentActive = true;
	try{document.getElementById("tournament_container").style.height = height + "px"}catch(err) {}
	sendDetailstoFlash();
	//SEND ONSCROLL EVENT
	window.onscroll = sendDetailstoFlash;
}

function flashAlert(message) {
	alert(message);
}

function useThisXMLFlash(xmlSrc) {
	getFlashMovie("CGtournament").useThisXMLFlash(xmlSrc);
}

function sendDetailstoFlash() {
	var scroll = getScrollY();
	var position = getAbsolutePos(document.getElementById("tournament_container"));
	var yoffset = position.y;
	var height;
	var outerHeight;
	if(window.innerHeight) {
		height = window.innerHeight;
		outerHeight = window.outerHeight;
	}
	else {
		height = document.documentElement.clientHeight;
		outerHeight = document.documentElement.offsetHeight;
	}
	height -= 27;
	//var sc = scrollOffset - scrollHeight;
	getFlashMovie("CGtournament").sendDetailstoFlash(scroll, height, yoffset, outerHeight);
	
	//fix for chrome
	if(isWK == true) {
		var t = setTimeout(function() {window.scrollBy(0,1)},50);
	}
}

function flashScrollTo(yCoord) {
	window.scroll(0,yCoord);
	
	//CHROME FIX
	var t = setTimeout(function() {window.scrollBy(0,1)},50);
}

window.onload = function() {
	try {
		if(userid > 0) {
			window.onresize = function() {
				uponResize();
			}
			if(isLTIE8 != true && isIPHONE != true) {
				smartbarInit();
			}
		}
	}
	catch(err) {
	}
}

/*	SWFObject v2.2 <http://code.google.com/p/swfobject/> 
	is released under the MIT License <http://www.opensource.org/licenses/mit-license.php> 
*/
var swfobject=function(){var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].appendChild(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y<X;Y++){U[Y]()}}function K(X){if(J){X()}else{U[U.length]=X}}function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load",Y,false)}else{if(typeof j.addEventListener!=D){j.addEventListener("load",Y,false)}else{if(typeof O.attachEvent!=D){i(O,"onload",Y)}else{if(typeof O.onload=="function"){var X=O.onload;O.onload=function(){X();Y()}}else{O.onload=Y}}}}}function h(){if(T){V()}else{H()}}function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);aa.setAttribute("type",q);var Z=X.appendChild(aa);if(Z){var Y=0;(function(){if(typeof Z.GetVariable!=D){var ab=Z.GetVariable("$version");if(ab){ab=ab.split(" ")[1].split(",");M.pv=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}else{if(Y<10){Y++;setTimeout(arguments.callee,10);return}}X.removeChild(aa);Z=null;H()})()}else{H()}}function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[af].id;var ab=o[af].callbackFn;var aa={success:false,id:Y};if(M.pv[0]>0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad<ac;ad++){if(X[ad].getAttribute("name").toLowerCase()!="movie"){ah[X[ad].getAttribute("name")]=X[ad].getAttribute("value")}}P(ai,ah,Y,ab)}else{p(ae);if(ab){ab(aa)}}}}}else{w(Y,true);if(ab){var Z=z(Y);if(Z&&typeof Z.SetVariable!=D){aa.success=true;aa.ref=Z}ab(aa)}}}}}function z(aa){var X=null;var Y=c(aa);if(Y&&Y.nodeName=="OBJECT"){if(typeof Y.SetVariable!=D){X=Y}else{var Z=Y.getElementsByTagName(r)[0];if(Z){X=Z}}}return X}function A(){return !a&&F("6.0.65")&&(M.win||M.mac)&&!(M.wk&&M.wk<312)}function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X);if(ae){if(ae.nodeName=="OBJECT"){l=g(ae);Q=null}else{l=ae;Q=X}aa.id=R;if(typeof aa.width==D||(!/%$/.test(aa.width)&&parseInt(aa.width,10)<310)){aa.width="310"}if(typeof aa.height==D||(!/%$/.test(aa.height)&&parseInt(aa.height,10)<137)){aa.height="137"}j.title=j.title.slice(0,47)+" - Flash Player Installation";var ad=M.ie&&M.win?"ActiveX":"PlugIn",ac="MMredirectURL="+O.location.toString().replace(/&/g,"%26")+"&MMplayerType="+ad+"&MMdoctitle="+j.title;if(typeof ab.flashvars!=D){ab.flashvars+="&"+ac}else{ab.flashvars=ac}if(M.ie&&M.win&&ae.readyState!=4){var Y=C("div");X+="SWFObjectNew";Y.setAttribute("id",X);ae.parentNode.insertBefore(Y,ae);ae.style.display="none";(function(){if(ae.readyState==4){ae.parentNode.removeChild(ae)}else{setTimeout(arguments.callee,10)}})()}u(aa,ab,X)}}function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");Y.parentNode.insertBefore(X,Y);X.parentNode.replaceChild(g(Y),X);Y.style.display="none";(function(){if(Y.readyState==4){Y.parentNode.removeChild(Y)}else{setTimeout(arguments.callee,10)}})()}else{Y.parentNode.replaceChild(g(Y),Y)}}function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML}else{var Y=ab.getElementsByTagName(r)[0];if(Y){var ad=Y.childNodes;if(ad){var X=ad.length;for(var Z=0;Z<X;Z++){if(!(ad[Z].nodeType==1&&ad[Z].nodeName=="PARAM")&&!(ad[Z].nodeType==8)){aa.appendChild(ad[Z].cloneNode(true))}}}}}return aa}function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X}if(aa){if(typeof ai.id==D){ai.id=Y}if(M.ie&&M.win){var ah="";for(var ae in ai){if(ai[ae]!=Object.prototype[ae]){if(ae.toLowerCase()=="data"){ag.movie=ai[ae]}else{if(ae.toLowerCase()=="styleclass"){ah+=' class="'+ai[ae]+'"'}else{if(ae.toLowerCase()!="classid"){ah+=" "+ae+'="'+ai[ae]+'"'}}}}}var af="";for(var ad in ag){if(ag[ad]!=Object.prototype[ad]){af+='<param name="'+ad+'" value="'+ag[ad]+'" />'}}aa.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+ah+">"+af+"</object>";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIComponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab<ac;ab++){I[ab][0].detachEvent(I[ab][1],I[ab][2])}var Z=N.length;for(var aa=0;aa<Z;aa++){y(N[aa])}for(var Y in M){M[Y]=null}M=null;for(var X in swfobject){swfobject[X]=null}swfobject=null})}}();return{registerObject:function(ab,X,aa,Z){if(M.w3&&ab&&X){var Y={};Y.id=ab;Y.swfVersion=X;Y.expressInstall=aa;Y.callbackFn=Z;o[o.length]=Y;w(ab,false)}else{if(Z){Z({success:false,id:ab})}}},getObjectById:function(X){if(M.w3){return z(X)}},embedSWF:function(ab,ah,ae,ag,Y,aa,Z,ad,af,ac){var X={success:false,id:ah};if(M.w3&&!(M.wk&&M.wk<312)&&ab&&ah&&ae&&ag&&Y){w(ah,false);K(function(){ae+="";ag+="";var aj={};if(af&&typeof af===r){for(var al in af){aj[al]=af[al]}}aj.data=ab;aj.width=ae;aj.height=ag;var am={};if(ad&&typeof ad===r){for(var ak in ad){am[ak]=ad[ak]}}if(Z&&typeof Z===r){for(var ai in Z){if(typeof am.flashvars!=D){am.flashvars+="&"+ai+"="+Z[ai]}else{am.flashvars=ai+"="+Z[ai]}}}if(F(Y)){var an=u(aj,am,ah);if(aj.id==ah){w(ah,true)}X.success=true;X.ref=an}else{if(aa&&A()){aj.data=aa;P(aj,am,ah,ac);return}else{w(ah,true)}}if(ac){ac(X)}})}else{if(ac){ac(X)}}},switchOffAutoHideShow:function(){m=false},ua:M,getFlashPlayerVersion:function(){return{major:M.pv[0],minor:M.pv[1],release:M.pv[2]}},hasFlashPlayerVersion:F,createSWF:function(Z,Y,X){if(M.w3){return u(Z,Y,X)}else{return undefined}},showExpressInstall:function(Z,aa,X,Y){if(M.w3&&A()){P(Z,aa,X,Y)}},removeSWF:function(X){if(M.w3){y(X)}},createCSS:function(aa,Z,Y,X){if(M.w3){v(aa,Z,Y,X)}},addDomLoadEvent:K,addLoadEvent:s,getQueryParamValue:function(aa){var Z=j.location.search||j.location.hash;if(Z){if(/\?/.test(Z)){Z=Z.split("?")[1]}if(aa==null){return L(Z)}var Y=Z.split("&");for(var X=0;X<Y.length;X++){if(Y[X].substring(0,Y[X].indexOf("="))==aa){return L(Y[X].substring((Y[X].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(a){var X=c(R);if(X&&l){X.parentNode.replaceChild(l,X);if(Q){w(Q,true);if(M.ie&&M.win){l.style.display="block"}}if(E){E(B)}}a=false}}}}();

/*
 * Copyright (c) 2009 Simo Kinnunen.
 * Licensed under the MIT license.
 *
 * @version 1.09
 */
var Cufon=(function(){var m=function(){return m.replace.apply(null,arguments)};var x=m.DOM={ready:(function(){var C=false,E={loaded:1,complete:1};var B=[],D=function(){if(C){return}C=true;for(var F;F=B.shift();F()){}};if(document.addEventListener){document.addEventListener("DOMContentLoaded",D,false);window.addEventListener("pageshow",D,false)}if(!window.opera&&document.readyState){(function(){E[document.readyState]?D():setTimeout(arguments.callee,10)})()}if(document.readyState&&document.createStyleSheet){(function(){try{document.body.doScroll("left");D()}catch(F){setTimeout(arguments.callee,1)}})()}q(window,"load",D);return function(F){if(!arguments.length){D()}else{C?F():B.push(F)}}})(),root:function(){return document.documentElement||document.body}};var n=m.CSS={Size:function(C,B){this.value=parseFloat(C);this.unit=String(C).match(/[a-z%]*$/)[0]||"px";this.convert=function(D){return D/B*this.value};this.convertFrom=function(D){return D/this.value*B};this.toString=function(){return this.value+this.unit}},addClass:function(C,B){var D=C.className;C.className=D+(D&&" ")+B;return C},color:j(function(C){var B={};B.color=C.replace(/^rgba\((.*?),\s*([\d.]+)\)/,function(E,D,F){B.opacity=parseFloat(F);return"rgb("+D+")"});return B}),fontStretch:j(function(B){if(typeof B=="number"){return B}if(/%$/.test(B)){return parseFloat(B)/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}[B]||1}),getStyle:function(C){var B=document.defaultView;if(B&&B.getComputedStyle){return new a(B.getComputedStyle(C,null))}if(C.currentStyle){return new a(C.currentStyle)}return new a(C.style)},gradient:j(function(F){var G={id:F,type:F.match(/^-([a-z]+)-gradient\(/)[1],stops:[]},C=F.substr(F.indexOf("(")).match(/([\d.]+=)?(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)/ig);for(var E=0,B=C.length,D;E<B;++E){D=C[E].split("=",2).reverse();G.stops.push([D[1]||E/(B-1),D[0]])}return G}),quotedList:j(function(E){var D=[],C=/\s*((["'])([\s\S]*?[^\\])\2|[^,]+)\s*/g,B;while(B=C.exec(E)){D.push(B[3]||B[1])}return D}),recognizesMedia:j(function(G){var E=document.createElement("style"),D,C,B;E.type="text/css";E.media=G;try{E.appendChild(document.createTextNode("/**/"))}catch(F){}C=g("head")[0];C.insertBefore(E,C.firstChild);D=(E.sheet||E.styleSheet);B=D&&!D.disabled;C.removeChild(E);return B}),removeClass:function(D,C){var B=RegExp("(?:^|\\s+)"+C+"(?=\\s|$)","g");D.className=D.className.replace(B,"");return D},supports:function(D,C){var B=document.createElement("span").style;if(B[D]===undefined){return false}B[D]=C;return B[D]===C},textAlign:function(E,D,B,C){if(D.get("textAlign")=="right"){if(B>0){E=" "+E}}else{if(B<C-1){E+=" "}}return E},textShadow:j(function(F){if(F=="none"){return null}var E=[],G={},B,C=0;var D=/(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)|(-?[\d.]+[a-z%]*)|,/ig;while(B=D.exec(F)){if(B[0]==","){E.push(G);G={};C=0}else{if(B[1]){G.color=B[1]}else{G[["offX","offY","blur"][C++]]=B[2]}}}E.push(G);return E}),textTransform:(function(){var B={uppercase:function(C){return C.toUpperCase()},lowercase:function(C){return C.toLowerCase()},capitalize:function(C){return C.replace(/\b./g,function(D){return D.toUpperCase()})}};return function(E,D){var C=B[D.get("textTransform")];return C?C(E):E}})(),whiteSpace:(function(){var D={inline:1,"inline-block":1,"run-in":1};var C=/^\s+/,B=/\s+$/;return function(H,F,G,E){if(E){if(E.nodeName.toLowerCase()=="br"){H=H.replace(C,"")}}if(D[F.get("display")]){return H}if(!G.previousSibling){H=H.replace(C,"")}if(!G.nextSibling){H=H.replace(B,"")}return H}})()};n.ready=(function(){var B=!n.recognizesMedia("all"),E=false;var D=[],H=function(){B=true;for(var K;K=D.shift();K()){}};var I=g("link"),J=g("style");function C(K){return K.disabled||G(K.sheet,K.media||"screen")}function G(M,P){if(!n.recognizesMedia(P||"all")){return true}if(!M||M.disabled){return false}try{var Q=M.cssRules,O;if(Q){search:for(var L=0,K=Q.length;O=Q[L],L<K;++L){switch(O.type){case 2:break;case 3:if(!G(O.styleSheet,O.media.mediaText)){return false}break;default:break search}}}}catch(N){}return true}function F(){if(document.createStyleSheet){return true}var L,K;for(K=0;L=I[K];++K){if(L.rel.toLowerCase()=="stylesheet"&&!C(L)){return false}}for(K=0;L=J[K];++K){if(!C(L)){return false}}return true}x.ready(function(){if(!E){E=n.getStyle(document.body).isUsable()}if(B||(E&&F())){H()}else{setTimeout(arguments.callee,10)}});return function(K){if(B){K()}else{D.push(K)}}})();function s(D){var C=this.face=D.face,B={"\u0020":1,"\u00a0":1,"\u3000":1};this.glyphs=D.glyphs;this.w=D.w;this.baseSize=parseInt(C["units-per-em"],10);this.family=C["font-family"].toLowerCase();this.weight=C["font-weight"];this.style=C["font-style"]||"normal";this.viewBox=(function(){var F=C.bbox.split(/\s+/);var E={minX:parseInt(F[0],10),minY:parseInt(F[1],10),maxX:parseInt(F[2],10),maxY:parseInt(F[3],10)};E.width=E.maxX-E.minX;E.height=E.maxY-E.minY;E.toString=function(){return[this.minX,this.minY,this.width,this.height].join(" ")};return E})();this.ascent=-parseInt(C.ascent,10);this.descent=-parseInt(C.descent,10);this.height=-this.ascent+this.descent;this.spacing=function(L,N,E){var O=this.glyphs,M,K,G,P=[],F=0,J=-1,I=-1,H;while(H=L[++J]){M=O[H]||this.missingGlyph;if(!M){continue}if(K){F-=G=K[H]||0;P[I]-=G}F+=P[++I]=~~(M.w||this.w)+N+(B[H]?E:0);K=M.k}P.total=F;return P}}function f(){var C={},B={oblique:"italic",italic:"oblique"};this.add=function(D){(C[D.style]||(C[D.style]={}))[D.weight]=D};this.get=function(H,I){var G=C[H]||C[B[H]]||C.normal||C.italic||C.oblique;if(!G){return null}I={normal:400,bold:700}[I]||parseInt(I,10);if(G[I]){return G[I]}var E={1:1,99:0}[I%100],K=[],F,D;if(E===undefined){E=I>400}if(I==500){I=400}for(var J in G){if(!k(G,J)){continue}J=parseInt(J,10);if(!F||J<F){F=J}if(!D||J>D){D=J}K.push(J)}if(I<F){I=F}if(I>D){I=D}K.sort(function(M,L){return(E?(M>=I&&L>=I)?M<L:M>L:(M<=I&&L<=I)?M>L:M<L)?-1:1});return G[K[0]]}}function r(){function D(F,G){if(F.contains){return F.contains(G)}return F.compareDocumentPosition(G)&16}function B(G){var F=G.relatedTarget;if(!F||D(this,F)){return}C(this,G.type=="mouseover")}function E(F){C(this,F.type=="mouseenter")}function C(F,G){setTimeout(function(){var H=d.get(F).options;m.replace(F,G?h(H,H.hover):H,true)},10)}this.attach=function(F){if(F.onmouseenter===undefined){q(F,"mouseover",B);q(F,"mouseout",B)}else{q(F,"mouseenter",E);q(F,"mouseleave",E)}}}function u(){var C=[],D={};function B(H){var E=[],G;for(var F=0;G=H[F];++F){E[F]=C[D[G]]}return E}this.add=function(F,E){D[F]=C.push(E)-1};this.repeat=function(){var E=arguments.length?B(arguments):C,F;for(var G=0;F=E[G++];){m.replace(F[0],F[1],true)}}}function A(){var D={},B=0;function C(E){return E.cufid||(E.cufid=++B)}this.get=function(E){var F=C(E);return D[F]||(D[F]={})}}function a(B){var D={},C={};this.extend=function(E){for(var F in E){if(k(E,F)){D[F]=E[F]}}return this};this.get=function(E){return D[E]!=undefined?D[E]:B[E]};this.getSize=function(F,E){return C[F]||(C[F]=new n.Size(this.get(F),E))};this.isUsable=function(){return !!B}}function q(C,B,D){if(C.addEventListener){C.addEventListener(B,D,false)}else{if(C.attachEvent){C.attachEvent("on"+B,function(){return D.call(C,window.event)})}}}function v(C,B){var D=d.get(C);if(D.options){return C}if(B.hover&&B.hoverables[C.nodeName.toLowerCase()]){b.attach(C)}D.options=B;return C}function j(B){var C={};return function(D){if(!k(C,D)){C[D]=B.apply(null,arguments)}return C[D]}}function c(F,E){var B=n.quotedList(E.get("fontFamily").toLowerCase()),D;for(var C=0;D=B[C];++C){if(i[D]){return i[D].get(E.get("fontStyle"),E.get("fontWeight"))}}return null}function g(B){return document.getElementsByTagName(B)}function k(C,B){return C.hasOwnProperty(B)}function h(){var C={},B,F;for(var E=0,D=arguments.length;B=arguments[E],E<D;++E){for(F in B){if(k(B,F)){C[F]=B[F]}}}return C}function o(E,M,C,N,F,D){var K=document.createDocumentFragment(),H;if(M===""){return K}var L=N.separate;var I=M.split(p[L]),B=(L=="words");if(B&&t){if(/^\s/.test(M)){I.unshift("")}if(/\s$/.test(M)){I.push("")}}for(var J=0,G=I.length;J<G;++J){H=z[N.engine](E,B?n.textAlign(I[J],C,J,G):I[J],C,N,F,D,J<G-1);if(H){K.appendChild(H)}}return K}function l(D,M){var C=D.nodeName.toLowerCase();if(M.ignore[C]){return}var E=!M.textless[C];var B=n.getStyle(v(D,M)).extend(M);var F=c(D,B),G,K,I,H,L,J;if(!F){return}for(G=D.firstChild;G;G=I){K=G.nodeType;I=G.nextSibling;if(E&&K==3){if(H){H.appendData(G.data);D.removeChild(G)}else{H=G}if(I){continue}}if(H){D.replaceChild(o(F,n.whiteSpace(H.data,B,H,J),B,M,G,D),H);H=null}if(K==1){if(G.firstChild){if(G.nodeName.toLowerCase()=="cufon"){z[M.engine](F,null,B,M,G,D)}else{arguments.callee(G,M)}}J=G}}}var t=" ".split(/\s+/).length==0;var d=new A();var b=new r();var y=new u();var e=false;var z={},i={},w={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,optgroup:1,option:1,script:1,select:1,style:1,textarea:1,title:1,pre:1},printable:true,selector:(window.Sizzle||(window.jQuery&&function(B){return jQuery(B)})||(window.dojo&&dojo.query)||(window.Ext&&Ext.query)||(window.YAHOO&&YAHOO.util&&YAHOO.util.Selector&&YAHOO.util.Selector.query)||(window.$$&&function(B){return $$(B)})||(window.$&&function(B){return $(B)})||(document.querySelectorAll&&function(B){return document.querySelectorAll(B)})||g),separate:"words",textless:{dl:1,html:1,ol:1,table:1,tbody:1,thead:1,tfoot:1,tr:1,ul:1},textShadow:"none"};var p={words:/\s/.test("\u00a0")?/[^\S\u00a0]+/:/\s+/,characters:"",none:/^/};m.now=function(){x.ready();return m};m.refresh=function(){y.repeat.apply(y,arguments);return m};m.registerEngine=function(C,B){if(!B){return m}z[C]=B;return m.set("engine",C)};m.registerFont=function(D){if(!D){return m}var B=new s(D),C=B.family;if(!i[C]){i[C]=new f()}i[C].add(B);return m.set("fontFamily",'"'+C+'"')};m.replace=function(D,C,B){C=h(w,C);if(!C.engine){return m}if(!e){n.addClass(x.root(),"cufon-active cufon-loading");n.ready(function(){n.addClass(n.removeClass(x.root(),"cufon-loading"),"cufon-ready")});e=true}if(C.hover){C.forceHitArea=true}if(C.autoDetect){delete C.fontFamily}if(typeof C.textShadow=="string"){C.textShadow=n.textShadow(C.textShadow)}if(typeof C.color=="string"&&/^-/.test(C.color)){C.textGradient=n.gradient(C.color)}else{delete C.textGradient}if(!B){y.add(D,arguments)}if(D.nodeType||typeof D=="string"){D=[D]}n.ready(function(){for(var F=0,E=D.length;F<E;++F){var G=D[F];if(typeof G=="string"){m.replace(C.selector(G),C,true)}else{l(G,C)}}});return m};m.set=function(B,C){w[B]=C;return m};return m})();Cufon.registerEngine("canvas",(function(){var b=document.createElement("canvas");if(!b||!b.getContext||!b.getContext.apply){return}b=null;var a=Cufon.CSS.supports("display","inline-block");var e=!a&&(document.compatMode=="BackCompat"||/frameset|transitional/i.test(document.doctype.publicId));var f=document.createElement("style");f.type="text/css";f.appendChild(document.createTextNode(("cufon{text-indent:0;}@media screen,projection{cufon{display:inline;display:inline-block;position:relative;vertical-align:middle;"+(e?"":"font-size:1px;line-height:1px;")+"}cufon cufontext{display:-moz-inline-box;display:inline-block;width:0;height:0;overflow:hidden;text-indent:-10000in;}"+(a?"cufon canvas{position:relative;}":"cufon canvas{position:absolute;}")+"}@media print{cufon{padding:0;}cufon canvas{display:none;}}").replace(/;/g,"!important;")));document.getElementsByTagName("head")[0].appendChild(f);function d(p,h){var n=0,m=0;var g=[],o=/([mrvxe])([^a-z]*)/g,k;generate:for(var j=0;k=o.exec(p);++j){var l=k[2].split(",");switch(k[1]){case"v":g[j]={m:"bezierCurveTo",a:[n+~~l[0],m+~~l[1],n+~~l[2],m+~~l[3],n+=~~l[4],m+=~~l[5]]};break;case"r":g[j]={m:"lineTo",a:[n+=~~l[0],m+=~~l[1]]};break;case"m":g[j]={m:"moveTo",a:[n=~~l[0],m=~~l[1]]};break;case"x":g[j]={m:"closePath"};break;case"e":break generate}h[g[j].m].apply(h,g[j].a)}return g}function c(m,k){for(var j=0,h=m.length;j<h;++j){var g=m[j];k[g.m].apply(k,g.a)}}return function(V,w,P,t,C,W){var k=(w===null);if(k){w=C.getAttribute("alt")}var A=V.viewBox;var m=P.getSize("fontSize",V.baseSize);var B=0,O=0,N=0,u=0;var z=t.textShadow,L=[];if(z){for(var U=z.length;U--;){var F=z[U];var K=m.convertFrom(parseFloat(F.offX));var I=m.convertFrom(parseFloat(F.offY));L[U]=[K,I];if(I<B){B=I}if(K>O){O=K}if(I>N){N=I}if(K<u){u=K}}}var Z=Cufon.CSS.textTransform(w,P).split("");var E=V.spacing(Z,~~m.convertFrom(parseFloat(P.get("letterSpacing"))||0),~~m.convertFrom(parseFloat(P.get("wordSpacing"))||0));if(!E.length){return null}var h=E.total;O+=A.width-E[E.length-1];u+=A.minX;var s,n;if(k){s=C;n=C.firstChild}else{s=document.createElement("cufon");s.className="cufon cufon-canvas";s.setAttribute("alt",w);n=document.createElement("canvas");s.appendChild(n);if(t.printable){var S=document.createElement("cufontext");S.appendChild(document.createTextNode(w));s.appendChild(S)}}var aa=s.style;var H=n.style;var j=m.convert(A.height);var Y=Math.ceil(j);var M=Y/j;var G=M*Cufon.CSS.fontStretch(P.get("fontStretch"));var J=h*G;var Q=Math.ceil(m.convert(J+O-u));var o=Math.ceil(m.convert(A.height-B+N));n.width=Q;n.height=o;H.width=Q+"px";H.height=o+"px";B+=A.minY;H.top=Math.round(m.convert(B-V.ascent))+"px";H.left=Math.round(m.convert(u))+"px";var r=Math.max(Math.ceil(m.convert(J)),0)+"px";if(a){aa.width=r;aa.height=m.convert(V.height)+"px"}else{aa.paddingLeft=r;aa.paddingBottom=(m.convert(V.height)-1)+"px"}var X=n.getContext("2d"),D=j/A.height;X.scale(D,D*M);X.translate(-u,-B);X.save();function T(){var x=V.glyphs,ab,l=-1,g=-1,y;X.scale(G,1);while(y=Z[++l]){var ab=x[Z[l]]||V.missingGlyph;if(!ab){continue}if(ab.d){X.beginPath();if(ab.code){c(ab.code,X)}else{ab.code=d("m"+ab.d,X)}X.fill()}X.translate(E[++g],0)}X.restore()}if(z){for(var U=z.length;U--;){var F=z[U];X.save();X.fillStyle=F.color;X.translate.apply(X,L[U]);T()}}var q=t.textGradient;if(q){var v=q.stops,p=X.createLinearGradient(0,A.minY,0,A.maxY);for(var U=0,R=v.length;U<R;++U){p.addColorStop.apply(p,v[U])}X.fillStyle=p}else{X.fillStyle=P.get("color")}T();return s}})());Cufon.registerEngine("vml",(function(){var e=document.namespaces;if(!e){return}e.add("cvml","urn:schemas-microsoft-com:vml");e=null;var b=document.createElement("cvml:shape");b.style.behavior="url(#default#VML)";if(!b.coordsize){return}b=null;var h=(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:'+(h?"middle":"text-bottom")+";}cufon cufontext{position:absolute;left:-10000in;font-size:1px;}a cufon{cursor:pointer}}@media print{cufon cufoncanvas{display:none;}}</style>").replace(/;/g,"!important;"));function c(i,j){return a(i,/(?:em|ex|%)$|^[a-z-]+$/i.test(j)?"1em":j)}function a(l,m){if(m==="0"){return 0}if(/px$/i.test(m)){return parseFloat(m)}var k=l.style.left,j=l.runtimeStyle.left;l.runtimeStyle.left=l.currentStyle.left;l.style.left=m.replace("%","em");var i=l.style.pixelLeft;l.style.left=k;l.runtimeStyle.left=j;return i}function f(l,k,j,n){var i="computed"+n,m=k[i];if(isNaN(m)){m=k.get(n);k[i]=m=(m=="normal")?0:~~j.convertFrom(a(l,m))}return m}var g={};function d(p){var q=p.id;if(!g[q]){var n=p.stops,o=document.createElement("cvml:fill"),i=[];o.type="gradient";o.angle=180;o.focus="0";o.method="sigma";o.color=n[0][1];for(var m=1,l=n.length-1;m<l;++m){i.push(n[m][0]*100+"% "+n[m][1])}o.colors=i.join(",");o.color2=n[l][1];g[q]=o}return g[q]}return function(ac,G,Y,C,K,ad,W){var n=(G===null);if(n){G=K.alt}var I=ac.viewBox;var p=Y.computedFontSize||(Y.computedFontSize=new Cufon.CSS.Size(c(ad,Y.get("fontSize"))+"px",ac.baseSize));var y,q;if(n){y=K;q=K.firstChild}else{y=document.createElement("cufon");y.className="cufon cufon-vml";y.alt=G;q=document.createElement("cufoncanvas");y.appendChild(q);if(C.printable){var Z=document.createElement("cufontext");Z.appendChild(document.createTextNode(G));y.appendChild(Z)}if(!W){y.appendChild(document.createElement("cvml:shape"))}}var ai=y.style;var R=q.style;var l=p.convert(I.height),af=Math.ceil(l);var V=af/l;var P=V*Cufon.CSS.fontStretch(Y.get("fontStretch"));var U=I.minX,T=I.minY;R.height=af;R.top=Math.round(p.convert(T-ac.ascent));R.left=Math.round(p.convert(U));ai.height=p.convert(ac.height)+"px";var F=Y.get("color");var ag=Cufon.CSS.textTransform(G,Y).split("");var L=ac.spacing(ag,f(ad,Y,p,"letterSpacing"),f(ad,Y,p,"wordSpacing"));if(!L.length){return null}var k=L.total;var x=-U+k+(I.width-L[L.length-1]);var ah=p.convert(x*P),X=Math.round(ah);var O=x+","+I.height,m;var J="r"+O+"ns";var u=C.textGradient&&d(C.textGradient);var o=ac.glyphs,S=0;var H=C.textShadow;var ab=-1,aa=0,w;while(w=ag[++ab]){var D=o[ag[ab]]||ac.missingGlyph,v;if(!D){continue}if(n){v=q.childNodes[aa];while(v.firstChild){v.removeChild(v.firstChild)}}else{v=document.createElement("cvml:shape");q.appendChild(v)}v.stroked="f";v.coordsize=O;v.coordorigin=m=(U-S)+","+T;v.path=(D.d?"m"+D.d+"xe":"")+"m"+m+J;v.fillcolor=F;if(u){v.appendChild(u.cloneNode(false))}var ae=v.style;ae.width=X;ae.height=af;if(H){var s=H[0],r=H[1];var B=Cufon.CSS.color(s.color),z;var N=document.createElement("cvml:shadow");N.on="t";N.color=B.color;N.offset=s.offX+","+s.offY;if(r){z=Cufon.CSS.color(r.color);N.type="double";N.color2=z.color;N.offset2=r.offX+","+r.offY}N.opacity=B.opacity||(z&&z.opacity)||1;v.appendChild(N)}S+=L[aa++]}var M=v.nextSibling,t,A;if(C.forceHitArea){if(!M){M=document.createElement("cvml:rect");M.stroked="f";M.className="cufon-vml-cover";t=document.createElement("cvml:fill");t.opacity=0;M.appendChild(t);q.appendChild(M)}A=M.style;A.width=X;A.height=af}else{if(M){q.removeChild(M)}}ai.width=Math.max(Math.ceil(p.convert(k*P)),0);if(h){var Q=Y.computedYAdjust;if(Q===undefined){var E=Y.get("lineHeight");if(E=="normal"){E="1em"}else{if(!isNaN(E)){E+="em"}}Y.computedYAdjust=Q=0.5*(a(ad,E)-parseFloat(ai.height))}if(Q){ai.marginTop=Math.ceil(Q)+"px";ai.marginBottom=Q+"px"}}return y}})());
/*!
 * The following copyright notice may not be removed under any circumstances.
 * 
 * Copyright:
 * Copyright © 1990, 2002 Adobe Systems Incorporated.  All Rights Reserved. ©
 * 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
 * 
 * Trademark:
 * Helvetica is a trademark of Heidelberger Druckmaschinen AG, exclusively
 * licensed through Linotype Library GmbH, and may be registered in certain
 * jurisdictions.
 * 
 * Full name:
 * HelveticaNeueLTStd-MdCn
 * 
 * Designer:
 * Linotype Staff
 * 
 * Vendor URL:
 * http://www.adobe.com/type
 * 
 * License information:
 * http://www.adobe.com/type/legal.html
 */
Cufon.registerFont({"w":172,"face":{"font-family":"Helvetica Neue LT Std","font-weight":500,"font-stretch":"condensed","units-per-em":"360","panose-1":"2 11 6 6 3 5 2 3 2 4","ascent":"257","descent":"-103","x-height":"5","bbox":"-9 -280 278 66.8608","underline-thickness":"18","underline-position":"-18","stemh":"31","stemv":"39","unicode-range":"U+0020-U+007E"},"glyphs":{" ":{"w":86,"k":{"T":13,"V":13,"W":13,"Y":13,"A":13}},"!":{"d":"36,-69r-6,-107r0,-81r41,0v1,66,-3,127,-7,188r-28,0xm30,0r0,-41r41,0r0,41r-41,0","w":100},"\"":{"d":"95,-154r0,-103r31,0r0,103r-31,0xm27,-154r0,-103r31,0r0,103r-31,0","w":153},"#":{"d":"64,-99r38,0r7,-52r-38,0xm-1,-72r0,-27r35,0r7,-52r-32,0r0,-27r36,0r10,-72r30,0r-10,72r38,0r10,-72r30,0r-10,72r31,0r0,27r-35,0r-7,52r31,0r0,27r-35,0r-10,72r-30,0r10,-72r-38,0r-10,72r-30,0r10,-72r-31,0"},"$":{"d":"94,-103r0,77v45,-6,41,-72,0,-77xm78,-150r0,-74v-15,1,-28,13,-28,36v0,17,9,29,28,38xm78,36r0,-31v-64,-5,-73,-42,-72,-82r41,0v-1,30,6,47,31,51r0,-83v-39,-13,-69,-33,-69,-75v0,-41,30,-71,69,-71r0,-25r16,0r0,25v57,2,69,39,68,71r-41,0v1,-22,-4,-38,-27,-40r0,80v38,12,73,31,73,74v0,50,-28,72,-73,75r0,31r-16,0"},"%":{"d":"62,-233v-15,0,-18,14,-18,47v0,33,3,47,18,47v15,0,19,-14,19,-47v0,-33,-4,-47,-19,-47xm179,-255r28,0r-115,260r-27,0xm211,-111v-15,0,-18,14,-18,47v0,33,3,47,18,47v15,0,18,-14,18,-47v0,-33,-3,-47,-18,-47xm62,-255v28,0,50,15,50,69v0,54,-22,69,-50,69v-28,0,-49,-15,-49,-69v0,-54,21,-69,49,-69xm211,-133v28,0,49,15,49,69v0,54,-21,69,-49,69v-28,0,-49,-15,-49,-69v0,-54,21,-69,49,-69","w":273},"&":{"d":"107,-141r45,63v7,-11,11,-27,10,-44r32,0v0,19,-3,45,-22,73r35,49r-44,0r-15,-22v-17,15,-36,27,-65,27v-96,0,-91,-100,-39,-138r16,-12v-10,-16,-27,-37,-27,-57v0,-37,28,-55,62,-55v19,0,56,9,56,52v1,30,-23,49,-44,64xm68,-208v0,14,13,53,30,35v21,-12,29,-57,-6,-57v-10,0,-24,5,-24,22xm78,-121v-16,13,-32,29,-32,52v0,43,64,53,84,21","w":206},"(":{"d":"66,-257r27,0v-55,92,-55,229,0,323r-27,0v-28,-37,-53,-95,-53,-161v0,-66,25,-125,53,-162","w":93},")":{"d":"27,66r-27,0v56,-92,55,-229,0,-323r28,0v28,37,52,96,52,162v0,66,-25,124,-53,161","w":93},"*":{"d":"55,-257r24,0r0,45r40,-16r8,24r-41,12r28,37r-20,15r-27,-37r-27,37r-20,-15r28,-37r-42,-12r8,-24r41,16r0,-45","w":133},"+":{"d":"93,-107r0,-75r30,0r0,75r76,0r0,31r-76,0r0,76r-30,0r0,-76r-76,0r0,-31r76,0","w":216},",":{"d":"23,0r0,-48r41,0v-1,50,8,95,-41,103r0,-20v12,-3,19,-17,18,-35r-18,0","w":86,"k":{" ":13}},"-":{"d":"16,-86r0,-36r95,0r0,36r-95,0","w":126},".":{"d":"23,0r0,-48r41,0r0,48r-41,0","w":86},"\/":{"d":"-4,5r82,-267r32,0r-82,267r-32,0","w":106},"0":{"d":"51,-125v0,74,7,101,35,101v28,0,36,-27,36,-101v0,-74,-8,-101,-36,-101v-28,0,-35,27,-35,101xm10,-125v0,-99,27,-130,76,-130v49,0,77,31,77,130v0,99,-28,130,-77,130v-49,0,-76,-31,-76,-130"},"1":{"d":"116,0r-41,0r0,-185r-53,0r0,-27v28,0,60,-5,64,-43r30,0r0,255"},"2":{"d":"161,-35r0,35r-149,0v0,-111,107,-109,107,-188v0,-21,-9,-38,-32,-38v-31,0,-36,27,-36,53r-38,0v0,-51,21,-82,75,-82v52,0,72,31,72,68v0,85,-83,90,-102,152r103,0"},"3":{"d":"11,-71r39,0v0,22,7,47,35,47v26,0,36,-20,36,-45v1,-37,-18,-52,-58,-48r0,-29v35,4,53,-12,52,-43v0,-18,-9,-37,-30,-37v-25,0,-32,22,-32,45r-39,0v0,-48,24,-74,73,-74v31,0,69,14,69,65v1,27,-18,51,-41,57v26,2,47,23,47,59v0,50,-25,79,-78,79v-46,0,-73,-23,-73,-76"},"4":{"d":"8,-57r0,-36r88,-162r42,0r0,165r27,0r0,33r-27,0r0,57r-39,0r0,-57r-91,0xm99,-90r-1,-105r-57,105r58,0"},"5":{"d":"83,5v-47,0,-73,-25,-71,-74r38,0v-2,24,8,42,34,43v28,0,36,-28,36,-58v0,-30,-8,-54,-34,-54v-17,0,-29,9,-33,23r-37,-1r13,-134r123,0r0,33r-93,0v-2,22,-8,47,-7,68v11,-12,26,-20,43,-20v53,0,66,45,66,84v0,51,-23,90,-78,90"},"6":{"d":"159,-193r-41,0v0,-15,-6,-33,-27,-33v-38,-1,-43,54,-40,88v33,-50,113,-29,113,49v0,59,-24,94,-78,94v-64,0,-77,-49,-77,-122v0,-76,14,-138,81,-138v45,0,69,20,69,62xm54,-77v0,30,11,53,35,53v25,0,34,-24,34,-54v0,-35,-11,-56,-34,-56v-30,0,-35,26,-35,57"},"7":{"d":"11,-213r0,-37r151,0r0,33v-40,52,-74,140,-80,217r-43,0v6,-76,42,-161,83,-213r-111,0"},"8":{"d":"54,-188v0,21,6,39,32,39v26,0,32,-18,32,-39v0,-20,-6,-38,-32,-38v-26,0,-32,18,-32,38xm50,-72v0,27,7,48,36,48v29,0,36,-21,36,-48v0,-27,-7,-48,-36,-48v-29,0,-36,21,-36,48xm86,5v-52,0,-77,-26,-77,-76v-1,-39,21,-57,44,-65v-22,-8,-35,-24,-35,-55v0,-40,26,-64,68,-64v73,0,93,101,34,119v66,18,56,141,-34,141"},"9":{"d":"14,-57r41,0v0,15,6,33,27,33v38,1,43,-54,40,-88v-33,50,-113,29,-113,-49v0,-59,24,-94,78,-94v64,0,77,49,77,122v0,76,-15,138,-82,138v-45,0,-68,-20,-68,-62xm119,-173v0,-30,-11,-53,-35,-53v-25,0,-34,25,-34,55v0,35,11,55,34,55v30,0,35,-26,35,-57"},":":{"d":"23,-137r0,-47r41,0r0,47r-41,0xm23,0r0,-48r41,0r0,48r-41,0","w":86,"k":{" ":13}},";":{"d":"23,0r0,-48r41,0v-1,50,8,95,-41,103r0,-20v12,-3,19,-17,18,-35r-18,0xm23,-137r0,-47r41,0r0,47r-41,0","w":86},"<":{"d":"17,-78r0,-26r182,-82r0,31r-145,64r145,64r0,31","w":216},"=":{"d":"17,-113r0,-31r182,0r0,31r-182,0xm17,-38r0,-31r182,0r0,31r-182,0","w":216},">":{"d":"199,-104r0,26r-182,82r0,-31r145,-64r-145,-64r0,-31","w":216},"?":{"d":"61,-69v-11,-70,50,-67,52,-124v0,-20,-7,-38,-29,-38v-24,0,-33,21,-33,51r-38,0v0,-45,19,-82,71,-82v45,0,70,25,70,69v-1,69,-64,67,-56,124r-37,0xm58,0r0,-41r41,0r0,41r-41,0","w":166},"@":{"d":"130,-76v38,2,72,-101,17,-101v-30,0,-51,36,-51,65v0,22,11,36,34,36xm194,-198r26,0r-31,115v0,5,3,8,12,8v20,0,44,-33,44,-73v0,-51,-45,-85,-95,-85v-63,0,-107,50,-107,106v0,104,133,130,193,72r30,0v-19,35,-60,60,-119,60v-76,0,-137,-50,-137,-134v0,-75,56,-133,140,-133v73,0,128,45,128,110v0,72,-57,103,-92,103v-19,1,-23,-12,-26,-22v-27,37,-94,25,-94,-37v0,-69,83,-135,121,-68","w":288},"A":{"d":"64,-96r61,0r-31,-126xm-3,0r73,-257r52,0r68,257r-43,0r-16,-63r-75,0r-16,63r-43,0","w":186,"k":{"v":6,"T":20,"V":11,"w":6,"W":11,"y":6,"Y":20}},"B":{"d":"62,-149v39,3,71,-2,70,-40v-1,-43,-33,-37,-70,-37r0,77xm62,-31v44,1,79,3,79,-45v0,-44,-35,-47,-79,-44r0,89xm21,0r0,-257v72,1,153,-15,153,62v0,31,-12,51,-38,59v28,5,46,22,46,66v0,43,-31,70,-79,70r-82,0","w":193,"k":{",":11,".":11}},"C":{"d":"138,-92r41,0v1,50,-17,97,-79,97v-65,0,-85,-42,-85,-134v0,-92,20,-133,85,-133v75,0,78,53,78,85r-41,0v0,-27,-6,-54,-37,-54v-30,0,-44,18,-44,101v0,83,14,104,44,104v35,-1,38,-39,38,-66","w":186,"k":{",":6,".":6}},"D":{"d":"62,-226r0,195v67,3,82,-3,82,-98v0,-91,-15,-101,-82,-97xm21,0r0,-257r73,0v81,0,91,52,91,128v0,76,-10,129,-91,129r-73,0","w":200,"k":{"Y":6,",":14,".":14}},"E":{"d":"21,0r0,-257r139,0r0,35r-98,0r0,71r92,0r0,34r-92,0r0,82r101,0r0,35r-142,0","w":173},"F":{"d":"21,0r0,-257r137,0r0,35r-96,0r0,71r91,0r0,34r-91,0r0,117r-41,0","w":166,"k":{",":46,".":46,"A":13}},"G":{"d":"148,0r0,-30v-11,24,-27,35,-57,35v-56,0,-76,-42,-76,-134v0,-92,26,-133,85,-133v66,0,77,49,76,79r-39,0v1,-24,-6,-48,-36,-48v-29,0,-45,19,-45,101v0,83,14,104,42,104v31,0,42,-22,42,-78r-43,0r0,-31r82,0r0,135r-31,0","w":193,"k":{",":6,".":6}},"H":{"d":"21,0r0,-257r41,0r0,103r76,0r0,-103r41,0r0,257r-41,0r0,-120r-76,0r0,120r-41,0","w":200},"I":{"d":"19,0r0,-257r41,0r0,257r-41,0","w":79},"J":{"d":"6,-77r39,0v0,26,0,51,27,51v27,0,27,-25,27,-51r0,-180r41,0r0,186v0,57,-28,76,-69,76v-60,0,-66,-36,-65,-82","w":159,"k":{",":14,".":14}},"K":{"d":"21,0r0,-257r41,0r1,112r78,-112r45,0r-74,108r82,149r-47,0r-62,-116r-23,33r0,83r-41,0","w":186},"L":{"d":"17,0r0,-257r41,0r0,222r99,0r0,35r-140,0","w":159,"k":{"T":33,"V":27,"W":27,"y":13,"Y":33}},"M":{"d":"21,0r0,-257r64,0r46,190r45,-190r63,0r0,257r-39,0r-1,-214r-52,214r-34,0r-53,-214r0,214r-39,0","w":259},"N":{"d":"21,0r0,-257r50,0r76,191r0,-191r38,0r0,257r-50,0r-75,-197r0,197r-39,0","w":206,"k":{",":6,".":6}},"O":{"d":"100,5v-59,0,-85,-42,-85,-134v0,-92,26,-133,85,-133v59,0,85,41,85,133v0,92,-26,134,-85,134xm100,-26v24,0,44,-15,44,-104v0,-86,-20,-101,-44,-101v-24,0,-44,15,-44,101v0,89,20,104,44,104","w":200,"k":{"T":11,"V":6,"Y":14,",":14,".":14,"A":6,"X":6}},"P":{"d":"62,-226r0,89v40,2,67,1,70,-44v2,-39,-28,-49,-70,-45xm21,0r0,-257r82,0v49,0,71,31,71,75v1,60,-45,83,-112,76r0,106r-41,0","w":180,"k":{",":54,".":54,"A":13}},"Q":{"d":"167,23r-27,-27v-77,29,-125,-14,-125,-125v0,-92,26,-133,85,-133v59,0,85,41,85,133v0,48,-8,83,-20,102r26,28xm95,-48r24,-23r17,17v6,-15,8,-40,8,-76v0,-86,-20,-101,-44,-101v-24,0,-44,15,-44,101v0,98,16,108,59,102","w":200,"k":{",":6,".":6}},"R":{"d":"142,0v-20,-30,12,-119,-46,-112r-34,0r0,112r-41,0r0,-257v75,3,156,-19,156,66v0,34,-17,58,-43,64v26,3,40,16,41,52v1,27,-4,67,13,75r-46,0xm62,-143v40,3,74,-1,74,-41v0,-42,-33,-45,-74,-42r0,83","w":193,"k":{"T":6,"Y":6}},"S":{"d":"12,-80r41,0v-2,34,12,55,42,54v26,0,39,-18,39,-37v2,-40,-36,-45,-65,-56v-37,-14,-54,-33,-54,-70v0,-47,32,-73,80,-73v68,0,73,40,73,73r-41,0v1,-26,-8,-42,-36,-42v-18,0,-34,10,-34,37v0,32,38,45,66,54v36,13,52,33,52,68v0,55,-33,77,-85,77v-67,0,-79,-42,-78,-85","w":186,"k":{",":11,".":11}},"T":{"d":"63,0r0,-222r-61,0r0,-35r163,0r0,35r-61,0r0,222r-41,0","w":166,"k":{"w":27,"y":27,",":33,".":33,"A":20,"r":27,"e":27,"o":27,"a":27,"-":27,"i":6,"O":11,"u":27,":":27,";":27}},"U":{"d":"18,-257r41,0r0,184v0,32,13,47,38,47v24,0,37,-15,37,-47r0,-184r41,0r0,181v0,59,-29,81,-78,81v-49,0,-79,-22,-79,-81r0,-181","w":193,"k":{",":11,".":11}},"V":{"d":"58,0r-60,-257r43,0r45,205r46,-205r43,0r-64,257r-53,0","w":173,"k":{",":33,".":33,"A":13,"e":6,"o":6,"a":6,"-":6,"u":6,":":6,";":6}},"W":{"d":"52,0r-50,-257r42,0r34,200r34,-200r43,0r35,201r34,-201r41,0r-52,257r-47,0r-34,-194r-33,194r-47,0","w":266,"k":{"y":6,",":27,".":27,"A":11,"e":6,"o":6,"a":6,"-":6}},"X":{"d":"0,0r68,-131r-62,-126r45,0r41,85r40,-85r45,0r-63,126r66,131r-45,0r-45,-93r-46,93r-44,0","w":180},"Y":{"d":"65,0r0,-100r-66,-157r45,0r43,111r45,-111r43,0r-69,157r0,100r-41,0","w":173,"k":{",":40,".":40,"A":20,"e":20,"o":20,"a":20,"-":27,"i":6,"O":14,"u":18,":":13,";":13,"S":6}},"Z":{"d":"6,0r0,-32r108,-190r-101,0r0,-35r146,0r0,35r-108,187r109,0r0,35r-154,0","w":166},"[":{"d":"28,66r0,-323r73,0r0,29r-37,0r0,265r37,0r0,29r-73,0","w":100},"\\":{"d":"78,5r-82,-267r32,0r82,267r-32,0","w":106},"]":{"d":"-1,66r0,-29r37,0r0,-265r-37,0r0,-29r73,0r0,323r-73,0","w":100},"^":{"d":"165,-101r-57,-118r-57,118r-30,0r73,-149r27,0r74,149r-30,0","w":216},"_":{"d":"0,45r0,-18r180,0r0,18r-180,0","w":180},"a":{"d":"146,-151r0,111v-1,9,8,16,16,12r0,25v-19,10,-50,4,-52,-20v-20,44,-99,37,-99,-26v0,-57,36,-57,75,-69v14,-4,23,-8,23,-25v0,-18,-6,-29,-27,-29v-26,0,-29,18,-29,37r-37,0v0,-41,17,-64,68,-64v34,0,62,14,62,48xm109,-102v-20,15,-59,12,-59,49v0,16,8,29,24,29v34,2,37,-40,35,-78","w":166},"b":{"d":"19,0r0,-257r39,0r0,86v7,-17,23,-28,44,-28v30,0,60,14,60,100v0,67,-18,104,-63,104v-29,1,-37,-18,-44,-29r0,24r-36,0xm55,-95v0,41,6,69,33,69v27,0,33,-28,33,-72v0,-52,-8,-70,-30,-70v-30,0,-36,27,-36,73","w":173,"k":{"y":4,",":13,".":13}},"c":{"d":"113,-71r36,0v-3,46,-18,76,-66,76v-56,0,-72,-42,-72,-102v0,-60,16,-102,72,-102v58,0,67,46,67,70r-39,0v0,-18,-5,-41,-28,-41v-28,0,-33,30,-33,73v0,43,5,73,33,73v22,0,30,-18,30,-47","w":159,"k":{"y":6,",":13,".":13,"h":2,"k":2}},"d":{"d":"118,0v-1,-7,2,-18,-1,-24v-5,13,-14,29,-42,29v-45,0,-64,-37,-64,-104v0,-86,30,-100,60,-100v22,-1,36,13,45,28r0,-86r38,0r0,257r-36,0xm118,-95v0,-46,-6,-73,-36,-73v-22,0,-30,18,-30,70v0,44,6,72,33,72v27,0,33,-28,33,-69","w":173,"k":{"y":2}},"e":{"d":"153,-92r-101,0v0,32,0,70,33,70v28,0,31,-31,31,-43r36,0v0,43,-26,70,-68,70v-32,0,-71,-9,-71,-99v0,-51,11,-105,72,-105v61,0,70,45,68,107xm52,-118r62,0v1,-28,-3,-54,-29,-54v-26,0,-34,27,-33,54","w":166,"k":{",":13,".":13,"x":2}},"f":{"d":"31,0r0,-165r-27,0r0,-29r27,0v-6,-53,19,-73,70,-65r0,30v-26,-3,-36,8,-32,35r32,0r0,29r-32,0r0,165r-38,0","w":100,"k":{",":13,".":13}},"g":{"d":"21,17r37,0v0,12,11,23,28,23v31,1,34,-34,32,-68v-7,17,-25,27,-44,27v-45,0,-58,-45,-58,-98v0,-42,6,-100,61,-100v24,-1,38,17,44,29r0,-24r36,0r0,185v0,47,-20,75,-72,75v-58,0,-64,-33,-64,-49xm55,-103v0,33,1,71,30,71v30,0,33,-38,33,-69v0,-32,-4,-67,-31,-67v-28,0,-32,29,-32,65","w":173,"k":{",":6,".":6,"r":-2}},"h":{"d":"19,0r0,-257r39,0r1,85v23,-40,95,-40,95,26r0,146r-38,0r0,-133v0,-25,-8,-35,-27,-35v-16,0,-31,13,-31,38r0,130r-39,0","w":173,"k":{"y":2}},"i":{"d":"21,0r0,-194r38,0r0,194r-38,0xm21,-221r0,-39r38,0r0,39r-38,0","w":79},"j":{"d":"21,-194r38,0r0,207v1,47,-26,57,-68,52r0,-30v21,1,30,-1,30,-26r0,-203xm21,-260r38,0r0,39r-38,0r0,-39","w":79},"k":{"d":"19,0r0,-257r39,0r0,144r59,-81r45,0r-58,75r66,119r-43,0r-47,-88r-22,26r0,62r-39,0","w":166,"k":{"y":2,"e":2,"o":2}},"l":{"d":"21,0r0,-257r38,0r0,257r-38,0","w":79},"m":{"d":"21,0r0,-194r36,0v1,7,-2,18,1,23v16,-37,85,-35,92,2v20,-43,96,-44,96,22r0,147r-39,0r0,-133v0,-25,-7,-35,-23,-35v-16,0,-31,13,-31,38r0,130r-39,0r0,-133v0,-25,-8,-35,-24,-35v-15,0,-31,13,-31,38r0,130r-38,0","w":266},"n":{"d":"19,0r0,-194r36,0v1,7,-3,20,2,23v20,-40,97,-43,97,25r0,146r-38,0r0,-133v0,-25,-8,-35,-27,-35v-16,0,-31,13,-31,38r0,130r-39,0","w":173},"o":{"d":"11,-97v0,-60,16,-102,72,-102v57,0,73,42,73,102v0,60,-19,102,-73,102v-54,0,-72,-42,-72,-102xm50,-97v0,49,5,73,33,73v28,0,34,-24,34,-73v0,-43,-6,-73,-34,-73v-28,0,-33,30,-33,73","w":166,"k":{"v":2,"w":2,"y":2,",":6,".":6}},"p":{"d":"19,63r0,-257r36,0v1,7,-2,18,1,24v8,-17,23,-29,44,-29v44,0,62,38,62,105v0,81,-33,99,-60,99v-21,0,-37,-11,-44,-28r0,86r-39,0xm55,-99v0,46,7,73,34,73v22,0,32,-16,32,-70v0,-44,-6,-72,-33,-72v-27,0,-33,28,-33,69","w":173,"k":{"y":2,",":6,".":6}},"q":{"d":"116,63r-1,-86v-7,17,-23,28,-44,28v-30,0,-60,-21,-60,-99v0,-67,19,-105,64,-105v29,-1,36,18,43,29r0,-24r36,0r0,257r-38,0xm118,-99v0,-41,-6,-69,-33,-69v-27,0,-33,28,-33,72v0,52,10,70,30,70v30,0,36,-27,36,-73","w":173},"r":{"d":"19,0r0,-194r39,0r0,31v10,-25,28,-41,55,-34r0,39v-29,-5,-55,-2,-55,42r0,116r-39,0","w":113,"k":{"v":-6,"y":-6,",":33,".":33,"e":2,"a":2,"c":2,"d":2,"g":2,"m":-4,"n":-4,"q":4,"-":20}},"s":{"d":"139,-137r-37,0v1,-19,-3,-34,-25,-35v-15,0,-28,7,-28,25v0,24,32,30,52,37v29,10,42,25,42,56v0,41,-30,59,-69,59v-52,0,-65,-25,-64,-67r35,0v-1,25,6,40,30,40v39,0,41,-46,10,-56v-34,-11,-73,-22,-73,-67v0,-36,26,-54,66,-54v53,0,62,29,61,62","w":153},"t":{"d":"1,-165r0,-29r27,0r0,-55r39,0r0,55r32,0r0,29r-32,0r0,116v-2,21,16,22,32,19r0,29v-36,5,-71,12,-71,-44r0,-120r-27,0","w":100},"u":{"d":"118,0v-1,-7,2,-18,-1,-23v-25,40,-98,46,-98,-35r0,-136r39,0r0,139v0,22,9,29,26,29v17,0,32,-10,32,-32r0,-136r38,0r0,194r-36,0","w":173},"v":{"d":"54,0r-51,-194r41,0r35,153r30,-153r42,0r-51,194r-46,0","w":153,"k":{",":27,".":27,"a":4}},"w":{"d":"49,0r-44,-194r41,0r27,153r29,-153r44,0r30,153r26,-153r39,0r-44,194r-44,0r-31,-150r-27,150r-46,0","w":246,"k":{",":20,".":20,"o":2,"a":4}},"x":{"d":"1,0r53,-100r-50,-94r42,0r31,64r31,-64r42,0r-50,94r52,100r-42,0r-34,-72r-34,72r-41,0","w":153},"y":{"d":"3,-194r42,0r34,146r31,-146r40,0r-53,201v-16,60,-32,61,-83,58r0,-31v26,6,41,-7,44,-30","w":153,"k":{",":27,".":27,"e":2}},"z":{"d":"9,0r0,-30r85,-131r-80,0r0,-33r124,0r0,32r-82,129r82,0r0,33r-129,0","w":146},"{":{"d":"3,-84r0,-23v37,-3,28,-62,29,-103v1,-42,26,-50,66,-47r0,22v-46,-9,-30,53,-30,91v0,35,-25,44,-33,49v9,2,33,14,33,48v0,35,-20,97,30,91r0,22v-40,3,-65,-4,-66,-47v-1,-42,8,-99,-29,-103","w":100},"|":{"d":"24,5r0,-267r31,0r0,267r-31,0","w":79},"}":{"d":"98,-107r0,23v-37,3,-30,61,-30,103v0,42,-26,51,-65,47r0,-22v45,8,29,-54,29,-91v0,-35,25,-44,33,-49v-9,-2,-33,-14,-33,-48v0,-35,20,-97,-29,-91r0,-22v39,-3,64,5,65,47v1,42,-8,100,30,103","w":100},"~":{"d":"146,-63v-25,0,-56,-24,-77,-26v-11,0,-21,9,-31,28r-13,-27v10,-21,28,-32,45,-32v41,2,85,57,108,-1r13,27v-11,19,-28,31,-45,31","w":216},"'":{"d":"28,-154r0,-103r31,0r0,103r-31,0","w":86},"`":{"d":"33,-219r-38,-52r43,0r22,52r-27,0","w":79},"\u00a0":{"w":86,"k":{"T":13,"V":13,"W":13,"Y":13,"A":13}}}});
