Code cleanup: MoneyRange() chcks if the passed in value is negative, so there is no reason to check separately. Also, the function is only checking fees for one transaciton, so there is no reason to keep a running total of fees (nFees = 0 + nTxFee).