             else
                 availableHeight -= rowHeight + rowGap;            
         }
-        
-        // Run the prepare() method for renderers created or recycled for this pass
-
-        if (createdItemRenderers)
-        {
-            for each (var createdRenderer:IGridItemRenderer in createdItemRenderers)
-                createdRenderer.prepare(false);
-        }
-        
-        for each (var allocatedRenderer:IGridItemRenderer in allocatedItemRenderers)
-            allocatedRenderer.prepare(true);
         
         // Free renderers that aren't in use
         

        
        const newVisibleRowIndices:Vector.<int> = new Vector.<int>();
        const newVisibleItemRenderers:Vector.<IGridItemRenderer> = new Vector.<IGridItemRenderer>();
        const allocatedItemRenderers:Vector.<IGridItemRenderer> = new Vector.<IGridItemRenderer>();
        var createdItemRenderers:Vector.<IGridItemRenderer> = null;
        
        var cellX:Number = startCellX;
        var cellY:Number = startCellY;

                    column = getGridColumn(colIndex);
                    var factory:IFactory = itemToRenderer(column, dataItem);
                    renderer = allocateGridElement(factory) as IGridItemRenderer;
                }
                if (renderer.parent != rendererLayer)
                    rendererLayer.addElement(renderer);
                newVisibleItemRenderers.push(renderer);
                initializeItemRenderer(renderer, rowIndex, colIndex);
                
                renderer.prepare(!createdGridElement);
                
                var colWidth:Number = gridDimensions.getColumnWidth(colIndex);
                layoutItemRenderer(renderer, cellX, cellY, colWidth, rowHeight);
