 {
 
 import mx.core.ILayoutElement;
+import mx.core.IUIComponent;
 import mx.core.ScrollPolicy;
 
 import spark.components.Scroller;

        var scroller:Scroller = getScroller();
        if (!scroller) 
            return;
            
        var viewport:IViewport = scroller.viewport;
        var hsb:ScrollBar = scroller.horizontalScrollBar;
        var vsb:ScrollBar = scroller.verticalScrollBar;
        var minViewportInset:Number = scroller.minViewportInset;
        
        // Decide which scrollbars will be visible based on the viewport's content size
        var showHSB:Boolean = false;

            viewportH -= minViewportInset;
        if (!showVSB)
            viewportW -= minViewportInset;
        
        // Special case: viewport's size is explicitly set
        if (!isNaN(explicitViewportW))
            viewportW = explicitViewportW;
        if (!isNaN(explicitViewportH))
            viewportH = explicitViewportH;
        
        // layout the viewport
        if (viewport)
        {
