         {
             min = symSqrt(min);
             var denom:Number = symSqrt(max) - min;
-            return (denom < EPSILON ? 0.5 : (symSqrt(x) - min) / denom);
+            return (denom < EPSILON && denom > -EPSILON ? 0 : (symSqrt(x) - min) / denom);
         }
         
         /**

        public static function invLinearInterp(x:Number, min:Number, max:Number):Number
        {
            var denom:Number = (max - min);
            return (denom < EPSILON ? 0 : (x - min) / denom);
        }
        
        /**

        {
            min = symLog(min, b);
            var denom:Number = symLog(max, b) - min;
            return (denom < EPSILON && denom > -EPSILON ? 0 : (symLog(x, b) - min) / denom);
        }
        
        /**
