      * @return  The object containing the result of fitting <code>source</code>
      *          to <code>target</code>.
      */
-    public static function fit(source:Object, target:Object,
+    public static function fit(source:*, target:*,
                                    fitMode:String,
                                    xAlign:Number = 0.5,
                                    yAlign:Number = 0.5,
                                    rounding:Boolean = false,
-                                   out:Object = null):Object
+                                   out:* = null):*
     {
         // copy values to guard against aliasing
         var sw:Number = source.width, sh:Number = source.height;

        else if (point.x > rect.x + rect.width)  {  out.x = rect.x + rect.width;  }
        else  {  out.x = point.x;  }

        if (point.y < rect.top)  {  out.y = rect.top;  }
        else if (point.y > rect.y + rect.height)  {  out.y = rect.y + rect.height;  }
        else  {  out.y = point.y;  }


     * @return  The object containing the transformed rectangle.
     */
    public static function transform(
        rect:*,
        xFactor:Number, yFactor:Number,
        xOffset:Number, yOffset:Number,
        out:* = null):*
    {
        if (!out) out = new Rectangle();
        out.x = rect.x * xFactor + xOffset;
