function iterate() {
    fs.stat(paths[complete], function(err, stats) {
      if (err) {
        return callback(err);
      }

      var pathTime = stats.mtime.getTime();
      var comparisonTime = time.getTime();
      var difference = pathTime - comparisonTime;

      if (difference > tolerance) {
        return callback(null, true);
      } else {
        override(paths[complete], time, function(include) {
          if (include) {
            callback(null, true);
          } else {
            ++complete;
            if (complete >= paths.length) {
              return callback(null, false);
            }
            iterate();
          }
        });
      }
    });
  }
Determine if any of the given files are newer than the provided time.
@param {Array.<string>} paths List of file paths.
@param {Date} time The comparison time.
@param {number} tolerance Maximum time in milliseconds that the destination
    file is allowed to be newer than the source file to compensate for
    imprecisions in modification times in file systems.
@param {function(string, Date, function(boolean))} override Override.
@param {function(Err, boolean)} callback Callback called with any error and
    a boolean indicating whether any one of the supplied files is newer than
    the comparison time.