public static SqlDecimal Power(SqlDecimal n, double exp)
{
n.AssertValid();
if (n.IsNull)
return SqlDecimal.Null;
byte prec = n.Precision;
int scale = n.Scale;
double dBaseNum = n.ToDouble();
n = new SqlDecimal(Math.Pow(dBaseNum, exp));
n.AdjustScale(scale - n.Scale, true);
n._bPrec = MaxPrecision;
return n;
}