                     elt = layoutTarget.getVirtualElementAt(index);
                     w = calculateElementWidth(elt, targetWidth, containerWidth);
                     x = calculateElementX(elt, w, containerWidth);
+                    elt.setLayoutBoundsSize(w, elt.getLayoutBoundsHeight());         
                     elt.setLayoutBoundsPosition(x, elt.getLayoutBoundsY());
-                    elt.setLayoutBoundsSize(w, elt.getLayoutBoundsHeight());         
                 }
             }
         }

        for (; (y < maxVisibleY) && (index < eltCount); index++)
        {
            var elt:ILayoutElement = layoutTarget.getVirtualElementAt(index);
            var h:Number = (isNaN(fixedRowHeight)) ? elt.getPreferredBoundsHeight() : fixedRowHeight;
            var w:Number = calculateElementWidth(elt, targetWidth, containerWidth);
            var x:Number = calculateElementX(elt, w, containerWidth);
            elt.setLayoutBoundsPosition(x, y);
            elt.setLayoutBoundsSize(w, h);            
            llv.cacheDimensions(index, elt);
            y += h + gap;
        }

           case HorizontalAlign.CONTENT_JUSTIFY: 
               return Math.max(elt.getPreferredBoundsWidth(), containerWidth);
       }
       return NaN;  // not constrained
    }
    
    //  - virtual layout only - 
