/**********************************************************	shortcut getElementById*********************************************************/function $(id) {  return document.getElementById(id);}/**********************************************************	getElementsByClassName function*********************************************************/document.getElementsByClassName = function (needle) {  var my_array = document.getElementsByTagName("*");  var retvalue = new Array();  var i;  var j;  for (i = 0, j = 0; i < my_array.length; i++) {    var c = " " + my_array[i].className + " ";    if (c.indexOf(" " + needle + " ") != -1)      retvalue[j++] = my_array[i];  }  return retvalue;}/**********************************************************	addEvent handler**	obj = object to attach event to**	evType = Event type (load, unload, click, etc.)**	fn = function*********************************************************/function addEvent(obj, evType, fn) {	if (obj.addEventListener) {		obj.addEventListener(evType, fn, true);		return true;	} else if (obj.attachEvent) {		var r = obj.attachEvent("on"+evType, fn);		return r;	} else {		return false;	}}/**********************************************************	removeEvent handler**	obj = object to attach event to**	evType = Event type (load, unload, click, etc.)**	fn = function*********************************************************/function removeEvent(obj, evType, fn) {	if (obj.removeEventListener) {		obj.removeEventListener(evType, fn, false);		return true;	} else if (obj.detachEvent) {		var r = obj.detachEvent("on"+evType, fn);		return r;	} else {		return false;	}}