code: public <T> List<T> getList(String name, Class<T> type) {
  
  		Object value = super.get(name);
  
  		// make sure correct objects are returned
  		if (value instanceof List) {
  
  			ArrayList<T> output = new ArrayList<>();
  
  			List list = (List) value;
  			for (Object item : list) {
  				output.add(type.cast(item));
  			}
  
  			return output;
  		}
  
  		throw new IllegalArgumentException("Setting: '" + name + "', can't be converted to List<" + type.getName() + ">: '" + value + "'!");
  	}
docs: Returns setting a list of objects
  @param name setting name
  @param type type of object
  @param <T> type
  @return list of found setting
  @throws IllegalArgumentException in case settings could not be converted to given type