 		public static var debug:Boolean = false;
 		internal var _linkableObject:ILinkableObject; // for debugging only... will be set when debug==true
 		private var _lastTriggerStackTrace:String; // for debugging only... will be set when debug==true
+		private var _oldEntries:Array;
 
 		/**
 		 * If specified, the preCallback function will be called immediately before running each callback.

						var allContexts:Array = triggerEntry.context as Array;
						// remove the contexts that have been disposed of.
						for (var i:int = 0; i < allContexts.length; i++)
						{
							var context:Object = allContexts[i];
							// if there is a null context, it means the callback should never be removed.
							if (context != null && WeaveAPI.SessionManager.objectWasDisposed(context))
								allContexts.splice(i--, 1);
						}
						// if there are no more relevant contexts for this callback, don't run it.
						if (allContexts.length == 0)
						{

				_frameCallbackAdded = true;
			}
			
			if (relevantContext == null)
				relevantContext = this;
			
			var recursionLimit:uint = 0;
			var triggerEntry:CallbackEntry = _groupedCallbackToTriggerEntryMap[groupedCallback] as CallbackEntry;
			if (triggerEntry != null)
			{
				// add this context to the list of relevant contexts
				triggerEntry.context.push(relevantContext);
				// use the minimum of the existing limit and the new limit.
				triggerEntry.recursionLimit = Math.min(triggerEntry.recursionLimit, recursionLimit);
			}
