docs: private static String getUnexpectedTypeMessage(final Class<?> expectedType, final Object actualValue) {
  		if( expectedType == null ) {
  			throw new NullPointerException("expectedType should not be null");
  		}
  		String expectedClassName = expectedType.getName();
  		String actualClassName = (actualValue != null) ? actualValue.getClass().getName() : "null";
  		return String.format("the input value should be of type %s but is %s", expectedClassName, actualClassName);
  	}