code: function presentValueOfLumpSum(params, cb) {
      var d = Q.defer();
      if (!params || _.isEmpty(loan.rate) || _.isEmpty(loan.NPER) || _.isEmpty(loan.FV)) {
        d.reject(new Error('params object not provided or params does not include rate, NPER and FV'))
      } else {
        var result = FV / Math.pow(1 + rate, NPER);
        d.resolve(result);
      }
      if (callback) return d.promise.nodeify(callback);
      return d.promise;
    }
docs: /*
  presentValueOfLumpSum
  -----------
  Calculates the present value of a lump sum received in the future. Params include:
  rate (required) - the interest rate per period
  NPER (required) - total number of periods
  FV (required) - the future value or lump sum to be received