checkUA();

function checkUA()
	{
	var UAs = {MSIE: 'MSIE ', Gecko: 'rv:'};
	var ua = navigator.userAgent;
		for( var n in UAs )
		{
		var is = ua.indexOf(n) != -1;
			if( is ) document['version' + n] = parseFloat(ua.substring(ua.indexOf(UAs[n]) + UAs[n].length));
		document['is' + n] = is;
		}
	}

	if( document.isMSIE )
	{
	getComputedStyle = function ( e, pseudo )
		{
		return e.currentStyle;
		}
	
	document.getOverrideStyle = function ( e, pseudo )
		{
		return e.runtimeStyle;
		}
	
	patchDOM = function ( e )
		{
		e.addEventListener = function ( evt, listener, useCapture )
			{
			e.attachEvent('on' + evt, listener);
			}
		
		e.removeEventListener = function ( evt, listener, useCapture )
			{
			e.detachEvent('on' + evt, listener);
			}
		
		return e;
		}
	}
	else if( document.isGecko )
	{
	document.getOverrideStyle = function ( e, pseudo )
		{
		return e.style;
		}
	
	patchDOM = function ( e )
		{
		return e;
		}
	}
