docs: public static <T> List<T> sub(Collection<T> list, int start, int end, int step) {
  		if (list == null || list.isEmpty()) {
  			return null;
  		}
  
  		return sub(new ArrayList<T>(list), start, end, step);
  	}