 
     public static function rotation (m :Matrix) :Number
     {
-        return MatrixUtil.skewY(m);
+        return (m.a == 0) ? 0 : Math.atan(m.b / m.a);
     }
 
     public static function setRotation (m :Matrix, rotation :Number) :void


    public static function scaleY (m :Matrix) :Number
    {
        return Math.sqrt(m.c * m.c + m.d * m.d);
    }

    public static function setScaleY (m :Matrix, scaleY :Number) :void

{
    public static function scaleX (m :Matrix) :Number
    {
        return sign(m.a) * Math.sqrt(m.a * m.a + m.b * m.b);
    }

    public static function setScaleX (m :Matrix, scaleX :Number) :void
