code: public static <T> @Nullable T find(
        Iterable<? extends T> iterable, Predicate<? super T> predicate, @Nullable T defaultValue) {
      return Iterators.find(iterable.iterator(), predicate, defaultValue);
    }
docs: Returns the first element in {@code iterable} that satisfies the given predicate, or {@code
  defaultValue} if none found. Note that this can usually be handled more naturally using {@code
  tryFind(iterable, predicate).or(defaultValue)}.
  
  <p><b>{@code Stream} equivalent:</b> {@code
  stream.filter(predicate).findFirst().orElse(defaultValue)}
  
  @since 7.0