  if ( (event.which == null || event.type == "keypress") && event.keyCode != null ) event.which = event.keyCode;   if ( event.charCode == null && event.type == "keypress" ) event.charCode = event.keyCode; 
	fix: function(event) {		// Fix target property, if necessary		if ( !event.target && event.srcElement )			event.target = event.srcElement;		// Calculate pageX/Y if missing and clientX/Y available		if ( event.pageX == undefined && event.clientX != undefined ) {			var e = document.documentElement || document.body;			event.pageX = event.clientX + e.scrollLeft;			event.pageY = event.clientY + e.scrollTop;		}						// check if target is a textnode (safari)		if (jQuery.browser.safari && event.target.nodeType == 3) {			// store a copy of the original event object 			// and clone because target is read only			var originalEvent = event;			event = jQuery.extend({}, originalEvent);						// get parentnode from textnode			event.target = originalEvent.target.parentNode;						// add preventDefault and stopPropagation since 			// they will not work on the clone			event.preventDefault = function() {				return originalEvent.preventDefault();			};			event.stopPropagation = function() {				return originalEvent.stopPropagation();			};		}				// fix preventDefault and stopPropagation		if (!event.preventDefault)			event.preventDefault = function() {				this.returnValue = false;			};					if (!event.stopPropagation)			event.stopPropagation = function() {				this.cancelBubble = true;			};					return event;	}
6056	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/6056/5ef3d5364d9372c825146c087e24af460f32ca1e/event.js/buggy/src/event/event.js