                                            dropIndicatorElement.getMinBoundsWidth(false));
             }
 
-            x = column * (_columnWidth + _horizontalGap);
+            x = column * (_columnWidth + _horizontalGap) + paddingLeft;
          
-            y = emptySpaceTop + Math.round((emptySpace - height) / 2);
+            y = emptySpaceTop + Math.round((emptySpace - height) / 2) + paddingTop;
             // Allow 1 pixel overlap with container border
             y = Math.max(-1, Math.min(target.contentHeight - height + 1, y));
         }

    {
        var bounds:Rectangle = new Rectangle();
        // Find the row that spans or is below the scrollRect bottom edge
        var row:int = Math.floor((scrollRect.bottom + 1 + _verticalGap) / (_rowHeight + _verticalGap));
        bounds.top = topEdge(row);
        bounds.bottom = bottomEdge(row);
        return bounds;

            return;
            
        var cw:Number = !isNaN(layoutTarget.explicitWidth) ? layoutTarget.explicitWidth : 
                                                             layoutTarget.estimatedWidth;
        var ch:Number = !isNaN(layoutTarget.explicitHeight) ? layoutTarget.explicitHeight : 
                                                              layoutTarget.estimatedHeight;
        updateActualValues(cw, ch);

        // For measure, any explicit overrides for rowCount and columnCount take precedence
        var columnCount:int = _requestedColumnCount != -1 ? Math.max(1, _requestedColumnCount) : _columnCount;
        var rowCount:int = _requestedRowCount != -1 ? Math.max(1, _requestedRowCount) : _rowCount;
        
        var measuredWidth:Number = 0;
        var measuredMinWidth:Number = 0;
        var measuredHeight:Number = 0;
        var measuredMinHeight:Number = 0;
        
        if (columnCount > 0)
        {
            measuredWidth = Math.ceil(columnCount * (_columnWidth + _horizontalGap) - _horizontalGap)
            // measured min size is guaranteed to have enough columns to fit all elements
            measuredMinWidth = Math.ceil(_columnCount * (_columnWidth + _horizontalGap) - _horizontalGap);
        }
            
        if (rowCount > 0)
        {
            measuredHeight = Math.ceil(rowCount * (_rowHeight + _verticalGap) - _verticalGap);
            // measured min size is guaranteed to have enough rows to fit all elements
            measuredMinHeight = Math.ceil(_rowCount * (_rowHeight + _verticalGap) - _verticalGap);
        }
		_numElementsCached = -1;
        
        var hPadding:Number = paddingLeft + paddingRight;
        var vPadding:Number = paddingTop + paddingBottom;

        layoutTarget.measuredWidth = measuredWidth + hPadding;
        layoutTarget.measuredMinWidth = measuredMinWidth + hPadding;
        layoutTarget.measuredHeight = measuredHeight + vPadding;
        layoutTarget.measuredMinHeight = measuredMinHeight + vPadding;
    }

    /**
