                     || (sort && sort.propertyAffectsSort(String(updateInfo.property)));
             }
 
+			// go through the items and move and send move events for ones that moved
+			// and build the list of remaining items we need to send UPDATE events for
             eventItems = [];
             for (i = 0; i < updatedItems.length; i++)
             {

                var j:int = 0;
                for (; j < updatedItems.length; j++)
                {
                     if (updatedItems[j].item == item)
                        break;
                }

                if (j < updatedItems.length)

                    eventItems.push(updateEntry.item);
                }
            }

			// now go through the updated items and add all events for all 
			// properties that changed in that item (except for those items
			// we moved
            var temp:Array = [];
            for (var ctr:int = 0; ctr < eventItems.length; ctr++)
                for (var ctr1:int = 0; ctr1 < updatedItems.length; ctr1++)
                    if (eventItems[ctr] == updatedItems[ctr1].item)
					{
                        temp = temp.concat(updatedItems[ctr1].events);
					}
            eventItems = temp;
        }

