code: private static Class<?> getGenericReturnType(Method method, Class<?> source, int typeIndex, int nestingLevel) {
  		return extractType(method.getGenericReturnType(), source, typeIndex, null, null, nestingLevel, 1);
  	}
docs: Extract the generic return type from the given method.
  @param method the method to check the return type for
  @param source the source class/interface defining the generic parameter types
  @param typeIndex the index of the type (e.g. 0 for Collections,
  0 for Map keys, 1 for Map values)
  @param nestingLevel the nesting level of the target type
  @return the generic type, or {@code null} if none