docs: private static Map<String, Object> getNamedParameters(Method method, Object[] arguments) {
  		
  		Map<String, Object> namedParams = new LinkedHashMap<>();
  		
  		Annotation[][] paramAnnotations = method.getParameterAnnotations();
  		for (int i = 0; i < paramAnnotations.length; i++) {
  			Annotation[] ann = paramAnnotations[i];
  			for (Annotation an : ann) {
  				if (JsonRpcParam.class.isInstance(an)) {
  					JsonRpcParam jAnn = (JsonRpcParam) an;
  					namedParams.put(jAnn.value(), arguments[i]);
  					break;
  				}
  			}
  		}
  		
  		if (arguments != null && arguments.length > 0 && namedParams.size() > 0 && namedParams.size() != arguments.length) {
  			throw new IllegalArgumentException("JsonRpcParam annotations were not found for all parameters on method " + method.getName());
  		}
  		
  		return namedParams;
  	}