public static @Nullable <T> T coalesce(@NotNull Iterable<? extends T> o) {
    for (T t : o) {
      if (t != null) return t;
    }
    return null;
  }
public static @Nullable <T> T coalesce(@NotNull Iterable<? extends T> o)