code: public static <T> Predicate<T> or(Predicate<? super T> first, Predicate<? super T> second) {
  		return new OrPredicate<>(Predicates.<T> asList(Objects.requireNonNull(first), Objects.requireNonNull(second)));
  	}
docs: Returns a predicate that evaluates to {@code true} if either of its
  components evaluates to {@code true}. The components are evaluated in
  order, and evaluation will be "short-circuited" as soon as a
  true predicate is found.