code: function _find(day, fn, increment) {
    return function (Y) {
      var type = typeof fn;
      var date = type === 'function' ?
        fn(Y) :
        (type === 'object' ?
          fn : new Date(Y + '-' + fn));
      if (typeof day === 'number')
        date.setDate(date.getDate() + (day * increment));
      else {
        var dow = _getName(day);
        while (date.getDay() !== dow)
          date.setDate(date.getDate() + increment);
      }
      return date;
    };
  }
docs: some magic signature here if day is a number, it's added to the date if day is a day of the week (English only) it's found while incrementing. if fn is a function, is invoked as fn(YYYY) if if is a "MM-DD" string, is created as "YYYY-MM-DD" if fn is a date, is used as it is