var	feature_Event = {
	
	add: function(obj, etype,	fp,	cap) {
		cap	=	cap	|| false;
		if (obj.addEventListener)	obj.addEventListener(etype,	fp,	cap);
		else if	(obj.attachEvent)	obj.attachEvent("on" + etype,	fp);
	}, 

	remove:	function(obj,	etype, fp, cap)	{
		cap	=	cap	|| false;
		if (obj.removeEventListener) obj.removeEventListener(etype,	fp,	cap);
		else if	(obj.detachEvent)	obj.detachEvent("on" + etype,	fp);
	}, 
	
	DOMit: function(e) { 
		e	=	e? e:	window.event;	// e IS	passed when	using	attachEvent	though ...
		if (!e.target) e.target	=	e.srcElement;
		if (!e.preventDefault) e.preventDefault	=	function ()	{	e.returnValue	=	false; return	false; }
		if (!e.stopPropagation)	e.stopPropagation	=	function ()	{	e.cancelBubble = true; }
		return e;
	},
	
	getTarget: function(e) {
		e	=	dw_Event.DOMit(e); var tgt = e.target; 
		if (tgt.nodeType !=	1) tgt = tgt.parentNode; //	safari...
		return tgt;
	}
	
}

function addLoadEvent(func)	{
	var	oldQueue = window.onload?	window.onload: function()	{};
	window.onload	=	function() {
		oldQueue();
		func();
	}
}