code: public static <T0, T1, T2, T3, T4> Tuple5<T0, T1, T2, T3, T4> of(T0 value0, T1 value1, T2 value2, T3 value3, T4 value4) {
  		return new Tuple5<>(value0,
  			value1,
  			value2,
  			value3,
  			value4);
  	}
docs: Creates a new tuple and assigns the given values to the tuple's fields.
  This is more convenient than using the constructor, because the compiler can
  infer the generic type arguments implicitly. For example:
  {@code Tuple3.of(n, x, s)}
  instead of
  {@code new Tuple3<Integer, Double, String>(n, x, s)}