rem: if (fn.call(self, event) === false) event.stop(); 
add: if (map.call(self, event) === false) event.stop(); 
context: 	addEvent: function(type, fn){		this.$events = this.$events || {};		this.$events[type] = this.$events[type] || {'keys': [], 'values': []};		if (this.$events[type].keys.contains(fn)) return this;		this.$events[type].keys.push(fn);		var realType = type;		var custom = Element.Events[type];		if (custom){			if (custom.add) custom.add.call(this, fn);			if (custom.map) fn = custom.map;			if (custom.type) realType = custom.type;		}		var defn = fn;		var nativeEvent = Element.$nativeEvents[realType] || 0;		if (nativeEvent){			if (nativeEvent == 2){				var self = this;				defn = function(event){					event = new Event(event);					if (fn.call(self, event) === false) event.stop();				};			}			this.addListener(realType, defn);		}		this.$events[type].values.push(defn);		return this;	},
meta: 6924	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/6924/98b18569013847f60ea496f3cfb4ea51ee1744c8/Element.Event.js/clean/Element/Element.Event.js