         var maxDelta:Number = g.contentHeight - scrollR.height - scrollR.y;
         var minDelta:Number = -scrollR.y;
         return Math.min(maxDelta, Math.max(minDelta, delta));
-    }     
+    }
         
     private function variableRowHeightMeasure(layoutTarget:GroupBase):void
     {

	    if ((index < 0) || (index >= g.numLayoutElements))
	       return 0.0;
	       
        var li:ILayoutElement = g.getLayoutElementAt(index);
        if ((li == null) || !li.includeInLayout)
            return 0.0;
            
        if (!clipContent)
            return 1.0;

        var r0:int = firstIndexInView;	
        var r1:int = lastIndexInView;
        
        // outside the visible index range
        if ((r0 == -1) || (r1 == -1) || (index < r0) || (index > r1))
            return 0.0;
            
        // within the visible index range, but not first or last            
        if ((index > r0) && (index < r1))
            return 1.0;

        // index is first (r0) or last (r1) visible row
        var y0:Number = g.verticalScrollPosition;
        var y1:Number = y0 + g.height;
        var iy0:Number = li.getLayoutPositionY();
        var iy1:Number = iy0 + li.getLayoutHeight();
        if (iy0 >= iy1)  // element has 0 or negative height
            return 1.0;
        if ((iy0 >= y0) && (iy1 <= y1))

    }
    
    
    /**
     *  @private 
     *  Compute potentially approximate values for measuredWidth,Height and 
     *  measuredMinWidth,Height.
     * 
     *  If requestedRows is specified, then measure and cache the dimensions of 
     *  the first requestedRows.  
     * 
     *  Otherwise all dimensions are based exclusively on the values already 
     *  cached in llv.
     * 
     *  Note that the llv's defaultMajorSize, minorSize, and minMinorSize are 
     *  based on typicalLayoutElement.
     */
    private function virtualRowHeightMeasure(layoutTarget:GroupBase):void
    {
        var rowCount:uint = layoutTarget.numLayoutElements;
        llv.length = rowCount;
        llv.defaultMajorSize = typicalLayoutElement.getPreferredHeight();
        llv.minorSize = typicalLayoutElement.getPreferredWidth();
        
        var measuredRowCount:int = (requestedRowCount != -1) ? requestedRowCount : rowCount;
        layoutTarget.measuredWidth = llv.minorSize;
        layoutTarget.measuredHeight =  llv.end(measuredRowCount - 1);
        
        layoutTarget.measuredMinWidth = layoutTarget.measuredWidth;
        layoutTarget.measuredMinHeight = layoutTarget.measuredHeight;
    }
    
    
    override public function measure():void
    {
        super.measure();
