 			listeners.push(listenerBox);
 		}
 		
-		
-		private function permanentListenerRelationshipExists(listener:Function):Boolean
-		{
-			if (indexOfListener(listener) == -1)
-				return false;
-			
-			return !onceListeners[listener];
-		}
-
-		
-		private function onetimeListenerRelationshipExists(listener:Function):Boolean
-		{
-			if (indexOfListener(listener) == -1)
-				return false;
-			
-			return onceListeners[listener];
-		}
-
-				
 	}
 }

			if (eventClass && !listener.length)
				throw new ArgumentError('Listener must declare at least 1 argument when eventClass is specified.');
			
			if (onetimeListenerRelationshipExists(listener))
				throw new AmbiguousRelationshipError('You cannot add a listener then addOnce the same listener without removing the relationship first.');
		
			createListenerRelationship(listener, priority);
		}

		}
		
		
		protected function createListenerRelationship(listener:Function, priority:int):void
		{
			var listenerBox:Object = { listener:listener, priority:priority };
			// Process the first listener as quickly as possible.
