docs: private static List<UberData> extractProperties(Object obj) {
  
  		if (PRIMITIVE_TYPES.contains(obj.getClass())) {
  			return Collections.singletonList(new UberData().withValue(obj));
  		}
  
  		return PropertyUtils.findProperties(obj).entrySet().stream()
  				.map(entry -> new UberData().withName(entry.getKey()).withValue(entry.getValue())).collect(Collectors.toList());
  	}