function findLast(collection, predicate) {
      predicate = getIteratee(predicate, 3);
      if (isArray(collection)) {
        var index = baseFindIndex(collection, predicate, true);
        return index > -1 ? collection[index] : undefined;
      }
      return baseFind(collection, predicate, baseEachRight);
    }
This method is like `_.find` except that it iterates over elements of
`collection` from right to left.

@static
@memberOf _
@since 2.0.0
@category Collection
@param {Array|Object} collection The collection to search.
@param {Array|Function|Object|string} [predicate=_.identity]
 The function invoked per iteration.
@returns {*} Returns the matched element, else `undefined`.
@example

_.findLast([1, 2, 3, 4], function(n) {
  return n % 2 == 1;
});
// => 3