                             return interval; 
                         else 
                         {
-                            interval.push(selectedIndices[0]); 
+                            interval.splice(0, 0, selectedIndices[0]); 
                             return interval; 
                     }
                     }

                var index:int = dataProvider.getItemIndex(value[i]);
                if (index != -1)
                { 
                    indices[i] = index;  
                }
                if (index == -1)
                {

        
        var oldIndices:Vector.<int> = selectedIndices;  
        _selectedIndices = newInterval;
        _selectedIndex = getFirstItemValue(newInterval);
        // If the selection has actually changed, trigger a pass to 
        // commitProperties where a change event will be 
        // fired to update any bindings to selection properties. 
