code: @Nullable
    public static <T> T getOnlyElement(Iterable<? extends T> iterable, @Nullable T defaultValue) {
      return Iterators.getOnlyElement(iterable.iterator(), defaultValue);
    }
docs: Returns the single element contained in {@code iterable}, or {@code
  defaultValue} if the iterable is empty.
  
  @throws IllegalArgumentException if the iterator contains multiple
  elements