code: @SuppressWarnings("unchecked")
      protected static final <A extends Annotation> Class<A> annotation(final String annotationClassName) {
          try {
              return (Class<A>) Class.forName(annotationClassName);
          }
          catch (ClassNotFoundException e) {
              throw new ProvisionException(format("could not create annotation class '%s': %s", annotationClassName, e.getMessage()));
          }
      }
docs: Return an instance of an annotation with the specified class name.
  
  @param annotationClassName annotation class name
  @return an instance of an annotation with the specified class name