function EventListener() {

 this._listeners = new Array();
}


EventListener.prototype._listeners = null;

EventListener.prototype.addEventListener = function(pListener) {
 //alert('ADD' + pListener.onIncompatibility);
 this._listeners.push(pListener);
}


EventListener.prototype.removeEventListener = function(pListener) {
 var lListeners = new Array();
 for(var i in this._listeners) {
 if(this._listeners[i] !== pListener) {
 lListeners.push(this._listeners[i]);
 }
 }

 this._listeners = new Array();
 this._listeners = lListeners;

}

EventListener.prototype.launchEvent = function(pEvent) {
 var lArguments = '';
 var i;

 if(arguments.length > 1) {
 for(i = 1 ; i < arguments.length ; i++) {
 lArguments += '"' + arguments[i].toString() + '", ';
 }

 lArguments = lArguments.substr(0, lArguments.length - 2);
 }

 //alert('klklkl' + pEvent);

 for(i in this._listeners) {
 //alert(pEvent);
 try {
 //alert('this._listeners[' + i + '].'+ pEvent + '(' + lArguments + ')');
 eval('this._listeners[' + i + '].'+ pEvent + '(' + lArguments + ')');
 } catch(error) {
 ;
 }finally {
 ;
 }
 }
}
