code: @SuppressWarnings("unchecked")
  	public <P extends ParaObject> List<P> getItemsFromList(List<?> result) {
  		if (result != null && !result.isEmpty()) {
  			// this isn't very efficient but there's no way to know what type of objects we're reading
  			ArrayList<P> objects = new ArrayList<>(result.size());
  			for (Object map : result) {
  				P p = ParaObjectUtils.setAnnotatedFields((Map<String, Object>) map);
  				if (p != null) {
  					objects.add(p);
  				}
  			}
  			return objects;
  		}
  		return Collections.emptyList();
  	}
docs: Deserializes ParaObjects from a JSON array (the "items:[]" field in search results).
  @param <P> type
  @param result a list of deserialized maps
  @return a list of ParaObjects