code: @Inline(value="$2.$3concat($1)", imported=Iterables.class)
  	public static <T> Iterable<T> flatten(Iterable<? extends Iterable<? extends T>> inputs) {
  		return Iterables.concat(inputs);
  	}
docs: Combines multiple iterables into a single iterable. The returned iterable has an iterator that traverses the
  elements of each iterable in {@code inputs}. The input iterators are not polled until necessary.
  
  <p>
  The returned iterable's iterator supports {@code remove()} when the corresponding input iterator supports it. The
  methods of the returned iterable may throw {@code NullPointerException} if any of the input iterators are null.
  </p>
  
  @param inputs
  the to be flattened iterables. May not be <code>null</code>.
  @return an iterable that provides the concatenated values of the input elements. Never <code>null</code>.