 import mx.core.IVisualElement;
 import mx.core.mx_internal;
 
+import spark.components.SpinnerList;
 import spark.components.supportClasses.GroupBase;
 import spark.core.NavigationUnit;
 

    {
        // Element is false if it was a simple type and didn't survive the 
        // casting as an object
        if (!element || element["enabled"] == undefined || element["enabled"] == true)
            return true;
       
        
        return false;

            normalizeScrollPosition(verticalScrollPosition) : 
            verticalScrollPosition;
		
        var itemIndex:int = Math.floor(scrollPosition / rowHeight);
        var yPos:Number = 0;
        
        var foundLastVisibleElement:Boolean = false;
        var numVisibleElements:int = 0;
        var numVisitedElements:int = 0;
                
        // Translate the vsp to the item index
        if (wrapElements)
        {
            // The top item might only be partially visible. 
            yPos = -(scrollPosition % rowHeight);
        }
        else
        {
            if (!useVirtualLayout)
                itemIndex = 0;
            
            // If itemIndex is either the first or last element
            // then position using -scrollPosition
            if (itemIndex >= numElements)
            {
                itemIndex = numElements - 1;
                yPos = -scrollPosition;
            }
            else if (itemIndex > 0)
            {
                yPos = -(scrollPosition % rowHeight);
            }
            else // itemIndex == 0
            {
                yPos = -scrollPosition;
            }
        }			
        
        // Start at the top index
