      */
     private static function getPreferredUBoundsWidth(obj:IUIComponent):Number
     {
-    	var result:Number;
-        // explicit trumps measured.
-        // measured is restricted by explicitMin and then by explicitMax.
-        if (!isNaN(obj.explicitWidth))
-        {
-			result = obj.explicitWidth;
-        }
-        else
-        {
-            result = obj.measuredWidth;
-
-            // We don't check against measuredMinHeight, since
-            // measuredMinWidth <= measuredWidth is expected always to be true.
-            if (!isNaN(obj.explicitMinWidth))
-               result = Math.max(result,
-                                                 obj.explicitMinWidth);
-            if (!isNaN(obj.explicitMaxWidth))
-               result = Math.min(result,
-                                                 obj.explicitMaxWidth);
-        }
-
+        // explicit trumps measured. measuredWidth should already be
+        // constraint between min & max during measure phase.
+        var result:Number = obj.getExplicitOrMeasuredWidth();
         if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0)
         {
             // We are already taking scale into account from the transform,

            obj.setActualSize(fitSize.x, fitSize.y);
    }
}
}
     */
    private static function getPreferredUBoundsHeight(obj:IUIComponent):Number
    {
        // explicit trumps measured. measuredWidth should already be
        // constraint between min & max during measure phase. 
        var result:Number = obj.getExplicitOrMeasuredHeight();
        if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0)
        {
            // We are already taking scale into account from the transform,
