                 actualSize1 = fitTBoundsWidth(width, matrix,
                                               explicitWidth, explicitHeight,
                                               preferredWidth, preferredHeight,
-                                              minWidth, minHeight,
-                                              maxWidth, maxHeight);
+                                              newMinWidth, newMinHeight, 
+                                              newMaxWidth, newMaxHeight);
 
                 // If we fit the width, but not the height.
                 if (actualSize1)
                 {
                     var fitHeight:Number = transformSize(actualSize1.x, actualSize1.y, matrix).y;
-                    if (fitHeight - tolerance > height)
+                    if (fitHeight - SOLUTION_TOLERANCE > height)
                         actualSize1 = null;
                 }
 

                actualSize2 = fitTBoundsHeight(height, matrix,
                                               explicitWidth, explicitHeight,
                                               preferredWidth, preferredHeight,
                                               minWidth, minHeight,
                                               maxWidth, maxHeight);

                // If we fit the height, but not the width
                if (actualSize2)
                {
                    var fitWidth:Number = transformSize(actualSize2.x, actualSize2.y, matrix).x;
                    if (fitWidth - tolerance > width)
                        actualSize2 = null;
                }
                

    include "../core/Version.as";

	private static const RADIANS_PER_DEGREES:Number = Math.PI / 180;
    mx_internal static var SOLUTION_TOLERANCE:Number = 0.1;
    mx_internal static var MIN_MAX_TOLERANCE:Number = 0.1;
	
	private static var staticPoint:Point = new Point();

